From 12c23bd607f6fb674a496c2d2f342a34978e83fb Mon Sep 17 00:00:00 2001 From: Pax1601 Date: Fri, 27 Jan 2023 08:16:40 +0100 Subject: [PATCH] Node.js transition is completed! --- client/package.json | 4 +- client/public/javascripts/bundle.js | 164 ++++++++++++------ client/public/stylesheets/elements.css | 14 ++ client/public/stylesheets/layout.css | 32 ++-- client/public/stylesheets/selectionscroll.css | 86 +++++++-- client/public/stylesheets/style.css | 4 + .../public/stylesheets/unitcontrolpanel.css | 39 ++++- client/public/stylesheets/unitinfopanel.css | 2 +- client/public/stylesheets/unitmarker.css | 40 +++-- client/src/controls/selectionscroll.ts | 50 ++++-- client/src/index.ts | 2 +- client/src/map/map.ts | 21 ++- client/src/panels/unitinfopanel.ts | 40 +++-- client/src/units/unit.ts | 40 +++-- client/src/units/unitTypes.ts | 2 +- client/src/units/unitmarker.ts | 13 +- client/views/selectionscroll.ejs | 7 +- client/views/unitcontrolpanel.ejs | 8 +- client/views/unitinfopanel.ejs | 25 ++- installer/DCSOlympus.iss | 38 +++- 20 files changed, 461 insertions(+), 170 deletions(-) create mode 100644 client/public/stylesheets/elements.css diff --git a/client/package.json b/client/package.json index d9d321c3..3a7711c2 100644 --- a/client/package.json +++ b/client/package.json @@ -1,5 +1,7 @@ { - "name": "client", + "name": "DCS Olympus", + "node-main": "./bin/www", + "main": "http://localhost:3000", "version": "0.0.0", "private": true, "scripts": { diff --git a/client/public/javascripts/bundle.js b/client/public/javascripts/bundle.js index b33a50c3..b1e9a20e 100644 --- a/client/public/javascripts/bundle.js +++ b/client/public/javascripts/bundle.js @@ -14808,33 +14808,46 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function ( if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; -var _SelectionScroll_container, _SelectionScroll_display; +var _SelectionScroll_instances, _SelectionScroll_container, _SelectionScroll_display, _SelectionScroll_onSwitch; Object.defineProperty(exports, "__esModule", { value: true }); exports.SelectionScroll = void 0; +const __1 = require(".."); class SelectionScroll { constructor(id) { + var _a; + _SelectionScroll_instances.add(this); _SelectionScroll_container.set(this, void 0); _SelectionScroll_display.set(this, void 0); __classPrivateFieldSet(this, _SelectionScroll_container, document.getElementById(id), "f"); __classPrivateFieldSet(this, _SelectionScroll_display, '', "f"); if (__classPrivateFieldGet(this, _SelectionScroll_container, "f") != null) { + (_a = __classPrivateFieldGet(this, _SelectionScroll_container, "f").querySelector("#coalition-switch")) === null || _a === void 0 ? void 0 : _a.addEventListener('change', (e) => __classPrivateFieldGet(this, _SelectionScroll_instances, "m", _SelectionScroll_onSwitch).call(this, e)); __classPrivateFieldSet(this, _SelectionScroll_display, __classPrivateFieldGet(this, _SelectionScroll_container, "f").style.display, "f"); this.hide(); } } - show(x, y, options, callback) { + show(x, y, options, callback, showCoalition) { /* Hide to remove buttons, if present */ this.hide(); - if (__classPrivateFieldGet(this, _SelectionScroll_container, "f") != null && options.length > 1) { + if (__classPrivateFieldGet(this, _SelectionScroll_container, "f") != null && options.length >= 1) { __classPrivateFieldGet(this, _SelectionScroll_container, "f").style.display = __classPrivateFieldGet(this, _SelectionScroll_display, "f"); __classPrivateFieldGet(this, _SelectionScroll_container, "f").style.left = x - 110 + "px"; __classPrivateFieldGet(this, _SelectionScroll_container, "f").style.top = y - 110 + "px"; - for (let optionID in options) { - var node = document.createElement("div"); - node.classList.add("olympus-selection-scroll-element"); - node.appendChild(document.createTextNode(options[optionID])); - __classPrivateFieldGet(this, _SelectionScroll_container, "f").appendChild(node); - node.addEventListener('click', () => callback(options[optionID])); + var scroll = __classPrivateFieldGet(this, _SelectionScroll_container, "f").querySelector(".olympus-selection-scroll"); + if (scroll != null) { + for (let optionID in options) { + var node = document.createElement("div"); + node.classList.add("olympus-selection-scroll-element"); + if (typeof options[optionID] === 'string' || options[optionID] instanceof String) { + node.appendChild(document.createTextNode(options[optionID])); + node.addEventListener('click', () => callback(options[optionID])); + } + else { + node.appendChild(document.createTextNode(options[optionID].tooltip)); + node.addEventListener('click', () => options[optionID].callback()); + } + scroll.appendChild(node); + } } } } @@ -14842,15 +14855,29 @@ class SelectionScroll { if (__classPrivateFieldGet(this, _SelectionScroll_container, "f") != null) { __classPrivateFieldGet(this, _SelectionScroll_container, "f").style.display = "none"; var buttons = __classPrivateFieldGet(this, _SelectionScroll_container, "f").querySelectorAll(".olympus-selection-scroll-element"); - for (let child of buttons) { - __classPrivateFieldGet(this, _SelectionScroll_container, "f").removeChild(child); + var scroll = __classPrivateFieldGet(this, _SelectionScroll_container, "f").querySelector(".olympus-selection-scroll"); + if (scroll != null) { + for (let child of buttons) { + scroll.removeChild(child); + } } } } } exports.SelectionScroll = SelectionScroll; -_SelectionScroll_container = new WeakMap(), _SelectionScroll_display = new WeakMap(); -},{}],7:[function(require,module,exports){ +_SelectionScroll_container = new WeakMap(), _SelectionScroll_display = new WeakMap(), _SelectionScroll_instances = new WeakSet(), _SelectionScroll_onSwitch = function _SelectionScroll_onSwitch(e) { + if (__classPrivateFieldGet(this, _SelectionScroll_container, "f") != null) { + if (e.currentTarget.checked) { + document.documentElement.style.setProperty('--active-coalition-color', getComputedStyle(__classPrivateFieldGet(this, _SelectionScroll_container, "f")).getPropertyValue("--red-coalition-color")); + (0, __1.setActiveCoalition)("red"); + } + else { + document.documentElement.style.setProperty('--active-coalition-color', getComputedStyle(__classPrivateFieldGet(this, _SelectionScroll_container, "f")).getPropertyValue("--blue-coalition-color")); + (0, __1.setActiveCoalition)("blue"); + } + } +}; +},{"..":9}],7:[function(require,module,exports){ "use strict"; var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); @@ -15124,7 +15151,7 @@ function setup() { selectionScroll = new selectionscroll_1.SelectionScroll("selection-scroll"); unitsManager = new unitsmanager_1.UnitsManager(); unitInfoPanel = new unitinfopanel_1.UnitInfoPanel("unit-info-panel"); - scenarioDropdown = new dropdown_1.Dropdown("scenario-dropdown", ["Caucasus", "Syria", "Nevada", "Marianas", "South Atlantic", "The channel"], () => { }); + scenarioDropdown = new dropdown_1.Dropdown("scenario-dropdown", ["Caucasus", "Syria", "Marianas", "Nevada", "South Atlantic", "The channel"], () => { }); mapSourceDropdown = new dropdown_1.Dropdown("map-source-dropdown", map.getLayers(), (option) => map.setLayer(option)); connectionStatusPanel = new connectionstatuspanel_1.ConnectionStatusPanel("connection-status-panel"); missionData = new missiondata_1.MissionData(); @@ -15478,8 +15505,10 @@ class Map extends L.Map { setState(state) { __classPrivateFieldSet(this, _Map_state, state, "f"); if (__classPrivateFieldGet(this, _Map_state, "f") === "IDLE") { + L.DomUtil.removeClass(this.getContainer(), 'crosshair-cursor-enabled'); } else if (__classPrivateFieldGet(this, _Map_state, "f") === "MOVE_UNIT") { + L.DomUtil.addClass(this.getContainer(), 'crosshair-cursor-enabled'); } else if (__classPrivateFieldGet(this, _Map_state, "f") === "ATTACK") { } @@ -15499,10 +15528,10 @@ class Map extends L.Map { (0, __1.getSelectionWheel)().hide(); } /* Selection scroll */ - showSelectionScroll(e, options, callback) { + showSelectionScroll(e, options, callback, showCoalition = false) { var x = e.x; var y = e.y; - (0, __1.getSelectionScroll)().show(x, y, options, callback); + (0, __1.getSelectionScroll)().show(x, y, options, callback, showCoalition); } hideSelectionScroll() { (0, __1.getSelectionScroll)().hide(); @@ -15533,7 +15562,7 @@ _Map_state = new WeakMap(), _Map_layer = new WeakMap(), _Map_preventRightClick = { "tooltip": "Smoke", "src": "spawnSmoke.png", "callback": () => __classPrivateFieldGet(this, _Map_instances, "m", _Map_smokeSpawnMenu).call(this, spawnEvent) }, //{ "tooltip": "Explosion", "src": "spawnExplosion.png", "callback": () => this.#explosionSpawnMenu(e) } ]; - this.showSelectionWheel(spawnEvent, options, true); + this.showSelectionScroll(spawnEvent, options, () => { }, true); } }, _Map_onContextMenu = function _Map_onContextMenu(e) { __classPrivateFieldSet(this, _Map_rightClickTimer, setTimeout(() => { @@ -15559,7 +15588,7 @@ _Map_state = new WeakMap(), _Map_layer = new WeakMap(), _Map_preventRightClick = { 'coalition': true, 'tooltip': 'Radar', 'src': 'spawnRadar.png', 'callback': () => __classPrivateFieldGet(this, _Map_instances, "m", _Map_selectGroundUnit).call(this, e, "Radar") }, { 'coalition': true, 'tooltip': 'Unarmed', 'src': 'spawnUnarmed.png', 'callback': () => __classPrivateFieldGet(this, _Map_instances, "m", _Map_selectGroundUnit).call(this, e, "Unarmed") } ]; - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => { }, true); }, _Map_smokeSpawnMenu = function _Map_smokeSpawnMenu(e) { this.hideSelectionWheel(); this.hideSelectionScroll(); @@ -15570,7 +15599,7 @@ _Map_state = new WeakMap(), _Map_layer = new WeakMap(), _Map_preventRightClick = { 'tooltip': 'Green smoke', 'src': 'spawnSmoke.png', 'callback': () => { this.hideSelectionWheel(); this.hideSelectionScroll(); (0, dcs_1.spawnSmoke)('green', e.latlng); }, 'tint': 'green' }, { 'tooltip': 'Orange smoke', 'src': 'spawnSmoke.png', 'callback': () => { this.hideSelectionWheel(); this.hideSelectionScroll(); (0, dcs_1.spawnSmoke)('orange', e.latlng); }, 'tint': 'orange' }, ]; - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => { }, true); }, _Map_explosionSpawnMenu = function _Map_explosionSpawnMenu(e) { }, _Map_aircraftSpawnMenu = function _Map_aircraftSpawnMenu(e) { var options = [ @@ -15582,12 +15611,15 @@ _Map_state = new WeakMap(), _Map_layer = new WeakMap(), _Map_preventRightClick = { 'coalition': true, 'tooltip': 'Drone', 'src': 'spawnDrone.png', 'callback': () => __classPrivateFieldGet(this, _Map_instances, "m", _Map_selectAircraft).call(this, e, "drone") }, { 'coalition': true, 'tooltip': 'Transport', 'src': 'spawnTransport.png', 'callback': () => __classPrivateFieldGet(this, _Map_instances, "m", _Map_selectAircraft).call(this, e, "transport") }, ]; - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => { }, true); }, _Map_selectAircraft = function _Map_selectAircraft(e, group) { this.hideSelectionWheel(); this.hideSelectionScroll(); var options = unitTypes_1.unitTypes.air[group]; - options.sort(); + if (options != undefined) + options.sort(); + else + options = []; this.showSelectionScroll(e, options, (unitType) => { this.hideSelectionWheel(); this.hideSelectionScroll(); @@ -15886,7 +15918,7 @@ class UnitInfoPanel { __classPrivateFieldSet(this, _UnitInfoPanel_display, '', "f"); if (__classPrivateFieldGet(this, _UnitInfoPanel_element, "f") != null) { __classPrivateFieldSet(this, _UnitInfoPanel_display, __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").style.display, "f"); - this.show(); + this.hide(); } } show() { @@ -15896,25 +15928,30 @@ class UnitInfoPanel { __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").style.display = "none"; } update(unit) { - var loadout = ""; - for (let index in unit.ammo) { - var ammo = unit.ammo[index]; - var displayName = ammo.desc.displayName; - var amount = ammo.count; - loadout += amount + "x" + displayName; - if (parseInt(index) < Object.keys(unit.ammo).length) - loadout += ", "; - } + var _a, _b; if (__classPrivateFieldGet(this, _UnitInfoPanel_element, "f") != null) { + var els = __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").getElementsByClassName("js-loadout-element"); + while (els.length > 0) + (_a = __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#loadout-data")) === null || _a === void 0 ? void 0 : _a.removeChild(els[0]); + for (let index in unit.ammo) { + var ammo = unit.ammo[index]; + var displayName = ammo.desc.displayName; + var amount = ammo.count; + var el = document.createElement("div"); + el.classList.add("js-loadout-element", "rectangular-container-dark"); + el.innerHTML = amount + "x" + displayName; + (_b = __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#loadout-data")) === null || _b === void 0 ? void 0 : _b.appendChild(el); + } __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#unit-name").innerHTML = unit.unitName; __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#group-name").innerHTML = unit.groupName; - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#heading").innerHTML = String(Math.floor((0, utils_1.rad2deg)(unit.heading)) + "°"); - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#altitude").innerHTML = String(Math.floor(unit.altitude / 0.3048) + "ft"); - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#groundspeed").innerHTML = String(Math.floor(unit.speed * 1.94384) + "kts"); + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#name").innerHTML = unit.name; + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#heading").innerHTML = String(Math.floor((0, utils_1.rad2deg)(unit.heading)) + " °"); + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#altitude").innerHTML = String(Math.floor(unit.altitude / 0.3048) + " ft"); + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#ground-speed").innerHTML = String(Math.floor(unit.speed * 1.94384) + " kts"); __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#fuel").innerHTML = String(unit.fuel + "%"); - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#position").innerHTML = (0, utils_1.ConvertDDToDMS)(unit.latitude, false) + " " + (0, utils_1.ConvertDDToDMS)(unit.longitude, true); - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#task").innerHTML = unit.currentTask; - __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#loadout").innerHTML = loadout; + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#latitude").innerHTML = (0, utils_1.ConvertDDToDMS)(unit.latitude, false); + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#longitude").innerHTML = (0, utils_1.ConvertDDToDMS)(unit.longitude, true); + __classPrivateFieldGet(this, _UnitInfoPanel_element, "f").querySelector("#task").innerHTML = unit.currentTask !== "" ? unit.currentTask : "Not controlled"; } } } @@ -15938,7 +15975,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function ( if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; -var _Unit_instances, _Unit_selectable, _Unit_selected, _Unit_preventClick, _Unit_pathMarkers, _Unit_pathPolyline, _Unit_targetsPolylines, _Unit_marker, _Unit_timer, _Unit_onClick, _Unit_onDoubleClick, _Unit_updateMarker, _Unit_drawPath, _Unit_clearPath, _Unit_drawTargets, _Unit_clearTargets; +var _Unit_instances, _Unit_selectable, _Unit_selected, _Unit_preventClick, _Unit_pathMarkers, _Unit_pathPolyline, _Unit_targetsPolylines, _Unit_marker, _Unit_timer, _Unit_onClick, _Unit_onDoubleClick, _Unit_executeAction, _Unit_updateMarker, _Unit_drawPath, _Unit_clearPath, _Unit_drawTargets, _Unit_clearTargets; Object.defineProperty(exports, "__esModule", { value: true }); exports.Bomb = exports.Missile = exports.Weapon = exports.NavyUnit = exports.GroundUnit = exports.Helicopter = exports.Aircraft = exports.AirUnit = exports.Unit = void 0; const leaflet_1 = require("leaflet"); @@ -16012,6 +16049,8 @@ class Unit { // @ts-ignore this[entry] = response[entry]; } + /* Dead units can't be selected */ + this.setSelected(this.getSelected() && this.alive); __classPrivateFieldGet(this, _Unit_instances, "m", _Unit_updateMarker).call(this); __classPrivateFieldGet(this, _Unit_instances, "m", _Unit_clearTargets).call(this); if (this.getSelected()) { @@ -16029,11 +16068,6 @@ class Unit { this.wingmen.push(unitsManager.getUnitByID(ID)); } } - this.formation = response["formation"]; - - this.missionData = missionData.getUnitData(this.ID) - - this.setSelected(this.getSelected() && this.alive) */ } setSelected(selected) { @@ -16047,6 +16081,12 @@ class Unit { getSelected() { return __classPrivateFieldGet(this, _Unit_selected, "f"); } + setSelectable(selectable) { + __classPrivateFieldSet(this, _Unit_selectable, selectable, "f"); + } + getSelectable() { + return __classPrivateFieldGet(this, _Unit_selectable, "f"); + } addDestination(latlng) { var path = {}; if (this.activePath != null) { @@ -16097,14 +16137,16 @@ _Unit_selectable = new WeakMap(), _Unit_selected = new WeakMap(), _Unit_preventC clearTimeout(__classPrivateFieldGet(this, _Unit_timer, "f")); __classPrivateFieldSet(this, _Unit_preventClick, true, "f"); var options = [ - { 'tooltip': 'Attack', 'src': 'attack.png', 'callback': () => { (0, __1.getMap)().hideSelectionWheel(); (0, __1.getUnitsManager)().attackUnit(this.ID); } }, - { 'tooltip': 'Go to tanker', 'src': 'tanker.png', 'callback': () => { (0, __1.getMap)().hideSelectionWheel(); /*showMessage("Function not implemented yet");*/ } }, - { 'tooltip': 'RTB', 'src': 'rtb.png', 'callback': () => { (0, __1.getMap)().hideSelectionWheel(); /*showMessage("Function not implemented yet");*/ } } + 'Attack', ]; - if (!this.leader && !this.wingman) { - options.push({ 'tooltip': 'Create formation', 'src': 'formation.png', 'callback': () => { (0, __1.getMap)().hideSelectionWheel(); /*unitsManager.createFormation(this.ID);*/ } }); - } - (0, __1.getMap)().showSelectionWheel(e.originalEvent, options, false); + //if (!this.leader && !this.wingman) { + // options.push({ 'tooltip': 'Create formation', 'src': 'formation.png', 'callback': () => { getMap().hideSelectionWheel(); /*unitsManager.createFormation(this.ID);*/ } }); + //} + (0, __1.getMap)().showSelectionScroll(e.originalEvent, options, (action) => __classPrivateFieldGet(this, _Unit_instances, "m", _Unit_executeAction).call(this, action)); +}, _Unit_executeAction = function _Unit_executeAction(action) { + (0, __1.getMap)().hideSelectionScroll(); + if (action === "Attack") + (0, __1.getUnitsManager)().attackUnit(this.ID); }, _Unit_updateMarker = function _Unit_updateMarker() { /* Add the marker if not present */ if (!(0, __1.getMap)().hasLayer(__classPrivateFieldGet(this, _Unit_marker, "f")) && !this.getHidden()) { @@ -16248,6 +16290,10 @@ class NavyUnit extends Unit { } exports.NavyUnit = NavyUnit; class Weapon extends Unit { + constructor(ID, marker) { + super(ID, marker); + this.setSelectable(false); + } getHidden() { if (this.alive) { if (!this.flags.user && (0, __1.getVisibilitySettings)().weapon === "hidden") @@ -16510,7 +16556,7 @@ exports.unitTypes.air.strike = [ "B-1B", "Tu-142", ]; -exports.unitTypes.air.tank = [ +exports.unitTypes.air.tanker = [ "S-3B Tanker", "KC-135", "IL-78M", @@ -16587,10 +16633,19 @@ class UnitMarker extends L.Marker { __classPrivateFieldSet(this, _UnitMarker_human, options.human, "f"); var symbol = new milsymbol_1.Symbol(__classPrivateFieldGet(this, _UnitMarker_instances, "m", _UnitMarker_computeMarkerCode).call(this, options), { size: 25 }); var img = symbol.asCanvas().toDataURL('image/png'); + var coalition = ""; + if (options.coalitionID == 1) + coalition = "red"; + else if (options.coalitionID == 2) + coalition = "blue"; + else + coalition = "neutral"; var icon = new L.DivIcon({ html: `
+
+
${__classPrivateFieldGet(this, _UnitMarker_unitName, "f")}
@@ -16644,10 +16699,11 @@ class UnitMarker extends L.Marker { } } setSelected(selected) { - var _a, _b, _c, _d; + var _a, _b, _c, _d, _e, _f; __classPrivateFieldSet(this, _UnitMarker_selected, selected, "f"); (_b = (_a = this.getElement()) === null || _a === void 0 ? void 0 : _a.querySelector("#icon")) === null || _b === void 0 ? void 0 : _b.classList.remove("unit-marker-hovered"); - (_d = (_c = this.getElement()) === null || _c === void 0 ? void 0 : _c.querySelector("#icon")) === null || _d === void 0 ? void 0 : _d.classList.toggle("unit-marker-selected", selected); + (_d = (_c = this.getElement()) === null || _c === void 0 ? void 0 : _c.querySelector("#ring")) === null || _d === void 0 ? void 0 : _d.classList.toggle("unit-marker-selected", selected); + (_f = (_e = this.getElement()) === null || _e === void 0 ? void 0 : _e.querySelector("#background")) === null || _f === void 0 ? void 0 : _f.classList.toggle("unit-marker-selected", selected); } getSelected() { return __classPrivateFieldGet(this, _UnitMarker_selected, "f"); @@ -16957,4 +17013,4 @@ class UnitsManager { exports.UnitsManager = UnitsManager; _UnitsManager_units = new WeakMap(), _UnitsManager_copiedUnits = new WeakMap(); },{"..":9,"./unit":18,"leaflet":1}]},{},[9]) -//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCJub2RlX21vZHVsZXMvbGVhZmxldC9kaXN0L2xlYWZsZXQtc3JjLmpzIiwibm9kZV9tb2R1bGVzL21pbHN5bWJvbC9kaXN0L21pbHN5bWJvbC5qcyIsIm5vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanMiLCJzcmMvY29udHJvbHMvYnV0dG9uLnRzIiwic3JjL2NvbnRyb2xzL2Ryb3Bkb3duLnRzIiwic3JjL2NvbnRyb2xzL3NlbGVjdGlvbnNjcm9sbC50cyIsInNyYy9jb250cm9scy9zZWxlY3Rpb253aGVlbC50cyIsInNyYy9kY3MvZGNzLnRzIiwic3JjL2luZGV4LnRzIiwic3JjL21hcC9ib3hzZWxlY3QudHMiLCJzcmMvbWFwL21hcC50cyIsInNyYy9taXNzaW9uZGF0YS9haXJiYXNlbWFya2VyLnRzIiwic3JjL21pc3Npb25kYXRhL21pc3Npb25kYXRhLnRzIiwic3JjL290aGVyL3V0aWxzLnRzIiwic3JjL3BhbmVscy9jb25uZWN0aW9uc3RhdHVzcGFuZWwudHMiLCJzcmMvcGFuZWxzL3VuaXRpbmZvcGFuZWwudHMiLCJzcmMvdW5pdHMvcGF5bG9hZE5hbWVzLnRzIiwic3JjL3VuaXRzL3VuaXQudHMiLCJzcmMvdW5pdHMvdW5pdFR5cGVzLnRzIiwic3JjL3VuaXRzL3VuaXRtYXJrZXIudHMiLCJzcmMvdW5pdHMvdW5pdHNtYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FDQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FDam5jQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7QUMxQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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TUFBTSxJQUFJLEdBQUcsQ0FBQztLQUNqQjtJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUMsQ0FBQTtBQUVELFNBQWdCLGNBQWMsQ0FBQyxDQUFTLEVBQUUsR0FBWTtJQUNsRCxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUN0RCxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUM5QyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztJQUNwRCxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLElBQUksR0FBRztRQUNILE9BQU8sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcs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Q0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSwwQkFBMEIsRUFBRSwwQkFBMEIsRUFBRSwwQkFBMEIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsMEJBQTBCLEVBQUUsMEJBQTBCLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsb0RBQW9ELEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsb0NBQW9DLEVBQUUsMEJBQTBCLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLG1EQUFtRCxFQUFFLG1EQUFtRCxFQUFFLG1EQUFtRCxFQUFFLDZDQUE2QyxFQUFFLDZDQUE2QyxFQUFFLDREQUE0RCxFQUFFLDREQUE0RCxDQUFDLEVBQUUsZUFBZSxF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QUcsSUFBSSxhQUFhLEVBQzdCO1lBQ0ksYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUMvQztJQUNMLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxjQUFzQjtRQUU5QyxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1QyxLQUFLLElBQUksR0FBRyxJQUFJLGFBQWEsRUFDN0I7WUFDSSxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1NBQ3JEO0lBQ0wsQ0FBQztJQUVELG9CQUFvQjtJQUNwQixJQUFJO0lBQ0osc0VBQXNFO0lBQ3RFLFFBQVE7SUFDUiw0QkFBNEI7SUFDNUIsUUFBUTtJQUNSLDJFQUEyRTtJQUMzRSxRQUFRO0lBQ1IsNkJBQTZCO0lBQzdCLFFBQVE7SUFDUixJQUFJO0lBRUosY0FBYztJQUNkLElBQUk7SUFDSixtREFBbUQ7SUFDbkQsSUFBSTtJQUVKLGVBQWU7SUFDZixJQUFJO0lBQ0oseUNBQXlDO0lBQ3pDLFFBQVE7SUFDUiw2Q0FBNkM7SUFDN0MsOEJBQThCO0lBQzlCLFFBQVE7SUFDUixJQUFJO0lBRUosVUFBVSxDQUFDLEVBQVU7UUFDakIsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUMsS0FBSyxJQUFJLEdBQUcsSUFBSSxhQUFhLEVBQUU7WUFDM0IsNERBQTREO1lBQzVELElBQUksYUFBYSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QyxpQ0FBaUM7WUFDakMsR0FBRztZQUNILDREQUE0RDtZQUM1RCxHQUFHO1lBQ0gsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNoQztJQUNMLENBQUM7Q0F5REo7QUFsT0Qsb0NBa09DIiwiZmlsZSI6ImdlbmVyYXRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24oKXtmdW5jdGlvbiByKGUsbix0KXtmdW5jdGlvbiBvKGksZil7aWYoIW5baV0pe2lmKCFlW2ldKXt2YXIgYz1cImZ1bmN0aW9uXCI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlO2lmKCFmJiZjKXJldHVybiBjKGksITApO2lmKHUpcmV0dXJuIHUoaSwhMCk7dmFyIGE9bmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgbW9kdWxlICdcIitpK1wiJ1wiKTt0aHJvdyBhLmNvZGU9XCJNT0RVTEVfTk9UX0ZPVU5EXCIsYX12YXIgcD1uW2ldPXtleHBvcnRzOnt9fTtlW2ldWzBdLmNhbGwocC5leHBvcnRzLGZ1bmN0aW9uKHIpe3ZhciBuPWVbaV1bMV1bcl07cmV0dXJuIG8obnx8cil9LHAscC5leHBvcnRzLHIsZSxuLHQpfXJldHVybiBuW2ldLmV4cG9ydHN9Zm9yKHZhciB1PVwiZnVuY3Rpb25cIj09dHlwZW9mIHJlcXVpcmUmJnJlcXVpcmUsaT0wO2k8dC5sZW5ndGg7aSsrKW8odFtpXSk7cmV0dXJuIG99cmV0dXJuIHJ9KSgpIiwiLyogQHByZXNlcnZlXG4gKiBMZWFmbGV0IDEuOS4zLCBhIEpTIGxpYnJhcnkgZm9yIGludGVyYWN0aXZlIG1hcHMuIGh0dHBzOi8vbGVhZmxldGpzLmNvbVxuICogKGMpIDIwMTAtMjAyMiBWbGFkaW1pciBBZ2Fmb25raW4sIChjKSAyMDEwLTIwMTEgQ2xvdWRNYWRlXG4gKi9cblxuKGZ1bmN0aW9uIChnbG9iYWwsIGZhY3RvcnkpIHtcbiAgdHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnID8gZmFjdG9yeShleHBvcnRzKSA6XG4gIHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbJ2V4cG9ydHMnXSwgZmFjdG9yeSkgOlxuICAoZ2xvYmFsID0gdHlwZW9mIGdsb2JhbFRoaXMgIT09ICd1bmRlZmluZWQnID8gZ2xvYmFsVGhpcyA6IGdsb2JhbCB8fCBzZWxmLCBmYWN0b3J5KGdsb2JhbC5sZWFmbGV0ID0ge30pKTtcbn0pKHRoaXMsIChmdW5jdGlvbiAoZXhwb3J0cykgeyAndXNlIHN0cmljdCc7XG5cbiAgdmFyIHZlcnNpb24gPSBcIjEuOS4zXCI7XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFV0aWxcclxuICAgKlxyXG4gICAqIFZhcmlvdXMgdXRpbGl0eSBmdW5jdGlvbnMsIHVzZWQgYnkgTGVhZmxldCBpbnRlcm5hbGx5LlxyXG4gICAqL1xyXG5cclxuICAvLyBAZnVuY3Rpb24gZXh0ZW5kKGRlc3Q6IE9iamVjdCwgc3JjPzogT2JqZWN0KTogT2JqZWN0XHJcbiAgLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBgc3JjYCBvYmplY3QgKG9yIG11bHRpcGxlIG9iamVjdHMpIGludG8gYGRlc3RgIG9iamVjdCBhbmQgcmV0dXJucyB0aGUgbGF0dGVyLiBIYXMgYW4gYEwuZXh0ZW5kYCBzaG9ydGN1dC5cclxuICBmdW5jdGlvbiBleHRlbmQoZGVzdCkge1xyXG4gIFx0dmFyIGksIGosIGxlbiwgc3JjO1xyXG5cclxuICBcdGZvciAoaiA9IDEsIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGogPCBsZW47IGorKykge1xyXG4gIFx0XHRzcmMgPSBhcmd1bWVudHNbal07XHJcbiAgXHRcdGZvciAoaSBpbiBzcmMpIHtcclxuICBcdFx0XHRkZXN0W2ldID0gc3JjW2ldO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gZGVzdDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjcmVhdGUocHJvdG86IE9iamVjdCwgcHJvcGVydGllcz86IE9iamVjdCk6IE9iamVjdFxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtPYmplY3QuY3JlYXRlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3QvY3JlYXRlKVxyXG4gIHZhciBjcmVhdGUkMiA9IE9iamVjdC5jcmVhdGUgfHwgKGZ1bmN0aW9uICgpIHtcclxuICBcdGZ1bmN0aW9uIEYoKSB7fVxyXG4gIFx0cmV0dXJuIGZ1bmN0aW9uIChwcm90bykge1xyXG4gIFx0XHRGLnByb3RvdHlwZSA9IHByb3RvO1xyXG4gIFx0XHRyZXR1cm4gbmV3IEYoKTtcclxuICBcdH07XHJcbiAgfSkoKTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGJpbmQoZm46IEZ1bmN0aW9uLCDigKYpOiBGdW5jdGlvblxyXG4gIC8vIFJldHVybnMgYSBuZXcgZnVuY3Rpb24gYm91bmQgdG8gdGhlIGFyZ3VtZW50cyBwYXNzZWQsIGxpa2UgW0Z1bmN0aW9uLnByb3RvdHlwZS5iaW5kXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9GdW5jdGlvbi9iaW5kKS5cclxuICAvLyBIYXMgYSBgTC5iaW5kKClgIHNob3J0Y3V0LlxyXG4gIGZ1bmN0aW9uIGJpbmQoZm4sIG9iaikge1xyXG4gIFx0dmFyIHNsaWNlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlO1xyXG5cclxuICBcdGlmIChmbi5iaW5kKSB7XHJcbiAgXHRcdHJldHVybiBmbi5iaW5kLmFwcGx5KGZuLCBzbGljZS5jYWxsKGFyZ3VtZW50cywgMSkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBhcmdzID0gc2xpY2UuY2FsbChhcmd1bWVudHMsIDIpO1xyXG5cclxuICBcdHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBmbi5hcHBseShvYmosIGFyZ3MubGVuZ3RoID8gYXJncy5jb25jYXQoc2xpY2UuY2FsbChhcmd1bWVudHMpKSA6IGFyZ3VtZW50cyk7XHJcbiAgXHR9O1xyXG4gIH1cclxuXHJcbiAgLy8gQHByb3BlcnR5IGxhc3RJZDogTnVtYmVyXHJcbiAgLy8gTGFzdCB1bmlxdWUgSUQgdXNlZCBieSBbYHN0YW1wKClgXSgjdXRpbC1zdGFtcClcclxuICB2YXIgbGFzdElkID0gMDtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHN0YW1wKG9iajogT2JqZWN0KTogTnVtYmVyXHJcbiAgLy8gUmV0dXJucyB0aGUgdW5pcXVlIElEIG9mIGFuIG9iamVjdCwgYXNzaWduaW5nIGl0IG9uZSBpZiBpdCBkb2Vzbid0IGhhdmUgaXQuXHJcbiAgZnVuY3Rpb24gc3RhbXAob2JqKSB7XHJcbiAgXHRpZiAoISgnX2xlYWZsZXRfaWQnIGluIG9iaikpIHtcclxuICBcdFx0b2JqWydfbGVhZmxldF9pZCddID0gKytsYXN0SWQ7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gb2JqLl9sZWFmbGV0X2lkO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHRocm90dGxlKGZuOiBGdW5jdGlvbiwgdGltZTogTnVtYmVyLCBjb250ZXh0OiBPYmplY3QpOiBGdW5jdGlvblxyXG4gIC8vIFJldHVybnMgYSBmdW5jdGlvbiB3aGljaCBleGVjdXRlcyBmdW5jdGlvbiBgZm5gIHdpdGggdGhlIGdpdmVuIHNjb3BlIGBjb250ZXh0YFxyXG4gIC8vIChzbyB0aGF0IHRoZSBgdGhpc2Aga2V5d29yZCByZWZlcnMgdG8gYGNvbnRleHRgIGluc2lkZSBgZm5gJ3MgY29kZSkuIFRoZSBmdW5jdGlvblxyXG4gIC8vIGBmbmAgd2lsbCBiZSBjYWxsZWQgbm8gbW9yZSB0aGFuIG9uZSB0aW1lIHBlciBnaXZlbiBhbW91bnQgb2YgYHRpbWVgLiBUaGUgYXJndW1lbnRzXHJcbiAgLy8gcmVjZWl2ZWQgYnkgdGhlIGJvdW5kIGZ1bmN0aW9uIHdpbGwgYmUgYW55IGFyZ3VtZW50cyBwYXNzZWQgd2hlbiBiaW5kaW5nIHRoZVxyXG4gIC8vIGZ1bmN0aW9uLCBmb2xsb3dlZCBieSBhbnkgYXJndW1lbnRzIHBhc3NlZCB3aGVuIGludm9raW5nIHRoZSBib3VuZCBmdW5jdGlvbi5cclxuICAvLyBIYXMgYW4gYEwudGhyb3R0bGVgIHNob3J0Y3V0LlxyXG4gIGZ1bmN0aW9uIHRocm90dGxlKGZuLCB0aW1lLCBjb250ZXh0KSB7XHJcbiAgXHR2YXIgbG9jaywgYXJncywgd3JhcHBlckZuLCBsYXRlcjtcclxuXHJcbiAgXHRsYXRlciA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Ly8gcmVzZXQgbG9jayBhbmQgY2FsbCBpZiBxdWV1ZWRcclxuICBcdFx0bG9jayA9IGZhbHNlO1xyXG4gIFx0XHRpZiAoYXJncykge1xyXG4gIFx0XHRcdHdyYXBwZXJGbi5hcHBseShjb250ZXh0LCBhcmdzKTtcclxuICBcdFx0XHRhcmdzID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdH07XHJcblxyXG4gIFx0d3JhcHBlckZuID0gZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAobG9jaykge1xyXG4gIFx0XHRcdC8vIGNhbGxlZCB0b28gc29vbiwgcXVldWUgdG8gY2FsbCBsYXRlclxyXG4gIFx0XHRcdGFyZ3MgPSBhcmd1bWVudHM7XHJcblxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdC8vIGNhbGwgYW5kIGxvY2sgdW50aWwgbGF0ZXJcclxuICBcdFx0XHRmbi5hcHBseShjb250ZXh0LCBhcmd1bWVudHMpO1xyXG4gIFx0XHRcdHNldFRpbWVvdXQobGF0ZXIsIHRpbWUpO1xyXG4gIFx0XHRcdGxvY2sgPSB0cnVlO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG5cclxuICBcdHJldHVybiB3cmFwcGVyRm47XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gd3JhcE51bShudW06IE51bWJlciwgcmFuZ2U6IE51bWJlcltdLCBpbmNsdWRlTWF4PzogQm9vbGVhbik6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIG51bWJlciBgbnVtYCBtb2R1bG8gYHJhbmdlYCBpbiBzdWNoIGEgd2F5IHNvIGl0IGxpZXMgd2l0aGluXHJcbiAgLy8gYHJhbmdlWzBdYCBhbmQgYHJhbmdlWzFdYC4gVGhlIHJldHVybmVkIHZhbHVlIHdpbGwgYmUgYWx3YXlzIHNtYWxsZXIgdGhhblxyXG4gIC8vIGByYW5nZVsxXWAgdW5sZXNzIGBpbmNsdWRlTWF4YCBpcyBzZXQgdG8gYHRydWVgLlxyXG4gIGZ1bmN0aW9uIHdyYXBOdW0oeCwgcmFuZ2UsIGluY2x1ZGVNYXgpIHtcclxuICBcdHZhciBtYXggPSByYW5nZVsxXSxcclxuICBcdCAgICBtaW4gPSByYW5nZVswXSxcclxuICBcdCAgICBkID0gbWF4IC0gbWluO1xyXG4gIFx0cmV0dXJuIHggPT09IG1heCAmJiBpbmNsdWRlTWF4ID8geCA6ICgoeCAtIG1pbikgJSBkICsgZCkgJSBkICsgbWluO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGZhbHNlRm4oKTogRnVuY3Rpb25cclxuICAvLyBSZXR1cm5zIGEgZnVuY3Rpb24gd2hpY2ggYWx3YXlzIHJldHVybnMgYGZhbHNlYC5cclxuICBmdW5jdGlvbiBmYWxzZUZuKCkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGZvcm1hdE51bShudW06IE51bWJlciwgcHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogTnVtYmVyXHJcbiAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIGBudW1gIHJvdW5kZWQgd2l0aCBzcGVjaWZpZWQgYHByZWNpc2lvbmAuXHJcbiAgLy8gVGhlIGRlZmF1bHQgYHByZWNpc2lvbmAgdmFsdWUgaXMgNiBkZWNpbWFsIHBsYWNlcy5cclxuICAvLyBgZmFsc2VgIGNhbiBiZSBwYXNzZWQgdG8gc2tpcCBhbnkgcHJvY2Vzc2luZyAoY2FuIGJlIHVzZWZ1bCB0byBhdm9pZCByb3VuZC1vZmYgZXJyb3JzKS5cclxuICBmdW5jdGlvbiBmb3JtYXROdW0obnVtLCBwcmVjaXNpb24pIHtcclxuICBcdGlmIChwcmVjaXNpb24gPT09IGZhbHNlKSB7IHJldHVybiBudW07IH1cclxuICBcdHZhciBwb3cgPSBNYXRoLnBvdygxMCwgcHJlY2lzaW9uID09PSB1bmRlZmluZWQgPyA2IDogcHJlY2lzaW9uKTtcclxuICBcdHJldHVybiBNYXRoLnJvdW5kKG51bSAqIHBvdykgLyBwb3c7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdHJpbShzdHI6IFN0cmluZyk6IFN0cmluZ1xyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtTdHJpbmcucHJvdG90eXBlLnRyaW1dKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL1N0cmluZy9UcmltKVxyXG4gIGZ1bmN0aW9uIHRyaW0oc3RyKSB7XHJcbiAgXHRyZXR1cm4gc3RyLnRyaW0gPyBzdHIudHJpbSgpIDogc3RyLnJlcGxhY2UoL15cXHMrfFxccyskL2csICcnKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzcGxpdFdvcmRzKHN0cjogU3RyaW5nKTogU3RyaW5nW11cclxuICAvLyBUcmltcyBhbmQgc3BsaXRzIHRoZSBzdHJpbmcgb24gd2hpdGVzcGFjZSBhbmQgcmV0dXJucyB0aGUgYXJyYXkgb2YgcGFydHMuXHJcbiAgZnVuY3Rpb24gc3BsaXRXb3JkcyhzdHIpIHtcclxuICBcdHJldHVybiB0cmltKHN0cikuc3BsaXQoL1xccysvKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzZXRPcHRpb25zKG9iajogT2JqZWN0LCBvcHRpb25zOiBPYmplY3QpOiBPYmplY3RcclxuICAvLyBNZXJnZXMgdGhlIGdpdmVuIHByb3BlcnRpZXMgdG8gdGhlIGBvcHRpb25zYCBvZiB0aGUgYG9iamAgb2JqZWN0LCByZXR1cm5pbmcgdGhlIHJlc3VsdGluZyBvcHRpb25zLiBTZWUgYENsYXNzIG9wdGlvbnNgLiBIYXMgYW4gYEwuc2V0T3B0aW9uc2Agc2hvcnRjdXQuXHJcbiAgZnVuY3Rpb24gc2V0T3B0aW9ucyhvYmosIG9wdGlvbnMpIHtcclxuICBcdGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgJ29wdGlvbnMnKSkge1xyXG4gIFx0XHRvYmoub3B0aW9ucyA9IG9iai5vcHRpb25zID8gY3JlYXRlJDIob2JqLm9wdGlvbnMpIDoge307XHJcbiAgXHR9XHJcbiAgXHRmb3IgKHZhciBpIGluIG9wdGlvbnMpIHtcclxuICBcdFx0b2JqLm9wdGlvbnNbaV0gPSBvcHRpb25zW2ldO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG9iai5vcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGdldFBhcmFtU3RyaW5nKG9iajogT2JqZWN0LCBleGlzdGluZ1VybD86IFN0cmluZywgdXBwZXJjYXNlPzogQm9vbGVhbik6IFN0cmluZ1xyXG4gIC8vIENvbnZlcnRzIGFuIG9iamVjdCBpbnRvIGEgcGFyYW1ldGVyIFVSTCBzdHJpbmcsIGUuZy4gYHthOiBcImZvb1wiLCBiOiBcImJhclwifWBcclxuICAvLyB0cmFuc2xhdGVzIHRvIGAnP2E9Zm9vJmI9YmFyJ2AuIElmIGBleGlzdGluZ1VybGAgaXMgc2V0LCB0aGUgcGFyYW1ldGVycyB3aWxsXHJcbiAgLy8gYmUgYXBwZW5kZWQgYXQgdGhlIGVuZC4gSWYgYHVwcGVyY2FzZWAgaXMgYHRydWVgLCB0aGUgcGFyYW1ldGVyIG5hbWVzIHdpbGxcclxuICAvLyBiZSB1cHBlcmNhc2VkIChlLmcuIGAnP0E9Zm9vJkI9YmFyJ2ApXHJcbiAgZnVuY3Rpb24gZ2V0UGFyYW1TdHJpbmcob2JqLCBleGlzdGluZ1VybCwgdXBwZXJjYXNlKSB7XHJcbiAgXHR2YXIgcGFyYW1zID0gW107XHJcbiAgXHRmb3IgKHZhciBpIGluIG9iaikge1xyXG4gIFx0XHRwYXJhbXMucHVzaChlbmNvZGVVUklDb21wb25lbnQodXBwZXJjYXNlID8gaS50b1VwcGVyQ2FzZSgpIDogaSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQob2JqW2ldKSk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gKCghZXhpc3RpbmdVcmwgfHwgZXhpc3RpbmdVcmwuaW5kZXhPZignPycpID09PSAtMSkgPyAnPycgOiAnJicpICsgcGFyYW1zLmpvaW4oJyYnKTtcclxuICB9XHJcblxyXG4gIHZhciB0ZW1wbGF0ZVJlID0gL1xceyAqKFtcXHdfIC1dKykgKlxcfS9nO1xyXG5cclxuICAvLyBAZnVuY3Rpb24gdGVtcGxhdGUoc3RyOiBTdHJpbmcsIGRhdGE6IE9iamVjdCk6IFN0cmluZ1xyXG4gIC8vIFNpbXBsZSB0ZW1wbGF0aW5nIGZhY2lsaXR5LCBhY2NlcHRzIGEgdGVtcGxhdGUgc3RyaW5nIG9mIHRoZSBmb3JtIGAnSGVsbG8ge2F9LCB7Yn0nYFxyXG4gIC8vIGFuZCBhIGRhdGEgb2JqZWN0IGxpa2UgYHthOiAnZm9vJywgYjogJ2Jhcid9YCwgcmV0dXJucyBldmFsdWF0ZWQgc3RyaW5nXHJcbiAgLy8gYCgnSGVsbG8gZm9vLCBiYXInKWAuIFlvdSBjYW4gYWxzbyBzcGVjaWZ5IGZ1bmN0aW9ucyBpbnN0ZWFkIG9mIHN0cmluZ3MgZm9yXHJcbiAgLy8gZGF0YSB2YWx1ZXMg4oCUIHRoZXkgd2lsbCBiZSBldmFsdWF0ZWQgcGFzc2luZyBgZGF0YWAgYXMgYW4gYXJndW1lbnQuXHJcbiAgZnVuY3Rpb24gdGVtcGxhdGUoc3RyLCBkYXRhKSB7XHJcbiAgXHRyZXR1cm4gc3RyLnJlcGxhY2UodGVtcGxhdGVSZSwgZnVuY3Rpb24gKHN0ciwga2V5KSB7XHJcbiAgXHRcdHZhciB2YWx1ZSA9IGRhdGFba2V5XTtcclxuXHJcbiAgXHRcdGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdObyB2YWx1ZSBwcm92aWRlZCBmb3IgdmFyaWFibGUgJyArIHN0cik7XHJcblxyXG4gIFx0XHR9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdHZhbHVlID0gdmFsdWUoZGF0YSk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHZhbHVlO1xyXG4gIFx0fSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gaXNBcnJheShvYmopOiBCb29sZWFuXHJcbiAgLy8gQ29tcGF0aWJpbGl0eSBwb2x5ZmlsbCBmb3IgW0FycmF5LmlzQXJyYXldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0FycmF5L2lzQXJyYXkpXHJcbiAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5IHx8IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdHJldHVybiAoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iaikgPT09ICdbb2JqZWN0IEFycmF5XScpO1xyXG4gIH07XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBpbmRleE9mKGFycmF5OiBBcnJheSwgZWw6IE9iamVjdCk6IE51bWJlclxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtBcnJheS5wcm90b3R5cGUuaW5kZXhPZl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQXJyYXkvaW5kZXhPZilcclxuICBmdW5jdGlvbiBpbmRleE9mKGFycmF5LCBlbCkge1xyXG4gIFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRpZiAoYXJyYXlbaV0gPT09IGVsKSB7IHJldHVybiBpOyB9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gLTE7XHJcbiAgfVxyXG5cclxuICAvLyBAcHJvcGVydHkgZW1wdHlJbWFnZVVybDogU3RyaW5nXHJcbiAgLy8gRGF0YSBVUkkgc3RyaW5nIGNvbnRhaW5pbmcgYSBiYXNlNjQtZW5jb2RlZCBlbXB0eSBHSUYgaW1hZ2UuXHJcbiAgLy8gVXNlZCBhcyBhIGhhY2sgdG8gZnJlZSBtZW1vcnkgZnJvbSB1bnVzZWQgaW1hZ2VzIG9uIFdlYktpdC1wb3dlcmVkXHJcbiAgLy8gbW9iaWxlIGRldmljZXMgKGJ5IHNldHRpbmcgaW1hZ2UgYHNyY2AgdG8gdGhpcyBzdHJpbmcpLlxyXG4gIHZhciBlbXB0eUltYWdlVXJsID0gJ2RhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBQUQvQUN3QUFBQUFBUUFCQUFBQ0FEcz0nO1xyXG5cclxuICAvLyBpbnNwaXJlZCBieSBodHRwczovL3BhdWxpcmlzaC5jb20vMjAxMS9yZXF1ZXN0YW5pbWF0aW9uZnJhbWUtZm9yLXNtYXJ0LWFuaW1hdGluZy9cclxuXHJcbiAgZnVuY3Rpb24gZ2V0UHJlZml4ZWQobmFtZSkge1xyXG4gIFx0cmV0dXJuIHdpbmRvd1snd2Via2l0JyArIG5hbWVdIHx8IHdpbmRvd1snbW96JyArIG5hbWVdIHx8IHdpbmRvd1snbXMnICsgbmFtZV07XHJcbiAgfVxyXG5cclxuICB2YXIgbGFzdFRpbWUgPSAwO1xyXG5cclxuICAvLyBmYWxsYmFjayBmb3IgSUUgNy04XHJcbiAgZnVuY3Rpb24gdGltZW91dERlZmVyKGZuKSB7XHJcbiAgXHR2YXIgdGltZSA9ICtuZXcgRGF0ZSgpLFxyXG4gIFx0ICAgIHRpbWVUb0NhbGwgPSBNYXRoLm1heCgwLCAxNiAtICh0aW1lIC0gbGFzdFRpbWUpKTtcclxuXHJcbiAgXHRsYXN0VGltZSA9IHRpbWUgKyB0aW1lVG9DYWxsO1xyXG4gIFx0cmV0dXJuIHdpbmRvdy5zZXRUaW1lb3V0KGZuLCB0aW1lVG9DYWxsKTtcclxuICB9XHJcblxyXG4gIHZhciByZXF1ZXN0Rm4gPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lIHx8IGdldFByZWZpeGVkKCdSZXF1ZXN0QW5pbWF0aW9uRnJhbWUnKSB8fCB0aW1lb3V0RGVmZXI7XHJcbiAgdmFyIGNhbmNlbEZuID0gd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lIHx8IGdldFByZWZpeGVkKCdDYW5jZWxBbmltYXRpb25GcmFtZScpIHx8XHJcbiAgXHRcdGdldFByZWZpeGVkKCdDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWUnKSB8fCBmdW5jdGlvbiAoaWQpIHsgd2luZG93LmNsZWFyVGltZW91dChpZCk7IH07XHJcblxyXG4gIC8vIEBmdW5jdGlvbiByZXF1ZXN0QW5pbUZyYW1lKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCwgaW1tZWRpYXRlPzogQm9vbGVhbik6IE51bWJlclxyXG4gIC8vIFNjaGVkdWxlcyBgZm5gIHRvIGJlIGV4ZWN1dGVkIHdoZW4gdGhlIGJyb3dzZXIgcmVwYWludHMuIGBmbmAgaXMgYm91bmQgdG9cclxuICAvLyBgY29udGV4dGAgaWYgZ2l2ZW4uIFdoZW4gYGltbWVkaWF0ZWAgaXMgc2V0LCBgZm5gIGlzIGNhbGxlZCBpbW1lZGlhdGVseSBpZlxyXG4gIC8vIHRoZSBicm93c2VyIGRvZXNuJ3QgaGF2ZSBuYXRpdmUgc3VwcG9ydCBmb3JcclxuICAvLyBbYHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvd2luZG93L3JlcXVlc3RBbmltYXRpb25GcmFtZSksXHJcbiAgLy8gb3RoZXJ3aXNlIGl0J3MgZGVsYXllZC4gUmV0dXJucyBhIHJlcXVlc3QgSUQgdGhhdCBjYW4gYmUgdXNlZCB0byBjYW5jZWwgdGhlIHJlcXVlc3QuXHJcbiAgZnVuY3Rpb24gcmVxdWVzdEFuaW1GcmFtZShmbiwgY29udGV4dCwgaW1tZWRpYXRlKSB7XHJcbiAgXHRpZiAoaW1tZWRpYXRlICYmIHJlcXVlc3RGbiA9PT0gdGltZW91dERlZmVyKSB7XHJcbiAgXHRcdGZuLmNhbGwoY29udGV4dCk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRyZXR1cm4gcmVxdWVzdEZuLmNhbGwod2luZG93LCBiaW5kKGZuLCBjb250ZXh0KSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY2FuY2VsQW5pbUZyYW1lKGlkOiBOdW1iZXIpOiB1bmRlZmluZWRcclxuICAvLyBDYW5jZWxzIGEgcHJldmlvdXMgYHJlcXVlc3RBbmltRnJhbWVgLiBTZWUgYWxzbyBbd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvd2luZG93L2NhbmNlbEFuaW1hdGlvbkZyYW1lKS5cclxuICBmdW5jdGlvbiBjYW5jZWxBbmltRnJhbWUoaWQpIHtcclxuICBcdGlmIChpZCkge1xyXG4gIFx0XHRjYW5jZWxGbi5jYWxsKHdpbmRvdywgaWQpO1xyXG4gIFx0fVxyXG4gIH1cblxuICB2YXIgVXRpbCA9IHtcbiAgICBfX3Byb3RvX186IG51bGwsXG4gICAgZXh0ZW5kOiBleHRlbmQsXG4gICAgY3JlYXRlOiBjcmVhdGUkMixcbiAgICBiaW5kOiBiaW5kLFxuICAgIGdldCBsYXN0SWQgKCkgeyByZXR1cm4gbGFzdElkOyB9LFxuICAgIHN0YW1wOiBzdGFtcCxcbiAgICB0aHJvdHRsZTogdGhyb3R0bGUsXG4gICAgd3JhcE51bTogd3JhcE51bSxcbiAgICBmYWxzZUZuOiBmYWxzZUZuLFxuICAgIGZvcm1hdE51bTogZm9ybWF0TnVtLFxuICAgIHRyaW06IHRyaW0sXG4gICAgc3BsaXRXb3Jkczogc3BsaXRXb3JkcyxcbiAgICBzZXRPcHRpb25zOiBzZXRPcHRpb25zLFxuICAgIGdldFBhcmFtU3RyaW5nOiBnZXRQYXJhbVN0cmluZyxcbiAgICB0ZW1wbGF0ZTogdGVtcGxhdGUsXG4gICAgaXNBcnJheTogaXNBcnJheSxcbiAgICBpbmRleE9mOiBpbmRleE9mLFxuICAgIGVtcHR5SW1hZ2VVcmw6IGVtcHR5SW1hZ2VVcmwsXG4gICAgcmVxdWVzdEZuOiByZXF1ZXN0Rm4sXG4gICAgY2FuY2VsRm46IGNhbmNlbEZuLFxuICAgIHJlcXVlc3RBbmltRnJhbWU6IHJlcXVlc3RBbmltRnJhbWUsXG4gICAgY2FuY2VsQW5pbUZyYW1lOiBjYW5jZWxBbmltRnJhbWVcbiAgfTtcblxuICAvLyBAY2xhc3MgQ2xhc3NcclxuICAvLyBAYWthIEwuQ2xhc3NcclxuXHJcbiAgLy8gQHNlY3Rpb25cclxuICAvLyBAdW5pbmhlcml0YWJsZVxyXG5cclxuICAvLyBUaGFua3MgdG8gSm9obiBSZXNpZyBhbmQgRGVhbiBFZHdhcmRzIGZvciBpbnNwaXJhdGlvbiFcclxuXHJcbiAgZnVuY3Rpb24gQ2xhc3MoKSB7fVxyXG5cclxuICBDbGFzcy5leHRlbmQgPSBmdW5jdGlvbiAocHJvcHMpIHtcclxuXHJcbiAgXHQvLyBAZnVuY3Rpb24gZXh0ZW5kKHByb3BzOiBPYmplY3QpOiBGdW5jdGlvblxyXG4gIFx0Ly8gW0V4dGVuZHMgdGhlIGN1cnJlbnQgY2xhc3NdKCNjbGFzcy1pbmhlcml0YW5jZSkgZ2l2ZW4gdGhlIHByb3BlcnRpZXMgdG8gYmUgaW5jbHVkZWQuXHJcbiAgXHQvLyBSZXR1cm5zIGEgSmF2YXNjcmlwdCBmdW5jdGlvbiB0aGF0IGlzIGEgY2xhc3MgY29uc3RydWN0b3IgKHRvIGJlIGNhbGxlZCB3aXRoIGBuZXdgKS5cclxuICBcdHZhciBOZXdDbGFzcyA9IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdHNldE9wdGlvbnModGhpcyk7XHJcblxyXG4gIFx0XHQvLyBjYWxsIHRoZSBjb25zdHJ1Y3RvclxyXG4gIFx0XHRpZiAodGhpcy5pbml0aWFsaXplKSB7XHJcbiAgXHRcdFx0dGhpcy5pbml0aWFsaXplLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGNhbGwgYWxsIGNvbnN0cnVjdG9yIGhvb2tzXHJcbiAgXHRcdHRoaXMuY2FsbEluaXRIb29rcygpO1xyXG4gIFx0fTtcclxuXHJcbiAgXHR2YXIgcGFyZW50UHJvdG8gPSBOZXdDbGFzcy5fX3N1cGVyX18gPSB0aGlzLnByb3RvdHlwZTtcclxuXHJcbiAgXHR2YXIgcHJvdG8gPSBjcmVhdGUkMihwYXJlbnRQcm90byk7XHJcbiAgXHRwcm90by5jb25zdHJ1Y3RvciA9IE5ld0NsYXNzO1xyXG5cclxuICBcdE5ld0NsYXNzLnByb3RvdHlwZSA9IHByb3RvO1xyXG5cclxuICBcdC8vIGluaGVyaXQgcGFyZW50J3Mgc3RhdGljc1xyXG4gIFx0Zm9yICh2YXIgaSBpbiB0aGlzKSB7XHJcbiAgXHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcywgaSkgJiYgaSAhPT0gJ3Byb3RvdHlwZScgJiYgaSAhPT0gJ19fc3VwZXJfXycpIHtcclxuICBcdFx0XHROZXdDbGFzc1tpXSA9IHRoaXNbaV07XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHQvLyBtaXggc3RhdGljIHByb3BlcnRpZXMgaW50byB0aGUgY2xhc3NcclxuICBcdGlmIChwcm9wcy5zdGF0aWNzKSB7XHJcbiAgXHRcdGV4dGVuZChOZXdDbGFzcywgcHJvcHMuc3RhdGljcyk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gbWl4IGluY2x1ZGVzIGludG8gdGhlIHByb3RvdHlwZVxyXG4gIFx0aWYgKHByb3BzLmluY2x1ZGVzKSB7XHJcbiAgXHRcdGNoZWNrRGVwcmVjYXRlZE1peGluRXZlbnRzKHByb3BzLmluY2x1ZGVzKTtcclxuICBcdFx0ZXh0ZW5kLmFwcGx5KG51bGwsIFtwcm90b10uY29uY2F0KHByb3BzLmluY2x1ZGVzKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gbWl4IGdpdmVuIHByb3BlcnRpZXMgaW50byB0aGUgcHJvdG90eXBlXHJcbiAgXHRleHRlbmQocHJvdG8sIHByb3BzKTtcclxuICBcdGRlbGV0ZSBwcm90by5zdGF0aWNzO1xyXG4gIFx0ZGVsZXRlIHByb3RvLmluY2x1ZGVzO1xyXG5cclxuICBcdC8vIG1lcmdlIG9wdGlvbnNcclxuICBcdGlmIChwcm90by5vcHRpb25zKSB7XHJcbiAgXHRcdHByb3RvLm9wdGlvbnMgPSBwYXJlbnRQcm90by5vcHRpb25zID8gY3JlYXRlJDIocGFyZW50UHJvdG8ub3B0aW9ucykgOiB7fTtcclxuICBcdFx0ZXh0ZW5kKHByb3RvLm9wdGlvbnMsIHByb3BzLm9wdGlvbnMpO1xyXG4gIFx0fVxyXG5cclxuICBcdHByb3RvLl9pbml0SG9va3MgPSBbXTtcclxuXHJcbiAgXHQvLyBhZGQgbWV0aG9kIGZvciBjYWxsaW5nIGFsbCBob29rc1xyXG4gIFx0cHJvdG8uY2FsbEluaXRIb29rcyA9IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9pbml0SG9va3NDYWxsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAocGFyZW50UHJvdG8uY2FsbEluaXRIb29rcykge1xyXG4gIFx0XHRcdHBhcmVudFByb3RvLmNhbGxJbml0SG9va3MuY2FsbCh0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5faW5pdEhvb2tzQ2FsbGVkID0gdHJ1ZTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBwcm90by5faW5pdEhvb2tzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0cHJvdG8uX2luaXRIb29rc1tpXS5jYWxsKHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG5cclxuICBcdHJldHVybiBOZXdDbGFzcztcclxuICB9O1xyXG5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGluY2x1ZGUocHJvcGVydGllczogT2JqZWN0KTogdGhpc1xyXG4gIC8vIFtJbmNsdWRlcyBhIG1peGluXSgjY2xhc3MtaW5jbHVkZXMpIGludG8gdGhlIGN1cnJlbnQgY2xhc3MuXHJcbiAgQ2xhc3MuaW5jbHVkZSA9IGZ1bmN0aW9uIChwcm9wcykge1xyXG4gIFx0dmFyIHBhcmVudE9wdGlvbnMgPSB0aGlzLnByb3RvdHlwZS5vcHRpb25zO1xyXG4gIFx0ZXh0ZW5kKHRoaXMucHJvdG90eXBlLCBwcm9wcyk7XHJcbiAgXHRpZiAocHJvcHMub3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLnByb3RvdHlwZS5vcHRpb25zID0gcGFyZW50T3B0aW9ucztcclxuICBcdFx0dGhpcy5tZXJnZU9wdGlvbnMocHJvcHMub3B0aW9ucyk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9O1xyXG5cclxuICAvLyBAZnVuY3Rpb24gbWVyZ2VPcHRpb25zKG9wdGlvbnM6IE9iamVjdCk6IHRoaXNcclxuICAvLyBbTWVyZ2VzIGBvcHRpb25zYF0oI2NsYXNzLW9wdGlvbnMpIGludG8gdGhlIGRlZmF1bHRzIG9mIHRoZSBjbGFzcy5cclxuICBDbGFzcy5tZXJnZU9wdGlvbnMgPSBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0ZXh0ZW5kKHRoaXMucHJvdG90eXBlLm9wdGlvbnMsIG9wdGlvbnMpO1xyXG4gIFx0cmV0dXJuIHRoaXM7XHJcbiAgfTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGFkZEluaXRIb29rKGZuOiBGdW5jdGlvbik6IHRoaXNcclxuICAvLyBBZGRzIGEgW2NvbnN0cnVjdG9yIGhvb2tdKCNjbGFzcy1jb25zdHJ1Y3Rvci1ob29rcykgdG8gdGhlIGNsYXNzLlxyXG4gIENsYXNzLmFkZEluaXRIb29rID0gZnVuY3Rpb24gKGZuKSB7IC8vIChGdW5jdGlvbikgfHwgKFN0cmluZywgYXJncy4uLilcclxuICBcdHZhciBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCAxKTtcclxuXHJcbiAgXHR2YXIgaW5pdCA9IHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJyA/IGZuIDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzW2ZuXS5hcHBseSh0aGlzLCBhcmdzKTtcclxuICBcdH07XHJcblxyXG4gIFx0dGhpcy5wcm90b3R5cGUuX2luaXRIb29rcyA9IHRoaXMucHJvdG90eXBlLl9pbml0SG9va3MgfHwgW107XHJcbiAgXHR0aGlzLnByb3RvdHlwZS5faW5pdEhvb2tzLnB1c2goaW5pdCk7XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9O1xyXG5cclxuICBmdW5jdGlvbiBjaGVja0RlcHJlY2F0ZWRNaXhpbkV2ZW50cyhpbmNsdWRlcykge1xyXG4gIFx0LyogZ2xvYmFsIEw6IHRydWUgKi9cclxuICBcdGlmICh0eXBlb2YgTCA9PT0gJ3VuZGVmaW5lZCcgfHwgIUwgfHwgIUwuTWl4aW4pIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0aW5jbHVkZXMgPSBpc0FycmF5KGluY2x1ZGVzKSA/IGluY2x1ZGVzIDogW2luY2x1ZGVzXTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMDsgaSA8IGluY2x1ZGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdGlmIChpbmNsdWRlc1tpXSA9PT0gTC5NaXhpbi5FdmVudHMpIHtcclxuICBcdFx0XHRjb25zb2xlLndhcm4oJ0RlcHJlY2F0ZWQgaW5jbHVkZSBvZiBMLk1peGluLkV2ZW50czogJyArXHJcbiAgXHRcdFx0XHQndGhpcyBwcm9wZXJ0eSB3aWxsIGJlIHJlbW92ZWQgaW4gZnV0dXJlIHJlbGVhc2VzLCAnICtcclxuICBcdFx0XHRcdCdwbGVhc2UgaW5oZXJpdCBmcm9tIEwuRXZlbnRlZCBpbnN0ZWFkLicsIG5ldyBFcnJvcigpLnN0YWNrKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIH1cblxuICAvKlxyXG4gICAqIEBjbGFzcyBFdmVudGVkXHJcbiAgICogQGFrYSBMLkV2ZW50ZWRcclxuICAgKiBAaW5oZXJpdHMgQ2xhc3NcclxuICAgKlxyXG4gICAqIEEgc2V0IG9mIG1ldGhvZHMgc2hhcmVkIGJldHdlZW4gZXZlbnQtcG93ZXJlZCBjbGFzc2VzIChsaWtlIGBNYXBgIGFuZCBgTWFya2VyYCkuIEdlbmVyYWxseSwgZXZlbnRzIGFsbG93IHlvdSB0byBleGVjdXRlIHNvbWUgZnVuY3Rpb24gd2hlbiBzb21ldGhpbmcgaGFwcGVucyB3aXRoIGFuIG9iamVjdCAoZS5nLiB0aGUgdXNlciBjbGlja3Mgb24gdGhlIG1hcCwgY2F1c2luZyB0aGUgbWFwIHRvIGZpcmUgYCdjbGljaydgIGV2ZW50KS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIG1hcC5vbignY2xpY2snLCBmdW5jdGlvbihlKSB7XHJcbiAgICogXHRhbGVydChlLmxhdGxuZyk7XHJcbiAgICogfSApO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICogTGVhZmxldCBkZWFscyB3aXRoIGV2ZW50IGxpc3RlbmVycyBieSByZWZlcmVuY2UsIHNvIGlmIHlvdSB3YW50IHRvIGFkZCBhIGxpc3RlbmVyIGFuZCB0aGVuIHJlbW92ZSBpdCwgZGVmaW5lIGl0IGFzIGEgZnVuY3Rpb246XHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIGZ1bmN0aW9uIG9uQ2xpY2soZSkgeyAuLi4gfVxyXG4gICAqXHJcbiAgICogbWFwLm9uKCdjbGljaycsIG9uQ2xpY2spO1xyXG4gICAqIG1hcC5vZmYoJ2NsaWNrJywgb25DbGljayk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBFdmVudHMgPSB7XHJcbiAgXHQvKiBAbWV0aG9kIG9uKHR5cGU6IFN0cmluZywgZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIFx0ICogQWRkcyBhIGxpc3RlbmVyIGZ1bmN0aW9uIChgZm5gKSB0byBhIHBhcnRpY3VsYXIgZXZlbnQgdHlwZSBvZiB0aGUgb2JqZWN0LiBZb3UgY2FuIG9wdGlvbmFsbHkgc3BlY2lmeSB0aGUgY29udGV4dCBvZiB0aGUgbGlzdGVuZXIgKG9iamVjdCB0aGUgdGhpcyBrZXl3b3JkIHdpbGwgcG9pbnQgdG8pLiBZb3UgY2FuIGFsc28gcGFzcyBzZXZlcmFsIHNwYWNlLXNlcGFyYXRlZCB0eXBlcyAoZS5nLiBgJ2NsaWNrIGRibGNsaWNrJ2ApLlxyXG4gIFx0ICpcclxuICBcdCAqIEBhbHRlcm5hdGl2ZVxyXG4gIFx0ICogQG1ldGhvZCBvbihldmVudE1hcDogT2JqZWN0KTogdGhpc1xyXG4gIFx0ICogQWRkcyBhIHNldCBvZiB0eXBlL2xpc3RlbmVyIHBhaXJzLCBlLmcuIGB7Y2xpY2s6IG9uQ2xpY2ssIG1vdXNlbW92ZTogb25Nb3VzZU1vdmV9YFxyXG4gIFx0ICovXHJcbiAgXHRvbjogZnVuY3Rpb24gKHR5cGVzLCBmbiwgY29udGV4dCkge1xyXG5cclxuICBcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgbWFwIG9mIHR5cGVzL2hhbmRsZXJzXHJcbiAgXHRcdGlmICh0eXBlb2YgdHlwZXMgPT09ICdvYmplY3QnKSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgdHlwZSBpbiB0eXBlcykge1xyXG4gIFx0XHRcdFx0Ly8gd2UgZG9uJ3QgcHJvY2VzcyBzcGFjZS1zZXBhcmF0ZWQgZXZlbnRzIGhlcmUgZm9yIHBlcmZvcm1hbmNlO1xyXG4gIFx0XHRcdFx0Ly8gaXQncyBhIGhvdCBwYXRoIHNpbmNlIExheWVyIHVzZXMgdGhlIG9uKG9iaikgc3ludGF4XHJcbiAgXHRcdFx0XHR0aGlzLl9vbih0eXBlLCB0eXBlc1t0eXBlXSwgZm4pO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgc3RyaW5nIG9mIHNwYWNlLXNlcGFyYXRlZCB3b3Jkc1xyXG4gIFx0XHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdFx0dGhpcy5fb24odHlwZXNbaV0sIGZuLCBjb250ZXh0KTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvKiBAbWV0aG9kIG9mZih0eXBlOiBTdHJpbmcsIGZuPzogRnVuY3Rpb24sIGNvbnRleHQ/OiBPYmplY3QpOiB0aGlzXHJcbiAgXHQgKiBSZW1vdmVzIGEgcHJldmlvdXNseSBhZGRlZCBsaXN0ZW5lciBmdW5jdGlvbi4gSWYgbm8gZnVuY3Rpb24gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIHJlbW92ZSBhbGwgdGhlIGxpc3RlbmVycyBvZiB0aGF0IHBhcnRpY3VsYXIgZXZlbnQgZnJvbSB0aGUgb2JqZWN0LiBOb3RlIHRoYXQgaWYgeW91IHBhc3NlZCBhIGN1c3RvbSBjb250ZXh0IHRvIGBvbmAsIHlvdSBtdXN0IHBhc3MgdGhlIHNhbWUgY29udGV4dCB0byBgb2ZmYCBpbiBvcmRlciB0byByZW1vdmUgdGhlIGxpc3RlbmVyLlxyXG4gIFx0ICpcclxuICBcdCAqIEBhbHRlcm5hdGl2ZVxyXG4gIFx0ICogQG1ldGhvZCBvZmYoZXZlbnRNYXA6IE9iamVjdCk6IHRoaXNcclxuICBcdCAqIFJlbW92ZXMgYSBzZXQgb2YgdHlwZS9saXN0ZW5lciBwYWlycy5cclxuICBcdCAqXHJcbiAgXHQgKiBAYWx0ZXJuYXRpdmVcclxuICBcdCAqIEBtZXRob2Qgb2ZmOiB0aGlzXHJcbiAgXHQgKiBSZW1vdmVzIGFsbCBsaXN0ZW5lcnMgdG8gYWxsIGV2ZW50cyBvbiB0aGUgb2JqZWN0LiBUaGlzIGluY2x1ZGVzIGltcGxpY2l0bHkgYXR0YWNoZWQgZXZlbnRzLlxyXG4gIFx0ICovXHJcbiAgXHRvZmY6IGZ1bmN0aW9uICh0eXBlcywgZm4sIGNvbnRleHQpIHtcclxuXHJcbiAgXHRcdGlmICghYXJndW1lbnRzLmxlbmd0aCkge1xyXG4gIFx0XHRcdC8vIGNsZWFyIGFsbCBsaXN0ZW5lcnMgaWYgY2FsbGVkIHdpdGhvdXQgYXJndW1lbnRzXHJcbiAgXHRcdFx0ZGVsZXRlIHRoaXMuX2V2ZW50cztcclxuXHJcbiAgXHRcdH0gZWxzZSBpZiAodHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRcdGZvciAodmFyIHR5cGUgaW4gdHlwZXMpIHtcclxuICBcdFx0XHRcdHRoaXMuX29mZih0eXBlLCB0eXBlc1t0eXBlXSwgZm4pO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0dHlwZXMgPSBzcGxpdFdvcmRzKHR5cGVzKTtcclxuXHJcbiAgXHRcdFx0dmFyIHJlbW92ZUFsbCA9IGFyZ3VtZW50cy5sZW5ndGggPT09IDE7XHJcbiAgXHRcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRpZiAocmVtb3ZlQWxsKSB7XHJcbiAgXHRcdFx0XHRcdHRoaXMuX29mZih0eXBlc1tpXSk7XHJcbiAgXHRcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0XHR0aGlzLl9vZmYodHlwZXNbaV0sIGZuLCBjb250ZXh0KTtcclxuICBcdFx0XHRcdH1cclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBhdHRhY2ggbGlzdGVuZXIgKHdpdGhvdXQgc3ludGFjdGljIHN1Z2FyIG5vdylcclxuICBcdF9vbjogZnVuY3Rpb24gKHR5cGUsIGZuLCBjb250ZXh0LCBfb25jZSkge1xyXG4gIFx0XHRpZiAodHlwZW9mIGZuICE9PSAnZnVuY3Rpb24nKSB7XHJcbiAgXHRcdFx0Y29uc29sZS53YXJuKCd3cm9uZyBsaXN0ZW5lciB0eXBlOiAnICsgdHlwZW9mIGZuKTtcclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGNoZWNrIGlmIGZuIGFscmVhZHkgdGhlcmVcclxuICBcdFx0aWYgKHRoaXMuX2xpc3RlbnModHlwZSwgZm4sIGNvbnRleHQpICE9PSBmYWxzZSkge1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKGNvbnRleHQgPT09IHRoaXMpIHtcclxuICBcdFx0XHQvLyBMZXNzIG1lbW9yeSBmb290cHJpbnQuXHJcbiAgXHRcdFx0Y29udGV4dCA9IHVuZGVmaW5lZDtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG5ld0xpc3RlbmVyID0ge2ZuOiBmbiwgY3R4OiBjb250ZXh0fTtcclxuICBcdFx0aWYgKF9vbmNlKSB7XHJcbiAgXHRcdFx0bmV3TGlzdGVuZXIub25jZSA9IHRydWU7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2V2ZW50cyA9IHRoaXMuX2V2ZW50cyB8fCB7fTtcclxuICBcdFx0dGhpcy5fZXZlbnRzW3R5cGVdID0gdGhpcy5fZXZlbnRzW3R5cGVdIHx8IFtdO1xyXG4gIFx0XHR0aGlzLl9ldmVudHNbdHlwZV0ucHVzaChuZXdMaXN0ZW5lcik7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vZmY6IGZ1bmN0aW9uICh0eXBlLCBmbiwgY29udGV4dCkge1xyXG4gIFx0XHR2YXIgbGlzdGVuZXJzLFxyXG4gIFx0XHQgICAgaSxcclxuICBcdFx0ICAgIGxlbjtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5fZXZlbnRzKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRsaXN0ZW5lcnMgPSB0aGlzLl9ldmVudHNbdHlwZV07XHJcbiAgXHRcdGlmICghbGlzdGVuZXJzKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkgeyAvLyByZW1vdmUgYWxsXHJcbiAgXHRcdFx0aWYgKHRoaXMuX2ZpcmluZ0NvdW50KSB7XHJcbiAgXHRcdFx0XHQvLyBTZXQgYWxsIHJlbW92ZWQgbGlzdGVuZXJzIHRvIG5vb3BcclxuICBcdFx0XHRcdC8vIHNvIHRoZXkgYXJlIG5vdCBjYWxsZWQgaWYgcmVtb3ZlIGhhcHBlbnMgaW4gZmlyZVxyXG4gIFx0XHRcdFx0Zm9yIChpID0gMCwgbGVuID0gbGlzdGVuZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRcdGxpc3RlbmVyc1tpXS5mbiA9IGZhbHNlRm47XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdC8vIGNsZWFyIGFsbCBsaXN0ZW5lcnMgZm9yIGEgdHlwZSBpZiBmdW5jdGlvbiBpc24ndCBzcGVjaWZpZWRcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fZXZlbnRzW3R5cGVdO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdGNvbnNvbGUud2Fybignd3JvbmcgbGlzdGVuZXIgdHlwZTogJyArIHR5cGVvZiBmbik7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBmaW5kIGZuIGFuZCByZW1vdmUgaXRcclxuICBcdFx0dmFyIGluZGV4ID0gdGhpcy5fbGlzdGVucyh0eXBlLCBmbiwgY29udGV4dCk7XHJcbiAgXHRcdGlmIChpbmRleCAhPT0gZmFsc2UpIHtcclxuICBcdFx0XHR2YXIgbGlzdGVuZXIgPSBsaXN0ZW5lcnNbaW5kZXhdO1xyXG4gIFx0XHRcdGlmICh0aGlzLl9maXJpbmdDb3VudCkge1xyXG4gIFx0XHRcdFx0Ly8gc2V0IHRoZSByZW1vdmVkIGxpc3RlbmVyIHRvIG5vb3Agc28gdGhhdCdzIG5vdCBjYWxsZWQgaWYgcmVtb3ZlIGhhcHBlbnMgaW4gZmlyZVxyXG4gIFx0XHRcdFx0bGlzdGVuZXIuZm4gPSBmYWxzZUZuO1xyXG5cclxuICBcdFx0XHRcdC8qIGNvcHkgYXJyYXkgaW4gY2FzZSBldmVudHMgYXJlIGJlaW5nIGZpcmVkICovXHJcbiAgXHRcdFx0XHR0aGlzLl9ldmVudHNbdHlwZV0gPSBsaXN0ZW5lcnMgPSBsaXN0ZW5lcnMuc2xpY2UoKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bGlzdGVuZXJzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXJlKHR5cGU6IFN0cmluZywgZGF0YT86IE9iamVjdCwgcHJvcGFnYXRlPzogQm9vbGVhbik6IHRoaXNcclxuICBcdC8vIEZpcmVzIGFuIGV2ZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZS4gWW91IGNhbiBvcHRpb25hbGx5IHByb3ZpZGUgYSBkYXRhXHJcbiAgXHQvLyBvYmplY3Qg4oCUIHRoZSBmaXJzdCBhcmd1bWVudCBvZiB0aGUgbGlzdGVuZXIgZnVuY3Rpb24gd2lsbCBjb250YWluIGl0c1xyXG4gIFx0Ly8gcHJvcGVydGllcy4gVGhlIGV2ZW50IGNhbiBvcHRpb25hbGx5IGJlIHByb3BhZ2F0ZWQgdG8gZXZlbnQgcGFyZW50cy5cclxuICBcdGZpcmU6IGZ1bmN0aW9uICh0eXBlLCBkYXRhLCBwcm9wYWdhdGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLmxpc3RlbnModHlwZSwgcHJvcGFnYXRlKSkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0dmFyIGV2ZW50ID0gZXh0ZW5kKHt9LCBkYXRhLCB7XHJcbiAgXHRcdFx0dHlwZTogdHlwZSxcclxuICBcdFx0XHR0YXJnZXQ6IHRoaXMsXHJcbiAgXHRcdFx0c291cmNlVGFyZ2V0OiBkYXRhICYmIGRhdGEuc291cmNlVGFyZ2V0IHx8IHRoaXNcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fZXZlbnRzKSB7XHJcbiAgXHRcdFx0dmFyIGxpc3RlbmVycyA9IHRoaXMuX2V2ZW50c1t0eXBlXTtcclxuICBcdFx0XHRpZiAobGlzdGVuZXJzKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9maXJpbmdDb3VudCA9ICh0aGlzLl9maXJpbmdDb3VudCArIDEpIHx8IDE7XHJcbiAgXHRcdFx0XHRmb3IgKHZhciBpID0gMCwgbGVuID0gbGlzdGVuZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRcdHZhciBsID0gbGlzdGVuZXJzW2ldO1xyXG4gIFx0XHRcdFx0XHQvLyBvZmYgb3ZlcndyaXRlcyBsLmZuLCBzbyB3ZSBuZWVkIHRvIGNvcHkgZm4gdG8gYSB2YXJcclxuICBcdFx0XHRcdFx0dmFyIGZuID0gbC5mbjtcclxuICBcdFx0XHRcdFx0aWYgKGwub25jZSkge1xyXG4gIFx0XHRcdFx0XHRcdHRoaXMub2ZmKHR5cGUsIGZuLCBsLmN0eCk7XHJcbiAgXHRcdFx0XHRcdH1cclxuICBcdFx0XHRcdFx0Zm4uY2FsbChsLmN0eCB8fCB0aGlzLCBldmVudCk7XHJcbiAgXHRcdFx0XHR9XHJcblxyXG4gIFx0XHRcdFx0dGhpcy5fZmlyaW5nQ291bnQtLTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChwcm9wYWdhdGUpIHtcclxuICBcdFx0XHQvLyBwcm9wYWdhdGUgdGhlIGV2ZW50IHRvIHBhcmVudHMgKHNldCB3aXRoIGFkZEV2ZW50UGFyZW50KVxyXG4gIFx0XHRcdHRoaXMuX3Byb3BhZ2F0ZUV2ZW50KGV2ZW50KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbGlzdGVucyh0eXBlOiBTdHJpbmcsIHByb3BhZ2F0ZT86IEJvb2xlYW4pOiBCb29sZWFuXHJcbiAgXHQvLyBAbWV0aG9kIGxpc3RlbnModHlwZTogU3RyaW5nLCBmbjogRnVuY3Rpb24sIGNvbnRleHQ/OiBPYmplY3QsIHByb3BhZ2F0ZT86IEJvb2xlYW4pOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiBhIHBhcnRpY3VsYXIgZXZlbnQgdHlwZSBoYXMgYW55IGxpc3RlbmVycyBhdHRhY2hlZCB0byBpdC5cclxuICBcdC8vIFRoZSB2ZXJpZmljYXRpb24gY2FuIG9wdGlvbmFsbHkgYmUgcHJvcGFnYXRlZCwgaXQgd2lsbCByZXR1cm4gYHRydWVgIGlmIHBhcmVudHMgaGF2ZSB0aGUgbGlzdGVuZXIgYXR0YWNoZWQgdG8gaXQuXHJcbiAgXHRsaXN0ZW5zOiBmdW5jdGlvbiAodHlwZSwgZm4sIGNvbnRleHQsIHByb3BhZ2F0ZSkge1xyXG4gIFx0XHRpZiAodHlwZW9mIHR5cGUgIT09ICdzdHJpbmcnKSB7XHJcbiAgXHRcdFx0Y29uc29sZS53YXJuKCdcInN0cmluZ1wiIHR5cGUgYXJndW1lbnQgZXhwZWN0ZWQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gd2UgZG9uJ3Qgb3ZlcndyaXRlIHRoZSBpbnB1dCBgZm5gIHZhbHVlLCBiZWNhdXNlIHdlIG5lZWQgdG8gdXNlIGl0IGZvciBwcm9wYWdhdGlvblxyXG4gIFx0XHR2YXIgX2ZuID0gZm47XHJcbiAgXHRcdGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcclxuICBcdFx0XHRwcm9wYWdhdGUgPSAhIWZuO1xyXG4gIFx0XHRcdF9mbiA9IHVuZGVmaW5lZDtcclxuICBcdFx0XHRjb250ZXh0ID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbGlzdGVuZXJzID0gdGhpcy5fZXZlbnRzICYmIHRoaXMuX2V2ZW50c1t0eXBlXTtcclxuICBcdFx0aWYgKGxpc3RlbmVycyAmJiBsaXN0ZW5lcnMubGVuZ3RoKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX2xpc3RlbnModHlwZSwgX2ZuLCBjb250ZXh0KSAhPT0gZmFsc2UpIHtcclxuICBcdFx0XHRcdHJldHVybiB0cnVlO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHByb3BhZ2F0ZSkge1xyXG4gIFx0XHRcdC8vIGFsc28gY2hlY2sgcGFyZW50cyBmb3IgbGlzdGVuZXJzIGlmIGV2ZW50IHByb3BhZ2F0ZXNcclxuICBcdFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9ldmVudFBhcmVudHMpIHtcclxuICBcdFx0XHRcdGlmICh0aGlzLl9ldmVudFBhcmVudHNbaWRdLmxpc3RlbnModHlwZSwgZm4sIGNvbnRleHQsIHByb3BhZ2F0ZSkpIHsgcmV0dXJuIHRydWU7IH1cclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIGZhbHNlO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyByZXR1cm5zIHRoZSBpbmRleCAobnVtYmVyKSBvciBmYWxzZVxyXG4gIFx0X2xpc3RlbnM6IGZ1bmN0aW9uICh0eXBlLCBmbiwgY29udGV4dCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2V2ZW50cykge1xyXG4gIFx0XHRcdHJldHVybiBmYWxzZTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGxpc3RlbmVycyA9IHRoaXMuX2V2ZW50c1t0eXBlXSB8fCBbXTtcclxuICBcdFx0aWYgKCFmbikge1xyXG4gIFx0XHRcdHJldHVybiAhIWxpc3RlbmVycy5sZW5ndGg7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChjb250ZXh0ID09PSB0aGlzKSB7XHJcbiAgXHRcdFx0Ly8gTGVzcyBtZW1vcnkgZm9vdHByaW50LlxyXG4gIFx0XHRcdGNvbnRleHQgPSB1bmRlZmluZWQ7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsaXN0ZW5lcnMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICBcdFx0XHRpZiAobGlzdGVuZXJzW2ldLmZuID09PSBmbiAmJiBsaXN0ZW5lcnNbaV0uY3R4ID09PSBjb250ZXh0KSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gaTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBvbmNlKOKApik6IHRoaXNcclxuICBcdC8vIEJlaGF2ZXMgYXMgW2BvbijigKYpYF0oI2V2ZW50ZWQtb24pLCBleGNlcHQgdGhlIGxpc3RlbmVyIHdpbGwgb25seSBnZXQgZmlyZWQgb25jZSBhbmQgdGhlbiByZW1vdmVkLlxyXG4gIFx0b25jZTogZnVuY3Rpb24gKHR5cGVzLCBmbiwgY29udGV4dCkge1xyXG5cclxuICBcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgbWFwIG9mIHR5cGVzL2hhbmRsZXJzXHJcbiAgXHRcdGlmICh0eXBlb2YgdHlwZXMgPT09ICdvYmplY3QnKSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgdHlwZSBpbiB0eXBlcykge1xyXG4gIFx0XHRcdFx0Ly8gd2UgZG9uJ3QgcHJvY2VzcyBzcGFjZS1zZXBhcmF0ZWQgZXZlbnRzIGhlcmUgZm9yIHBlcmZvcm1hbmNlO1xyXG4gIFx0XHRcdFx0Ly8gaXQncyBhIGhvdCBwYXRoIHNpbmNlIExheWVyIHVzZXMgdGhlIG9uKG9iaikgc3ludGF4XHJcbiAgXHRcdFx0XHR0aGlzLl9vbih0eXBlLCB0eXBlc1t0eXBlXSwgZm4sIHRydWUpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgc3RyaW5nIG9mIHNwYWNlLXNlcGFyYXRlZCB3b3Jkc1xyXG4gIFx0XHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdFx0dGhpcy5fb24odHlwZXNbaV0sIGZuLCBjb250ZXh0LCB0cnVlKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGFkZEV2ZW50UGFyZW50KG9iajogRXZlbnRlZCk6IHRoaXNcclxuICBcdC8vIEFkZHMgYW4gZXZlbnQgcGFyZW50IC0gYW4gYEV2ZW50ZWRgIHRoYXQgd2lsbCByZWNlaXZlIHByb3BhZ2F0ZWQgZXZlbnRzXHJcbiAgXHRhZGRFdmVudFBhcmVudDogZnVuY3Rpb24gKG9iaikge1xyXG4gIFx0XHR0aGlzLl9ldmVudFBhcmVudHMgPSB0aGlzLl9ldmVudFBhcmVudHMgfHwge307XHJcbiAgXHRcdHRoaXMuX2V2ZW50UGFyZW50c1tzdGFtcChvYmopXSA9IG9iajtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlRXZlbnRQYXJlbnQob2JqOiBFdmVudGVkKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyBhbiBldmVudCBwYXJlbnQsIHNvIGl0IHdpbGwgc3RvcCByZWNlaXZpbmcgcHJvcGFnYXRlZCBldmVudHNcclxuICBcdHJlbW92ZUV2ZW50UGFyZW50OiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9ldmVudFBhcmVudHMpIHtcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fZXZlbnRQYXJlbnRzW3N0YW1wKG9iaildO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcHJvcGFnYXRlRXZlbnQ6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGZvciAodmFyIGlkIGluIHRoaXMuX2V2ZW50UGFyZW50cykge1xyXG4gIFx0XHRcdHRoaXMuX2V2ZW50UGFyZW50c1tpZF0uZmlyZShlLnR5cGUsIGV4dGVuZCh7XHJcbiAgXHRcdFx0XHRsYXllcjogZS50YXJnZXQsXHJcbiAgXHRcdFx0XHRwcm9wYWdhdGVkRnJvbTogZS50YXJnZXRcclxuICBcdFx0XHR9LCBlKSwgdHJ1ZSk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9O1xyXG5cclxuICAvLyBhbGlhc2VzOyB3ZSBzaG91bGQgZGl0Y2ggdGhvc2UgZXZlbnR1YWxseVxyXG5cclxuICAvLyBAbWV0aG9kIGFkZEV2ZW50TGlzdGVuZXIo4oCmKTogdGhpc1xyXG4gIC8vIEFsaWFzIHRvIFtgb24o4oCmKWBdKCNldmVudGVkLW9uKVxyXG4gIEV2ZW50cy5hZGRFdmVudExpc3RlbmVyID0gRXZlbnRzLm9uO1xyXG5cclxuICAvLyBAbWV0aG9kIHJlbW92ZUV2ZW50TGlzdGVuZXIo4oCmKTogdGhpc1xyXG4gIC8vIEFsaWFzIHRvIFtgb2ZmKOKApilgXSgjZXZlbnRlZC1vZmYpXHJcblxyXG4gIC8vIEBtZXRob2QgY2xlYXJBbGxFdmVudExpc3RlbmVycyjigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BvZmYoKWBdKCNldmVudGVkLW9mZilcclxuICBFdmVudHMucmVtb3ZlRXZlbnRMaXN0ZW5lciA9IEV2ZW50cy5jbGVhckFsbEV2ZW50TGlzdGVuZXJzID0gRXZlbnRzLm9mZjtcclxuXHJcbiAgLy8gQG1ldGhvZCBhZGRPbmVUaW1lRXZlbnRMaXN0ZW5lcijigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BvbmNlKOKApilgXSgjZXZlbnRlZC1vbmNlKVxyXG4gIEV2ZW50cy5hZGRPbmVUaW1lRXZlbnRMaXN0ZW5lciA9IEV2ZW50cy5vbmNlO1xyXG5cclxuICAvLyBAbWV0aG9kIGZpcmVFdmVudCjigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BmaXJlKOKApilgXSgjZXZlbnRlZC1maXJlKVxyXG4gIEV2ZW50cy5maXJlRXZlbnQgPSBFdmVudHMuZmlyZTtcclxuXHJcbiAgLy8gQG1ldGhvZCBoYXNFdmVudExpc3RlbmVycyjigKYpOiBCb29sZWFuXHJcbiAgLy8gQWxpYXMgdG8gW2BsaXN0ZW5zKOKApilgXSgjZXZlbnRlZC1saXN0ZW5zKVxyXG4gIEV2ZW50cy5oYXNFdmVudExpc3RlbmVycyA9IEV2ZW50cy5saXN0ZW5zO1xyXG5cclxuICB2YXIgRXZlbnRlZCA9IENsYXNzLmV4dGVuZChFdmVudHMpO1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIFBvaW50XHJcbiAgICogQGFrYSBMLlBvaW50XHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgcG9pbnQgd2l0aCBgeGAgYW5kIGB5YCBjb29yZGluYXRlcyBpbiBwaXhlbHMuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9pbnQgPSBMLnBvaW50KDIwMCwgMzAwKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEFsbCBMZWFmbGV0IG1ldGhvZHMgYW5kIG9wdGlvbnMgdGhhdCBhY2NlcHQgYFBvaW50YCBvYmplY3RzIGFsc28gYWNjZXB0IHRoZW0gaW4gYSBzaW1wbGUgQXJyYXkgZm9ybSAodW5sZXNzIG5vdGVkIG90aGVyd2lzZSksIHNvIHRoZXNlIGxpbmVzIGFyZSBlcXVpdmFsZW50OlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBtYXAucGFuQnkoWzIwMCwgMzAwXSk7XHJcbiAgICogbWFwLnBhbkJ5KEwucG9pbnQoMjAwLCAzMDApKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgUG9pbnRgIGRvZXMgbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXHJcbiAgICogd2hpY2ggbWVhbnMgbmV3IGNsYXNzZXMgY2FuJ3QgaW5oZXJpdCBmcm9tIGl0LCBhbmQgbmV3IG1ldGhvZHNcclxuICAgKiBjYW4ndCBiZSBhZGRlZCB0byBpdCB3aXRoIHRoZSBgaW5jbHVkZWAgZnVuY3Rpb24uXHJcbiAgICovXHJcblxyXG4gIGZ1bmN0aW9uIFBvaW50KHgsIHksIHJvdW5kKSB7XHJcbiAgXHQvLyBAcHJvcGVydHkgeDogTnVtYmVyOyBUaGUgYHhgIGNvb3JkaW5hdGUgb2YgdGhlIHBvaW50XHJcbiAgXHR0aGlzLnggPSAocm91bmQgPyBNYXRoLnJvdW5kKHgpIDogeCk7XHJcbiAgXHQvLyBAcHJvcGVydHkgeTogTnVtYmVyOyBUaGUgYHlgIGNvb3JkaW5hdGUgb2YgdGhlIHBvaW50XHJcbiAgXHR0aGlzLnkgPSAocm91bmQgPyBNYXRoLnJvdW5kKHkpIDogeSk7XHJcbiAgfVxyXG5cclxuICB2YXIgdHJ1bmMgPSBNYXRoLnRydW5jIHx8IGZ1bmN0aW9uICh2KSB7XHJcbiAgXHRyZXR1cm4gdiA+IDAgPyBNYXRoLmZsb29yKHYpIDogTWF0aC5jZWlsKHYpO1xyXG4gIH07XHJcblxyXG4gIFBvaW50LnByb3RvdHlwZSA9IHtcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb25lKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludC5cclxuICBcdGNsb25lOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQodGhpcy54LCB0aGlzLnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGFkZChvdGhlclBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2YgYWRkaXRpb24gb2YgdGhlIGN1cnJlbnQgYW5kIHRoZSBnaXZlbiBwb2ludHMuXHJcbiAgXHRhZGQ6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHQvLyBub24tZGVzdHJ1Y3RpdmUsIHJldHVybnMgYSBuZXcgcG9pbnRcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fYWRkKHRvUG9pbnQocG9pbnQpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2FkZDogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdC8vIGRlc3RydWN0aXZlLCB1c2VkIGRpcmVjdGx5IGZvciBwZXJmb3JtYW5jZSBpbiBzaXR1YXRpb25zIHdoZXJlIGl0J3Mgc2FmZSB0byBtb2RpZnkgZXhpc3RpbmcgcG9pbnRcclxuICBcdFx0dGhpcy54ICs9IHBvaW50Lng7XHJcbiAgXHRcdHRoaXMueSArPSBwb2ludC55O1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzdWJ0cmFjdChvdGhlclBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2Ygc3VidHJhY3Rpb24gb2YgdGhlIGdpdmVuIHBvaW50IGZyb20gdGhlIGN1cnJlbnQuXHJcbiAgXHRzdWJ0cmFjdDogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmNsb25lKCkuX3N1YnRyYWN0KHRvUG9pbnQocG9pbnQpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3N1YnRyYWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dGhpcy54IC09IHBvaW50Lng7XHJcbiAgXHRcdHRoaXMueSAtPSBwb2ludC55O1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXZpZGVCeShudW06IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2YgZGl2aXNpb24gb2YgdGhlIGN1cnJlbnQgcG9pbnQgYnkgdGhlIGdpdmVuIG51bWJlci5cclxuICBcdGRpdmlkZUJ5OiBmdW5jdGlvbiAobnVtKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmNsb25lKCkuX2RpdmlkZUJ5KG51bSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9kaXZpZGVCeTogZnVuY3Rpb24gKG51bSkge1xyXG4gIFx0XHR0aGlzLnggLz0gbnVtO1xyXG4gIFx0XHR0aGlzLnkgLz0gbnVtO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBtdWx0aXBseUJ5KG51bTogTnVtYmVyKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHJlc3VsdCBvZiBtdWx0aXBsaWNhdGlvbiBvZiB0aGUgY3VycmVudCBwb2ludCBieSB0aGUgZ2l2ZW4gbnVtYmVyLlxyXG4gIFx0bXVsdGlwbHlCeTogZnVuY3Rpb24gKG51bSkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9tdWx0aXBseUJ5KG51bSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tdWx0aXBseUJ5OiBmdW5jdGlvbiAobnVtKSB7XHJcbiAgXHRcdHRoaXMueCAqPSBudW07XHJcbiAgXHRcdHRoaXMueSAqPSBudW07XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNjYWxlQnkoc2NhbGU6IFBvaW50KTogUG9pbnRcclxuICBcdC8vIE11bHRpcGx5IGVhY2ggY29vcmRpbmF0ZSBvZiB0aGUgY3VycmVudCBwb2ludCBieSBlYWNoIGNvb3JkaW5hdGUgb2ZcclxuICBcdC8vIGBzY2FsZWAuIEluIGxpbmVhciBhbGdlYnJhIHRlcm1zLCBtdWx0aXBseSB0aGUgcG9pbnQgYnkgdGhlXHJcbiAgXHQvLyBbc2NhbGluZyBtYXRyaXhdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NjYWxpbmdfJTI4Z2VvbWV0cnklMjkjTWF0cml4X3JlcHJlc2VudGF0aW9uKVxyXG4gIFx0Ly8gZGVmaW5lZCBieSBgc2NhbGVgLlxyXG4gIFx0c2NhbGVCeTogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQodGhpcy54ICogcG9pbnQueCwgdGhpcy55ICogcG9pbnQueSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdW5zY2FsZUJ5KHNjYWxlOiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBJbnZlcnNlIG9mIGBzY2FsZUJ5YC4gRGl2aWRlIGVhY2ggY29vcmRpbmF0ZSBvZiB0aGUgY3VycmVudCBwb2ludCBieVxyXG4gIFx0Ly8gZWFjaCBjb29yZGluYXRlIG9mIGBzY2FsZWAuXHJcbiAgXHR1bnNjYWxlQnk6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KHRoaXMueCAvIHBvaW50LngsIHRoaXMueSAvIHBvaW50LnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHJvdW5kKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIHJvdW5kZWQgY29vcmRpbmF0ZXMuXHJcbiAgXHRyb3VuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9yb3VuZCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcm91bmQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy54ID0gTWF0aC5yb3VuZCh0aGlzLngpO1xyXG4gIFx0XHR0aGlzLnkgPSBNYXRoLnJvdW5kKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGZsb29yKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIGZsb29yZWQgY29vcmRpbmF0ZXMgKHJvdW5kZWQgZG93bikuXHJcbiAgXHRmbG9vcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9mbG9vcigpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZmxvb3I6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy54ID0gTWF0aC5mbG9vcih0aGlzLngpO1xyXG4gIFx0XHR0aGlzLnkgPSBNYXRoLmZsb29yKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNlaWwoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgYSBjb3B5IG9mIHRoZSBjdXJyZW50IHBvaW50IHdpdGggY2VpbGVkIGNvb3JkaW5hdGVzIChyb3VuZGVkIHVwKS5cclxuICBcdGNlaWw6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fY2VpbCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2VpbDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLnggPSBNYXRoLmNlaWwodGhpcy54KTtcclxuICBcdFx0dGhpcy55ID0gTWF0aC5jZWlsKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHRydW5jKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIHRydW5jYXRlZCBjb29yZGluYXRlcyAocm91bmRlZCB0b3dhcmRzIHplcm8pLlxyXG4gIFx0dHJ1bmM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fdHJ1bmMoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3RydW5jOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMueCA9IHRydW5jKHRoaXMueCk7XHJcbiAgXHRcdHRoaXMueSA9IHRydW5jKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGRpc3RhbmNlVG8ob3RoZXJQb2ludDogUG9pbnQpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGNhcnRlc2lhbiBkaXN0YW5jZSBiZXR3ZWVuIHRoZSBjdXJyZW50IGFuZCB0aGUgZ2l2ZW4gcG9pbnRzLlxyXG4gIFx0ZGlzdGFuY2VUbzogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHR2YXIgeCA9IHBvaW50LnggLSB0aGlzLngsXHJcbiAgXHRcdCAgICB5ID0gcG9pbnQueSAtIHRoaXMueTtcclxuXHJcbiAgXHRcdHJldHVybiBNYXRoLnNxcnQoeCAqIHggKyB5ICogeSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXF1YWxzKG90aGVyUG9pbnQ6IFBvaW50KTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIHBvaW50IGhhcyB0aGUgc2FtZSBjb29yZGluYXRlcy5cclxuICBcdGVxdWFsczogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gcG9pbnQueCA9PT0gdGhpcy54ICYmXHJcbiAgXHRcdCAgICAgICBwb2ludC55ID09PSB0aGlzLnk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJQb2ludDogUG9pbnQpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiBib3RoIGNvb3JkaW5hdGVzIG9mIHRoZSBnaXZlbiBwb2ludCBhcmUgbGVzcyB0aGFuIHRoZSBjb3JyZXNwb25kaW5nIGN1cnJlbnQgcG9pbnQgY29vcmRpbmF0ZXMgKGluIGFic29sdXRlIHZhbHVlcykuXHJcbiAgXHRjb250YWluczogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gTWF0aC5hYnMocG9pbnQueCkgPD0gTWF0aC5hYnModGhpcy54KSAmJlxyXG4gIFx0XHQgICAgICAgTWF0aC5hYnMocG9pbnQueSkgPD0gTWF0aC5hYnModGhpcy55KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b1N0cmluZygpOiBTdHJpbmdcclxuICBcdC8vIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBvaW50IGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMuXHJcbiAgXHR0b1N0cmluZzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gJ1BvaW50KCcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLngpICsgJywgJyArXHJcbiAgXHRcdCAgICAgICAgZm9ybWF0TnVtKHRoaXMueSkgKyAnKSc7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5wb2ludCh4OiBOdW1iZXIsIHk6IE51bWJlciwgcm91bmQ/OiBCb29sZWFuKVxyXG4gIC8vIENyZWF0ZXMgYSBQb2ludCBvYmplY3Qgd2l0aCB0aGUgZ2l2ZW4gYHhgIGFuZCBgeWAgY29vcmRpbmF0ZXMuIElmIG9wdGlvbmFsIGByb3VuZGAgaXMgc2V0IHRvIHRydWUsIHJvdW5kcyB0aGUgYHhgIGFuZCBgeWAgdmFsdWVzLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLnBvaW50KGNvb3JkczogTnVtYmVyW10pXHJcbiAgLy8gRXhwZWN0cyBhbiBhcnJheSBvZiB0aGUgZm9ybSBgW3gsIHldYCBpbnN0ZWFkLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLnBvaW50KGNvb3JkczogT2JqZWN0KVxyXG4gIC8vIEV4cGVjdHMgYSBwbGFpbiBvYmplY3Qgb2YgdGhlIGZvcm0gYHt4OiBOdW1iZXIsIHk6IE51bWJlcn1gIGluc3RlYWQuXHJcbiAgZnVuY3Rpb24gdG9Qb2ludCh4LCB5LCByb3VuZCkge1xyXG4gIFx0aWYgKHggaW5zdGFuY2VvZiBQb2ludCkge1xyXG4gIFx0XHRyZXR1cm4geDtcclxuICBcdH1cclxuICBcdGlmIChpc0FycmF5KHgpKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoeFswXSwgeFsxXSk7XHJcbiAgXHR9XHJcbiAgXHRpZiAoeCA9PT0gdW5kZWZpbmVkIHx8IHggPT09IG51bGwpIHtcclxuICBcdFx0cmV0dXJuIHg7XHJcbiAgXHR9XHJcbiAgXHRpZiAodHlwZW9mIHggPT09ICdvYmplY3QnICYmICd4JyBpbiB4ICYmICd5JyBpbiB4KSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoeC54LCB4LnkpO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBQb2ludCh4LCB5LCByb3VuZCk7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIEJvdW5kc1xyXG4gICAqIEBha2EgTC5Cb3VuZHNcclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYSByZWN0YW5ndWxhciBhcmVhIGluIHBpeGVsIGNvb3JkaW5hdGVzLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIHAxID0gTC5wb2ludCgxMCwgMTApLFxyXG4gICAqIHAyID0gTC5wb2ludCg0MCwgNjApLFxyXG4gICAqIGJvdW5kcyA9IEwuYm91bmRzKHAxLCBwMik7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBBbGwgTGVhZmxldCBtZXRob2RzIHRoYXQgYWNjZXB0IGBCb3VuZHNgIG9iamVjdHMgYWxzbyBhY2NlcHQgdGhlbSBpbiBhIHNpbXBsZSBBcnJheSBmb3JtICh1bmxlc3Mgbm90ZWQgb3RoZXJ3aXNlKSwgc28gdGhlIGJvdW5kcyBleGFtcGxlIGFib3ZlIGNhbiBiZSBwYXNzZWQgbGlrZSB0aGlzOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBvdGhlckJvdW5kcy5pbnRlcnNlY3RzKFtbMTAsIDEwXSwgWzQwLCA2MF1dKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgQm91bmRzYCBkb2VzIG5vdCBpbmhlcml0IGZyb20gTGVhZmxldCdzIGBDbGFzc2Agb2JqZWN0LFxyXG4gICAqIHdoaWNoIG1lYW5zIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSBpdCwgYW5kIG5ldyBtZXRob2RzXHJcbiAgICogY2FuJ3QgYmUgYWRkZWQgdG8gaXQgd2l0aCB0aGUgYGluY2x1ZGVgIGZ1bmN0aW9uLlxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBCb3VuZHMoYSwgYikge1xyXG4gIFx0aWYgKCFhKSB7IHJldHVybjsgfVxyXG5cclxuICBcdHZhciBwb2ludHMgPSBiID8gW2EsIGJdIDogYTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHRoaXMuZXh0ZW5kKHBvaW50c1tpXSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBCb3VuZHMucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCBleHRlbmQocG9pbnQ6IFBvaW50KTogdGhpc1xyXG4gIFx0Ly8gRXh0ZW5kcyB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIHBvaW50LlxyXG5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBleHRlbmQob3RoZXJCb3VuZHM6IEJvdW5kcyk6IHRoaXNcclxuICBcdC8vIEV4dGVuZCB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIGJvdW5kc1xyXG4gIFx0ZXh0ZW5kOiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdHZhciBtaW4yLCBtYXgyO1xyXG4gIFx0XHRpZiAoIW9iaikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKG9iaiBpbnN0YW5jZW9mIFBvaW50IHx8IHR5cGVvZiBvYmpbMF0gPT09ICdudW1iZXInIHx8ICd4JyBpbiBvYmopIHtcclxuICBcdFx0XHRtaW4yID0gbWF4MiA9IHRvUG9pbnQob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0JvdW5kcyhvYmopO1xyXG4gIFx0XHRcdG1pbjIgPSBvYmoubWluO1xyXG4gIFx0XHRcdG1heDIgPSBvYmoubWF4O1xyXG5cclxuICBcdFx0XHRpZiAoIW1pbjIgfHwgIW1heDIpIHsgcmV0dXJuIHRoaXM7IH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQHByb3BlcnR5IG1pbjogUG9pbnRcclxuICBcdFx0Ly8gVGhlIHRvcCBsZWZ0IGNvcm5lciBvZiB0aGUgcmVjdGFuZ2xlLlxyXG4gIFx0XHQvLyBAcHJvcGVydHkgbWF4OiBQb2ludFxyXG4gIFx0XHQvLyBUaGUgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiB0aGUgcmVjdGFuZ2xlLlxyXG4gIFx0XHRpZiAoIXRoaXMubWluICYmICF0aGlzLm1heCkge1xyXG4gIFx0XHRcdHRoaXMubWluID0gbWluMi5jbG9uZSgpO1xyXG4gIFx0XHRcdHRoaXMubWF4ID0gbWF4Mi5jbG9uZSgpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMubWluLnggPSBNYXRoLm1pbihtaW4yLngsIHRoaXMubWluLngpO1xyXG4gIFx0XHRcdHRoaXMubWF4LnggPSBNYXRoLm1heChtYXgyLngsIHRoaXMubWF4LngpO1xyXG4gIFx0XHRcdHRoaXMubWluLnkgPSBNYXRoLm1pbihtaW4yLnksIHRoaXMubWluLnkpO1xyXG4gIFx0XHRcdHRoaXMubWF4LnkgPSBNYXRoLm1heChtYXgyLnksIHRoaXMubWF4LnkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldENlbnRlcihyb3VuZD86IEJvb2xlYW4pOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgY2VudGVyIHBvaW50IG9mIHRoZSBib3VuZHMuXHJcbiAgXHRnZXRDZW50ZXI6IGZ1bmN0aW9uIChyb3VuZCkge1xyXG4gIFx0XHRyZXR1cm4gdG9Qb2ludChcclxuICBcdFx0ICAgICAgICAodGhpcy5taW4ueCArIHRoaXMubWF4LngpIC8gMixcclxuICBcdFx0ICAgICAgICAodGhpcy5taW4ueSArIHRoaXMubWF4LnkpIC8gMiwgcm91bmQpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdHRvbUxlZnQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdHRvbS1sZWZ0IHBvaW50IG9mIHRoZSBib3VuZHMuXHJcbiAgXHRnZXRCb3R0b21MZWZ0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHRoaXMubWluLngsIHRoaXMubWF4LnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFRvcFJpZ2h0KCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB0b3AtcmlnaHQgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldFRvcFJpZ2h0OiBmdW5jdGlvbiAoKSB7IC8vIC0+IFBvaW50XHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHRoaXMubWF4LngsIHRoaXMubWluLnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFRvcExlZnQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHRvcC1sZWZ0IHBvaW50IG9mIHRoZSBib3VuZHMgKGkuZS4gW2B0aGlzLm1pbmBdKCNib3VuZHMtbWluKSkuXHJcbiAgXHRnZXRUb3BMZWZ0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm1pbjsgLy8gbGVmdCwgdG9wXHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Qm90dG9tUmlnaHQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdHRvbS1yaWdodCBwb2ludCBvZiB0aGUgYm91bmRzIChpLmUuIFtgdGhpcy5tYXhgXSgjYm91bmRzLW1heCkpLlxyXG4gIFx0Z2V0Qm90dG9tUmlnaHQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMubWF4OyAvLyByaWdodCwgYm90dG9tXHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0U2l6ZSgpOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgc2l6ZSBvZiB0aGUgZ2l2ZW4gYm91bmRzXHJcbiAgXHRnZXRTaXplOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm1heC5zdWJ0cmFjdCh0aGlzLm1pbik7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJCb3VuZHM6IEJvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgY29udGFpbnMgdGhlIGdpdmVuIG9uZS5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBjb250YWlucyhwb2ludDogUG9pbnQpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIGNvbnRhaW5zIHRoZSBnaXZlbiBwb2ludC5cclxuICBcdGNvbnRhaW5zOiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdHZhciBtaW4sIG1heDtcclxuXHJcbiAgXHRcdGlmICh0eXBlb2Ygb2JqWzBdID09PSAnbnVtYmVyJyB8fCBvYmogaW5zdGFuY2VvZiBQb2ludCkge1xyXG4gIFx0XHRcdG9iaiA9IHRvUG9pbnQob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0JvdW5kcyhvYmopO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAob2JqIGluc3RhbmNlb2YgQm91bmRzKSB7XHJcbiAgXHRcdFx0bWluID0gb2JqLm1pbjtcclxuICBcdFx0XHRtYXggPSBvYmoubWF4O1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG1pbiA9IG1heCA9IG9iajtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIChtaW4ueCA+PSB0aGlzLm1pbi54KSAmJlxyXG4gIFx0XHQgICAgICAgKG1heC54IDw9IHRoaXMubWF4LngpICYmXHJcbiAgXHRcdCAgICAgICAobWluLnkgPj0gdGhpcy5taW4ueSkgJiZcclxuICBcdFx0ICAgICAgIChtYXgueSA8PSB0aGlzLm1heC55KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpbnRlcnNlY3RzKG90aGVyQm91bmRzOiBCb3VuZHMpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIGludGVyc2VjdHMgdGhlIGdpdmVuIGJvdW5kcy4gVHdvIGJvdW5kc1xyXG4gIFx0Ly8gaW50ZXJzZWN0IGlmIHRoZXkgaGF2ZSBhdCBsZWFzdCBvbmUgcG9pbnQgaW4gY29tbW9uLlxyXG4gIFx0aW50ZXJzZWN0czogZnVuY3Rpb24gKGJvdW5kcykgeyAvLyAoQm91bmRzKSAtPiBCb29sZWFuXHJcbiAgXHRcdGJvdW5kcyA9IHRvQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHR2YXIgbWluID0gdGhpcy5taW4sXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLm1heCxcclxuICBcdFx0ICAgIG1pbjIgPSBib3VuZHMubWluLFxyXG4gIFx0XHQgICAgbWF4MiA9IGJvdW5kcy5tYXgsXHJcbiAgXHRcdCAgICB4SW50ZXJzZWN0cyA9IChtYXgyLnggPj0gbWluLngpICYmIChtaW4yLnggPD0gbWF4LngpLFxyXG4gIFx0XHQgICAgeUludGVyc2VjdHMgPSAobWF4Mi55ID49IG1pbi55KSAmJiAobWluMi55IDw9IG1heC55KTtcclxuXHJcbiAgXHRcdHJldHVybiB4SW50ZXJzZWN0cyAmJiB5SW50ZXJzZWN0cztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBvdmVybGFwcyhvdGhlckJvdW5kczogQm91bmRzKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBvdmVybGFwcyB0aGUgZ2l2ZW4gYm91bmRzLiBUd28gYm91bmRzXHJcbiAgXHQvLyBvdmVybGFwIGlmIHRoZWlyIGludGVyc2VjdGlvbiBpcyBhbiBhcmVhLlxyXG4gIFx0b3ZlcmxhcHM6IGZ1bmN0aW9uIChib3VuZHMpIHsgLy8gKEJvdW5kcykgLT4gQm9vbGVhblxyXG4gIFx0XHRib3VuZHMgPSB0b0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIG1pbiA9IHRoaXMubWluLFxyXG4gIFx0XHQgICAgbWF4ID0gdGhpcy5tYXgsXHJcbiAgXHRcdCAgICBtaW4yID0gYm91bmRzLm1pbixcclxuICBcdFx0ICAgIG1heDIgPSBib3VuZHMubWF4LFxyXG4gIFx0XHQgICAgeE92ZXJsYXBzID0gKG1heDIueCA+IG1pbi54KSAmJiAobWluMi54IDwgbWF4LngpLFxyXG4gIFx0XHQgICAgeU92ZXJsYXBzID0gKG1heDIueSA+IG1pbi55KSAmJiAobWluMi55IDwgbWF4LnkpO1xyXG5cclxuICBcdFx0cmV0dXJuIHhPdmVybGFwcyAmJiB5T3ZlcmxhcHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaXNWYWxpZCgpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgYm91bmRzIGFyZSBwcm9wZXJseSBpbml0aWFsaXplZC5cclxuICBcdGlzVmFsaWQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuICEhKHRoaXMubWluICYmIHRoaXMubWF4KTtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFkKGJ1ZmZlclJhdGlvOiBOdW1iZXIpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgYm91bmRzIGNyZWF0ZWQgYnkgZXh0ZW5kaW5nIG9yIHJldHJhY3RpbmcgdGhlIGN1cnJlbnQgYm91bmRzIGJ5IGEgZ2l2ZW4gcmF0aW8gaW4gZWFjaCBkaXJlY3Rpb24uXHJcbiAgXHQvLyBGb3IgZXhhbXBsZSwgYSByYXRpbyBvZiAwLjUgZXh0ZW5kcyB0aGUgYm91bmRzIGJ5IDUwJSBpbiBlYWNoIGRpcmVjdGlvbi5cclxuICBcdC8vIE5lZ2F0aXZlIHZhbHVlcyB3aWxsIHJldHJhY3QgdGhlIGJvdW5kcy5cclxuICBcdHBhZDogZnVuY3Rpb24gKGJ1ZmZlclJhdGlvKSB7XHJcbiAgXHRcdHZhciBtaW4gPSB0aGlzLm1pbixcclxuICBcdFx0bWF4ID0gdGhpcy5tYXgsXHJcbiAgXHRcdGhlaWdodEJ1ZmZlciA9IE1hdGguYWJzKG1pbi54IC0gbWF4LngpICogYnVmZmVyUmF0aW8sXHJcbiAgXHRcdHdpZHRoQnVmZmVyID0gTWF0aC5hYnMobWluLnkgLSBtYXgueSkgKiBidWZmZXJSYXRpbztcclxuXHJcblxyXG4gIFx0XHRyZXR1cm4gdG9Cb3VuZHMoXHJcbiAgXHRcdFx0dG9Qb2ludChtaW4ueCAtIGhlaWdodEJ1ZmZlciwgbWluLnkgLSB3aWR0aEJ1ZmZlciksXHJcbiAgXHRcdFx0dG9Qb2ludChtYXgueCArIGhlaWdodEJ1ZmZlciwgbWF4LnkgKyB3aWR0aEJ1ZmZlcikpO1xyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBlcXVhbHMob3RoZXJCb3VuZHM6IEJvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgaXMgZXF1aXZhbGVudCB0byB0aGUgZ2l2ZW4gYm91bmRzLlxyXG4gIFx0ZXF1YWxzOiBmdW5jdGlvbiAoYm91bmRzKSB7XHJcbiAgXHRcdGlmICghYm91bmRzKSB7IHJldHVybiBmYWxzZTsgfVxyXG5cclxuICBcdFx0Ym91bmRzID0gdG9Cb3VuZHMoYm91bmRzKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLm1pbi5lcXVhbHMoYm91bmRzLmdldFRvcExlZnQoKSkgJiZcclxuICBcdFx0XHR0aGlzLm1heC5lcXVhbHMoYm91bmRzLmdldEJvdHRvbVJpZ2h0KCkpO1xyXG4gIFx0fSxcclxuICB9O1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5ib3VuZHMoY29ybmVyMTogUG9pbnQsIGNvcm5lcjI6IFBvaW50KVxyXG4gIC8vIENyZWF0ZXMgYSBCb3VuZHMgb2JqZWN0IGZyb20gdHdvIGNvcm5lcnMgY29vcmRpbmF0ZSBwYWlycy5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLmJvdW5kcyhwb2ludHM6IFBvaW50W10pXHJcbiAgLy8gQ3JlYXRlcyBhIEJvdW5kcyBvYmplY3QgZnJvbSB0aGUgZ2l2ZW4gYXJyYXkgb2YgcG9pbnRzLlxyXG4gIGZ1bmN0aW9uIHRvQm91bmRzKGEsIGIpIHtcclxuICBcdGlmICghYSB8fCBhIGluc3RhbmNlb2YgQm91bmRzKSB7XHJcbiAgXHRcdHJldHVybiBhO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBCb3VuZHMoYSwgYik7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIExhdExuZ0JvdW5kc1xyXG4gICAqIEBha2EgTC5MYXRMbmdCb3VuZHNcclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYSByZWN0YW5ndWxhciBnZW9ncmFwaGljYWwgYXJlYSBvbiBhIG1hcC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBjb3JuZXIxID0gTC5sYXRMbmcoNDAuNzEyLCAtNzQuMjI3KSxcclxuICAgKiBjb3JuZXIyID0gTC5sYXRMbmcoNDAuNzc0LCAtNzQuMTI1KSxcclxuICAgKiBib3VuZHMgPSBMLmxhdExuZ0JvdW5kcyhjb3JuZXIxLCBjb3JuZXIyKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEFsbCBMZWFmbGV0IG1ldGhvZHMgdGhhdCBhY2NlcHQgTGF0TG5nQm91bmRzIG9iamVjdHMgYWxzbyBhY2NlcHQgdGhlbSBpbiBhIHNpbXBsZSBBcnJheSBmb3JtICh1bmxlc3Mgbm90ZWQgb3RoZXJ3aXNlKSwgc28gdGhlIGJvdW5kcyBleGFtcGxlIGFib3ZlIGNhbiBiZSBwYXNzZWQgbGlrZSB0aGlzOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBtYXAuZml0Qm91bmRzKFtcclxuICAgKiBcdFs0MC43MTIsIC03NC4yMjddLFxyXG4gICAqIFx0WzQwLjc3NCwgLTc0LjEyNV1cclxuICAgKiBdKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIENhdXRpb246IGlmIHRoZSBhcmVhIGNyb3NzZXMgdGhlIGFudGltZXJpZGlhbiAob2Z0ZW4gY29uZnVzZWQgd2l0aCB0aGUgSW50ZXJuYXRpb25hbCBEYXRlIExpbmUpLCB5b3UgbXVzdCBzcGVjaWZ5IGNvcm5lcnMgX291dHNpZGVfIHRoZSBbLTE4MCwgMTgwXSBkZWdyZWVzIGxvbmdpdHVkZSByYW5nZS5cclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgTGF0TG5nQm91bmRzYCBkb2VzIG5vdCBpbmhlcml0IGZyb20gTGVhZmxldCdzIGBDbGFzc2Agb2JqZWN0LFxyXG4gICAqIHdoaWNoIG1lYW5zIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSBpdCwgYW5kIG5ldyBtZXRob2RzXHJcbiAgICogY2FuJ3QgYmUgYWRkZWQgdG8gaXQgd2l0aCB0aGUgYGluY2x1ZGVgIGZ1bmN0aW9uLlxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBMYXRMbmdCb3VuZHMoY29ybmVyMSwgY29ybmVyMikgeyAvLyAoTGF0TG5nLCBMYXRMbmcpIG9yIChMYXRMbmdbXSlcclxuICBcdGlmICghY29ybmVyMSkgeyByZXR1cm47IH1cclxuXHJcbiAgXHR2YXIgbGF0bG5ncyA9IGNvcm5lcjIgPyBbY29ybmVyMSwgY29ybmVyMl0gOiBjb3JuZXIxO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXRsbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHRoaXMuZXh0ZW5kKGxhdGxuZ3NbaV0pO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgTGF0TG5nQm91bmRzLnByb3RvdHlwZSA9IHtcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGV4dGVuZChsYXRsbmc6IExhdExuZyk6IHRoaXNcclxuICBcdC8vIEV4dGVuZCB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIHBvaW50XHJcblxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIGV4dGVuZChvdGhlckJvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xyXG4gIFx0Ly8gRXh0ZW5kIHRoZSBib3VuZHMgdG8gY29udGFpbiB0aGUgZ2l2ZW4gYm91bmRzXHJcbiAgXHRleHRlbmQ6IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdFx0dmFyIHN3ID0gdGhpcy5fc291dGhXZXN0LFxyXG4gIFx0XHQgICAgbmUgPSB0aGlzLl9ub3J0aEVhc3QsXHJcbiAgXHRcdCAgICBzdzIsIG5lMjtcclxuXHJcbiAgXHRcdGlmIChvYmogaW5zdGFuY2VvZiBMYXRMbmcpIHtcclxuICBcdFx0XHRzdzIgPSBvYmo7XHJcbiAgXHRcdFx0bmUyID0gb2JqO1xyXG5cclxuICBcdFx0fSBlbHNlIGlmIChvYmogaW5zdGFuY2VvZiBMYXRMbmdCb3VuZHMpIHtcclxuICBcdFx0XHRzdzIgPSBvYmouX3NvdXRoV2VzdDtcclxuICBcdFx0XHRuZTIgPSBvYmouX25vcnRoRWFzdDtcclxuXHJcbiAgXHRcdFx0aWYgKCFzdzIgfHwgIW5lMikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRyZXR1cm4gb2JqID8gdGhpcy5leHRlbmQodG9MYXRMbmcob2JqKSB8fCB0b0xhdExuZ0JvdW5kcyhvYmopKSA6IHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghc3cgJiYgIW5lKSB7XHJcbiAgXHRcdFx0dGhpcy5fc291dGhXZXN0ID0gbmV3IExhdExuZyhzdzIubGF0LCBzdzIubG5nKTtcclxuICBcdFx0XHR0aGlzLl9ub3J0aEVhc3QgPSBuZXcgTGF0TG5nKG5lMi5sYXQsIG5lMi5sbmcpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHN3LmxhdCA9IE1hdGgubWluKHN3Mi5sYXQsIHN3LmxhdCk7XHJcbiAgXHRcdFx0c3cubG5nID0gTWF0aC5taW4oc3cyLmxuZywgc3cubG5nKTtcclxuICBcdFx0XHRuZS5sYXQgPSBNYXRoLm1heChuZTIubGF0LCBuZS5sYXQpO1xyXG4gIFx0XHRcdG5lLmxuZyA9IE1hdGgubWF4KG5lMi5sbmcsIG5lLmxuZyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBhZChidWZmZXJSYXRpbzogTnVtYmVyKTogTGF0TG5nQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIGJvdW5kcyBjcmVhdGVkIGJ5IGV4dGVuZGluZyBvciByZXRyYWN0aW5nIHRoZSBjdXJyZW50IGJvdW5kcyBieSBhIGdpdmVuIHJhdGlvIGluIGVhY2ggZGlyZWN0aW9uLlxyXG4gIFx0Ly8gRm9yIGV4YW1wbGUsIGEgcmF0aW8gb2YgMC41IGV4dGVuZHMgdGhlIGJvdW5kcyBieSA1MCUgaW4gZWFjaCBkaXJlY3Rpb24uXHJcbiAgXHQvLyBOZWdhdGl2ZSB2YWx1ZXMgd2lsbCByZXRyYWN0IHRoZSBib3VuZHMuXHJcbiAgXHRwYWQ6IGZ1bmN0aW9uIChidWZmZXJSYXRpbykge1xyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIGhlaWdodEJ1ZmZlciA9IE1hdGguYWJzKHN3LmxhdCAtIG5lLmxhdCkgKiBidWZmZXJSYXRpbyxcclxuICBcdFx0ICAgIHdpZHRoQnVmZmVyID0gTWF0aC5hYnMoc3cubG5nIC0gbmUubG5nKSAqIGJ1ZmZlclJhdGlvO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmdCb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgbmV3IExhdExuZyhzdy5sYXQgLSBoZWlnaHRCdWZmZXIsIHN3LmxuZyAtIHdpZHRoQnVmZmVyKSxcclxuICBcdFx0ICAgICAgICBuZXcgTGF0TG5nKG5lLmxhdCArIGhlaWdodEJ1ZmZlciwgbmUubG5nICsgd2lkdGhCdWZmZXIpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjZW50ZXIgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyhcclxuICBcdFx0ICAgICAgICAodGhpcy5fc291dGhXZXN0LmxhdCArIHRoaXMuX25vcnRoRWFzdC5sYXQpIC8gMixcclxuICBcdFx0ICAgICAgICAodGhpcy5fc291dGhXZXN0LmxuZyArIHRoaXMuX25vcnRoRWFzdC5sbmcpIC8gMik7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0U291dGhXZXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgc291dGgtd2VzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0U291dGhXZXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9zb3V0aFdlc3Q7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Tm9ydGhFYXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGgtZWFzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0Tm9ydGhFYXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9ub3J0aEVhc3Q7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Tm9ydGhXZXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGgtd2VzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0Tm9ydGhXZXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHRoaXMuZ2V0Tm9ydGgoKSwgdGhpcy5nZXRXZXN0KCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFNvdXRoRWFzdCgpOiBMYXRMbmdcclxuICBcdC8vIFJldHVybnMgdGhlIHNvdXRoLWVhc3QgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldFNvdXRoRWFzdDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyh0aGlzLmdldFNvdXRoKCksIHRoaXMuZ2V0RWFzdCgpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRXZXN0KCk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgd2VzdCBsb25naXR1ZGUgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Z2V0V2VzdDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc291dGhXZXN0LmxuZztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRTb3V0aCgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIHNvdXRoIGxhdGl0dWRlIG9mIHRoZSBib3VuZHNcclxuICBcdGdldFNvdXRoOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9zb3V0aFdlc3QubGF0O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEVhc3QoKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBlYXN0IGxvbmdpdHVkZSBvZiB0aGUgYm91bmRzXHJcbiAgXHRnZXRFYXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9ub3J0aEVhc3QubG5nO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldE5vcnRoKCk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGggbGF0aXR1ZGUgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Z2V0Tm9ydGg6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX25vcnRoRWFzdC5sYXQ7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJCb3VuZHM6IExhdExuZ0JvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgY29udGFpbnMgdGhlIGdpdmVuIG9uZS5cclxuXHJcbiAgXHQvLyBAYWx0ZXJuYXRpdmVcclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMgKGxhdGxuZzogTGF0TG5nKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBjb250YWlucyB0aGUgZ2l2ZW4gcG9pbnQuXHJcbiAgXHRjb250YWluczogZnVuY3Rpb24gKG9iaikgeyAvLyAoTGF0TG5nQm91bmRzKSBvciAoTGF0TG5nKSAtPiBCb29sZWFuXHJcbiAgXHRcdGlmICh0eXBlb2Ygb2JqWzBdID09PSAnbnVtYmVyJyB8fCBvYmogaW5zdGFuY2VvZiBMYXRMbmcgfHwgJ2xhdCcgaW4gb2JqKSB7XHJcbiAgXHRcdFx0b2JqID0gdG9MYXRMbmcob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0xhdExuZ0JvdW5kcyhvYmopO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIHN3MiwgbmUyO1xyXG5cclxuICBcdFx0aWYgKG9iaiBpbnN0YW5jZW9mIExhdExuZ0JvdW5kcykge1xyXG4gIFx0XHRcdHN3MiA9IG9iai5nZXRTb3V0aFdlc3QoKTtcclxuICBcdFx0XHRuZTIgPSBvYmouZ2V0Tm9ydGhFYXN0KCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0c3cyID0gbmUyID0gb2JqO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gKHN3Mi5sYXQgPj0gc3cubGF0KSAmJiAobmUyLmxhdCA8PSBuZS5sYXQpICYmXHJcbiAgXHRcdCAgICAgICAoc3cyLmxuZyA+PSBzdy5sbmcpICYmIChuZTIubG5nIDw9IG5lLmxuZyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaW50ZXJzZWN0cyhvdGhlckJvdW5kczogTGF0TG5nQm91bmRzKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBpbnRlcnNlY3RzIHRoZSBnaXZlbiBib3VuZHMuIFR3byBib3VuZHMgaW50ZXJzZWN0IGlmIHRoZXkgaGF2ZSBhdCBsZWFzdCBvbmUgcG9pbnQgaW4gY29tbW9uLlxyXG4gIFx0aW50ZXJzZWN0czogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHRib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIHN3ID0gdGhpcy5fc291dGhXZXN0LFxyXG4gIFx0XHQgICAgbmUgPSB0aGlzLl9ub3J0aEVhc3QsXHJcbiAgXHRcdCAgICBzdzIgPSBib3VuZHMuZ2V0U291dGhXZXN0KCksXHJcbiAgXHRcdCAgICBuZTIgPSBib3VuZHMuZ2V0Tm9ydGhFYXN0KCksXHJcblxyXG4gIFx0XHQgICAgbGF0SW50ZXJzZWN0cyA9IChuZTIubGF0ID49IHN3LmxhdCkgJiYgKHN3Mi5sYXQgPD0gbmUubGF0KSxcclxuICBcdFx0ICAgIGxuZ0ludGVyc2VjdHMgPSAobmUyLmxuZyA+PSBzdy5sbmcpICYmIChzdzIubG5nIDw9IG5lLmxuZyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbGF0SW50ZXJzZWN0cyAmJiBsbmdJbnRlcnNlY3RzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG92ZXJsYXBzKG90aGVyQm91bmRzOiBMYXRMbmdCb3VuZHMpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIG92ZXJsYXBzIHRoZSBnaXZlbiBib3VuZHMuIFR3byBib3VuZHMgb3ZlcmxhcCBpZiB0aGVpciBpbnRlcnNlY3Rpb24gaXMgYW4gYXJlYS5cclxuICBcdG92ZXJsYXBzOiBmdW5jdGlvbiAoYm91bmRzKSB7XHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIHN3MiA9IGJvdW5kcy5nZXRTb3V0aFdlc3QoKSxcclxuICBcdFx0ICAgIG5lMiA9IGJvdW5kcy5nZXROb3J0aEVhc3QoKSxcclxuXHJcbiAgXHRcdCAgICBsYXRPdmVybGFwcyA9IChuZTIubGF0ID4gc3cubGF0KSAmJiAoc3cyLmxhdCA8IG5lLmxhdCksXHJcbiAgXHRcdCAgICBsbmdPdmVybGFwcyA9IChuZTIubG5nID4gc3cubG5nKSAmJiAoc3cyLmxuZyA8IG5lLmxuZyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbGF0T3ZlcmxhcHMgJiYgbG5nT3ZlcmxhcHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9CQm94U3RyaW5nKCk6IFN0cmluZ1xyXG4gIFx0Ly8gUmV0dXJucyBhIHN0cmluZyB3aXRoIGJvdW5kaW5nIGJveCBjb29yZGluYXRlcyBpbiBhICdzb3V0aHdlc3RfbG5nLHNvdXRod2VzdF9sYXQsbm9ydGhlYXN0X2xuZyxub3J0aGVhc3RfbGF0JyBmb3JtYXQuIFVzZWZ1bCBmb3Igc2VuZGluZyByZXF1ZXN0cyB0byB3ZWIgc2VydmljZXMgdGhhdCByZXR1cm4gZ2VvIGRhdGEuXHJcbiAgXHR0b0JCb3hTdHJpbmc6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIFt0aGlzLmdldFdlc3QoKSwgdGhpcy5nZXRTb3V0aCgpLCB0aGlzLmdldEVhc3QoKSwgdGhpcy5nZXROb3J0aCgpXS5qb2luKCcsJyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXF1YWxzKG90aGVyQm91bmRzOiBMYXRMbmdCb3VuZHMsIG1heE1hcmdpbj86IE51bWJlcik6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgaXMgZXF1aXZhbGVudCAod2l0aGluIGEgc21hbGwgbWFyZ2luIG9mIGVycm9yKSB0byB0aGUgZ2l2ZW4gYm91bmRzLiBUaGUgbWFyZ2luIG9mIGVycm9yIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHNldHRpbmcgYG1heE1hcmdpbmAgdG8gYSBzbWFsbCBudW1iZXIuXHJcbiAgXHRlcXVhbHM6IGZ1bmN0aW9uIChib3VuZHMsIG1heE1hcmdpbikge1xyXG4gIFx0XHRpZiAoIWJvdW5kcykgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc291dGhXZXN0LmVxdWFscyhib3VuZHMuZ2V0U291dGhXZXN0KCksIG1heE1hcmdpbikgJiZcclxuICBcdFx0ICAgICAgIHRoaXMuX25vcnRoRWFzdC5lcXVhbHMoYm91bmRzLmdldE5vcnRoRWFzdCgpLCBtYXhNYXJnaW4pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGlzVmFsaWQoKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGJvdW5kcyBhcmUgcHJvcGVybHkgaW5pdGlhbGl6ZWQuXHJcbiAgXHRpc1ZhbGlkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiAhISh0aGlzLl9zb3V0aFdlc3QgJiYgdGhpcy5fbm9ydGhFYXN0KTtcclxuICBcdH1cclxuICB9O1xyXG5cclxuICAvLyBUT0RPIEludGVybmF0aW9uYWwgZGF0ZSBsaW5lP1xyXG5cclxuICAvLyBAZmFjdG9yeSBMLmxhdExuZ0JvdW5kcyhjb3JuZXIxOiBMYXRMbmcsIGNvcm5lcjI6IExhdExuZylcclxuICAvLyBDcmVhdGVzIGEgYExhdExuZ0JvdW5kc2Agb2JqZWN0IGJ5IGRlZmluaW5nIHR3byBkaWFnb25hbGx5IG9wcG9zaXRlIGNvcm5lcnMgb2YgdGhlIHJlY3RhbmdsZS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmdCb3VuZHMobGF0bG5nczogTGF0TG5nW10pXHJcbiAgLy8gQ3JlYXRlcyBhIGBMYXRMbmdCb3VuZHNgIG9iamVjdCBkZWZpbmVkIGJ5IHRoZSBnZW9ncmFwaGljYWwgcG9pbnRzIGl0IGNvbnRhaW5zLiBWZXJ5IHVzZWZ1bCBmb3Igem9vbWluZyB0aGUgbWFwIHRvIGZpdCBhIHBhcnRpY3VsYXIgc2V0IG9mIGxvY2F0aW9ucyB3aXRoIFtgZml0Qm91bmRzYF0oI21hcC1maXRib3VuZHMpLlxyXG4gIGZ1bmN0aW9uIHRvTGF0TG5nQm91bmRzKGEsIGIpIHtcclxuICBcdGlmIChhIGluc3RhbmNlb2YgTGF0TG5nQm91bmRzKSB7XHJcbiAgXHRcdHJldHVybiBhO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBMYXRMbmdCb3VuZHMoYSwgYik7XHJcbiAgfVxuXG4gIC8qIEBjbGFzcyBMYXRMbmdcclxuICAgKiBAYWthIEwuTGF0TG5nXHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgZ2VvZ3JhcGhpY2FsIHBvaW50IHdpdGggYSBjZXJ0YWluIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBgXHJcbiAgICogdmFyIGxhdGxuZyA9IEwubGF0TG5nKDUwLjUsIDMwLjUpO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICogQWxsIExlYWZsZXQgbWV0aG9kcyB0aGF0IGFjY2VwdCBMYXRMbmcgb2JqZWN0cyBhbHNvIGFjY2VwdCB0aGVtIGluIGEgc2ltcGxlIEFycmF5IGZvcm0gYW5kIHNpbXBsZSBvYmplY3QgZm9ybSAodW5sZXNzIG5vdGVkIG90aGVyd2lzZSksIHNvIHRoZXNlIGxpbmVzIGFyZSBlcXVpdmFsZW50OlxyXG4gICAqXHJcbiAgICogYGBgXHJcbiAgICogbWFwLnBhblRvKFs1MCwgMzBdKTtcclxuICAgKiBtYXAucGFuVG8oe2xvbjogMzAsIGxhdDogNTB9KTtcclxuICAgKiBtYXAucGFuVG8oe2xhdDogNTAsIGxuZzogMzB9KTtcclxuICAgKiBtYXAucGFuVG8oTC5sYXRMbmcoNTAsIDMwKSk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBOb3RlIHRoYXQgYExhdExuZ2AgZG9lcyBub3QgaW5oZXJpdCBmcm9tIExlYWZsZXQncyBgQ2xhc3NgIG9iamVjdCxcclxuICAgKiB3aGljaCBtZWFucyBuZXcgY2xhc3NlcyBjYW4ndCBpbmhlcml0IGZyb20gaXQsIGFuZCBuZXcgbWV0aG9kc1xyXG4gICAqIGNhbid0IGJlIGFkZGVkIHRvIGl0IHdpdGggdGhlIGBpbmNsdWRlYCBmdW5jdGlvbi5cclxuICAgKi9cclxuXHJcbiAgZnVuY3Rpb24gTGF0TG5nKGxhdCwgbG5nLCBhbHQpIHtcclxuICBcdGlmIChpc05hTihsYXQpIHx8IGlzTmFOKGxuZykpIHtcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIExhdExuZyBvYmplY3Q6ICgnICsgbGF0ICsgJywgJyArIGxuZyArICcpJyk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGxhdDogTnVtYmVyXHJcbiAgXHQvLyBMYXRpdHVkZSBpbiBkZWdyZWVzXHJcbiAgXHR0aGlzLmxhdCA9ICtsYXQ7XHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGxuZzogTnVtYmVyXHJcbiAgXHQvLyBMb25naXR1ZGUgaW4gZGVncmVlc1xyXG4gIFx0dGhpcy5sbmcgPSArbG5nO1xyXG5cclxuICBcdC8vIEBwcm9wZXJ0eSBhbHQ6IE51bWJlclxyXG4gIFx0Ly8gQWx0aXR1ZGUgaW4gbWV0ZXJzIChvcHRpb25hbClcclxuICBcdGlmIChhbHQgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHR0aGlzLmFsdCA9ICthbHQ7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBMYXRMbmcucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCBlcXVhbHMob3RoZXJMYXRMbmc6IExhdExuZywgbWF4TWFyZ2luPzogTnVtYmVyKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIGBMYXRMbmdgIHBvaW50IGlzIGF0IHRoZSBzYW1lIHBvc2l0aW9uICh3aXRoaW4gYSBzbWFsbCBtYXJnaW4gb2YgZXJyb3IpLiBUaGUgbWFyZ2luIG9mIGVycm9yIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHNldHRpbmcgYG1heE1hcmdpbmAgdG8gYSBzbWFsbCBudW1iZXIuXHJcbiAgXHRlcXVhbHM6IGZ1bmN0aW9uIChvYmosIG1heE1hcmdpbikge1xyXG4gIFx0XHRpZiAoIW9iaikgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdG9iaiA9IHRvTGF0TG5nKG9iaik7XHJcblxyXG4gIFx0XHR2YXIgbWFyZ2luID0gTWF0aC5tYXgoXHJcbiAgXHRcdCAgICAgICAgTWF0aC5hYnModGhpcy5sYXQgLSBvYmoubGF0KSxcclxuICBcdFx0ICAgICAgICBNYXRoLmFicyh0aGlzLmxuZyAtIG9iai5sbmcpKTtcclxuXHJcbiAgXHRcdHJldHVybiBtYXJnaW4gPD0gKG1heE1hcmdpbiA9PT0gdW5kZWZpbmVkID8gMS4wRS05IDogbWF4TWFyZ2luKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b1N0cmluZygpOiBTdHJpbmdcclxuICBcdC8vIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBvaW50IChmb3IgZGVidWdnaW5nIHB1cnBvc2VzKS5cclxuICBcdHRvU3RyaW5nOiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHJldHVybiAnTGF0TG5nKCcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLmxhdCwgcHJlY2lzaW9uKSArICcsICcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLmxuZywgcHJlY2lzaW9uKSArICcpJztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXN0YW5jZVRvKG90aGVyTGF0TG5nOiBMYXRMbmcpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGRpc3RhbmNlIChpbiBtZXRlcnMpIHRvIHRoZSBnaXZlbiBgTGF0TG5nYCBjYWxjdWxhdGVkIHVzaW5nIHRoZSBbU3BoZXJpY2FsIExhdyBvZiBDb3NpbmVzXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TcGhlcmljYWxfbGF3X29mX2Nvc2luZXMpLlxyXG4gIFx0ZGlzdGFuY2VUbzogZnVuY3Rpb24gKG90aGVyKSB7XHJcbiAgXHRcdHJldHVybiBFYXJ0aC5kaXN0YW5jZSh0aGlzLCB0b0xhdExuZyhvdGhlcikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHdyYXAoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIGEgbmV3IGBMYXRMbmdgIG9iamVjdCB3aXRoIHRoZSBsb25naXR1ZGUgd3JhcHBlZCBzbyBpdCdzIGFsd2F5cyBiZXR3ZWVuIC0xODAgYW5kICsxODAgZGVncmVlcy5cclxuICBcdHdyYXA6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIEVhcnRoLndyYXBMYXRMbmcodGhpcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9Cb3VuZHMoc2l6ZUluTWV0ZXJzOiBOdW1iZXIpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIFJldHVybnMgYSBuZXcgYExhdExuZ0JvdW5kc2Agb2JqZWN0IGluIHdoaWNoIGVhY2ggYm91bmRhcnkgaXMgYHNpemVJbk1ldGVycy8yYCBtZXRlcnMgYXBhcnQgZnJvbSB0aGUgYExhdExuZ2AuXHJcbiAgXHR0b0JvdW5kczogZnVuY3Rpb24gKHNpemVJbk1ldGVycykge1xyXG4gIFx0XHR2YXIgbGF0QWNjdXJhY3kgPSAxODAgKiBzaXplSW5NZXRlcnMgLyA0MDA3NTAxNyxcclxuICBcdFx0ICAgIGxuZ0FjY3VyYWN5ID0gbGF0QWNjdXJhY3kgLyBNYXRoLmNvcygoTWF0aC5QSSAvIDE4MCkgKiB0aGlzLmxhdCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdG9MYXRMbmdCb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgW3RoaXMubGF0IC0gbGF0QWNjdXJhY3ksIHRoaXMubG5nIC0gbG5nQWNjdXJhY3ldLFxyXG4gIFx0XHQgICAgICAgIFt0aGlzLmxhdCArIGxhdEFjY3VyYWN5LCB0aGlzLmxuZyArIGxuZ0FjY3VyYWN5XSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdGNsb25lOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHRoaXMubGF0LCB0aGlzLmxuZywgdGhpcy5hbHQpO1xyXG4gIFx0fVxyXG4gIH07XHJcblxyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmcobGF0aXR1ZGU6IE51bWJlciwgbG9uZ2l0dWRlOiBOdW1iZXIsIGFsdGl0dWRlPzogTnVtYmVyKTogTGF0TG5nXHJcbiAgLy8gQ3JlYXRlcyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIGEgZ2VvZ3JhcGhpY2FsIHBvaW50IHdpdGggdGhlIGdpdmVuIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgKGFuZCBvcHRpb25hbGx5IGFsdGl0dWRlKS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmcoY29vcmRzOiBBcnJheSk6IExhdExuZ1xyXG4gIC8vIEV4cGVjdHMgYW4gYXJyYXkgb2YgdGhlIGZvcm0gYFtOdW1iZXIsIE51bWJlcl1gIG9yIGBbTnVtYmVyLCBOdW1iZXIsIE51bWJlcl1gIGluc3RlYWQuXHJcblxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwubGF0TG5nKGNvb3JkczogT2JqZWN0KTogTGF0TG5nXHJcbiAgLy8gRXhwZWN0cyBhbiBwbGFpbiBvYmplY3Qgb2YgdGhlIGZvcm0gYHtsYXQ6IE51bWJlciwgbG5nOiBOdW1iZXJ9YCBvciBge2xhdDogTnVtYmVyLCBsbmc6IE51bWJlciwgYWx0OiBOdW1iZXJ9YCBpbnN0ZWFkLlxyXG5cclxuICBmdW5jdGlvbiB0b0xhdExuZyhhLCBiLCBjKSB7XHJcbiAgXHRpZiAoYSBpbnN0YW5jZW9mIExhdExuZykge1xyXG4gIFx0XHRyZXR1cm4gYTtcclxuICBcdH1cclxuICBcdGlmIChpc0FycmF5KGEpICYmIHR5cGVvZiBhWzBdICE9PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRpZiAoYS5sZW5ndGggPT09IDMpIHtcclxuICBcdFx0XHRyZXR1cm4gbmV3IExhdExuZyhhWzBdLCBhWzFdLCBhWzJdKTtcclxuICBcdFx0fVxyXG4gIFx0XHRpZiAoYS5sZW5ndGggPT09IDIpIHtcclxuICBcdFx0XHRyZXR1cm4gbmV3IExhdExuZyhhWzBdLCBhWzFdKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gbnVsbDtcclxuICBcdH1cclxuICBcdGlmIChhID09PSB1bmRlZmluZWQgfHwgYSA9PT0gbnVsbCkge1xyXG4gIFx0XHRyZXR1cm4gYTtcclxuICBcdH1cclxuICBcdGlmICh0eXBlb2YgYSA9PT0gJ29iamVjdCcgJiYgJ2xhdCcgaW4gYSkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyhhLmxhdCwgJ2xuZycgaW4gYSA/IGEubG5nIDogYS5sb24sIGEuYWx0KTtcclxuICBcdH1cclxuICBcdGlmIChiID09PSB1bmRlZmluZWQpIHtcclxuICBcdFx0cmV0dXJuIG51bGw7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gbmV3IExhdExuZyhhLCBiLCBjKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuQmFzZVxyXG4gICAqIE9iamVjdCB0aGF0IGRlZmluZXMgY29vcmRpbmF0ZSByZWZlcmVuY2Ugc3lzdGVtcyBmb3IgcHJvamVjdGluZ1xyXG4gICAqIGdlb2dyYXBoaWNhbCBwb2ludHMgaW50byBwaXhlbCAoc2NyZWVuKSBjb29yZGluYXRlcyBhbmQgYmFjayAoYW5kIHRvXHJcbiAgICogY29vcmRpbmF0ZXMgaW4gb3RoZXIgdW5pdHMgZm9yIFtXTVNdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1dlYl9NYXBfU2VydmljZSkgc2VydmljZXMpLiBTZWVcclxuICAgKiBbc3BhdGlhbCByZWZlcmVuY2Ugc3lzdGVtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TcGF0aWFsX3JlZmVyZW5jZV9zeXN0ZW0pLlxyXG4gICAqXHJcbiAgICogTGVhZmxldCBkZWZpbmVzIHRoZSBtb3N0IHVzdWFsIENSU3MgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gdXNlIGFcclxuICAgKiBDUlMgbm90IGRlZmluZWQgYnkgZGVmYXVsdCwgdGFrZSBhIGxvb2sgYXQgdGhlXHJcbiAgICogW1Byb2o0TGVhZmxldF0oaHR0cHM6Ly9naXRodWIuY29tL2thcnRlbmEvUHJvajRMZWFmbGV0KSBwbHVnaW4uXHJcbiAgICpcclxuICAgKiBOb3RlIHRoYXQgdGhlIENSUyBpbnN0YW5jZXMgZG8gbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXHJcbiAgICogYW5kIGNhbid0IGJlIGluc3RhbnRpYXRlZC4gQWxzbywgbmV3IGNsYXNzZXMgY2FuJ3QgaW5oZXJpdCBmcm9tIHRoZW0sXHJcbiAgICogYW5kIG1ldGhvZHMgY2FuJ3QgYmUgYWRkZWQgdG8gdGhlbSB3aXRoIHRoZSBgaW5jbHVkZWAgZnVuY3Rpb24uXHJcbiAgICovXHJcblxyXG4gIHZhciBDUlMgPSB7XHJcbiAgXHQvLyBAbWV0aG9kIGxhdExuZ1RvUG9pbnQobGF0bG5nOiBMYXRMbmcsIHpvb206IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBQcm9qZWN0cyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMgaW50byBwaXhlbCBjb29yZGluYXRlcyBmb3IgYSBnaXZlbiB6b29tLlxyXG4gIFx0bGF0TG5nVG9Qb2ludDogZnVuY3Rpb24gKGxhdGxuZywgem9vbSkge1xyXG4gIFx0XHR2YXIgcHJvamVjdGVkUG9pbnQgPSB0aGlzLnByb2plY3Rpb24ucHJvamVjdChsYXRsbmcpLFxyXG4gIFx0XHQgICAgc2NhbGUgPSB0aGlzLnNjYWxlKHpvb20pO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMudHJhbnNmb3JtYXRpb24uX3RyYW5zZm9ybShwcm9qZWN0ZWRQb2ludCwgc2NhbGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBvaW50VG9MYXRMbmcocG9pbnQ6IFBvaW50LCB6b29tOiBOdW1iZXIpOiBMYXRMbmdcclxuICBcdC8vIFRoZSBpbnZlcnNlIG9mIGBsYXRMbmdUb1BvaW50YC4gUHJvamVjdHMgcGl4ZWwgY29vcmRpbmF0ZXMgb24gYSBnaXZlblxyXG4gIFx0Ly8gem9vbSBpbnRvIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcy5cclxuICBcdHBvaW50VG9MYXRMbmc6IGZ1bmN0aW9uIChwb2ludCwgem9vbSkge1xyXG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLnNjYWxlKHpvb20pLFxyXG4gIFx0XHQgICAgdW50cmFuc2Zvcm1lZFBvaW50ID0gdGhpcy50cmFuc2Zvcm1hdGlvbi51bnRyYW5zZm9ybShwb2ludCwgc2NhbGUpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMucHJvamVjdGlvbi51bnByb2plY3QodW50cmFuc2Zvcm1lZFBvaW50KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBwcm9qZWN0KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIFByb2plY3RzIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcyBpbnRvIGNvb3JkaW5hdGVzIGluIHVuaXRzIGFjY2VwdGVkIGZvclxyXG4gIFx0Ly8gdGhpcyBDUlMgKGUuZy4gbWV0ZXJzIGZvciBFUFNHOjM4NTcsIGZvciBwYXNzaW5nIGl0IHRvIFdNUyBzZXJ2aWNlcykuXHJcbiAgXHRwcm9qZWN0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLnByb2plY3Rpb24ucHJvamVjdChsYXRsbmcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVucHJvamVjdChwb2ludDogUG9pbnQpOiBMYXRMbmdcclxuICBcdC8vIEdpdmVuIGEgcHJvamVjdGVkIGNvb3JkaW5hdGUgcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBMYXRMbmcuXHJcbiAgXHQvLyBUaGUgaW52ZXJzZSBvZiBgcHJvamVjdGAuXHJcbiAgXHR1bnByb2plY3Q6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5wcm9qZWN0aW9uLnVucHJvamVjdChwb2ludCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2NhbGUoem9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBzY2FsZSB1c2VkIHdoZW4gdHJhbnNmb3JtaW5nIHByb2plY3RlZCBjb29yZGluYXRlcyBpbnRvXHJcbiAgXHQvLyBwaXhlbCBjb29yZGluYXRlcyBmb3IgYSBwYXJ0aWN1bGFyIHpvb20uIEZvciBleGFtcGxlLCBpdCByZXR1cm5zXHJcbiAgXHQvLyBgMjU2ICogMl56b29tYCBmb3IgTWVyY2F0b3ItYmFzZWQgQ1JTLlxyXG4gIFx0c2NhbGU6IGZ1bmN0aW9uICh6b29tKSB7XHJcbiAgXHRcdHJldHVybiAyNTYgKiBNYXRoLnBvdygyLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB6b29tKHNjYWxlOiBOdW1iZXIpOiBOdW1iZXJcclxuICBcdC8vIEludmVyc2Ugb2YgYHNjYWxlKClgLCByZXR1cm5zIHRoZSB6b29tIGxldmVsIGNvcnJlc3BvbmRpbmcgdG8gYSBzY2FsZVxyXG4gIFx0Ly8gZmFjdG9yIG9mIGBzY2FsZWAuXHJcbiAgXHR6b29tOiBmdW5jdGlvbiAoc2NhbGUpIHtcclxuICBcdFx0cmV0dXJuIE1hdGgubG9nKHNjYWxlIC8gMjU2KSAvIE1hdGguTE4yO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFByb2plY3RlZEJvdW5kcyh6b29tOiBOdW1iZXIpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIHByb2plY3Rpb24ncyBib3VuZHMgc2NhbGVkIGFuZCB0cmFuc2Zvcm1lZCBmb3IgdGhlIHByb3ZpZGVkIGB6b29tYC5cclxuICBcdGdldFByb2plY3RlZEJvdW5kczogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0aWYgKHRoaXMuaW5maW5pdGUpIHsgcmV0dXJuIG51bGw7IH1cclxuXHJcbiAgXHRcdHZhciBiID0gdGhpcy5wcm9qZWN0aW9uLmJvdW5kcyxcclxuICBcdFx0ICAgIHMgPSB0aGlzLnNjYWxlKHpvb20pLFxyXG4gIFx0XHQgICAgbWluID0gdGhpcy50cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0oYi5taW4sIHMpLFxyXG4gIFx0XHQgICAgbWF4ID0gdGhpcy50cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0oYi5tYXgsIHMpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMobWluLCBtYXgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGRpc3RhbmNlKGxhdGxuZzE6IExhdExuZywgbGF0bG5nMjogTGF0TG5nKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIHR3byBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMuXHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGNvZGU6IFN0cmluZ1xyXG4gIFx0Ly8gU3RhbmRhcmQgY29kZSBuYW1lIG9mIHRoZSBDUlMgcGFzc2VkIGludG8gV01TIHNlcnZpY2VzIChlLmcuIGAnRVBTRzozODU3J2ApXHJcbiAgXHQvL1xyXG4gIFx0Ly8gQHByb3BlcnR5IHdyYXBMbmc6IE51bWJlcltdXHJcbiAgXHQvLyBBbiBhcnJheSBvZiB0d28gbnVtYmVycyBkZWZpbmluZyB3aGV0aGVyIHRoZSBsb25naXR1ZGUgKGhvcml6b250YWwpIGNvb3JkaW5hdGVcclxuICBcdC8vIGF4aXMgd3JhcHMgYXJvdW5kIGEgZ2l2ZW4gcmFuZ2UgYW5kIGhvdy4gRGVmYXVsdHMgdG8gYFstMTgwLCAxODBdYCBpbiBtb3N0XHJcbiAgXHQvLyBnZW9ncmFwaGljYWwgQ1JTcy4gSWYgYHVuZGVmaW5lZGAsIHRoZSBsb25naXR1ZGUgYXhpcyBkb2VzIG5vdCB3cmFwIGFyb3VuZC5cclxuICBcdC8vXHJcbiAgXHQvLyBAcHJvcGVydHkgd3JhcExhdDogTnVtYmVyW11cclxuICBcdC8vIExpa2UgYHdyYXBMbmdgLCBidXQgZm9yIHRoZSBsYXRpdHVkZSAodmVydGljYWwpIGF4aXMuXHJcblxyXG4gIFx0Ly8gd3JhcExuZzogW21pbiwgbWF4XSxcclxuICBcdC8vIHdyYXBMYXQ6IFttaW4sIG1heF0sXHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGluZmluaXRlOiBCb29sZWFuXHJcbiAgXHQvLyBJZiB0cnVlLCB0aGUgY29vcmRpbmF0ZSBzcGFjZSB3aWxsIGJlIHVuYm91bmRlZCAoaW5maW5pdGUgaW4gYm90aCBheGVzKVxyXG4gIFx0aW5maW5pdGU6IGZhbHNlLFxyXG5cclxuICBcdC8vIEBtZXRob2Qgd3JhcExhdExuZyhsYXRsbmc6IExhdExuZyk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyBhIGBMYXRMbmdgIHdoZXJlIGxhdCBhbmQgbG5nIGhhcyBiZWVuIHdyYXBwZWQgYWNjb3JkaW5nIHRvIHRoZVxyXG4gIFx0Ly8gQ1JTJ3MgYHdyYXBMYXRgIGFuZCBgd3JhcExuZ2AgcHJvcGVydGllcywgaWYgdGhleSBhcmUgb3V0c2lkZSB0aGUgQ1JTJ3MgYm91bmRzLlxyXG4gIFx0d3JhcExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgbG5nID0gdGhpcy53cmFwTG5nID8gd3JhcE51bShsYXRsbmcubG5nLCB0aGlzLndyYXBMbmcsIHRydWUpIDogbGF0bG5nLmxuZyxcclxuICBcdFx0ICAgIGxhdCA9IHRoaXMud3JhcExhdCA/IHdyYXBOdW0obGF0bG5nLmxhdCwgdGhpcy53cmFwTGF0LCB0cnVlKSA6IGxhdGxuZy5sYXQsXHJcbiAgXHRcdCAgICBhbHQgPSBsYXRsbmcuYWx0O1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcobGF0LCBsbmcsIGFsdCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgd3JhcExhdExuZ0JvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcyk6IExhdExuZ0JvdW5kc1xyXG4gIFx0Ly8gUmV0dXJucyBhIGBMYXRMbmdCb3VuZHNgIHdpdGggdGhlIHNhbWUgc2l6ZSBhcyB0aGUgZ2l2ZW4gb25lLCBlbnN1cmluZ1xyXG4gIFx0Ly8gdGhhdCBpdHMgY2VudGVyIGlzIHdpdGhpbiB0aGUgQ1JTJ3MgYm91bmRzLlxyXG4gIFx0Ly8gT25seSBhY2NlcHRzIGFjdHVhbCBgTC5MYXRMbmdCb3VuZHNgIGluc3RhbmNlcywgbm90IGFycmF5cy5cclxuICBcdHdyYXBMYXRMbmdCb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMpIHtcclxuICBcdFx0dmFyIGNlbnRlciA9IGJvdW5kcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIG5ld0NlbnRlciA9IHRoaXMud3JhcExhdExuZyhjZW50ZXIpLFxyXG4gIFx0XHQgICAgbGF0U2hpZnQgPSBjZW50ZXIubGF0IC0gbmV3Q2VudGVyLmxhdCxcclxuICBcdFx0ICAgIGxuZ1NoaWZ0ID0gY2VudGVyLmxuZyAtIG5ld0NlbnRlci5sbmc7XHJcblxyXG4gIFx0XHRpZiAobGF0U2hpZnQgPT09IDAgJiYgbG5nU2hpZnQgPT09IDApIHtcclxuICBcdFx0XHRyZXR1cm4gYm91bmRzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc3cgPSBib3VuZHMuZ2V0U291dGhXZXN0KCksXHJcbiAgXHRcdCAgICBuZSA9IGJvdW5kcy5nZXROb3J0aEVhc3QoKSxcclxuICBcdFx0ICAgIG5ld1N3ID0gbmV3IExhdExuZyhzdy5sYXQgLSBsYXRTaGlmdCwgc3cubG5nIC0gbG5nU2hpZnQpLFxyXG4gIFx0XHQgICAgbmV3TmUgPSBuZXcgTGF0TG5nKG5lLmxhdCAtIGxhdFNoaWZ0LCBuZS5sbmcgLSBsbmdTaGlmdCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZ0JvdW5kcyhuZXdTdywgbmV3TmUpO1xyXG4gIFx0fVxyXG4gIH07XG5cbiAgLypcbiAgICogQG5hbWVzcGFjZSBDUlNcbiAgICogQGNycyBMLkNSUy5FYXJ0aFxuICAgKlxuICAgKiBTZXJ2ZXMgYXMgdGhlIGJhc2UgZm9yIENSUyB0aGF0IGFyZSBnbG9iYWwgc3VjaCB0aGF0IHRoZXkgY292ZXIgdGhlIGVhcnRoLlxuICAgKiBDYW4gb25seSBiZSB1c2VkIGFzIHRoZSBiYXNlIGZvciBvdGhlciBDUlMgYW5kIGNhbm5vdCBiZSB1c2VkIGRpcmVjdGx5LFxuICAgKiBzaW5jZSBpdCBkb2VzIG5vdCBoYXZlIGEgYGNvZGVgLCBgcHJvamVjdGlvbmAgb3IgYHRyYW5zZm9ybWF0aW9uYC4gYGRpc3RhbmNlKClgIHJldHVybnNcbiAgICogbWV0ZXJzLlxuICAgKi9cblxuICB2YXIgRWFydGggPSBleHRlbmQoe30sIENSUywge1xuICBcdHdyYXBMbmc6IFstMTgwLCAxODBdLFxuXG4gIFx0Ly8gTWVhbiBFYXJ0aCBSYWRpdXMsIGFzIHJlY29tbWVuZGVkIGZvciB1c2UgYnlcbiAgXHQvLyB0aGUgSW50ZXJuYXRpb25hbCBVbmlvbiBvZiBHZW9kZXN5IGFuZCBHZW9waHlzaWNzLFxuICBcdC8vIHNlZSBodHRwczovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0hhdmVyc2luZV9mb3JtdWxhXG4gIFx0UjogNjM3MTAwMCxcblxuICBcdC8vIGRpc3RhbmNlIGJldHdlZW4gdHdvIGdlb2dyYXBoaWNhbCBwb2ludHMgdXNpbmcgc3BoZXJpY2FsIGxhdyBvZiBjb3NpbmVzIGFwcHJveGltYXRpb25cbiAgXHRkaXN0YW5jZTogZnVuY3Rpb24gKGxhdGxuZzEsIGxhdGxuZzIpIHtcbiAgXHRcdHZhciByYWQgPSBNYXRoLlBJIC8gMTgwLFxuICBcdFx0ICAgIGxhdDEgPSBsYXRsbmcxLmxhdCAqIHJhZCxcbiAgXHRcdCAgICBsYXQyID0gbGF0bG5nMi5sYXQgKiByYWQsXG4gIFx0XHQgICAgc2luRExhdCA9IE1hdGguc2luKChsYXRsbmcyLmxhdCAtIGxhdGxuZzEubGF0KSAqIHJhZCAvIDIpLFxuICBcdFx0ICAgIHNpbkRMb24gPSBNYXRoLnNpbigobGF0bG5nMi5sbmcgLSBsYXRsbmcxLmxuZykgKiByYWQgLyAyKSxcbiAgXHRcdCAgICBhID0gc2luRExhdCAqIHNpbkRMYXQgKyBNYXRoLmNvcyhsYXQxKSAqIE1hdGguY29zKGxhdDIpICogc2luRExvbiAqIHNpbkRMb24sXG4gIFx0XHQgICAgYyA9IDIgKiBNYXRoLmF0YW4yKE1hdGguc3FydChhKSwgTWF0aC5zcXJ0KDEgLSBhKSk7XG4gIFx0XHRyZXR1cm4gdGhpcy5SICogYztcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXHJcbiAgICogQG5hbWVzcGFjZSBQcm9qZWN0aW9uXHJcbiAgICogQHByb2plY3Rpb24gTC5Qcm9qZWN0aW9uLlNwaGVyaWNhbE1lcmNhdG9yXHJcbiAgICpcclxuICAgKiBTcGhlcmljYWwgTWVyY2F0b3IgcHJvamVjdGlvbiDigJQgdGhlIG1vc3QgY29tbW9uIHByb2plY3Rpb24gZm9yIG9ubGluZSBtYXBzLFxyXG4gICAqIHVzZWQgYnkgYWxtb3N0IGFsbCBmcmVlIGFuZCBjb21tZXJjaWFsIHRpbGUgcHJvdmlkZXJzLiBBc3N1bWVzIHRoYXQgRWFydGggaXNcclxuICAgKiBhIHNwaGVyZS4gVXNlZCBieSB0aGUgYEVQU0c6Mzg1N2AgQ1JTLlxyXG4gICAqL1xyXG5cclxuICB2YXIgZWFydGhSYWRpdXMgPSA2Mzc4MTM3O1xyXG5cclxuICB2YXIgU3BoZXJpY2FsTWVyY2F0b3IgPSB7XHJcblxyXG4gIFx0UjogZWFydGhSYWRpdXMsXHJcbiAgXHRNQVhfTEFUSVRVREU6IDg1LjA1MTEyODc3OTgsXHJcblxyXG4gIFx0cHJvamVjdDogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgZCA9IE1hdGguUEkgLyAxODAsXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLk1BWF9MQVRJVFVERSxcclxuICBcdFx0ICAgIGxhdCA9IE1hdGgubWF4KE1hdGgubWluKG1heCwgbGF0bG5nLmxhdCksIC1tYXgpLFxyXG4gIFx0XHQgICAgc2luID0gTWF0aC5zaW4obGF0ICogZCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KFxyXG4gIFx0XHRcdHRoaXMuUiAqIGxhdGxuZy5sbmcgKiBkLFxyXG4gIFx0XHRcdHRoaXMuUiAqIE1hdGgubG9nKCgxICsgc2luKSAvICgxIC0gc2luKSkgLyAyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dmFyIGQgPSAxODAgLyBNYXRoLlBJO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcoXHJcbiAgXHRcdFx0KDIgKiBNYXRoLmF0YW4oTWF0aC5leHAocG9pbnQueSAvIHRoaXMuUikpIC0gKE1hdGguUEkgLyAyKSkgKiBkLFxyXG4gIFx0XHRcdHBvaW50LnggKiBkIC8gdGhpcy5SKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ym91bmRzOiAoZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgZCA9IGVhcnRoUmFkaXVzICogTWF0aC5QSTtcclxuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMoWy1kLCAtZF0sIFtkLCBkXSk7XHJcbiAgXHR9KSgpXHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBUcmFuc2Zvcm1hdGlvblxyXG4gICAqIEBha2EgTC5UcmFuc2Zvcm1hdGlvblxyXG4gICAqXHJcbiAgICogUmVwcmVzZW50cyBhbiBhZmZpbmUgdHJhbnNmb3JtYXRpb246IGEgc2V0IG9mIGNvZWZmaWNpZW50cyBgYWAsIGBiYCwgYGNgLCBgZGBcclxuICAgKiBmb3IgdHJhbnNmb3JtaW5nIGEgcG9pbnQgb2YgYSBmb3JtIGAoeCwgeSlgIGludG8gYChhKnggKyBiLCBjKnkgKyBkKWAgYW5kIGRvaW5nXHJcbiAgICogdGhlIHJldmVyc2UuIFVzZWQgYnkgTGVhZmxldCBpbiBpdHMgcHJvamVjdGlvbnMgY29kZS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciB0cmFuc2Zvcm1hdGlvbiA9IEwudHJhbnNmb3JtYXRpb24oMiwgNSwgLTEsIDEwKSxcclxuICAgKiBcdHAgPSBMLnBvaW50KDEsIDIpLFxyXG4gICAqIFx0cDIgPSB0cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0ocCksIC8vICBMLnBvaW50KDcsIDgpXHJcbiAgICogXHRwMyA9IHRyYW5zZm9ybWF0aW9uLnVudHJhbnNmb3JtKHAyKTsgLy8gIEwucG9pbnQoMSwgMilcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIC8vIGZhY3RvcnkgbmV3IEwuVHJhbnNmb3JtYXRpb24oYTogTnVtYmVyLCBiOiBOdW1iZXIsIGM6IE51bWJlciwgZDogTnVtYmVyKVxyXG4gIC8vIENyZWF0ZXMgYSBgVHJhbnNmb3JtYXRpb25gIG9iamVjdCB3aXRoIHRoZSBnaXZlbiBjb2VmZmljaWVudHMuXHJcbiAgZnVuY3Rpb24gVHJhbnNmb3JtYXRpb24oYSwgYiwgYywgZCkge1xyXG4gIFx0aWYgKGlzQXJyYXkoYSkpIHtcclxuICBcdFx0Ly8gdXNlIGFycmF5IHByb3BlcnRpZXNcclxuICBcdFx0dGhpcy5fYSA9IGFbMF07XHJcbiAgXHRcdHRoaXMuX2IgPSBhWzFdO1xyXG4gIFx0XHR0aGlzLl9jID0gYVsyXTtcclxuICBcdFx0dGhpcy5fZCA9IGFbM107XHJcbiAgXHRcdHJldHVybjtcclxuICBcdH1cclxuICBcdHRoaXMuX2EgPSBhO1xyXG4gIFx0dGhpcy5fYiA9IGI7XHJcbiAgXHR0aGlzLl9jID0gYztcclxuICBcdHRoaXMuX2QgPSBkO1xyXG4gIH1cclxuXHJcbiAgVHJhbnNmb3JtYXRpb24ucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCB0cmFuc2Zvcm0ocG9pbnQ6IFBvaW50LCBzY2FsZT86IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgdHJhbnNmb3JtZWQgcG9pbnQsIG9wdGlvbmFsbHkgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gc2NhbGUuXHJcbiAgXHQvLyBPbmx5IGFjY2VwdHMgYWN0dWFsIGBMLlBvaW50YCBpbnN0YW5jZXMsIG5vdCBhcnJheXMuXHJcbiAgXHR0cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHsgLy8gKFBvaW50LCBOdW1iZXIpIC0+IFBvaW50XHJcbiAgXHRcdHJldHVybiB0aGlzLl90cmFuc2Zvcm0ocG9pbnQuY2xvbmUoKSwgc2NhbGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBkZXN0cnVjdGl2ZSB0cmFuc2Zvcm0gKGZhc3RlcilcclxuICBcdF90cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHtcclxuICBcdFx0c2NhbGUgPSBzY2FsZSB8fCAxO1xyXG4gIFx0XHRwb2ludC54ID0gc2NhbGUgKiAodGhpcy5fYSAqIHBvaW50LnggKyB0aGlzLl9iKTtcclxuICBcdFx0cG9pbnQueSA9IHNjYWxlICogKHRoaXMuX2MgKiBwb2ludC55ICsgdGhpcy5fZCk7XHJcbiAgXHRcdHJldHVybiBwb2ludDtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB1bnRyYW5zZm9ybShwb2ludDogUG9pbnQsIHNjYWxlPzogTnVtYmVyKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHJldmVyc2UgdHJhbnNmb3JtYXRpb24gb2YgdGhlIGdpdmVuIHBvaW50LCBvcHRpb25hbGx5IGRpdmlkZWRcclxuICBcdC8vIGJ5IHRoZSBnaXZlbiBzY2FsZS4gT25seSBhY2NlcHRzIGFjdHVhbCBgTC5Qb2ludGAgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxyXG4gIFx0dW50cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHtcclxuICBcdFx0c2NhbGUgPSBzY2FsZSB8fCAxO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KFxyXG4gIFx0XHQgICAgICAgIChwb2ludC54IC8gc2NhbGUgLSB0aGlzLl9iKSAvIHRoaXMuX2EsXHJcbiAgXHRcdCAgICAgICAgKHBvaW50LnkgLyBzY2FsZSAtIHRoaXMuX2QpIC8gdGhpcy5fYyk7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gZmFjdG9yeSBMLnRyYW5zZm9ybWF0aW9uKGE6IE51bWJlciwgYjogTnVtYmVyLCBjOiBOdW1iZXIsIGQ6IE51bWJlcilcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC50cmFuc2Zvcm1hdGlvbihhOiBOdW1iZXIsIGI6IE51bWJlciwgYzogTnVtYmVyLCBkOiBOdW1iZXIpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgVHJhbnNmb3JtYXRpb24gb2JqZWN0IHdpdGggdGhlIGdpdmVuIGNvZWZmaWNpZW50cy5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC50cmFuc2Zvcm1hdGlvbihjb2VmZmljaWVudHM6IEFycmF5KTogVHJhbnNmb3JtYXRpb25cclxuICAvLyBFeHBlY3RzIGFuIGNvZWZmaWNpZW50cyBhcnJheSBvZiB0aGUgZm9ybVxyXG4gIC8vIGBbYTogTnVtYmVyLCBiOiBOdW1iZXIsIGM6IE51bWJlciwgZDogTnVtYmVyXWAuXHJcblxyXG4gIGZ1bmN0aW9uIHRvVHJhbnNmb3JtYXRpb24oYSwgYiwgYywgZCkge1xyXG4gIFx0cmV0dXJuIG5ldyBUcmFuc2Zvcm1hdGlvbihhLCBiLCBjLCBkKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuRVBTRzM4NTdcclxuICAgKlxyXG4gICAqIFRoZSBtb3N0IGNvbW1vbiBDUlMgZm9yIG9ubGluZSBtYXBzLCB1c2VkIGJ5IGFsbW9zdCBhbGwgZnJlZSBhbmQgY29tbWVyY2lhbFxyXG4gICAqIHRpbGUgcHJvdmlkZXJzLiBVc2VzIFNwaGVyaWNhbCBNZXJjYXRvciBwcm9qZWN0aW9uLiBTZXQgaW4gYnkgZGVmYXVsdCBpblxyXG4gICAqIE1hcCdzIGBjcnNgIG9wdGlvbi5cclxuICAgKi9cclxuXHJcbiAgdmFyIEVQU0czODU3ID0gZXh0ZW5kKHt9LCBFYXJ0aCwge1xyXG4gIFx0Y29kZTogJ0VQU0c6Mzg1NycsXHJcbiAgXHRwcm9qZWN0aW9uOiBTcGhlcmljYWxNZXJjYXRvcixcclxuXHJcbiAgXHR0cmFuc2Zvcm1hdGlvbjogKGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gMC41IC8gKE1hdGguUEkgKiBTcGhlcmljYWxNZXJjYXRvci5SKTtcclxuICBcdFx0cmV0dXJuIHRvVHJhbnNmb3JtYXRpb24oc2NhbGUsIDAuNSwgLXNjYWxlLCAwLjUpO1xyXG4gIFx0fSgpKVxyXG4gIH0pO1xyXG5cclxuICB2YXIgRVBTRzkwMDkxMyA9IGV4dGVuZCh7fSwgRVBTRzM4NTcsIHtcclxuICBcdGNvZGU6ICdFUFNHOjkwMDkxMydcclxuICB9KTtcblxuICAvLyBAbmFtZXNwYWNlIFNWRzsgQHNlY3Rpb25cbiAgLy8gVGhlcmUgYXJlIHNldmVyYWwgc3RhdGljIGZ1bmN0aW9ucyB3aGljaCBjYW4gYmUgY2FsbGVkIHdpdGhvdXQgaW5zdGFudGlhdGluZyBMLlNWRzpcblxuICAvLyBAZnVuY3Rpb24gY3JlYXRlKG5hbWU6IFN0cmluZyk6IFNWR0VsZW1lbnRcbiAgLy8gUmV0dXJucyBhIGluc3RhbmNlIG9mIFtTVkdFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvU1ZHRWxlbWVudCksXG4gIC8vIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNsYXNzIG5hbWUgcGFzc2VkLiBGb3IgZXhhbXBsZSwgdXNpbmcgJ2xpbmUnIHdpbGwgcmV0dXJuXG4gIC8vIGFuIGluc3RhbmNlIG9mIFtTVkdMaW5lRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL1NWR0xpbmVFbGVtZW50KS5cbiAgZnVuY3Rpb24gc3ZnQ3JlYXRlKG5hbWUpIHtcbiAgXHRyZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycsIG5hbWUpO1xuICB9XG5cbiAgLy8gQGZ1bmN0aW9uIHBvaW50c1RvUGF0aChyaW5nczogUG9pbnRbXSwgY2xvc2VkOiBCb29sZWFuKTogU3RyaW5nXG4gIC8vIEdlbmVyYXRlcyBhIFNWRyBwYXRoIHN0cmluZyBmb3IgbXVsdGlwbGUgcmluZ3MsIHdpdGggZWFjaCByaW5nIHR1cm5pbmdcbiAgLy8gaW50byBcIk0uLkwuLkwuLlwiIGluc3RydWN0aW9uc1xuICBmdW5jdGlvbiBwb2ludHNUb1BhdGgocmluZ3MsIGNsb3NlZCkge1xuICBcdHZhciBzdHIgPSAnJyxcbiAgXHRpLCBqLCBsZW4sIGxlbjIsIHBvaW50cywgcDtcblxuICBcdGZvciAoaSA9IDAsIGxlbiA9IHJpbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRwb2ludHMgPSByaW5nc1tpXTtcblxuICBcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBvaW50cy5sZW5ndGg7IGogPCBsZW4yOyBqKyspIHtcbiAgXHRcdFx0cCA9IHBvaW50c1tqXTtcbiAgXHRcdFx0c3RyICs9IChqID8gJ0wnIDogJ00nKSArIHAueCArICcgJyArIHAueTtcbiAgXHRcdH1cblxuICBcdFx0Ly8gY2xvc2VzIHRoZSByaW5nIGZvciBwb2x5Z29uczsgXCJ4XCIgaXMgVk1MIHN5bnRheFxuICBcdFx0c3RyICs9IGNsb3NlZCA/IChCcm93c2VyLnN2ZyA/ICd6JyA6ICd4JykgOiAnJztcbiAgXHR9XG5cbiAgXHQvLyBTVkcgY29tcGxhaW5zIGFib3V0IGVtcHR5IHBhdGggc3RyaW5nc1xuICBcdHJldHVybiBzdHIgfHwgJ00wIDAnO1xuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIEJyb3dzZXJcclxuICAgKiBAYWthIEwuQnJvd3NlclxyXG4gICAqXHJcbiAgICogQSBuYW1lc3BhY2Ugd2l0aCBzdGF0aWMgcHJvcGVydGllcyBmb3IgYnJvd3Nlci9mZWF0dXJlIGRldGVjdGlvbiB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIGlmIChMLkJyb3dzZXIuaWVsdDkpIHtcclxuICAgKiAgIGFsZXJ0KCdVcGdyYWRlIHlvdXIgYnJvd3NlciwgZHVkZSEnKTtcclxuICAgKiB9XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGllOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIGFsbCBJbnRlcm5ldCBFeHBsb3JlciB2ZXJzaW9ucyAobm90IEVkZ2UpLlxyXG4gIHZhciBpZSA9ICdBY3RpdmVYT2JqZWN0JyBpbiB3aW5kb3c7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBpZWx0OTogQm9vbGVhbjsgYHRydWVgIGZvciBJbnRlcm5ldCBFeHBsb3JlciB2ZXJzaW9ucyBsZXNzIHRoYW4gOS5cclxuICB2YXIgaWVsdDkgPSBpZSAmJiAhZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcjtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGVkZ2U6IEJvb2xlYW47IGB0cnVlYCBmb3IgdGhlIEVkZ2Ugd2ViIGJyb3dzZXIuXHJcbiAgdmFyIGVkZ2UgPSAnbXNMYXVuY2hVcmknIGluIG5hdmlnYXRvciAmJiAhKCdkb2N1bWVudE1vZGUnIGluIGRvY3VtZW50KTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHdlYmtpdDogQm9vbGVhbjtcclxuICAvLyBgdHJ1ZWAgZm9yIHdlYmtpdC1iYXNlZCBicm93c2VycyBsaWtlIENocm9tZSBhbmQgU2FmYXJpIChpbmNsdWRpbmcgbW9iaWxlIHZlcnNpb25zKS5cclxuICB2YXIgd2Via2l0ID0gdXNlckFnZW50Q29udGFpbnMoJ3dlYmtpdCcpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgYW5kcm9pZDogQm9vbGVhblxyXG4gIC8vICoqRGVwcmVjYXRlZC4qKiBgdHJ1ZWAgZm9yIGFueSBicm93c2VyIHJ1bm5pbmcgb24gYW4gQW5kcm9pZCBwbGF0Zm9ybS5cclxuICB2YXIgYW5kcm9pZCA9IHVzZXJBZ2VudENvbnRhaW5zKCdhbmRyb2lkJyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBhbmRyb2lkMjM6IEJvb2xlYW47ICoqRGVwcmVjYXRlZC4qKiBgdHJ1ZWAgZm9yIGJyb3dzZXJzIHJ1bm5pbmcgb24gQW5kcm9pZCAyIG9yIEFuZHJvaWQgMy5cclxuICB2YXIgYW5kcm9pZDIzID0gdXNlckFnZW50Q29udGFpbnMoJ2FuZHJvaWQgMicpIHx8IHVzZXJBZ2VudENvbnRhaW5zKCdhbmRyb2lkIDMnKTtcclxuXHJcbiAgLyogU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xNzk2MTI2NiBmb3IgZGV0YWlscyBvbiBkZXRlY3Rpbmcgc3RvY2sgQW5kcm9pZCAqL1xyXG4gIHZhciB3ZWJraXRWZXIgPSBwYXJzZUludCgvV2ViS2l0XFwvKFswLTldKyl8JC8uZXhlYyhuYXZpZ2F0b3IudXNlckFnZW50KVsxXSwgMTApOyAvLyBhbHNvIG1hdGNoZXMgQXBwbGVXZWJLaXRcclxuICAvLyBAcHJvcGVydHkgYW5kcm9pZFN0b2NrOiBCb29sZWFuOyAqKkRlcHJlY2F0ZWQuKiogYHRydWVgIGZvciB0aGUgQW5kcm9pZCBzdG9jayBicm93c2VyIChpLmUuIG5vdCBDaHJvbWUpXHJcbiAgdmFyIGFuZHJvaWRTdG9jayA9IGFuZHJvaWQgJiYgdXNlckFnZW50Q29udGFpbnMoJ0dvb2dsZScpICYmIHdlYmtpdFZlciA8IDUzNyAmJiAhKCdBdWRpb05vZGUnIGluIHdpbmRvdyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBvcGVyYTogQm9vbGVhbjsgYHRydWVgIGZvciB0aGUgT3BlcmEgYnJvd3NlclxyXG4gIHZhciBvcGVyYSA9ICEhd2luZG93Lm9wZXJhO1xyXG5cclxuICAvLyBAcHJvcGVydHkgY2hyb21lOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIHRoZSBDaHJvbWUgYnJvd3Nlci5cclxuICB2YXIgY2hyb21lID0gIWVkZ2UgJiYgdXNlckFnZW50Q29udGFpbnMoJ2Nocm9tZScpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgZ2Vja286IEJvb2xlYW47IGB0cnVlYCBmb3IgZ2Vja28tYmFzZWQgYnJvd3NlcnMgbGlrZSBGaXJlZm94LlxyXG4gIHZhciBnZWNrbyA9IHVzZXJBZ2VudENvbnRhaW5zKCdnZWNrbycpICYmICF3ZWJraXQgJiYgIW9wZXJhICYmICFpZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHNhZmFyaTogQm9vbGVhbjsgYHRydWVgIGZvciB0aGUgU2FmYXJpIGJyb3dzZXIuXHJcbiAgdmFyIHNhZmFyaSA9ICFjaHJvbWUgJiYgdXNlckFnZW50Q29udGFpbnMoJ3NhZmFyaScpO1xyXG5cclxuICB2YXIgcGhhbnRvbSA9IHVzZXJBZ2VudENvbnRhaW5zKCdwaGFudG9tJyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBvcGVyYTEyOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciB0aGUgT3BlcmEgYnJvd3NlciBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zICh2ZXJzaW9uIDEyIG9yIGxhdGVyKS5cclxuICB2YXIgb3BlcmExMiA9ICdPVHJhbnNpdGlvbicgaW4gc3R5bGU7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSB3aW46IEJvb2xlYW47IGB0cnVlYCB3aGVuIHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBXaW5kb3dzIHBsYXRmb3JtXHJcbiAgdmFyIHdpbiA9IG5hdmlnYXRvci5wbGF0Zm9ybS5pbmRleE9mKCdXaW4nKSA9PT0gMDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGllM2Q6IEJvb2xlYW47IGB0cnVlYCBmb3IgYWxsIEludGVybmV0IEV4cGxvcmVyIHZlcnNpb25zIHN1cHBvcnRpbmcgQ1NTIHRyYW5zZm9ybXMuXHJcbiAgdmFyIGllM2QgPSBpZSAmJiAoJ3RyYW5zaXRpb24nIGluIHN0eWxlKTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHdlYmtpdDNkOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIHdlYmtpdC1iYXNlZCBicm93c2VycyBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zLlxyXG4gIHZhciB3ZWJraXQzZCA9ICgnV2ViS2l0Q1NTTWF0cml4JyBpbiB3aW5kb3cpICYmICgnbTExJyBpbiBuZXcgd2luZG93LldlYktpdENTU01hdHJpeCgpKSAmJiAhYW5kcm9pZDIzO1xyXG5cclxuICAvLyBAcHJvcGVydHkgZ2Vja28zZDogQm9vbGVhbjsgYHRydWVgIGZvciBnZWNrby1iYXNlZCBicm93c2VycyBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zLlxyXG4gIHZhciBnZWNrbzNkID0gJ01velBlcnNwZWN0aXZlJyBpbiBzdHlsZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGFueTNkOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgc3VwcG9ydGluZyBDU1MgdHJhbnNmb3Jtcy5cclxuICB2YXIgYW55M2QgPSAhd2luZG93LkxfRElTQUJMRV8zRCAmJiAoaWUzZCB8fCB3ZWJraXQzZCB8fCBnZWNrbzNkKSAmJiAhb3BlcmExMiAmJiAhcGhhbnRvbTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IG1vYmlsZTogQm9vbGVhbjsgYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgcnVubmluZyBpbiBhIG1vYmlsZSBkZXZpY2UuXHJcbiAgdmFyIG1vYmlsZSA9IHR5cGVvZiBvcmllbnRhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgfHwgdXNlckFnZW50Q29udGFpbnMoJ21vYmlsZScpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlV2Via2l0OiBCb29sZWFuOyBgdHJ1ZWAgZm9yIGFsbCB3ZWJraXQtYmFzZWQgYnJvd3NlcnMgaW4gYSBtb2JpbGUgZGV2aWNlLlxyXG4gIHZhciBtb2JpbGVXZWJraXQgPSBtb2JpbGUgJiYgd2Via2l0O1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlV2Via2l0M2Q6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGFsbCB3ZWJraXQtYmFzZWQgYnJvd3NlcnMgaW4gYSBtb2JpbGUgZGV2aWNlIHN1cHBvcnRpbmcgQ1NTIHRyYW5zZm9ybXMuXHJcbiAgdmFyIG1vYmlsZVdlYmtpdDNkID0gbW9iaWxlICYmIHdlYmtpdDNkO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbXNQb2ludGVyOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBicm93c2VycyBpbXBsZW1lbnRpbmcgdGhlIE1pY3Jvc29mdCB0b3VjaCBldmVudHMgbW9kZWwgKG5vdGFibHkgSUUxMCkuXHJcbiAgdmFyIG1zUG9pbnRlciA9ICF3aW5kb3cuUG9pbnRlckV2ZW50ICYmIHdpbmRvdy5NU1BvaW50ZXJFdmVudDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHBvaW50ZXI6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGFsbCBicm93c2VycyBzdXBwb3J0aW5nIFtwb2ludGVyIGV2ZW50c10oaHR0cHM6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9kbjQzMzI0NCUyOHY9dnMuODUlMjkuYXNweCkuXHJcbiAgdmFyIHBvaW50ZXIgPSAhISh3aW5kb3cuUG9pbnRlckV2ZW50IHx8IG1zUG9pbnRlcik7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSB0b3VjaE5hdGl2ZTogQm9vbGVhblxyXG4gIC8vIGB0cnVlYCBmb3IgYWxsIGJyb3dzZXJzIHN1cHBvcnRpbmcgW3RvdWNoIGV2ZW50c10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL1RvdWNoX2V2ZW50cykuXHJcbiAgLy8gKipUaGlzIGRvZXMgbm90IG5lY2Vzc2FyaWx5IG1lYW4qKiB0aGF0IHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBjb21wdXRlciB3aXRoXHJcbiAgLy8gYSB0b3VjaHNjcmVlbiwgaXQgb25seSBtZWFucyB0aGF0IHRoZSBicm93c2VyIGlzIGNhcGFibGUgb2YgdW5kZXJzdGFuZGluZ1xyXG4gIC8vIHRvdWNoIGV2ZW50cy5cclxuICB2YXIgdG91Y2hOYXRpdmUgPSAnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHwgISF3aW5kb3cuVG91Y2hFdmVudDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHRvdWNoOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgc3VwcG9ydGluZyBlaXRoZXIgW3RvdWNoXSgjYnJvd3Nlci10b3VjaCkgb3IgW3BvaW50ZXJdKCNicm93c2VyLXBvaW50ZXIpIGV2ZW50cy5cclxuICAvLyBOb3RlOiBwb2ludGVyIGV2ZW50cyB3aWxsIGJlIHByZWZlcnJlZCAoaWYgYXZhaWxhYmxlKSwgYW5kIHByb2Nlc3NlZCBmb3IgYWxsIGB0b3VjaCpgIGxpc3RlbmVycy5cclxuICB2YXIgdG91Y2ggPSAhd2luZG93LkxfTk9fVE9VQ0ggJiYgKHRvdWNoTmF0aXZlIHx8IHBvaW50ZXIpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlT3BlcmE6IEJvb2xlYW47IGB0cnVlYCBmb3IgdGhlIE9wZXJhIGJyb3dzZXIgaW4gYSBtb2JpbGUgZGV2aWNlLlxyXG4gIHZhciBtb2JpbGVPcGVyYSA9IG1vYmlsZSAmJiBvcGVyYTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IG1vYmlsZUdlY2tvOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBnZWNrby1iYXNlZCBicm93c2VycyBydW5uaW5nIGluIGEgbW9iaWxlIGRldmljZS5cclxuICB2YXIgbW9iaWxlR2Vja28gPSBtb2JpbGUgJiYgZ2Vja287XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSByZXRpbmE6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGJyb3dzZXJzIG9uIGEgaGlnaC1yZXNvbHV0aW9uIFwicmV0aW5hXCIgc2NyZWVuIG9yIG9uIGFueSBzY3JlZW4gd2hlbiBicm93c2VyJ3MgZGlzcGxheSB6b29tIGlzIG1vcmUgdGhhbiAxMDAlLlxyXG4gIHZhciByZXRpbmEgPSAod2luZG93LmRldmljZVBpeGVsUmF0aW8gfHwgKHdpbmRvdy5zY3JlZW4uZGV2aWNlWERQSSAvIHdpbmRvdy5zY3JlZW4ubG9naWNhbFhEUEkpKSA+IDE7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBwYXNzaXZlRXZlbnRzOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBicm93c2VycyB0aGF0IHN1cHBvcnQgcGFzc2l2ZSBldmVudHMuXHJcbiAgdmFyIHBhc3NpdmVFdmVudHMgPSAoZnVuY3Rpb24gKCkge1xyXG4gIFx0dmFyIHN1cHBvcnRzUGFzc2l2ZU9wdGlvbiA9IGZhbHNlO1xyXG4gIFx0dHJ5IHtcclxuICBcdFx0dmFyIG9wdHMgPSBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sICdwYXNzaXZlJywge1xyXG4gIFx0XHRcdGdldDogZnVuY3Rpb24gKCkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGdldHRlci1yZXR1cm5cclxuICBcdFx0XHRcdHN1cHBvcnRzUGFzc2l2ZU9wdGlvbiA9IHRydWU7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9KTtcclxuICBcdFx0d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Rlc3RQYXNzaXZlRXZlbnRTdXBwb3J0JywgZmFsc2VGbiwgb3B0cyk7XHJcbiAgXHRcdHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCd0ZXN0UGFzc2l2ZUV2ZW50U3VwcG9ydCcsIGZhbHNlRm4sIG9wdHMpO1xyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHQvLyBFcnJvcnMgY2FuIHNhZmVseSBiZSBpZ25vcmVkIHNpbmNlIHRoaXMgaXMgb25seSBhIGJyb3dzZXIgc3VwcG9ydCB0ZXN0LlxyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIHN1cHBvcnRzUGFzc2l2ZU9wdGlvbjtcclxuICB9KCkpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgY2FudmFzOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIHdoZW4gdGhlIGJyb3dzZXIgc3VwcG9ydHMgW2A8Y2FudmFzPmBdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9DYW52YXNfQVBJKS5cclxuICB2YXIgY2FudmFzJDEgPSAoZnVuY3Rpb24gKCkge1xyXG4gIFx0cmV0dXJuICEhZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJykuZ2V0Q29udGV4dDtcclxuICB9KCkpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgc3ZnOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIHdoZW4gdGhlIGJyb3dzZXIgc3VwcG9ydHMgW1NWR10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHKS5cclxuICB2YXIgc3ZnJDEgPSAhIShkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMgJiYgc3ZnQ3JlYXRlKCdzdmcnKS5jcmVhdGVTVkdSZWN0KTtcclxuXHJcbiAgdmFyIGlubGluZVN2ZyA9ICEhc3ZnJDEgJiYgKGZ1bmN0aW9uICgpIHtcclxuICBcdHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdGRpdi5pbm5lckhUTUwgPSAnPHN2Zy8+JztcclxuICBcdHJldHVybiAoZGl2LmZpcnN0Q2hpbGQgJiYgZGl2LmZpcnN0Q2hpbGQubmFtZXNwYWNlVVJJKSA9PT0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJztcclxuICB9KSgpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgdm1sOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGlmIHRoZSBicm93c2VyIHN1cHBvcnRzIFtWTUxdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZlY3Rvcl9NYXJrdXBfTGFuZ3VhZ2UpLlxyXG4gIHZhciB2bWwgPSAhc3ZnJDEgJiYgKGZ1bmN0aW9uICgpIHtcclxuICBcdHRyeSB7XHJcbiAgXHRcdHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdFx0ZGl2LmlubmVySFRNTCA9ICc8djpzaGFwZSBhZGo9XCIxXCIvPic7XHJcblxyXG4gIFx0XHR2YXIgc2hhcGUgPSBkaXYuZmlyc3RDaGlsZDtcclxuICBcdFx0c2hhcGUuc3R5bGUuYmVoYXZpb3IgPSAndXJsKCNkZWZhdWx0I1ZNTCknO1xyXG5cclxuICBcdFx0cmV0dXJuIHNoYXBlICYmICh0eXBlb2Ygc2hhcGUuYWRqID09PSAnb2JqZWN0Jyk7XHJcblxyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHRyZXR1cm4gZmFsc2U7XHJcbiAgXHR9XHJcbiAgfSgpKTtcclxuXHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBtYWM6IEJvb2xlYW47IGB0cnVlYCB3aGVuIHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBNYWMgcGxhdGZvcm1cclxuICB2YXIgbWFjID0gbmF2aWdhdG9yLnBsYXRmb3JtLmluZGV4T2YoJ01hYycpID09PSAwO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbWFjOiBCb29sZWFuOyBgdHJ1ZWAgd2hlbiB0aGUgYnJvd3NlciBpcyBydW5uaW5nIGluIGEgTGludXggcGxhdGZvcm1cclxuICB2YXIgbGludXggPSBuYXZpZ2F0b3IucGxhdGZvcm0uaW5kZXhPZignTGludXgnKSA9PT0gMDtcclxuXHJcbiAgZnVuY3Rpb24gdXNlckFnZW50Q29udGFpbnMoc3RyKSB7XHJcbiAgXHRyZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc3RyKSA+PSAwO1xyXG4gIH1cclxuXHJcblxyXG4gIHZhciBCcm93c2VyID0ge1xyXG4gIFx0aWU6IGllLFxyXG4gIFx0aWVsdDk6IGllbHQ5LFxyXG4gIFx0ZWRnZTogZWRnZSxcclxuICBcdHdlYmtpdDogd2Via2l0LFxyXG4gIFx0YW5kcm9pZDogYW5kcm9pZCxcclxuICBcdGFuZHJvaWQyMzogYW5kcm9pZDIzLFxyXG4gIFx0YW5kcm9pZFN0b2NrOiBhbmRyb2lkU3RvY2ssXHJcbiAgXHRvcGVyYTogb3BlcmEsXHJcbiAgXHRjaHJvbWU6IGNocm9tZSxcclxuICBcdGdlY2tvOiBnZWNrbyxcclxuICBcdHNhZmFyaTogc2FmYXJpLFxyXG4gIFx0cGhhbnRvbTogcGhhbnRvbSxcclxuICBcdG9wZXJhMTI6IG9wZXJhMTIsXHJcbiAgXHR3aW46IHdpbixcclxuICBcdGllM2Q6IGllM2QsXHJcbiAgXHR3ZWJraXQzZDogd2Via2l0M2QsXHJcbiAgXHRnZWNrbzNkOiBnZWNrbzNkLFxyXG4gIFx0YW55M2Q6IGFueTNkLFxyXG4gIFx0bW9iaWxlOiBtb2JpbGUsXHJcbiAgXHRtb2JpbGVXZWJraXQ6IG1vYmlsZVdlYmtpdCxcclxuICBcdG1vYmlsZVdlYmtpdDNkOiBtb2JpbGVXZWJraXQzZCxcclxuICBcdG1zUG9pbnRlcjogbXNQb2ludGVyLFxyXG4gIFx0cG9pbnRlcjogcG9pbnRlcixcclxuICBcdHRvdWNoOiB0b3VjaCxcclxuICBcdHRvdWNoTmF0aXZlOiB0b3VjaE5hdGl2ZSxcclxuICBcdG1vYmlsZU9wZXJhOiBtb2JpbGVPcGVyYSxcclxuICBcdG1vYmlsZUdlY2tvOiBtb2JpbGVHZWNrbyxcclxuICBcdHJldGluYTogcmV0aW5hLFxyXG4gIFx0cGFzc2l2ZUV2ZW50czogcGFzc2l2ZUV2ZW50cyxcclxuICBcdGNhbnZhczogY2FudmFzJDEsXHJcbiAgXHRzdmc6IHN2ZyQxLFxyXG4gIFx0dm1sOiB2bWwsXHJcbiAgXHRpbmxpbmVTdmc6IGlubGluZVN2ZyxcclxuICBcdG1hYzogbWFjLFxyXG4gIFx0bGludXg6IGxpbnV4XHJcbiAgfTtcblxuICAvKlxuICAgKiBFeHRlbmRzIEwuRG9tRXZlbnQgdG8gcHJvdmlkZSB0b3VjaCBzdXBwb3J0IGZvciBJbnRlcm5ldCBFeHBsb3JlciBhbmQgV2luZG93cy1iYXNlZCBkZXZpY2VzLlxuICAgKi9cblxuICB2YXIgUE9JTlRFUl9ET1dOID0gICBCcm93c2VyLm1zUG9pbnRlciA/ICdNU1BvaW50ZXJEb3duJyAgIDogJ3BvaW50ZXJkb3duJztcbiAgdmFyIFBPSU5URVJfTU9WRSA9ICAgQnJvd3Nlci5tc1BvaW50ZXIgPyAnTVNQb2ludGVyTW92ZScgICA6ICdwb2ludGVybW92ZSc7XG4gIHZhciBQT0lOVEVSX1VQID0gICAgIEJyb3dzZXIubXNQb2ludGVyID8gJ01TUG9pbnRlclVwJyAgICAgOiAncG9pbnRlcnVwJztcbiAgdmFyIFBPSU5URVJfQ0FOQ0VMID0gQnJvd3Nlci5tc1BvaW50ZXIgPyAnTVNQb2ludGVyQ2FuY2VsJyA6ICdwb2ludGVyY2FuY2VsJztcbiAgdmFyIHBFdmVudCA9IHtcbiAgXHR0b3VjaHN0YXJ0ICA6IFBPSU5URVJfRE9XTixcbiAgXHR0b3VjaG1vdmUgICA6IFBPSU5URVJfTU9WRSxcbiAgXHR0b3VjaGVuZCAgICA6IFBPSU5URVJfVVAsXG4gIFx0dG91Y2hjYW5jZWwgOiBQT0lOVEVSX0NBTkNFTFxuICB9O1xuICB2YXIgaGFuZGxlID0ge1xuICBcdHRvdWNoc3RhcnQgIDogX29uUG9pbnRlclN0YXJ0LFxuICBcdHRvdWNobW92ZSAgIDogX2hhbmRsZVBvaW50ZXIsXG4gIFx0dG91Y2hlbmQgICAgOiBfaGFuZGxlUG9pbnRlcixcbiAgXHR0b3VjaGNhbmNlbCA6IF9oYW5kbGVQb2ludGVyXG4gIH07XG4gIHZhciBfcG9pbnRlcnMgPSB7fTtcbiAgdmFyIF9wb2ludGVyRG9jTGlzdGVuZXIgPSBmYWxzZTtcblxuICAvLyBQcm92aWRlcyBhIHRvdWNoIGV2ZW50cyB3cmFwcGVyIGZvciAobXMpcG9pbnRlciBldmVudHMuXG4gIC8vIHJlZiBodHRwczovL3d3dy53My5vcmcvVFIvcG9pbnRlcmV2ZW50cy8gaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3dfYnVnLmNnaT9pZD0yMjg5MFxuXG4gIGZ1bmN0aW9uIGFkZFBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpIHtcbiAgXHRpZiAodHlwZSA9PT0gJ3RvdWNoc3RhcnQnKSB7XG4gIFx0XHRfYWRkUG9pbnRlckRvY0xpc3RlbmVyKCk7XG4gIFx0fVxuICBcdGlmICghaGFuZGxlW3R5cGVdKSB7XG4gIFx0XHRjb25zb2xlLndhcm4oJ3dyb25nIGV2ZW50IHNwZWNpZmllZDonLCB0eXBlKTtcbiAgXHRcdHJldHVybiBmYWxzZUZuO1xuICBcdH1cbiAgXHRoYW5kbGVyID0gaGFuZGxlW3R5cGVdLmJpbmQodGhpcywgaGFuZGxlcik7XG4gIFx0b2JqLmFkZEV2ZW50TGlzdGVuZXIocEV2ZW50W3R5cGVdLCBoYW5kbGVyLCBmYWxzZSk7XG4gIFx0cmV0dXJuIGhhbmRsZXI7XG4gIH1cblxuICBmdW5jdGlvbiByZW1vdmVQb2ludGVyTGlzdGVuZXIob2JqLCB0eXBlLCBoYW5kbGVyKSB7XG4gIFx0aWYgKCFwRXZlbnRbdHlwZV0pIHtcbiAgXHRcdGNvbnNvbGUud2Fybignd3JvbmcgZXZlbnQgc3BlY2lmaWVkOicsIHR5cGUpO1xuICBcdFx0cmV0dXJuO1xuICBcdH1cbiAgXHRvYmoucmVtb3ZlRXZlbnRMaXN0ZW5lcihwRXZlbnRbdHlwZV0sIGhhbmRsZXIsIGZhbHNlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIF9nbG9iYWxQb2ludGVyRG93bihlKSB7XG4gIFx0X3BvaW50ZXJzW2UucG9pbnRlcklkXSA9IGU7XG4gIH1cblxuICBmdW5jdGlvbiBfZ2xvYmFsUG9pbnRlck1vdmUoZSkge1xuICBcdGlmIChfcG9pbnRlcnNbZS5wb2ludGVySWRdKSB7XG4gIFx0XHRfcG9pbnRlcnNbZS5wb2ludGVySWRdID0gZTtcbiAgXHR9XG4gIH1cblxuICBmdW5jdGlvbiBfZ2xvYmFsUG9pbnRlclVwKGUpIHtcbiAgXHRkZWxldGUgX3BvaW50ZXJzW2UucG9pbnRlcklkXTtcbiAgfVxuXG4gIGZ1bmN0aW9uIF9hZGRQb2ludGVyRG9jTGlzdGVuZXIoKSB7XG4gIFx0Ly8gbmVlZCB0byBrZWVwIHRyYWNrIG9mIHdoYXQgcG9pbnRlcnMgYW5kIGhvdyBtYW55IGFyZSBhY3RpdmUgdG8gcHJvdmlkZSBlLnRvdWNoZXMgZW11bGF0aW9uXG4gIFx0aWYgKCFfcG9pbnRlckRvY0xpc3RlbmVyKSB7XG4gIFx0XHQvLyB3ZSBsaXN0ZW4gZG9jdW1lbnQgYXMgYW55IGRyYWdzIHRoYXQgZW5kIGJ5IG1vdmluZyB0aGUgdG91Y2ggb2ZmIHRoZSBzY3JlZW4gZ2V0IGZpcmVkIHRoZXJlXG4gIFx0XHRkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFBPSU5URVJfRE9XTiwgX2dsb2JhbFBvaW50ZXJEb3duLCB0cnVlKTtcbiAgXHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoUE9JTlRFUl9NT1ZFLCBfZ2xvYmFsUG9pbnRlck1vdmUsIHRydWUpO1xuICBcdFx0ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihQT0lOVEVSX1VQLCBfZ2xvYmFsUG9pbnRlclVwLCB0cnVlKTtcbiAgXHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoUE9JTlRFUl9DQU5DRUwsIF9nbG9iYWxQb2ludGVyVXAsIHRydWUpO1xuXG4gIFx0XHRfcG9pbnRlckRvY0xpc3RlbmVyID0gdHJ1ZTtcbiAgXHR9XG4gIH1cblxuICBmdW5jdGlvbiBfaGFuZGxlUG9pbnRlcihoYW5kbGVyLCBlKSB7XG4gIFx0aWYgKGUucG9pbnRlclR5cGUgPT09IChlLk1TUE9JTlRFUl9UWVBFX01PVVNFIHx8ICdtb3VzZScpKSB7IHJldHVybjsgfVxuXG4gIFx0ZS50b3VjaGVzID0gW107XG4gIFx0Zm9yICh2YXIgaSBpbiBfcG9pbnRlcnMpIHtcbiAgXHRcdGUudG91Y2hlcy5wdXNoKF9wb2ludGVyc1tpXSk7XG4gIFx0fVxuICBcdGUuY2hhbmdlZFRvdWNoZXMgPSBbZV07XG5cbiAgXHRoYW5kbGVyKGUpO1xuICB9XG5cbiAgZnVuY3Rpb24gX29uUG9pbnRlclN0YXJ0KGhhbmRsZXIsIGUpIHtcbiAgXHQvLyBJRTEwIHNwZWNpZmljOiBNc1RvdWNoIG5lZWRzIHByZXZlbnREZWZhdWx0LiBTZWUgIzIwMDBcbiAgXHRpZiAoZS5NU1BPSU5URVJfVFlQRV9UT1VDSCAmJiBlLnBvaW50ZXJUeXBlID09PSBlLk1TUE9JTlRFUl9UWVBFX1RPVUNIKSB7XG4gIFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcbiAgXHR9XG4gIFx0X2hhbmRsZVBvaW50ZXIoaGFuZGxlciwgZSk7XG4gIH1cblxuICAvKlxyXG4gICAqIEV4dGVuZHMgdGhlIGV2ZW50IGhhbmRsaW5nIGNvZGUgd2l0aCBkb3VibGUgdGFwIHN1cHBvcnQgZm9yIG1vYmlsZSBicm93c2Vycy5cclxuICAgKlxyXG4gICAqIE5vdGU6IGN1cnJlbnRseSBtb3N0IGJyb3dzZXJzIGZpcmUgbmF0aXZlIGRibGNsaWNrLCB3aXRoIG9ubHkgYSBmZXcgZXhjZXB0aW9uc1xyXG4gICAqIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL0xlYWZsZXQvTGVhZmxldC9pc3N1ZXMvNzAxMiNpc3N1ZWNvbW1lbnQtNTk1MDg3Mzg2KVxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBtYWtlRGJsY2xpY2soZXZlbnQpIHtcclxuICBcdC8vIGluIG1vZGVybiBicm93c2VycyBgdHlwZWAgY2Fubm90IGJlIGp1c3Qgb3ZlcnJpZGRlbjpcclxuICBcdC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0Vycm9ycy9HZXR0ZXJfb25seVxyXG4gIFx0dmFyIG5ld0V2ZW50ID0ge30sXHJcbiAgXHQgICAgcHJvcCwgaTtcclxuICBcdGZvciAoaSBpbiBldmVudCkge1xyXG4gIFx0XHRwcm9wID0gZXZlbnRbaV07XHJcbiAgXHRcdG5ld0V2ZW50W2ldID0gcHJvcCAmJiBwcm9wLmJpbmQgPyBwcm9wLmJpbmQoZXZlbnQpIDogcHJvcDtcclxuICBcdH1cclxuICBcdGV2ZW50ID0gbmV3RXZlbnQ7XHJcbiAgXHRuZXdFdmVudC50eXBlID0gJ2RibGNsaWNrJztcclxuICBcdG5ld0V2ZW50LmRldGFpbCA9IDI7XHJcbiAgXHRuZXdFdmVudC5pc1RydXN0ZWQgPSBmYWxzZTtcclxuICBcdG5ld0V2ZW50Ll9zaW11bGF0ZWQgPSB0cnVlOyAvLyBmb3IgZGVidWcgcHVycG9zZXNcclxuICBcdHJldHVybiBuZXdFdmVudDtcclxuICB9XHJcblxyXG4gIHZhciBkZWxheSA9IDIwMDtcclxuICBmdW5jdGlvbiBhZGREb3VibGVUYXBMaXN0ZW5lcihvYmosIGhhbmRsZXIpIHtcclxuICBcdC8vIE1vc3QgYnJvd3NlcnMgaGFuZGxlIGRvdWJsZSB0YXAgbmF0aXZlbHlcclxuICBcdG9iai5hZGRFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIGhhbmRsZXIpO1xyXG5cclxuICBcdC8vIE9uIHNvbWUgcGxhdGZvcm1zIHRoZSBicm93c2VyIGRvZXNuJ3QgZmlyZSBuYXRpdmUgZGJsY2xpY2tzIGZvciB0b3VjaCBldmVudHMuXHJcbiAgXHQvLyBJdCBzZWVtcyB0aGF0IGluIGFsbCBzdWNoIGNhc2VzIGBkZXRhaWxgIHByb3BlcnR5IG9mIGBjbGlja2AgZXZlbnQgaXMgYWx3YXlzIGAxYC5cclxuICBcdC8vIFNvIGhlcmUgd2UgcmVseSBvbiB0aGF0IGZhY3QgdG8gYXZvaWQgZXhjZXNzaXZlICdkYmxjbGljaycgc2ltdWxhdGlvbiB3aGVuIG5vdCBuZWVkZWQuXHJcbiAgXHR2YXIgbGFzdCA9IDAsXHJcbiAgXHQgICAgZGV0YWlsO1xyXG4gIFx0ZnVuY3Rpb24gc2ltRGJsY2xpY2soZSkge1xyXG4gIFx0XHRpZiAoZS5kZXRhaWwgIT09IDEpIHtcclxuICBcdFx0XHRkZXRhaWwgPSBlLmRldGFpbDsgLy8ga2VlcCBpbiBzeW5jIHRvIGF2b2lkIGZhbHNlIGRibGNsaWNrIGluIHNvbWUgY2FzZXNcclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChlLnBvaW50ZXJUeXBlID09PSAnbW91c2UnIHx8XHJcbiAgXHRcdFx0KGUuc291cmNlQ2FwYWJpbGl0aWVzICYmICFlLnNvdXJjZUNhcGFiaWxpdGllcy5maXJlc1RvdWNoRXZlbnRzKSkge1xyXG5cclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIFdoZW4gY2xpY2tpbmcgb24gYW4gPGlucHV0PiwgdGhlIGJyb3dzZXIgZ2VuZXJhdGVzIGEgY2xpY2sgb24gaXRzXHJcbiAgXHRcdC8vIDxsYWJlbD4gKGFuZCB2aWNlIHZlcnNhKSB0cmlnZ2VyaW5nIHR3byBjbGlja3MgaW4gcXVpY2sgc3VjY2Vzc2lvbi5cclxuICBcdFx0Ly8gVGhpcyBpZ25vcmVzIGNsaWNrcyBvbiBlbGVtZW50cyB3aGljaCBhcmUgYSBsYWJlbCB3aXRoIGEgJ2ZvcidcclxuICBcdFx0Ly8gYXR0cmlidXRlIChvciBjaGlsZHJlbiBvZiBzdWNoIGEgbGFiZWwpLCBidXQgbm90IGNoaWxkcmVuIG9mXHJcbiAgXHRcdC8vIGEgPGlucHV0Pi5cclxuICBcdFx0dmFyIHBhdGggPSBnZXRQcm9wYWdhdGlvblBhdGgoZSk7XHJcbiAgXHRcdGlmIChwYXRoLnNvbWUoZnVuY3Rpb24gKGVsKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGVsIGluc3RhbmNlb2YgSFRNTExhYmVsRWxlbWVudCAmJiBlbC5hdHRyaWJ1dGVzLmZvcjtcclxuICBcdFx0fSkgJiZcclxuICBcdFx0XHQhcGF0aC5zb21lKGZ1bmN0aW9uIChlbCkge1xyXG4gIFx0XHRcdFx0cmV0dXJuIChcclxuICBcdFx0XHRcdFx0ZWwgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50IHx8XHJcbiAgXHRcdFx0XHRcdGVsIGluc3RhbmNlb2YgSFRNTFNlbGVjdEVsZW1lbnRcclxuICBcdFx0XHRcdCk7XHJcbiAgXHRcdFx0fSlcclxuICBcdFx0KSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbm93ID0gRGF0ZS5ub3coKTtcclxuICBcdFx0aWYgKG5vdyAtIGxhc3QgPD0gZGVsYXkpIHtcclxuICBcdFx0XHRkZXRhaWwrKztcclxuICBcdFx0XHRpZiAoZGV0YWlsID09PSAyKSB7XHJcbiAgXHRcdFx0XHRoYW5kbGVyKG1ha2VEYmxjbGljayhlKSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdGRldGFpbCA9IDE7XHJcbiAgXHRcdH1cclxuICBcdFx0bGFzdCA9IG5vdztcclxuICBcdH1cclxuXHJcbiAgXHRvYmouYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBzaW1EYmxjbGljayk7XHJcblxyXG4gIFx0cmV0dXJuIHtcclxuICBcdFx0ZGJsY2xpY2s6IGhhbmRsZXIsXHJcbiAgXHRcdHNpbURibGNsaWNrOiBzaW1EYmxjbGlja1xyXG4gIFx0fTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHJlbW92ZURvdWJsZVRhcExpc3RlbmVyKG9iaiwgaGFuZGxlcnMpIHtcclxuICBcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIGhhbmRsZXJzLmRibGNsaWNrKTtcclxuICBcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZXJzLnNpbURibGNsaWNrKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIERvbVV0aWxcclxuICAgKlxyXG4gICAqIFV0aWxpdHkgZnVuY3Rpb25zIHRvIHdvcmsgd2l0aCB0aGUgW0RPTV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0RvY3VtZW50X09iamVjdF9Nb2RlbClcclxuICAgKiB0cmVlLCB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseS5cclxuICAgKlxyXG4gICAqIE1vc3QgZnVuY3Rpb25zIGV4cGVjdGluZyBvciByZXR1cm5pbmcgYSBgSFRNTEVsZW1lbnRgIGFsc28gd29yayBmb3JcclxuICAgKiBTVkcgZWxlbWVudHMuIFRoZSBvbmx5IGRpZmZlcmVuY2UgaXMgdGhhdCBjbGFzc2VzIHJlZmVyIHRvIENTUyBjbGFzc2VzXHJcbiAgICogaW4gSFRNTCBhbmQgU1ZHIGNsYXNzZXMgaW4gU1ZHLlxyXG4gICAqL1xyXG5cclxuXHJcbiAgLy8gQHByb3BlcnR5IFRSQU5TRk9STTogU3RyaW5nXHJcbiAgLy8gVmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybSBzdHlsZSBuYW1lIChlLmcuIGAnd2Via2l0VHJhbnNmb3JtJ2AgZm9yIFdlYktpdCkuXHJcbiAgdmFyIFRSQU5TRk9STSA9IHRlc3RQcm9wKFxyXG4gIFx0Wyd0cmFuc2Zvcm0nLCAnd2Via2l0VHJhbnNmb3JtJywgJ09UcmFuc2Zvcm0nLCAnTW96VHJhbnNmb3JtJywgJ21zVHJhbnNmb3JtJ10pO1xyXG5cclxuICAvLyB3ZWJraXRUcmFuc2l0aW9uIGNvbWVzIGZpcnN0IGJlY2F1c2Ugc29tZSBicm93c2VyIHZlcnNpb25zIHRoYXQgZHJvcCB2ZW5kb3IgcHJlZml4IGRvbid0IGRvXHJcbiAgLy8gdGhlIHNhbWUgZm9yIHRoZSB0cmFuc2l0aW9uZW5kIGV2ZW50LCBpbiBwYXJ0aWN1bGFyIHRoZSBBbmRyb2lkIDQuMSBzdG9jayBicm93c2VyXHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBUUkFOU0lUSU9OOiBTdHJpbmdcclxuICAvLyBWZW5kb3ItcHJlZml4ZWQgdHJhbnNpdGlvbiBzdHlsZSBuYW1lLlxyXG4gIHZhciBUUkFOU0lUSU9OID0gdGVzdFByb3AoXHJcbiAgXHRbJ3dlYmtpdFRyYW5zaXRpb24nLCAndHJhbnNpdGlvbicsICdPVHJhbnNpdGlvbicsICdNb3pUcmFuc2l0aW9uJywgJ21zVHJhbnNpdGlvbiddKTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IFRSQU5TSVRJT05fRU5EOiBTdHJpbmdcclxuICAvLyBWZW5kb3ItcHJlZml4ZWQgdHJhbnNpdGlvbmVuZCBldmVudCBuYW1lLlxyXG4gIHZhciBUUkFOU0lUSU9OX0VORCA9XHJcbiAgXHRUUkFOU0lUSU9OID09PSAnd2Via2l0VHJhbnNpdGlvbicgfHwgVFJBTlNJVElPTiA9PT0gJ09UcmFuc2l0aW9uJyA/IFRSQU5TSVRJT04gKyAnRW5kJyA6ICd0cmFuc2l0aW9uZW5kJztcclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXQoaWQ6IFN0cmluZ3xIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50XHJcbiAgLy8gUmV0dXJucyBhbiBlbGVtZW50IGdpdmVuIGl0cyBET00gaWQsIG9yIHJldHVybnMgdGhlIGVsZW1lbnQgaXRzZWxmXHJcbiAgLy8gaWYgaXQgd2FzIHBhc3NlZCBkaXJlY3RseS5cclxuICBmdW5jdGlvbiBnZXQoaWQpIHtcclxuICBcdHJldHVybiB0eXBlb2YgaWQgPT09ICdzdHJpbmcnID8gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpIDogaWQ7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZ2V0U3R5bGUoZWw6IEhUTUxFbGVtZW50LCBzdHlsZUF0dHJpYjogU3RyaW5nKTogU3RyaW5nXHJcbiAgLy8gUmV0dXJucyB0aGUgdmFsdWUgZm9yIGEgY2VydGFpbiBzdHlsZSBhdHRyaWJ1dGUgb24gYW4gZWxlbWVudCxcclxuICAvLyBpbmNsdWRpbmcgY29tcHV0ZWQgdmFsdWVzIG9yIHZhbHVlcyBzZXQgdGhyb3VnaCBDU1MuXHJcbiAgZnVuY3Rpb24gZ2V0U3R5bGUoZWwsIHN0eWxlKSB7XHJcbiAgXHR2YXIgdmFsdWUgPSBlbC5zdHlsZVtzdHlsZV0gfHwgKGVsLmN1cnJlbnRTdHlsZSAmJiBlbC5jdXJyZW50U3R5bGVbc3R5bGVdKTtcclxuXHJcbiAgXHRpZiAoKCF2YWx1ZSB8fCB2YWx1ZSA9PT0gJ2F1dG8nKSAmJiBkb2N1bWVudC5kZWZhdWx0Vmlldykge1xyXG4gIFx0XHR2YXIgY3NzID0gZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShlbCwgbnVsbCk7XHJcbiAgXHRcdHZhbHVlID0gY3NzID8gY3NzW3N0eWxlXSA6IG51bGw7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdmFsdWUgPT09ICdhdXRvJyA/IG51bGwgOiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjcmVhdGUodGFnTmFtZTogU3RyaW5nLCBjbGFzc05hbWU/OiBTdHJpbmcsIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICAvLyBDcmVhdGVzIGFuIEhUTUwgZWxlbWVudCB3aXRoIGB0YWdOYW1lYCwgc2V0cyBpdHMgY2xhc3MgdG8gYGNsYXNzTmFtZWAsIGFuZCBvcHRpb25hbGx5IGFwcGVuZHMgaXQgdG8gYGNvbnRhaW5lcmAgZWxlbWVudC5cclxuICBmdW5jdGlvbiBjcmVhdGUkMSh0YWdOYW1lLCBjbGFzc05hbWUsIGNvbnRhaW5lcikge1xyXG4gIFx0dmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcclxuICBcdGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFtZSB8fCAnJztcclxuXHJcbiAgXHRpZiAoY29udGFpbmVyKSB7XHJcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChlbCk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gZWw7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVtb3ZlKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBSZW1vdmVzIGBlbGAgZnJvbSBpdHMgcGFyZW50IGVsZW1lbnRcclxuICBmdW5jdGlvbiByZW1vdmUoZWwpIHtcclxuICBcdHZhciBwYXJlbnQgPSBlbC5wYXJlbnROb2RlO1xyXG4gIFx0aWYgKHBhcmVudCkge1xyXG4gIFx0XHRwYXJlbnQucmVtb3ZlQ2hpbGQoZWwpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGVtcHR5KGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBSZW1vdmVzIGFsbCBvZiBgZWxgJ3MgY2hpbGRyZW4gZWxlbWVudHMgZnJvbSBgZWxgXHJcbiAgZnVuY3Rpb24gZW1wdHkoZWwpIHtcclxuICBcdHdoaWxlIChlbC5maXJzdENoaWxkKSB7XHJcbiAgXHRcdGVsLnJlbW92ZUNoaWxkKGVsLmZpcnN0Q2hpbGQpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHRvRnJvbnQoZWw6IEhUTUxFbGVtZW50KVxyXG4gIC8vIE1ha2VzIGBlbGAgdGhlIGxhc3QgY2hpbGQgb2YgaXRzIHBhcmVudCwgc28gaXQgcmVuZGVycyBpbiBmcm9udCBvZiB0aGUgb3RoZXIgY2hpbGRyZW4uXHJcbiAgZnVuY3Rpb24gdG9Gcm9udChlbCkge1xyXG4gIFx0dmFyIHBhcmVudCA9IGVsLnBhcmVudE5vZGU7XHJcbiAgXHRpZiAocGFyZW50ICYmIHBhcmVudC5sYXN0Q2hpbGQgIT09IGVsKSB7XHJcbiAgXHRcdHBhcmVudC5hcHBlbmRDaGlsZChlbCk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdG9CYWNrKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBNYWtlcyBgZWxgIHRoZSBmaXJzdCBjaGlsZCBvZiBpdHMgcGFyZW50LCBzbyBpdCByZW5kZXJzIGJlaGluZCB0aGUgb3RoZXIgY2hpbGRyZW4uXHJcbiAgZnVuY3Rpb24gdG9CYWNrKGVsKSB7XHJcbiAgXHR2YXIgcGFyZW50ID0gZWwucGFyZW50Tm9kZTtcclxuICBcdGlmIChwYXJlbnQgJiYgcGFyZW50LmZpcnN0Q2hpbGQgIT09IGVsKSB7XHJcbiAgXHRcdHBhcmVudC5pbnNlcnRCZWZvcmUoZWwsIHBhcmVudC5maXJzdENoaWxkKTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBoYXNDbGFzcyhlbDogSFRNTEVsZW1lbnQsIG5hbWU6IFN0cmluZyk6IEJvb2xlYW5cclxuICAvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgZWxlbWVudCdzIGNsYXNzIGF0dHJpYnV0ZSBjb250YWlucyBgbmFtZWAuXHJcbiAgZnVuY3Rpb24gaGFzQ2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc0xpc3QgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRyZXR1cm4gZWwuY2xhc3NMaXN0LmNvbnRhaW5zKG5hbWUpO1xyXG4gIFx0fVxyXG4gIFx0dmFyIGNsYXNzTmFtZSA9IGdldENsYXNzKGVsKTtcclxuICBcdHJldHVybiBjbGFzc05hbWUubGVuZ3RoID4gMCAmJiBuZXcgUmVnRXhwKCcoXnxcXFxccyknICsgbmFtZSArICcoXFxcXHN8JCknKS50ZXN0KGNsYXNzTmFtZSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gYWRkQ2xhc3MoZWw6IEhUTUxFbGVtZW50LCBuYW1lOiBTdHJpbmcpXHJcbiAgLy8gQWRkcyBgbmFtZWAgdG8gdGhlIGVsZW1lbnQncyBjbGFzcyBhdHRyaWJ1dGUuXHJcbiAgZnVuY3Rpb24gYWRkQ2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc0xpc3QgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHR2YXIgY2xhc3NlcyA9IHNwbGl0V29yZHMobmFtZSk7XHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBjbGFzc2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0ZWwuY2xhc3NMaXN0LmFkZChjbGFzc2VzW2ldKTtcclxuICBcdFx0fVxyXG4gIFx0fSBlbHNlIGlmICghaGFzQ2xhc3MoZWwsIG5hbWUpKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSBnZXRDbGFzcyhlbCk7XHJcbiAgXHRcdHNldENsYXNzKGVsLCAoY2xhc3NOYW1lID8gY2xhc3NOYW1lICsgJyAnIDogJycpICsgbmFtZSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVtb3ZlQ2xhc3MoZWw6IEhUTUxFbGVtZW50LCBuYW1lOiBTdHJpbmcpXHJcbiAgLy8gUmVtb3ZlcyBgbmFtZWAgZnJvbSB0aGUgZWxlbWVudCdzIGNsYXNzIGF0dHJpYnV0ZS5cclxuICBmdW5jdGlvbiByZW1vdmVDbGFzcyhlbCwgbmFtZSkge1xyXG4gIFx0aWYgKGVsLmNsYXNzTGlzdCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdGVsLmNsYXNzTGlzdC5yZW1vdmUobmFtZSk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRzZXRDbGFzcyhlbCwgdHJpbSgoJyAnICsgZ2V0Q2xhc3MoZWwpICsgJyAnKS5yZXBsYWNlKCcgJyArIG5hbWUgKyAnICcsICcgJykpKTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzZXRDbGFzcyhlbDogSFRNTEVsZW1lbnQsIG5hbWU6IFN0cmluZylcclxuICAvLyBTZXRzIHRoZSBlbGVtZW50J3MgY2xhc3MuXHJcbiAgZnVuY3Rpb24gc2V0Q2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc05hbWUuYmFzZVZhbCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdGVsLmNsYXNzTmFtZSA9IG5hbWU7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHQvLyBpbiBjYXNlIG9mIFNWRyBlbGVtZW50XHJcbiAgXHRcdGVsLmNsYXNzTmFtZS5iYXNlVmFsID0gbmFtZTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRDbGFzcyhlbDogSFRNTEVsZW1lbnQpOiBTdHJpbmdcclxuICAvLyBSZXR1cm5zIHRoZSBlbGVtZW50J3MgY2xhc3MuXHJcbiAgZnVuY3Rpb24gZ2V0Q2xhc3MoZWwpIHtcclxuICBcdC8vIENoZWNrIGlmIHRoZSBlbGVtZW50IGlzIGFuIFNWR0VsZW1lbnRJbnN0YW5jZSBhbmQgdXNlIHRoZSBjb3JyZXNwb25kaW5nRWxlbWVudCBpbnN0ZWFkXHJcbiAgXHQvLyAoUmVxdWlyZWQgZm9yIGxpbmtlZCBTVkcgZWxlbWVudHMgaW4gSUUxMS4pXHJcbiAgXHRpZiAoZWwuY29ycmVzcG9uZGluZ0VsZW1lbnQpIHtcclxuICBcdFx0ZWwgPSBlbC5jb3JyZXNwb25kaW5nRWxlbWVudDtcclxuICBcdH1cclxuICBcdHJldHVybiBlbC5jbGFzc05hbWUuYmFzZVZhbCA9PT0gdW5kZWZpbmVkID8gZWwuY2xhc3NOYW1lIDogZWwuY2xhc3NOYW1lLmJhc2VWYWw7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gc2V0T3BhY2l0eShlbDogSFRNTEVsZW1lbnQsIG9wYWNpdHk6IE51bWJlcilcclxuICAvLyBTZXQgdGhlIG9wYWNpdHkgb2YgYW4gZWxlbWVudCAoaW5jbHVkaW5nIG9sZCBJRSBzdXBwb3J0KS5cclxuICAvLyBgb3BhY2l0eWAgbXVzdCBiZSBhIG51bWJlciBmcm9tIGAwYCB0byBgMWAuXHJcbiAgZnVuY3Rpb24gc2V0T3BhY2l0eShlbCwgdmFsdWUpIHtcclxuICBcdGlmICgnb3BhY2l0eScgaW4gZWwuc3R5bGUpIHtcclxuICBcdFx0ZWwuc3R5bGUub3BhY2l0eSA9IHZhbHVlO1xyXG4gIFx0fSBlbHNlIGlmICgnZmlsdGVyJyBpbiBlbC5zdHlsZSkge1xyXG4gIFx0XHRfc2V0T3BhY2l0eUlFKGVsLCB2YWx1ZSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBfc2V0T3BhY2l0eUlFKGVsLCB2YWx1ZSkge1xyXG4gIFx0dmFyIGZpbHRlciA9IGZhbHNlLFxyXG4gIFx0ICAgIGZpbHRlck5hbWUgPSAnRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEnO1xyXG5cclxuICBcdC8vIGZpbHRlcnMgY29sbGVjdGlvbiB0aHJvd3MgYW4gZXJyb3IgaWYgd2UgdHJ5IHRvIHJldHJpZXZlIGEgZmlsdGVyIHRoYXQgZG9lc24ndCBleGlzdFxyXG4gIFx0dHJ5IHtcclxuICBcdFx0ZmlsdGVyID0gZWwuZmlsdGVycy5pdGVtKGZpbHRlck5hbWUpO1xyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHQvLyBkb24ndCBzZXQgb3BhY2l0eSB0byAxIGlmIHdlIGhhdmVuJ3QgYWxyZWFkeSBzZXQgYW4gb3BhY2l0eSxcclxuICBcdFx0Ly8gaXQgaXNuJ3QgbmVlZGVkIGFuZCBicmVha3MgdHJhbnNwYXJlbnQgcG5ncy5cclxuICBcdFx0aWYgKHZhbHVlID09PSAxKSB7IHJldHVybjsgfVxyXG4gIFx0fVxyXG5cclxuICBcdHZhbHVlID0gTWF0aC5yb3VuZCh2YWx1ZSAqIDEwMCk7XHJcblxyXG4gIFx0aWYgKGZpbHRlcikge1xyXG4gIFx0XHRmaWx0ZXIuRW5hYmxlZCA9ICh2YWx1ZSAhPT0gMTAwKTtcclxuICBcdFx0ZmlsdGVyLk9wYWNpdHkgPSB2YWx1ZTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGVsLnN0eWxlLmZpbHRlciArPSAnIHByb2dpZDonICsgZmlsdGVyTmFtZSArICcob3BhY2l0eT0nICsgdmFsdWUgKyAnKSc7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdGVzdFByb3AocHJvcHM6IFN0cmluZ1tdKTogU3RyaW5nfGZhbHNlXHJcbiAgLy8gR29lcyB0aHJvdWdoIHRoZSBhcnJheSBvZiBzdHlsZSBuYW1lcyBhbmQgcmV0dXJucyB0aGUgZmlyc3QgbmFtZVxyXG4gIC8vIHRoYXQgaXMgYSB2YWxpZCBzdHlsZSBuYW1lIGZvciBhbiBlbGVtZW50LiBJZiBubyBzdWNoIG5hbWUgaXMgZm91bmQsXHJcbiAgLy8gaXQgcmV0dXJucyBmYWxzZS4gVXNlZnVsIGZvciB2ZW5kb3ItcHJlZml4ZWQgc3R5bGVzIGxpa2UgYHRyYW5zZm9ybWAuXHJcbiAgZnVuY3Rpb24gdGVzdFByb3AocHJvcHMpIHtcclxuICBcdHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdGlmIChwcm9wc1tpXSBpbiBzdHlsZSkge1xyXG4gIFx0XHRcdHJldHVybiBwcm9wc1tpXTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHNldFRyYW5zZm9ybShlbDogSFRNTEVsZW1lbnQsIG9mZnNldDogUG9pbnQsIHNjYWxlPzogTnVtYmVyKVxyXG4gIC8vIFJlc2V0cyB0aGUgM0QgQ1NTIHRyYW5zZm9ybSBvZiBgZWxgIHNvIGl0IGlzIHRyYW5zbGF0ZWQgYnkgYG9mZnNldGAgcGl4ZWxzXHJcbiAgLy8gYW5kIG9wdGlvbmFsbHkgc2NhbGVkIGJ5IGBzY2FsZWAuIERvZXMgbm90IGhhdmUgYW4gZWZmZWN0IGlmIHRoZVxyXG4gIC8vIGJyb3dzZXIgZG9lc24ndCBzdXBwb3J0IDNEIENTUyB0cmFuc2Zvcm1zLlxyXG4gIGZ1bmN0aW9uIHNldFRyYW5zZm9ybShlbCwgb2Zmc2V0LCBzY2FsZSkge1xyXG4gIFx0dmFyIHBvcyA9IG9mZnNldCB8fCBuZXcgUG9pbnQoMCwgMCk7XHJcblxyXG4gIFx0ZWwuc3R5bGVbVFJBTlNGT1JNXSA9XHJcbiAgXHRcdChCcm93c2VyLmllM2QgP1xyXG4gIFx0XHRcdCd0cmFuc2xhdGUoJyArIHBvcy54ICsgJ3B4LCcgKyBwb3MueSArICdweCknIDpcclxuICBcdFx0XHQndHJhbnNsYXRlM2QoJyArIHBvcy54ICsgJ3B4LCcgKyBwb3MueSArICdweCwwKScpICtcclxuICBcdFx0KHNjYWxlID8gJyBzY2FsZSgnICsgc2NhbGUgKyAnKScgOiAnJyk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gc2V0UG9zaXRpb24oZWw6IEhUTUxFbGVtZW50LCBwb3NpdGlvbjogUG9pbnQpXHJcbiAgLy8gU2V0cyB0aGUgcG9zaXRpb24gb2YgYGVsYCB0byBjb29yZGluYXRlcyBzcGVjaWZpZWQgYnkgYHBvc2l0aW9uYCxcclxuICAvLyB1c2luZyBDU1MgdHJhbnNsYXRlIG9yIHRvcC9sZWZ0IHBvc2l0aW9uaW5nIGRlcGVuZGluZyBvbiB0aGUgYnJvd3NlclxyXG4gIC8vICh1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseSB0byBwb3NpdGlvbiBpdHMgbGF5ZXJzKS5cclxuICBmdW5jdGlvbiBzZXRQb3NpdGlvbihlbCwgcG9pbnQpIHtcclxuXHJcbiAgXHQvKmVzbGludC1kaXNhYmxlICovXHJcbiAgXHRlbC5fbGVhZmxldF9wb3MgPSBwb2ludDtcclxuICBcdC8qIGVzbGludC1lbmFibGUgKi9cclxuXHJcbiAgXHRpZiAoQnJvd3Nlci5hbnkzZCkge1xyXG4gIFx0XHRzZXRUcmFuc2Zvcm0oZWwsIHBvaW50KTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGVsLnN0eWxlLmxlZnQgPSBwb2ludC54ICsgJ3B4JztcclxuICBcdFx0ZWwuc3R5bGUudG9wID0gcG9pbnQueSArICdweCc7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZ2V0UG9zaXRpb24oZWw6IEhUTUxFbGVtZW50KTogUG9pbnRcclxuICAvLyBSZXR1cm5zIHRoZSBjb29yZGluYXRlcyBvZiBhbiBlbGVtZW50IHByZXZpb3VzbHkgcG9zaXRpb25lZCB3aXRoIHNldFBvc2l0aW9uLlxyXG4gIGZ1bmN0aW9uIGdldFBvc2l0aW9uKGVsKSB7XHJcbiAgXHQvLyB0aGlzIG1ldGhvZCBpcyBvbmx5IHVzZWQgZm9yIGVsZW1lbnRzIHByZXZpb3VzbHkgcG9zaXRpb25lZCB1c2luZyBzZXRQb3NpdGlvbixcclxuICBcdC8vIHNvIGl0J3Mgc2FmZSB0byBjYWNoZSB0aGUgcG9zaXRpb24gZm9yIHBlcmZvcm1hbmNlXHJcblxyXG4gIFx0cmV0dXJuIGVsLl9sZWFmbGV0X3BvcyB8fCBuZXcgUG9pbnQoMCwgMCk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZGlzYWJsZVRleHRTZWxlY3Rpb24oKVxyXG4gIC8vIFByZXZlbnRzIHRoZSB1c2VyIGZyb20gZ2VuZXJhdGluZyBgc2VsZWN0c3RhcnRgIERPTSBldmVudHMsIHVzdWFsbHkgZ2VuZXJhdGVkXHJcbiAgLy8gd2hlbiB0aGUgdXNlciBkcmFncyB0aGUgbW91c2UgdGhyb3VnaCBhIHBhZ2Ugd2l0aCB0ZXh0LiBVc2VkIGludGVybmFsbHlcclxuICAvLyBieSBMZWFmbGV0IHRvIG92ZXJyaWRlIHRoZSBiZWhhdmlvdXIgb2YgYW55IGNsaWNrLWFuZC1kcmFnIGludGVyYWN0aW9uIG9uXHJcbiAgLy8gdGhlIG1hcC4gQWZmZWN0cyBkcmFnIGludGVyYWN0aW9ucyBvbiB0aGUgd2hvbGUgZG9jdW1lbnQuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBlbmFibGVUZXh0U2VsZWN0aW9uKClcclxuICAvLyBDYW5jZWxzIHRoZSBlZmZlY3RzIG9mIGEgcHJldmlvdXMgW2BMLkRvbVV0aWwuZGlzYWJsZVRleHRTZWxlY3Rpb25gXSgjZG9tdXRpbC1kaXNhYmxldGV4dHNlbGVjdGlvbikuXHJcbiAgdmFyIGRpc2FibGVUZXh0U2VsZWN0aW9uO1xyXG4gIHZhciBlbmFibGVUZXh0U2VsZWN0aW9uO1xyXG4gIHZhciBfdXNlclNlbGVjdDtcclxuICBpZiAoJ29uc2VsZWN0c3RhcnQnIGluIGRvY3VtZW50KSB7XHJcbiAgXHRkaXNhYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0b24od2luZG93LCAnc2VsZWN0c3RhcnQnLCBwcmV2ZW50RGVmYXVsdCk7XHJcbiAgXHR9O1xyXG4gIFx0ZW5hYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0b2ZmKHdpbmRvdywgJ3NlbGVjdHN0YXJ0JywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0fTtcclxuICB9IGVsc2Uge1xyXG4gIFx0dmFyIHVzZXJTZWxlY3RQcm9wZXJ0eSA9IHRlc3RQcm9wKFxyXG4gIFx0XHRbJ3VzZXJTZWxlY3QnLCAnV2Via2l0VXNlclNlbGVjdCcsICdPVXNlclNlbGVjdCcsICdNb3pVc2VyU2VsZWN0JywgJ21zVXNlclNlbGVjdCddKTtcclxuXHJcbiAgXHRkaXNhYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHVzZXJTZWxlY3RQcm9wZXJ0eSkge1xyXG4gIFx0XHRcdHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuICBcdFx0XHRfdXNlclNlbGVjdCA9IHN0eWxlW3VzZXJTZWxlY3RQcm9wZXJ0eV07XHJcbiAgXHRcdFx0c3R5bGVbdXNlclNlbGVjdFByb3BlcnR5XSA9ICdub25lJztcclxuICBcdFx0fVxyXG4gIFx0fTtcclxuICBcdGVuYWJsZVRleHRTZWxlY3Rpb24gPSBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh1c2VyU2VsZWN0UHJvcGVydHkpIHtcclxuICBcdFx0XHRkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGVbdXNlclNlbGVjdFByb3BlcnR5XSA9IF91c2VyU2VsZWN0O1xyXG4gIFx0XHRcdF91c2VyU2VsZWN0ID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGRpc2FibGVJbWFnZURyYWcoKVxyXG4gIC8vIEFzIFtgTC5Eb21VdGlsLmRpc2FibGVUZXh0U2VsZWN0aW9uYF0oI2RvbXV0aWwtZGlzYWJsZXRleHRzZWxlY3Rpb24pLCBidXRcclxuICAvLyBmb3IgYGRyYWdzdGFydGAgRE9NIGV2ZW50cywgdXN1YWxseSBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBkcmFncyBhbiBpbWFnZS5cclxuICBmdW5jdGlvbiBkaXNhYmxlSW1hZ2VEcmFnKCkge1xyXG4gIFx0b24od2luZG93LCAnZHJhZ3N0YXJ0JywgcHJldmVudERlZmF1bHQpO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGVuYWJsZUltYWdlRHJhZygpXHJcbiAgLy8gQ2FuY2VscyB0aGUgZWZmZWN0cyBvZiBhIHByZXZpb3VzIFtgTC5Eb21VdGlsLmRpc2FibGVJbWFnZURyYWdgXSgjZG9tdXRpbC1kaXNhYmxldGV4dHNlbGVjdGlvbikuXHJcbiAgZnVuY3Rpb24gZW5hYmxlSW1hZ2VEcmFnKCkge1xyXG4gIFx0b2ZmKHdpbmRvdywgJ2RyYWdzdGFydCcsIHByZXZlbnREZWZhdWx0KTtcclxuICB9XHJcblxyXG4gIHZhciBfb3V0bGluZUVsZW1lbnQsIF9vdXRsaW5lU3R5bGU7XHJcbiAgLy8gQGZ1bmN0aW9uIHByZXZlbnRPdXRsaW5lKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBNYWtlcyB0aGUgW291dGxpbmVdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0NTUy9vdXRsaW5lKVxyXG4gIC8vIG9mIHRoZSBlbGVtZW50IGBlbGAgaW52aXNpYmxlLiBVc2VkIGludGVybmFsbHkgYnkgTGVhZmxldCB0byBwcmV2ZW50XHJcbiAgLy8gZm9jdXNhYmxlIGVsZW1lbnRzIGZyb20gZGlzcGxheWluZyBhbiBvdXRsaW5lIHdoZW4gdGhlIHVzZXIgcGVyZm9ybXMgYVxyXG4gIC8vIGRyYWcgaW50ZXJhY3Rpb24gb24gdGhlbS5cclxuICBmdW5jdGlvbiBwcmV2ZW50T3V0bGluZShlbGVtZW50KSB7XHJcbiAgXHR3aGlsZSAoZWxlbWVudC50YWJJbmRleCA9PT0gLTEpIHtcclxuICBcdFx0ZWxlbWVudCA9IGVsZW1lbnQucGFyZW50Tm9kZTtcclxuICBcdH1cclxuICBcdGlmICghZWxlbWVudC5zdHlsZSkgeyByZXR1cm47IH1cclxuICBcdHJlc3RvcmVPdXRsaW5lKCk7XHJcbiAgXHRfb3V0bGluZUVsZW1lbnQgPSBlbGVtZW50O1xyXG4gIFx0X291dGxpbmVTdHlsZSA9IGVsZW1lbnQuc3R5bGUub3V0bGluZTtcclxuICBcdGVsZW1lbnQuc3R5bGUub3V0bGluZSA9ICdub25lJztcclxuICBcdG9uKHdpbmRvdywgJ2tleWRvd24nLCByZXN0b3JlT3V0bGluZSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVzdG9yZU91dGxpbmUoKVxyXG4gIC8vIENhbmNlbHMgdGhlIGVmZmVjdHMgb2YgYSBwcmV2aW91cyBbYEwuRG9tVXRpbC5wcmV2ZW50T3V0bGluZWBdKCkuXHJcbiAgZnVuY3Rpb24gcmVzdG9yZU91dGxpbmUoKSB7XHJcbiAgXHRpZiAoIV9vdXRsaW5lRWxlbWVudCkgeyByZXR1cm47IH1cclxuICBcdF9vdXRsaW5lRWxlbWVudC5zdHlsZS5vdXRsaW5lID0gX291dGxpbmVTdHlsZTtcclxuICBcdF9vdXRsaW5lRWxlbWVudCA9IHVuZGVmaW5lZDtcclxuICBcdF9vdXRsaW5lU3R5bGUgPSB1bmRlZmluZWQ7XHJcbiAgXHRvZmYod2luZG93LCAna2V5ZG93bicsIHJlc3RvcmVPdXRsaW5lKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRTaXplZFBhcmVudE5vZGUoZWw6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICAvLyBGaW5kcyB0aGUgY2xvc2VzdCBwYXJlbnQgbm9kZSB3aGljaCBzaXplICh3aWR0aCBhbmQgaGVpZ2h0KSBpcyBub3QgbnVsbC5cclxuICBmdW5jdGlvbiBnZXRTaXplZFBhcmVudE5vZGUoZWxlbWVudCkge1xyXG4gIFx0ZG8ge1xyXG4gIFx0XHRlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlO1xyXG4gIFx0fSB3aGlsZSAoKCFlbGVtZW50Lm9mZnNldFdpZHRoIHx8ICFlbGVtZW50Lm9mZnNldEhlaWdodCkgJiYgZWxlbWVudCAhPT0gZG9jdW1lbnQuYm9keSk7XHJcbiAgXHRyZXR1cm4gZWxlbWVudDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRTY2FsZShlbDogSFRNTEVsZW1lbnQpOiBPYmplY3RcclxuICAvLyBDb21wdXRlcyB0aGUgQ1NTIHNjYWxlIGN1cnJlbnRseSBhcHBsaWVkIG9uIHRoZSBlbGVtZW50LlxyXG4gIC8vIFJldHVybnMgYW4gb2JqZWN0IHdpdGggYHhgIGFuZCBgeWAgbWVtYmVycyBhcyBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBzY2FsZXMgcmVzcGVjdGl2ZWx5LFxyXG4gIC8vIGFuZCBgYm91bmRpbmdDbGllbnRSZWN0YCBhcyB0aGUgcmVzdWx0IG9mIFtgZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRWxlbWVudC9nZXRCb3VuZGluZ0NsaWVudFJlY3QpLlxyXG4gIGZ1bmN0aW9uIGdldFNjYWxlKGVsZW1lbnQpIHtcclxuICBcdHZhciByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8gUmVhZC1vbmx5IGluIG9sZCBicm93c2Vycy5cclxuXHJcbiAgXHRyZXR1cm4ge1xyXG4gIFx0XHR4OiByZWN0LndpZHRoIC8gZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAxLFxyXG4gIFx0XHR5OiByZWN0LmhlaWdodCAvIGVsZW1lbnQub2Zmc2V0SGVpZ2h0IHx8IDEsXHJcbiAgXHRcdGJvdW5kaW5nQ2xpZW50UmVjdDogcmVjdFxyXG4gIFx0fTtcclxuICB9XG5cbiAgdmFyIERvbVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIFRSQU5TRk9STTogVFJBTlNGT1JNLFxuICAgIFRSQU5TSVRJT046IFRSQU5TSVRJT04sXG4gICAgVFJBTlNJVElPTl9FTkQ6IFRSQU5TSVRJT05fRU5ELFxuICAgIGdldDogZ2V0LFxuICAgIGdldFN0eWxlOiBnZXRTdHlsZSxcbiAgICBjcmVhdGU6IGNyZWF0ZSQxLFxuICAgIHJlbW92ZTogcmVtb3ZlLFxuICAgIGVtcHR5OiBlbXB0eSxcbiAgICB0b0Zyb250OiB0b0Zyb250LFxuICAgIHRvQmFjazogdG9CYWNrLFxuICAgIGhhc0NsYXNzOiBoYXNDbGFzcyxcbiAgICBhZGRDbGFzczogYWRkQ2xhc3MsXG4gICAgcmVtb3ZlQ2xhc3M6IHJlbW92ZUNsYXNzLFxuICAgIHNldENsYXNzOiBzZXRDbGFzcyxcbiAgICBnZXRDbGFzczogZ2V0Q2xhc3MsXG4gICAgc2V0T3BhY2l0eTogc2V0T3BhY2l0eSxcbiAgICB0ZXN0UHJvcDogdGVzdFByb3AsXG4gICAgc2V0VHJhbnNmb3JtOiBzZXRUcmFuc2Zvcm0sXG4gICAgc2V0UG9zaXRpb246IHNldFBvc2l0aW9uLFxuICAgIGdldFBvc2l0aW9uOiBnZXRQb3NpdGlvbixcbiAgICBnZXQgZGlzYWJsZVRleHRTZWxlY3Rpb24gKCkgeyByZXR1cm4gZGlzYWJsZVRleHRTZWxlY3Rpb247IH0sXG4gICAgZ2V0IGVuYWJsZVRleHRTZWxlY3Rpb24gKCkgeyByZXR1cm4gZW5hYmxlVGV4dFNlbGVjdGlvbjsgfSxcbiAgICBkaXNhYmxlSW1hZ2VEcmFnOiBkaXNhYmxlSW1hZ2VEcmFnLFxuICAgIGVuYWJsZUltYWdlRHJhZzogZW5hYmxlSW1hZ2VEcmFnLFxuICAgIHByZXZlbnRPdXRsaW5lOiBwcmV2ZW50T3V0bGluZSxcbiAgICByZXN0b3JlT3V0bGluZTogcmVzdG9yZU91dGxpbmUsXG4gICAgZ2V0U2l6ZWRQYXJlbnROb2RlOiBnZXRTaXplZFBhcmVudE5vZGUsXG4gICAgZ2V0U2NhbGU6IGdldFNjYWxlXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIERvbUV2ZW50XHJcbiAgICogVXRpbGl0eSBmdW5jdGlvbnMgdG8gd29yayB3aXRoIHRoZSBbRE9NIGV2ZW50c10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0V2ZW50KSwgdXNlZCBieSBMZWFmbGV0IGludGVybmFsbHkuXHJcbiAgICovXHJcblxyXG4gIC8vIEluc3BpcmVkIGJ5IEpvaG4gUmVzaWcsIERlYW4gRWR3YXJkcyBhbmQgWVVJIGFkZEV2ZW50IGltcGxlbWVudGF0aW9ucy5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIG9uKGVsOiBIVE1MRWxlbWVudCwgdHlwZXM6IFN0cmluZywgZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIC8vIEFkZHMgYSBsaXN0ZW5lciBmdW5jdGlvbiAoYGZuYCkgdG8gYSBwYXJ0aWN1bGFyIERPTSBldmVudCB0eXBlIG9mIHRoZVxyXG4gIC8vIGVsZW1lbnQgYGVsYC4gWW91IGNhbiBvcHRpb25hbGx5IHNwZWNpZnkgdGhlIGNvbnRleHQgb2YgdGhlIGxpc3RlbmVyXHJcbiAgLy8gKG9iamVjdCB0aGUgYHRoaXNgIGtleXdvcmQgd2lsbCBwb2ludCB0bykuIFlvdSBjYW4gYWxzbyBwYXNzIHNldmVyYWxcclxuICAvLyBzcGFjZS1zZXBhcmF0ZWQgdHlwZXMgKGUuZy4gYCdjbGljayBkYmxjbGljaydgKS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZ1bmN0aW9uIG9uKGVsOiBIVE1MRWxlbWVudCwgZXZlbnRNYXA6IE9iamVjdCwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBBZGRzIGEgc2V0IG9mIHR5cGUvbGlzdGVuZXIgcGFpcnMsIGUuZy4gYHtjbGljazogb25DbGljaywgbW91c2Vtb3ZlOiBvbk1vdXNlTW92ZX1gXHJcbiAgZnVuY3Rpb24gb24ob2JqLCB0eXBlcywgZm4sIGNvbnRleHQpIHtcclxuXHJcbiAgXHRpZiAodHlwZXMgJiYgdHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRmb3IgKHZhciB0eXBlIGluIHR5cGVzKSB7XHJcbiAgXHRcdFx0YWRkT25lKG9iaiwgdHlwZSwgdHlwZXNbdHlwZV0sIGZuKTtcclxuICBcdFx0fVxyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0dHlwZXMgPSBzcGxpdFdvcmRzKHR5cGVzKTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdGFkZE9uZShvYmosIHR5cGVzW2ldLCBmbiwgY29udGV4dCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIHZhciBldmVudHNLZXkgPSAnX2xlYWZsZXRfZXZlbnRzJztcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIG9mZihlbDogSFRNTEVsZW1lbnQsIHR5cGVzOiBTdHJpbmcsIGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGEgcHJldmlvdXNseSBhZGRlZCBsaXN0ZW5lciBmdW5jdGlvbi5cclxuICAvLyBOb3RlIHRoYXQgaWYgeW91IHBhc3NlZCBhIGN1c3RvbSBjb250ZXh0IHRvIG9uLCB5b3UgbXVzdCBwYXNzIHRoZSBzYW1lXHJcbiAgLy8gY29udGV4dCB0byBgb2ZmYCBpbiBvcmRlciB0byByZW1vdmUgdGhlIGxpc3RlbmVyLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZnVuY3Rpb24gb2ZmKGVsOiBIVE1MRWxlbWVudCwgZXZlbnRNYXA6IE9iamVjdCwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGEgc2V0IG9mIHR5cGUvbGlzdGVuZXIgcGFpcnMsIGUuZy4gYHtjbGljazogb25DbGljaywgbW91c2Vtb3ZlOiBvbk1vdXNlTW92ZX1gXHJcblxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmdW5jdGlvbiBvZmYoZWw6IEhUTUxFbGVtZW50LCB0eXBlczogU3RyaW5nKTogdGhpc1xyXG4gIC8vIFJlbW92ZXMgYWxsIHByZXZpb3VzbHkgYWRkZWQgbGlzdGVuZXJzIG9mIGdpdmVuIHR5cGVzLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZnVuY3Rpb24gb2ZmKGVsOiBIVE1MRWxlbWVudCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGFsbCBwcmV2aW91c2x5IGFkZGVkIGxpc3RlbmVycyBmcm9tIGdpdmVuIEhUTUxFbGVtZW50XHJcbiAgZnVuY3Rpb24gb2ZmKG9iaiwgdHlwZXMsIGZuLCBjb250ZXh0KSB7XHJcblxyXG4gIFx0aWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHtcclxuICBcdFx0YmF0Y2hSZW1vdmUob2JqKTtcclxuICBcdFx0ZGVsZXRlIG9ialtldmVudHNLZXldO1xyXG5cclxuICBcdH0gZWxzZSBpZiAodHlwZXMgJiYgdHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRmb3IgKHZhciB0eXBlIGluIHR5cGVzKSB7XHJcbiAgXHRcdFx0cmVtb3ZlT25lKG9iaiwgdHlwZSwgdHlwZXNbdHlwZV0sIGZuKTtcclxuICBcdFx0fVxyXG5cclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikge1xyXG4gIFx0XHRcdGJhdGNoUmVtb3ZlKG9iaiwgZnVuY3Rpb24gKHR5cGUpIHtcclxuICBcdFx0XHRcdHJldHVybiBpbmRleE9mKHR5cGVzLCB0eXBlKSAhPT0gLTE7XHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRyZW1vdmVPbmUob2JqLCB0eXBlc1tpXSwgZm4sIGNvbnRleHQpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gYmF0Y2hSZW1vdmUob2JqLCBmaWx0ZXJGbikge1xyXG4gIFx0Zm9yICh2YXIgaWQgaW4gb2JqW2V2ZW50c0tleV0pIHtcclxuICBcdFx0dmFyIHR5cGUgPSBpZC5zcGxpdCgvXFxkLylbMF07XHJcbiAgXHRcdGlmICghZmlsdGVyRm4gfHwgZmlsdGVyRm4odHlwZSkpIHtcclxuICBcdFx0XHRyZW1vdmVPbmUob2JqLCB0eXBlLCBudWxsLCBudWxsLCBpZCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9XHJcblxyXG4gIHZhciBtb3VzZVN1YnN0ID0ge1xyXG4gIFx0bW91c2VlbnRlcjogJ21vdXNlb3ZlcicsXHJcbiAgXHRtb3VzZWxlYXZlOiAnbW91c2VvdXQnLFxyXG4gIFx0d2hlZWw6ICEoJ29ud2hlZWwnIGluIHdpbmRvdykgJiYgJ21vdXNld2hlZWwnXHJcbiAgfTtcclxuXHJcbiAgZnVuY3Rpb24gYWRkT25lKG9iaiwgdHlwZSwgZm4sIGNvbnRleHQpIHtcclxuICBcdHZhciBpZCA9IHR5cGUgKyBzdGFtcChmbikgKyAoY29udGV4dCA/ICdfJyArIHN0YW1wKGNvbnRleHQpIDogJycpO1xyXG5cclxuICBcdGlmIChvYmpbZXZlbnRzS2V5XSAmJiBvYmpbZXZlbnRzS2V5XVtpZF0pIHsgcmV0dXJuIHRoaXM7IH1cclxuXHJcbiAgXHR2YXIgaGFuZGxlciA9IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdHJldHVybiBmbi5jYWxsKGNvbnRleHQgfHwgb2JqLCBlIHx8IHdpbmRvdy5ldmVudCk7XHJcbiAgXHR9O1xyXG5cclxuICBcdHZhciBvcmlnaW5hbEhhbmRsZXIgPSBoYW5kbGVyO1xyXG5cclxuICBcdGlmICghQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnBvaW50ZXIgJiYgdHlwZS5pbmRleE9mKCd0b3VjaCcpID09PSAwKSB7XHJcbiAgXHRcdC8vIE5lZWRzIERvbUV2ZW50LlBvaW50ZXIuanNcclxuICBcdFx0aGFuZGxlciA9IGFkZFBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpO1xyXG5cclxuICBcdH0gZWxzZSBpZiAoQnJvd3Nlci50b3VjaCAmJiAodHlwZSA9PT0gJ2RibGNsaWNrJykpIHtcclxuICBcdFx0aGFuZGxlciA9IGFkZERvdWJsZVRhcExpc3RlbmVyKG9iaiwgaGFuZGxlcik7XHJcblxyXG4gIFx0fSBlbHNlIGlmICgnYWRkRXZlbnRMaXN0ZW5lcicgaW4gb2JqKSB7XHJcblxyXG4gIFx0XHRpZiAodHlwZSA9PT0gJ3RvdWNoc3RhcnQnIHx8IHR5cGUgPT09ICd0b3VjaG1vdmUnIHx8IHR5cGUgPT09ICd3aGVlbCcgfHwgIHR5cGUgPT09ICdtb3VzZXdoZWVsJykge1xyXG4gIFx0XHRcdG9iai5hZGRFdmVudExpc3RlbmVyKG1vdXNlU3Vic3RbdHlwZV0gfHwgdHlwZSwgaGFuZGxlciwgQnJvd3Nlci5wYXNzaXZlRXZlbnRzID8ge3Bhc3NpdmU6IGZhbHNlfSA6IGZhbHNlKTtcclxuXHJcbiAgXHRcdH0gZWxzZSBpZiAodHlwZSA9PT0gJ21vdXNlZW50ZXInIHx8IHR5cGUgPT09ICdtb3VzZWxlYXZlJykge1xyXG4gIFx0XHRcdGhhbmRsZXIgPSBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHRcdFx0ZSA9IGUgfHwgd2luZG93LmV2ZW50O1xyXG4gIFx0XHRcdFx0aWYgKGlzRXh0ZXJuYWxUYXJnZXQob2JqLCBlKSkge1xyXG4gIFx0XHRcdFx0XHRvcmlnaW5hbEhhbmRsZXIoZSk7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fTtcclxuICBcdFx0XHRvYmouYWRkRXZlbnRMaXN0ZW5lcihtb3VzZVN1YnN0W3R5cGVdLCBoYW5kbGVyLCBmYWxzZSk7XHJcblxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG9iai5hZGRFdmVudExpc3RlbmVyKHR5cGUsIG9yaWdpbmFsSGFuZGxlciwgZmFsc2UpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0b2JqLmF0dGFjaEV2ZW50KCdvbicgKyB0eXBlLCBoYW5kbGVyKTtcclxuICBcdH1cclxuXHJcbiAgXHRvYmpbZXZlbnRzS2V5XSA9IG9ialtldmVudHNLZXldIHx8IHt9O1xyXG4gIFx0b2JqW2V2ZW50c0tleV1baWRdID0gaGFuZGxlcjtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHJlbW92ZU9uZShvYmosIHR5cGUsIGZuLCBjb250ZXh0LCBpZCkge1xyXG4gIFx0aWQgPSBpZCB8fCB0eXBlICsgc3RhbXAoZm4pICsgKGNvbnRleHQgPyAnXycgKyBzdGFtcChjb250ZXh0KSA6ICcnKTtcclxuICBcdHZhciBoYW5kbGVyID0gb2JqW2V2ZW50c0tleV0gJiYgb2JqW2V2ZW50c0tleV1baWRdO1xyXG5cclxuICBcdGlmICghaGFuZGxlcikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdGlmICghQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnBvaW50ZXIgJiYgdHlwZS5pbmRleE9mKCd0b3VjaCcpID09PSAwKSB7XHJcbiAgXHRcdHJlbW92ZVBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpO1xyXG5cclxuICBcdH0gZWxzZSBpZiAoQnJvd3Nlci50b3VjaCAmJiAodHlwZSA9PT0gJ2RibGNsaWNrJykpIHtcclxuICBcdFx0cmVtb3ZlRG91YmxlVGFwTGlzdGVuZXIob2JqLCBoYW5kbGVyKTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKCdyZW1vdmVFdmVudExpc3RlbmVyJyBpbiBvYmopIHtcclxuXHJcbiAgXHRcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKG1vdXNlU3Vic3RbdHlwZV0gfHwgdHlwZSwgaGFuZGxlciwgZmFsc2UpO1xyXG5cclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdG9iai5kZXRhY2hFdmVudCgnb24nICsgdHlwZSwgaGFuZGxlcik7XHJcbiAgXHR9XHJcblxyXG4gIFx0b2JqW2V2ZW50c0tleV1baWRdID0gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzdG9wUHJvcGFnYXRpb24oZXY6IERPTUV2ZW50KTogdGhpc1xyXG4gIC8vIFN0b3AgdGhlIGdpdmVuIGV2ZW50IGZyb20gcHJvcGFnYXRpb24gdG8gcGFyZW50IGVsZW1lbnRzLiBVc2VkIGluc2lkZSB0aGUgbGlzdGVuZXIgZnVuY3Rpb25zOlxyXG4gIC8vIGBgYGpzXHJcbiAgLy8gTC5Eb21FdmVudC5vbihkaXYsICdjbGljaycsIGZ1bmN0aW9uIChldikge1xyXG4gIC8vIFx0TC5Eb21FdmVudC5zdG9wUHJvcGFnYXRpb24oZXYpO1xyXG4gIC8vIH0pO1xyXG4gIC8vIGBgYFxyXG4gIGZ1bmN0aW9uIHN0b3BQcm9wYWdhdGlvbihlKSB7XHJcblxyXG4gIFx0aWYgKGUuc3RvcFByb3BhZ2F0aW9uKSB7XHJcbiAgXHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgXHR9IGVsc2UgaWYgKGUub3JpZ2luYWxFdmVudCkgeyAgLy8gSW4gY2FzZSBvZiBMZWFmbGV0IGV2ZW50LlxyXG4gIFx0XHRlLm9yaWdpbmFsRXZlbnQuX3N0b3BwZWQgPSB0cnVlO1xyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0ZS5jYW5jZWxCdWJibGUgPSB0cnVlO1xyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbihlbDogSFRNTEVsZW1lbnQpOiB0aGlzXHJcbiAgLy8gQWRkcyBgc3RvcFByb3BhZ2F0aW9uYCB0byB0aGUgZWxlbWVudCdzIGAnd2hlZWwnYCBldmVudHMgKHBsdXMgYnJvd3NlciB2YXJpYW50cykuXHJcbiAgZnVuY3Rpb24gZGlzYWJsZVNjcm9sbFByb3BhZ2F0aW9uKGVsKSB7XHJcbiAgXHRhZGRPbmUoZWwsICd3aGVlbCcsIHN0b3BQcm9wYWdhdGlvbik7XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbihlbDogSFRNTEVsZW1lbnQpOiB0aGlzXHJcbiAgLy8gQWRkcyBgc3RvcFByb3BhZ2F0aW9uYCB0byB0aGUgZWxlbWVudCdzIGAnY2xpY2snYCwgYCdkYmxjbGljaydgLCBgJ2NvbnRleHRtZW51J2AsXHJcbiAgLy8gYCdtb3VzZWRvd24nYCBhbmQgYCd0b3VjaHN0YXJ0J2AgZXZlbnRzIChwbHVzIGJyb3dzZXIgdmFyaWFudHMpLlxyXG4gIGZ1bmN0aW9uIGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGVsKSB7XHJcbiAgXHRvbihlbCwgJ21vdXNlZG93biB0b3VjaHN0YXJ0IGRibGNsaWNrIGNvbnRleHRtZW51Jywgc3RvcFByb3BhZ2F0aW9uKTtcclxuICBcdGVsWydfbGVhZmxldF9kaXNhYmxlX2NsaWNrJ10gPSB0cnVlO1xyXG4gIFx0cmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcHJldmVudERlZmF1bHQoZXY6IERPTUV2ZW50KTogdGhpc1xyXG4gIC8vIFByZXZlbnRzIHRoZSBkZWZhdWx0IGFjdGlvbiBvZiB0aGUgRE9NIEV2ZW50IGBldmAgZnJvbSBoYXBwZW5pbmcgKHN1Y2ggYXNcclxuICAvLyBmb2xsb3dpbmcgYSBsaW5rIGluIHRoZSBocmVmIG9mIHRoZSBhIGVsZW1lbnQsIG9yIGRvaW5nIGEgUE9TVCByZXF1ZXN0XHJcbiAgLy8gd2l0aCBwYWdlIHJlbG9hZCB3aGVuIGEgYDxmb3JtPmAgaXMgc3VibWl0dGVkKS5cclxuICAvLyBVc2UgaXQgaW5zaWRlIGxpc3RlbmVyIGZ1bmN0aW9ucy5cclxuICBmdW5jdGlvbiBwcmV2ZW50RGVmYXVsdChlKSB7XHJcbiAgXHRpZiAoZS5wcmV2ZW50RGVmYXVsdCkge1xyXG4gIFx0XHRlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRlLnJldHVyblZhbHVlID0gZmFsc2U7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzdG9wKGV2OiBET01FdmVudCk6IHRoaXNcclxuICAvLyBEb2VzIGBzdG9wUHJvcGFnYXRpb25gIGFuZCBgcHJldmVudERlZmF1bHRgIGF0IHRoZSBzYW1lIHRpbWUuXHJcbiAgZnVuY3Rpb24gc3RvcChlKSB7XHJcbiAgXHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdHN0b3BQcm9wYWdhdGlvbihlKTtcclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGdldFByb3BhZ2F0aW9uUGF0aChldjogRE9NRXZlbnQpOiBBcnJheVxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtgRXZlbnQuY29tcG9zZWRQYXRoKClgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnQvY29tcG9zZWRQYXRoKS5cclxuICAvLyBSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGBIVE1MRWxlbWVudGBzIHRoYXQgdGhlIGdpdmVuIERPTSBldmVudFxyXG4gIC8vIHNob3VsZCBwcm9wYWdhdGUgdG8gKGlmIG5vdCBzdG9wcGVkKS5cclxuICBmdW5jdGlvbiBnZXRQcm9wYWdhdGlvblBhdGgoZXYpIHtcclxuICBcdGlmIChldi5jb21wb3NlZFBhdGgpIHtcclxuICBcdFx0cmV0dXJuIGV2LmNvbXBvc2VkUGF0aCgpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBwYXRoID0gW107XHJcbiAgXHR2YXIgZWwgPSBldi50YXJnZXQ7XHJcblxyXG4gIFx0d2hpbGUgKGVsKSB7XHJcbiAgXHRcdHBhdGgucHVzaChlbCk7XHJcbiAgXHRcdGVsID0gZWwucGFyZW50Tm9kZTtcclxuICBcdH1cclxuICBcdHJldHVybiBwYXRoO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRNb3VzZVBvc2l0aW9uKGV2OiBET01FdmVudCwgY29udGFpbmVyPzogSFRNTEVsZW1lbnQpOiBQb2ludFxyXG4gIC8vIEdldHMgbm9ybWFsaXplZCBtb3VzZSBwb3NpdGlvbiBmcm9tIGEgRE9NIGV2ZW50IHJlbGF0aXZlIHRvIHRoZVxyXG4gIC8vIGBjb250YWluZXJgIChib3JkZXIgZXhjbHVkZWQpIG9yIHRvIHRoZSB3aG9sZSBwYWdlIGlmIG5vdCBzcGVjaWZpZWQuXHJcbiAgZnVuY3Rpb24gZ2V0TW91c2VQb3NpdGlvbihlLCBjb250YWluZXIpIHtcclxuICBcdGlmICghY29udGFpbmVyKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoZS5jbGllbnRYLCBlLmNsaWVudFkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBzY2FsZSA9IGdldFNjYWxlKGNvbnRhaW5lciksXHJcbiAgXHQgICAgb2Zmc2V0ID0gc2NhbGUuYm91bmRpbmdDbGllbnRSZWN0OyAvLyBsZWZ0IGFuZCB0b3AgIHZhbHVlcyBhcmUgaW4gcGFnZSBzY2FsZSAobGlrZSB0aGUgZXZlbnQgY2xpZW50WC9ZKVxyXG5cclxuICBcdHJldHVybiBuZXcgUG9pbnQoXHJcbiAgXHRcdC8vIG9mZnNldC5sZWZ0L3RvcCB2YWx1ZXMgYXJlIGluIHBhZ2Ugc2NhbGUgKGxpa2UgY2xpZW50WC9ZKSxcclxuICBcdFx0Ly8gd2hlcmVhcyBjbGllbnRMZWZ0L1RvcCAoYm9yZGVyIHdpZHRoKSB2YWx1ZXMgYXJlIHRoZSBvcmlnaW5hbCB2YWx1ZXMgKGJlZm9yZSBDU1Mgc2NhbGUgYXBwbGllcykuXHJcbiAgXHRcdChlLmNsaWVudFggLSBvZmZzZXQubGVmdCkgLyBzY2FsZS54IC0gY29udGFpbmVyLmNsaWVudExlZnQsXHJcbiAgXHRcdChlLmNsaWVudFkgLSBvZmZzZXQudG9wKSAvIHNjYWxlLnkgLSBjb250YWluZXIuY2xpZW50VG9wXHJcbiAgXHQpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vICBleGNlcHQgLCBTYWZhcmkgYW5kXHJcbiAgLy8gV2UgbmVlZCBkb3VibGUgdGhlIHNjcm9sbCBwaXhlbHMgKHNlZSAjNzQwMyBhbmQgIzQ1MzgpIGZvciBhbGwgQnJvd3NlcnNcclxuICAvLyBleGNlcHQgT1NYIChNYWMpIC0+IDN4LCBDaHJvbWUgcnVubmluZyBvbiBMaW51eCAxeFxyXG5cclxuICB2YXIgd2hlZWxQeEZhY3RvciA9XHJcbiAgXHQoQnJvd3Nlci5saW51eCAmJiBCcm93c2VyLmNocm9tZSkgPyB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyA6XHJcbiAgXHRCcm93c2VyLm1hYyA/IHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvICogMyA6XHJcbiAgXHR3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyA+IDAgPyAyICogd2luZG93LmRldmljZVBpeGVsUmF0aW8gOiAxO1xyXG4gIC8vIEBmdW5jdGlvbiBnZXRXaGVlbERlbHRhKGV2OiBET01FdmVudCk6IE51bWJlclxyXG4gIC8vIEdldHMgbm9ybWFsaXplZCB3aGVlbCBkZWx0YSBmcm9tIGEgd2hlZWwgRE9NIGV2ZW50LCBpbiB2ZXJ0aWNhbFxyXG4gIC8vIHBpeGVscyBzY3JvbGxlZCAobmVnYXRpdmUgaWYgc2Nyb2xsaW5nIGRvd24pLlxyXG4gIC8vIEV2ZW50cyBmcm9tIHBvaW50aW5nIGRldmljZXMgd2l0aG91dCBwcmVjaXNlIHNjcm9sbGluZyBhcmUgbWFwcGVkIHRvXHJcbiAgLy8gYSBiZXN0IGd1ZXNzIG9mIDYwIHBpeGVscy5cclxuICBmdW5jdGlvbiBnZXRXaGVlbERlbHRhKGUpIHtcclxuICBcdHJldHVybiAoQnJvd3Nlci5lZGdlKSA/IGUud2hlZWxEZWx0YVkgLyAyIDogLy8gRG9uJ3QgdHJ1c3Qgd2luZG93LWdlb21ldHJ5LWJhc2VkIGRlbHRhXHJcbiAgXHQgICAgICAgKGUuZGVsdGFZICYmIGUuZGVsdGFNb2RlID09PSAwKSA/IC1lLmRlbHRhWSAvIHdoZWVsUHhGYWN0b3IgOiAvLyBQaXhlbHNcclxuICBcdCAgICAgICAoZS5kZWx0YVkgJiYgZS5kZWx0YU1vZGUgPT09IDEpID8gLWUuZGVsdGFZICogMjAgOiAvLyBMaW5lc1xyXG4gIFx0ICAgICAgIChlLmRlbHRhWSAmJiBlLmRlbHRhTW9kZSA9PT0gMikgPyAtZS5kZWx0YVkgKiA2MCA6IC8vIFBhZ2VzXHJcbiAgXHQgICAgICAgKGUuZGVsdGFYIHx8IGUuZGVsdGFaKSA/IDAgOlx0Ly8gU2tpcCBob3Jpem9udGFsL2RlcHRoIHdoZWVsIGV2ZW50c1xyXG4gIFx0ICAgICAgIGUud2hlZWxEZWx0YSA/IChlLndoZWVsRGVsdGFZIHx8IGUud2hlZWxEZWx0YSkgLyAyIDogLy8gTGVnYWN5IElFIHBpeGVsc1xyXG4gIFx0ICAgICAgIChlLmRldGFpbCAmJiBNYXRoLmFicyhlLmRldGFpbCkgPCAzMjc2NSkgPyAtZS5kZXRhaWwgKiAyMCA6IC8vIExlZ2FjeSBNb3ogbGluZXNcclxuICBcdCAgICAgICBlLmRldGFpbCA/IGUuZGV0YWlsIC8gLTMyNzY1ICogNjAgOiAvLyBMZWdhY3kgTW96IHBhZ2VzXHJcbiAgXHQgICAgICAgMDtcclxuICB9XHJcblxyXG4gIC8vIGNoZWNrIGlmIGVsZW1lbnQgcmVhbGx5IGxlZnQvZW50ZXJlZCB0aGUgZXZlbnQgdGFyZ2V0IChmb3IgbW91c2VlbnRlci9tb3VzZWxlYXZlKVxyXG4gIGZ1bmN0aW9uIGlzRXh0ZXJuYWxUYXJnZXQoZWwsIGUpIHtcclxuXHJcbiAgXHR2YXIgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldDtcclxuXHJcbiAgXHRpZiAoIXJlbGF0ZWQpIHsgcmV0dXJuIHRydWU7IH1cclxuXHJcbiAgXHR0cnkge1xyXG4gIFx0XHR3aGlsZSAocmVsYXRlZCAmJiAocmVsYXRlZCAhPT0gZWwpKSB7XHJcbiAgXHRcdFx0cmVsYXRlZCA9IHJlbGF0ZWQucGFyZW50Tm9kZTtcclxuICBcdFx0fVxyXG4gIFx0fSBjYXRjaCAoZXJyKSB7XHJcbiAgXHRcdHJldHVybiBmYWxzZTtcclxuICBcdH1cclxuICBcdHJldHVybiAocmVsYXRlZCAhPT0gZWwpO1xyXG4gIH1cblxuICB2YXIgRG9tRXZlbnQgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIG9uOiBvbixcbiAgICBvZmY6IG9mZixcbiAgICBzdG9wUHJvcGFnYXRpb246IHN0b3BQcm9wYWdhdGlvbixcbiAgICBkaXNhYmxlU2Nyb2xsUHJvcGFnYXRpb246IGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbixcbiAgICBkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbjogZGlzYWJsZUNsaWNrUHJvcGFnYXRpb24sXG4gICAgcHJldmVudERlZmF1bHQ6IHByZXZlbnREZWZhdWx0LFxuICAgIHN0b3A6IHN0b3AsXG4gICAgZ2V0UHJvcGFnYXRpb25QYXRoOiBnZXRQcm9wYWdhdGlvblBhdGgsXG4gICAgZ2V0TW91c2VQb3NpdGlvbjogZ2V0TW91c2VQb3NpdGlvbixcbiAgICBnZXRXaGVlbERlbHRhOiBnZXRXaGVlbERlbHRhLFxuICAgIGlzRXh0ZXJuYWxUYXJnZXQ6IGlzRXh0ZXJuYWxUYXJnZXQsXG4gICAgYWRkTGlzdGVuZXI6IG9uLFxuICAgIHJlbW92ZUxpc3RlbmVyOiBvZmZcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgUG9zQW5pbWF0aW9uXG4gICAqIEBha2EgTC5Qb3NBbmltYXRpb25cbiAgICogQGluaGVyaXRzIEV2ZW50ZWRcbiAgICogVXNlZCBpbnRlcm5hbGx5IGZvciBwYW5uaW5nIGFuaW1hdGlvbnMsIHV0aWxpemluZyBDU1MzIFRyYW5zaXRpb25zIGZvciBtb2Rlcm4gYnJvd3NlcnMgYW5kIGEgdGltZXIgZmFsbGJhY2sgZm9yIElFNi05LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBqc1xuICAgKiB2YXIgbXlQb3NpdGlvbk1hcmtlciA9IEwubWFya2VyKFs0OC44NjQ3MTYsIDIuMjk0Njk0XSkuYWRkVG8obWFwKTtcbiAgICpcbiAgICogbXlQb3NpdGlvbk1hcmtlci5vbihcImNsaWNrXCIsIGZ1bmN0aW9uKCkge1xuICAgKiBcdHZhciBwb3MgPSBtYXAubGF0TG5nVG9MYXllclBvaW50KG15UG9zaXRpb25NYXJrZXIuZ2V0TGF0TG5nKCkpO1xuICAgKiBcdHBvcy55IC09IDI1O1xuICAgKiBcdHZhciBmeCA9IG5ldyBMLlBvc0FuaW1hdGlvbigpO1xuICAgKlxuICAgKiBcdGZ4Lm9uY2UoJ2VuZCcsZnVuY3Rpb24oKSB7XG4gICAqIFx0XHRwb3MueSArPSAyNTtcbiAgICogXHRcdGZ4LnJ1bihteVBvc2l0aW9uTWFya2VyLl9pY29uLCBwb3MsIDAuOCk7XG4gICAqIFx0fSk7XG4gICAqXG4gICAqIFx0ZngucnVuKG15UG9zaXRpb25NYXJrZXIuX2ljb24sIHBvcywgMC4zKTtcbiAgICogfSk7XG4gICAqXG4gICAqIGBgYFxuICAgKlxuICAgKiBAY29uc3RydWN0b3IgTC5Qb3NBbmltYXRpb24oKVxuICAgKiBDcmVhdGVzIGEgYFBvc0FuaW1hdGlvbmAgb2JqZWN0LlxuICAgKlxuICAgKi9cblxuICB2YXIgUG9zQW5pbWF0aW9uID0gRXZlbnRlZC5leHRlbmQoe1xuXG4gIFx0Ly8gQG1ldGhvZCBydW4oZWw6IEhUTUxFbGVtZW50LCBuZXdQb3M6IFBvaW50LCBkdXJhdGlvbj86IE51bWJlciwgZWFzZUxpbmVhcml0eT86IE51bWJlcilcbiAgXHQvLyBSdW4gYW4gYW5pbWF0aW9uIG9mIGEgZ2l2ZW4gZWxlbWVudCB0byBhIG5ldyBwb3NpdGlvbiwgb3B0aW9uYWxseSBzZXR0aW5nXG4gIFx0Ly8gZHVyYXRpb24gaW4gc2Vjb25kcyAoYDAuMjVgIGJ5IGRlZmF1bHQpIGFuZCBlYXNpbmcgbGluZWFyaXR5IGZhY3RvciAoM3JkXG4gIFx0Ly8gYXJndW1lbnQgb2YgdGhlIFtjdWJpYyBiZXppZXIgY3VydmVdKGh0dHBzOi8vY3ViaWMtYmV6aWVyLmNvbS8jMCwwLC41LDEpLFxuICBcdC8vIGAwLjVgIGJ5IGRlZmF1bHQpLlxuICBcdHJ1bjogZnVuY3Rpb24gKGVsLCBuZXdQb3MsIGR1cmF0aW9uLCBlYXNlTGluZWFyaXR5KSB7XG4gIFx0XHR0aGlzLnN0b3AoKTtcblxuICBcdFx0dGhpcy5fZWwgPSBlbDtcbiAgXHRcdHRoaXMuX2luUHJvZ3Jlc3MgPSB0cnVlO1xuICBcdFx0dGhpcy5fZHVyYXRpb24gPSBkdXJhdGlvbiB8fCAwLjI1O1xuICBcdFx0dGhpcy5fZWFzZU91dFBvd2VyID0gMSAvIE1hdGgubWF4KGVhc2VMaW5lYXJpdHkgfHwgMC41LCAwLjIpO1xuXG4gIFx0XHR0aGlzLl9zdGFydFBvcyA9IGdldFBvc2l0aW9uKGVsKTtcbiAgXHRcdHRoaXMuX29mZnNldCA9IG5ld1Bvcy5zdWJ0cmFjdCh0aGlzLl9zdGFydFBvcyk7XG4gIFx0XHR0aGlzLl9zdGFydFRpbWUgPSArbmV3IERhdGUoKTtcblxuICBcdFx0Ly8gQGV2ZW50IHN0YXJ0OiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYW5pbWF0aW9uIHN0YXJ0c1xuICBcdFx0dGhpcy5maXJlKCdzdGFydCcpO1xuXG4gIFx0XHR0aGlzLl9hbmltYXRlKCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc3RvcCgpXG4gIFx0Ly8gU3RvcHMgdGhlIGFuaW1hdGlvbiAoaWYgY3VycmVudGx5IHJ1bm5pbmcpLlxuICBcdHN0b3A6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5faW5Qcm9ncmVzcykgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fc3RlcCh0cnVlKTtcbiAgXHRcdHRoaXMuX2NvbXBsZXRlKCk7XG4gIFx0fSxcblxuICBcdF9hbmltYXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyBhbmltYXRpb24gbG9vcFxuICBcdFx0dGhpcy5fYW5pbUlkID0gcmVxdWVzdEFuaW1GcmFtZSh0aGlzLl9hbmltYXRlLCB0aGlzKTtcbiAgXHRcdHRoaXMuX3N0ZXAoKTtcbiAgXHR9LFxuXG4gIFx0X3N0ZXA6IGZ1bmN0aW9uIChyb3VuZCkge1xuICBcdFx0dmFyIGVsYXBzZWQgPSAoK25ldyBEYXRlKCkpIC0gdGhpcy5fc3RhcnRUaW1lLFxuICBcdFx0ICAgIGR1cmF0aW9uID0gdGhpcy5fZHVyYXRpb24gKiAxMDAwO1xuXG4gIFx0XHRpZiAoZWxhcHNlZCA8IGR1cmF0aW9uKSB7XG4gIFx0XHRcdHRoaXMuX3J1bkZyYW1lKHRoaXMuX2Vhc2VPdXQoZWxhcHNlZCAvIGR1cmF0aW9uKSwgcm91bmQpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGhpcy5fcnVuRnJhbWUoMSk7XG4gIFx0XHRcdHRoaXMuX2NvbXBsZXRlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9ydW5GcmFtZTogZnVuY3Rpb24gKHByb2dyZXNzLCByb3VuZCkge1xuICBcdFx0dmFyIHBvcyA9IHRoaXMuX3N0YXJ0UG9zLmFkZCh0aGlzLl9vZmZzZXQubXVsdGlwbHlCeShwcm9ncmVzcykpO1xuICBcdFx0aWYgKHJvdW5kKSB7XG4gIFx0XHRcdHBvcy5fcm91bmQoKTtcbiAgXHRcdH1cbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX2VsLCBwb3MpO1xuXG4gIFx0XHQvLyBAZXZlbnQgc3RlcDogRXZlbnRcbiAgXHRcdC8vIEZpcmVkIGNvbnRpbnVvdXNseSBkdXJpbmcgdGhlIGFuaW1hdGlvbi5cbiAgXHRcdHRoaXMuZmlyZSgnc3RlcCcpO1xuICBcdH0sXG5cbiAgXHRfY29tcGxldGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltSWQpO1xuXG4gIFx0XHR0aGlzLl9pblByb2dyZXNzID0gZmFsc2U7XG4gIFx0XHQvLyBAZXZlbnQgZW5kOiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYW5pbWF0aW9uIGVuZHMuXG4gIFx0XHR0aGlzLmZpcmUoJ2VuZCcpO1xuICBcdH0sXG5cbiAgXHRfZWFzZU91dDogZnVuY3Rpb24gKHQpIHtcbiAgXHRcdHJldHVybiAxIC0gTWF0aC5wb3coMSAtIHQsIHRoaXMuX2Vhc2VPdXRQb3dlcik7XG4gIFx0fVxuICB9KTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBNYXBcclxuICAgKiBAYWthIEwuTWFwXHJcbiAgICogQGluaGVyaXRzIEV2ZW50ZWRcclxuICAgKlxyXG4gICAqIFRoZSBjZW50cmFsIGNsYXNzIG9mIHRoZSBBUEkg4oCUIGl0IGlzIHVzZWQgdG8gY3JlYXRlIGEgbWFwIG9uIGEgcGFnZSBhbmQgbWFuaXB1bGF0ZSBpdC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIC8vIGluaXRpYWxpemUgdGhlIG1hcCBvbiB0aGUgXCJtYXBcIiBkaXYgd2l0aCBhIGdpdmVuIGNlbnRlciBhbmQgem9vbVxyXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJywge1xyXG4gICAqIFx0Y2VudGVyOiBbNTEuNTA1LCAtMC4wOV0sXHJcbiAgICogXHR6b29tOiAxM1xyXG4gICAqIH0pO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICovXHJcblxyXG4gIHZhciBNYXAgPSBFdmVudGVkLmV4dGVuZCh7XHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAc2VjdGlvbiBNYXAgU3RhdGUgT3B0aW9uc1xyXG4gIFx0XHQvLyBAb3B0aW9uIGNyczogQ1JTID0gTC5DUlMuRVBTRzM4NTdcclxuICBcdFx0Ly8gVGhlIFtDb29yZGluYXRlIFJlZmVyZW5jZSBTeXN0ZW1dKCNjcnMpIHRvIHVzZS4gRG9uJ3QgY2hhbmdlIHRoaXMgaWYgeW91J3JlIG5vdFxyXG4gIFx0XHQvLyBzdXJlIHdoYXQgaXQgbWVhbnMuXHJcbiAgXHRcdGNyczogRVBTRzM4NTcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNlbnRlcjogTGF0TG5nID0gdW5kZWZpbmVkXHJcbiAgXHRcdC8vIEluaXRpYWwgZ2VvZ3JhcGhpYyBjZW50ZXIgb2YgdGhlIG1hcFxyXG4gIFx0XHRjZW50ZXI6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbTogTnVtYmVyID0gdW5kZWZpbmVkXHJcbiAgXHRcdC8vIEluaXRpYWwgbWFwIHpvb20gbGV2ZWxcclxuICBcdFx0em9vbTogdW5kZWZpbmVkLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtaW5ab29tOiBOdW1iZXIgPSAqXHJcbiAgXHRcdC8vIE1pbmltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwLlxyXG4gIFx0XHQvLyBJZiBub3Qgc3BlY2lmaWVkIGFuZCBhdCBsZWFzdCBvbmUgYEdyaWRMYXllcmAgb3IgYFRpbGVMYXllcmAgaXMgaW4gdGhlIG1hcCxcclxuICBcdFx0Ly8gdGhlIGxvd2VzdCBvZiB0aGVpciBgbWluWm9vbWAgb3B0aW9ucyB3aWxsIGJlIHVzZWQgaW5zdGVhZC5cclxuICBcdFx0bWluWm9vbTogdW5kZWZpbmVkLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhab29tOiBOdW1iZXIgPSAqXHJcbiAgXHRcdC8vIE1heGltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwLlxyXG4gIFx0XHQvLyBJZiBub3Qgc3BlY2lmaWVkIGFuZCBhdCBsZWFzdCBvbmUgYEdyaWRMYXllcmAgb3IgYFRpbGVMYXllcmAgaXMgaW4gdGhlIG1hcCxcclxuICBcdFx0Ly8gdGhlIGhpZ2hlc3Qgb2YgdGhlaXIgYG1heFpvb21gIG9wdGlvbnMgd2lsbCBiZSB1c2VkIGluc3RlYWQuXHJcbiAgXHRcdG1heFpvb206IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbGF5ZXJzOiBMYXllcltdID0gW11cclxuICBcdFx0Ly8gQXJyYXkgb2YgbGF5ZXJzIHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgbWFwIGluaXRpYWxseVxyXG4gIFx0XHRsYXllcnM6IFtdLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhCb3VuZHM6IExhdExuZ0JvdW5kcyA9IG51bGxcclxuICBcdFx0Ly8gV2hlbiB0aGlzIG9wdGlvbiBpcyBzZXQsIHRoZSBtYXAgcmVzdHJpY3RzIHRoZSB2aWV3IHRvIHRoZSBnaXZlblxyXG4gIFx0XHQvLyBnZW9ncmFwaGljYWwgYm91bmRzLCBib3VuY2luZyB0aGUgdXNlciBiYWNrIGlmIHRoZSB1c2VyIHRyaWVzIHRvIHBhblxyXG4gIFx0XHQvLyBvdXRzaWRlIHRoZSB2aWV3LiBUbyBzZXQgdGhlIHJlc3RyaWN0aW9uIGR5bmFtaWNhbGx5LCB1c2VcclxuICBcdFx0Ly8gW2BzZXRNYXhCb3VuZHNgXSgjbWFwLXNldG1heGJvdW5kcykgbWV0aG9kLlxyXG4gIFx0XHRtYXhCb3VuZHM6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmVuZGVyZXI6IFJlbmRlcmVyID0gKlxyXG4gIFx0XHQvLyBUaGUgZGVmYXVsdCBtZXRob2QgZm9yIGRyYXdpbmcgdmVjdG9yIGxheWVycyBvbiB0aGUgbWFwLiBgTC5TVkdgXHJcbiAgXHRcdC8vIG9yIGBMLkNhbnZhc2AgYnkgZGVmYXVsdCBkZXBlbmRpbmcgb24gYnJvd3NlciBzdXBwb3J0LlxyXG4gIFx0XHRyZW5kZXJlcjogdW5kZWZpbmVkLFxyXG5cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIEFuaW1hdGlvbiBPcHRpb25zXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbUFuaW1hdGlvbjogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgbWFwIHpvb20gYW5pbWF0aW9uIGlzIGVuYWJsZWQuIEJ5IGRlZmF1bHQgaXQncyBlbmFibGVkXHJcbiAgXHRcdC8vIGluIGFsbCBicm93c2VycyB0aGF0IHN1cHBvcnQgQ1NTMyBUcmFuc2l0aW9ucyBleGNlcHQgQW5kcm9pZC5cclxuICBcdFx0em9vbUFuaW1hdGlvbjogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbUFuaW1hdGlvblRocmVzaG9sZDogTnVtYmVyID0gNFxyXG4gIFx0XHQvLyBXb24ndCBhbmltYXRlIHpvb20gaWYgdGhlIHpvb20gZGlmZmVyZW5jZSBleGNlZWRzIHRoaXMgdmFsdWUuXHJcbiAgXHRcdHpvb21BbmltYXRpb25UaHJlc2hvbGQ6IDQsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGZhZGVBbmltYXRpb246IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIHRpbGUgZmFkZSBhbmltYXRpb24gaXMgZW5hYmxlZC4gQnkgZGVmYXVsdCBpdCdzIGVuYWJsZWRcclxuICBcdFx0Ly8gaW4gYWxsIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCBDU1MzIFRyYW5zaXRpb25zIGV4Y2VwdCBBbmRyb2lkLlxyXG4gIFx0XHRmYWRlQW5pbWF0aW9uOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXJrZXJab29tQW5pbWF0aW9uOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIG1hcmtlcnMgYW5pbWF0ZSB0aGVpciB6b29tIHdpdGggdGhlIHpvb20gYW5pbWF0aW9uLCBpZiBkaXNhYmxlZFxyXG4gIFx0XHQvLyB0aGV5IHdpbGwgZGlzYXBwZWFyIGZvciB0aGUgbGVuZ3RoIG9mIHRoZSBhbmltYXRpb24uIEJ5IGRlZmF1bHQgaXQnc1xyXG4gIFx0XHQvLyBlbmFibGVkIGluIGFsbCBicm93c2VycyB0aGF0IHN1cHBvcnQgQ1NTMyBUcmFuc2l0aW9ucyBleGNlcHQgQW5kcm9pZC5cclxuICBcdFx0bWFya2VyWm9vbUFuaW1hdGlvbjogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdHJhbnNmb3JtM0RMaW1pdDogTnVtYmVyID0gMl4yM1xyXG4gIFx0XHQvLyBEZWZpbmVzIHRoZSBtYXhpbXVtIHNpemUgb2YgYSBDU1MgdHJhbnNsYXRpb24gdHJhbnNmb3JtLiBUaGUgZGVmYXVsdFxyXG4gIFx0XHQvLyB2YWx1ZSBzaG91bGQgbm90IGJlIGNoYW5nZWQgdW5sZXNzIGEgd2ViIGJyb3dzZXIgcG9zaXRpb25zIGxheWVycyBpblxyXG4gIFx0XHQvLyB0aGUgd3JvbmcgcGxhY2UgYWZ0ZXIgZG9pbmcgYSBsYXJnZSBgcGFuQnlgLlxyXG4gIFx0XHR0cmFuc2Zvcm0zRExpbWl0OiA4Mzg4NjA4LCAvLyBQcmVjaXNpb24gbGltaXQgb2YgYSAzMi1iaXQgZmxvYXRcclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIEludGVyYWN0aW9uIE9wdGlvbnNcclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tU25hcDogTnVtYmVyID0gMVxyXG4gIFx0XHQvLyBGb3JjZXMgdGhlIG1hcCdzIHpvb20gbGV2ZWwgdG8gYWx3YXlzIGJlIGEgbXVsdGlwbGUgb2YgdGhpcywgcGFydGljdWxhcmx5XHJcbiAgXHRcdC8vIHJpZ2h0IGFmdGVyIGEgW2BmaXRCb3VuZHMoKWBdKCNtYXAtZml0Ym91bmRzKSBvciBhIHBpbmNoLXpvb20uXHJcbiAgXHRcdC8vIEJ5IGRlZmF1bHQsIHRoZSB6b29tIGxldmVsIHNuYXBzIHRvIHRoZSBuZWFyZXN0IGludGVnZXI7IGxvd2VyIHZhbHVlc1xyXG4gIFx0XHQvLyAoZS5nLiBgMC41YCBvciBgMC4xYCkgYWxsb3cgZm9yIGdyZWF0ZXIgZ3JhbnVsYXJpdHkuIEEgdmFsdWUgb2YgYDBgXHJcbiAgXHRcdC8vIG1lYW5zIHRoZSB6b29tIGxldmVsIHdpbGwgbm90IGJlIHNuYXBwZWQgYWZ0ZXIgYGZpdEJvdW5kc2Agb3IgYSBwaW5jaC16b29tLlxyXG4gIFx0XHR6b29tU25hcDogMSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbURlbHRhOiBOdW1iZXIgPSAxXHJcbiAgXHRcdC8vIENvbnRyb2xzIGhvdyBtdWNoIHRoZSBtYXAncyB6b29tIGxldmVsIHdpbGwgY2hhbmdlIGFmdGVyIGFcclxuICBcdFx0Ly8gW2B6b29tSW4oKWBdKCNtYXAtem9vbWluKSwgW2B6b29tT3V0KClgXSgjbWFwLXpvb21vdXQpLCBwcmVzc2luZyBgK2BcclxuICBcdFx0Ly8gb3IgYC1gIG9uIHRoZSBrZXlib2FyZCwgb3IgdXNpbmcgdGhlIFt6b29tIGNvbnRyb2xzXSgjY29udHJvbC16b29tKS5cclxuICBcdFx0Ly8gVmFsdWVzIHNtYWxsZXIgdGhhbiBgMWAgKGUuZy4gYDAuNWApIGFsbG93IGZvciBncmVhdGVyIGdyYW51bGFyaXR5LlxyXG4gIFx0XHR6b29tRGVsdGE6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHRyYWNrUmVzaXplOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSBtYXAgYXV0b21hdGljYWxseSBoYW5kbGVzIGJyb3dzZXIgd2luZG93IHJlc2l6ZSB0byB1cGRhdGUgaXRzZWxmLlxyXG4gIFx0XHR0cmFja1Jlc2l6ZTogdHJ1ZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoaWQsIG9wdGlvbnMpIHsgLy8gKEhUTUxFbGVtZW50IG9yIFN0cmluZywgT2JqZWN0KVxyXG4gIFx0XHRvcHRpb25zID0gc2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdC8vIE1ha2Ugc3VyZSB0byBhc3NpZ24gaW50ZXJuYWwgZmxhZ3MgYXQgdGhlIGJlZ2lubmluZyxcclxuICBcdFx0Ly8gdG8gYXZvaWQgaW5jb25zaXN0ZW50IHN0YXRlIGluIHNvbWUgZWRnZSBjYXNlcy5cclxuICBcdFx0dGhpcy5faGFuZGxlcnMgPSBbXTtcclxuICBcdFx0dGhpcy5fbGF5ZXJzID0ge307XHJcbiAgXHRcdHRoaXMuX3pvb21Cb3VuZExheWVycyA9IHt9O1xyXG4gIFx0XHR0aGlzLl9zaXplQ2hhbmdlZCA9IHRydWU7XHJcblxyXG4gIFx0XHR0aGlzLl9pbml0Q29udGFpbmVyKGlkKTtcclxuICBcdFx0dGhpcy5faW5pdExheW91dCgpO1xyXG5cclxuICBcdFx0Ly8gaGFjayBmb3IgaHR0cHM6Ly9naXRodWIuY29tL0xlYWZsZXQvTGVhZmxldC9pc3N1ZXMvMTk4MFxyXG4gIFx0XHR0aGlzLl9vblJlc2l6ZSA9IGJpbmQodGhpcy5fb25SZXNpemUsIHRoaXMpO1xyXG5cclxuICBcdFx0dGhpcy5faW5pdEV2ZW50cygpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMubWF4Qm91bmRzKSB7XHJcbiAgXHRcdFx0dGhpcy5zZXRNYXhCb3VuZHMob3B0aW9ucy5tYXhCb3VuZHMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy56b29tICE9PSB1bmRlZmluZWQpIHtcclxuICBcdFx0XHR0aGlzLl96b29tID0gdGhpcy5fbGltaXRab29tKG9wdGlvbnMuem9vbSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLmNlbnRlciAmJiBvcHRpb25zLnpvb20gIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHRoaXMuc2V0Vmlldyh0b0xhdExuZyhvcHRpb25zLmNlbnRlciksIG9wdGlvbnMuem9vbSwge3Jlc2V0OiB0cnVlfSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuY2FsbEluaXRIb29rcygpO1xyXG5cclxuICBcdFx0Ly8gZG9uJ3QgYW5pbWF0ZSBvbiBicm93c2VycyB3aXRob3V0IGhhcmR3YXJlLWFjY2VsZXJhdGVkIHRyYW5zaXRpb25zIG9yIG9sZCBBbmRyb2lkL09wZXJhXHJcbiAgXHRcdHRoaXMuX3pvb21BbmltYXRlZCA9IFRSQU5TSVRJT04gJiYgQnJvd3Nlci5hbnkzZCAmJiAhQnJvd3Nlci5tb2JpbGVPcGVyYSAmJlxyXG4gIFx0XHRcdFx0dGhpcy5vcHRpb25zLnpvb21BbmltYXRpb247XHJcblxyXG4gIFx0XHQvLyB6b29tIHRyYW5zaXRpb25zIHJ1biB3aXRoIHRoZSBzYW1lIGR1cmF0aW9uIGZvciBhbGwgbGF5ZXJzLCBzbyBpZiBvbmUgb2YgdHJhbnNpdGlvbmVuZCBldmVudHNcclxuICBcdFx0Ly8gaGFwcGVucyBhZnRlciBzdGFydGluZyB6b29tIGFuaW1hdGlvbiAocHJvcGFnYXRpbmcgdG8gdGhlIG1hcCBwYW5lKSwgd2Uga25vdyB0aGF0IGl0IGVuZGVkIGdsb2JhbGx5XHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHR0aGlzLl9jcmVhdGVBbmltUHJveHkoKTtcclxuICBcdFx0XHRvbih0aGlzLl9wcm94eSwgVFJBTlNJVElPTl9FTkQsIHRoaXMuX2NhdGNoVHJhbnNpdGlvbkVuZCwgdGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2FkZExheWVycyh0aGlzLm9wdGlvbnMubGF5ZXJzKTtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE1ldGhvZHMgZm9yIG1vZGlmeWluZyBtYXAgc3RhdGVcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFZpZXcoY2VudGVyOiBMYXRMbmcsIHpvb206IE51bWJlciwgb3B0aW9ucz86IFpvb20vcGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB2aWV3IG9mIHRoZSBtYXAgKGdlb2dyYXBoaWNhbCBjZW50ZXIgYW5kIHpvb20pIHdpdGggdGhlIGdpdmVuXHJcbiAgXHQvLyBhbmltYXRpb24gb3B0aW9ucy5cclxuICBcdHNldFZpZXc6IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20sIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdHpvb20gPSB6b29tID09PSB1bmRlZmluZWQgPyB0aGlzLl96b29tIDogdGhpcy5fbGltaXRab29tKHpvb20pO1xyXG4gIFx0XHRjZW50ZXIgPSB0aGlzLl9saW1pdENlbnRlcih0b0xhdExuZyhjZW50ZXIpLCB6b29tLCB0aGlzLm9wdGlvbnMubWF4Qm91bmRzKTtcclxuICBcdFx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcblxyXG4gIFx0XHR0aGlzLl9zdG9wKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9hZGVkICYmICFvcHRpb25zLnJlc2V0ICYmIG9wdGlvbnMgIT09IHRydWUpIHtcclxuXHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdFx0XHRvcHRpb25zLnpvb20gPSBleHRlbmQoe2FuaW1hdGU6IG9wdGlvbnMuYW5pbWF0ZX0sIG9wdGlvbnMuem9vbSk7XHJcbiAgXHRcdFx0XHRvcHRpb25zLnBhbiA9IGV4dGVuZCh7YW5pbWF0ZTogb3B0aW9ucy5hbmltYXRlLCBkdXJhdGlvbjogb3B0aW9ucy5kdXJhdGlvbn0sIG9wdGlvbnMucGFuKTtcclxuICBcdFx0XHR9XHJcblxyXG4gIFx0XHRcdC8vIHRyeSBhbmltYXRpbmcgcGFuIG9yIHpvb21cclxuICBcdFx0XHR2YXIgbW92ZWQgPSAodGhpcy5fem9vbSAhPT0gem9vbSkgP1xyXG4gIFx0XHRcdFx0dGhpcy5fdHJ5QW5pbWF0ZWRab29tICYmIHRoaXMuX3RyeUFuaW1hdGVkWm9vbShjZW50ZXIsIHpvb20sIG9wdGlvbnMuem9vbSkgOlxyXG4gIFx0XHRcdFx0dGhpcy5fdHJ5QW5pbWF0ZWRQYW4oY2VudGVyLCBvcHRpb25zLnBhbik7XHJcblxyXG4gIFx0XHRcdGlmIChtb3ZlZCkge1xyXG4gIFx0XHRcdFx0Ly8gcHJldmVudCByZXNpemUgaGFuZGxlciBjYWxsLCB0aGUgdmlldyB3aWxsIHJlZnJlc2ggYWZ0ZXIgYW5pbWF0aW9uIGFueXdheVxyXG4gIFx0XHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3NpemVUaW1lcik7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGFuaW1hdGlvbiBkaWRuJ3Qgc3RhcnQsIGp1c3QgcmVzZXQgdGhlIG1hcCB2aWV3XHJcbiAgXHRcdHRoaXMuX3Jlc2V0VmlldyhjZW50ZXIsIHpvb20sIG9wdGlvbnMucGFuICYmIG9wdGlvbnMucGFuLm5vTW92ZVN0YXJ0KTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpvb20oem9vbTogTnVtYmVyLCBvcHRpb25zPzogWm9vbS9wYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFNldHMgdGhlIHpvb20gb2YgdGhlIG1hcC5cclxuICBcdHNldFpvb206IGZ1bmN0aW9uICh6b29tLCBvcHRpb25zKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5fem9vbSA9IHpvb207XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMuc2V0Vmlldyh0aGlzLmdldENlbnRlcigpLCB6b29tLCB7em9vbTogb3B0aW9uc30pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHpvb21JbihkZWx0YT86IE51bWJlciwgb3B0aW9ucz86IFpvb20gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIEluY3JlYXNlcyB0aGUgem9vbSBvZiB0aGUgbWFwIGJ5IGBkZWx0YWAgKFtgem9vbURlbHRhYF0oI21hcC16b29tZGVsdGEpIGJ5IGRlZmF1bHQpLlxyXG4gIFx0em9vbUluOiBmdW5jdGlvbiAoZGVsdGEsIG9wdGlvbnMpIHtcclxuICBcdFx0ZGVsdGEgPSBkZWx0YSB8fCAoQnJvd3Nlci5hbnkzZCA/IHRoaXMub3B0aW9ucy56b29tRGVsdGEgOiAxKTtcclxuICBcdFx0cmV0dXJuIHRoaXMuc2V0Wm9vbSh0aGlzLl96b29tICsgZGVsdGEsIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHpvb21PdXQoZGVsdGE/OiBOdW1iZXIsIG9wdGlvbnM/OiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBEZWNyZWFzZXMgdGhlIHpvb20gb2YgdGhlIG1hcCBieSBgZGVsdGFgIChbYHpvb21EZWx0YWBdKCNtYXAtem9vbWRlbHRhKSBieSBkZWZhdWx0KS5cclxuICBcdHpvb21PdXQ6IGZ1bmN0aW9uIChkZWx0YSwgb3B0aW9ucykge1xyXG4gIFx0XHRkZWx0YSA9IGRlbHRhIHx8IChCcm93c2VyLmFueTNkID8gdGhpcy5vcHRpb25zLnpvb21EZWx0YSA6IDEpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHRoaXMuX3pvb20gLSBkZWx0YSwgb3B0aW9ucyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0Wm9vbUFyb3VuZChsYXRsbmc6IExhdExuZywgem9vbTogTnVtYmVyLCBvcHRpb25zOiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBab29tcyB0aGUgbWFwIHdoaWxlIGtlZXBpbmcgYSBzcGVjaWZpZWQgZ2VvZ3JhcGhpY2FsIHBvaW50IG9uIHRoZSBtYXBcclxuICBcdC8vIHN0YXRpb25hcnkgKGUuZy4gdXNlZCBpbnRlcm5hbGx5IGZvciBzY3JvbGwgem9vbSBhbmQgZG91YmxlLWNsaWNrIHpvb20pLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpvb21Bcm91bmQob2Zmc2V0OiBQb2ludCwgem9vbTogTnVtYmVyLCBvcHRpb25zOiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBab29tcyB0aGUgbWFwIHdoaWxlIGtlZXBpbmcgYSBzcGVjaWZpZWQgcGl4ZWwgb24gdGhlIG1hcCAocmVsYXRpdmUgdG8gdGhlIHRvcC1sZWZ0IGNvcm5lcikgc3RhdGlvbmFyeS5cclxuICBcdHNldFpvb21Bcm91bmQ6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20sIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gdGhpcy5nZXRab29tU2NhbGUoem9vbSksXHJcbiAgXHRcdCAgICB2aWV3SGFsZiA9IHRoaXMuZ2V0U2l6ZSgpLmRpdmlkZUJ5KDIpLFxyXG4gIFx0XHQgICAgY29udGFpbmVyUG9pbnQgPSBsYXRsbmcgaW5zdGFuY2VvZiBQb2ludCA/IGxhdGxuZyA6IHRoaXMubGF0TG5nVG9Db250YWluZXJQb2ludChsYXRsbmcpLFxyXG5cclxuICBcdFx0ICAgIGNlbnRlck9mZnNldCA9IGNvbnRhaW5lclBvaW50LnN1YnRyYWN0KHZpZXdIYWxmKS5tdWx0aXBseUJ5KDEgLSAxIC8gc2NhbGUpLFxyXG4gIFx0XHQgICAgbmV3Q2VudGVyID0gdGhpcy5jb250YWluZXJQb2ludFRvTGF0TG5nKHZpZXdIYWxmLmFkZChjZW50ZXJPZmZzZXQpKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLnNldFZpZXcobmV3Q2VudGVyLCB6b29tLCB7em9vbTogb3B0aW9uc30pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0Qm91bmRzQ2VudGVyWm9vbTogZnVuY3Rpb24gKGJvdW5kcywgb3B0aW9ucykge1xyXG5cclxuICBcdFx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgXHRcdGJvdW5kcyA9IGJvdW5kcy5nZXRCb3VuZHMgPyBib3VuZHMuZ2V0Qm91bmRzKCkgOiB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIHBhZGRpbmdUTCA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nVG9wTGVmdCB8fCBvcHRpb25zLnBhZGRpbmcgfHwgWzAsIDBdKSxcclxuICBcdFx0ICAgIHBhZGRpbmdCUiA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nQm90dG9tUmlnaHQgfHwgb3B0aW9ucy5wYWRkaW5nIHx8IFswLCAwXSksXHJcblxyXG4gIFx0XHQgICAgem9vbSA9IHRoaXMuZ2V0Qm91bmRzWm9vbShib3VuZHMsIGZhbHNlLCBwYWRkaW5nVEwuYWRkKHBhZGRpbmdCUikpO1xyXG5cclxuICBcdFx0em9vbSA9ICh0eXBlb2Ygb3B0aW9ucy5tYXhab29tID09PSAnbnVtYmVyJykgPyBNYXRoLm1pbihvcHRpb25zLm1heFpvb20sIHpvb20pIDogem9vbTtcclxuXHJcbiAgXHRcdGlmICh6b29tID09PSBJbmZpbml0eSkge1xyXG4gIFx0XHRcdHJldHVybiB7XHJcbiAgXHRcdFx0XHRjZW50ZXI6IGJvdW5kcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0XHRcdHpvb206IHpvb21cclxuICBcdFx0XHR9O1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgcGFkZGluZ09mZnNldCA9IHBhZGRpbmdCUi5zdWJ0cmFjdChwYWRkaW5nVEwpLmRpdmlkZUJ5KDIpLFxyXG5cclxuICBcdFx0ICAgIHN3UG9pbnQgPSB0aGlzLnByb2plY3QoYm91bmRzLmdldFNvdXRoV2VzdCgpLCB6b29tKSxcclxuICBcdFx0ICAgIG5lUG9pbnQgPSB0aGlzLnByb2plY3QoYm91bmRzLmdldE5vcnRoRWFzdCgpLCB6b29tKSxcclxuICBcdFx0ICAgIGNlbnRlciA9IHRoaXMudW5wcm9qZWN0KHN3UG9pbnQuYWRkKG5lUG9pbnQpLmRpdmlkZUJ5KDIpLmFkZChwYWRkaW5nT2Zmc2V0KSwgem9vbSk7XHJcblxyXG4gIFx0XHRyZXR1cm4ge1xyXG4gIFx0XHRcdGNlbnRlcjogY2VudGVyLFxyXG4gIFx0XHRcdHpvb206IHpvb21cclxuICBcdFx0fTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXRCb3VuZHMoYm91bmRzOiBMYXRMbmdCb3VuZHMsIG9wdGlvbnM/OiBmaXRCb3VuZHMgb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFNldHMgYSBtYXAgdmlldyB0aGF0IGNvbnRhaW5zIHRoZSBnaXZlbiBnZW9ncmFwaGljYWwgYm91bmRzIHdpdGggdGhlXHJcbiAgXHQvLyBtYXhpbXVtIHpvb20gbGV2ZWwgcG9zc2libGUuXHJcbiAgXHRmaXRCb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMsIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHRpZiAoIWJvdW5kcy5pc1ZhbGlkKCkpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0JvdW5kcyBhcmUgbm90IHZhbGlkLicpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgdGFyZ2V0ID0gdGhpcy5fZ2V0Qm91bmRzQ2VudGVyWm9vbShib3VuZHMsIG9wdGlvbnMpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5zZXRWaWV3KHRhcmdldC5jZW50ZXIsIHRhcmdldC56b29tLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXRXb3JsZChvcHRpb25zPzogZml0Qm91bmRzIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIGEgbWFwIHZpZXcgdGhhdCBtb3N0bHkgY29udGFpbnMgdGhlIHdob2xlIHdvcmxkIHdpdGggdGhlIG1heGltdW1cclxuICBcdC8vIHpvb20gbGV2ZWwgcG9zc2libGUuXHJcbiAgXHRmaXRXb3JsZDogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuZml0Qm91bmRzKFtbLTkwLCAtMTgwXSwgWzkwLCAxODBdXSwgb3B0aW9ucyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuVG8obGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFBhbnMgdGhlIG1hcCB0byBhIGdpdmVuIGNlbnRlci5cclxuICBcdHBhblRvOiBmdW5jdGlvbiAoY2VudGVyLCBvcHRpb25zKSB7IC8vIChMYXRMbmcpXHJcbiAgXHRcdHJldHVybiB0aGlzLnNldFZpZXcoY2VudGVyLCB0aGlzLl96b29tLCB7cGFuOiBvcHRpb25zfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuQnkob2Zmc2V0OiBQb2ludCwgb3B0aW9ucz86IFBhbiBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gUGFucyB0aGUgbWFwIGJ5IGEgZ2l2ZW4gbnVtYmVyIG9mIHBpeGVscyAoYW5pbWF0ZWQpLlxyXG4gIFx0cGFuQnk6IGZ1bmN0aW9uIChvZmZzZXQsIG9wdGlvbnMpIHtcclxuICBcdFx0b2Zmc2V0ID0gdG9Qb2ludChvZmZzZXQpLnJvdW5kKCk7XHJcbiAgXHRcdG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICBcdFx0aWYgKCFvZmZzZXQueCAmJiAhb2Zmc2V0LnkpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy5maXJlKCdtb3ZlZW5kJyk7XHJcbiAgXHRcdH1cclxuICBcdFx0Ly8gSWYgd2UgcGFuIHRvbyBmYXIsIENocm9tZSBnZXRzIGlzc3VlcyB3aXRoIHRpbGVzXHJcbiAgXHRcdC8vIGFuZCBtYWtlcyB0aGVtIGRpc2FwcGVhciBvciBhcHBlYXIgaW4gdGhlIHdyb25nIHBsYWNlIChzbGlnaHRseSBvZmZzZXQpICMyNjAyXHJcbiAgXHRcdGlmIChvcHRpb25zLmFuaW1hdGUgIT09IHRydWUgJiYgIXRoaXMuZ2V0U2l6ZSgpLmNvbnRhaW5zKG9mZnNldCkpIHtcclxuICBcdFx0XHR0aGlzLl9yZXNldFZpZXcodGhpcy51bnByb2plY3QodGhpcy5wcm9qZWN0KHRoaXMuZ2V0Q2VudGVyKCkpLmFkZChvZmZzZXQpKSwgdGhpcy5nZXRab29tKCkpO1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIXRoaXMuX3BhbkFuaW0pIHtcclxuICBcdFx0XHR0aGlzLl9wYW5BbmltID0gbmV3IFBvc0FuaW1hdGlvbigpO1xyXG5cclxuICBcdFx0XHR0aGlzLl9wYW5BbmltLm9uKHtcclxuICBcdFx0XHRcdCdzdGVwJzogdGhpcy5fb25QYW5UcmFuc2l0aW9uU3RlcCxcclxuICBcdFx0XHRcdCdlbmQnOiB0aGlzLl9vblBhblRyYW5zaXRpb25FbmRcclxuICBcdFx0XHR9LCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gZG9uJ3QgZmlyZSBtb3Zlc3RhcnQgaWYgYW5pbWF0aW5nIGluZXJ0aWFcclxuICBcdFx0aWYgKCFvcHRpb25zLm5vTW92ZVN0YXJ0KSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3Zlc3RhcnQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gYW5pbWF0ZSBwYW4gdW5sZXNzIGFuaW1hdGU6IGZhbHNlIHNwZWNpZmllZFxyXG4gIFx0XHRpZiAob3B0aW9ucy5hbmltYXRlICE9PSBmYWxzZSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX21hcFBhbmUsICdsZWFmbGV0LXBhbi1hbmltJyk7XHJcblxyXG4gIFx0XHRcdHZhciBuZXdQb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCkuc3VidHJhY3Qob2Zmc2V0KS5yb3VuZCgpO1xyXG4gIFx0XHRcdHRoaXMuX3BhbkFuaW0ucnVuKHRoaXMuX21hcFBhbmUsIG5ld1Bvcywgb3B0aW9ucy5kdXJhdGlvbiB8fCAwLjI1LCBvcHRpb25zLmVhc2VMaW5lYXJpdHkpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMuX3Jhd1BhbkJ5KG9mZnNldCk7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJykuZmlyZSgnbW92ZWVuZCcpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmbHlUbyhsYXRsbmc6IExhdExuZywgem9vbT86IE51bWJlciwgb3B0aW9ucz86IFpvb20vcGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB2aWV3IG9mIHRoZSBtYXAgKGdlb2dyYXBoaWNhbCBjZW50ZXIgYW5kIHpvb20pIHBlcmZvcm1pbmcgYSBzbW9vdGhcclxuICBcdC8vIHBhbi16b29tIGFuaW1hdGlvbi5cclxuICBcdGZseVRvOiBmdW5jdGlvbiAodGFyZ2V0Q2VudGVyLCB0YXJnZXRab29tLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuICBcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSA9PT0gZmFsc2UgfHwgIUJyb3dzZXIuYW55M2QpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy5zZXRWaWV3KHRhcmdldENlbnRlciwgdGFyZ2V0Wm9vbSwgb3B0aW9ucyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3N0b3AoKTtcclxuXHJcbiAgXHRcdHZhciBmcm9tID0gdGhpcy5wcm9qZWN0KHRoaXMuZ2V0Q2VudGVyKCkpLFxyXG4gIFx0XHQgICAgdG8gPSB0aGlzLnByb2plY3QodGFyZ2V0Q2VudGVyKSxcclxuICBcdFx0ICAgIHNpemUgPSB0aGlzLmdldFNpemUoKSxcclxuICBcdFx0ICAgIHN0YXJ0Wm9vbSA9IHRoaXMuX3pvb207XHJcblxyXG4gIFx0XHR0YXJnZXRDZW50ZXIgPSB0b0xhdExuZyh0YXJnZXRDZW50ZXIpO1xyXG4gIFx0XHR0YXJnZXRab29tID0gdGFyZ2V0Wm9vbSA9PT0gdW5kZWZpbmVkID8gc3RhcnRab29tIDogdGFyZ2V0Wm9vbTtcclxuXHJcbiAgXHRcdHZhciB3MCA9IE1hdGgubWF4KHNpemUueCwgc2l6ZS55KSxcclxuICBcdFx0ICAgIHcxID0gdzAgKiB0aGlzLmdldFpvb21TY2FsZShzdGFydFpvb20sIHRhcmdldFpvb20pLFxyXG4gIFx0XHQgICAgdTEgPSAodG8uZGlzdGFuY2VUbyhmcm9tKSkgfHwgMSxcclxuICBcdFx0ICAgIHJobyA9IDEuNDIsXHJcbiAgXHRcdCAgICByaG8yID0gcmhvICogcmhvO1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gcihpKSB7XHJcbiAgXHRcdFx0dmFyIHMxID0gaSA/IC0xIDogMSxcclxuICBcdFx0XHQgICAgczIgPSBpID8gdzEgOiB3MCxcclxuICBcdFx0XHQgICAgdDEgPSB3MSAqIHcxIC0gdzAgKiB3MCArIHMxICogcmhvMiAqIHJobzIgKiB1MSAqIHUxLFxyXG4gIFx0XHRcdCAgICBiMSA9IDIgKiBzMiAqIHJobzIgKiB1MSxcclxuICBcdFx0XHQgICAgYiA9IHQxIC8gYjEsXHJcbiAgXHRcdFx0ICAgIHNxID0gTWF0aC5zcXJ0KGIgKiBiICsgMSkgLSBiO1xyXG5cclxuICBcdFx0XHQgICAgLy8gd29ya2Fyb3VuZCBmb3IgZmxvYXRpbmcgcG9pbnQgcHJlY2lzaW9uIGJ1ZyB3aGVuIHNxID0gMCwgbG9nID0gLUluZmluaXRlLFxyXG4gIFx0XHRcdCAgICAvLyB0aHVzIHRyaWdnZXJpbmcgYW4gaW5maW5pdGUgbG9vcCBpbiBmbHlUb1xyXG4gIFx0XHRcdCAgICB2YXIgbG9nID0gc3EgPCAwLjAwMDAwMDAwMSA/IC0xOCA6IE1hdGgubG9nKHNxKTtcclxuXHJcbiAgXHRcdFx0cmV0dXJuIGxvZztcclxuICBcdFx0fVxyXG5cclxuICBcdFx0ZnVuY3Rpb24gc2luaChuKSB7IHJldHVybiAoTWF0aC5leHAobikgLSBNYXRoLmV4cCgtbikpIC8gMjsgfVxyXG4gIFx0XHRmdW5jdGlvbiBjb3NoKG4pIHsgcmV0dXJuIChNYXRoLmV4cChuKSArIE1hdGguZXhwKC1uKSkgLyAyOyB9XHJcbiAgXHRcdGZ1bmN0aW9uIHRhbmgobikgeyByZXR1cm4gc2luaChuKSAvIGNvc2gobik7IH1cclxuXHJcbiAgXHRcdHZhciByMCA9IHIoMCk7XHJcblxyXG4gIFx0XHRmdW5jdGlvbiB3KHMpIHsgcmV0dXJuIHcwICogKGNvc2gocjApIC8gY29zaChyMCArIHJobyAqIHMpKTsgfVxyXG4gIFx0XHRmdW5jdGlvbiB1KHMpIHsgcmV0dXJuIHcwICogKGNvc2gocjApICogdGFuaChyMCArIHJobyAqIHMpIC0gc2luaChyMCkpIC8gcmhvMjsgfVxyXG5cclxuICBcdFx0ZnVuY3Rpb24gZWFzZU91dCh0KSB7IHJldHVybiAxIC0gTWF0aC5wb3coMSAtIHQsIDEuNSk7IH1cclxuXHJcbiAgXHRcdHZhciBzdGFydCA9IERhdGUubm93KCksXHJcbiAgXHRcdCAgICBTID0gKHIoMSkgLSByMCkgLyByaG8sXHJcbiAgXHRcdCAgICBkdXJhdGlvbiA9IG9wdGlvbnMuZHVyYXRpb24gPyAxMDAwICogb3B0aW9ucy5kdXJhdGlvbiA6IDEwMDAgKiBTICogMC44O1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gZnJhbWUoKSB7XHJcbiAgXHRcdFx0dmFyIHQgPSAoRGF0ZS5ub3coKSAtIHN0YXJ0KSAvIGR1cmF0aW9uLFxyXG4gIFx0XHRcdCAgICBzID0gZWFzZU91dCh0KSAqIFM7XHJcblxyXG4gIFx0XHRcdGlmICh0IDw9IDEpIHtcclxuICBcdFx0XHRcdHRoaXMuX2ZseVRvRnJhbWUgPSByZXF1ZXN0QW5pbUZyYW1lKGZyYW1lLCB0aGlzKTtcclxuXHJcbiAgXHRcdFx0XHR0aGlzLl9tb3ZlKFxyXG4gIFx0XHRcdFx0XHR0aGlzLnVucHJvamVjdChmcm9tLmFkZCh0by5zdWJ0cmFjdChmcm9tKS5tdWx0aXBseUJ5KHUocykgLyB1MSkpLCBzdGFydFpvb20pLFxyXG4gIFx0XHRcdFx0XHR0aGlzLmdldFNjYWxlWm9vbSh3MCAvIHcocyksIHN0YXJ0Wm9vbSksXHJcbiAgXHRcdFx0XHRcdHtmbHlUbzogdHJ1ZX0pO1xyXG5cclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0dGhpc1xyXG4gIFx0XHRcdFx0XHQuX21vdmUodGFyZ2V0Q2VudGVyLCB0YXJnZXRab29tKVxyXG4gIFx0XHRcdFx0XHQuX21vdmVFbmQodHJ1ZSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlU3RhcnQodHJ1ZSwgb3B0aW9ucy5ub01vdmVTdGFydCk7XHJcblxyXG4gIFx0XHRmcmFtZS5jYWxsKHRoaXMpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmbHlUb0JvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IGZpdEJvdW5kcyBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgdmlldyBvZiB0aGUgbWFwIHdpdGggYSBzbW9vdGggYW5pbWF0aW9uIGxpa2UgW2BmbHlUb2BdKCNtYXAtZmx5dG8pLFxyXG4gIFx0Ly8gYnV0IHRha2VzIGEgYm91bmRzIHBhcmFtZXRlciBsaWtlIFtgZml0Qm91bmRzYF0oI21hcC1maXRib3VuZHMpLlxyXG4gIFx0Zmx5VG9Cb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMsIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIHRhcmdldCA9IHRoaXMuX2dldEJvdW5kc0NlbnRlclpvb20oYm91bmRzLCBvcHRpb25zKTtcclxuICBcdFx0cmV0dXJuIHRoaXMuZmx5VG8odGFyZ2V0LmNlbnRlciwgdGFyZ2V0Lnpvb20sIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldE1heEJvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcyk6IHRoaXNcclxuICBcdC8vIFJlc3RyaWN0cyB0aGUgbWFwIHZpZXcgdG8gdGhlIGdpdmVuIGJvdW5kcyAoc2VlIHRoZSBbbWF4Qm91bmRzXSgjbWFwLW1heGJvdW5kcykgb3B0aW9uKS5cclxuICBcdHNldE1heEJvdW5kczogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHRib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMubGlzdGVucygnbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcykpIHtcclxuICBcdFx0XHR0aGlzLm9mZignbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghYm91bmRzLmlzVmFsaWQoKSkge1xyXG4gIFx0XHRcdHRoaXMub3B0aW9ucy5tYXhCb3VuZHMgPSBudWxsO1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLm9wdGlvbnMubWF4Qm91bmRzID0gYm91bmRzO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCkge1xyXG4gIFx0XHRcdHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcygpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5vbignbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TWluWm9vbSh6b29tOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBsb3dlciBsaW1pdCBmb3IgdGhlIGF2YWlsYWJsZSB6b29tIGxldmVscyAoc2VlIHRoZSBbbWluWm9vbV0oI21hcC1taW56b29tKSBvcHRpb24pLlxyXG4gIFx0c2V0TWluWm9vbTogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0dmFyIG9sZFpvb20gPSB0aGlzLm9wdGlvbnMubWluWm9vbTtcclxuICBcdFx0dGhpcy5vcHRpb25zLm1pblpvb20gPSB6b29tO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCAmJiBvbGRab29tICE9PSB6b29tKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tbGV2ZWxzY2hhbmdlJyk7XHJcblxyXG4gIFx0XHRcdGlmICh0aGlzLmdldFpvb20oKSA8IHRoaXMub3B0aW9ucy5taW5ab29tKSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHpvb20pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TWF4Wm9vbSh6b29tOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB1cHBlciBsaW1pdCBmb3IgdGhlIGF2YWlsYWJsZSB6b29tIGxldmVscyAoc2VlIHRoZSBbbWF4Wm9vbV0oI21hcC1tYXh6b29tKSBvcHRpb24pLlxyXG4gIFx0c2V0TWF4Wm9vbTogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0dmFyIG9sZFpvb20gPSB0aGlzLm9wdGlvbnMubWF4Wm9vbTtcclxuICBcdFx0dGhpcy5vcHRpb25zLm1heFpvb20gPSB6b29tO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCAmJiBvbGRab29tICE9PSB6b29tKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tbGV2ZWxzY2hhbmdlJyk7XHJcblxyXG4gIFx0XHRcdGlmICh0aGlzLmdldFpvb20oKSA+IHRoaXMub3B0aW9ucy5tYXhab29tKSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHpvb20pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuSW5zaWRlQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzLCBvcHRpb25zPzogUGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBQYW5zIHRoZSBtYXAgdG8gdGhlIGNsb3Nlc3QgdmlldyB0aGF0IHdvdWxkIGxpZSBpbnNpZGUgdGhlIGdpdmVuIGJvdW5kcyAoaWYgaXQncyBub3QgYWxyZWFkeSksIGNvbnRyb2xsaW5nIHRoZSBhbmltYXRpb24gdXNpbmcgdGhlIG9wdGlvbnMgc3BlY2lmaWMsIGlmIGFueS5cclxuICBcdHBhbkluc2lkZUJvdW5kczogZnVuY3Rpb24gKGJvdW5kcywgb3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLl9lbmZvcmNpbmdCb3VuZHMgPSB0cnVlO1xyXG4gIFx0XHR2YXIgY2VudGVyID0gdGhpcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIG5ld0NlbnRlciA9IHRoaXMuX2xpbWl0Q2VudGVyKGNlbnRlciwgdGhpcy5fem9vbSwgdG9MYXRMbmdCb3VuZHMoYm91bmRzKSk7XHJcblxyXG4gIFx0XHRpZiAoIWNlbnRlci5lcXVhbHMobmV3Q2VudGVyKSkge1xyXG4gIFx0XHRcdHRoaXMucGFuVG8obmV3Q2VudGVyLCBvcHRpb25zKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fZW5mb3JjaW5nQm91bmRzID0gZmFsc2U7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBhbkluc2lkZShsYXRsbmc6IExhdExuZywgb3B0aW9ucz86IHBhZGRpbmcgb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFBhbnMgdGhlIG1hcCB0aGUgbWluaW11bSBhbW91bnQgdG8gbWFrZSB0aGUgYGxhdGxuZ2AgdmlzaWJsZS4gVXNlXHJcbiAgXHQvLyBwYWRkaW5nIG9wdGlvbnMgdG8gZml0IHRoZSBkaXNwbGF5IHRvIG1vcmUgcmVzdHJpY3RlZCBib3VuZHMuXHJcbiAgXHQvLyBJZiBgbGF0bG5nYCBpcyBhbHJlYWR5IHdpdGhpbiB0aGUgKG9wdGlvbmFsbHkgcGFkZGVkKSBkaXNwbGF5IGJvdW5kcyxcclxuICBcdC8vIHRoZSBtYXAgd2lsbCBub3QgYmUgcGFubmVkLlxyXG4gIFx0cGFuSW5zaWRlOiBmdW5jdGlvbiAobGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRcdG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICBcdFx0dmFyIHBhZGRpbmdUTCA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nVG9wTGVmdCB8fCBvcHRpb25zLnBhZGRpbmcgfHwgWzAsIDBdKSxcclxuICBcdFx0ICAgIHBhZGRpbmdCUiA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nQm90dG9tUmlnaHQgfHwgb3B0aW9ucy5wYWRkaW5nIHx8IFswLCAwXSksXHJcbiAgXHRcdCAgICBwaXhlbENlbnRlciA9IHRoaXMucHJvamVjdCh0aGlzLmdldENlbnRlcigpKSxcclxuICBcdFx0ICAgIHBpeGVsUG9pbnQgPSB0aGlzLnByb2plY3QobGF0bG5nKSxcclxuICBcdFx0ICAgIHBpeGVsQm91bmRzID0gdGhpcy5nZXRQaXhlbEJvdW5kcygpLFxyXG4gIFx0XHQgICAgcGFkZGVkQm91bmRzID0gdG9Cb3VuZHMoW3BpeGVsQm91bmRzLm1pbi5hZGQocGFkZGluZ1RMKSwgcGl4ZWxCb3VuZHMubWF4LnN1YnRyYWN0KHBhZGRpbmdCUildKSxcclxuICBcdFx0ICAgIHBhZGRlZFNpemUgPSBwYWRkZWRCb3VuZHMuZ2V0U2l6ZSgpO1xyXG5cclxuICBcdFx0aWYgKCFwYWRkZWRCb3VuZHMuY29udGFpbnMocGl4ZWxQb2ludCkpIHtcclxuICBcdFx0XHR0aGlzLl9lbmZvcmNpbmdCb3VuZHMgPSB0cnVlO1xyXG4gIFx0XHRcdHZhciBjZW50ZXJPZmZzZXQgPSBwaXhlbFBvaW50LnN1YnRyYWN0KHBhZGRlZEJvdW5kcy5nZXRDZW50ZXIoKSk7XHJcbiAgXHRcdFx0dmFyIG9mZnNldCA9IHBhZGRlZEJvdW5kcy5leHRlbmQocGl4ZWxQb2ludCkuZ2V0U2l6ZSgpLnN1YnRyYWN0KHBhZGRlZFNpemUpO1xyXG4gIFx0XHRcdHBpeGVsQ2VudGVyLnggKz0gY2VudGVyT2Zmc2V0LnggPCAwID8gLW9mZnNldC54IDogb2Zmc2V0Lng7XHJcbiAgXHRcdFx0cGl4ZWxDZW50ZXIueSArPSBjZW50ZXJPZmZzZXQueSA8IDAgPyAtb2Zmc2V0LnkgOiBvZmZzZXQueTtcclxuICBcdFx0XHR0aGlzLnBhblRvKHRoaXMudW5wcm9qZWN0KHBpeGVsQ2VudGVyKSwgb3B0aW9ucyk7XHJcbiAgXHRcdFx0dGhpcy5fZW5mb3JjaW5nQm91bmRzID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaW52YWxpZGF0ZVNpemUob3B0aW9uczogWm9vbS9wYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIENoZWNrcyBpZiB0aGUgbWFwIGNvbnRhaW5lciBzaXplIGNoYW5nZWQgYW5kIHVwZGF0ZXMgdGhlIG1hcCBpZiBzbyDigJRcclxuICBcdC8vIGNhbGwgaXQgYWZ0ZXIgeW91J3ZlIGNoYW5nZWQgdGhlIG1hcCBzaXplIGR5bmFtaWNhbGx5LCBhbHNvIGFuaW1hdGluZ1xyXG4gIFx0Ly8gcGFuIGJ5IGRlZmF1bHQuIElmIGBvcHRpb25zLnBhbmAgaXMgYGZhbHNlYCwgcGFubmluZyB3aWxsIG5vdCBvY2N1ci5cclxuICBcdC8vIElmIGBvcHRpb25zLmRlYm91bmNlTW92ZWVuZGAgaXMgYHRydWVgLCBpdCB3aWxsIGRlbGF5IGBtb3ZlZW5kYCBldmVudCBzb1xyXG4gIFx0Ly8gdGhhdCBpdCBkb2Vzbid0IGhhcHBlbiBvZnRlbiBldmVuIGlmIHRoZSBtZXRob2QgaXMgY2FsbGVkIG1hbnlcclxuICBcdC8vIHRpbWVzIGluIGEgcm93LlxyXG5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBpbnZhbGlkYXRlU2l6ZShhbmltYXRlOiBCb29sZWFuKTogdGhpc1xyXG4gIFx0Ly8gQ2hlY2tzIGlmIHRoZSBtYXAgY29udGFpbmVyIHNpemUgY2hhbmdlZCBhbmQgdXBkYXRlcyB0aGUgbWFwIGlmIHNvIOKAlFxyXG4gIFx0Ly8gY2FsbCBpdCBhZnRlciB5b3UndmUgY2hhbmdlZCB0aGUgbWFwIHNpemUgZHluYW1pY2FsbHksIGFsc28gYW5pbWF0aW5nXHJcbiAgXHQvLyBwYW4gYnkgZGVmYXVsdC5cclxuICBcdGludmFsaWRhdGVTaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2xvYWRlZCkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0b3B0aW9ucyA9IGV4dGVuZCh7XHJcbiAgXHRcdFx0YW5pbWF0ZTogZmFsc2UsXHJcbiAgXHRcdFx0cGFuOiB0cnVlXHJcbiAgXHRcdH0sIG9wdGlvbnMgPT09IHRydWUgPyB7YW5pbWF0ZTogdHJ1ZX0gOiBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHZhciBvbGRTaXplID0gdGhpcy5nZXRTaXplKCk7XHJcbiAgXHRcdHRoaXMuX3NpemVDaGFuZ2VkID0gdHJ1ZTtcclxuICBcdFx0dGhpcy5fbGFzdENlbnRlciA9IG51bGw7XHJcblxyXG4gIFx0XHR2YXIgbmV3U2l6ZSA9IHRoaXMuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgb2xkQ2VudGVyID0gb2xkU2l6ZS5kaXZpZGVCeSgyKS5yb3VuZCgpLFxyXG4gIFx0XHQgICAgbmV3Q2VudGVyID0gbmV3U2l6ZS5kaXZpZGVCeSgyKS5yb3VuZCgpLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gb2xkQ2VudGVyLnN1YnRyYWN0KG5ld0NlbnRlcik7XHJcblxyXG4gIFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSAmJiBvcHRpb25zLnBhbikge1xyXG4gIFx0XHRcdHRoaXMucGFuQnkob2Zmc2V0KTtcclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMucGFuKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9yYXdQYW5CeShvZmZzZXQpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJyk7XHJcblxyXG4gIFx0XHRcdGlmIChvcHRpb25zLmRlYm91bmNlTW92ZWVuZCkge1xyXG4gIFx0XHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3NpemVUaW1lcik7XHJcbiAgXHRcdFx0XHR0aGlzLl9zaXplVGltZXIgPSBzZXRUaW1lb3V0KGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbW92ZWVuZCcpLCAyMDApO1xyXG4gIFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHR0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIE1hcCBzdGF0ZSBjaGFuZ2UgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCByZXNpemU6IFJlc2l6ZUV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBpcyByZXNpemVkLlxyXG4gIFx0XHRyZXR1cm4gdGhpcy5maXJlKCdyZXNpemUnLCB7XHJcbiAgXHRcdFx0b2xkU2l6ZTogb2xkU2l6ZSxcclxuICBcdFx0XHRuZXdTaXplOiBuZXdTaXplXHJcbiAgXHRcdH0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBNZXRob2RzIGZvciBtb2RpZnlpbmcgbWFwIHN0YXRlXHJcbiAgXHQvLyBAbWV0aG9kIHN0b3AoKTogdGhpc1xyXG4gIFx0Ly8gU3RvcHMgdGhlIGN1cnJlbnRseSBydW5uaW5nIGBwYW5Ub2Agb3IgYGZseVRvYCBhbmltYXRpb24sIGlmIGFueS5cclxuICBcdHN0b3A6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xpbWl0Wm9vbSh0aGlzLl96b29tKSk7XHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLnpvb21TbmFwKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd2aWV3cmVzZXQnKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc3RvcCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBHZW9sb2NhdGlvbiBtZXRob2RzXHJcbiAgXHQvLyBAbWV0aG9kIGxvY2F0ZShvcHRpb25zPzogTG9jYXRlIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBUcmllcyB0byBsb2NhdGUgdGhlIHVzZXIgdXNpbmcgdGhlIEdlb2xvY2F0aW9uIEFQSSwgZmlyaW5nIGEgW2Bsb2NhdGlvbmZvdW5kYF0oI21hcC1sb2NhdGlvbmZvdW5kKVxyXG4gIFx0Ly8gZXZlbnQgd2l0aCBsb2NhdGlvbiBkYXRhIG9uIHN1Y2Nlc3Mgb3IgYSBbYGxvY2F0aW9uZXJyb3JgXSgjbWFwLWxvY2F0aW9uZXJyb3IpIGV2ZW50IG9uIGZhaWx1cmUsXHJcbiAgXHQvLyBhbmQgb3B0aW9uYWxseSBzZXRzIHRoZSBtYXAgdmlldyB0byB0aGUgdXNlcidzIGxvY2F0aW9uIHdpdGggcmVzcGVjdCB0b1xyXG4gIFx0Ly8gZGV0ZWN0aW9uIGFjY3VyYWN5IChvciB0byB0aGUgd29ybGQgdmlldyBpZiBnZW9sb2NhdGlvbiBmYWlsZWQpLlxyXG4gIFx0Ly8gTm90ZSB0aGF0LCBpZiB5b3VyIHBhZ2UgZG9lc24ndCB1c2UgSFRUUFMsIHRoaXMgbWV0aG9kIHdpbGwgZmFpbCBpblxyXG4gIFx0Ly8gbW9kZXJuIGJyb3dzZXJzIChbQ2hyb21lIDUwIGFuZCBuZXdlcl0oaHR0cHM6Ly9zaXRlcy5nb29nbGUuY29tL2EvY2hyb21pdW0ub3JnL2Rldi9Ib21lL2Nocm9taXVtLXNlY3VyaXR5L2RlcHJlY2F0aW5nLXBvd2VyZnVsLWZlYXR1cmVzLW9uLWluc2VjdXJlLW9yaWdpbnMpKVxyXG4gIFx0Ly8gU2VlIGBMb2NhdGUgb3B0aW9uc2AgZm9yIG1vcmUgZGV0YWlscy5cclxuICBcdGxvY2F0ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdG9wdGlvbnMgPSB0aGlzLl9sb2NhdGVPcHRpb25zID0gZXh0ZW5kKHtcclxuICBcdFx0XHR0aW1lb3V0OiAxMDAwMCxcclxuICBcdFx0XHR3YXRjaDogZmFsc2VcclxuICBcdFx0XHQvLyBzZXRWaWV3OiBmYWxzZVxyXG4gIFx0XHRcdC8vIG1heFpvb206IDxOdW1iZXI+XHJcbiAgXHRcdFx0Ly8gbWF4aW11bUFnZTogMFxyXG4gIFx0XHRcdC8vIGVuYWJsZUhpZ2hBY2N1cmFjeTogZmFsc2VcclxuICBcdFx0fSwgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHRpZiAoISgnZ2VvbG9jYXRpb24nIGluIG5hdmlnYXRvcikpIHtcclxuICBcdFx0XHR0aGlzLl9oYW5kbGVHZW9sb2NhdGlvbkVycm9yKHtcclxuICBcdFx0XHRcdGNvZGU6IDAsXHJcbiAgXHRcdFx0XHRtZXNzYWdlOiAnR2VvbG9jYXRpb24gbm90IHN1cHBvcnRlZC4nXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHZhciBvblJlc3BvbnNlID0gYmluZCh0aGlzLl9oYW5kbGVHZW9sb2NhdGlvblJlc3BvbnNlLCB0aGlzKSxcclxuICBcdFx0ICAgIG9uRXJyb3IgPSBiaW5kKHRoaXMuX2hhbmRsZUdlb2xvY2F0aW9uRXJyb3IsIHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMud2F0Y2gpIHtcclxuICBcdFx0XHR0aGlzLl9sb2NhdGlvbldhdGNoSWQgPVxyXG4gIFx0XHRcdCAgICAgICAgbmF2aWdhdG9yLmdlb2xvY2F0aW9uLndhdGNoUG9zaXRpb24ob25SZXNwb25zZSwgb25FcnJvciwgb3B0aW9ucyk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihvblJlc3BvbnNlLCBvbkVycm9yLCBvcHRpb25zKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzdG9wTG9jYXRlKCk6IHRoaXNcclxuICBcdC8vIFN0b3BzIHdhdGNoaW5nIGxvY2F0aW9uIHByZXZpb3VzbHkgaW5pdGlhdGVkIGJ5IGBtYXAubG9jYXRlKHt3YXRjaDogdHJ1ZX0pYFxyXG4gIFx0Ly8gYW5kIGFib3J0cyByZXNldHRpbmcgdGhlIG1hcCB2aWV3IGlmIG1hcC5sb2NhdGUgd2FzIGNhbGxlZCB3aXRoXHJcbiAgXHQvLyBge3NldFZpZXc6IHRydWV9YC5cclxuICBcdHN0b3BMb2NhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKG5hdmlnYXRvci5nZW9sb2NhdGlvbiAmJiBuYXZpZ2F0b3IuZ2VvbG9jYXRpb24uY2xlYXJXYXRjaCkge1xyXG4gIFx0XHRcdG5hdmlnYXRvci5nZW9sb2NhdGlvbi5jbGVhcldhdGNoKHRoaXMuX2xvY2F0aW9uV2F0Y2hJZCk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKHRoaXMuX2xvY2F0ZU9wdGlvbnMpIHtcclxuICBcdFx0XHR0aGlzLl9sb2NhdGVPcHRpb25zLnNldFZpZXcgPSBmYWxzZTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X2hhbmRsZUdlb2xvY2F0aW9uRXJyb3I6IGZ1bmN0aW9uIChlcnJvcikge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2NvbnRhaW5lci5fbGVhZmxldF9pZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBjID0gZXJyb3IuY29kZSxcclxuICBcdFx0ICAgIG1lc3NhZ2UgPSBlcnJvci5tZXNzYWdlIHx8XHJcbiAgXHRcdCAgICAgICAgICAgIChjID09PSAxID8gJ3Blcm1pc3Npb24gZGVuaWVkJyA6XHJcbiAgXHRcdCAgICAgICAgICAgIChjID09PSAyID8gJ3Bvc2l0aW9uIHVuYXZhaWxhYmxlJyA6ICd0aW1lb3V0JykpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvY2F0ZU9wdGlvbnMuc2V0VmlldyAmJiAhdGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5maXRXb3JsZCgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBAc2VjdGlvbiBMb2NhdGlvbiBldmVudHNcclxuICBcdFx0Ly8gQGV2ZW50IGxvY2F0aW9uZXJyb3I6IEVycm9yRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBnZW9sb2NhdGlvbiAodXNpbmcgdGhlIFtgbG9jYXRlYF0oI21hcC1sb2NhdGUpIG1ldGhvZCkgZmFpbGVkLlxyXG4gIFx0XHR0aGlzLmZpcmUoJ2xvY2F0aW9uZXJyb3InLCB7XHJcbiAgXHRcdFx0Y29kZTogYyxcclxuICBcdFx0XHRtZXNzYWdlOiAnR2VvbG9jYXRpb24gZXJyb3I6ICcgKyBtZXNzYWdlICsgJy4nXHJcbiAgXHRcdH0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaGFuZGxlR2VvbG9jYXRpb25SZXNwb25zZTogZnVuY3Rpb24gKHBvcykge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2NvbnRhaW5lci5fbGVhZmxldF9pZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBsYXQgPSBwb3MuY29vcmRzLmxhdGl0dWRlLFxyXG4gIFx0XHQgICAgbG5nID0gcG9zLmNvb3Jkcy5sb25naXR1ZGUsXHJcbiAgXHRcdCAgICBsYXRsbmcgPSBuZXcgTGF0TG5nKGxhdCwgbG5nKSxcclxuICBcdFx0ICAgIGJvdW5kcyA9IGxhdGxuZy50b0JvdW5kcyhwb3MuY29vcmRzLmFjY3VyYWN5ICogMiksXHJcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5fbG9jYXRlT3B0aW9ucztcclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLnNldFZpZXcpIHtcclxuICBcdFx0XHR2YXIgem9vbSA9IHRoaXMuZ2V0Qm91bmRzWm9vbShib3VuZHMpO1xyXG4gIFx0XHRcdHRoaXMuc2V0VmlldyhsYXRsbmcsIG9wdGlvbnMubWF4Wm9vbSA/IE1hdGgubWluKHpvb20sIG9wdGlvbnMubWF4Wm9vbSkgOiB6b29tKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGRhdGEgPSB7XHJcbiAgXHRcdFx0bGF0bG5nOiBsYXRsbmcsXHJcbiAgXHRcdFx0Ym91bmRzOiBib3VuZHMsXHJcbiAgXHRcdFx0dGltZXN0YW1wOiBwb3MudGltZXN0YW1wXHJcbiAgXHRcdH07XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpIGluIHBvcy5jb29yZHMpIHtcclxuICBcdFx0XHRpZiAodHlwZW9mIHBvcy5jb29yZHNbaV0gPT09ICdudW1iZXInKSB7XHJcbiAgXHRcdFx0XHRkYXRhW2ldID0gcG9zLmNvb3Jkc1tpXTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2NhdGlvbmZvdW5kOiBMb2NhdGlvbkV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gZ2VvbG9jYXRpb24gKHVzaW5nIHRoZSBbYGxvY2F0ZWBdKCNtYXAtbG9jYXRlKSBtZXRob2QpXHJcbiAgXHRcdC8vIHdlbnQgc3VjY2Vzc2Z1bGx5LlxyXG4gIFx0XHR0aGlzLmZpcmUoJ2xvY2F0aW9uZm91bmQnLCBkYXRhKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gVE9ETyBBcHByb3ByaWF0ZSBkb2NzIHNlY3Rpb24/XHJcbiAgXHQvLyBAc2VjdGlvbiBPdGhlciBNZXRob2RzXHJcbiAgXHQvLyBAbWV0aG9kIGFkZEhhbmRsZXIobmFtZTogU3RyaW5nLCBIYW5kbGVyQ2xhc3M6IEZ1bmN0aW9uKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhIG5ldyBgSGFuZGxlcmAgdG8gdGhlIG1hcCwgZ2l2ZW4gaXRzIG5hbWUgYW5kIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLlxyXG4gIFx0YWRkSGFuZGxlcjogZnVuY3Rpb24gKG5hbWUsIEhhbmRsZXJDbGFzcykge1xyXG4gIFx0XHRpZiAoIUhhbmRsZXJDbGFzcykgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0dmFyIGhhbmRsZXIgPSB0aGlzW25hbWVdID0gbmV3IEhhbmRsZXJDbGFzcyh0aGlzKTtcclxuXHJcbiAgXHRcdHRoaXMuX2hhbmRsZXJzLnB1c2goaGFuZGxlcik7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zW25hbWVdKSB7XHJcbiAgXHRcdFx0aGFuZGxlci5lbmFibGUoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlKCk6IHRoaXNcclxuICBcdC8vIERlc3Ryb3lzIHRoZSBtYXAgYW5kIGNsZWFycyBhbGwgcmVsYXRlZCBldmVudCBsaXN0ZW5lcnMuXHJcbiAgXHRyZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdHRoaXMuX2luaXRFdmVudHModHJ1ZSk7XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubWF4Qm91bmRzKSB7IHRoaXMub2ZmKCdtb3ZlZW5kJywgdGhpcy5fcGFuSW5zaWRlTWF4Qm91bmRzKTsgfVxyXG5cclxuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcklkICE9PSB0aGlzLl9jb250YWluZXIuX2xlYWZsZXRfaWQpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ01hcCBjb250YWluZXIgaXMgYmVpbmcgcmV1c2VkIGJ5IGFub3RoZXIgaW5zdGFuY2UnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dHJ5IHtcclxuICBcdFx0XHQvLyB0aHJvd3MgZXJyb3IgaW4gSUU2LThcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fY29udGFpbmVyLl9sZWFmbGV0X2lkO1xyXG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl9jb250YWluZXJJZDtcclxuICBcdFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHRcdC8qZXNsaW50LWRpc2FibGUgKi9cclxuICBcdFx0XHR0aGlzLl9jb250YWluZXIuX2xlYWZsZXRfaWQgPSB1bmRlZmluZWQ7XHJcbiAgXHRcdFx0LyogZXNsaW50LWVuYWJsZSAqL1xyXG4gIFx0XHRcdHRoaXMuX2NvbnRhaW5lcklkID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9jYXRpb25XYXRjaElkICE9PSB1bmRlZmluZWQpIHtcclxuICBcdFx0XHR0aGlzLnN0b3BMb2NhdGUoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fc3RvcCgpO1xyXG5cclxuICBcdFx0cmVtb3ZlKHRoaXMuX21hcFBhbmUpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2NsZWFyQ29udHJvbFBvcykge1xyXG4gIFx0XHRcdHRoaXMuX2NsZWFyQ29udHJvbFBvcygpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICh0aGlzLl9yZXNpemVSZXF1ZXN0KSB7XHJcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3Jlc2l6ZVJlcXVlc3QpO1xyXG4gIFx0XHRcdHRoaXMuX3Jlc2l6ZVJlcXVlc3QgPSBudWxsO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9jbGVhckhhbmRsZXJzKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gTWFwIHN0YXRlIGNoYW5nZSBldmVudHNcclxuICBcdFx0XHQvLyBAZXZlbnQgdW5sb2FkOiBFdmVudFxyXG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBpcyBkZXN0cm95ZWQgd2l0aCBbcmVtb3ZlXSgjbWFwLXJlbW92ZSkgbWV0aG9kLlxyXG4gIFx0XHRcdHRoaXMuZmlyZSgndW5sb2FkJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHZhciBpO1xyXG4gIFx0XHRmb3IgKGkgaW4gdGhpcy5fbGF5ZXJzKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2ldLnJlbW92ZSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGZvciAoaSBpbiB0aGlzLl9wYW5lcykge1xyXG4gIFx0XHRcdHJlbW92ZSh0aGlzLl9wYW5lc1tpXSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2xheWVycyA9IFtdO1xyXG4gIFx0XHR0aGlzLl9wYW5lcyA9IFtdO1xyXG4gIFx0XHRkZWxldGUgdGhpcy5fbWFwUGFuZTtcclxuICBcdFx0ZGVsZXRlIHRoaXMuX3JlbmRlcmVyO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE90aGVyIE1ldGhvZHNcclxuICBcdC8vIEBtZXRob2QgY3JlYXRlUGFuZShuYW1lOiBTdHJpbmcsIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIENyZWF0ZXMgYSBuZXcgW21hcCBwYW5lXSgjbWFwLXBhbmUpIHdpdGggdGhlIGdpdmVuIG5hbWUgaWYgaXQgZG9lc24ndCBleGlzdCBhbHJlYWR5LFxyXG4gIFx0Ly8gdGhlbiByZXR1cm5zIGl0LiBUaGUgcGFuZSBpcyBjcmVhdGVkIGFzIGEgY2hpbGQgb2YgYGNvbnRhaW5lcmAsIG9yXHJcbiAgXHQvLyBhcyBhIGNoaWxkIG9mIHRoZSBtYWluIG1hcCBwYW5lIGlmIG5vdCBzZXQuXHJcbiAgXHRjcmVhdGVQYW5lOiBmdW5jdGlvbiAobmFtZSwgY29udGFpbmVyKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSAnbGVhZmxldC1wYW5lJyArIChuYW1lID8gJyBsZWFmbGV0LScgKyBuYW1lLnJlcGxhY2UoJ1BhbmUnLCAnJykgKyAnLXBhbmUnIDogJycpLFxyXG4gIFx0XHQgICAgcGFuZSA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUsIGNvbnRhaW5lciB8fCB0aGlzLl9tYXBQYW5lKTtcclxuXHJcbiAgXHRcdGlmIChuYW1lKSB7XHJcbiAgXHRcdFx0dGhpcy5fcGFuZXNbbmFtZV0gPSBwYW5lO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBwYW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBNZXRob2RzIGZvciBHZXR0aW5nIE1hcCBTdGF0ZVxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Q2VudGVyKCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIGNlbnRlciBvZiB0aGUgbWFwIHZpZXdcclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl9jaGVja0lmTG9hZGVkKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbGFzdENlbnRlciAmJiAhdGhpcy5fbW92ZWQoKSkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzLl9sYXN0Q2VudGVyLmNsb25lKCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMubGF5ZXJQb2ludFRvTGF0TG5nKHRoaXMuX2dldENlbnRlckxheWVyUG9pbnQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Wm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGN1cnJlbnQgem9vbSBsZXZlbCBvZiB0aGUgbWFwIHZpZXdcclxuICBcdGdldFpvb206IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX3pvb207XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Qm91bmRzKCk6IExhdExuZ0JvdW5kc1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIGJvdW5kcyB2aXNpYmxlIGluIHRoZSBjdXJyZW50IG1hcCB2aWV3XHJcbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuZ2V0UGl4ZWxCb3VuZHMoKSxcclxuICBcdFx0ICAgIHN3ID0gdGhpcy51bnByb2plY3QoYm91bmRzLmdldEJvdHRvbUxlZnQoKSksXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMudW5wcm9qZWN0KGJvdW5kcy5nZXRUb3BSaWdodCgpKTtcclxuXHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nQm91bmRzKHN3LCBuZSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0TWluWm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwIChpZiBzZXQgaW4gdGhlIGBtaW5ab29tYCBvcHRpb24gb2YgdGhlIG1hcCBvciBvZiBhbnkgbGF5ZXJzKSwgb3IgYDBgIGJ5IGRlZmF1bHQuXHJcbiAgXHRnZXRNaW5ab29tOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMubWluWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fbGF5ZXJzTWluWm9vbSB8fCAwIDogdGhpcy5vcHRpb25zLm1pblpvb207XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0TWF4Wm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwIChpZiBzZXQgaW4gdGhlIGBtYXhab29tYCBvcHRpb24gb2YgdGhlIG1hcCBvciBvZiBhbnkgbGF5ZXJzKS5cclxuICBcdGdldE1heFpvb206IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgP1xyXG4gIFx0XHRcdCh0aGlzLl9sYXllcnNNYXhab29tID09PSB1bmRlZmluZWQgPyBJbmZpbml0eSA6IHRoaXMuX2xheWVyc01heFpvb20pIDpcclxuICBcdFx0XHR0aGlzLm9wdGlvbnMubWF4Wm9vbTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRCb3VuZHNab29tKGJvdW5kczogTGF0TG5nQm91bmRzLCBpbnNpZGU/OiBCb29sZWFuLCBwYWRkaW5nPzogUG9pbnQpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBvbiB3aGljaCB0aGUgZ2l2ZW4gYm91bmRzIGZpdCB0byB0aGUgbWFwXHJcbiAgXHQvLyB2aWV3IGluIGl0cyBlbnRpcmV0eS4gSWYgYGluc2lkZWAgKG9wdGlvbmFsKSBpcyBzZXQgdG8gYHRydWVgLCB0aGUgbWV0aG9kXHJcbiAgXHQvLyBpbnN0ZWFkIHJldHVybnMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBvbiB3aGljaCB0aGUgbWFwIHZpZXcgZml0cyBpbnRvXHJcbiAgXHQvLyB0aGUgZ2l2ZW4gYm91bmRzIGluIGl0cyBlbnRpcmV0eS5cclxuICBcdGdldEJvdW5kc1pvb206IGZ1bmN0aW9uIChib3VuZHMsIGluc2lkZSwgcGFkZGluZykgeyAvLyAoTGF0TG5nQm91bmRzWywgQm9vbGVhbiwgUG9pbnRdKSAtPiBOdW1iZXJcclxuICBcdFx0Ym91bmRzID0gdG9MYXRMbmdCb3VuZHMoYm91bmRzKTtcclxuICBcdFx0cGFkZGluZyA9IHRvUG9pbnQocGFkZGluZyB8fCBbMCwgMF0pO1xyXG5cclxuICBcdFx0dmFyIHpvb20gPSB0aGlzLmdldFpvb20oKSB8fCAwLFxyXG4gIFx0XHQgICAgbWluID0gdGhpcy5nZXRNaW5ab29tKCksXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLmdldE1heFpvb20oKSxcclxuICBcdFx0ICAgIG53ID0gYm91bmRzLmdldE5vcnRoV2VzdCgpLFxyXG4gIFx0XHQgICAgc2UgPSBib3VuZHMuZ2V0U291dGhFYXN0KCksXHJcbiAgXHRcdCAgICBzaXplID0gdGhpcy5nZXRTaXplKCkuc3VidHJhY3QocGFkZGluZyksXHJcbiAgXHRcdCAgICBib3VuZHNTaXplID0gdG9Cb3VuZHModGhpcy5wcm9qZWN0KHNlLCB6b29tKSwgdGhpcy5wcm9qZWN0KG53LCB6b29tKSkuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgc25hcCA9IEJyb3dzZXIuYW55M2QgPyB0aGlzLm9wdGlvbnMuem9vbVNuYXAgOiAxLFxyXG4gIFx0XHQgICAgc2NhbGV4ID0gc2l6ZS54IC8gYm91bmRzU2l6ZS54LFxyXG4gIFx0XHQgICAgc2NhbGV5ID0gc2l6ZS55IC8gYm91bmRzU2l6ZS55LFxyXG4gIFx0XHQgICAgc2NhbGUgPSBpbnNpZGUgPyBNYXRoLm1heChzY2FsZXgsIHNjYWxleSkgOiBNYXRoLm1pbihzY2FsZXgsIHNjYWxleSk7XHJcblxyXG4gIFx0XHR6b29tID0gdGhpcy5nZXRTY2FsZVpvb20oc2NhbGUsIHpvb20pO1xyXG5cclxuICBcdFx0aWYgKHNuYXApIHtcclxuICBcdFx0XHR6b29tID0gTWF0aC5yb3VuZCh6b29tIC8gKHNuYXAgLyAxMDApKSAqIChzbmFwIC8gMTAwKTsgLy8gZG9uJ3QganVtcCBpZiB3aXRoaW4gMSUgb2YgYSBzbmFwIGxldmVsXHJcbiAgXHRcdFx0em9vbSA9IGluc2lkZSA/IE1hdGguY2VpbCh6b29tIC8gc25hcCkgKiBzbmFwIDogTWF0aC5mbG9vcih6b29tIC8gc25hcCkgKiBzbmFwO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gTWF0aC5tYXgobWluLCBNYXRoLm1pbihtYXgsIHpvb20pKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRTaXplKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHNpemUgb2YgdGhlIG1hcCBjb250YWluZXIgKGluIHBpeGVscykuXHJcbiAgXHRnZXRTaXplOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fc2l6ZSB8fCB0aGlzLl9zaXplQ2hhbmdlZCkge1xyXG4gIFx0XHRcdHRoaXMuX3NpemUgPSBuZXcgUG9pbnQoXHJcbiAgXHRcdFx0XHR0aGlzLl9jb250YWluZXIuY2xpZW50V2lkdGggfHwgMCxcclxuICBcdFx0XHRcdHRoaXMuX2NvbnRhaW5lci5jbGllbnRIZWlnaHQgfHwgMCk7XHJcblxyXG4gIFx0XHRcdHRoaXMuX3NpemVDaGFuZ2VkID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMuX3NpemUuY2xvbmUoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQaXhlbEJvdW5kcygpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdW5kcyBvZiB0aGUgY3VycmVudCBtYXAgdmlldyBpbiBwcm9qZWN0ZWQgcGl4ZWxcclxuICBcdC8vIGNvb3JkaW5hdGVzIChzb21ldGltZXMgdXNlZnVsIGluIGxheWVyIGFuZCBvdmVybGF5IGltcGxlbWVudGF0aW9ucykuXHJcbiAgXHRnZXRQaXhlbEJvdW5kczogZnVuY3Rpb24gKGNlbnRlciwgem9vbSkge1xyXG4gIFx0XHR2YXIgdG9wTGVmdFBvaW50ID0gdGhpcy5fZ2V0VG9wTGVmdFBvaW50KGNlbnRlciwgem9vbSk7XHJcbiAgXHRcdHJldHVybiBuZXcgQm91bmRzKHRvcExlZnRQb2ludCwgdG9wTGVmdFBvaW50LmFkZCh0aGlzLmdldFNpemUoKSkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBUT0RPOiBDaGVjayBzZW1hbnRpY3MgLSBpc24ndCB0aGUgcGl4ZWwgb3JpZ2luIHRoZSAwLDAgY29vcmQgcmVsYXRpdmUgdG9cclxuICBcdC8vIHRoZSBtYXAgcGFuZT8gXCJsZWZ0IHBvaW50IG9mIHRoZSBtYXAgbGF5ZXJcIiBjYW4gYmUgY29uZnVzaW5nLCBzcGVjaWFsbHlcclxuICBcdC8vIHNpbmNlIHRoZXJlIGNhbiBiZSBuZWdhdGl2ZSBvZmZzZXRzLlxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQaXhlbE9yaWdpbigpOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgcHJvamVjdGVkIHBpeGVsIGNvb3JkaW5hdGVzIG9mIHRoZSB0b3AgbGVmdCBwb2ludCBvZlxyXG4gIFx0Ly8gdGhlIG1hcCBsYXllciAodXNlZnVsIGluIGN1c3RvbSBsYXllciBhbmQgb3ZlcmxheSBpbXBsZW1lbnRhdGlvbnMpLlxyXG4gIFx0Z2V0UGl4ZWxPcmlnaW46IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5fY2hlY2tJZkxvYWRlZCgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fcGl4ZWxPcmlnaW47XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0UGl4ZWxXb3JsZEJvdW5kcyh6b29tPzogTnVtYmVyKTogQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB3b3JsZCdzIGJvdW5kcyBpbiBwaXhlbCBjb29yZGluYXRlcyBmb3Igem9vbSBsZXZlbCBgem9vbWAuXHJcbiAgXHQvLyBJZiBgem9vbWAgaXMgb21pdHRlZCwgdGhlIG1hcCdzIGN1cnJlbnQgem9vbSBsZXZlbCBpcyB1c2VkLlxyXG4gIFx0Z2V0UGl4ZWxXb3JsZEJvdW5kczogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMuZ2V0UHJvamVjdGVkQm91bmRzKHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuZ2V0Wm9vbSgpIDogem9vbSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE90aGVyIE1ldGhvZHNcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFBhbmUocGFuZTogU3RyaW5nfEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgYSBbbWFwIHBhbmVdKCNtYXAtcGFuZSksIGdpdmVuIGl0cyBuYW1lIG9yIGl0cyBIVE1MIGVsZW1lbnQgKGl0cyBpZGVudGl0eSkuXHJcbiAgXHRnZXRQYW5lOiBmdW5jdGlvbiAocGFuZSkge1xyXG4gIFx0XHRyZXR1cm4gdHlwZW9mIHBhbmUgPT09ICdzdHJpbmcnID8gdGhpcy5fcGFuZXNbcGFuZV0gOiBwYW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFBhbmVzKCk6IE9iamVjdFxyXG4gIFx0Ly8gUmV0dXJucyBhIHBsYWluIG9iamVjdCBjb250YWluaW5nIHRoZSBuYW1lcyBvZiBhbGwgW3BhbmVzXSgjbWFwLXBhbmUpIGFzIGtleXMgYW5kXHJcbiAgXHQvLyB0aGUgcGFuZXMgYXMgdmFsdWVzLlxyXG4gIFx0Z2V0UGFuZXM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX3BhbmVzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldENvbnRhaW5lcjogSFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIEhUTUwgZWxlbWVudCB0aGF0IGNvbnRhaW5zIHRoZSBtYXAuXHJcbiAgXHRnZXRDb250YWluZXI6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBzZWN0aW9uIENvbnZlcnNpb24gTWV0aG9kc1xyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Wm9vbVNjYWxlKHRvWm9vbTogTnVtYmVyLCBmcm9tWm9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBzY2FsZSBmYWN0b3IgdG8gYmUgYXBwbGllZCB0byBhIG1hcCB0cmFuc2l0aW9uIGZyb20gem9vbSBsZXZlbFxyXG4gIFx0Ly8gYGZyb21ab29tYCB0byBgdG9ab29tYC4gVXNlZCBpbnRlcm5hbGx5IHRvIGhlbHAgd2l0aCB6b29tIGFuaW1hdGlvbnMuXHJcbiAgXHRnZXRab29tU2NhbGU6IGZ1bmN0aW9uICh0b1pvb20sIGZyb21ab29tKSB7XHJcbiAgXHRcdC8vIFRPRE8gcmVwbGFjZSB3aXRoIHVuaXZlcnNhbCBpbXBsZW1lbnRhdGlvbiBhZnRlciByZWZhY3RvcmluZyBwcm9qZWN0aW9uc1xyXG4gIFx0XHR2YXIgY3JzID0gdGhpcy5vcHRpb25zLmNycztcclxuICBcdFx0ZnJvbVpvb20gPSBmcm9tWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fem9vbSA6IGZyb21ab29tO1xyXG4gIFx0XHRyZXR1cm4gY3JzLnNjYWxlKHRvWm9vbSkgLyBjcnMuc2NhbGUoZnJvbVpvb20pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFNjYWxlWm9vbShzY2FsZTogTnVtYmVyLCBmcm9tWm9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB6b29tIGxldmVsIHRoYXQgdGhlIG1hcCB3b3VsZCBlbmQgdXAgYXQsIGlmIGl0IGlzIGF0IGBmcm9tWm9vbWBcclxuICBcdC8vIGxldmVsIGFuZCBldmVyeXRoaW5nIGlzIHNjYWxlZCBieSBhIGZhY3RvciBvZiBgc2NhbGVgLiBJbnZlcnNlIG9mXHJcbiAgXHQvLyBbYGdldFpvb21TY2FsZWBdKCNtYXAtZ2V0Wm9vbVNjYWxlKS5cclxuICBcdGdldFNjYWxlWm9vbTogZnVuY3Rpb24gKHNjYWxlLCBmcm9tWm9vbSkge1xyXG4gIFx0XHR2YXIgY3JzID0gdGhpcy5vcHRpb25zLmNycztcclxuICBcdFx0ZnJvbVpvb20gPSBmcm9tWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fem9vbSA6IGZyb21ab29tO1xyXG4gIFx0XHR2YXIgem9vbSA9IGNycy56b29tKHNjYWxlICogY3JzLnNjYWxlKGZyb21ab29tKSk7XHJcbiAgXHRcdHJldHVybiBpc05hTih6b29tKSA/IEluZmluaXR5IDogem9vbTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBwcm9qZWN0KGxhdGxuZzogTGF0TG5nLCB6b29tOiBOdW1iZXIpOiBQb2ludFxyXG4gIFx0Ly8gUHJvamVjdHMgYSBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSBgTGF0TG5nYCBhY2NvcmRpbmcgdG8gdGhlIHByb2plY3Rpb25cclxuICBcdC8vIG9mIHRoZSBtYXAncyBDUlMsIHRoZW4gc2NhbGVzIGl0IGFjY29yZGluZyB0byBgem9vbWAgYW5kIHRoZSBDUlMnc1xyXG4gIFx0Ly8gYFRyYW5zZm9ybWF0aW9uYC4gVGhlIHJlc3VsdCBpcyBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvXHJcbiAgXHQvLyB0aGUgQ1JTIG9yaWdpbi5cclxuICBcdHByb2plY3Q6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20pIHtcclxuICBcdFx0em9vbSA9IHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuX3pvb20gOiB6b29tO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5sYXRMbmdUb1BvaW50KHRvTGF0TG5nKGxhdGxuZyksIHpvb20pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVucHJvamVjdChwb2ludDogUG9pbnQsIHpvb206IE51bWJlcik6IExhdExuZ1xyXG4gIFx0Ly8gSW52ZXJzZSBvZiBbYHByb2plY3RgXSgjbWFwLXByb2plY3QpLlxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQsIHpvb20pIHtcclxuICBcdFx0em9vbSA9IHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuX3pvb20gOiB6b29tO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5wb2ludFRvTGF0TG5nKHRvUG9pbnQocG9pbnQpLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBsYXllclBvaW50VG9MYXRMbmcocG9pbnQ6IFBvaW50KTogTGF0TG5nXHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLFxyXG4gIFx0Ly8gcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSAoZm9yIHRoZSBjdXJyZW50IHpvb20gbGV2ZWwpLlxyXG4gIFx0bGF5ZXJQb2ludFRvTGF0TG5nOiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dmFyIHByb2plY3RlZFBvaW50ID0gdG9Qb2ludChwb2ludCkuYWRkKHRoaXMuZ2V0UGl4ZWxPcmlnaW4oKSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLnVucHJvamVjdChwcm9qZWN0ZWRQb2ludCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbGF0TG5nVG9MYXllclBvaW50KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIEdpdmVuIGEgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGUsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgcGl4ZWwgY29vcmRpbmF0ZVxyXG4gIFx0Ly8gcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLlxyXG4gIFx0bGF0TG5nVG9MYXllclBvaW50OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHZhciBwcm9qZWN0ZWRQb2ludCA9IHRoaXMucHJvamVjdCh0b0xhdExuZyhsYXRsbmcpKS5fcm91bmQoKTtcclxuICBcdFx0cmV0dXJuIHByb2plY3RlZFBvaW50Ll9zdWJ0cmFjdCh0aGlzLmdldFBpeGVsT3JpZ2luKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHdyYXBMYXRMbmcobGF0bG5nOiBMYXRMbmcpOiBMYXRMbmdcclxuICBcdC8vIFJldHVybnMgYSBgTGF0TG5nYCB3aGVyZSBgbGF0YCBhbmQgYGxuZ2AgaGFzIGJlZW4gd3JhcHBlZCBhY2NvcmRpbmcgdG8gdGhlXHJcbiAgXHQvLyBtYXAncyBDUlMncyBgd3JhcExhdGAgYW5kIGB3cmFwTG5nYCBwcm9wZXJ0aWVzLCBpZiB0aGV5IGFyZSBvdXRzaWRlIHRoZVxyXG4gIFx0Ly8gQ1JTJ3MgYm91bmRzLlxyXG4gIFx0Ly8gQnkgZGVmYXVsdCB0aGlzIG1lYW5zIGxvbmdpdHVkZSBpcyB3cmFwcGVkIGFyb3VuZCB0aGUgZGF0ZWxpbmUgc28gaXRzXHJcbiAgXHQvLyB2YWx1ZSBpcyBiZXR3ZWVuIC0xODAgYW5kICsxODAgZGVncmVlcy5cclxuICBcdHdyYXBMYXRMbmc6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMud3JhcExhdExuZyh0b0xhdExuZyhsYXRsbmcpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB3cmFwTGF0TG5nQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKTogTGF0TG5nQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIGEgYExhdExuZ0JvdW5kc2Agd2l0aCB0aGUgc2FtZSBzaXplIGFzIHRoZSBnaXZlbiBvbmUsIGVuc3VyaW5nIHRoYXRcclxuICBcdC8vIGl0cyBjZW50ZXIgaXMgd2l0aGluIHRoZSBDUlMncyBib3VuZHMuXHJcbiAgXHQvLyBCeSBkZWZhdWx0IHRoaXMgbWVhbnMgdGhlIGNlbnRlciBsb25naXR1ZGUgaXMgd3JhcHBlZCBhcm91bmQgdGhlIGRhdGVsaW5lIHNvIGl0c1xyXG4gIFx0Ly8gdmFsdWUgaXMgYmV0d2VlbiAtMTgwIGFuZCArMTgwIGRlZ3JlZXMsIGFuZCB0aGUgbWFqb3JpdHkgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Ly8gb3ZlcmxhcHMgdGhlIENSUydzIGJvdW5kcy5cclxuICBcdHdyYXBMYXRMbmdCb3VuZHM6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMud3JhcExhdExuZ0JvdW5kcyh0b0xhdExuZ0JvdW5kcyhsYXRsbmcpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXN0YW5jZShsYXRsbmcxOiBMYXRMbmcsIGxhdGxuZzI6IExhdExuZyk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0d28gZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGVzIGFjY29yZGluZyB0b1xyXG4gIFx0Ly8gdGhlIG1hcCdzIENSUy4gQnkgZGVmYXVsdCB0aGlzIG1lYXN1cmVzIGRpc3RhbmNlIGluIG1ldGVycy5cclxuICBcdGRpc3RhbmNlOiBmdW5jdGlvbiAobGF0bG5nMSwgbGF0bG5nMikge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5kaXN0YW5jZSh0b0xhdExuZyhsYXRsbmcxKSwgdG9MYXRMbmcobGF0bG5nMikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KHBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIG1hcCBjb250YWluZXIsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmdcclxuICBcdC8vIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLlxyXG4gIFx0Y29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQ6IGZ1bmN0aW9uIChwb2ludCkgeyAvLyAoUG9pbnQpXHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHBvaW50KS5zdWJ0cmFjdCh0aGlzLl9nZXRNYXBQYW5lUG9zKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGxheWVyUG9pbnRUb0NvbnRhaW5lclBvaW50KHBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLFxyXG4gIFx0Ly8gcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZSBtYXAgY29udGFpbmVyLlxyXG4gIFx0bGF5ZXJQb2ludFRvQ29udGFpbmVyUG9pbnQ6IGZ1bmN0aW9uIChwb2ludCkgeyAvLyAoUG9pbnQpXHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHBvaW50KS5hZGQodGhpcy5fZ2V0TWFwUGFuZVBvcygpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjb250YWluZXJQb2ludFRvTGF0TG5nKHBvaW50OiBQb2ludCk6IExhdExuZ1xyXG4gIFx0Ly8gR2l2ZW4gYSBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZSBtYXAgY29udGFpbmVyLCByZXR1cm5zXHJcbiAgXHQvLyB0aGUgY29ycmVzcG9uZGluZyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSAoZm9yIHRoZSBjdXJyZW50IHpvb20gbGV2ZWwpLlxyXG4gIFx0Y29udGFpbmVyUG9pbnRUb0xhdExuZzogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHZhciBsYXllclBvaW50ID0gdGhpcy5jb250YWluZXJQb2ludFRvTGF5ZXJQb2ludCh0b1BvaW50KHBvaW50KSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0xhdExuZyhsYXllclBvaW50KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBsYXRMbmdUb0NvbnRhaW5lclBvaW50KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIEdpdmVuIGEgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGUsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgcGl4ZWwgY29vcmRpbmF0ZVxyXG4gIFx0Ly8gcmVsYXRpdmUgdG8gdGhlIG1hcCBjb250YWluZXIuXHJcbiAgXHRsYXRMbmdUb0NvbnRhaW5lclBvaW50OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0NvbnRhaW5lclBvaW50KHRoaXMubGF0TG5nVG9MYXllclBvaW50KHRvTGF0TG5nKGxhdGxuZykpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBtb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChldjogTW91c2VFdmVudCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIE1vdXNlRXZlbnQgb2JqZWN0LCByZXR1cm5zIHRoZSBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZVxyXG4gIFx0Ly8gbWFwIGNvbnRhaW5lciB3aGVyZSB0aGUgZXZlbnQgdG9vayBwbGFjZS5cclxuICBcdG1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50OiBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHRyZXR1cm4gZ2V0TW91c2VQb3NpdGlvbihlLCB0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZXY6IE1vdXNlRXZlbnQpOiBQb2ludFxyXG4gIFx0Ly8gR2l2ZW4gYSBNb3VzZUV2ZW50IG9iamVjdCwgcmV0dXJucyB0aGUgcGl4ZWwgY29vcmRpbmF0ZSByZWxhdGl2ZSB0b1xyXG4gIFx0Ly8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pIHdoZXJlIHRoZSBldmVudCB0b29rIHBsYWNlLlxyXG4gIFx0bW91c2VFdmVudFRvTGF5ZXJQb2ludDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQodGhpcy5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbW91c2VFdmVudFRvTGF0TG5nKGV2OiBNb3VzZUV2ZW50KTogTGF0TG5nXHJcbiAgXHQvLyBHaXZlbiBhIE1vdXNlRXZlbnQgb2JqZWN0LCByZXR1cm5zIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlIHdoZXJlIHRoZVxyXG4gIFx0Ly8gZXZlbnQgdG9vayBwbGFjZS5cclxuICBcdG1vdXNlRXZlbnRUb0xhdExuZzogZnVuY3Rpb24gKGUpIHsgLy8gKE1vdXNlRXZlbnQpXHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0xhdExuZyh0aGlzLm1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZSkpO1xyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gbWFwIGluaXRpYWxpemF0aW9uIG1ldGhvZHNcclxuXHJcbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKGlkKSB7XHJcbiAgXHRcdHZhciBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIgPSBnZXQoaWQpO1xyXG5cclxuICBcdFx0aWYgKCFjb250YWluZXIpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ01hcCBjb250YWluZXIgbm90IGZvdW5kLicpO1xyXG4gIFx0XHR9IGVsc2UgaWYgKGNvbnRhaW5lci5fbGVhZmxldF9pZCkge1xyXG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignTWFwIGNvbnRhaW5lciBpcyBhbHJlYWR5IGluaXRpYWxpemVkLicpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRvbihjb250YWluZXIsICdzY3JvbGwnLCB0aGlzLl9vblNjcm9sbCwgdGhpcyk7XHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lcklkID0gc3RhbXAoY29udGFpbmVyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lcjtcclxuXHJcbiAgXHRcdHRoaXMuX2ZhZGVBbmltYXRlZCA9IHRoaXMub3B0aW9ucy5mYWRlQW5pbWF0aW9uICYmIEJyb3dzZXIuYW55M2Q7XHJcblxyXG4gIFx0XHRhZGRDbGFzcyhjb250YWluZXIsICdsZWFmbGV0LWNvbnRhaW5lcicgK1xyXG4gIFx0XHRcdChCcm93c2VyLnRvdWNoID8gJyBsZWFmbGV0LXRvdWNoJyA6ICcnKSArXHJcbiAgXHRcdFx0KEJyb3dzZXIucmV0aW5hID8gJyBsZWFmbGV0LXJldGluYScgOiAnJykgK1xyXG4gIFx0XHRcdChCcm93c2VyLmllbHQ5ID8gJyBsZWFmbGV0LW9sZGllJyA6ICcnKSArXHJcbiAgXHRcdFx0KEJyb3dzZXIuc2FmYXJpID8gJyBsZWFmbGV0LXNhZmFyaScgOiAnJykgK1xyXG4gIFx0XHRcdCh0aGlzLl9mYWRlQW5pbWF0ZWQgPyAnIGxlYWZsZXQtZmFkZS1hbmltJyA6ICcnKSk7XHJcblxyXG4gIFx0XHR2YXIgcG9zaXRpb24gPSBnZXRTdHlsZShjb250YWluZXIsICdwb3NpdGlvbicpO1xyXG5cclxuICBcdFx0aWYgKHBvc2l0aW9uICE9PSAnYWJzb2x1dGUnICYmIHBvc2l0aW9uICE9PSAncmVsYXRpdmUnICYmIHBvc2l0aW9uICE9PSAnZml4ZWQnICYmIHBvc2l0aW9uICE9PSAnc3RpY2t5Jykge1xyXG4gIFx0XHRcdGNvbnRhaW5lci5zdHlsZS5wb3NpdGlvbiA9ICdyZWxhdGl2ZSc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2luaXRQYW5lcygpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2luaXRDb250cm9sUG9zKSB7XHJcbiAgXHRcdFx0dGhpcy5faW5pdENvbnRyb2xQb3MoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdFBhbmVzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwYW5lcyA9IHRoaXMuX3BhbmVzID0ge307XHJcbiAgXHRcdHRoaXMuX3BhbmVSZW5kZXJlcnMgPSB7fTtcclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uXHJcbiAgXHRcdC8vXHJcbiAgXHRcdC8vIFBhbmVzIGFyZSBET00gZWxlbWVudHMgdXNlZCB0byBjb250cm9sIHRoZSBvcmRlcmluZyBvZiBsYXllcnMgb24gdGhlIG1hcC4gWW91XHJcbiAgXHRcdC8vIGNhbiBhY2Nlc3MgcGFuZXMgd2l0aCBbYG1hcC5nZXRQYW5lYF0oI21hcC1nZXRwYW5lKSBvclxyXG4gIFx0XHQvLyBbYG1hcC5nZXRQYW5lc2BdKCNtYXAtZ2V0cGFuZXMpIG1ldGhvZHMuIE5ldyBwYW5lcyBjYW4gYmUgY3JlYXRlZCB3aXRoIHRoZVxyXG4gIFx0XHQvLyBbYG1hcC5jcmVhdGVQYW5lYF0oI21hcC1jcmVhdGVwYW5lKSBtZXRob2QuXHJcbiAgXHRcdC8vXHJcbiAgXHRcdC8vIEV2ZXJ5IG1hcCBoYXMgdGhlIGZvbGxvd2luZyBkZWZhdWx0IHBhbmVzIHRoYXQgZGlmZmVyIG9ubHkgaW4gekluZGV4LlxyXG4gIFx0XHQvL1xyXG4gIFx0XHQvLyBAcGFuZSBtYXBQYW5lOiBIVE1MRWxlbWVudCA9ICdhdXRvJ1xyXG4gIFx0XHQvLyBQYW5lIHRoYXQgY29udGFpbnMgYWxsIG90aGVyIG1hcCBwYW5lc1xyXG5cclxuICBcdFx0dGhpcy5fbWFwUGFuZSA9IHRoaXMuY3JlYXRlUGFuZSgnbWFwUGFuZScsIHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX21hcFBhbmUsIG5ldyBQb2ludCgwLCAwKSk7XHJcblxyXG4gIFx0XHQvLyBAcGFuZSB0aWxlUGFuZTogSFRNTEVsZW1lbnQgPSAyMDBcclxuICBcdFx0Ly8gUGFuZSBmb3IgYEdyaWRMYXllcmBzIGFuZCBgVGlsZUxheWVyYHNcclxuICBcdFx0dGhpcy5jcmVhdGVQYW5lKCd0aWxlUGFuZScpO1xyXG4gIFx0XHQvLyBAcGFuZSBvdmVybGF5UGFuZTogSFRNTEVsZW1lbnQgPSA0MDBcclxuICBcdFx0Ly8gUGFuZSBmb3IgdmVjdG9ycyAoYFBhdGhgcywgbGlrZSBgUG9seWxpbmVgcyBhbmQgYFBvbHlnb25gcyksIGBJbWFnZU92ZXJsYXlgcyBhbmQgYFZpZGVvT3ZlcmxheWBzXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgnb3ZlcmxheVBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgc2hhZG93UGFuZTogSFRNTEVsZW1lbnQgPSA1MDBcclxuICBcdFx0Ly8gUGFuZSBmb3Igb3ZlcmxheSBzaGFkb3dzIChlLmcuIGBNYXJrZXJgIHNoYWRvd3MpXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgnc2hhZG93UGFuZScpO1xyXG4gIFx0XHQvLyBAcGFuZSBtYXJrZXJQYW5lOiBIVE1MRWxlbWVudCA9IDYwMFxyXG4gIFx0XHQvLyBQYW5lIGZvciBgSWNvbmBzIG9mIGBNYXJrZXJgc1xyXG4gIFx0XHR0aGlzLmNyZWF0ZVBhbmUoJ21hcmtlclBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgdG9vbHRpcFBhbmU6IEhUTUxFbGVtZW50ID0gNjUwXHJcbiAgXHRcdC8vIFBhbmUgZm9yIGBUb29sdGlwYHMuXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgndG9vbHRpcFBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgcG9wdXBQYW5lOiBIVE1MRWxlbWVudCA9IDcwMFxyXG4gIFx0XHQvLyBQYW5lIGZvciBgUG9wdXBgcy5cclxuICBcdFx0dGhpcy5jcmVhdGVQYW5lKCdwb3B1cFBhbmUnKTtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLm1hcmtlclpvb21BbmltYXRpb24pIHtcclxuICBcdFx0XHRhZGRDbGFzcyhwYW5lcy5tYXJrZXJQYW5lLCAnbGVhZmxldC16b29tLWhpZGUnKTtcclxuICBcdFx0XHRhZGRDbGFzcyhwYW5lcy5zaGFkb3dQYW5lLCAnbGVhZmxldC16b29tLWhpZGUnKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gcHJpdmF0ZSBtZXRob2RzIHRoYXQgbW9kaWZ5IG1hcCBzdGF0ZVxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE1hcCBzdGF0ZSBjaGFuZ2UgZXZlbnRzXHJcbiAgXHRfcmVzZXRWaWV3OiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBub01vdmVTdGFydCkge1xyXG4gIFx0XHRzZXRQb3NpdGlvbih0aGlzLl9tYXBQYW5lLCBuZXcgUG9pbnQoMCwgMCkpO1xyXG5cclxuICBcdFx0dmFyIGxvYWRpbmcgPSAhdGhpcy5fbG9hZGVkO1xyXG4gIFx0XHR0aGlzLl9sb2FkZWQgPSB0cnVlO1xyXG4gIFx0XHR6b29tID0gdGhpcy5fbGltaXRab29tKHpvb20pO1xyXG5cclxuICBcdFx0dGhpcy5maXJlKCd2aWV3cHJlcmVzZXQnKTtcclxuXHJcbiAgXHRcdHZhciB6b29tQ2hhbmdlZCA9IHRoaXMuX3pvb20gIT09IHpvb207XHJcbiAgXHRcdHRoaXNcclxuICBcdFx0XHQuX21vdmVTdGFydCh6b29tQ2hhbmdlZCwgbm9Nb3ZlU3RhcnQpXHJcbiAgXHRcdFx0Ll9tb3ZlKGNlbnRlciwgem9vbSlcclxuICBcdFx0XHQuX21vdmVFbmQoem9vbUNoYW5nZWQpO1xyXG5cclxuICBcdFx0Ly8gQGV2ZW50IHZpZXdyZXNldDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIG5lZWRzIHRvIHJlZHJhdyBpdHMgY29udGVudCAodGhpcyB1c3VhbGx5IGhhcHBlbnNcclxuICBcdFx0Ly8gb24gbWFwIHpvb20gb3IgbG9hZCkuIFZlcnkgdXNlZnVsIGZvciBjcmVhdGluZyBjdXN0b20gb3ZlcmxheXMuXHJcbiAgXHRcdHRoaXMuZmlyZSgndmlld3Jlc2V0Jyk7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbG9hZDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIGlzIGluaXRpYWxpemVkICh3aGVuIGl0cyBjZW50ZXIgYW5kIHpvb20gYXJlIHNldFxyXG4gIFx0XHQvLyBmb3IgdGhlIGZpcnN0IHRpbWUpLlxyXG4gIFx0XHRpZiAobG9hZGluZykge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnbG9hZCcpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tb3ZlU3RhcnQ6IGZ1bmN0aW9uICh6b29tQ2hhbmdlZCwgbm9Nb3ZlU3RhcnQpIHtcclxuICBcdFx0Ly8gQGV2ZW50IHpvb21zdGFydDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIHpvb20gaXMgYWJvdXQgdG8gY2hhbmdlIChlLmcuIGJlZm9yZSB6b29tIGFuaW1hdGlvbikuXHJcbiAgXHRcdC8vIEBldmVudCBtb3Zlc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHZpZXcgb2YgdGhlIG1hcCBzdGFydHMgY2hhbmdpbmcgKGUuZy4gdXNlciBzdGFydHMgZHJhZ2dpbmcgdGhlIG1hcCkuXHJcbiAgXHRcdGlmICh6b29tQ2hhbmdlZCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbXN0YXJ0Jyk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKCFub01vdmVTdGFydCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnbW92ZXN0YXJ0Jyk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tb3ZlOiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBkYXRhLCBzdXByZXNzRXZlbnQpIHtcclxuICBcdFx0aWYgKHpvb20gPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHpvb20gPSB0aGlzLl96b29tO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHZhciB6b29tQ2hhbmdlZCA9IHRoaXMuX3pvb20gIT09IHpvb207XHJcblxyXG4gIFx0XHR0aGlzLl96b29tID0gem9vbTtcclxuICBcdFx0dGhpcy5fbGFzdENlbnRlciA9IGNlbnRlcjtcclxuICBcdFx0dGhpcy5fcGl4ZWxPcmlnaW4gPSB0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIpO1xyXG5cclxuICBcdFx0aWYgKCFzdXByZXNzRXZlbnQpIHtcclxuICBcdFx0XHQvLyBAZXZlbnQgem9vbTogRXZlbnRcclxuICBcdFx0XHQvLyBGaXJlZCByZXBlYXRlZGx5IGR1cmluZyBhbnkgY2hhbmdlIGluIHpvb20gbGV2ZWwsXHJcbiAgXHRcdFx0Ly8gaW5jbHVkaW5nIHpvb20gYW5kIGZseSBhbmltYXRpb25zLlxyXG4gIFx0XHRcdGlmICh6b29tQ2hhbmdlZCB8fCAoZGF0YSAmJiBkYXRhLnBpbmNoKSkge1x0Ly8gQWx3YXlzIGZpcmUgJ3pvb20nIGlmIHBpbmNoaW5nIGJlY2F1c2UgIzM1MzBcclxuICBcdFx0XHRcdHRoaXMuZmlyZSgnem9vbScsIGRhdGEpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IG1vdmU6IEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgcmVwZWF0ZWRseSBkdXJpbmcgYW55IG1vdmVtZW50IG9mIHRoZSBtYXAsXHJcbiAgXHRcdFx0Ly8gaW5jbHVkaW5nIHBhbiBhbmQgZmx5IGFuaW1hdGlvbnMuXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJywgZGF0YSk7XHJcbiAgXHRcdH0gZWxzZSBpZiAoZGF0YSAmJiBkYXRhLnBpbmNoKSB7XHQvLyBBbHdheXMgZmlyZSAnem9vbScgaWYgcGluY2hpbmcgYmVjYXVzZSAjMzUzMFxyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbScsIGRhdGEpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbW92ZUVuZDogZnVuY3Rpb24gKHpvb21DaGFuZ2VkKSB7XHJcbiAgXHRcdC8vIEBldmVudCB6b29tZW5kOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtYXAgem9vbSBjaGFuZ2VkLCBhZnRlciBhbnkgYW5pbWF0aW9ucy5cclxuICBcdFx0aWYgKHpvb21DaGFuZ2VkKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tZW5kJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBldmVudCBtb3ZlZW5kOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBjZW50ZXIgb2YgdGhlIG1hcCBzdG9wcyBjaGFuZ2luZ1xyXG4gIFx0XHQvLyAoZS5nLiB1c2VyIHN0b3BwZWQgZHJhZ2dpbmcgdGhlIG1hcCBvciBhZnRlciBub24tY2VudGVyZWQgem9vbSkuXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3N0b3A6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZseVRvRnJhbWUpO1xyXG4gIFx0XHRpZiAodGhpcy5fcGFuQW5pbSkge1xyXG4gIFx0XHRcdHRoaXMuX3BhbkFuaW0uc3RvcCgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmF3UGFuQnk6IGZ1bmN0aW9uIChvZmZzZXQpIHtcclxuICBcdFx0c2V0UG9zaXRpb24odGhpcy5fbWFwUGFuZSwgdGhpcy5fZ2V0TWFwUGFuZVBvcygpLnN1YnRyYWN0KG9mZnNldCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0Wm9vbVNwYW46IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuZ2V0TWF4Wm9vbSgpIC0gdGhpcy5nZXRNaW5ab29tKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9wYW5JbnNpZGVNYXhCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9lbmZvcmNpbmdCb3VuZHMpIHtcclxuICBcdFx0XHR0aGlzLnBhbkluc2lkZUJvdW5kcyh0aGlzLm9wdGlvbnMubWF4Qm91bmRzKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2hlY2tJZkxvYWRlZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2xvYWRlZCkge1xyXG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignU2V0IG1hcCBjZW50ZXIgYW5kIHpvb20gZmlyc3QuJyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gRE9NIGV2ZW50IGhhbmRsaW5nXHJcblxyXG4gIFx0Ly8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gZXZlbnRzXHJcbiAgXHRfaW5pdEV2ZW50czogZnVuY3Rpb24gKHJlbW92ZSkge1xyXG4gIFx0XHR0aGlzLl90YXJnZXRzID0ge307XHJcbiAgXHRcdHRoaXMuX3RhcmdldHNbc3RhbXAodGhpcy5fY29udGFpbmVyKV0gPSB0aGlzO1xyXG5cclxuICBcdFx0dmFyIG9uT2ZmID0gcmVtb3ZlID8gb2ZmIDogb247XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgY2xpY2s6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBjbGlja3MgKG9yIHRhcHMpIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBkYmxjbGljazogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSB1c2VyIGRvdWJsZS1jbGlja3MgKG9yIGRvdWJsZS10YXBzKSB0aGUgbWFwLlxyXG4gIFx0XHQvLyBAZXZlbnQgbW91c2Vkb3duOiBNb3VzZUV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcHVzaGVzIHRoZSBtb3VzZSBidXR0b24gb24gdGhlIG1hcC5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdXNldXA6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciByZWxlYXNlcyB0aGUgbW91c2UgYnV0dG9uIG9uIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBtb3VzZW92ZXI6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbW91c2UgZW50ZXJzIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBtb3VzZW91dDogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtb3VzZSBsZWF2ZXMgdGhlIG1hcC5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdXNlbW92ZTogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGlsZSB0aGUgbW91c2UgbW92ZXMgb3ZlciB0aGUgbWFwLlxyXG4gIFx0XHQvLyBAZXZlbnQgY29udGV4dG1lbnU6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBwdXNoZXMgdGhlIHJpZ2h0IG1vdXNlIGJ1dHRvbiBvbiB0aGUgbWFwLCBwcmV2ZW50c1xyXG4gIFx0XHQvLyBkZWZhdWx0IGJyb3dzZXIgY29udGV4dCBtZW51IGZyb20gc2hvd2luZyBpZiB0aGVyZSBhcmUgbGlzdGVuZXJzIG9uXHJcbiAgXHRcdC8vIHRoaXMgZXZlbnQuIEFsc28gZmlyZWQgb24gbW9iaWxlIHdoZW4gdGhlIHVzZXIgaG9sZHMgYSBzaW5nbGUgdG91Y2hcclxuICBcdFx0Ly8gZm9yIGEgc2Vjb25kIChhbHNvIGNhbGxlZCBsb25nIHByZXNzKS5cclxuICBcdFx0Ly8gQGV2ZW50IGtleXByZXNzOiBLZXlib2FyZEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcHJlc3NlcyBhIGtleSBmcm9tIHRoZSBrZXlib2FyZCB0aGF0IHByb2R1Y2VzIGEgY2hhcmFjdGVyIHZhbHVlIHdoaWxlIHRoZSBtYXAgaXMgZm9jdXNlZC5cclxuICBcdFx0Ly8gQGV2ZW50IGtleWRvd246IEtleWJvYXJkRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBwcmVzc2VzIGEga2V5IGZyb20gdGhlIGtleWJvYXJkIHdoaWxlIHRoZSBtYXAgaXMgZm9jdXNlZC4gVW5saWtlIHRoZSBga2V5cHJlc3NgIGV2ZW50LFxyXG4gIFx0XHQvLyB0aGUgYGtleWRvd25gIGV2ZW50IGlzIGZpcmVkIGZvciBrZXlzIHRoYXQgcHJvZHVjZSBhIGNoYXJhY3RlciB2YWx1ZSBhbmQgZm9yIGtleXNcclxuICBcdFx0Ly8gdGhhdCBkbyBub3QgcHJvZHVjZSBhIGNoYXJhY3RlciB2YWx1ZS5cclxuICBcdFx0Ly8gQGV2ZW50IGtleXVwOiBLZXlib2FyZEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcmVsZWFzZXMgYSBrZXkgZnJvbSB0aGUga2V5Ym9hcmQgd2hpbGUgdGhlIG1hcCBpcyBmb2N1c2VkLlxyXG4gIFx0XHRvbk9mZih0aGlzLl9jb250YWluZXIsICdjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCAnICtcclxuICBcdFx0XHQnbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlbW92ZSBjb250ZXh0bWVudSBrZXlwcmVzcyBrZXlkb3duIGtleXVwJywgdGhpcy5faGFuZGxlRE9NRXZlbnQsIHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy50cmFja1Jlc2l6ZSkge1xyXG4gIFx0XHRcdG9uT2ZmKHdpbmRvdywgJ3Jlc2l6ZScsIHRoaXMuX29uUmVzaXplLCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKEJyb3dzZXIuYW55M2QgJiYgdGhpcy5vcHRpb25zLnRyYW5zZm9ybTNETGltaXQpIHtcclxuICBcdFx0XHQocmVtb3ZlID8gdGhpcy5vZmYgOiB0aGlzLm9uKS5jYWxsKHRoaXMsICdtb3ZlZW5kJywgdGhpcy5fb25Nb3ZlRW5kKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25SZXNpemU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3Jlc2l6ZVJlcXVlc3QpO1xyXG4gIFx0XHR0aGlzLl9yZXNpemVSZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZShcclxuICBcdFx0ICAgICAgICBmdW5jdGlvbiAoKSB7IHRoaXMuaW52YWxpZGF0ZVNpemUoe2RlYm91bmNlTW92ZWVuZDogdHJ1ZX0pOyB9LCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uU2Nyb2xsOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zY3JvbGxUb3AgID0gMDtcclxuICBcdFx0dGhpcy5fY29udGFpbmVyLnNjcm9sbExlZnQgPSAwO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCk7XHJcbiAgXHRcdGlmIChNYXRoLm1heChNYXRoLmFicyhwb3MueCksIE1hdGguYWJzKHBvcy55KSkgPj0gdGhpcy5vcHRpb25zLnRyYW5zZm9ybTNETGltaXQpIHtcclxuICBcdFx0XHQvLyBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjAzODczIGJ1dCBXZWJraXQgYWxzbyBoYXZlXHJcbiAgXHRcdFx0Ly8gYSBwaXhlbCBvZmZzZXQgb24gdmVyeSBoaWdoIHZhbHVlcywgc2VlOiBodHRwczovL2pzZmlkZGxlLm5ldC9kZzZyNWhoYi9cclxuICBcdFx0XHR0aGlzLl9yZXNldFZpZXcodGhpcy5nZXRDZW50ZXIoKSwgdGhpcy5nZXRab29tKCkpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9maW5kRXZlbnRUYXJnZXRzOiBmdW5jdGlvbiAoZSwgdHlwZSkge1xyXG4gIFx0XHR2YXIgdGFyZ2V0cyA9IFtdLFxyXG4gIFx0XHQgICAgdGFyZ2V0LFxyXG4gIFx0XHQgICAgaXNIb3ZlciA9IHR5cGUgPT09ICdtb3VzZW91dCcgfHwgdHlwZSA9PT0gJ21vdXNlb3ZlcicsXHJcbiAgXHRcdCAgICBzcmMgPSBlLnRhcmdldCB8fCBlLnNyY0VsZW1lbnQsXHJcbiAgXHRcdCAgICBkcmFnZ2luZyA9IGZhbHNlO1xyXG5cclxuICBcdFx0d2hpbGUgKHNyYykge1xyXG4gIFx0XHRcdHRhcmdldCA9IHRoaXMuX3RhcmdldHNbc3RhbXAoc3JjKV07XHJcbiAgXHRcdFx0aWYgKHRhcmdldCAmJiAodHlwZSA9PT0gJ2NsaWNrJyB8fCB0eXBlID09PSAncHJlY2xpY2snKSAmJiB0aGlzLl9kcmFnZ2FibGVNb3ZlZCh0YXJnZXQpKSB7XHJcbiAgXHRcdFx0XHQvLyBQcmV2ZW50IGZpcmluZyBjbGljayBhZnRlciB5b3UganVzdCBkcmFnZ2VkIGFuIG9iamVjdC5cclxuICBcdFx0XHRcdGRyYWdnaW5nID0gdHJ1ZTtcclxuICBcdFx0XHRcdGJyZWFrO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRpZiAodGFyZ2V0ICYmIHRhcmdldC5saXN0ZW5zKHR5cGUsIHRydWUpKSB7XHJcbiAgXHRcdFx0XHRpZiAoaXNIb3ZlciAmJiAhaXNFeHRlcm5hbFRhcmdldChzcmMsIGUpKSB7IGJyZWFrOyB9XHJcbiAgXHRcdFx0XHR0YXJnZXRzLnB1c2godGFyZ2V0KTtcclxuICBcdFx0XHRcdGlmIChpc0hvdmVyKSB7IGJyZWFrOyB9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdGlmIChzcmMgPT09IHRoaXMuX2NvbnRhaW5lcikgeyBicmVhazsgfVxyXG4gIFx0XHRcdHNyYyA9IHNyYy5wYXJlbnROb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICghdGFyZ2V0cy5sZW5ndGggJiYgIWRyYWdnaW5nICYmICFpc0hvdmVyICYmIHRoaXMubGlzdGVucyh0eXBlLCB0cnVlKSkge1xyXG4gIFx0XHRcdHRhcmdldHMgPSBbdGhpc107XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRhcmdldHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pc0NsaWNrRGlzYWJsZWQ6IGZ1bmN0aW9uIChlbCkge1xyXG4gIFx0XHR3aGlsZSAoZWwgJiYgZWwgIT09IHRoaXMuX2NvbnRhaW5lcikge1xyXG4gIFx0XHRcdGlmIChlbFsnX2xlYWZsZXRfZGlzYWJsZV9jbGljayddKSB7IHJldHVybiB0cnVlOyB9XHJcbiAgXHRcdFx0ZWwgPSBlbC5wYXJlbnROb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9oYW5kbGVET01FdmVudDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIGVsID0gKGUudGFyZ2V0IHx8IGUuc3JjRWxlbWVudCk7XHJcbiAgXHRcdGlmICghdGhpcy5fbG9hZGVkIHx8IGVsWydfbGVhZmxldF9kaXNhYmxlX2V2ZW50cyddIHx8IGUudHlwZSA9PT0gJ2NsaWNrJyAmJiB0aGlzLl9pc0NsaWNrRGlzYWJsZWQoZWwpKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgdHlwZSA9IGUudHlwZTtcclxuXHJcbiAgXHRcdGlmICh0eXBlID09PSAnbW91c2Vkb3duJykge1xyXG4gIFx0XHRcdC8vIHByZXZlbnRzIG91dGxpbmUgd2hlbiBjbGlja2luZyBvbiBrZXlib2FyZC1mb2N1c2FibGUgZWxlbWVudFxyXG4gIFx0XHRcdHByZXZlbnRPdXRsaW5lKGVsKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fZmlyZURPTUV2ZW50KGUsIHR5cGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbW91c2VFdmVudHM6IFsnY2xpY2snLCAnZGJsY2xpY2snLCAnbW91c2VvdmVyJywgJ21vdXNlb3V0JywgJ2NvbnRleHRtZW51J10sXHJcblxyXG4gIFx0X2ZpcmVET01FdmVudDogZnVuY3Rpb24gKGUsIHR5cGUsIGNhbnZhc1RhcmdldHMpIHtcclxuXHJcbiAgXHRcdGlmIChlLnR5cGUgPT09ICdjbGljaycpIHtcclxuICBcdFx0XHQvLyBGaXJlIGEgc3ludGhldGljICdwcmVjbGljaycgZXZlbnQgd2hpY2ggcHJvcGFnYXRlcyB1cCAobWFpbmx5IGZvciBjbG9zaW5nIHBvcHVwcykuXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IHByZWNsaWNrOiBNb3VzZUV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgYmVmb3JlIG1vdXNlIGNsaWNrIG9uIHRoZSBtYXAgKHNvbWV0aW1lcyB1c2VmdWwgd2hlbiB5b3VcclxuICBcdFx0XHQvLyB3YW50IHNvbWV0aGluZyB0byBoYXBwZW4gb24gY2xpY2sgYmVmb3JlIGFueSBleGlzdGluZyBjbGlja1xyXG4gIFx0XHRcdC8vIGhhbmRsZXJzIHN0YXJ0IHJ1bm5pbmcpLlxyXG4gIFx0XHRcdHZhciBzeW50aCA9IGV4dGVuZCh7fSwgZSk7XHJcbiAgXHRcdFx0c3ludGgudHlwZSA9ICdwcmVjbGljayc7XHJcbiAgXHRcdFx0dGhpcy5fZmlyZURPTUV2ZW50KHN5bnRoLCBzeW50aC50eXBlLCBjYW52YXNUYXJnZXRzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gRmluZCB0aGUgbGF5ZXIgdGhlIGV2ZW50IGlzIHByb3BhZ2F0aW5nIGZyb20gYW5kIGl0cyBwYXJlbnRzLlxyXG4gIFx0XHR2YXIgdGFyZ2V0cyA9IHRoaXMuX2ZpbmRFdmVudFRhcmdldHMoZSwgdHlwZSk7XHJcblxyXG4gIFx0XHRpZiAoY2FudmFzVGFyZ2V0cykge1xyXG4gIFx0XHRcdHZhciBmaWx0ZXJlZCA9IFtdOyAvLyBwaWNrIG9ubHkgdGFyZ2V0cyB3aXRoIGxpc3RlbmVyc1xyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgY2FudmFzVGFyZ2V0cy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdFx0aWYgKGNhbnZhc1RhcmdldHNbaV0ubGlzdGVucyh0eXBlLCB0cnVlKSkge1xyXG4gIFx0XHRcdFx0XHRmaWx0ZXJlZC5wdXNoKGNhbnZhc1RhcmdldHNbaV0pO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0XHR0YXJnZXRzID0gZmlsdGVyZWQuY29uY2F0KHRhcmdldHMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIXRhcmdldHMubGVuZ3RoKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0aWYgKHR5cGUgPT09ICdjb250ZXh0bWVudScpIHtcclxuICBcdFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIHRhcmdldCA9IHRhcmdldHNbMF07XHJcbiAgXHRcdHZhciBkYXRhID0ge1xyXG4gIFx0XHRcdG9yaWdpbmFsRXZlbnQ6IGVcclxuICBcdFx0fTtcclxuXHJcbiAgXHRcdGlmIChlLnR5cGUgIT09ICdrZXlwcmVzcycgJiYgZS50eXBlICE9PSAna2V5ZG93bicgJiYgZS50eXBlICE9PSAna2V5dXAnKSB7XHJcbiAgXHRcdFx0dmFyIGlzTWFya2VyID0gdGFyZ2V0LmdldExhdExuZyAmJiAoIXRhcmdldC5fcmFkaXVzIHx8IHRhcmdldC5fcmFkaXVzIDw9IDEwKTtcclxuICBcdFx0XHRkYXRhLmNvbnRhaW5lclBvaW50ID0gaXNNYXJrZXIgP1xyXG4gIFx0XHRcdFx0dGhpcy5sYXRMbmdUb0NvbnRhaW5lclBvaW50KHRhcmdldC5nZXRMYXRMbmcoKSkgOiB0aGlzLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xyXG4gIFx0XHRcdGRhdGEubGF5ZXJQb2ludCA9IHRoaXMuY29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQoZGF0YS5jb250YWluZXJQb2ludCk7XHJcbiAgXHRcdFx0ZGF0YS5sYXRsbmcgPSBpc01hcmtlciA/IHRhcmdldC5nZXRMYXRMbmcoKSA6IHRoaXMubGF5ZXJQb2ludFRvTGF0TG5nKGRhdGEubGF5ZXJQb2ludCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGZvciAoaSA9IDA7IGkgPCB0YXJnZXRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdFx0dGFyZ2V0c1tpXS5maXJlKHR5cGUsIGRhdGEsIHRydWUpO1xyXG4gIFx0XHRcdGlmIChkYXRhLm9yaWdpbmFsRXZlbnQuX3N0b3BwZWQgfHxcclxuICBcdFx0XHRcdCh0YXJnZXRzW2ldLm9wdGlvbnMuYnViYmxpbmdNb3VzZUV2ZW50cyA9PT0gZmFsc2UgJiYgaW5kZXhPZih0aGlzLl9tb3VzZUV2ZW50cywgdHlwZSkgIT09IC0xKSkgeyByZXR1cm47IH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfZHJhZ2dhYmxlTW92ZWQ6IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdFx0b2JqID0gb2JqLmRyYWdnaW5nICYmIG9iai5kcmFnZ2luZy5lbmFibGVkKCkgPyBvYmogOiB0aGlzO1xyXG4gIFx0XHRyZXR1cm4gKG9iai5kcmFnZ2luZyAmJiBvYmouZHJhZ2dpbmcubW92ZWQoKSkgfHwgKHRoaXMuYm94Wm9vbSAmJiB0aGlzLmJveFpvb20ubW92ZWQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9jbGVhckhhbmRsZXJzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0aGlzLl9oYW5kbGVycy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdHRoaXMuX2hhbmRsZXJzW2ldLmRpc2FibGUoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBPdGhlciBNZXRob2RzXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB3aGVuUmVhZHkoZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIFx0Ly8gUnVucyB0aGUgZ2l2ZW4gZnVuY3Rpb24gYGZuYCB3aGVuIHRoZSBtYXAgZ2V0cyBpbml0aWFsaXplZCB3aXRoXHJcbiAgXHQvLyBhIHZpZXcgKGNlbnRlciBhbmQgem9vbSkgYW5kIGF0IGxlYXN0IG9uZSBsYXllciwgb3IgaW1tZWRpYXRlbHlcclxuICBcdC8vIGlmIGl0J3MgYWxyZWFkeSBpbml0aWFsaXplZCwgb3B0aW9uYWxseSBwYXNzaW5nIGEgZnVuY3Rpb24gY29udGV4dC5cclxuICBcdHdoZW5SZWFkeTogZnVuY3Rpb24gKGNhbGxiYWNrLCBjb250ZXh0KSB7XHJcbiAgXHRcdGlmICh0aGlzLl9sb2FkZWQpIHtcclxuICBcdFx0XHRjYWxsYmFjay5jYWxsKGNvbnRleHQgfHwgdGhpcywge3RhcmdldDogdGhpc30pO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMub24oJ2xvYWQnLCBjYWxsYmFjaywgY29udGV4dCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuXHJcbiAgXHQvLyBwcml2YXRlIG1ldGhvZHMgZm9yIGdldHRpbmcgbWFwIHN0YXRlXHJcblxyXG4gIFx0X2dldE1hcFBhbmVQb3M6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIGdldFBvc2l0aW9uKHRoaXMuX21hcFBhbmUpIHx8IG5ldyBQb2ludCgwLCAwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X21vdmVkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCk7XHJcbiAgXHRcdHJldHVybiBwb3MgJiYgIXBvcy5lcXVhbHMoWzAsIDBdKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldFRvcExlZnRQb2ludDogZnVuY3Rpb24gKGNlbnRlciwgem9vbSkge1xyXG4gIFx0XHR2YXIgcGl4ZWxPcmlnaW4gPSBjZW50ZXIgJiYgem9vbSAhPT0gdW5kZWZpbmVkID9cclxuICBcdFx0XHR0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pIDpcclxuICBcdFx0XHR0aGlzLmdldFBpeGVsT3JpZ2luKCk7XHJcbiAgXHRcdHJldHVybiBwaXhlbE9yaWdpbi5zdWJ0cmFjdCh0aGlzLl9nZXRNYXBQYW5lUG9zKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0TmV3UGl4ZWxPcmlnaW46IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20pIHtcclxuICBcdFx0dmFyIHZpZXdIYWxmID0gdGhpcy5nZXRTaXplKCkuX2RpdmlkZUJ5KDIpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5wcm9qZWN0KGNlbnRlciwgem9vbSkuX3N1YnRyYWN0KHZpZXdIYWxmKS5fYWRkKHRoaXMuX2dldE1hcFBhbmVQb3MoKSkuX3JvdW5kKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9sYXRMbmdUb05ld0xheWVyUG9pbnQ6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20sIGNlbnRlcikge1xyXG4gIFx0XHR2YXIgdG9wTGVmdCA9IHRoaXMuX2dldE5ld1BpeGVsT3JpZ2luKGNlbnRlciwgem9vbSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLnByb2plY3QobGF0bG5nLCB6b29tKS5fc3VidHJhY3QodG9wTGVmdCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9sYXRMbmdCb3VuZHNUb05ld0xheWVyQm91bmRzOiBmdW5jdGlvbiAobGF0TG5nQm91bmRzLCB6b29tLCBjZW50ZXIpIHtcclxuICBcdFx0dmFyIHRvcExlZnQgPSB0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pO1xyXG4gIFx0XHRyZXR1cm4gdG9Cb3VuZHMoW1xyXG4gIFx0XHRcdHRoaXMucHJvamVjdChsYXRMbmdCb3VuZHMuZ2V0U291dGhXZXN0KCksIHpvb20pLl9zdWJ0cmFjdCh0b3BMZWZ0KSxcclxuICBcdFx0XHR0aGlzLnByb2plY3QobGF0TG5nQm91bmRzLmdldE5vcnRoV2VzdCgpLCB6b29tKS5fc3VidHJhY3QodG9wTGVmdCksXHJcbiAgXHRcdFx0dGhpcy5wcm9qZWN0KGxhdExuZ0JvdW5kcy5nZXRTb3V0aEVhc3QoKSwgem9vbSkuX3N1YnRyYWN0KHRvcExlZnQpLFxyXG4gIFx0XHRcdHRoaXMucHJvamVjdChsYXRMbmdCb3VuZHMuZ2V0Tm9ydGhFYXN0KCksIHpvb20pLl9zdWJ0cmFjdCh0b3BMZWZ0KVxyXG4gIFx0XHRdKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gbGF5ZXIgcG9pbnQgb2YgdGhlIGN1cnJlbnQgY2VudGVyXHJcbiAgXHRfZ2V0Q2VudGVyTGF5ZXJQb2ludDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jb250YWluZXJQb2ludFRvTGF5ZXJQb2ludCh0aGlzLmdldFNpemUoKS5fZGl2aWRlQnkoMikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBvZmZzZXQgb2YgdGhlIHNwZWNpZmllZCBwbGFjZSB0byB0aGUgY3VycmVudCBjZW50ZXIgaW4gcGl4ZWxzXHJcbiAgXHRfZ2V0Q2VudGVyT2Zmc2V0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxhdExuZ1RvTGF5ZXJQb2ludChsYXRsbmcpLnN1YnRyYWN0KHRoaXMuX2dldENlbnRlckxheWVyUG9pbnQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIGFkanVzdCBjZW50ZXIgZm9yIHZpZXcgdG8gZ2V0IGluc2lkZSBib3VuZHNcclxuICBcdF9saW1pdENlbnRlcjogZnVuY3Rpb24gKGNlbnRlciwgem9vbSwgYm91bmRzKSB7XHJcblxyXG4gIFx0XHRpZiAoIWJvdW5kcykgeyByZXR1cm4gY2VudGVyOyB9XHJcblxyXG4gIFx0XHR2YXIgY2VudGVyUG9pbnQgPSB0aGlzLnByb2plY3QoY2VudGVyLCB6b29tKSxcclxuICBcdFx0ICAgIHZpZXdIYWxmID0gdGhpcy5nZXRTaXplKCkuZGl2aWRlQnkoMiksXHJcbiAgXHRcdCAgICB2aWV3Qm91bmRzID0gbmV3IEJvdW5kcyhjZW50ZXJQb2ludC5zdWJ0cmFjdCh2aWV3SGFsZiksIGNlbnRlclBvaW50LmFkZCh2aWV3SGFsZikpLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gdGhpcy5fZ2V0Qm91bmRzT2Zmc2V0KHZpZXdCb3VuZHMsIGJvdW5kcywgem9vbSk7XHJcblxyXG4gIFx0XHQvLyBJZiBvZmZzZXQgaXMgbGVzcyB0aGFuIGEgcGl4ZWwsIGlnbm9yZS5cclxuICBcdFx0Ly8gVGhpcyBwcmV2ZW50cyB1bnN0YWJsZSBwcm9qZWN0aW9ucyBmcm9tIGdldHRpbmcgaW50b1xyXG4gIFx0XHQvLyBhbiBpbmZpbml0ZSBsb29wIG9mIHRpbnkgb2Zmc2V0cy5cclxuICBcdFx0aWYgKE1hdGguYWJzKG9mZnNldC54KSA8PSAxICYmIE1hdGguYWJzKG9mZnNldC55KSA8PSAxKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGNlbnRlcjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMudW5wcm9qZWN0KGNlbnRlclBvaW50LmFkZChvZmZzZXQpLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gYWRqdXN0IG9mZnNldCBmb3IgdmlldyB0byBnZXQgaW5zaWRlIGJvdW5kc1xyXG4gIFx0X2xpbWl0T2Zmc2V0OiBmdW5jdGlvbiAob2Zmc2V0LCBib3VuZHMpIHtcclxuICBcdFx0aWYgKCFib3VuZHMpIHsgcmV0dXJuIG9mZnNldDsgfVxyXG5cclxuICBcdFx0dmFyIHZpZXdCb3VuZHMgPSB0aGlzLmdldFBpeGVsQm91bmRzKCksXHJcbiAgXHRcdCAgICBuZXdCb3VuZHMgPSBuZXcgQm91bmRzKHZpZXdCb3VuZHMubWluLmFkZChvZmZzZXQpLCB2aWV3Qm91bmRzLm1heC5hZGQob2Zmc2V0KSk7XHJcblxyXG4gIFx0XHRyZXR1cm4gb2Zmc2V0LmFkZCh0aGlzLl9nZXRCb3VuZHNPZmZzZXQobmV3Qm91bmRzLCBib3VuZHMpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gcmV0dXJucyBvZmZzZXQgbmVlZGVkIGZvciBweEJvdW5kcyB0byBnZXQgaW5zaWRlIG1heEJvdW5kcyBhdCBhIHNwZWNpZmllZCB6b29tXHJcbiAgXHRfZ2V0Qm91bmRzT2Zmc2V0OiBmdW5jdGlvbiAocHhCb3VuZHMsIG1heEJvdW5kcywgem9vbSkge1xyXG4gIFx0XHR2YXIgcHJvamVjdGVkTWF4Qm91bmRzID0gdG9Cb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgdGhpcy5wcm9qZWN0KG1heEJvdW5kcy5nZXROb3J0aEVhc3QoKSwgem9vbSksXHJcbiAgXHRcdCAgICAgICAgdGhpcy5wcm9qZWN0KG1heEJvdW5kcy5nZXRTb3V0aFdlc3QoKSwgem9vbSlcclxuICBcdFx0ICAgICksXHJcbiAgXHRcdCAgICBtaW5PZmZzZXQgPSBwcm9qZWN0ZWRNYXhCb3VuZHMubWluLnN1YnRyYWN0KHB4Qm91bmRzLm1pbiksXHJcbiAgXHRcdCAgICBtYXhPZmZzZXQgPSBwcm9qZWN0ZWRNYXhCb3VuZHMubWF4LnN1YnRyYWN0KHB4Qm91bmRzLm1heCksXHJcblxyXG4gIFx0XHQgICAgZHggPSB0aGlzLl9yZWJvdW5kKG1pbk9mZnNldC54LCAtbWF4T2Zmc2V0LngpLFxyXG4gIFx0XHQgICAgZHkgPSB0aGlzLl9yZWJvdW5kKG1pbk9mZnNldC55LCAtbWF4T2Zmc2V0LnkpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChkeCwgZHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmVib3VuZDogZnVuY3Rpb24gKGxlZnQsIHJpZ2h0KSB7XHJcbiAgXHRcdHJldHVybiBsZWZ0ICsgcmlnaHQgPiAwID9cclxuICBcdFx0XHRNYXRoLnJvdW5kKGxlZnQgLSByaWdodCkgLyAyIDpcclxuICBcdFx0XHRNYXRoLm1heCgwLCBNYXRoLmNlaWwobGVmdCkpIC0gTWF0aC5tYXgoMCwgTWF0aC5mbG9vcihyaWdodCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbGltaXRab29tOiBmdW5jdGlvbiAoem9vbSkge1xyXG4gIFx0XHR2YXIgbWluID0gdGhpcy5nZXRNaW5ab29tKCksXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLmdldE1heFpvb20oKSxcclxuICBcdFx0ICAgIHNuYXAgPSBCcm93c2VyLmFueTNkID8gdGhpcy5vcHRpb25zLnpvb21TbmFwIDogMTtcclxuICBcdFx0aWYgKHNuYXApIHtcclxuICBcdFx0XHR6b29tID0gTWF0aC5yb3VuZCh6b29tIC8gc25hcCkgKiBzbmFwO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBNYXRoLm1heChtaW4sIE1hdGgubWluKG1heCwgem9vbSkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25QYW5UcmFuc2l0aW9uU3RlcDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLmZpcmUoJ21vdmUnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uUGFuVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9tYXBQYW5lLCAnbGVhZmxldC1wYW4tYW5pbScpO1xyXG4gIFx0XHR0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3RyeUFuaW1hdGVkUGFuOiBmdW5jdGlvbiAoY2VudGVyLCBvcHRpb25zKSB7XHJcbiAgXHRcdC8vIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgbmV3IGFuZCBjdXJyZW50IGNlbnRlcnMgaW4gcGl4ZWxzXHJcbiAgXHRcdHZhciBvZmZzZXQgPSB0aGlzLl9nZXRDZW50ZXJPZmZzZXQoY2VudGVyKS5fdHJ1bmMoKTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgdG9vIGZhciB1bmxlc3MgYW5pbWF0ZTogdHJ1ZSBzcGVjaWZpZWQgaW4gb3B0aW9uc1xyXG4gIFx0XHRpZiAoKG9wdGlvbnMgJiYgb3B0aW9ucy5hbmltYXRlKSAhPT0gdHJ1ZSAmJiAhdGhpcy5nZXRTaXplKCkuY29udGFpbnMob2Zmc2V0KSkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdHRoaXMucGFuQnkob2Zmc2V0LCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHJldHVybiB0cnVlO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY3JlYXRlQW5pbVByb3h5OiBmdW5jdGlvbiAoKSB7XHJcblxyXG4gIFx0XHR2YXIgcHJveHkgPSB0aGlzLl9wcm94eSA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC1wcm94eSBsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKTtcclxuICBcdFx0dGhpcy5fcGFuZXMubWFwUGFuZS5hcHBlbmRDaGlsZChwcm94eSk7XHJcblxyXG4gIFx0XHR0aGlzLm9uKCd6b29tYW5pbScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0dmFyIHByb3AgPSBUUkFOU0ZPUk0sXHJcbiAgXHRcdFx0ICAgIHRyYW5zZm9ybSA9IHRoaXMuX3Byb3h5LnN0eWxlW3Byb3BdO1xyXG5cclxuICBcdFx0XHRzZXRUcmFuc2Zvcm0odGhpcy5fcHJveHksIHRoaXMucHJvamVjdChlLmNlbnRlciwgZS56b29tKSwgdGhpcy5nZXRab29tU2NhbGUoZS56b29tLCAxKSk7XHJcblxyXG4gIFx0XHRcdC8vIHdvcmthcm91bmQgZm9yIGNhc2Ugd2hlbiB0cmFuc2Zvcm0gaXMgdGhlIHNhbWUgYW5kIHNvIHRyYW5zaXRpb25lbmQgZXZlbnQgaXMgbm90IGZpcmVkXHJcbiAgXHRcdFx0aWYgKHRyYW5zZm9ybSA9PT0gdGhpcy5fcHJveHkuc3R5bGVbcHJvcF0gJiYgdGhpcy5fYW5pbWF0aW5nWm9vbSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fb25ab29tVHJhbnNpdGlvbkVuZCgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fSwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLm9uKCdsb2FkIG1vdmVlbmQnLCB0aGlzLl9hbmltTW92ZUVuZCwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLl9vbigndW5sb2FkJywgdGhpcy5fZGVzdHJveUFuaW1Qcm94eSwgdGhpcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9kZXN0cm95QW5pbVByb3h5OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJlbW92ZSh0aGlzLl9wcm94eSk7XHJcbiAgXHRcdHRoaXMub2ZmKCdsb2FkIG1vdmVlbmQnLCB0aGlzLl9hbmltTW92ZUVuZCwgdGhpcyk7XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl9wcm94eTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2FuaW1Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBjID0gdGhpcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIHogPSB0aGlzLmdldFpvb20oKTtcclxuICBcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX3Byb3h5LCB0aGlzLnByb2plY3QoYywgeiksIHRoaXMuZ2V0Wm9vbVNjYWxlKHosIDEpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NhdGNoVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKHRoaXMuX2FuaW1hdGluZ1pvb20gJiYgZS5wcm9wZXJ0eU5hbWUuaW5kZXhPZigndHJhbnNmb3JtJykgPj0gMCkge1xyXG4gIFx0XHRcdHRoaXMuX29uWm9vbVRyYW5zaXRpb25FbmQoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfbm90aGluZ1RvQW5pbWF0ZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gIXRoaXMuX2NvbnRhaW5lci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKS5sZW5ndGg7XHJcbiAgXHR9LFxyXG5cclxuICBcdF90cnlBbmltYXRlZFpvb206IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20sIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9hbmltYXRpbmdab29tKSB7IHJldHVybiB0cnVlOyB9XHJcblxyXG4gIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgaWYgZGlzYWJsZWQsIG5vdCBzdXBwb3J0ZWQgb3Igem9vbSBkaWZmZXJlbmNlIGlzIHRvbyBsYXJnZVxyXG4gIFx0XHRpZiAoIXRoaXMuX3pvb21BbmltYXRlZCB8fCBvcHRpb25zLmFuaW1hdGUgPT09IGZhbHNlIHx8IHRoaXMuX25vdGhpbmdUb0FuaW1hdGUoKSB8fFxyXG4gIFx0XHQgICAgICAgIE1hdGguYWJzKHpvb20gLSB0aGlzLl96b29tKSA+IHRoaXMub3B0aW9ucy56b29tQW5pbWF0aW9uVGhyZXNob2xkKSB7IHJldHVybiBmYWxzZTsgfVxyXG5cclxuICBcdFx0Ly8gb2Zmc2V0IGlzIHRoZSBwaXhlbCBjb29yZHMgb2YgdGhlIHpvb20gb3JpZ2luIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGNlbnRlclxyXG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLmdldFpvb21TY2FsZSh6b29tKSxcclxuICBcdFx0ICAgIG9mZnNldCA9IHRoaXMuX2dldENlbnRlck9mZnNldChjZW50ZXIpLl9kaXZpZGVCeSgxIC0gMSAvIHNjYWxlKTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgaWYgdGhlIHpvb20gb3JpZ2luIGlzbid0IHdpdGhpbiBvbmUgc2NyZWVuIGZyb20gdGhlIGN1cnJlbnQgY2VudGVyLCB1bmxlc3MgZm9yY2VkXHJcbiAgXHRcdGlmIChvcHRpb25zLmFuaW1hdGUgIT09IHRydWUgJiYgIXRoaXMuZ2V0U2l6ZSgpLmNvbnRhaW5zKG9mZnNldCkpIHsgcmV0dXJuIGZhbHNlOyB9XHJcblxyXG4gIFx0XHRyZXF1ZXN0QW5pbUZyYW1lKGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHR0aGlzXHJcbiAgXHRcdFx0ICAgIC5fbW92ZVN0YXJ0KHRydWUsIGZhbHNlKVxyXG4gIFx0XHRcdCAgICAuX2FuaW1hdGVab29tKGNlbnRlciwgem9vbSwgdHJ1ZSk7XHJcbiAgXHRcdH0sIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRydWU7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGNlbnRlciwgem9vbSwgc3RhcnRBbmltLCBub1VwZGF0ZSkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcFBhbmUpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAoc3RhcnRBbmltKSB7XHJcbiAgXHRcdFx0dGhpcy5fYW5pbWF0aW5nWm9vbSA9IHRydWU7XHJcblxyXG4gIFx0XHRcdC8vIHJlbWVtYmVyIHdoYXQgY2VudGVyL3pvb20gdG8gc2V0IGFmdGVyIGFuaW1hdGlvblxyXG4gIFx0XHRcdHRoaXMuX2FuaW1hdGVUb0NlbnRlciA9IGNlbnRlcjtcclxuICBcdFx0XHR0aGlzLl9hbmltYXRlVG9ab29tID0gem9vbTtcclxuXHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fbWFwUGFuZSwgJ2xlYWZsZXQtem9vbS1hbmltJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIE90aGVyIEV2ZW50c1xyXG4gIFx0XHQvLyBAZXZlbnQgem9vbWFuaW06IFpvb21BbmltRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgYXQgbGVhc3Qgb25jZSBwZXIgem9vbSBhbmltYXRpb24uIEZvciBjb250aW51b3VzIHpvb20sIGxpa2UgcGluY2ggem9vbWluZywgZmlyZWQgb25jZSBwZXIgZnJhbWUgZHVyaW5nIHpvb20uXHJcbiAgXHRcdHRoaXMuZmlyZSgnem9vbWFuaW0nLCB7XHJcbiAgXHRcdFx0Y2VudGVyOiBjZW50ZXIsXHJcbiAgXHRcdFx0em9vbTogem9vbSxcclxuICBcdFx0XHRub1VwZGF0ZTogbm9VcGRhdGVcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAoIXRoaXMuX3RlbXBGaXJlWm9vbUV2ZW50KSB7XHJcbiAgXHRcdFx0dGhpcy5fdGVtcEZpcmVab29tRXZlbnQgPSB0aGlzLl96b29tICE9PSB0aGlzLl9hbmltYXRlVG9ab29tO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlKHRoaXMuX2FuaW1hdGVUb0NlbnRlciwgdGhpcy5fYW5pbWF0ZVRvWm9vbSwgdW5kZWZpbmVkLCB0cnVlKTtcclxuXHJcbiAgXHRcdC8vIFdvcmsgYXJvdW5kIHdlYmtpdCBub3QgZmlyaW5nICd0cmFuc2l0aW9uZW5kJywgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvaXNzdWVzLzM2ODksIDI2OTNcclxuICBcdFx0c2V0VGltZW91dChiaW5kKHRoaXMuX29uWm9vbVRyYW5zaXRpb25FbmQsIHRoaXMpLCAyNTApO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25ab29tVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbWFwUGFuZSkge1xyXG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX21hcFBhbmUsICdsZWFmbGV0LXpvb20tYW5pbScpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9hbmltYXRpbmdab29tID0gZmFsc2U7XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlKHRoaXMuX2FuaW1hdGVUb0NlbnRlciwgdGhpcy5fYW5pbWF0ZVRvWm9vbSwgdW5kZWZpbmVkLCB0cnVlKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl90ZW1wRmlyZVpvb21FdmVudCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbScpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl90ZW1wRmlyZVpvb21FdmVudDtcclxuXHJcbiAgXHRcdHRoaXMuZmlyZSgnbW92ZScpO1xyXG5cclxuICBcdFx0dGhpcy5fbW92ZUVuZCh0cnVlKTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQHNlY3Rpb25cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5tYXAoaWQ6IFN0cmluZywgb3B0aW9ucz86IE1hcCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIG1hcCBvYmplY3QgZ2l2ZW4gdGhlIERPTSBJRCBvZiBhIGA8ZGl2PmAgZWxlbWVudFxyXG4gIC8vIGFuZCBvcHRpb25hbGx5IGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYE1hcCBvcHRpb25zYC5cclxuICAvL1xyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwubWFwKGVsOiBIVE1MRWxlbWVudCwgb3B0aW9ucz86IE1hcCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIG1hcCBvYmplY3QgZ2l2ZW4gYW4gaW5zdGFuY2Ugb2YgYSBgPGRpdj5gIEhUTUwgZWxlbWVudFxyXG4gIC8vIGFuZCBvcHRpb25hbGx5IGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYE1hcCBvcHRpb25zYC5cclxuICBmdW5jdGlvbiBjcmVhdGVNYXAoaWQsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgTWFwKGlkLCBvcHRpb25zKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAY2xhc3MgQ29udHJvbFxyXG4gICAqIEBha2EgTC5Db250cm9sXHJcbiAgICogQGluaGVyaXRzIENsYXNzXHJcbiAgICpcclxuICAgKiBMLkNvbnRyb2wgaXMgYSBiYXNlIGNsYXNzIGZvciBpbXBsZW1lbnRpbmcgbWFwIGNvbnRyb2xzLiBIYW5kbGVzIHBvc2l0aW9uaW5nLlxyXG4gICAqIEFsbCBvdGhlciBjb250cm9scyBleHRlbmQgZnJvbSB0aGlzIGNsYXNzLlxyXG4gICAqL1xyXG5cclxuICB2YXIgQ29udHJvbCA9IENsYXNzLmV4dGVuZCh7XHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBDb250cm9sIE9wdGlvbnNcclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBwb3NpdGlvbjogU3RyaW5nID0gJ3RvcHJpZ2h0J1xyXG4gIFx0XHQvLyBUaGUgcG9zaXRpb24gb2YgdGhlIGNvbnRyb2wgKG9uZSBvZiB0aGUgbWFwIGNvcm5lcnMpLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIGAndG9wbGVmdCdgLFxyXG4gIFx0XHQvLyBgJ3RvcHJpZ2h0J2AsIGAnYm90dG9tbGVmdCdgIG9yIGAnYm90dG9tcmlnaHQnYFxyXG4gIFx0XHRwb3NpdGlvbjogJ3RvcHJpZ2h0J1xyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvKiBAc2VjdGlvblxyXG4gIFx0ICogQ2xhc3NlcyBleHRlbmRpbmcgTC5Db250cm9sIHdpbGwgaW5oZXJpdCB0aGUgZm9sbG93aW5nIG1ldGhvZHM6XHJcbiAgXHQgKlxyXG4gIFx0ICogQG1ldGhvZCBnZXRQb3NpdGlvbjogc3RyaW5nXHJcbiAgXHQgKiBSZXR1cm5zIHRoZSBwb3NpdGlvbiBvZiB0aGUgY29udHJvbC5cclxuICBcdCAqL1xyXG4gIFx0Z2V0UG9zaXRpb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5wb3NpdGlvbjtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQb3NpdGlvbihwb3NpdGlvbjogc3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgcG9zaXRpb24gb2YgdGhlIGNvbnRyb2wuXHJcbiAgXHRzZXRQb3NpdGlvbjogZnVuY3Rpb24gKHBvc2l0aW9uKSB7XHJcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XHJcblxyXG4gIFx0XHRpZiAobWFwKSB7XHJcbiAgXHRcdFx0bWFwLnJlbW92ZUNvbnRyb2wodGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMub3B0aW9ucy5wb3NpdGlvbiA9IHBvc2l0aW9uO1xyXG5cclxuICBcdFx0aWYgKG1hcCkge1xyXG4gIFx0XHRcdG1hcC5hZGRDb250cm9sKHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250YWluZXI6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBIVE1MRWxlbWVudCB0aGF0IGNvbnRhaW5zIHRoZSBjb250cm9sLlxyXG4gIFx0Z2V0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250YWluZXI7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkVG8obWFwOiBNYXApOiB0aGlzXHJcbiAgXHQvLyBBZGRzIHRoZSBjb250cm9sIHRvIHRoZSBnaXZlbiBtYXAuXHJcbiAgXHRhZGRUbzogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLnJlbW92ZSgpO1xyXG4gIFx0XHR0aGlzLl9tYXAgPSBtYXA7XHJcblxyXG4gIFx0XHR2YXIgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gdGhpcy5vbkFkZChtYXApLFxyXG4gIFx0XHQgICAgcG9zID0gdGhpcy5nZXRQb3NpdGlvbigpLFxyXG4gIFx0XHQgICAgY29ybmVyID0gbWFwLl9jb250cm9sQ29ybmVyc1twb3NdO1xyXG5cclxuICBcdFx0YWRkQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC1jb250cm9sJyk7XHJcblxyXG4gIFx0XHRpZiAocG9zLmluZGV4T2YoJ2JvdHRvbScpICE9PSAtMSkge1xyXG4gIFx0XHRcdGNvcm5lci5pbnNlcnRCZWZvcmUoY29udGFpbmVyLCBjb3JuZXIuZmlyc3RDaGlsZCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Y29ybmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX21hcC5vbigndW5sb2FkJywgdGhpcy5yZW1vdmUsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIHRoZSBjb250cm9sIGZyb20gdGhlIG1hcCBpdCBpcyBjdXJyZW50bHkgYWN0aXZlIG9uLlxyXG4gIFx0cmVtb3ZlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJlbW92ZSh0aGlzLl9jb250YWluZXIpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub25SZW1vdmUpIHtcclxuICBcdFx0XHR0aGlzLm9uUmVtb3ZlKHRoaXMuX21hcCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX21hcC5vZmYoJ3VubG9hZCcsIHRoaXMucmVtb3ZlLCB0aGlzKTtcclxuICBcdFx0dGhpcy5fbWFwID0gbnVsbDtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmVmb2N1c09uTWFwOiBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHQvLyBpZiBtYXAgZXhpc3RzIGFuZCBldmVudCBpcyBub3QgYSBrZXlib2FyZCBldmVudFxyXG4gIFx0XHRpZiAodGhpcy5fbWFwICYmIGUgJiYgZS5zY3JlZW5YID4gMCAmJiBlLnNjcmVlblkgPiAwKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLmdldENvbnRhaW5lcigpLmZvY3VzKCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgdmFyIGNvbnRyb2wgPSBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBDb250cm9sKG9wdGlvbnMpO1xyXG4gIH07XHJcblxyXG4gIC8qIEBzZWN0aW9uIEV4dGVuc2lvbiBtZXRob2RzXHJcbiAgICogQHVuaW5oZXJpdGFibGVcclxuICAgKlxyXG4gICAqIEV2ZXJ5IGNvbnRyb2wgc2hvdWxkIGV4dGVuZCBmcm9tIGBMLkNvbnRyb2xgIGFuZCAocmUtKWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZHMuXHJcbiAgICpcclxuICAgKiBAbWV0aG9kIG9uQWRkKG1hcDogTWFwKTogSFRNTEVsZW1lbnRcclxuICAgKiBTaG91bGQgcmV0dXJuIHRoZSBjb250YWluZXIgRE9NIGVsZW1lbnQgZm9yIHRoZSBjb250cm9sIGFuZCBhZGQgbGlzdGVuZXJzIG9uIHJlbGV2YW50IG1hcCBldmVudHMuIENhbGxlZCBvbiBbYGNvbnRyb2wuYWRkVG8obWFwKWBdKCNjb250cm9sLWFkZFRvKS5cclxuICAgKlxyXG4gICAqIEBtZXRob2Qgb25SZW1vdmUobWFwOiBNYXApXHJcbiAgICogT3B0aW9uYWwgbWV0aG9kLiBTaG91bGQgY29udGFpbiBhbGwgY2xlYW4gdXAgY29kZSB0aGF0IHJlbW92ZXMgdGhlIGxpc3RlbmVycyBwcmV2aW91c2x5IGFkZGVkIGluIFtgb25BZGRgXSgjY29udHJvbC1vbmFkZCkuIENhbGxlZCBvbiBbYGNvbnRyb2wucmVtb3ZlKClgXSgjY29udHJvbC1yZW1vdmUpLlxyXG4gICAqL1xyXG5cclxuICAvKiBAbmFtZXNwYWNlIE1hcFxyXG4gICAqIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcclxuICAgKi9cclxuICBNYXAuaW5jbHVkZSh7XHJcbiAgXHQvLyBAbWV0aG9kIGFkZENvbnRyb2woY29udHJvbDogQ29udHJvbCk6IHRoaXNcclxuICBcdC8vIEFkZHMgdGhlIGdpdmVuIGNvbnRyb2wgdG8gdGhlIG1hcFxyXG4gIFx0YWRkQ29udHJvbDogZnVuY3Rpb24gKGNvbnRyb2wpIHtcclxuICBcdFx0Y29udHJvbC5hZGRUbyh0aGlzKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlQ29udHJvbChjb250cm9sOiBDb250cm9sKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgZ2l2ZW4gY29udHJvbCBmcm9tIHRoZSBtYXBcclxuICBcdHJlbW92ZUNvbnRyb2w6IGZ1bmN0aW9uIChjb250cm9sKSB7XHJcbiAgXHRcdGNvbnRyb2wucmVtb3ZlKCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdENvbnRyb2xQb3M6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvcm5lcnMgPSB0aGlzLl9jb250cm9sQ29ybmVycyA9IHt9LFxyXG4gIFx0XHQgICAgbCA9ICdsZWFmbGV0LScsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250cm9sQ29udGFpbmVyID1cclxuICBcdFx0ICAgICAgICAgICAgY3JlYXRlJDEoJ2RpdicsIGwgKyAnY29udHJvbC1jb250YWluZXInLCB0aGlzLl9jb250YWluZXIpO1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gY3JlYXRlQ29ybmVyKHZTaWRlLCBoU2lkZSkge1xyXG4gIFx0XHRcdHZhciBjbGFzc05hbWUgPSBsICsgdlNpZGUgKyAnICcgKyBsICsgaFNpZGU7XHJcblxyXG4gIFx0XHRcdGNvcm5lcnNbdlNpZGUgKyBoU2lkZV0gPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRjcmVhdGVDb3JuZXIoJ3RvcCcsICdsZWZ0Jyk7XHJcbiAgXHRcdGNyZWF0ZUNvcm5lcigndG9wJywgJ3JpZ2h0Jyk7XHJcbiAgXHRcdGNyZWF0ZUNvcm5lcignYm90dG9tJywgJ2xlZnQnKTtcclxuICBcdFx0Y3JlYXRlQ29ybmVyKCdib3R0b20nLCAncmlnaHQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NsZWFyQ29udHJvbFBvczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2NvbnRyb2xDb3JuZXJzKSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2NvbnRyb2xDb3JuZXJzW2ldKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZW1vdmUodGhpcy5fY29udHJvbENvbnRhaW5lcik7XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl9jb250cm9sQ29ybmVycztcclxuICBcdFx0ZGVsZXRlIHRoaXMuX2NvbnRyb2xDb250YWluZXI7XHJcbiAgXHR9XHJcbiAgfSk7XG5cbiAgLypcclxuICAgKiBAY2xhc3MgQ29udHJvbC5MYXllcnNcclxuICAgKiBAYWthIEwuQ29udHJvbC5MYXllcnNcclxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxyXG4gICAqXHJcbiAgICogVGhlIGxheWVycyBjb250cm9sIGdpdmVzIHVzZXJzIHRoZSBhYmlsaXR5IHRvIHN3aXRjaCBiZXR3ZWVuIGRpZmZlcmVudCBiYXNlIGxheWVycyBhbmQgc3dpdGNoIG92ZXJsYXlzIG9uL29mZiAoY2hlY2sgb3V0IHRoZSBbZGV0YWlsZWQgZXhhbXBsZV0oaHR0cHM6Ly9sZWFmbGV0anMuY29tL2V4YW1wbGVzL2xheWVycy1jb250cm9sLykpLiBFeHRlbmRzIGBDb250cm9sYC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBiYXNlTGF5ZXJzID0ge1xyXG4gICAqIFx0XCJNYXBib3hcIjogbWFwYm94LFxyXG4gICAqIFx0XCJPcGVuU3RyZWV0TWFwXCI6IG9zbVxyXG4gICAqIH07XHJcbiAgICpcclxuICAgKiB2YXIgb3ZlcmxheXMgPSB7XHJcbiAgICogXHRcIk1hcmtlclwiOiBtYXJrZXIsXHJcbiAgICogXHRcIlJvYWRzXCI6IHJvYWRzTGF5ZXJcclxuICAgKiB9O1xyXG4gICAqXHJcbiAgICogTC5jb250cm9sLmxheWVycyhiYXNlTGF5ZXJzLCBvdmVybGF5cykuYWRkVG8obWFwKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIFRoZSBgYmFzZUxheWVyc2AgYW5kIGBvdmVybGF5c2AgcGFyYW1ldGVycyBhcmUgb2JqZWN0IGxpdGVyYWxzIHdpdGggbGF5ZXIgbmFtZXMgYXMga2V5cyBhbmQgYExheWVyYCBvYmplY3RzIGFzIHZhbHVlczpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICoge1xyXG4gICAqICAgICBcIjxzb21lTmFtZTE+XCI6IGxheWVyMSxcclxuICAgKiAgICAgXCI8c29tZU5hbWUyPlwiOiBsYXllcjJcclxuICAgKiB9XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBUaGUgbGF5ZXIgbmFtZXMgY2FuIGNvbnRhaW4gSFRNTCwgd2hpY2ggYWxsb3dzIHlvdSB0byBhZGQgYWRkaXRpb25hbCBzdHlsaW5nIHRvIHRoZSBpdGVtczpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICoge1wiPGltZyBzcmM9J215LWxheWVyLWljb24nIC8+IDxzcGFuIGNsYXNzPSdteS1sYXllci1pdGVtJz5NeSBMYXllcjwvc3Bhbj5cIjogbXlMYXllcn1cclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcbiAgdmFyIExheWVycyA9IENvbnRyb2wuZXh0ZW5kKHtcclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIENvbnRyb2wuTGF5ZXJzIG9wdGlvbnNcclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBjb2xsYXBzZWQ6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGNvbnRyb2wgd2lsbCBiZSBjb2xsYXBzZWQgaW50byBhbiBpY29uIGFuZCBleHBhbmRlZCBvbiBtb3VzZSBob3ZlciwgdG91Y2gsIG9yIGtleWJvYXJkIGFjdGl2YXRpb24uXHJcbiAgXHRcdGNvbGxhcHNlZDogdHJ1ZSxcclxuICBcdFx0cG9zaXRpb246ICd0b3ByaWdodCcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9aSW5kZXg6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGNvbnRyb2wgd2lsbCBhc3NpZ24gekluZGV4ZXMgaW4gaW5jcmVhc2luZyBvcmRlciB0byBhbGwgb2YgaXRzIGxheWVycyBzbyB0aGF0IHRoZSBvcmRlciBpcyBwcmVzZXJ2ZWQgd2hlbiBzd2l0Y2hpbmcgdGhlbSBvbi9vZmYuXHJcbiAgXHRcdGF1dG9aSW5kZXg6IHRydWUsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGhpZGVTaW5nbGVCYXNlOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgYmFzZSBsYXllcnMgaW4gdGhlIGNvbnRyb2wgd2lsbCBiZSBoaWRkZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZS5cclxuICBcdFx0aGlkZVNpbmdsZUJhc2U6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBzb3J0TGF5ZXJzOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0byBzb3J0IHRoZSBsYXllcnMuIFdoZW4gYGZhbHNlYCwgbGF5ZXJzIHdpbGwga2VlcCB0aGUgb3JkZXJcclxuICBcdFx0Ly8gaW4gd2hpY2ggdGhleSB3ZXJlIGFkZGVkIHRvIHRoZSBjb250cm9sLlxyXG4gIFx0XHRzb3J0TGF5ZXJzOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gc29ydEZ1bmN0aW9uOiBGdW5jdGlvbiA9ICpcclxuICBcdFx0Ly8gQSBbY29tcGFyZSBmdW5jdGlvbl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQXJyYXkvc29ydClcclxuICBcdFx0Ly8gdGhhdCB3aWxsIGJlIHVzZWQgZm9yIHNvcnRpbmcgdGhlIGxheWVycywgd2hlbiBgc29ydExheWVyc2AgaXMgYHRydWVgLlxyXG4gIFx0XHQvLyBUaGUgZnVuY3Rpb24gcmVjZWl2ZXMgYm90aCB0aGUgYEwuTGF5ZXJgIGluc3RhbmNlcyBhbmQgdGhlaXIgbmFtZXMsIGFzIGluXHJcbiAgXHRcdC8vIGBzb3J0RnVuY3Rpb24obGF5ZXJBLCBsYXllckIsIG5hbWVBLCBuYW1lQilgLlxyXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBpdCBzb3J0cyBsYXllcnMgYWxwaGFiZXRpY2FsbHkgYnkgdGhlaXIgbmFtZS5cclxuICBcdFx0c29ydEZ1bmN0aW9uOiBmdW5jdGlvbiAobGF5ZXJBLCBsYXllckIsIG5hbWVBLCBuYW1lQikge1xyXG4gIFx0XHRcdHJldHVybiBuYW1lQSA8IG5hbWVCID8gLTEgOiAobmFtZUIgPCBuYW1lQSA/IDEgOiAwKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoYmFzZUxheWVycywgb3ZlcmxheXMsIG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHRoaXMuX2xheWVyQ29udHJvbElucHV0cyA9IFtdO1xyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSBbXTtcclxuICBcdFx0dGhpcy5fbGFzdFpJbmRleCA9IDA7XHJcbiAgXHRcdHRoaXMuX2hhbmRsaW5nQ2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgaW4gYmFzZUxheWVycykge1xyXG4gIFx0XHRcdHRoaXMuX2FkZExheWVyKGJhc2VMYXllcnNbaV0sIGkpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRmb3IgKGkgaW4gb3ZlcmxheXMpIHtcclxuICBcdFx0XHR0aGlzLl9hZGRMYXllcihvdmVybGF5c1tpXSwgaSwgdHJ1ZSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0dGhpcy5faW5pdExheW91dCgpO1xyXG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcclxuXHJcbiAgXHRcdHRoaXMuX21hcCA9IG1hcDtcclxuICBcdFx0bWFwLm9uKCd6b29tZW5kJywgdGhpcy5fY2hlY2tEaXNhYmxlZExheWVycywgdGhpcyk7XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX2xheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdHRoaXMuX2xheWVyc1tpXS5sYXllci5vbignYWRkIHJlbW92ZScsIHRoaXMuX29uTGF5ZXJDaGFuZ2UsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fY29udGFpbmVyO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRhZGRUbzogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRDb250cm9sLnByb3RvdHlwZS5hZGRUby5jYWxsKHRoaXMsIG1hcCk7XHJcbiAgXHRcdC8vIFRyaWdnZXIgZXhwYW5kIGFmdGVyIExheWVycyBDb250cm9sIGhhcyBiZWVuIGluc2VydGVkIGludG8gRE9NIHNvIHRoYXQgaXMgbm93IGhhcyBhbiBhY3R1YWwgaGVpZ2h0LlxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fZXhwYW5kSWZOb3RDb2xsYXBzZWQoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5fbWFwLm9mZignem9vbWVuZCcsIHRoaXMuX2NoZWNrRGlzYWJsZWRMYXllcnMsIHRoaXMpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9sYXllcnMubGVuZ3RoOyBpKyspIHtcclxuICBcdFx0XHR0aGlzLl9sYXllcnNbaV0ubGF5ZXIub2ZmKCdhZGQgcmVtb3ZlJywgdGhpcy5fb25MYXllckNoYW5nZSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBhZGRCYXNlTGF5ZXIobGF5ZXI6IExheWVyLCBuYW1lOiBTdHJpbmcpOiB0aGlzXHJcbiAgXHQvLyBBZGRzIGEgYmFzZSBsYXllciAocmFkaW8gYnV0dG9uIGVudHJ5KSB3aXRoIHRoZSBnaXZlbiBuYW1lIHRvIHRoZSBjb250cm9sLlxyXG4gIFx0YWRkQmFzZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUpIHtcclxuICBcdFx0dGhpcy5fYWRkTGF5ZXIobGF5ZXIsIG5hbWUpO1xyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkT3ZlcmxheShsYXllcjogTGF5ZXIsIG5hbWU6IFN0cmluZyk6IHRoaXNcclxuICBcdC8vIEFkZHMgYW4gb3ZlcmxheSAoY2hlY2tib3ggZW50cnkpIHdpdGggdGhlIGdpdmVuIG5hbWUgdG8gdGhlIGNvbnRyb2wuXHJcbiAgXHRhZGRPdmVybGF5OiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUpIHtcclxuICBcdFx0dGhpcy5fYWRkTGF5ZXIobGF5ZXIsIG5hbWUsIHRydWUpO1xyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlTGF5ZXIobGF5ZXI6IExheWVyKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlIHRoZSBnaXZlbiBsYXllciBmcm9tIHRoZSBjb250cm9sLlxyXG4gIFx0cmVtb3ZlTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRsYXllci5vZmYoJ2FkZCByZW1vdmUnLCB0aGlzLl9vbkxheWVyQ2hhbmdlLCB0aGlzKTtcclxuXHJcbiAgXHRcdHZhciBvYmogPSB0aGlzLl9nZXRMYXllcihzdGFtcChsYXllcikpO1xyXG4gIFx0XHRpZiAob2JqKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzLnNwbGljZSh0aGlzLl9sYXllcnMuaW5kZXhPZihvYmopLCAxKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXhwYW5kKCk6IHRoaXNcclxuICBcdC8vIEV4cGFuZCB0aGUgY29udHJvbCBjb250YWluZXIgaWYgY29sbGFwc2VkLlxyXG4gIFx0ZXhwYW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQnKTtcclxuICBcdFx0dGhpcy5fc2VjdGlvbi5zdHlsZS5oZWlnaHQgPSBudWxsO1xyXG4gIFx0XHR2YXIgYWNjZXB0YWJsZUhlaWdodCA9IHRoaXMuX21hcC5nZXRTaXplKCkueSAtICh0aGlzLl9jb250YWluZXIub2Zmc2V0VG9wICsgNTApO1xyXG4gIFx0XHRpZiAoYWNjZXB0YWJsZUhlaWdodCA8IHRoaXMuX3NlY3Rpb24uY2xpZW50SGVpZ2h0KSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fc2VjdGlvbiwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtc2Nyb2xsYmFyJyk7XHJcbiAgXHRcdFx0dGhpcy5fc2VjdGlvbi5zdHlsZS5oZWlnaHQgPSBhY2NlcHRhYmxlSGVpZ2h0ICsgJ3B4JztcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9zZWN0aW9uLCAnbGVhZmxldC1jb250cm9sLWxheWVycy1zY3JvbGxiYXInKTtcclxuICBcdFx0fVxyXG4gIFx0XHR0aGlzLl9jaGVja0Rpc2FibGVkTGF5ZXJzKCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNvbGxhcHNlKCk6IHRoaXNcclxuICBcdC8vIENvbGxhcHNlIHRoZSBjb250cm9sIGNvbnRhaW5lciBpZiBleHBhbmRlZC5cclxuICBcdGNvbGxhcHNlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQnKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0TGF5b3V0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSAnbGVhZmxldC1jb250cm9sLWxheWVycycsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lKSxcclxuICBcdFx0ICAgIGNvbGxhcHNlZCA9IHRoaXMub3B0aW9ucy5jb2xsYXBzZWQ7XHJcblxyXG4gIFx0XHQvLyBtYWtlcyB0aGlzIHdvcmsgb24gSUUgdG91Y2ggZGV2aWNlcyBieSBzdG9wcGluZyBpdCBmcm9tIGZpcmluZyBhIG1vdXNlb3V0IGV2ZW50IHdoZW4gdGhlIHRvdWNoIGlzIHJlbGVhc2VkXHJcbiAgXHRcdGNvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGFzcG9wdXAnLCB0cnVlKTtcclxuXHJcbiAgXHRcdGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGNvbnRhaW5lcik7XHJcbiAgXHRcdGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbihjb250YWluZXIpO1xyXG5cclxuICBcdFx0dmFyIHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uID0gY3JlYXRlJDEoJ3NlY3Rpb24nLCBjbGFzc05hbWUgKyAnLWxpc3QnKTtcclxuXHJcbiAgXHRcdGlmIChjb2xsYXBzZWQpIHtcclxuICBcdFx0XHR0aGlzLl9tYXAub24oJ2NsaWNrJywgdGhpcy5jb2xsYXBzZSwgdGhpcyk7XHJcblxyXG4gIFx0XHRcdG9uKGNvbnRhaW5lciwge1xyXG4gIFx0XHRcdFx0bW91c2VlbnRlcjogdGhpcy5fZXhwYW5kU2FmZWx5LFxyXG4gIFx0XHRcdFx0bW91c2VsZWF2ZTogdGhpcy5jb2xsYXBzZVxyXG4gIFx0XHRcdH0sIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbGluayA9IHRoaXMuX2xheWVyc0xpbmsgPSBjcmVhdGUkMSgnYScsIGNsYXNzTmFtZSArICctdG9nZ2xlJywgY29udGFpbmVyKTtcclxuICBcdFx0bGluay5ocmVmID0gJyMnO1xyXG4gIFx0XHRsaW5rLnRpdGxlID0gJ0xheWVycyc7XHJcbiAgXHRcdGxpbmsuc2V0QXR0cmlidXRlKCdyb2xlJywgJ2J1dHRvbicpO1xyXG5cclxuICBcdFx0b24obGluaywge1xyXG4gIFx0XHRcdGtleWRvd246IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0XHRpZiAoZS5rZXlDb2RlID09PSAxMykge1xyXG4gIFx0XHRcdFx0XHR0aGlzLl9leHBhbmRTYWZlbHkoKTtcclxuICBcdFx0XHRcdH1cclxuICBcdFx0XHR9LFxyXG4gIFx0XHRcdC8vIENlcnRhaW4gc2NyZWVuIHJlYWRlcnMgaW50ZXJjZXB0IHRoZSBrZXkgZXZlbnQgYW5kIGluc3RlYWQgc2VuZCBhIGNsaWNrIGV2ZW50XHJcbiAgXHRcdFx0Y2xpY2s6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdFx0XHRcdHRoaXMuX2V4cGFuZFNhZmVseSgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fSwgdGhpcyk7XHJcblxyXG4gIFx0XHRpZiAoIWNvbGxhcHNlZCkge1xyXG4gIFx0XHRcdHRoaXMuZXhwYW5kKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2Jhc2VMYXllcnNMaXN0ID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSArICctYmFzZScsIHNlY3Rpb24pO1xyXG4gIFx0XHR0aGlzLl9zZXBhcmF0b3IgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lICsgJy1zZXBhcmF0b3InLCBzZWN0aW9uKTtcclxuICBcdFx0dGhpcy5fb3ZlcmxheXNMaXN0ID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSArICctb3ZlcmxheXMnLCBzZWN0aW9uKTtcclxuXHJcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWN0aW9uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldExheWVyOiBmdW5jdGlvbiAoaWQpIHtcclxuICBcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9sYXllcnMubGVuZ3RoOyBpKyspIHtcclxuXHJcbiAgXHRcdFx0aWYgKHRoaXMuX2xheWVyc1tpXSAmJiBzdGFtcCh0aGlzLl9sYXllcnNbaV0ubGF5ZXIpID09PSBpZCkge1xyXG4gIFx0XHRcdFx0cmV0dXJuIHRoaXMuX2xheWVyc1tpXTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2FkZExheWVyOiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUsIG92ZXJsYXkpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdGxheWVyLm9uKCdhZGQgcmVtb3ZlJywgdGhpcy5fb25MYXllckNoYW5nZSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2xheWVycy5wdXNoKHtcclxuICBcdFx0XHRsYXllcjogbGF5ZXIsXHJcbiAgXHRcdFx0bmFtZTogbmFtZSxcclxuICBcdFx0XHRvdmVybGF5OiBvdmVybGF5XHJcbiAgXHRcdH0pO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5zb3J0TGF5ZXJzKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzLnNvcnQoYmluZChmdW5jdGlvbiAoYSwgYikge1xyXG4gIFx0XHRcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5zb3J0RnVuY3Rpb24oYS5sYXllciwgYi5sYXllciwgYS5uYW1lLCBiLm5hbWUpO1xyXG4gIFx0XHRcdH0sIHRoaXMpKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5hdXRvWkluZGV4ICYmIGxheWVyLnNldFpJbmRleCkge1xyXG4gIFx0XHRcdHRoaXMuX2xhc3RaSW5kZXgrKztcclxuICBcdFx0XHRsYXllci5zZXRaSW5kZXgodGhpcy5fbGFzdFpJbmRleCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2V4cGFuZElmTm90Q29sbGFwc2VkKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHsgcmV0dXJuIHRoaXM7IH1cclxuXHJcbiAgXHRcdGVtcHR5KHRoaXMuX2Jhc2VMYXllcnNMaXN0KTtcclxuICBcdFx0ZW1wdHkodGhpcy5fb3ZlcmxheXNMaXN0KTtcclxuXHJcbiAgXHRcdHRoaXMuX2xheWVyQ29udHJvbElucHV0cyA9IFtdO1xyXG4gIFx0XHR2YXIgYmFzZUxheWVyc1ByZXNlbnQsIG92ZXJsYXlzUHJlc2VudCwgaSwgb2JqLCBiYXNlTGF5ZXJzQ291bnQgPSAwO1xyXG5cclxuICBcdFx0Zm9yIChpID0gMDsgaSA8IHRoaXMuX2xheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdG9iaiA9IHRoaXMuX2xheWVyc1tpXTtcclxuICBcdFx0XHR0aGlzLl9hZGRJdGVtKG9iaik7XHJcbiAgXHRcdFx0b3ZlcmxheXNQcmVzZW50ID0gb3ZlcmxheXNQcmVzZW50IHx8IG9iai5vdmVybGF5O1xyXG4gIFx0XHRcdGJhc2VMYXllcnNQcmVzZW50ID0gYmFzZUxheWVyc1ByZXNlbnQgfHwgIW9iai5vdmVybGF5O1xyXG4gIFx0XHRcdGJhc2VMYXllcnNDb3VudCArPSAhb2JqLm92ZXJsYXkgPyAxIDogMDtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gSGlkZSBiYXNlIGxheWVycyBzZWN0aW9uIGlmIHRoZXJlJ3Mgb25seSBvbmUgbGF5ZXIuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaGlkZVNpbmdsZUJhc2UpIHtcclxuICBcdFx0XHRiYXNlTGF5ZXJzUHJlc2VudCA9IGJhc2VMYXllcnNQcmVzZW50ICYmIGJhc2VMYXllcnNDb3VudCA+IDE7XHJcbiAgXHRcdFx0dGhpcy5fYmFzZUxheWVyc0xpc3Quc3R5bGUuZGlzcGxheSA9IGJhc2VMYXllcnNQcmVzZW50ID8gJycgOiAnbm9uZSc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3NlcGFyYXRvci5zdHlsZS5kaXNwbGF5ID0gb3ZlcmxheXNQcmVzZW50ICYmIGJhc2VMYXllcnNQcmVzZW50ID8gJycgOiAnbm9uZSc7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X29uTGF5ZXJDaGFuZ2U6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmICghdGhpcy5faGFuZGxpbmdDbGljaykge1xyXG4gIFx0XHRcdHRoaXMuX3VwZGF0ZSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgb2JqID0gdGhpcy5fZ2V0TGF5ZXIoc3RhbXAoZS50YXJnZXQpKTtcclxuXHJcbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgXHRcdC8vIEBzZWN0aW9uIExheWVyIGV2ZW50c1xyXG4gIFx0XHQvLyBAZXZlbnQgYmFzZWxheWVyY2hhbmdlOiBMYXllcnNDb250cm9sRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYmFzZSBsYXllciBpcyBjaGFuZ2VkIHRocm91Z2ggdGhlIFtsYXllcnMgY29udHJvbF0oI2NvbnRyb2wtbGF5ZXJzKS5cclxuICBcdFx0Ly8gQGV2ZW50IG92ZXJsYXlhZGQ6IExheWVyc0NvbnRyb2xFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIGFuIG92ZXJsYXkgaXMgc2VsZWN0ZWQgdGhyb3VnaCB0aGUgW2xheWVycyBjb250cm9sXSgjY29udHJvbC1sYXllcnMpLlxyXG4gIFx0XHQvLyBAZXZlbnQgb3ZlcmxheXJlbW92ZTogTGF5ZXJzQ29udHJvbEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gYW4gb3ZlcmxheSBpcyBkZXNlbGVjdGVkIHRocm91Z2ggdGhlIFtsYXllcnMgY29udHJvbF0oI2NvbnRyb2wtbGF5ZXJzKS5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBDb250cm9sLkxheWVyc1xyXG4gIFx0XHR2YXIgdHlwZSA9IG9iai5vdmVybGF5ID9cclxuICBcdFx0XHQoZS50eXBlID09PSAnYWRkJyA/ICdvdmVybGF5YWRkJyA6ICdvdmVybGF5cmVtb3ZlJykgOlxyXG4gIFx0XHRcdChlLnR5cGUgPT09ICdhZGQnID8gJ2Jhc2VsYXllcmNoYW5nZScgOiBudWxsKTtcclxuXHJcbiAgXHRcdGlmICh0eXBlKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLmZpcmUodHlwZSwgb2JqKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBJRTcgYnVncyBvdXQgaWYgeW91IGNyZWF0ZSBhIHJhZGlvIGR5bmFtaWNhbGx5LCBzbyB5b3UgaGF2ZSB0byBkbyBpdCB0aGlzIGhhY2t5IHdheSAoc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMTkwNzkpXHJcbiAgXHRfY3JlYXRlUmFkaW9FbGVtZW50OiBmdW5jdGlvbiAobmFtZSwgY2hlY2tlZCkge1xyXG5cclxuICBcdFx0dmFyIHJhZGlvSHRtbCA9ICc8aW5wdXQgdHlwZT1cInJhZGlvXCIgY2xhc3M9XCJsZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNlbGVjdG9yXCIgbmFtZT1cIicgK1xyXG4gIFx0XHRcdFx0bmFtZSArICdcIicgKyAoY2hlY2tlZCA/ICcgY2hlY2tlZD1cImNoZWNrZWRcIicgOiAnJykgKyAnLz4nO1xyXG5cclxuICBcdFx0dmFyIHJhZGlvRnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdFx0cmFkaW9GcmFnbWVudC5pbm5lckhUTUwgPSByYWRpb0h0bWw7XHJcblxyXG4gIFx0XHRyZXR1cm4gcmFkaW9GcmFnbWVudC5maXJzdENoaWxkO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRkSXRlbTogZnVuY3Rpb24gKG9iaikge1xyXG4gIFx0XHR2YXIgbGFiZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsYWJlbCcpLFxyXG4gIFx0XHQgICAgY2hlY2tlZCA9IHRoaXMuX21hcC5oYXNMYXllcihvYmoubGF5ZXIpLFxyXG4gIFx0XHQgICAgaW5wdXQ7XHJcblxyXG4gIFx0XHRpZiAob2JqLm92ZXJsYXkpIHtcclxuICBcdFx0XHRpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XHJcbiAgXHRcdFx0aW5wdXQudHlwZSA9ICdjaGVja2JveCc7XHJcbiAgXHRcdFx0aW5wdXQuY2xhc3NOYW1lID0gJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtc2VsZWN0b3InO1xyXG4gIFx0XHRcdGlucHV0LmRlZmF1bHRDaGVja2VkID0gY2hlY2tlZDtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRpbnB1dCA9IHRoaXMuX2NyZWF0ZVJhZGlvRWxlbWVudCgnbGVhZmxldC1iYXNlLWxheWVyc18nICsgc3RhbXAodGhpcyksIGNoZWNrZWQpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllckNvbnRyb2xJbnB1dHMucHVzaChpbnB1dCk7XHJcbiAgXHRcdGlucHV0LmxheWVySWQgPSBzdGFtcChvYmoubGF5ZXIpO1xyXG5cclxuICBcdFx0b24oaW5wdXQsICdjbGljaycsIHRoaXMuX29uSW5wdXRDbGljaywgdGhpcyk7XHJcblxyXG4gIFx0XHR2YXIgbmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcclxuICBcdFx0bmFtZS5pbm5lckhUTUwgPSAnICcgKyBvYmoubmFtZTtcclxuXHJcbiAgXHRcdC8vIEhlbHBzIGZyb20gcHJldmVudGluZyBsYXllciBjb250cm9sIGZsaWNrZXIgd2hlbiBjaGVja2JveGVzIGFyZSBkaXNhYmxlZFxyXG4gIFx0XHQvLyBodHRwczovL2dpdGh1Yi5jb20vTGVhZmxldC9MZWFmbGV0L2lzc3Vlcy8yNzcxXHJcbiAgXHRcdHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcblxyXG4gIFx0XHRsYWJlbC5hcHBlbmRDaGlsZChob2xkZXIpO1xyXG4gIFx0XHRob2xkZXIuYXBwZW5kQ2hpbGQoaW5wdXQpO1xyXG4gIFx0XHRob2xkZXIuYXBwZW5kQ2hpbGQobmFtZSk7XHJcblxyXG4gIFx0XHR2YXIgY29udGFpbmVyID0gb2JqLm92ZXJsYXkgPyB0aGlzLl9vdmVybGF5c0xpc3QgOiB0aGlzLl9iYXNlTGF5ZXJzTGlzdDtcclxuICBcdFx0Y29udGFpbmVyLmFwcGVuZENoaWxkKGxhYmVsKTtcclxuXHJcbiAgXHRcdHRoaXMuX2NoZWNrRGlzYWJsZWRMYXllcnMoKTtcclxuICBcdFx0cmV0dXJuIGxhYmVsO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25JbnB1dENsaWNrOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBpbnB1dHMgPSB0aGlzLl9sYXllckNvbnRyb2xJbnB1dHMsXHJcbiAgXHRcdCAgICBpbnB1dCwgbGF5ZXI7XHJcbiAgXHRcdHZhciBhZGRlZExheWVycyA9IFtdLFxyXG4gIFx0XHQgICAgcmVtb3ZlZExheWVycyA9IFtdO1xyXG5cclxuICBcdFx0dGhpcy5faGFuZGxpbmdDbGljayA9IHRydWU7XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpID0gaW5wdXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgXHRcdFx0aW5wdXQgPSBpbnB1dHNbaV07XHJcbiAgXHRcdFx0bGF5ZXIgPSB0aGlzLl9nZXRMYXllcihpbnB1dC5sYXllcklkKS5sYXllcjtcclxuXHJcbiAgXHRcdFx0aWYgKGlucHV0LmNoZWNrZWQpIHtcclxuICBcdFx0XHRcdGFkZGVkTGF5ZXJzLnB1c2gobGF5ZXIpO1xyXG4gIFx0XHRcdH0gZWxzZSBpZiAoIWlucHV0LmNoZWNrZWQpIHtcclxuICBcdFx0XHRcdHJlbW92ZWRMYXllcnMucHVzaChsYXllcik7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBCdWdmaXggaXNzdWUgMjMxODogU2hvdWxkIHJlbW92ZSBhbGwgb2xkIGxheWVycyBiZWZvcmUgcmVhZGRpbmcgbmV3IG9uZXNcclxuICBcdFx0Zm9yIChpID0gMDsgaSA8IHJlbW92ZWRMYXllcnMubGVuZ3RoOyBpKyspIHtcclxuICBcdFx0XHRpZiAodGhpcy5fbWFwLmhhc0xheWVyKHJlbW92ZWRMYXllcnNbaV0pKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9tYXAucmVtb3ZlTGF5ZXIocmVtb3ZlZExheWVyc1tpXSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdGZvciAoaSA9IDA7IGkgPCBhZGRlZExheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdGlmICghdGhpcy5fbWFwLmhhc0xheWVyKGFkZGVkTGF5ZXJzW2ldKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fbWFwLmFkZExheWVyKGFkZGVkTGF5ZXJzW2ldKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2hhbmRsaW5nQ2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgXHRcdHRoaXMuX3JlZm9jdXNPbk1hcCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2hlY2tEaXNhYmxlZExheWVyczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgaW5wdXRzID0gdGhpcy5fbGF5ZXJDb250cm9sSW5wdXRzLFxyXG4gIFx0XHQgICAgaW5wdXQsXHJcbiAgXHRcdCAgICBsYXllcixcclxuICBcdFx0ICAgIHpvb20gPSB0aGlzLl9tYXAuZ2V0Wm9vbSgpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IGlucHV0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gIFx0XHRcdGlucHV0ID0gaW5wdXRzW2ldO1xyXG4gIFx0XHRcdGxheWVyID0gdGhpcy5fZ2V0TGF5ZXIoaW5wdXQubGF5ZXJJZCkubGF5ZXI7XHJcbiAgXHRcdFx0aW5wdXQuZGlzYWJsZWQgPSAobGF5ZXIub3B0aW9ucy5taW5ab29tICE9PSB1bmRlZmluZWQgJiYgem9vbSA8IGxheWVyLm9wdGlvbnMubWluWm9vbSkgfHxcclxuICBcdFx0XHQgICAgICAgICAgICAgICAgIChsYXllci5vcHRpb25zLm1heFpvb20gIT09IHVuZGVmaW5lZCAmJiB6b29tID4gbGF5ZXIub3B0aW9ucy5tYXhab29tKTtcclxuXHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2V4cGFuZElmTm90Q29sbGFwc2VkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXAgJiYgIXRoaXMub3B0aW9ucy5jb2xsYXBzZWQpIHtcclxuICBcdFx0XHR0aGlzLmV4cGFuZCgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZXhwYW5kU2FmZWx5OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbjtcclxuICBcdFx0b24oc2VjdGlvbiwgJ2NsaWNrJywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0XHR0aGlzLmV4cGFuZCgpO1xyXG4gIFx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHRvZmYoc2VjdGlvbiwgJ2NsaWNrJywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0XHR9KTtcclxuICBcdH1cclxuXHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLmNvbnRyb2wubGF5ZXJzKGJhc2VsYXllcnM/OiBPYmplY3QsIG92ZXJsYXlzPzogT2JqZWN0LCBvcHRpb25zPzogQ29udHJvbC5MYXllcnMgb3B0aW9ucylcclxuICAvLyBDcmVhdGVzIGEgbGF5ZXJzIGNvbnRyb2wgd2l0aCB0aGUgZ2l2ZW4gbGF5ZXJzLiBCYXNlIGxheWVycyB3aWxsIGJlIHN3aXRjaGVkIHdpdGggcmFkaW8gYnV0dG9ucywgd2hpbGUgb3ZlcmxheXMgd2lsbCBiZSBzd2l0Y2hlZCB3aXRoIGNoZWNrYm94ZXMuIE5vdGUgdGhhdCBhbGwgYmFzZSBsYXllcnMgc2hvdWxkIGJlIHBhc3NlZCBpbiB0aGUgYmFzZSBsYXllcnMgb2JqZWN0LCBidXQgb25seSBvbmUgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBtYXAgZHVyaW5nIG1hcCBpbnN0YW50aWF0aW9uLlxyXG4gIHZhciBsYXllcnMgPSBmdW5jdGlvbiAoYmFzZUxheWVycywgb3ZlcmxheXMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgTGF5ZXJzKGJhc2VMYXllcnMsIG92ZXJsYXlzLCBvcHRpb25zKTtcclxuICB9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIENvbnRyb2wuWm9vbVxyXG4gICAqIEBha2EgTC5Db250cm9sLlpvb21cclxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxyXG4gICAqXHJcbiAgICogQSBiYXNpYyB6b29tIGNvbnRyb2wgd2l0aCB0d28gYnV0dG9ucyAoem9vbSBpbiBhbmQgem9vbSBvdXQpLiBJdCBpcyBwdXQgb24gdGhlIG1hcCBieSBkZWZhdWx0IHVubGVzcyB5b3Ugc2V0IGl0cyBbYHpvb21Db250cm9sYCBvcHRpb25dKCNtYXAtem9vbWNvbnRyb2wpIHRvIGBmYWxzZWAuIEV4dGVuZHMgYENvbnRyb2xgLlxyXG4gICAqL1xyXG5cclxuICB2YXIgWm9vbSA9IENvbnRyb2wuZXh0ZW5kKHtcclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIENvbnRyb2wuWm9vbSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdHBvc2l0aW9uOiAndG9wbGVmdCcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21JblRleHQ6IFN0cmluZyA9ICc8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4rPC9zcGFuPidcclxuICBcdFx0Ly8gVGhlIHRleHQgc2V0IG9uIHRoZSAnem9vbSBpbicgYnV0dG9uLlxyXG4gIFx0XHR6b29tSW5UZXh0OiAnPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+Kzwvc3Bhbj4nLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tSW5UaXRsZTogU3RyaW5nID0gJ1pvb20gaW4nXHJcbiAgXHRcdC8vIFRoZSB0aXRsZSBzZXQgb24gdGhlICd6b29tIGluJyBidXR0b24uXHJcbiAgXHRcdHpvb21JblRpdGxlOiAnWm9vbSBpbicsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21PdXRUZXh0OiBTdHJpbmcgPSAnPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JiN4MjIxMjs8L3NwYW4+J1xyXG4gIFx0XHQvLyBUaGUgdGV4dCBzZXQgb24gdGhlICd6b29tIG91dCcgYnV0dG9uLlxyXG4gIFx0XHR6b29tT3V0VGV4dDogJzxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiYjeDIyMTI7PC9zcGFuPicsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21PdXRUaXRsZTogU3RyaW5nID0gJ1pvb20gb3V0J1xyXG4gIFx0XHQvLyBUaGUgdGl0bGUgc2V0IG9uIHRoZSAnem9vbSBvdXQnIGJ1dHRvbi5cclxuICBcdFx0em9vbU91dFRpdGxlOiAnWm9vbSBvdXQnXHJcbiAgXHR9LFxyXG5cclxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdHZhciB6b29tTmFtZSA9ICdsZWFmbGV0LWNvbnRyb2wtem9vbScsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSBjcmVhdGUkMSgnZGl2Jywgem9vbU5hbWUgKyAnIGxlYWZsZXQtYmFyJyksXHJcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xyXG5cclxuICBcdFx0dGhpcy5fem9vbUluQnV0dG9uICA9IHRoaXMuX2NyZWF0ZUJ1dHRvbihvcHRpb25zLnpvb21JblRleHQsIG9wdGlvbnMuem9vbUluVGl0bGUsXHJcbiAgXHRcdCAgICAgICAgem9vbU5hbWUgKyAnLWluJywgIGNvbnRhaW5lciwgdGhpcy5fem9vbUluKTtcclxuICBcdFx0dGhpcy5fem9vbU91dEJ1dHRvbiA9IHRoaXMuX2NyZWF0ZUJ1dHRvbihvcHRpb25zLnpvb21PdXRUZXh0LCBvcHRpb25zLnpvb21PdXRUaXRsZSxcclxuICBcdFx0ICAgICAgICB6b29tTmFtZSArICctb3V0JywgY29udGFpbmVyLCB0aGlzLl96b29tT3V0KTtcclxuXHJcbiAgXHRcdHRoaXMuX3VwZGF0ZURpc2FibGVkKCk7XHJcbiAgXHRcdG1hcC5vbignem9vbWVuZCB6b29tbGV2ZWxzY2hhbmdlJywgdGhpcy5fdXBkYXRlRGlzYWJsZWQsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIGNvbnRhaW5lcjtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwLm9mZignem9vbWVuZCB6b29tbGV2ZWxzY2hhbmdlJywgdGhpcy5fdXBkYXRlRGlzYWJsZWQsIHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRkaXNhYmxlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX2Rpc2FibGVkID0gdHJ1ZTtcclxuICBcdFx0dGhpcy5fdXBkYXRlRGlzYWJsZWQoKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGVuYWJsZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl9kaXNhYmxlZCA9IGZhbHNlO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVEaXNhYmxlZCgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X3pvb21JbjogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9kaXNhYmxlZCAmJiB0aGlzLl9tYXAuX3pvb20gPCB0aGlzLl9tYXAuZ2V0TWF4Wm9vbSgpKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLnpvb21Jbih0aGlzLl9tYXAub3B0aW9ucy56b29tRGVsdGEgKiAoZS5zaGlmdEtleSA/IDMgOiAxKSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X3pvb21PdXQ6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fZGlzYWJsZWQgJiYgdGhpcy5fbWFwLl96b29tID4gdGhpcy5fbWFwLmdldE1pblpvb20oKSkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC56b29tT3V0KHRoaXMuX21hcC5vcHRpb25zLnpvb21EZWx0YSAqIChlLnNoaWZ0S2V5ID8gMyA6IDEpKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfY3JlYXRlQnV0dG9uOiBmdW5jdGlvbiAoaHRtbCwgdGl0bGUsIGNsYXNzTmFtZSwgY29udGFpbmVyLCBmbikge1xyXG4gIFx0XHR2YXIgbGluayA9IGNyZWF0ZSQxKCdhJywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xyXG4gIFx0XHRsaW5rLmlubmVySFRNTCA9IGh0bWw7XHJcbiAgXHRcdGxpbmsuaHJlZiA9ICcjJztcclxuICBcdFx0bGluay50aXRsZSA9IHRpdGxlO1xyXG5cclxuICBcdFx0LypcclxuICBcdFx0ICogV2lsbCBmb3JjZSBzY3JlZW4gcmVhZGVycyBsaWtlIFZvaWNlT3ZlciB0byByZWFkIHRoaXMgYXMgXCJab29tIGluIC0gYnV0dG9uXCJcclxuICBcdFx0ICovXHJcbiAgXHRcdGxpbmsuc2V0QXR0cmlidXRlKCdyb2xlJywgJ2J1dHRvbicpO1xyXG4gIFx0XHRsaW5rLnNldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcsIHRpdGxlKTtcclxuXHJcbiAgXHRcdGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGxpbmspO1xyXG4gIFx0XHRvbihsaW5rLCAnY2xpY2snLCBzdG9wKTtcclxuICBcdFx0b24obGluaywgJ2NsaWNrJywgZm4sIHRoaXMpO1xyXG4gIFx0XHRvbihsaW5rLCAnY2xpY2snLCB0aGlzLl9yZWZvY3VzT25NYXAsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIGxpbms7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVEaXNhYmxlZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxyXG4gIFx0XHQgICAgY2xhc3NOYW1lID0gJ2xlYWZsZXQtZGlzYWJsZWQnO1xyXG5cclxuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fem9vbUluQnV0dG9uLCBjbGFzc05hbWUpO1xyXG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl96b29tT3V0QnV0dG9uLCBjbGFzc05hbWUpO1xyXG4gIFx0XHR0aGlzLl96b29tSW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ2ZhbHNlJyk7XHJcbiAgXHRcdHRoaXMuX3pvb21PdXRCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ2ZhbHNlJyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fZGlzYWJsZWQgfHwgbWFwLl96b29tID09PSBtYXAuZ2V0TWluWm9vbSgpKSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fem9vbU91dEJ1dHRvbiwgY2xhc3NOYW1lKTtcclxuICBcdFx0XHR0aGlzLl96b29tT3V0QnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsICd0cnVlJyk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKHRoaXMuX2Rpc2FibGVkIHx8IG1hcC5fem9vbSA9PT0gbWFwLmdldE1heFpvb20oKSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX3pvb21JbkJ1dHRvbiwgY2xhc3NOYW1lKTtcclxuICBcdFx0XHR0aGlzLl96b29tSW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIE1hcFxyXG4gIC8vIEBzZWN0aW9uIENvbnRyb2wgb3B0aW9uc1xyXG4gIC8vIEBvcHRpb24gem9vbUNvbnRyb2w6IEJvb2xlYW4gPSB0cnVlXHJcbiAgLy8gV2hldGhlciBhIFt6b29tIGNvbnRyb2xdKCNjb250cm9sLXpvb20pIGlzIGFkZGVkIHRvIHRoZSBtYXAgYnkgZGVmYXVsdC5cclxuICBNYXAubWVyZ2VPcHRpb25zKHtcclxuICBcdHpvb21Db250cm9sOiB0cnVlXHJcbiAgfSk7XHJcblxyXG4gIE1hcC5hZGRJbml0SG9vayhmdW5jdGlvbiAoKSB7XHJcbiAgXHRpZiAodGhpcy5vcHRpb25zLnpvb21Db250cm9sKSB7XHJcbiAgXHRcdC8vIEBzZWN0aW9uIENvbnRyb2xzXHJcbiAgXHRcdC8vIEBwcm9wZXJ0eSB6b29tQ29udHJvbDogQ29udHJvbC5ab29tXHJcbiAgXHRcdC8vIFRoZSBkZWZhdWx0IHpvb20gY29udHJvbCAob25seSBhdmFpbGFibGUgaWYgdGhlXHJcbiAgXHRcdC8vIFtgem9vbUNvbnRyb2xgIG9wdGlvbl0oI21hcC16b29tY29udHJvbCkgd2FzIGB0cnVlYCB3aGVuIGNyZWF0aW5nIHRoZSBtYXApLlxyXG4gIFx0XHR0aGlzLnpvb21Db250cm9sID0gbmV3IFpvb20oKTtcclxuICBcdFx0dGhpcy5hZGRDb250cm9sKHRoaXMuem9vbUNvbnRyb2wpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIENvbnRyb2wuWm9vbVxyXG4gIC8vIEBmYWN0b3J5IEwuY29udHJvbC56b29tKG9wdGlvbnM6IENvbnRyb2wuWm9vbSBvcHRpb25zKVxyXG4gIC8vIENyZWF0ZXMgYSB6b29tIGNvbnRyb2xcclxuICB2YXIgem9vbSA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IFpvb20ob3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgQ29udHJvbC5TY2FsZVxuICAgKiBAYWthIEwuQ29udHJvbC5TY2FsZVxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxuICAgKlxuICAgKiBBIHNpbXBsZSBzY2FsZSBjb250cm9sIHRoYXQgc2hvd3MgdGhlIHNjYWxlIG9mIHRoZSBjdXJyZW50IGNlbnRlciBvZiBzY3JlZW4gaW4gbWV0cmljIChtL2ttKSBhbmQgaW1wZXJpYWwgKG1pL2Z0KSBzeXN0ZW1zLiBFeHRlbmRzIGBDb250cm9sYC5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogYGBganNcbiAgICogTC5jb250cm9sLnNjYWxlKCkuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBTY2FsZSA9IENvbnRyb2wuZXh0ZW5kKHtcbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgQ29udHJvbC5TY2FsZSBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0cG9zaXRpb246ICdib3R0b21sZWZ0JyxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhXaWR0aDogTnVtYmVyID0gMTAwXG4gIFx0XHQvLyBNYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250cm9sIGluIHBpeGVscy4gVGhlIHdpZHRoIGlzIHNldCBkeW5hbWljYWxseSB0byBzaG93IHJvdW5kIHZhbHVlcyAoZS5nLiAxMDAsIDIwMCwgNTAwKS5cbiAgXHRcdG1heFdpZHRoOiAxMDAsXG5cbiAgXHRcdC8vIEBvcHRpb24gbWV0cmljOiBCb29sZWFuID0gVHJ1ZVxuICBcdFx0Ly8gV2hldGhlciB0byBzaG93IHRoZSBtZXRyaWMgc2NhbGUgbGluZSAobS9rbSkuXG4gIFx0XHRtZXRyaWM6IHRydWUsXG5cbiAgXHRcdC8vIEBvcHRpb24gaW1wZXJpYWw6IEJvb2xlYW4gPSBUcnVlXG4gIFx0XHQvLyBXaGV0aGVyIHRvIHNob3cgdGhlIGltcGVyaWFsIHNjYWxlIGxpbmUgKG1pL2Z0KS5cbiAgXHRcdGltcGVyaWFsOiB0cnVlXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlbklkbGU6IEJvb2xlYW4gPSBmYWxzZVxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgY29udHJvbCBpcyB1cGRhdGVkIG9uIFtgbW92ZWVuZGBdKCNtYXAtbW92ZWVuZCksIG90aGVyd2lzZSBpdCdzIGFsd2F5cyB1cC10by1kYXRlICh1cGRhdGVkIG9uIFtgbW92ZWBdKCNtYXAtbW92ZSkpLlxuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dmFyIGNsYXNzTmFtZSA9ICdsZWFmbGV0LWNvbnRyb2wtc2NhbGUnLFxuICBcdFx0ICAgIGNvbnRhaW5lciA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUpLFxuICBcdFx0ICAgIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XG5cbiAgXHRcdHRoaXMuX2FkZFNjYWxlcyhvcHRpb25zLCBjbGFzc05hbWUgKyAnLWxpbmUnLCBjb250YWluZXIpO1xuXG4gIFx0XHRtYXAub24ob3B0aW9ucy51cGRhdGVXaGVuSWRsZSA/ICdtb3ZlZW5kJyA6ICdtb3ZlJywgdGhpcy5fdXBkYXRlLCB0aGlzKTtcbiAgXHRcdG1hcC53aGVuUmVhZHkodGhpcy5fdXBkYXRlLCB0aGlzKTtcblxuICBcdFx0cmV0dXJuIGNvbnRhaW5lcjtcbiAgXHR9LFxuXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdG1hcC5vZmYodGhpcy5vcHRpb25zLnVwZGF0ZVdoZW5JZGxlID8gJ21vdmVlbmQnIDogJ21vdmUnLCB0aGlzLl91cGRhdGUsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfYWRkU2NhbGVzOiBmdW5jdGlvbiAob3B0aW9ucywgY2xhc3NOYW1lLCBjb250YWluZXIpIHtcbiAgXHRcdGlmIChvcHRpb25zLm1ldHJpYykge1xuICBcdFx0XHR0aGlzLl9tU2NhbGUgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xuICBcdFx0fVxuICBcdFx0aWYgKG9wdGlvbnMuaW1wZXJpYWwpIHtcbiAgXHRcdFx0dGhpcy5faVNjYWxlID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSwgY29udGFpbmVyKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICB5ID0gbWFwLmdldFNpemUoKS55IC8gMjtcblxuICBcdFx0dmFyIG1heE1ldGVycyA9IG1hcC5kaXN0YW5jZShcbiAgXHRcdFx0bWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcoWzAsIHldKSxcbiAgXHRcdFx0bWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcoW3RoaXMub3B0aW9ucy5tYXhXaWR0aCwgeV0pKTtcblxuICBcdFx0dGhpcy5fdXBkYXRlU2NhbGVzKG1heE1ldGVycyk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVTY2FsZXM6IGZ1bmN0aW9uIChtYXhNZXRlcnMpIHtcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubWV0cmljICYmIG1heE1ldGVycykge1xuICBcdFx0XHR0aGlzLl91cGRhdGVNZXRyaWMobWF4TWV0ZXJzKTtcbiAgXHRcdH1cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaW1wZXJpYWwgJiYgbWF4TWV0ZXJzKSB7XG4gIFx0XHRcdHRoaXMuX3VwZGF0ZUltcGVyaWFsKG1heE1ldGVycyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVNZXRyaWM6IGZ1bmN0aW9uIChtYXhNZXRlcnMpIHtcbiAgXHRcdHZhciBtZXRlcnMgPSB0aGlzLl9nZXRSb3VuZE51bShtYXhNZXRlcnMpLFxuICBcdFx0ICAgIGxhYmVsID0gbWV0ZXJzIDwgMTAwMCA/IG1ldGVycyArICcgbScgOiAobWV0ZXJzIC8gMTAwMCkgKyAnIGttJztcblxuICBcdFx0dGhpcy5fdXBkYXRlU2NhbGUodGhpcy5fbVNjYWxlLCBsYWJlbCwgbWV0ZXJzIC8gbWF4TWV0ZXJzKTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZUltcGVyaWFsOiBmdW5jdGlvbiAobWF4TWV0ZXJzKSB7XG4gIFx0XHR2YXIgbWF4RmVldCA9IG1heE1ldGVycyAqIDMuMjgwODM5OSxcbiAgXHRcdCAgICBtYXhNaWxlcywgbWlsZXMsIGZlZXQ7XG5cbiAgXHRcdGlmIChtYXhGZWV0ID4gNTI4MCkge1xuICBcdFx0XHRtYXhNaWxlcyA9IG1heEZlZXQgLyA1MjgwO1xuICBcdFx0XHRtaWxlcyA9IHRoaXMuX2dldFJvdW5kTnVtKG1heE1pbGVzKTtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlU2NhbGUodGhpcy5faVNjYWxlLCBtaWxlcyArICcgbWknLCBtaWxlcyAvIG1heE1pbGVzKTtcblxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0ZmVldCA9IHRoaXMuX2dldFJvdW5kTnVtKG1heEZlZXQpO1xuICBcdFx0XHR0aGlzLl91cGRhdGVTY2FsZSh0aGlzLl9pU2NhbGUsIGZlZXQgKyAnIGZ0JywgZmVldCAvIG1heEZlZXQpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlU2NhbGU6IGZ1bmN0aW9uIChzY2FsZSwgdGV4dCwgcmF0aW8pIHtcbiAgXHRcdHNjYWxlLnN0eWxlLndpZHRoID0gTWF0aC5yb3VuZCh0aGlzLm9wdGlvbnMubWF4V2lkdGggKiByYXRpbykgKyAncHgnO1xuICBcdFx0c2NhbGUuaW5uZXJIVE1MID0gdGV4dDtcbiAgXHR9LFxuXG4gIFx0X2dldFJvdW5kTnVtOiBmdW5jdGlvbiAobnVtKSB7XG4gIFx0XHR2YXIgcG93MTAgPSBNYXRoLnBvdygxMCwgKE1hdGguZmxvb3IobnVtKSArICcnKS5sZW5ndGggLSAxKSxcbiAgXHRcdCAgICBkID0gbnVtIC8gcG93MTA7XG5cbiAgXHRcdGQgPSBkID49IDEwID8gMTAgOlxuICBcdFx0ICAgIGQgPj0gNSA/IDUgOlxuICBcdFx0ICAgIGQgPj0gMyA/IDMgOlxuICBcdFx0ICAgIGQgPj0gMiA/IDIgOiAxO1xuXG4gIFx0XHRyZXR1cm4gcG93MTAgKiBkO1xuICBcdH1cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLmNvbnRyb2wuc2NhbGUob3B0aW9ucz86IENvbnRyb2wuU2NhbGUgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhbiBzY2FsZSBjb250cm9sIHdpdGggdGhlIGdpdmVuIG9wdGlvbnMuXG4gIHZhciBzY2FsZSA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBTY2FsZShvcHRpb25zKTtcbiAgfTtcblxuICB2YXIgdWtyYWluaWFuRmxhZyA9ICc8c3ZnIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiOFwiIHZpZXdCb3g9XCIwIDAgMTIgOFwiIGNsYXNzPVwibGVhZmxldC1hdHRyaWJ1dGlvbi1mbGFnXCI+PHBhdGggZmlsbD1cIiM0QzdCRTFcIiBkPVwiTTAgMGgxMnY0SDB6XCIvPjxwYXRoIGZpbGw9XCIjRkZENTAwXCIgZD1cIk0wIDRoMTJ2M0gwelwiLz48cGF0aCBmaWxsPVwiI0UwQkMwMFwiIGQ9XCJNMCA3aDEydjFIMHpcIi8+PC9zdmc+JztcclxuXHJcblxyXG4gIC8qXHJcbiAgICogQGNsYXNzIENvbnRyb2wuQXR0cmlidXRpb25cclxuICAgKiBAYWthIEwuQ29udHJvbC5BdHRyaWJ1dGlvblxyXG4gICAqIEBpbmhlcml0cyBDb250cm9sXHJcbiAgICpcclxuICAgKiBUaGUgYXR0cmlidXRpb24gY29udHJvbCBhbGxvd3MgeW91IHRvIGRpc3BsYXkgYXR0cmlidXRpb24gZGF0YSBpbiBhIHNtYWxsIHRleHQgYm94IG9uIGEgbWFwLiBJdCBpcyBwdXQgb24gdGhlIG1hcCBieSBkZWZhdWx0IHVubGVzcyB5b3Ugc2V0IGl0cyBbYGF0dHJpYnV0aW9uQ29udHJvbGAgb3B0aW9uXSgjbWFwLWF0dHJpYnV0aW9uY29udHJvbCkgdG8gYGZhbHNlYCwgYW5kIGl0IGZldGNoZXMgYXR0cmlidXRpb24gdGV4dHMgZnJvbSBsYXllcnMgd2l0aCB0aGUgW2BnZXRBdHRyaWJ1dGlvbmAgbWV0aG9kXSgjbGF5ZXItZ2V0YXR0cmlidXRpb24pIGF1dG9tYXRpY2FsbHkuIEV4dGVuZHMgQ29udHJvbC5cclxuICAgKi9cclxuXHJcbiAgdmFyIEF0dHJpYnV0aW9uID0gQ29udHJvbC5leHRlbmQoe1xyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgQ29udHJvbC5BdHRyaWJ1dGlvbiBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdHBvc2l0aW9uOiAnYm90dG9tcmlnaHQnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBwcmVmaXg6IFN0cmluZ3xmYWxzZSA9ICdMZWFmbGV0J1xyXG4gIFx0XHQvLyBUaGUgSFRNTCB0ZXh0IHNob3duIGJlZm9yZSB0aGUgYXR0cmlidXRpb25zLiBQYXNzIGBmYWxzZWAgdG8gZGlzYWJsZS5cclxuICBcdFx0cHJlZml4OiAnPGEgaHJlZj1cImh0dHBzOi8vbGVhZmxldGpzLmNvbVwiIHRpdGxlPVwiQSBKYXZhU2NyaXB0IGxpYnJhcnkgZm9yIGludGVyYWN0aXZlIG1hcHNcIj4nICsgKEJyb3dzZXIuaW5saW5lU3ZnID8gdWtyYWluaWFuRmxhZyArICcgJyA6ICcnKSArICdMZWFmbGV0PC9hPidcclxuICBcdH0sXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHRoaXMuX2F0dHJpYnV0aW9ucyA9IHt9O1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRtYXAuYXR0cmlidXRpb25Db250cm9sID0gdGhpcztcclxuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsICdsZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24nKTtcclxuICBcdFx0ZGlzYWJsZUNsaWNrUHJvcGFnYXRpb24odGhpcy5fY29udGFpbmVyKTtcclxuXHJcbiAgXHRcdC8vIFRPRE8gdWdseSwgcmVmYWN0b3JcclxuICBcdFx0Zm9yICh2YXIgaSBpbiBtYXAuX2xheWVycykge1xyXG4gIFx0XHRcdGlmIChtYXAuX2xheWVyc1tpXS5nZXRBdHRyaWJ1dGlvbikge1xyXG4gIFx0XHRcdFx0dGhpcy5hZGRBdHRyaWJ1dGlvbihtYXAuX2xheWVyc1tpXS5nZXRBdHRyaWJ1dGlvbigpKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xyXG5cclxuICBcdFx0bWFwLm9uKCdsYXllcmFkZCcsIHRoaXMuX2FkZEF0dHJpYnV0aW9uLCB0aGlzKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250YWluZXI7XHJcbiAgXHR9LFxyXG5cclxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdG1hcC5vZmYoJ2xheWVyYWRkJywgdGhpcy5fYWRkQXR0cmlidXRpb24sIHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRkQXR0cmlidXRpb246IGZ1bmN0aW9uIChldikge1xyXG4gIFx0XHRpZiAoZXYubGF5ZXIuZ2V0QXR0cmlidXRpb24pIHtcclxuICBcdFx0XHR0aGlzLmFkZEF0dHJpYnV0aW9uKGV2LmxheWVyLmdldEF0dHJpYnV0aW9uKCkpO1xyXG4gIFx0XHRcdGV2LmxheWVyLm9uY2UoJ3JlbW92ZScsIGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHRcdHRoaXMucmVtb3ZlQXR0cmlidXRpb24oZXYubGF5ZXIuZ2V0QXR0cmlidXRpb24oKSk7XHJcbiAgXHRcdFx0fSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQcmVmaXgocHJlZml4OiBTdHJpbmd8ZmFsc2UpOiB0aGlzXHJcbiAgXHQvLyBUaGUgSFRNTCB0ZXh0IHNob3duIGJlZm9yZSB0aGUgYXR0cmlidXRpb25zLiBQYXNzIGBmYWxzZWAgdG8gZGlzYWJsZS5cclxuICBcdHNldFByZWZpeDogZnVuY3Rpb24gKHByZWZpeCkge1xyXG4gIFx0XHR0aGlzLm9wdGlvbnMucHJlZml4ID0gcHJlZml4O1xyXG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkQXR0cmlidXRpb24odGV4dDogU3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhbiBhdHRyaWJ1dGlvbiB0ZXh0IChlLmcuIGAnJmNvcHk7IE9wZW5TdHJlZXRNYXAgY29udHJpYnV0b3JzJ2ApLlxyXG4gIFx0YWRkQXR0cmlidXRpb246IGZ1bmN0aW9uICh0ZXh0KSB7XHJcbiAgXHRcdGlmICghdGV4dCkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9hdHRyaWJ1dGlvbnNbdGV4dF0pIHtcclxuICBcdFx0XHR0aGlzLl9hdHRyaWJ1dGlvbnNbdGV4dF0gPSAwO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuX2F0dHJpYnV0aW9uc1t0ZXh0XSsrO1xyXG5cclxuICBcdFx0dGhpcy5fdXBkYXRlKCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCByZW1vdmVBdHRyaWJ1dGlvbih0ZXh0OiBTdHJpbmcpOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIGFuIGF0dHJpYnV0aW9uIHRleHQuXHJcbiAgXHRyZW1vdmVBdHRyaWJ1dGlvbjogZnVuY3Rpb24gKHRleHQpIHtcclxuICBcdFx0aWYgKCF0ZXh0KSB7IHJldHVybiB0aGlzOyB9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fYXR0cmlidXRpb25zW3RleHRdKSB7XHJcbiAgXHRcdFx0dGhpcy5fYXR0cmlidXRpb25zW3RleHRdLS07XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIGF0dHJpYnMgPSBbXTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgaW4gdGhpcy5fYXR0cmlidXRpb25zKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX2F0dHJpYnV0aW9uc1tpXSkge1xyXG4gIFx0XHRcdFx0YXR0cmlicy5wdXNoKGkpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIHByZWZpeEFuZEF0dHJpYnMgPSBbXTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMucHJlZml4KSB7XHJcbiAgXHRcdFx0cHJlZml4QW5kQXR0cmlicy5wdXNoKHRoaXMub3B0aW9ucy5wcmVmaXgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChhdHRyaWJzLmxlbmd0aCkge1xyXG4gIFx0XHRcdHByZWZpeEFuZEF0dHJpYnMucHVzaChhdHRyaWJzLmpvaW4oJywgJykpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuaW5uZXJIVE1MID0gcHJlZml4QW5kQXR0cmlicy5qb2luKCcgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+fDwvc3Bhbj4gJyk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgLy8gQHNlY3Rpb24gQ29udHJvbCBvcHRpb25zXHJcbiAgLy8gQG9wdGlvbiBhdHRyaWJ1dGlvbkNvbnRyb2w6IEJvb2xlYW4gPSB0cnVlXHJcbiAgLy8gV2hldGhlciBhIFthdHRyaWJ1dGlvbiBjb250cm9sXSgjY29udHJvbC1hdHRyaWJ1dGlvbikgaXMgYWRkZWQgdG8gdGhlIG1hcCBieSBkZWZhdWx0LlxyXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xyXG4gIFx0YXR0cmlidXRpb25Db250cm9sOiB0cnVlXHJcbiAgfSk7XHJcblxyXG4gIE1hcC5hZGRJbml0SG9vayhmdW5jdGlvbiAoKSB7XHJcbiAgXHRpZiAodGhpcy5vcHRpb25zLmF0dHJpYnV0aW9uQ29udHJvbCkge1xyXG4gIFx0XHRuZXcgQXR0cmlidXRpb24oKS5hZGRUbyh0aGlzKTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBDb250cm9sLkF0dHJpYnV0aW9uXHJcbiAgLy8gQGZhY3RvcnkgTC5jb250cm9sLmF0dHJpYnV0aW9uKG9wdGlvbnM6IENvbnRyb2wuQXR0cmlidXRpb24gb3B0aW9ucylcclxuICAvLyBDcmVhdGVzIGFuIGF0dHJpYnV0aW9uIGNvbnRyb2wuXHJcbiAgdmFyIGF0dHJpYnV0aW9uID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgQXR0cmlidXRpb24ob3B0aW9ucyk7XHJcbiAgfTtcblxuICBDb250cm9sLkxheWVycyA9IExheWVycztcbiAgQ29udHJvbC5ab29tID0gWm9vbTtcbiAgQ29udHJvbC5TY2FsZSA9IFNjYWxlO1xuICBDb250cm9sLkF0dHJpYnV0aW9uID0gQXR0cmlidXRpb247XG5cbiAgY29udHJvbC5sYXllcnMgPSBsYXllcnM7XG4gIGNvbnRyb2wuem9vbSA9IHpvb207XG4gIGNvbnRyb2wuc2NhbGUgPSBzY2FsZTtcbiAgY29udHJvbC5hdHRyaWJ1dGlvbiA9IGF0dHJpYnV0aW9uO1xuXG4gIC8qXG4gIFx0TC5IYW5kbGVyIGlzIGEgYmFzZSBjbGFzcyBmb3IgaGFuZGxlciBjbGFzc2VzIHRoYXQgYXJlIHVzZWQgaW50ZXJuYWxseSB0byBpbmplY3RcbiAgXHRpbnRlcmFjdGlvbiBmZWF0dXJlcyBsaWtlIGRyYWdnaW5nIHRvIGNsYXNzZXMgbGlrZSBNYXAgYW5kIE1hcmtlci5cbiAgKi9cblxuICAvLyBAY2xhc3MgSGFuZGxlclxuICAvLyBAYWthIEwuSGFuZGxlclxuICAvLyBBYnN0cmFjdCBjbGFzcyBmb3IgbWFwIGludGVyYWN0aW9uIGhhbmRsZXJzXG5cbiAgdmFyIEhhbmRsZXIgPSBDbGFzcy5leHRlbmQoe1xuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdHRoaXMuX21hcCA9IG1hcDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBlbmFibGUoKTogdGhpc1xuICBcdC8vIEVuYWJsZXMgdGhlIGhhbmRsZXJcbiAgXHRlbmFibGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9lbmFibGVkKSB7IHJldHVybiB0aGlzOyB9XG5cbiAgXHRcdHRoaXMuX2VuYWJsZWQgPSB0cnVlO1xuICBcdFx0dGhpcy5hZGRIb29rcygpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZGlzYWJsZSgpOiB0aGlzXG4gIFx0Ly8gRGlzYWJsZXMgdGhlIGhhbmRsZXJcbiAgXHRkaXNhYmxlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuIHRoaXM7IH1cblxuICBcdFx0dGhpcy5fZW5hYmxlZCA9IGZhbHNlO1xuICBcdFx0dGhpcy5yZW1vdmVIb29rcygpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZW5hYmxlZCgpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGhhbmRsZXIgaXMgZW5hYmxlZFxuICBcdGVuYWJsZWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiAhIXRoaXMuX2VuYWJsZWQ7XG4gIFx0fVxuXG4gIFx0Ly8gQHNlY3Rpb24gRXh0ZW5zaW9uIG1ldGhvZHNcbiAgXHQvLyBDbGFzc2VzIGluaGVyaXRpbmcgZnJvbSBgSGFuZGxlcmAgbXVzdCBpbXBsZW1lbnQgdGhlIHR3byBmb2xsb3dpbmcgbWV0aG9kczpcbiAgXHQvLyBAbWV0aG9kIGFkZEhvb2tzKClcbiAgXHQvLyBDYWxsZWQgd2hlbiB0aGUgaGFuZGxlciBpcyBlbmFibGVkLCBzaG91bGQgYWRkIGV2ZW50IGhvb2tzLlxuICBcdC8vIEBtZXRob2QgcmVtb3ZlSG9va3MoKVxuICBcdC8vIENhbGxlZCB3aGVuIHRoZSBoYW5kbGVyIGlzIGRpc2FibGVkLCBzaG91bGQgcmVtb3ZlIHRoZSBldmVudCBob29rcyBhZGRlZCBwcmV2aW91c2x5LlxuICB9KTtcblxuICAvLyBAc2VjdGlvbiBUaGVyZSBpcyBzdGF0aWMgZnVuY3Rpb24gd2hpY2ggY2FuIGJlIGNhbGxlZCB3aXRob3V0IGluc3RhbnRpYXRpbmcgTC5IYW5kbGVyOlxuICAvLyBAZnVuY3Rpb24gYWRkVG8obWFwOiBNYXAsIG5hbWU6IFN0cmluZyk6IHRoaXNcbiAgLy8gQWRkcyBhIG5ldyBIYW5kbGVyIHRvIHRoZSBnaXZlbiBtYXAgd2l0aCB0aGUgZ2l2ZW4gbmFtZS5cbiAgSGFuZGxlci5hZGRUbyA9IGZ1bmN0aW9uIChtYXAsIG5hbWUpIHtcbiAgXHRtYXAuYWRkSGFuZGxlcihuYW1lLCB0aGlzKTtcbiAgXHRyZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgTWl4aW4gPSB7RXZlbnRzOiBFdmVudHN9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIERyYWdnYWJsZVxyXG4gICAqIEBha2EgTC5EcmFnZ2FibGVcclxuICAgKiBAaW5oZXJpdHMgRXZlbnRlZFxyXG4gICAqXHJcbiAgICogQSBjbGFzcyBmb3IgbWFraW5nIERPTSBlbGVtZW50cyBkcmFnZ2FibGUgKGluY2x1ZGluZyB0b3VjaCBzdXBwb3J0KS5cclxuICAgKiBVc2VkIGludGVybmFsbHkgZm9yIG1hcCBhbmQgbWFya2VyIGRyYWdnaW5nLiBPbmx5IHdvcmtzIGZvciBlbGVtZW50c1xyXG4gICAqIHRoYXQgd2VyZSBwb3NpdGlvbmVkIHdpdGggW2BMLkRvbVV0aWwuc2V0UG9zaXRpb25gXSgjZG9tdXRpbC1zZXRwb3NpdGlvbikuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIGRyYWdnYWJsZSA9IG5ldyBMLkRyYWdnYWJsZShlbGVtZW50VG9EcmFnKTtcclxuICAgKiBkcmFnZ2FibGUuZW5hYmxlKCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBTVEFSVCA9IEJyb3dzZXIudG91Y2ggPyAndG91Y2hzdGFydCBtb3VzZWRvd24nIDogJ21vdXNlZG93bic7XHJcblxyXG4gIHZhciBEcmFnZ2FibGUgPSBFdmVudGVkLmV4dGVuZCh7XHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAc2VjdGlvblxyXG4gIFx0XHQvLyBAYWthIERyYWdnYWJsZSBvcHRpb25zXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xpY2tUb2xlcmFuY2U6IE51bWJlciA9IDNcclxuICBcdFx0Ly8gVGhlIG1heCBudW1iZXIgb2YgcGl4ZWxzIGEgdXNlciBjYW4gc2hpZnQgdGhlIG1vdXNlIHBvaW50ZXIgZHVyaW5nIGEgY2xpY2tcclxuICBcdFx0Ly8gZm9yIGl0IHRvIGJlIGNvbnNpZGVyZWQgYSB2YWxpZCBjbGljayAoYXMgb3Bwb3NlZCB0byBhIG1vdXNlIGRyYWcpLlxyXG4gIFx0XHRjbGlja1RvbGVyYW5jZTogM1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAY29uc3RydWN0b3IgTC5EcmFnZ2FibGUoZWw6IEhUTUxFbGVtZW50LCBkcmFnSGFuZGxlPzogSFRNTEVsZW1lbnQsIHByZXZlbnRPdXRsaW5lPzogQm9vbGVhbiwgb3B0aW9ucz86IERyYWdnYWJsZSBvcHRpb25zKVxyXG4gIFx0Ly8gQ3JlYXRlcyBhIGBEcmFnZ2FibGVgIG9iamVjdCBmb3IgbW92aW5nIGBlbGAgd2hlbiB5b3Ugc3RhcnQgZHJhZ2dpbmcgdGhlIGBkcmFnSGFuZGxlYCBlbGVtZW50IChlcXVhbHMgYGVsYCBpdHNlbGYgYnkgZGVmYXVsdCkuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoZWxlbWVudCwgZHJhZ1N0YXJ0VGFyZ2V0LCBwcmV2ZW50T3V0bGluZSwgb3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG5cclxuICBcdFx0dGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XHJcbiAgXHRcdHRoaXMuX2RyYWdTdGFydFRhcmdldCA9IGRyYWdTdGFydFRhcmdldCB8fCBlbGVtZW50O1xyXG4gIFx0XHR0aGlzLl9wcmV2ZW50T3V0bGluZSA9IHByZXZlbnRPdXRsaW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGVuYWJsZSgpXHJcbiAgXHQvLyBFbmFibGVzIHRoZSBkcmFnZ2luZyBhYmlsaXR5XHJcbiAgXHRlbmFibGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRvbih0aGlzLl9kcmFnU3RhcnRUYXJnZXQsIFNUQVJULCB0aGlzLl9vbkRvd24sIHRoaXMpO1xyXG5cclxuICBcdFx0dGhpcy5fZW5hYmxlZCA9IHRydWU7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZGlzYWJsZSgpXHJcbiAgXHQvLyBEaXNhYmxlcyB0aGUgZHJhZ2dpbmcgYWJpbGl0eVxyXG4gIFx0ZGlzYWJsZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHQvLyBJZiB3ZSdyZSBjdXJyZW50bHkgZHJhZ2dpbmcgdGhpcyBkcmFnZ2FibGUsXHJcbiAgXHRcdC8vIGRpc2FibGluZyBpdCBjb3VudHMgYXMgZmlyc3QgZW5kaW5nIHRoZSBkcmFnLlxyXG4gIFx0XHRpZiAoRHJhZ2dhYmxlLl9kcmFnZ2luZyA9PT0gdGhpcykge1xyXG4gIFx0XHRcdHRoaXMuZmluaXNoRHJhZyh0cnVlKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0b2ZmKHRoaXMuX2RyYWdTdGFydFRhcmdldCwgU1RBUlQsIHRoaXMuX29uRG93biwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLl9lbmFibGVkID0gZmFsc2U7XHJcbiAgXHRcdHRoaXMuX21vdmVkID0gZmFsc2U7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vbkRvd246IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdC8vIElnbm9yZSB0aGUgZXZlbnQgaWYgZGlzYWJsZWQ7IHRoaXMgaGFwcGVucyBpbiBJRTExXHJcbiAgXHRcdC8vIHVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcywgc2VlICMzNjY2LlxyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xyXG5cclxuICBcdFx0aWYgKGhhc0NsYXNzKHRoaXMuX2VsZW1lbnQsICdsZWFmbGV0LXpvb20tYW5pbScpKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0aWYgKGUudG91Y2hlcyAmJiBlLnRvdWNoZXMubGVuZ3RoICE9PSAxKSB7XHJcbiAgXHRcdFx0Ly8gRmluaXNoIGRyYWdnaW5nIHRvIGF2b2lkIGNvbmZsaWN0IHdpdGggdG91Y2hab29tXHJcbiAgXHRcdFx0aWYgKERyYWdnYWJsZS5fZHJhZ2dpbmcgPT09IHRoaXMpIHtcclxuICBcdFx0XHRcdHRoaXMuZmluaXNoRHJhZygpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChEcmFnZ2FibGUuX2RyYWdnaW5nIHx8IGUuc2hpZnRLZXkgfHwgKChlLndoaWNoICE9PSAxKSAmJiAoZS5idXR0b24gIT09IDEpICYmICFlLnRvdWNoZXMpKSB7IHJldHVybjsgfVxyXG4gIFx0XHREcmFnZ2FibGUuX2RyYWdnaW5nID0gdGhpczsgIC8vIFByZXZlbnQgZHJhZ2dpbmcgbXVsdGlwbGUgb2JqZWN0cyBhdCBvbmNlLlxyXG5cclxuICBcdFx0aWYgKHRoaXMuX3ByZXZlbnRPdXRsaW5lKSB7XHJcbiAgXHRcdFx0cHJldmVudE91dGxpbmUodGhpcy5fZWxlbWVudCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGRpc2FibGVJbWFnZURyYWcoKTtcclxuICBcdFx0ZGlzYWJsZVRleHRTZWxlY3Rpb24oKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9tb3ZpbmcpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgZG93bjogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGRyYWcgaXMgYWJvdXQgdG8gc3RhcnQuXHJcbiAgXHRcdHRoaXMuZmlyZSgnZG93bicpO1xyXG5cclxuICBcdFx0dmFyIGZpcnN0ID0gZS50b3VjaGVzID8gZS50b3VjaGVzWzBdIDogZSxcclxuICBcdFx0ICAgIHNpemVkUGFyZW50ID0gZ2V0U2l6ZWRQYXJlbnROb2RlKHRoaXMuX2VsZW1lbnQpO1xyXG5cclxuICBcdFx0dGhpcy5fc3RhcnRQb2ludCA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcclxuICBcdFx0dGhpcy5fc3RhcnRQb3MgPSBnZXRQb3NpdGlvbih0aGlzLl9lbGVtZW50KTtcclxuXHJcbiAgXHRcdC8vIENhY2hlIHRoZSBzY2FsZSwgc28gdGhhdCB3ZSBjYW4gY29udGludW91c2x5IGNvbXBlbnNhdGUgZm9yIGl0IGR1cmluZyBkcmFnIChfb25Nb3ZlKS5cclxuICBcdFx0dGhpcy5fcGFyZW50U2NhbGUgPSBnZXRTY2FsZShzaXplZFBhcmVudCk7XHJcblxyXG4gIFx0XHR2YXIgbW91c2VldmVudCA9IGUudHlwZSA9PT0gJ21vdXNlZG93bic7XHJcbiAgXHRcdG9uKGRvY3VtZW50LCBtb3VzZWV2ZW50ID8gJ21vdXNlbW92ZScgOiAndG91Y2htb3ZlJywgdGhpcy5fb25Nb3ZlLCB0aGlzKTtcclxuICBcdFx0b24oZG9jdW1lbnQsIG1vdXNlZXZlbnQgPyAnbW91c2V1cCcgOiAndG91Y2hlbmQgdG91Y2hjYW5jZWwnLCB0aGlzLl9vblVwLCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uTW92ZTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0Ly8gSWdub3JlIHRoZSBldmVudCBpZiBkaXNhYmxlZDsgdGhpcyBoYXBwZW5zIGluIElFMTFcclxuICBcdFx0Ly8gdW5kZXIgc29tZSBjaXJjdW1zdGFuY2VzLCBzZWUgIzM2NjYuXHJcbiAgXHRcdGlmICghdGhpcy5fZW5hYmxlZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdGlmIChlLnRvdWNoZXMgJiYgZS50b3VjaGVzLmxlbmd0aCA+IDEpIHtcclxuICBcdFx0XHR0aGlzLl9tb3ZlZCA9IHRydWU7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgZmlyc3QgPSAoZS50b3VjaGVzICYmIGUudG91Y2hlcy5sZW5ndGggPT09IDEgPyBlLnRvdWNoZXNbMF0gOiBlKSxcclxuICBcdFx0ICAgIG9mZnNldCA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKS5fc3VidHJhY3QodGhpcy5fc3RhcnRQb2ludCk7XHJcblxyXG4gIFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkgeyByZXR1cm47IH1cclxuICBcdFx0aWYgKE1hdGguYWJzKG9mZnNldC54KSArIE1hdGguYWJzKG9mZnNldC55KSA8IHRoaXMub3B0aW9ucy5jbGlja1RvbGVyYW5jZSkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdC8vIFdlIGFzc3VtZSB0aGF0IHRoZSBwYXJlbnQgY29udGFpbmVyJ3MgcG9zaXRpb24sIGJvcmRlciBhbmQgc2NhbGUgZG8gbm90IGNoYW5nZSBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBkcmFnLlxyXG4gIFx0XHQvLyBUaGVyZWZvcmUgdGhlcmUgaXMgbm8gbmVlZCB0byBhY2NvdW50IGZvciB0aGUgcG9zaXRpb24gYW5kIGJvcmRlciAodGhleSBhcmUgZWxpbWluYXRlZCBieSB0aGUgc3VidHJhY3Rpb24pXHJcbiAgXHRcdC8vIGFuZCB3ZSBjYW4gdXNlIHRoZSBjYWNoZWQgdmFsdWUgZm9yIHRoZSBzY2FsZS5cclxuICBcdFx0b2Zmc2V0LnggLz0gdGhpcy5fcGFyZW50U2NhbGUueDtcclxuICBcdFx0b2Zmc2V0LnkgLz0gdGhpcy5fcGFyZW50U2NhbGUueTtcclxuXHJcbiAgXHRcdHByZXZlbnREZWZhdWx0KGUpO1xyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9tb3ZlZCkge1xyXG4gIFx0XHRcdC8vIEBldmVudCBkcmFnc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIGRyYWcgc3RhcnRzXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdkcmFnc3RhcnQnKTtcclxuXHJcbiAgXHRcdFx0dGhpcy5fbW92ZWQgPSB0cnVlO1xyXG5cclxuICBcdFx0XHRhZGRDbGFzcyhkb2N1bWVudC5ib2R5LCAnbGVhZmxldC1kcmFnZ2luZycpO1xyXG5cclxuICBcdFx0XHR0aGlzLl9sYXN0VGFyZ2V0ID0gZS50YXJnZXQgfHwgZS5zcmNFbGVtZW50O1xyXG4gIFx0XHRcdC8vIElFIGFuZCBFZGdlIGRvIG5vdCBnaXZlIHRoZSA8dXNlPiBlbGVtZW50LCBzbyBmZXRjaCBpdFxyXG4gIFx0XHRcdC8vIGlmIG5lY2Vzc2FyeVxyXG4gIFx0XHRcdGlmICh3aW5kb3cuU1ZHRWxlbWVudEluc3RhbmNlICYmIHRoaXMuX2xhc3RUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuU1ZHRWxlbWVudEluc3RhbmNlKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9sYXN0VGFyZ2V0ID0gdGhpcy5fbGFzdFRhcmdldC5jb3JyZXNwb25kaW5nVXNlRWxlbWVudDtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fbGFzdFRhcmdldCwgJ2xlYWZsZXQtZHJhZy10YXJnZXQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fbmV3UG9zID0gdGhpcy5fc3RhcnRQb3MuYWRkKG9mZnNldCk7XHJcbiAgXHRcdHRoaXMuX21vdmluZyA9IHRydWU7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXN0RXZlbnQgPSBlO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVQb3NpdGlvbigpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlUG9zaXRpb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGUgPSB7b3JpZ2luYWxFdmVudDogdGhpcy5fbGFzdEV2ZW50fTtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBwcmVkcmFnOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCBjb250aW51b3VzbHkgZHVyaW5nIGRyYWdnaW5nICpiZWZvcmUqIGVhY2ggY29ycmVzcG9uZGluZ1xyXG4gIFx0XHQvLyB1cGRhdGUgb2YgdGhlIGVsZW1lbnQncyBwb3NpdGlvbi5cclxuICBcdFx0dGhpcy5maXJlKCdwcmVkcmFnJywgZSk7XHJcbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX2VsZW1lbnQsIHRoaXMuX25ld1Bvcyk7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgZHJhZzogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgY29udGludW91c2x5IGR1cmluZyBkcmFnZ2luZy5cclxuICBcdFx0dGhpcy5maXJlKCdkcmFnJywgZSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vblVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdC8vIElnbm9yZSB0aGUgZXZlbnQgaWYgZGlzYWJsZWQ7IHRoaXMgaGFwcGVucyBpbiBJRTExXHJcbiAgXHRcdC8vIHVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcywgc2VlICMzNjY2LlxyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcbiAgXHRcdHRoaXMuZmluaXNoRHJhZygpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRmaW5pc2hEcmFnOiBmdW5jdGlvbiAobm9JbmVydGlhKSB7XHJcbiAgXHRcdHJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdsZWFmbGV0LWRyYWdnaW5nJyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbGFzdFRhcmdldCkge1xyXG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2xhc3RUYXJnZXQsICdsZWFmbGV0LWRyYWctdGFyZ2V0Jyk7XHJcbiAgXHRcdFx0dGhpcy5fbGFzdFRhcmdldCA9IG51bGw7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdG9mZihkb2N1bWVudCwgJ21vdXNlbW92ZSB0b3VjaG1vdmUnLCB0aGlzLl9vbk1vdmUsIHRoaXMpO1xyXG4gIFx0XHRvZmYoZG9jdW1lbnQsICdtb3VzZXVwIHRvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25VcCwgdGhpcyk7XHJcblxyXG4gIFx0XHRlbmFibGVJbWFnZURyYWcoKTtcclxuICBcdFx0ZW5hYmxlVGV4dFNlbGVjdGlvbigpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21vdmVkICYmIHRoaXMuX21vdmluZykge1xyXG5cclxuICBcdFx0XHQvLyBAZXZlbnQgZHJhZ2VuZDogRHJhZ0VuZEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgZHJhZyBlbmRzLlxyXG4gIFx0XHRcdHRoaXMuZmlyZSgnZHJhZ2VuZCcsIHtcclxuICBcdFx0XHRcdG5vSW5lcnRpYTogbm9JbmVydGlhLFxyXG4gIFx0XHRcdFx0ZGlzdGFuY2U6IHRoaXMuX25ld1Bvcy5kaXN0YW5jZVRvKHRoaXMuX3N0YXJ0UG9zKVxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZpbmcgPSBmYWxzZTtcclxuICBcdFx0RHJhZ2dhYmxlLl9kcmFnZ2luZyA9IGZhbHNlO1xyXG4gIFx0fVxyXG5cclxuICB9KTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgTGluZVV0aWxcclxuICAgKlxyXG4gICAqIFZhcmlvdXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHBvbHlsaW5lIHBvaW50cyBwcm9jZXNzaW5nLCB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseSB0byBtYWtlIHBvbHlsaW5lcyBsaWdodG5pbmctZmFzdC5cclxuICAgKi9cclxuXHJcbiAgLy8gU2ltcGxpZnkgcG9seWxpbmUgd2l0aCB2ZXJ0ZXggcmVkdWN0aW9uIGFuZCBEb3VnbGFzLVBldWNrZXIgc2ltcGxpZmljYXRpb24uXHJcbiAgLy8gSW1wcm92ZXMgcmVuZGVyaW5nIHBlcmZvcm1hbmNlIGRyYW1hdGljYWxseSBieSBsZXNzZW5pbmcgdGhlIG51bWJlciBvZiBwb2ludHMgdG8gZHJhdy5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHNpbXBsaWZ5KHBvaW50czogUG9pbnRbXSwgdG9sZXJhbmNlOiBOdW1iZXIpOiBQb2ludFtdXHJcbiAgLy8gRHJhbWF0aWNhbGx5IHJlZHVjZXMgdGhlIG51bWJlciBvZiBwb2ludHMgaW4gYSBwb2x5bGluZSB3aGlsZSByZXRhaW5pbmdcclxuICAvLyBpdHMgc2hhcGUgYW5kIHJldHVybnMgYSBuZXcgYXJyYXkgb2Ygc2ltcGxpZmllZCBwb2ludHMsIHVzaW5nIHRoZVxyXG4gIC8vIFtSYW1lci1Eb3VnbGFzLVBldWNrZXIgYWxnb3JpdGhtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SYW1lci1Eb3VnbGFzLVBldWNrZXJfYWxnb3JpdGhtKS5cclxuICAvLyBVc2VkIGZvciBhIGh1Z2UgcGVyZm9ybWFuY2UgYm9vc3Qgd2hlbiBwcm9jZXNzaW5nL2Rpc3BsYXlpbmcgTGVhZmxldCBwb2x5bGluZXMgZm9yXHJcbiAgLy8gZWFjaCB6b29tIGxldmVsIGFuZCBhbHNvIHJlZHVjaW5nIHZpc3VhbCBub2lzZS4gdG9sZXJhbmNlIGFmZmVjdHMgdGhlIGFtb3VudCBvZlxyXG4gIC8vIHNpbXBsaWZpY2F0aW9uIChsZXNzZXIgdmFsdWUgbWVhbnMgaGlnaGVyIHF1YWxpdHkgYnV0IHNsb3dlciBhbmQgd2l0aCBtb3JlIHBvaW50cykuXHJcbiAgLy8gQWxzbyByZWxlYXNlZCBhcyBhIHNlcGFyYXRlZCBtaWNyby1saWJyYXJ5IFtTaW1wbGlmeS5qc10oaHR0cHM6Ly9tb3VybmVyLmdpdGh1Yi5pby9zaW1wbGlmeS1qcy8pLlxyXG4gIGZ1bmN0aW9uIHNpbXBsaWZ5KHBvaW50cywgdG9sZXJhbmNlKSB7XHJcbiAgXHRpZiAoIXRvbGVyYW5jZSB8fCAhcG9pbnRzLmxlbmd0aCkge1xyXG4gIFx0XHRyZXR1cm4gcG9pbnRzLnNsaWNlKCk7XHJcbiAgXHR9XHJcblxyXG4gIFx0dmFyIHNxVG9sZXJhbmNlID0gdG9sZXJhbmNlICogdG9sZXJhbmNlO1xyXG5cclxuICBcdCAgICAvLyBzdGFnZSAxOiB2ZXJ0ZXggcmVkdWN0aW9uXHJcbiAgXHQgICAgcG9pbnRzID0gX3JlZHVjZVBvaW50cyhwb2ludHMsIHNxVG9sZXJhbmNlKTtcclxuXHJcbiAgXHQgICAgLy8gc3RhZ2UgMjogRG91Z2xhcy1QZXVja2VyIHNpbXBsaWZpY2F0aW9uXHJcbiAgXHQgICAgcG9pbnRzID0gX3NpbXBsaWZ5RFAocG9pbnRzLCBzcVRvbGVyYW5jZSk7XHJcblxyXG4gIFx0cmV0dXJuIHBvaW50cztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBwb2ludFRvU2VnbWVudERpc3RhbmNlKHA6IFBvaW50LCBwMTogUG9pbnQsIHAyOiBQb2ludCk6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIGRpc3RhbmNlIGJldHdlZW4gcG9pbnQgYHBgIGFuZCBzZWdtZW50IGBwMWAgdG8gYHAyYC5cclxuICBmdW5jdGlvbiBwb2ludFRvU2VnbWVudERpc3RhbmNlKHAsIHAxLCBwMikge1xyXG4gIFx0cmV0dXJuIE1hdGguc3FydChfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocCwgcDEsIHAyLCB0cnVlKSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY2xvc2VzdFBvaW50T25TZWdtZW50KHA6IFBvaW50LCBwMTogUG9pbnQsIHAyOiBQb2ludCk6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIGNsb3Nlc3QgcG9pbnQgZnJvbSBhIHBvaW50IGBwYCBvbiBhIHNlZ21lbnQgYHAxYCB0byBgcDJgLlxyXG4gIGZ1bmN0aW9uIGNsb3Nlc3RQb2ludE9uU2VnbWVudChwLCBwMSwgcDIpIHtcclxuICBcdHJldHVybiBfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocCwgcDEsIHAyKTtcclxuICB9XHJcblxyXG4gIC8vIFJhbWVyLURvdWdsYXMtUGV1Y2tlciBzaW1wbGlmaWNhdGlvbiwgc2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1JhbWVyLURvdWdsYXMtUGV1Y2tlcl9hbGdvcml0aG1cclxuICBmdW5jdGlvbiBfc2ltcGxpZnlEUChwb2ludHMsIHNxVG9sZXJhbmNlKSB7XHJcblxyXG4gIFx0dmFyIGxlbiA9IHBvaW50cy5sZW5ndGgsXHJcbiAgXHQgICAgQXJyYXlDb25zdHJ1Y3RvciA9IHR5cGVvZiBVaW50OEFycmF5ICE9PSB1bmRlZmluZWQgKyAnJyA/IFVpbnQ4QXJyYXkgOiBBcnJheSxcclxuICBcdCAgICBtYXJrZXJzID0gbmV3IEFycmF5Q29uc3RydWN0b3IobGVuKTtcclxuXHJcbiAgXHQgICAgbWFya2Vyc1swXSA9IG1hcmtlcnNbbGVuIC0gMV0gPSAxO1xyXG5cclxuICBcdF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCAwLCBsZW4gLSAxKTtcclxuXHJcbiAgXHR2YXIgaSxcclxuICBcdCAgICBuZXdQb2ludHMgPSBbXTtcclxuXHJcbiAgXHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICBcdFx0aWYgKG1hcmtlcnNbaV0pIHtcclxuICBcdFx0XHRuZXdQb2ludHMucHVzaChwb2ludHNbaV0pO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIG5ld1BvaW50cztcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCBmaXJzdCwgbGFzdCkge1xyXG5cclxuICBcdHZhciBtYXhTcURpc3QgPSAwLFxyXG4gIFx0aW5kZXgsIGksIHNxRGlzdDtcclxuXHJcbiAgXHRmb3IgKGkgPSBmaXJzdCArIDE7IGkgPD0gbGFzdCAtIDE7IGkrKykge1xyXG4gIFx0XHRzcURpc3QgPSBfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocG9pbnRzW2ldLCBwb2ludHNbZmlyc3RdLCBwb2ludHNbbGFzdF0sIHRydWUpO1xyXG5cclxuICBcdFx0aWYgKHNxRGlzdCA+IG1heFNxRGlzdCkge1xyXG4gIFx0XHRcdGluZGV4ID0gaTtcclxuICBcdFx0XHRtYXhTcURpc3QgPSBzcURpc3Q7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRpZiAobWF4U3FEaXN0ID4gc3FUb2xlcmFuY2UpIHtcclxuICBcdFx0bWFya2Vyc1tpbmRleF0gPSAxO1xyXG5cclxuICBcdFx0X3NpbXBsaWZ5RFBTdGVwKHBvaW50cywgbWFya2Vycywgc3FUb2xlcmFuY2UsIGZpcnN0LCBpbmRleCk7XHJcbiAgXHRcdF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCBpbmRleCwgbGFzdCk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyByZWR1Y2UgcG9pbnRzIHRoYXQgYXJlIHRvbyBjbG9zZSB0byBlYWNoIG90aGVyIHRvIGEgc2luZ2xlIHBvaW50XHJcbiAgZnVuY3Rpb24gX3JlZHVjZVBvaW50cyhwb2ludHMsIHNxVG9sZXJhbmNlKSB7XHJcbiAgXHR2YXIgcmVkdWNlZFBvaW50cyA9IFtwb2ludHNbMF1dO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAxLCBwcmV2ID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdGlmIChfc3FEaXN0KHBvaW50c1tpXSwgcG9pbnRzW3ByZXZdKSA+IHNxVG9sZXJhbmNlKSB7XHJcbiAgXHRcdFx0cmVkdWNlZFBvaW50cy5wdXNoKHBvaW50c1tpXSk7XHJcbiAgXHRcdFx0cHJldiA9IGk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICBcdGlmIChwcmV2IDwgbGVuIC0gMSkge1xyXG4gIFx0XHRyZWR1Y2VkUG9pbnRzLnB1c2gocG9pbnRzW2xlbiAtIDFdKTtcclxuICBcdH1cclxuICBcdHJldHVybiByZWR1Y2VkUG9pbnRzO1xyXG4gIH1cclxuXHJcbiAgdmFyIF9sYXN0Q29kZTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGNsaXBTZWdtZW50KGE6IFBvaW50LCBiOiBQb2ludCwgYm91bmRzOiBCb3VuZHMsIHVzZUxhc3RDb2RlPzogQm9vbGVhbiwgcm91bmQ/OiBCb29sZWFuKTogUG9pbnRbXXxCb29sZWFuXHJcbiAgLy8gQ2xpcHMgdGhlIHNlZ21lbnQgYSB0byBiIGJ5IHJlY3Rhbmd1bGFyIGJvdW5kcyB3aXRoIHRoZVxyXG4gIC8vIFtDb2hlbi1TdXRoZXJsYW5kIGFsZ29yaXRobV0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ29oZW4lRTIlODAlOTNTdXRoZXJsYW5kX2FsZ29yaXRobSlcclxuICAvLyAobW9kaWZ5aW5nIHRoZSBzZWdtZW50IHBvaW50cyBkaXJlY3RseSEpLiBVc2VkIGJ5IExlYWZsZXQgdG8gb25seSBzaG93IHBvbHlsaW5lXHJcbiAgLy8gcG9pbnRzIHRoYXQgYXJlIG9uIHRoZSBzY3JlZW4gb3IgbmVhciwgaW5jcmVhc2luZyBwZXJmb3JtYW5jZS5cclxuICBmdW5jdGlvbiBjbGlwU2VnbWVudChhLCBiLCBib3VuZHMsIHVzZUxhc3RDb2RlLCByb3VuZCkge1xyXG4gIFx0dmFyIGNvZGVBID0gdXNlTGFzdENvZGUgPyBfbGFzdENvZGUgOiBfZ2V0Qml0Q29kZShhLCBib3VuZHMpLFxyXG4gIFx0ICAgIGNvZGVCID0gX2dldEJpdENvZGUoYiwgYm91bmRzKSxcclxuXHJcbiAgXHQgICAgY29kZU91dCwgcCwgbmV3Q29kZTtcclxuXHJcbiAgXHQgICAgLy8gc2F2ZSAybmQgY29kZSB0byBhdm9pZCBjYWxjdWxhdGluZyBpdCBvbiB0aGUgbmV4dCBzZWdtZW50XHJcbiAgXHQgICAgX2xhc3RDb2RlID0gY29kZUI7XHJcblxyXG4gIFx0d2hpbGUgKHRydWUpIHtcclxuICBcdFx0Ly8gaWYgYSxiIGlzIGluc2lkZSB0aGUgY2xpcCB3aW5kb3cgKHRyaXZpYWwgYWNjZXB0KVxyXG4gIFx0XHRpZiAoIShjb2RlQSB8IGNvZGVCKSkge1xyXG4gIFx0XHRcdHJldHVybiBbYSwgYl07XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGlmIGEsYiBpcyBvdXRzaWRlIHRoZSBjbGlwIHdpbmRvdyAodHJpdmlhbCByZWplY3QpXHJcbiAgXHRcdGlmIChjb2RlQSAmIGNvZGVCKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBvdGhlciBjYXNlc1xyXG4gIFx0XHRjb2RlT3V0ID0gY29kZUEgfHwgY29kZUI7XHJcbiAgXHRcdHAgPSBfZ2V0RWRnZUludGVyc2VjdGlvbihhLCBiLCBjb2RlT3V0LCBib3VuZHMsIHJvdW5kKTtcclxuICBcdFx0bmV3Q29kZSA9IF9nZXRCaXRDb2RlKHAsIGJvdW5kcyk7XHJcblxyXG4gIFx0XHRpZiAoY29kZU91dCA9PT0gY29kZUEpIHtcclxuICBcdFx0XHRhID0gcDtcclxuICBcdFx0XHRjb2RlQSA9IG5ld0NvZGU7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0YiA9IHA7XHJcbiAgXHRcdFx0Y29kZUIgPSBuZXdDb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBfZ2V0RWRnZUludGVyc2VjdGlvbihhLCBiLCBjb2RlLCBib3VuZHMsIHJvdW5kKSB7XHJcbiAgXHR2YXIgZHggPSBiLnggLSBhLngsXHJcbiAgXHQgICAgZHkgPSBiLnkgLSBhLnksXHJcbiAgXHQgICAgbWluID0gYm91bmRzLm1pbixcclxuICBcdCAgICBtYXggPSBib3VuZHMubWF4LFxyXG4gIFx0ICAgIHgsIHk7XHJcblxyXG4gIFx0aWYgKGNvZGUgJiA4KSB7IC8vIHRvcFxyXG4gIFx0XHR4ID0gYS54ICsgZHggKiAobWF4LnkgLSBhLnkpIC8gZHk7XHJcbiAgXHRcdHkgPSBtYXgueTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKGNvZGUgJiA0KSB7IC8vIGJvdHRvbVxyXG4gIFx0XHR4ID0gYS54ICsgZHggKiAobWluLnkgLSBhLnkpIC8gZHk7XHJcbiAgXHRcdHkgPSBtaW4ueTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKGNvZGUgJiAyKSB7IC8vIHJpZ2h0XHJcbiAgXHRcdHggPSBtYXgueDtcclxuICBcdFx0eSA9IGEueSArIGR5ICogKG1heC54IC0gYS54KSAvIGR4O1xyXG5cclxuICBcdH0gZWxzZSBpZiAoY29kZSAmIDEpIHsgLy8gbGVmdFxyXG4gIFx0XHR4ID0gbWluLng7XHJcbiAgXHRcdHkgPSBhLnkgKyBkeSAqIChtaW4ueCAtIGEueCkgLyBkeDtcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gbmV3IFBvaW50KHgsIHksIHJvdW5kKTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9nZXRCaXRDb2RlKHAsIGJvdW5kcykge1xyXG4gIFx0dmFyIGNvZGUgPSAwO1xyXG5cclxuICBcdGlmIChwLnggPCBib3VuZHMubWluLngpIHsgLy8gbGVmdFxyXG4gIFx0XHRjb2RlIHw9IDE7XHJcbiAgXHR9IGVsc2UgaWYgKHAueCA+IGJvdW5kcy5tYXgueCkgeyAvLyByaWdodFxyXG4gIFx0XHRjb2RlIHw9IDI7XHJcbiAgXHR9XHJcblxyXG4gIFx0aWYgKHAueSA8IGJvdW5kcy5taW4ueSkgeyAvLyBib3R0b21cclxuICBcdFx0Y29kZSB8PSA0O1xyXG4gIFx0fSBlbHNlIGlmIChwLnkgPiBib3VuZHMubWF4LnkpIHsgLy8gdG9wXHJcbiAgXHRcdGNvZGUgfD0gODtcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gY29kZTtcclxuICB9XHJcblxyXG4gIC8vIHNxdWFyZSBkaXN0YW5jZSAodG8gYXZvaWQgdW5uZWNlc3NhcnkgTWF0aC5zcXJ0IGNhbGxzKVxyXG4gIGZ1bmN0aW9uIF9zcURpc3QocDEsIHAyKSB7XHJcbiAgXHR2YXIgZHggPSBwMi54IC0gcDEueCxcclxuICBcdCAgICBkeSA9IHAyLnkgLSBwMS55O1xyXG4gIFx0cmV0dXJuIGR4ICogZHggKyBkeSAqIGR5O1xyXG4gIH1cclxuXHJcbiAgLy8gcmV0dXJuIGNsb3Nlc3QgcG9pbnQgb24gc2VnbWVudCBvciBkaXN0YW5jZSB0byB0aGF0IHBvaW50XHJcbiAgZnVuY3Rpb24gX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50KHAsIHAxLCBwMiwgc3FEaXN0KSB7XHJcbiAgXHR2YXIgeCA9IHAxLngsXHJcbiAgXHQgICAgeSA9IHAxLnksXHJcbiAgXHQgICAgZHggPSBwMi54IC0geCxcclxuICBcdCAgICBkeSA9IHAyLnkgLSB5LFxyXG4gIFx0ICAgIGRvdCA9IGR4ICogZHggKyBkeSAqIGR5LFxyXG4gIFx0ICAgIHQ7XHJcblxyXG4gIFx0aWYgKGRvdCA+IDApIHtcclxuICBcdFx0dCA9ICgocC54IC0geCkgKiBkeCArIChwLnkgLSB5KSAqIGR5KSAvIGRvdDtcclxuXHJcbiAgXHRcdGlmICh0ID4gMSkge1xyXG4gIFx0XHRcdHggPSBwMi54O1xyXG4gIFx0XHRcdHkgPSBwMi55O1xyXG4gIFx0XHR9IGVsc2UgaWYgKHQgPiAwKSB7XHJcbiAgXHRcdFx0eCArPSBkeCAqIHQ7XHJcbiAgXHRcdFx0eSArPSBkeSAqIHQ7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRkeCA9IHAueCAtIHg7XHJcbiAgXHRkeSA9IHAueSAtIHk7XHJcblxyXG4gIFx0cmV0dXJuIHNxRGlzdCA/IGR4ICogZHggKyBkeSAqIGR5IDogbmV3IFBvaW50KHgsIHkpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBpc0ZsYXQobGF0bG5nczogTGF0TG5nW10pOiBCb29sZWFuXHJcbiAgLy8gUmV0dXJucyB0cnVlIGlmIGBsYXRsbmdzYCBpcyBhIGZsYXQgYXJyYXksIGZhbHNlIGlzIG5lc3RlZC5cclxuICBmdW5jdGlvbiBpc0ZsYXQobGF0bG5ncykge1xyXG4gIFx0cmV0dXJuICFpc0FycmF5KGxhdGxuZ3NbMF0pIHx8ICh0eXBlb2YgbGF0bG5nc1swXVswXSAhPT0gJ29iamVjdCcgJiYgdHlwZW9mIGxhdGxuZ3NbMF1bMF0gIT09ICd1bmRlZmluZWQnKTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9mbGF0KGxhdGxuZ3MpIHtcclxuICBcdGNvbnNvbGUud2FybignRGVwcmVjYXRlZCB1c2Ugb2YgX2ZsYXQsIHBsZWFzZSB1c2UgTC5MaW5lVXRpbC5pc0ZsYXQgaW5zdGVhZC4nKTtcclxuICBcdHJldHVybiBpc0ZsYXQobGF0bG5ncyk7XHJcbiAgfVxyXG5cclxuICAvKiBAZnVuY3Rpb24gcG9seWxpbmVDZW50ZXIobGF0bG5nczogTGF0TG5nW10sIGNyczogQ1JTKTogTGF0TG5nXHJcbiAgICogUmV0dXJucyB0aGUgY2VudGVyIChbY2VudHJvaWRdKGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2VudHJvaWQpKSBvZiB0aGUgcGFzc2VkIExhdExuZ3MgKGZpcnN0IHJpbmcpIGZyb20gYSBwb2x5bGluZS5cclxuICAgKi9cclxuICBmdW5jdGlvbiBwb2x5bGluZUNlbnRlcihsYXRsbmdzLCBjcnMpIHtcclxuICBcdHZhciBpLCBoYWxmRGlzdCwgc2VnRGlzdCwgZGlzdCwgcDEsIHAyLCByYXRpbywgY2VudGVyO1xyXG5cclxuICBcdGlmICghbGF0bG5ncyB8fCBsYXRsbmdzLmxlbmd0aCA9PT0gMCkge1xyXG4gIFx0XHR0aHJvdyBuZXcgRXJyb3IoJ2xhdGxuZ3Mgbm90IHBhc3NlZCcpO1xyXG4gIFx0fVxyXG5cclxuICBcdGlmICghaXNGbGF0KGxhdGxuZ3MpKSB7XHJcbiAgXHRcdGNvbnNvbGUud2FybignbGF0bG5ncyBhcmUgbm90IGZsYXQhIE9ubHkgdGhlIGZpcnN0IHJpbmcgd2lsbCBiZSB1c2VkJyk7XHJcbiAgXHRcdGxhdGxuZ3MgPSBsYXRsbmdzWzBdO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBwb2ludHMgPSBbXTtcclxuICBcdGZvciAodmFyIGogaW4gbGF0bG5ncykge1xyXG4gIFx0XHRwb2ludHMucHVzaChjcnMucHJvamVjdCh0b0xhdExuZyhsYXRsbmdzW2pdKSkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBsZW4gPSBwb2ludHMubGVuZ3RoO1xyXG5cclxuICBcdGZvciAoaSA9IDAsIGhhbGZEaXN0ID0gMDsgaSA8IGxlbiAtIDE7IGkrKykge1xyXG4gIFx0XHRoYWxmRGlzdCArPSBwb2ludHNbaV0uZGlzdGFuY2VUbyhwb2ludHNbaSArIDFdKSAvIDI7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gVGhlIGxpbmUgaXMgc28gc21hbGwgaW4gdGhlIGN1cnJlbnQgdmlldyB0aGF0IGFsbCBwb2ludHMgYXJlIG9uIHRoZSBzYW1lIHBpeGVsLlxyXG4gIFx0aWYgKGhhbGZEaXN0ID09PSAwKSB7XHJcbiAgXHRcdGNlbnRlciA9IHBvaW50c1swXTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGZvciAoaSA9IDAsIGRpc3QgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7XHJcbiAgXHRcdFx0cDEgPSBwb2ludHNbaV07XHJcbiAgXHRcdFx0cDIgPSBwb2ludHNbaSArIDFdO1xyXG4gIFx0XHRcdHNlZ0Rpc3QgPSBwMS5kaXN0YW5jZVRvKHAyKTtcclxuICBcdFx0XHRkaXN0ICs9IHNlZ0Rpc3Q7XHJcblxyXG4gIFx0XHRcdGlmIChkaXN0ID4gaGFsZkRpc3QpIHtcclxuICBcdFx0XHRcdHJhdGlvID0gKGRpc3QgLSBoYWxmRGlzdCkgLyBzZWdEaXN0O1xyXG4gIFx0XHRcdFx0Y2VudGVyID0gW1xyXG4gIFx0XHRcdFx0XHRwMi54IC0gcmF0aW8gKiAocDIueCAtIHAxLngpLFxyXG4gIFx0XHRcdFx0XHRwMi55IC0gcmF0aW8gKiAocDIueSAtIHAxLnkpXHJcbiAgXHRcdFx0XHRdO1xyXG4gIFx0XHRcdFx0YnJlYWs7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gY3JzLnVucHJvamVjdCh0b1BvaW50KGNlbnRlcikpO1xyXG4gIH1cblxuICB2YXIgTGluZVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIHNpbXBsaWZ5OiBzaW1wbGlmeSxcbiAgICBwb2ludFRvU2VnbWVudERpc3RhbmNlOiBwb2ludFRvU2VnbWVudERpc3RhbmNlLFxuICAgIGNsb3Nlc3RQb2ludE9uU2VnbWVudDogY2xvc2VzdFBvaW50T25TZWdtZW50LFxuICAgIGNsaXBTZWdtZW50OiBjbGlwU2VnbWVudCxcbiAgICBfZ2V0RWRnZUludGVyc2VjdGlvbjogX2dldEVkZ2VJbnRlcnNlY3Rpb24sXG4gICAgX2dldEJpdENvZGU6IF9nZXRCaXRDb2RlLFxuICAgIF9zcUNsb3Nlc3RQb2ludE9uU2VnbWVudDogX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50LFxuICAgIGlzRmxhdDogaXNGbGF0LFxuICAgIF9mbGF0OiBfZmxhdCxcbiAgICBwb2x5bGluZUNlbnRlcjogcG9seWxpbmVDZW50ZXJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgUG9seVV0aWxcclxuICAgKiBWYXJpb3VzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBwb2x5Z29uIGdlb21ldHJpZXMuXHJcbiAgICovXHJcblxyXG4gIC8qIEBmdW5jdGlvbiBjbGlwUG9seWdvbihwb2ludHM6IFBvaW50W10sIGJvdW5kczogQm91bmRzLCByb3VuZD86IEJvb2xlYW4pOiBQb2ludFtdXHJcbiAgICogQ2xpcHMgdGhlIHBvbHlnb24gZ2VvbWV0cnkgZGVmaW5lZCBieSB0aGUgZ2l2ZW4gYHBvaW50c2AgYnkgdGhlIGdpdmVuIGJvdW5kcyAodXNpbmcgdGhlIFtTdXRoZXJsYW5kLUhvZGdtYW4gYWxnb3JpdGhtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TdXRoZXJsYW5kJUUyJTgwJTkzSG9kZ21hbl9hbGdvcml0aG0pKS5cclxuICAgKiBVc2VkIGJ5IExlYWZsZXQgdG8gb25seSBzaG93IHBvbHlnb24gcG9pbnRzIHRoYXQgYXJlIG9uIHRoZSBzY3JlZW4gb3IgbmVhciwgaW5jcmVhc2luZ1xyXG4gICAqIHBlcmZvcm1hbmNlLiBOb3RlIHRoYXQgcG9seWdvbiBwb2ludHMgbmVlZHMgZGlmZmVyZW50IGFsZ29yaXRobSBmb3IgY2xpcHBpbmdcclxuICAgKiB0aGFuIHBvbHlsaW5lLCBzbyB0aGVyZSdzIGEgc2VwYXJhdGUgbWV0aG9kIGZvciBpdC5cclxuICAgKi9cclxuICBmdW5jdGlvbiBjbGlwUG9seWdvbihwb2ludHMsIGJvdW5kcywgcm91bmQpIHtcclxuICBcdHZhciBjbGlwcGVkUG9pbnRzLFxyXG4gIFx0ICAgIGVkZ2VzID0gWzEsIDQsIDIsIDhdLFxyXG4gIFx0ICAgIGksIGosIGssXHJcbiAgXHQgICAgYSwgYixcclxuICBcdCAgICBsZW4sIGVkZ2UsIHA7XHJcblxyXG4gIFx0Zm9yIChpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHBvaW50c1tpXS5fY29kZSA9IF9nZXRCaXRDb2RlKHBvaW50c1tpXSwgYm91bmRzKTtcclxuICBcdH1cclxuXHJcbiAgXHQvLyBmb3IgZWFjaCBlZGdlIChsZWZ0LCBib3R0b20sIHJpZ2h0LCB0b3ApXHJcbiAgXHRmb3IgKGsgPSAwOyBrIDwgNDsgaysrKSB7XHJcbiAgXHRcdGVkZ2UgPSBlZGdlc1trXTtcclxuICBcdFx0Y2xpcHBlZFBvaW50cyA9IFtdO1xyXG5cclxuICBcdFx0Zm9yIChpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aCwgaiA9IGxlbiAtIDE7IGkgPCBsZW47IGogPSBpKyspIHtcclxuICBcdFx0XHRhID0gcG9pbnRzW2ldO1xyXG4gIFx0XHRcdGIgPSBwb2ludHNbal07XHJcblxyXG4gIFx0XHRcdC8vIGlmIGEgaXMgaW5zaWRlIHRoZSBjbGlwIHdpbmRvd1xyXG4gIFx0XHRcdGlmICghKGEuX2NvZGUgJiBlZGdlKSkge1xyXG4gIFx0XHRcdFx0Ly8gaWYgYiBpcyBvdXRzaWRlIHRoZSBjbGlwIHdpbmRvdyAoYS0+YiBnb2VzIG91dCBvZiBzY3JlZW4pXHJcbiAgXHRcdFx0XHRpZiAoYi5fY29kZSAmIGVkZ2UpIHtcclxuICBcdFx0XHRcdFx0cCA9IF9nZXRFZGdlSW50ZXJzZWN0aW9uKGIsIGEsIGVkZ2UsIGJvdW5kcywgcm91bmQpO1xyXG4gIFx0XHRcdFx0XHRwLl9jb2RlID0gX2dldEJpdENvZGUocCwgYm91bmRzKTtcclxuICBcdFx0XHRcdFx0Y2xpcHBlZFBvaW50cy5wdXNoKHApO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdFx0Y2xpcHBlZFBvaW50cy5wdXNoKGEpO1xyXG5cclxuICBcdFx0XHQvLyBlbHNlIGlmIGIgaXMgaW5zaWRlIHRoZSBjbGlwIHdpbmRvdyAoYS0+YiBlbnRlcnMgdGhlIHNjcmVlbilcclxuICBcdFx0XHR9IGVsc2UgaWYgKCEoYi5fY29kZSAmIGVkZ2UpKSB7XHJcbiAgXHRcdFx0XHRwID0gX2dldEVkZ2VJbnRlcnNlY3Rpb24oYiwgYSwgZWRnZSwgYm91bmRzLCByb3VuZCk7XHJcbiAgXHRcdFx0XHRwLl9jb2RlID0gX2dldEJpdENvZGUocCwgYm91bmRzKTtcclxuICBcdFx0XHRcdGNsaXBwZWRQb2ludHMucHVzaChwKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cG9pbnRzID0gY2xpcHBlZFBvaW50cztcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gcG9pbnRzO1xyXG4gIH1cclxuXHJcbiAgLyogQGZ1bmN0aW9uIHBvbHlnb25DZW50ZXIobGF0bG5nczogTGF0TG5nW10gY3JzOiBDUlMpOiBMYXRMbmdcclxuICAgKiBSZXR1cm5zIHRoZSBjZW50ZXIgKFtjZW50cm9pZF0oaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DZW50cm9pZCkpIG9mIHRoZSBwYXNzZWQgTGF0TG5ncyAoZmlyc3QgcmluZykgZnJvbSBhIHBvbHlnb24uXHJcbiAgICovXHJcbiAgZnVuY3Rpb24gcG9seWdvbkNlbnRlcihsYXRsbmdzLCBjcnMpIHtcclxuICBcdHZhciBpLCBqLCBwMSwgcDIsIGYsIGFyZWEsIHgsIHksIGNlbnRlcjtcclxuXHJcbiAgXHRpZiAoIWxhdGxuZ3MgfHwgbGF0bG5ncy5sZW5ndGggPT09IDApIHtcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdsYXRsbmdzIG5vdCBwYXNzZWQnKTtcclxuICBcdH1cclxuXHJcbiAgXHRpZiAoIWlzRmxhdChsYXRsbmdzKSkge1xyXG4gIFx0XHRjb25zb2xlLndhcm4oJ2xhdGxuZ3MgYXJlIG5vdCBmbGF0ISBPbmx5IHRoZSBmaXJzdCByaW5nIHdpbGwgYmUgdXNlZCcpO1xyXG4gIFx0XHRsYXRsbmdzID0gbGF0bG5nc1swXTtcclxuICBcdH1cclxuXHJcbiAgXHR2YXIgcG9pbnRzID0gW107XHJcbiAgXHRmb3IgKHZhciBrIGluIGxhdGxuZ3MpIHtcclxuICBcdFx0cG9pbnRzLnB1c2goY3JzLnByb2plY3QodG9MYXRMbmcobGF0bG5nc1trXSkpKTtcclxuICBcdH1cclxuXHJcbiAgXHR2YXIgbGVuID0gcG9pbnRzLmxlbmd0aDtcclxuICBcdGFyZWEgPSB4ID0geSA9IDA7XHJcblxyXG4gIFx0Ly8gcG9seWdvbiBjZW50cm9pZCBhbGdvcml0aG07XHJcbiAgXHRmb3IgKGkgPSAwLCBqID0gbGVuIC0gMTsgaSA8IGxlbjsgaiA9IGkrKykge1xyXG4gIFx0XHRwMSA9IHBvaW50c1tpXTtcclxuICBcdFx0cDIgPSBwb2ludHNbal07XHJcblxyXG4gIFx0XHRmID0gcDEueSAqIHAyLnggLSBwMi55ICogcDEueDtcclxuICBcdFx0eCArPSAocDEueCArIHAyLngpICogZjtcclxuICBcdFx0eSArPSAocDEueSArIHAyLnkpICogZjtcclxuICBcdFx0YXJlYSArPSBmICogMztcclxuICBcdH1cclxuXHJcbiAgXHRpZiAoYXJlYSA9PT0gMCkge1xyXG4gIFx0XHQvLyBQb2x5Z29uIGlzIHNvIHNtYWxsIHRoYXQgYWxsIHBvaW50cyBhcmUgb24gc2FtZSBwaXhlbC5cclxuICBcdFx0Y2VudGVyID0gcG9pbnRzWzBdO1xyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0Y2VudGVyID0gW3ggLyBhcmVhLCB5IC8gYXJlYV07XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gY3JzLnVucHJvamVjdCh0b1BvaW50KGNlbnRlcikpO1xyXG4gIH1cblxuICB2YXIgUG9seVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIGNsaXBQb2x5Z29uOiBjbGlwUG9seWdvbixcbiAgICBwb2x5Z29uQ2VudGVyOiBwb2x5Z29uQ2VudGVyXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFByb2plY3Rpb25cclxuICAgKiBAc2VjdGlvblxyXG4gICAqIExlYWZsZXQgY29tZXMgd2l0aCBhIHNldCBvZiBhbHJlYWR5IGRlZmluZWQgUHJvamVjdGlvbnMgb3V0IG9mIHRoZSBib3g6XHJcbiAgICpcclxuICAgKiBAcHJvamVjdGlvbiBMLlByb2plY3Rpb24uTG9uTGF0XHJcbiAgICpcclxuICAgKiBFcXVpcmVjdGFuZ3VsYXIsIG9yIFBsYXRlIENhcnJlZSBwcm9qZWN0aW9uIOKAlCB0aGUgbW9zdCBzaW1wbGUgcHJvamVjdGlvbixcclxuICAgKiBtb3N0bHkgdXNlZCBieSBHSVMgZW50aHVzaWFzdHMuIERpcmVjdGx5IG1hcHMgYHhgIGFzIGxvbmdpdHVkZSwgYW5kIGB5YCBhc1xyXG4gICAqIGxhdGl0dWRlLiBBbHNvIHN1aXRhYmxlIGZvciBmbGF0IHdvcmxkcywgZS5nLiBnYW1lIG1hcHMuIFVzZWQgYnkgdGhlXHJcbiAgICogYEVQU0c6NDMyNmAgYW5kIGBTaW1wbGVgIENSUy5cclxuICAgKi9cclxuXHJcbiAgdmFyIExvbkxhdCA9IHtcclxuICBcdHByb2plY3Q6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChsYXRsbmcubG5nLCBsYXRsbmcubGF0KTtcclxuICBcdH0sXHJcblxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcocG9pbnQueSwgcG9pbnQueCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdGJvdW5kczogbmV3IEJvdW5kcyhbLTE4MCwgLTkwXSwgWzE4MCwgOTBdKVxyXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFByb2plY3Rpb25cclxuICAgKiBAcHJvamVjdGlvbiBMLlByb2plY3Rpb24uTWVyY2F0b3JcclxuICAgKlxyXG4gICAqIEVsbGlwdGljYWwgTWVyY2F0b3IgcHJvamVjdGlvbiDigJQgbW9yZSBjb21wbGV4IHRoYW4gU3BoZXJpY2FsIE1lcmNhdG9yLiBBc3N1bWVzIHRoYXQgRWFydGggaXMgYW4gZWxsaXBzb2lkLiBVc2VkIGJ5IHRoZSBFUFNHOjMzOTUgQ1JTLlxyXG4gICAqL1xyXG5cclxuICB2YXIgTWVyY2F0b3IgPSB7XHJcbiAgXHRSOiA2Mzc4MTM3LFxyXG4gIFx0Ul9NSU5PUjogNjM1Njc1Mi4zMTQyNDUxNzksXHJcblxyXG4gIFx0Ym91bmRzOiBuZXcgQm91bmRzKFstMjAwMzc1MDguMzQyNzksIC0xNTQ5NjU3MC43Mzk3Ml0sIFsyMDAzNzUwOC4zNDI3OSwgMTg3NjQ2NTYuMjMxMzhdKSxcclxuXHJcbiAgXHRwcm9qZWN0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHZhciBkID0gTWF0aC5QSSAvIDE4MCxcclxuICBcdFx0ICAgIHIgPSB0aGlzLlIsXHJcbiAgXHRcdCAgICB5ID0gbGF0bG5nLmxhdCAqIGQsXHJcbiAgXHRcdCAgICB0bXAgPSB0aGlzLlJfTUlOT1IgLyByLFxyXG4gIFx0XHQgICAgZSA9IE1hdGguc3FydCgxIC0gdG1wICogdG1wKSxcclxuICBcdFx0ICAgIGNvbiA9IGUgKiBNYXRoLnNpbih5KTtcclxuXHJcbiAgXHRcdHZhciB0cyA9IE1hdGgudGFuKE1hdGguUEkgLyA0IC0geSAvIDIpIC8gTWF0aC5wb3coKDEgLSBjb24pIC8gKDEgKyBjb24pLCBlIC8gMik7XHJcbiAgXHRcdHkgPSAtciAqIE1hdGgubG9nKE1hdGgubWF4KHRzLCAxRS0xMCkpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChsYXRsbmcubG5nICogZCAqIHIsIHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHR1bnByb2plY3Q6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHR2YXIgZCA9IDE4MCAvIE1hdGguUEksXHJcbiAgXHRcdCAgICByID0gdGhpcy5SLFxyXG4gIFx0XHQgICAgdG1wID0gdGhpcy5SX01JTk9SIC8gcixcclxuICBcdFx0ICAgIGUgPSBNYXRoLnNxcnQoMSAtIHRtcCAqIHRtcCksXHJcbiAgXHRcdCAgICB0cyA9IE1hdGguZXhwKC1wb2ludC55IC8gciksXHJcbiAgXHRcdCAgICBwaGkgPSBNYXRoLlBJIC8gMiAtIDIgKiBNYXRoLmF0YW4odHMpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGRwaGkgPSAwLjEsIGNvbjsgaSA8IDE1ICYmIE1hdGguYWJzKGRwaGkpID4gMWUtNzsgaSsrKSB7XHJcbiAgXHRcdFx0Y29uID0gZSAqIE1hdGguc2luKHBoaSk7XHJcbiAgXHRcdFx0Y29uID0gTWF0aC5wb3coKDEgLSBjb24pIC8gKDEgKyBjb24pLCBlIC8gMik7XHJcbiAgXHRcdFx0ZHBoaSA9IE1hdGguUEkgLyAyIC0gMiAqIE1hdGguYXRhbih0cyAqIGNvbikgLSBwaGk7XHJcbiAgXHRcdFx0cGhpICs9IGRwaGk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHBoaSAqIGQsIHBvaW50LnggKiBkIC8gcik7XHJcbiAgXHR9XHJcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgUHJvamVjdGlvblxuXG4gICAqIEFuIG9iamVjdCB3aXRoIG1ldGhvZHMgZm9yIHByb2plY3RpbmcgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGVzIG9mIHRoZSB3b3JsZCBvbnRvXG4gICAqIGEgZmxhdCBzdXJmYWNlIChhbmQgYmFjaykuIFNlZSBbTWFwIHByb2plY3Rpb25dKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL01hcF9wcm9qZWN0aW9uKS5cblxuICAgKiBAcHJvcGVydHkgYm91bmRzOiBCb3VuZHNcbiAgICogVGhlIGJvdW5kcyAoc3BlY2lmaWVkIGluIENSUyB1bml0cykgd2hlcmUgdGhlIHByb2plY3Rpb24gaXMgdmFsaWRcblxuICAgKiBAbWV0aG9kIHByb2plY3QobGF0bG5nOiBMYXRMbmcpOiBQb2ludFxuICAgKiBQcm9qZWN0cyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMgaW50byBhIDJEIHBvaW50LlxuICAgKiBPbmx5IGFjY2VwdHMgYWN0dWFsIGBMLkxhdExuZ2AgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxuXG4gICAqIEBtZXRob2QgdW5wcm9qZWN0KHBvaW50OiBQb2ludCk6IExhdExuZ1xuICAgKiBUaGUgaW52ZXJzZSBvZiBgcHJvamVjdGAuIFByb2plY3RzIGEgMkQgcG9pbnQgaW50byBhIGdlb2dyYXBoaWNhbCBsb2NhdGlvbi5cbiAgICogT25seSBhY2NlcHRzIGFjdHVhbCBgTC5Qb2ludGAgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxuXG4gICAqIE5vdGUgdGhhdCB0aGUgcHJvamVjdGlvbiBpbnN0YW5jZXMgZG8gbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXG4gICAqIGFuZCBjYW4ndCBiZSBpbnN0YW50aWF0ZWQuIEFsc28sIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSB0aGVtLFxuICAgKiBhbmQgbWV0aG9kcyBjYW4ndCBiZSBhZGRlZCB0byB0aGVtIHdpdGggdGhlIGBpbmNsdWRlYCBmdW5jdGlvbi5cblxuICAgKi9cblxuICB2YXIgaW5kZXggPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIExvbkxhdDogTG9uTGF0LFxuICAgIE1lcmNhdG9yOiBNZXJjYXRvcixcbiAgICBTcGhlcmljYWxNZXJjYXRvcjogU3BoZXJpY2FsTWVyY2F0b3JcbiAgfTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgQ1JTXHJcbiAgICogQGNycyBMLkNSUy5FUFNHMzM5NVxyXG4gICAqXHJcbiAgICogUmFyZWx5IHVzZWQgYnkgc29tZSBjb21tZXJjaWFsIHRpbGUgcHJvdmlkZXJzLiBVc2VzIEVsbGlwdGljYWwgTWVyY2F0b3IgcHJvamVjdGlvbi5cclxuICAgKi9cclxuICB2YXIgRVBTRzMzOTUgPSBleHRlbmQoe30sIEVhcnRoLCB7XHJcbiAgXHRjb2RlOiAnRVBTRzozMzk1JyxcclxuICBcdHByb2plY3Rpb246IE1lcmNhdG9yLFxyXG5cclxuICBcdHRyYW5zZm9ybWF0aW9uOiAoZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgc2NhbGUgPSAwLjUgLyAoTWF0aC5QSSAqIE1lcmNhdG9yLlIpO1xyXG4gIFx0XHRyZXR1cm4gdG9UcmFuc2Zvcm1hdGlvbihzY2FsZSwgMC41LCAtc2NhbGUsIDAuNSk7XHJcbiAgXHR9KCkpXHJcbiAgfSk7XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuRVBTRzQzMjZcclxuICAgKlxyXG4gICAqIEEgY29tbW9uIENSUyBhbW9uZyBHSVMgZW50aHVzaWFzdHMuIFVzZXMgc2ltcGxlIEVxdWlyZWN0YW5ndWxhciBwcm9qZWN0aW9uLlxyXG4gICAqXHJcbiAgICogTGVhZmxldCAxLjAueCBjb21wbGllcyB3aXRoIHRoZSBbVE1TIGNvb3JkaW5hdGUgc2NoZW1lIGZvciBFUFNHOjQzMjZdKGh0dHBzOi8vd2lraS5vc2dlby5vcmcvd2lraS9UaWxlX01hcF9TZXJ2aWNlX1NwZWNpZmljYXRpb24jZ2xvYmFsLWdlb2RldGljKSxcclxuICAgKiB3aGljaCBpcyBhIGJyZWFraW5nIGNoYW5nZSBmcm9tIDAuNy54IGJlaGF2aW91ci4gIElmIHlvdSBhcmUgdXNpbmcgYSBgVGlsZUxheWVyYFxyXG4gICAqIHdpdGggdGhpcyBDUlMsIGVuc3VyZSB0aGF0IHRoZXJlIGFyZSB0d28gMjU2eDI1NiBwaXhlbCB0aWxlcyBjb3ZlcmluZyB0aGVcclxuICAgKiB3aG9sZSBlYXJ0aCBhdCB6b29tIGxldmVsIHplcm8sIGFuZCB0aGF0IHRoZSB0aWxlIGNvb3JkaW5hdGUgb3JpZ2luIGlzICgtMTgwLCs5MCksXHJcbiAgICogb3IgKC0xODAsLTkwKSBmb3IgYFRpbGVMYXllcmBzIHdpdGggW3RoZSBgdG1zYCBvcHRpb25dKCN0aWxlbGF5ZXItdG1zKSBzZXQuXHJcbiAgICovXHJcblxyXG4gIHZhciBFUFNHNDMyNiA9IGV4dGVuZCh7fSwgRWFydGgsIHtcclxuICBcdGNvZGU6ICdFUFNHOjQzMjYnLFxyXG4gIFx0cHJvamVjdGlvbjogTG9uTGF0LFxyXG4gIFx0dHJhbnNmb3JtYXRpb246IHRvVHJhbnNmb3JtYXRpb24oMSAvIDE4MCwgMSwgLTEgLyAxODAsIDAuNSlcclxuICB9KTtcblxuICAvKlxuICAgKiBAbmFtZXNwYWNlIENSU1xuICAgKiBAY3JzIEwuQ1JTLlNpbXBsZVxuICAgKlxuICAgKiBBIHNpbXBsZSBDUlMgdGhhdCBtYXBzIGxvbmdpdHVkZSBhbmQgbGF0aXR1ZGUgaW50byBgeGAgYW5kIGB5YCBkaXJlY3RseS5cbiAgICogTWF5IGJlIHVzZWQgZm9yIG1hcHMgb2YgZmxhdCBzdXJmYWNlcyAoZS5nLiBnYW1lIG1hcHMpLiBOb3RlIHRoYXQgdGhlIGB5YFxuICAgKiBheGlzIHNob3VsZCBzdGlsbCBiZSBpbnZlcnRlZCAoZ29pbmcgZnJvbSBib3R0b20gdG8gdG9wKS4gYGRpc3RhbmNlKClgIHJldHVybnNcbiAgICogc2ltcGxlIGV1Y2xpZGVhbiBkaXN0YW5jZS5cbiAgICovXG5cbiAgdmFyIFNpbXBsZSA9IGV4dGVuZCh7fSwgQ1JTLCB7XG4gIFx0cHJvamVjdGlvbjogTG9uTGF0LFxuICBcdHRyYW5zZm9ybWF0aW9uOiB0b1RyYW5zZm9ybWF0aW9uKDEsIDAsIC0xLCAwKSxcblxuICBcdHNjYWxlOiBmdW5jdGlvbiAoem9vbSkge1xuICBcdFx0cmV0dXJuIE1hdGgucG93KDIsIHpvb20pO1xuICBcdH0sXG5cbiAgXHR6b29tOiBmdW5jdGlvbiAoc2NhbGUpIHtcbiAgXHRcdHJldHVybiBNYXRoLmxvZyhzY2FsZSkgLyBNYXRoLkxOMjtcbiAgXHR9LFxuXG4gIFx0ZGlzdGFuY2U6IGZ1bmN0aW9uIChsYXRsbmcxLCBsYXRsbmcyKSB7XG4gIFx0XHR2YXIgZHggPSBsYXRsbmcyLmxuZyAtIGxhdGxuZzEubG5nLFxuICBcdFx0ICAgIGR5ID0gbGF0bG5nMi5sYXQgLSBsYXRsbmcxLmxhdDtcblxuICBcdFx0cmV0dXJuIE1hdGguc3FydChkeCAqIGR4ICsgZHkgKiBkeSk7XG4gIFx0fSxcblxuICBcdGluZmluaXRlOiB0cnVlXG4gIH0pO1xuXG4gIENSUy5FYXJ0aCA9IEVhcnRoO1xuICBDUlMuRVBTRzMzOTUgPSBFUFNHMzM5NTtcbiAgQ1JTLkVQU0czODU3ID0gRVBTRzM4NTc7XG4gIENSUy5FUFNHOTAwOTEzID0gRVBTRzkwMDkxMztcbiAgQ1JTLkVQU0c0MzI2ID0gRVBTRzQzMjY7XG4gIENSUy5TaW1wbGUgPSBTaW1wbGU7XG5cbiAgLypcbiAgICogQGNsYXNzIExheWVyXG4gICAqIEBpbmhlcml0cyBFdmVudGVkXG4gICAqIEBha2EgTC5MYXllclxuICAgKiBAYWthIElMYXllclxuICAgKlxuICAgKiBBIHNldCBvZiBtZXRob2RzIGZyb20gdGhlIExheWVyIGJhc2UgY2xhc3MgdGhhdCBhbGwgTGVhZmxldCBsYXllcnMgdXNlLlxuICAgKiBJbmhlcml0cyBhbGwgbWV0aG9kcywgb3B0aW9ucyBhbmQgZXZlbnRzIGZyb20gYEwuRXZlbnRlZGAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBsYXllciA9IEwubWFya2VyKGxhdGxuZykuYWRkVG8obWFwKTtcbiAgICogbGF5ZXIuYWRkVG8obWFwKTtcbiAgICogbGF5ZXIucmVtb3ZlKCk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBAZXZlbnQgYWRkOiBFdmVudFxuICAgKiBGaXJlZCBhZnRlciB0aGUgbGF5ZXIgaXMgYWRkZWQgdG8gYSBtYXBcbiAgICpcbiAgICogQGV2ZW50IHJlbW92ZTogRXZlbnRcbiAgICogRmlyZWQgYWZ0ZXIgdGhlIGxheWVyIGlzIHJlbW92ZWQgZnJvbSBhIG1hcFxuICAgKi9cblxuXG4gIHZhciBMYXllciA9IEV2ZW50ZWQuZXh0ZW5kKHtcblxuICBcdC8vIENsYXNzZXMgZXh0ZW5kaW5nIGBMLkxheWVyYCB3aWxsIGluaGVyaXQgdGhlIGZvbGxvd2luZyBvcHRpb25zOlxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gcGFuZTogU3RyaW5nID0gJ292ZXJsYXlQYW5lJ1xuICBcdFx0Ly8gQnkgZGVmYXVsdCB0aGUgbGF5ZXIgd2lsbCBiZSBhZGRlZCB0byB0aGUgbWFwJ3MgW292ZXJsYXkgcGFuZV0oI21hcC1vdmVybGF5cGFuZSkuIE92ZXJyaWRpbmcgdGhpcyBvcHRpb24gd2lsbCBjYXVzZSB0aGUgbGF5ZXIgdG8gYmUgcGxhY2VkIG9uIGFub3RoZXIgcGFuZSBieSBkZWZhdWx0LlxuICBcdFx0cGFuZTogJ292ZXJsYXlQYW5lJyxcblxuICBcdFx0Ly8gQG9wdGlvbiBhdHRyaWJ1dGlvbjogU3RyaW5nID0gbnVsbFxuICBcdFx0Ly8gU3RyaW5nIHRvIGJlIHNob3duIGluIHRoZSBhdHRyaWJ1dGlvbiBjb250cm9sLCBlLmcuIFwiwqkgT3BlblN0cmVldE1hcCBjb250cmlidXRvcnNcIi4gSXQgZGVzY3JpYmVzIHRoZSBsYXllciBkYXRhIGFuZCBpcyBvZnRlbiBhIGxlZ2FsIG9ibGlnYXRpb24gdG93YXJkcyBjb3B5cmlnaHQgaG9sZGVycyBhbmQgdGlsZSBwcm92aWRlcnMuXG4gIFx0XHRhdHRyaWJ1dGlvbjogbnVsbCxcblxuICBcdFx0YnViYmxpbmdNb3VzZUV2ZW50czogdHJ1ZVxuICBcdH0sXG5cbiAgXHQvKiBAc2VjdGlvblxuICBcdCAqIENsYXNzZXMgZXh0ZW5kaW5nIGBMLkxheWVyYCB3aWxsIGluaGVyaXQgdGhlIGZvbGxvd2luZyBtZXRob2RzOlxuICBcdCAqXG4gIFx0ICogQG1ldGhvZCBhZGRUbyhtYXA6IE1hcHxMYXllckdyb3VwKTogdGhpc1xuICBcdCAqIEFkZHMgdGhlIGxheWVyIHRvIHRoZSBnaXZlbiBtYXAgb3IgbGF5ZXIgZ3JvdXAuXG4gIFx0ICovXG4gIFx0YWRkVG86IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdG1hcC5hZGRMYXllcih0aGlzKTtcbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZTogdGhpc1xuICBcdC8vIFJlbW92ZXMgdGhlIGxheWVyIGZyb20gdGhlIG1hcCBpdCBpcyBjdXJyZW50bHkgYWN0aXZlIG9uLlxuICBcdHJlbW92ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMucmVtb3ZlRnJvbSh0aGlzLl9tYXAgfHwgdGhpcy5fbWFwVG9BZGQpO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUZyb20obWFwOiBNYXApOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgbGF5ZXIgZnJvbSB0aGUgZ2l2ZW4gbWFwXG4gIFx0Ly9cbiAgXHQvLyBAYWx0ZXJuYXRpdmVcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUZyb20oZ3JvdXA6IExheWVyR3JvdXApOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgbGF5ZXIgZnJvbSB0aGUgZ2l2ZW4gYExheWVyR3JvdXBgXG4gIFx0cmVtb3ZlRnJvbTogZnVuY3Rpb24gKG9iaikge1xuICBcdFx0aWYgKG9iaikge1xuICBcdFx0XHRvYmoucmVtb3ZlTGF5ZXIodGhpcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRQYW5lKG5hbWU/IDogU3RyaW5nKTogSFRNTEVsZW1lbnRcbiAgXHQvLyBSZXR1cm5zIHRoZSBgSFRNTEVsZW1lbnRgIHJlcHJlc2VudGluZyB0aGUgbmFtZWQgcGFuZSBvbiB0aGUgbWFwLiBJZiBgbmFtZWAgaXMgb21pdHRlZCwgcmV0dXJucyB0aGUgcGFuZSBmb3IgdGhpcyBsYXllci5cbiAgXHRnZXRQYW5lOiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0cmV0dXJuIHRoaXMuX21hcC5nZXRQYW5lKG5hbWUgPyAodGhpcy5vcHRpb25zW25hbWVdIHx8IG5hbWUpIDogdGhpcy5vcHRpb25zLnBhbmUpO1xuICBcdH0sXG5cbiAgXHRhZGRJbnRlcmFjdGl2ZVRhcmdldDogZnVuY3Rpb24gKHRhcmdldEVsKSB7XG4gIFx0XHR0aGlzLl9tYXAuX3RhcmdldHNbc3RhbXAodGFyZ2V0RWwpXSA9IHRoaXM7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0cmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQ6IGZ1bmN0aW9uICh0YXJnZXRFbCkge1xuICBcdFx0ZGVsZXRlIHRoaXMuX21hcC5fdGFyZ2V0c1tzdGFtcCh0YXJnZXRFbCldO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0QXR0cmlidXRpb246IFN0cmluZ1xuICBcdC8vIFVzZWQgYnkgdGhlIGBhdHRyaWJ1dGlvbiBjb250cm9sYCwgcmV0dXJucyB0aGUgW2F0dHJpYnV0aW9uIG9wdGlvbl0oI2dyaWRsYXllci1hdHRyaWJ1dGlvbikuXG4gIFx0Z2V0QXR0cmlidXRpb246IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMuYXR0cmlidXRpb247XG4gIFx0fSxcblxuICBcdF9sYXllckFkZDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXAgPSBlLnRhcmdldDtcblxuICBcdFx0Ly8gY2hlY2sgaW4gY2FzZSBsYXllciBnZXRzIGFkZGVkIGFuZCB0aGVuIHJlbW92ZWQgYmVmb3JlIHRoZSBtYXAgaXMgcmVhZHlcbiAgXHRcdGlmICghbWFwLmhhc0xheWVyKHRoaXMpKSB7IHJldHVybjsgfVxuXG4gIFx0XHR0aGlzLl9tYXAgPSBtYXA7XG4gIFx0XHR0aGlzLl96b29tQW5pbWF0ZWQgPSBtYXAuX3pvb21BbmltYXRlZDtcblxuICBcdFx0aWYgKHRoaXMuZ2V0RXZlbnRzKSB7XG4gIFx0XHRcdHZhciBldmVudHMgPSB0aGlzLmdldEV2ZW50cygpO1xuICBcdFx0XHRtYXAub24oZXZlbnRzLCB0aGlzKTtcbiAgXHRcdFx0dGhpcy5vbmNlKCdyZW1vdmUnLCBmdW5jdGlvbiAoKSB7XG4gIFx0XHRcdFx0bWFwLm9mZihldmVudHMsIHRoaXMpO1xuICBcdFx0XHR9LCB0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5vbkFkZChtYXApO1xuXG4gIFx0XHR0aGlzLmZpcmUoJ2FkZCcpO1xuICBcdFx0bWFwLmZpcmUoJ2xheWVyYWRkJywge2xheWVyOiB0aGlzfSk7XG4gIFx0fVxuICB9KTtcblxuICAvKiBAc2VjdGlvbiBFeHRlbnNpb24gbWV0aG9kc1xuICAgKiBAdW5pbmhlcml0YWJsZVxuICAgKlxuICAgKiBFdmVyeSBsYXllciBzaG91bGQgZXh0ZW5kIGZyb20gYEwuTGF5ZXJgIGFuZCAocmUtKWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZHMuXG4gICAqXG4gICAqIEBtZXRob2Qgb25BZGQobWFwOiBNYXApOiB0aGlzXG4gICAqIFNob3VsZCBjb250YWluIGNvZGUgdGhhdCBjcmVhdGVzIERPTSBlbGVtZW50cyBmb3IgdGhlIGxheWVyLCBhZGRzIHRoZW0gdG8gYG1hcCBwYW5lc2Agd2hlcmUgdGhleSBzaG91bGQgYmVsb25nIGFuZCBwdXRzIGxpc3RlbmVycyBvbiByZWxldmFudCBtYXAgZXZlbnRzLiBDYWxsZWQgb24gW2BtYXAuYWRkTGF5ZXIobGF5ZXIpYF0oI21hcC1hZGRsYXllcikuXG4gICAqXG4gICAqIEBtZXRob2Qgb25SZW1vdmUobWFwOiBNYXApOiB0aGlzXG4gICAqIFNob3VsZCBjb250YWluIGFsbCBjbGVhbiB1cCBjb2RlIHRoYXQgcmVtb3ZlcyB0aGUgbGF5ZXIncyBlbGVtZW50cyBmcm9tIHRoZSBET00gYW5kIHJlbW92ZXMgbGlzdGVuZXJzIHByZXZpb3VzbHkgYWRkZWQgaW4gW2BvbkFkZGBdKCNsYXllci1vbmFkZCkuIENhbGxlZCBvbiBbYG1hcC5yZW1vdmVMYXllcihsYXllcilgXSgjbWFwLXJlbW92ZWxheWVyKS5cbiAgICpcbiAgICogQG1ldGhvZCBnZXRFdmVudHMoKTogT2JqZWN0XG4gICAqIFRoaXMgb3B0aW9uYWwgbWV0aG9kIHNob3VsZCByZXR1cm4gYW4gb2JqZWN0IGxpa2UgYHsgdmlld3Jlc2V0OiB0aGlzLl9yZXNldCB9YCBmb3IgW2BhZGRFdmVudExpc3RlbmVyYF0oI2V2ZW50ZWQtYWRkZXZlbnRsaXN0ZW5lcikuIFRoZSBldmVudCBoYW5kbGVycyBpbiB0aGlzIG9iamVjdCB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgYWRkZWQgYW5kIHJlbW92ZWQgZnJvbSB0aGUgbWFwIHdpdGggeW91ciBsYXllci5cbiAgICpcbiAgICogQG1ldGhvZCBnZXRBdHRyaWJ1dGlvbigpOiBTdHJpbmdcbiAgICogVGhpcyBvcHRpb25hbCBtZXRob2Qgc2hvdWxkIHJldHVybiBhIHN0cmluZyBjb250YWluaW5nIEhUTUwgdG8gYmUgc2hvd24gb24gdGhlIGBBdHRyaWJ1dGlvbiBjb250cm9sYCB3aGVuZXZlciB0aGUgbGF5ZXIgaXMgdmlzaWJsZS5cbiAgICpcbiAgICogQG1ldGhvZCBiZWZvcmVBZGQobWFwOiBNYXApOiB0aGlzXG4gICAqIE9wdGlvbmFsIG1ldGhvZC4gQ2FsbGVkIG9uIFtgbWFwLmFkZExheWVyKGxheWVyKWBdKCNtYXAtYWRkbGF5ZXIpLCBiZWZvcmUgdGhlIGxheWVyIGlzIGFkZGVkIHRvIHRoZSBtYXAsIGJlZm9yZSBldmVudHMgYXJlIGluaXRpYWxpemVkLCB3aXRob3V0IHdhaXRpbmcgdW50aWwgdGhlIG1hcCBpcyBpbiBhIHVzYWJsZSBzdGF0ZS4gVXNlIGZvciBlYXJseSBpbml0aWFsaXphdGlvbiBvbmx5LlxuICAgKi9cblxuXG4gIC8qIEBuYW1lc3BhY2UgTWFwXG4gICAqIEBzZWN0aW9uIExheWVyIGV2ZW50c1xuICAgKlxuICAgKiBAZXZlbnQgbGF5ZXJhZGQ6IExheWVyRXZlbnRcbiAgICogRmlyZWQgd2hlbiBhIG5ldyBsYXllciBpcyBhZGRlZCB0byB0aGUgbWFwLlxuICAgKlxuICAgKiBAZXZlbnQgbGF5ZXJyZW1vdmU6IExheWVyRXZlbnRcbiAgICogRmlyZWQgd2hlbiBzb21lIGxheWVyIGlzIHJlbW92ZWQgZnJvbSB0aGUgbWFwXG4gICAqXG4gICAqIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcbiAgICovXG4gIE1hcC5pbmNsdWRlKHtcbiAgXHQvLyBAbWV0aG9kIGFkZExheWVyKGxheWVyOiBMYXllcik6IHRoaXNcbiAgXHQvLyBBZGRzIHRoZSBnaXZlbiBsYXllciB0byB0aGUgbWFwXG4gIFx0YWRkTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCFsYXllci5fbGF5ZXJBZGQpIHtcbiAgXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgb2JqZWN0IGlzIG5vdCBhIExheWVyLicpO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgaWQgPSBzdGFtcChsYXllcik7XG4gIFx0XHRpZiAodGhpcy5fbGF5ZXJzW2lkXSkgeyByZXR1cm4gdGhpczsgfVxuICBcdFx0dGhpcy5fbGF5ZXJzW2lkXSA9IGxheWVyO1xuXG4gIFx0XHRsYXllci5fbWFwVG9BZGQgPSB0aGlzO1xuXG4gIFx0XHRpZiAobGF5ZXIuYmVmb3JlQWRkKSB7XG4gIFx0XHRcdGxheWVyLmJlZm9yZUFkZCh0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy53aGVuUmVhZHkobGF5ZXIuX2xheWVyQWRkLCBsYXllcik7XG5cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGxheWVyOiBMYXllcik6IHRoaXNcbiAgXHQvLyBSZW1vdmVzIHRoZSBnaXZlbiBsYXllciBmcm9tIHRoZSBtYXAuXG4gIFx0cmVtb3ZlTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIGlkID0gc3RhbXAobGF5ZXIpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX2xheWVyc1tpZF0pIHsgcmV0dXJuIHRoaXM7IH1cblxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCkge1xuICBcdFx0XHRsYXllci5vblJlbW92ZSh0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tpZF07XG5cbiAgXHRcdGlmICh0aGlzLl9sb2FkZWQpIHtcbiAgXHRcdFx0dGhpcy5maXJlKCdsYXllcnJlbW92ZScsIHtsYXllcjogbGF5ZXJ9KTtcbiAgXHRcdFx0bGF5ZXIuZmlyZSgncmVtb3ZlJyk7XG4gIFx0XHR9XG5cbiAgXHRcdGxheWVyLl9tYXAgPSBsYXllci5fbWFwVG9BZGQgPSBudWxsO1xuXG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBoYXNMYXllcihsYXllcjogTGF5ZXIpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIGxheWVyIGlzIGN1cnJlbnRseSBhZGRlZCB0byB0aGUgbWFwXG4gIFx0aGFzTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0cmV0dXJuIHN0YW1wKGxheWVyKSBpbiB0aGlzLl9sYXllcnM7XG4gIFx0fSxcblxuICBcdC8qIEBtZXRob2QgZWFjaExheWVyKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcbiAgXHQgKiBJdGVyYXRlcyBvdmVyIHRoZSBsYXllcnMgb2YgdGhlIG1hcCwgb3B0aW9uYWxseSBzcGVjaWZ5aW5nIGNvbnRleHQgb2YgdGhlIGl0ZXJhdG9yIGZ1bmN0aW9uLlxuICBcdCAqIGBgYFxuICBcdCAqIG1hcC5lYWNoTGF5ZXIoZnVuY3Rpb24obGF5ZXIpe1xuICBcdCAqICAgICBsYXllci5iaW5kUG9wdXAoJ0hlbGxvJyk7XG4gIFx0ICogfSk7XG4gIFx0ICogYGBgXG4gIFx0ICovXG4gIFx0ZWFjaExheWVyOiBmdW5jdGlvbiAobWV0aG9kLCBjb250ZXh0KSB7XG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2xheWVycykge1xuICBcdFx0XHRtZXRob2QuY2FsbChjb250ZXh0LCB0aGlzLl9sYXllcnNbaV0pO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdF9hZGRMYXllcnM6IGZ1bmN0aW9uIChsYXllcnMpIHtcbiAgXHRcdGxheWVycyA9IGxheWVycyA/IChpc0FycmF5KGxheWVycykgPyBsYXllcnMgOiBbbGF5ZXJzXSkgOiBbXTtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IGxheWVycy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHR0aGlzLmFkZExheWVyKGxheWVyc1tpXSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9hZGRab29tTGltaXQ6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCFpc05hTihsYXllci5vcHRpb25zLm1heFpvb20pIHx8ICFpc05hTihsYXllci5vcHRpb25zLm1pblpvb20pKSB7XG4gIFx0XHRcdHRoaXMuX3pvb21Cb3VuZExheWVyc1tzdGFtcChsYXllcildID0gbGF5ZXI7XG4gIFx0XHRcdHRoaXMuX3VwZGF0ZVpvb21MZXZlbHMoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3JlbW92ZVpvb21MaW1pdDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgaWQgPSBzdGFtcChsYXllcik7XG5cbiAgXHRcdGlmICh0aGlzLl96b29tQm91bmRMYXllcnNbaWRdKSB7XG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl96b29tQm91bmRMYXllcnNbaWRdO1xuICBcdFx0XHR0aGlzLl91cGRhdGVab29tTGV2ZWxzKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVab29tTGV2ZWxzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbWluWm9vbSA9IEluZmluaXR5LFxuICBcdFx0ICAgIG1heFpvb20gPSAtSW5maW5pdHksXG4gIFx0XHQgICAgb2xkWm9vbVNwYW4gPSB0aGlzLl9nZXRab29tU3BhbigpO1xuXG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX3pvb21Cb3VuZExheWVycykge1xuICBcdFx0XHR2YXIgb3B0aW9ucyA9IHRoaXMuX3pvb21Cb3VuZExheWVyc1tpXS5vcHRpb25zO1xuXG4gIFx0XHRcdG1pblpvb20gPSBvcHRpb25zLm1pblpvb20gPT09IHVuZGVmaW5lZCA/IG1pblpvb20gOiBNYXRoLm1pbihtaW5ab29tLCBvcHRpb25zLm1pblpvb20pO1xuICBcdFx0XHRtYXhab29tID0gb3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgPyBtYXhab29tIDogTWF0aC5tYXgobWF4Wm9vbSwgb3B0aW9ucy5tYXhab29tKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fbGF5ZXJzTWF4Wm9vbSA9IG1heFpvb20gPT09IC1JbmZpbml0eSA/IHVuZGVmaW5lZCA6IG1heFpvb207XG4gIFx0XHR0aGlzLl9sYXllcnNNaW5ab29tID0gbWluWm9vbSA9PT0gSW5maW5pdHkgPyB1bmRlZmluZWQgOiBtaW5ab29tO1xuXG4gIFx0XHQvLyBAc2VjdGlvbiBNYXAgc3RhdGUgY2hhbmdlIGV2ZW50c1xuICBcdFx0Ly8gQGV2ZW50IHpvb21sZXZlbHNjaGFuZ2U6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBudW1iZXIgb2Ygem9vbWxldmVscyBvbiB0aGUgbWFwIGlzIGNoYW5nZWQgZHVlXG4gIFx0XHQvLyB0byBhZGRpbmcgb3IgcmVtb3ZpbmcgYSBsYXllci5cbiAgXHRcdGlmIChvbGRab29tU3BhbiAhPT0gdGhpcy5fZ2V0Wm9vbVNwYW4oKSkge1xuICBcdFx0XHR0aGlzLmZpcmUoJ3pvb21sZXZlbHNjaGFuZ2UnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgJiYgdGhpcy5fbGF5ZXJzTWF4Wm9vbSAmJiB0aGlzLmdldFpvb20oKSA+IHRoaXMuX2xheWVyc01heFpvb20pIHtcbiAgXHRcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xheWVyc01heFpvb20pO1xuICBcdFx0fVxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5taW5ab29tID09PSB1bmRlZmluZWQgJiYgdGhpcy5fbGF5ZXJzTWluWm9vbSAmJiB0aGlzLmdldFpvb20oKSA8IHRoaXMuX2xheWVyc01pblpvb20pIHtcbiAgXHRcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xheWVyc01pblpvb20pO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLypcclxuICAgKiBAY2xhc3MgTGF5ZXJHcm91cFxyXG4gICAqIEBha2EgTC5MYXllckdyb3VwXHJcbiAgICogQGluaGVyaXRzIEludGVyYWN0aXZlIGxheWVyXHJcbiAgICpcclxuICAgKiBVc2VkIHRvIGdyb3VwIHNldmVyYWwgbGF5ZXJzIGFuZCBoYW5kbGUgdGhlbSBhcyBvbmUuIElmIHlvdSBhZGQgaXQgdG8gdGhlIG1hcCxcclxuICAgKiBhbnkgbGF5ZXJzIGFkZGVkIG9yIHJlbW92ZWQgZnJvbSB0aGUgZ3JvdXAgd2lsbCBiZSBhZGRlZC9yZW1vdmVkIG9uIHRoZSBtYXAgYXNcclxuICAgKiB3ZWxsLiBFeHRlbmRzIGBMYXllcmAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLmxheWVyR3JvdXAoW21hcmtlcjEsIG1hcmtlcjJdKVxyXG4gICAqIFx0LmFkZExheWVyKHBvbHlsaW5lKVxyXG4gICAqIFx0LmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBMYXllckdyb3VwID0gTGF5ZXIuZXh0ZW5kKHtcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF5ZXJzLCBvcHRpb25zKSB7XHJcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSB7fTtcclxuXHJcbiAgXHRcdHZhciBpLCBsZW47XHJcblxyXG4gIFx0XHRpZiAobGF5ZXJzKSB7XHJcbiAgXHRcdFx0Zm9yIChpID0gMCwgbGVuID0gbGF5ZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHR0aGlzLmFkZExheWVyKGxheWVyc1tpXSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkTGF5ZXIobGF5ZXI6IExheWVyKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyB0aGUgZ2l2ZW4gbGF5ZXIgdG8gdGhlIGdyb3VwLlxyXG4gIFx0YWRkTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHR2YXIgaWQgPSB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG5cclxuICBcdFx0dGhpcy5fbGF5ZXJzW2lkXSA9IGxheWVyO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC5hZGRMYXllcihsYXllcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGxheWVyOiBMYXllcik6IHRoaXNcclxuICBcdC8vIFJlbW92ZXMgdGhlIGdpdmVuIGxheWVyIGZyb20gdGhlIGdyb3VwLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGlkOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIHRoZSBsYXllciB3aXRoIHRoZSBnaXZlbiBpbnRlcm5hbCBJRCBmcm9tIHRoZSBncm91cC5cclxuICBcdHJlbW92ZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0dmFyIGlkID0gbGF5ZXIgaW4gdGhpcy5fbGF5ZXJzID8gbGF5ZXIgOiB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCAmJiB0aGlzLl9sYXllcnNbaWRdKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLnJlbW92ZUxheWVyKHRoaXMuX2xheWVyc1tpZF0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRkZWxldGUgdGhpcy5fbGF5ZXJzW2lkXTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGhhc0xheWVyKGxheWVyOiBMYXllcik6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSBnaXZlbiBsYXllciBpcyBjdXJyZW50bHkgYWRkZWQgdG8gdGhlIGdyb3VwLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIGhhc0xheWVyKGlkOiBOdW1iZXIpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgZ2l2ZW4gaW50ZXJuYWwgSUQgaXMgY3VycmVudGx5IGFkZGVkIHRvIHRoZSBncm91cC5cclxuICBcdGhhc0xheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0dmFyIGxheWVySWQgPSB0eXBlb2YgbGF5ZXIgPT09ICdudW1iZXInID8gbGF5ZXIgOiB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG4gIFx0XHRyZXR1cm4gbGF5ZXJJZCBpbiB0aGlzLl9sYXllcnM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY2xlYXJMYXllcnMoKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyBhbGwgdGhlIGxheWVycyBmcm9tIHRoZSBncm91cC5cclxuICBcdGNsZWFyTGF5ZXJzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmVhY2hMYXllcih0aGlzLnJlbW92ZUxheWVyLCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpbnZva2UobWV0aG9kTmFtZTogU3RyaW5nLCDigKYpOiB0aGlzXHJcbiAgXHQvLyBDYWxscyBgbWV0aG9kTmFtZWAgb24gZXZlcnkgbGF5ZXIgY29udGFpbmVkIGluIHRoaXMgZ3JvdXAsIHBhc3NpbmcgYW55XHJcbiAgXHQvLyBhZGRpdGlvbmFsIHBhcmFtZXRlcnMuIEhhcyBubyBlZmZlY3QgaWYgdGhlIGxheWVycyBjb250YWluZWQgZG8gbm90XHJcbiAgXHQvLyBpbXBsZW1lbnQgYG1ldGhvZE5hbWVgLlxyXG4gIFx0aW52b2tlOiBmdW5jdGlvbiAobWV0aG9kTmFtZSkge1xyXG4gIFx0XHR2YXIgYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMSksXHJcbiAgXHRcdCAgICBpLCBsYXllcjtcclxuXHJcbiAgXHRcdGZvciAoaSBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRsYXllciA9IHRoaXMuX2xheWVyc1tpXTtcclxuXHJcbiAgXHRcdFx0aWYgKGxheWVyW21ldGhvZE5hbWVdKSB7XHJcbiAgXHRcdFx0XHRsYXllclttZXRob2ROYW1lXS5hcHBseShsYXllciwgYXJncyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0dGhpcy5lYWNoTGF5ZXIobWFwLmFkZExheWVyLCBtYXApO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLmVhY2hMYXllcihtYXAucmVtb3ZlTGF5ZXIsIG1hcCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZWFjaExheWVyKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICBcdC8vIEl0ZXJhdGVzIG92ZXIgdGhlIGxheWVycyBvZiB0aGUgZ3JvdXAsIG9wdGlvbmFsbHkgc3BlY2lmeWluZyBjb250ZXh0IG9mIHRoZSBpdGVyYXRvciBmdW5jdGlvbi5cclxuICBcdC8vIGBgYGpzXHJcbiAgXHQvLyBncm91cC5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHQvLyBcdGxheWVyLmJpbmRQb3B1cCgnSGVsbG8nKTtcclxuICBcdC8vIH0pO1xyXG4gIFx0Ly8gYGBgXHJcbiAgXHRlYWNoTGF5ZXI6IGZ1bmN0aW9uIChtZXRob2QsIGNvbnRleHQpIHtcclxuICBcdFx0Zm9yICh2YXIgaSBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRtZXRob2QuY2FsbChjb250ZXh0LCB0aGlzLl9sYXllcnNbaV0pO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExheWVyKGlkOiBOdW1iZXIpOiBMYXllclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbGF5ZXIgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJuYWwgSUQuXHJcbiAgXHRnZXRMYXllcjogZnVuY3Rpb24gKGlkKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXllcnNbaWRdO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExheWVycygpOiBMYXllcltdXHJcbiAgXHQvLyBSZXR1cm5zIGFuIGFycmF5IG9mIGFsbCB0aGUgbGF5ZXJzIGFkZGVkIHRvIHRoZSBncm91cC5cclxuICBcdGdldExheWVyczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgbGF5ZXJzID0gW107XHJcbiAgXHRcdHRoaXMuZWFjaExheWVyKGxheWVycy5wdXNoLCBsYXllcnMpO1xyXG4gIFx0XHRyZXR1cm4gbGF5ZXJzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpJbmRleCh6SW5kZXg6IE51bWJlcik6IHRoaXNcclxuICBcdC8vIENhbGxzIGBzZXRaSW5kZXhgIG9uIGV2ZXJ5IGxheWVyIGNvbnRhaW5lZCBpbiB0aGlzIGdyb3VwLCBwYXNzaW5nIHRoZSB6LWluZGV4LlxyXG4gIFx0c2V0WkluZGV4OiBmdW5jdGlvbiAoekluZGV4KSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmludm9rZSgnc2V0WkluZGV4JywgekluZGV4KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRMYXllcklkKGxheWVyOiBMYXllcik6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgaW50ZXJuYWwgSUQgZm9yIGEgbGF5ZXJcclxuICBcdGdldExheWVySWQ6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRyZXR1cm4gc3RhbXAobGF5ZXIpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXllckdyb3VwKGxheWVycz86IExheWVyW10sIG9wdGlvbnM/OiBPYmplY3QpXHJcbiAgLy8gQ3JlYXRlIGEgbGF5ZXIgZ3JvdXAsIG9wdGlvbmFsbHkgZ2l2ZW4gYW4gaW5pdGlhbCBzZXQgb2YgbGF5ZXJzIGFuZCBhbiBgb3B0aW9uc2Agb2JqZWN0LlxyXG4gIHZhciBsYXllckdyb3VwID0gZnVuY3Rpb24gKGxheWVycywgb3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBMYXllckdyb3VwKGxheWVycywgb3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBGZWF0dXJlR3JvdXBcclxuICAgKiBAYWthIEwuRmVhdHVyZUdyb3VwXHJcbiAgICogQGluaGVyaXRzIExheWVyR3JvdXBcclxuICAgKlxyXG4gICAqIEV4dGVuZGVkIGBMYXllckdyb3VwYCB0aGF0IG1ha2VzIGl0IGVhc2llciB0byBkbyB0aGUgc2FtZSB0aGluZyB0byBhbGwgaXRzIG1lbWJlciBsYXllcnM6XHJcbiAgICogICogW2BiaW5kUG9wdXBgXSgjbGF5ZXItYmluZHBvcHVwKSBiaW5kcyBhIHBvcHVwIHRvIGFsbCBvZiB0aGUgbGF5ZXJzIGF0IG9uY2UgKGxpa2V3aXNlIHdpdGggW2BiaW5kVG9vbHRpcGBdKCNsYXllci1iaW5kdG9vbHRpcCkpXHJcbiAgICogICogRXZlbnRzIGFyZSBwcm9wYWdhdGVkIHRvIHRoZSBgRmVhdHVyZUdyb3VwYCwgc28gaWYgdGhlIGdyb3VwIGhhcyBhbiBldmVudFxyXG4gICAqIGhhbmRsZXIsIGl0IHdpbGwgaGFuZGxlIGV2ZW50cyBmcm9tIGFueSBvZiB0aGUgbGF5ZXJzLiBUaGlzIGluY2x1ZGVzIG1vdXNlIGV2ZW50c1xyXG4gICAqIGFuZCBjdXN0b20gZXZlbnRzLlxyXG4gICAqICAqIEhhcyBgbGF5ZXJhZGRgIGFuZCBgbGF5ZXJyZW1vdmVgIGV2ZW50c1xyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogTC5mZWF0dXJlR3JvdXAoW21hcmtlcjEsIG1hcmtlcjIsIHBvbHlsaW5lXSlcclxuICAgKiBcdC5iaW5kUG9wdXAoJ0hlbGxvIHdvcmxkIScpXHJcbiAgICogXHQub24oJ2NsaWNrJywgZnVuY3Rpb24oKSB7IGFsZXJ0KCdDbGlja2VkIG9uIGEgbWVtYmVyIG9mIHRoZSBncm91cCEnKTsgfSlcclxuICAgKiBcdC5hZGRUbyhtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgRmVhdHVyZUdyb3VwID0gTGF5ZXJHcm91cC5leHRlbmQoe1xyXG5cclxuICBcdGFkZExheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0aWYgKHRoaXMuaGFzTGF5ZXIobGF5ZXIpKSB7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGxheWVyLmFkZEV2ZW50UGFyZW50KHRoaXMpO1xyXG5cclxuICBcdFx0TGF5ZXJHcm91cC5wcm90b3R5cGUuYWRkTGF5ZXIuY2FsbCh0aGlzLCBsYXllcik7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbGF5ZXJhZGQ6IExheWVyRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGxheWVyIGlzIGFkZGVkIHRvIHRoaXMgYEZlYXR1cmVHcm91cGBcclxuICBcdFx0cmV0dXJuIHRoaXMuZmlyZSgnbGF5ZXJhZGQnLCB7bGF5ZXI6IGxheWVyfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdHJlbW92ZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0aWYgKCF0aGlzLmhhc0xheWVyKGxheWVyKSkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChsYXllciBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRsYXllciA9IHRoaXMuX2xheWVyc1tsYXllcl07XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGxheWVyLnJlbW92ZUV2ZW50UGFyZW50KHRoaXMpO1xyXG5cclxuICBcdFx0TGF5ZXJHcm91cC5wcm90b3R5cGUucmVtb3ZlTGF5ZXIuY2FsbCh0aGlzLCBsYXllcik7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbGF5ZXJyZW1vdmU6IExheWVyRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGxheWVyIGlzIHJlbW92ZWQgZnJvbSB0aGlzIGBGZWF0dXJlR3JvdXBgXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ2xheWVycmVtb3ZlJywge2xheWVyOiBsYXllcn0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFN0eWxlKHN0eWxlOiBQYXRoIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBnaXZlbiBwYXRoIG9wdGlvbnMgdG8gZWFjaCBsYXllciBvZiB0aGUgZ3JvdXAgdGhhdCBoYXMgYSBgc2V0U3R5bGVgIG1ldGhvZC5cclxuICBcdHNldFN0eWxlOiBmdW5jdGlvbiAoc3R5bGUpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuaW52b2tlKCdzZXRTdHlsZScsIHN0eWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvRnJvbnQoKTogdGhpc1xyXG4gIFx0Ly8gQnJpbmdzIHRoZSBsYXllciBncm91cCB0byB0aGUgdG9wIG9mIGFsbCBvdGhlciBsYXllcnNcclxuICBcdGJyaW5nVG9Gcm9udDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5pbnZva2UoJ2JyaW5nVG9Gcm9udCcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9CYWNrKCk6IHRoaXNcclxuICBcdC8vIEJyaW5ncyB0aGUgbGF5ZXIgZ3JvdXAgdG8gdGhlIGJhY2sgb2YgYWxsIG90aGVyIGxheWVyc1xyXG4gIFx0YnJpbmdUb0JhY2s6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuaW52b2tlKCdicmluZ1RvQmFjaycpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIExhdExuZ0JvdW5kcyBvZiB0aGUgRmVhdHVyZSBHcm91cCAoY3JlYXRlZCBmcm9tIGJvdW5kcyBhbmQgY29vcmRpbmF0ZXMgb2YgaXRzIGNoaWxkcmVuKS5cclxuICBcdGdldEJvdW5kczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcygpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XHJcbiAgXHRcdFx0dmFyIGxheWVyID0gdGhpcy5fbGF5ZXJzW2lkXTtcclxuICBcdFx0XHRib3VuZHMuZXh0ZW5kKGxheWVyLmdldEJvdW5kcyA/IGxheWVyLmdldEJvdW5kcygpIDogbGF5ZXIuZ2V0TGF0TG5nKCkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBib3VuZHM7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBmYWN0b3J5IEwuZmVhdHVyZUdyb3VwKGxheWVycz86IExheWVyW10sIG9wdGlvbnM/OiBPYmplY3QpXHJcbiAgLy8gQ3JlYXRlIGEgZmVhdHVyZSBncm91cCwgb3B0aW9uYWxseSBnaXZlbiBhbiBpbml0aWFsIHNldCBvZiBsYXllcnMgYW5kIGFuIGBvcHRpb25zYCBvYmplY3QuXHJcbiAgdmFyIGZlYXR1cmVHcm91cCA9IGZ1bmN0aW9uIChsYXllcnMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgRmVhdHVyZUdyb3VwKGxheWVycywgb3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBJY29uXHJcbiAgICogQGFrYSBMLkljb25cclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYW4gaWNvbiB0byBwcm92aWRlIHdoZW4gY3JlYXRpbmcgYSBtYXJrZXIuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgbXlJY29uID0gTC5pY29uKHtcclxuICAgKiAgICAgaWNvblVybDogJ215LWljb24ucG5nJyxcclxuICAgKiAgICAgaWNvblJldGluYVVybDogJ215LWljb25AMngucG5nJyxcclxuICAgKiAgICAgaWNvblNpemU6IFszOCwgOTVdLFxyXG4gICAqICAgICBpY29uQW5jaG9yOiBbMjIsIDk0XSxcclxuICAgKiAgICAgcG9wdXBBbmNob3I6IFstMywgLTc2XSxcclxuICAgKiAgICAgc2hhZG93VXJsOiAnbXktaWNvbi1zaGFkb3cucG5nJyxcclxuICAgKiAgICAgc2hhZG93UmV0aW5hVXJsOiAnbXktaWNvbi1zaGFkb3dAMngucG5nJyxcclxuICAgKiAgICAgc2hhZG93U2l6ZTogWzY4LCA5NV0sXHJcbiAgICogICAgIHNoYWRvd0FuY2hvcjogWzIyLCA5NF1cclxuICAgKiB9KTtcclxuICAgKlxyXG4gICAqIEwubWFya2VyKFs1MC41MDUsIDMwLjU3XSwge2ljb246IG15SWNvbn0pLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBgTC5JY29uLkRlZmF1bHRgIGV4dGVuZHMgYEwuSWNvbmAgYW5kIGlzIHRoZSBibHVlIGljb24gTGVhZmxldCB1c2VzIGZvciBtYXJrZXJzIGJ5IGRlZmF1bHQuXHJcbiAgICpcclxuICAgKi9cclxuXHJcbiAgdmFyIEljb24gPSBDbGFzcy5leHRlbmQoe1xyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKiBAYWthIEljb24gb3B0aW9uc1xyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gaWNvblVybDogU3RyaW5nID0gbnVsbFxyXG4gIFx0ICogKioocmVxdWlyZWQpKiogVGhlIFVSTCB0byB0aGUgaWNvbiBpbWFnZSAoYWJzb2x1dGUgb3IgcmVsYXRpdmUgdG8geW91ciBzY3JpcHQgcGF0aCkuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBpY29uUmV0aW5hVXJsOiBTdHJpbmcgPSBudWxsXHJcbiAgXHQgKiBUaGUgVVJMIHRvIGEgcmV0aW5hIHNpemVkIHZlcnNpb24gb2YgdGhlIGljb24gaW1hZ2UgKGFic29sdXRlIG9yIHJlbGF0aXZlIHRvIHlvdXJcclxuICBcdCAqIHNjcmlwdCBwYXRoKS4gVXNlZCBmb3IgUmV0aW5hIHNjcmVlbiBkZXZpY2VzLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gaWNvblNpemU6IFBvaW50ID0gbnVsbFxyXG4gIFx0ICogU2l6ZSBvZiB0aGUgaWNvbiBpbWFnZSBpbiBwaXhlbHMuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBpY29uQW5jaG9yOiBQb2ludCA9IG51bGxcclxuICBcdCAqIFRoZSBjb29yZGluYXRlcyBvZiB0aGUgXCJ0aXBcIiBvZiB0aGUgaWNvbiAocmVsYXRpdmUgdG8gaXRzIHRvcCBsZWZ0IGNvcm5lcikuIFRoZSBpY29uXHJcbiAgXHQgKiB3aWxsIGJlIGFsaWduZWQgc28gdGhhdCB0aGlzIHBvaW50IGlzIGF0IHRoZSBtYXJrZXIncyBnZW9ncmFwaGljYWwgbG9jYXRpb24uIENlbnRlcmVkXHJcbiAgXHQgKiBieSBkZWZhdWx0IGlmIHNpemUgaXMgc3BlY2lmaWVkLCBhbHNvIGNhbiBiZSBzZXQgaW4gQ1NTIHdpdGggbmVnYXRpdmUgbWFyZ2lucy5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHBvcHVwQW5jaG9yOiBQb2ludCA9IFswLCAwXVxyXG4gIFx0ICogVGhlIGNvb3JkaW5hdGVzIG9mIHRoZSBwb2ludCBmcm9tIHdoaWNoIHBvcHVwcyB3aWxsIFwib3BlblwiLCByZWxhdGl2ZSB0byB0aGUgaWNvbiBhbmNob3IuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiB0b29sdGlwQW5jaG9yOiBQb2ludCA9IFswLCAwXVxyXG4gIFx0ICogVGhlIGNvb3JkaW5hdGVzIG9mIHRoZSBwb2ludCBmcm9tIHdoaWNoIHRvb2x0aXBzIHdpbGwgXCJvcGVuXCIsIHJlbGF0aXZlIHRvIHRoZSBpY29uIGFuY2hvci5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd1VybDogU3RyaW5nID0gbnVsbFxyXG4gIFx0ICogVGhlIFVSTCB0byB0aGUgaWNvbiBzaGFkb3cgaW1hZ2UuIElmIG5vdCBzcGVjaWZpZWQsIG5vIHNoYWRvdyBpbWFnZSB3aWxsIGJlIGNyZWF0ZWQuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBzaGFkb3dSZXRpbmFVcmw6IFN0cmluZyA9IG51bGxcclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd1NpemU6IFBvaW50ID0gbnVsbFxyXG4gIFx0ICogU2l6ZSBvZiB0aGUgc2hhZG93IGltYWdlIGluIHBpeGVscy5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd0FuY2hvcjogUG9pbnQgPSBudWxsXHJcbiAgXHQgKiBUaGUgY29vcmRpbmF0ZXMgb2YgdGhlIFwidGlwXCIgb2YgdGhlIHNoYWRvdyAocmVsYXRpdmUgdG8gaXRzIHRvcCBsZWZ0IGNvcm5lcikgKHRoZSBzYW1lXHJcbiAgXHQgKiBhcyBpY29uQW5jaG9yIGlmIG5vdCBzcGVjaWZpZWQpLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xyXG4gIFx0ICogQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gYm90aCBpY29uIGFuZCBzaGFkb3cgaW1hZ2VzLiBFbXB0eSBieSBkZWZhdWx0LlxyXG4gIFx0ICovXHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHRwb3B1cEFuY2hvcjogWzAsIDBdLFxyXG4gIFx0XHR0b29sdGlwQW5jaG9yOiBbMCwgMF0sXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNyb3NzT3JpZ2luOiBCb29sZWFufFN0cmluZyA9IGZhbHNlXHJcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIGNyb3NzT3JpZ2luIGF0dHJpYnV0ZSB3aWxsIGJlIGFkZGVkIHRvIHRoZSB0aWxlcy5cclxuICBcdFx0Ly8gSWYgYSBTdHJpbmcgaXMgcHJvdmlkZWQsIGFsbCB0aWxlcyB3aWxsIGhhdmUgdGhlaXIgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHNldCB0byB0aGUgU3RyaW5nIHByb3ZpZGVkLiBUaGlzIGlzIG5lZWRlZCBpZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGlsZSBwaXhlbCBkYXRhLlxyXG4gIFx0XHQvLyBSZWZlciB0byBbQ09SUyBTZXR0aW5nc10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9DT1JTX3NldHRpbmdzX2F0dHJpYnV0ZXMpIGZvciB2YWxpZCBTdHJpbmcgdmFsdWVzLlxyXG4gIFx0XHRjcm9zc09yaWdpbjogZmFsc2VcclxuICBcdH0sXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjcmVhdGVJY29uKG9sZEljb24/OiBIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBDYWxsZWQgaW50ZXJuYWxseSB3aGVuIHRoZSBpY29uIGhhcyB0byBiZSBzaG93biwgcmV0dXJucyBhIGA8aW1nPmAgSFRNTCBlbGVtZW50XHJcbiAgXHQvLyBzdHlsZWQgYWNjb3JkaW5nIHRvIHRoZSBvcHRpb25zLlxyXG4gIFx0Y3JlYXRlSWNvbjogZnVuY3Rpb24gKG9sZEljb24pIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2NyZWF0ZUljb24oJ2ljb24nLCBvbGRJY29uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjcmVhdGVTaGFkb3cob2xkSWNvbj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIEFzIGBjcmVhdGVJY29uYCwgYnV0IGZvciB0aGUgc2hhZG93IGJlbmVhdGggaXQuXHJcbiAgXHRjcmVhdGVTaGFkb3c6IGZ1bmN0aW9uIChvbGRJY29uKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jcmVhdGVJY29uKCdzaGFkb3cnLCBvbGRJY29uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NyZWF0ZUljb246IGZ1bmN0aW9uIChuYW1lLCBvbGRJY29uKSB7XHJcbiAgXHRcdHZhciBzcmMgPSB0aGlzLl9nZXRJY29uVXJsKG5hbWUpO1xyXG5cclxuICBcdFx0aWYgKCFzcmMpIHtcclxuICBcdFx0XHRpZiAobmFtZSA9PT0gJ2ljb24nKSB7XHJcbiAgXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ2ljb25Vcmwgbm90IHNldCBpbiBJY29uIG9wdGlvbnMgKHNlZSB0aGUgZG9jcykuJyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdHJldHVybiBudWxsO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgaW1nID0gdGhpcy5fY3JlYXRlSW1nKHNyYywgb2xkSWNvbiAmJiBvbGRJY29uLnRhZ05hbWUgPT09ICdJTUcnID8gb2xkSWNvbiA6IG51bGwpO1xyXG4gIFx0XHR0aGlzLl9zZXRJY29uU3R5bGVzKGltZywgbmFtZSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luIHx8IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbiA9PT0gJycpIHtcclxuICBcdFx0XHRpbWcuY3Jvc3NPcmlnaW4gPSB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09IHRydWUgPyAnJyA6IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIGltZztcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldEljb25TdHlsZXM6IGZ1bmN0aW9uIChpbWcsIG5hbWUpIHtcclxuICBcdFx0dmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcbiAgXHRcdHZhciBzaXplT3B0aW9uID0gb3B0aW9uc1tuYW1lICsgJ1NpemUnXTtcclxuXHJcbiAgXHRcdGlmICh0eXBlb2Ygc2l6ZU9wdGlvbiA9PT0gJ251bWJlcicpIHtcclxuICBcdFx0XHRzaXplT3B0aW9uID0gW3NpemVPcHRpb24sIHNpemVPcHRpb25dO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc2l6ZSA9IHRvUG9pbnQoc2l6ZU9wdGlvbiksXHJcbiAgXHRcdCAgICBhbmNob3IgPSB0b1BvaW50KG5hbWUgPT09ICdzaGFkb3cnICYmIG9wdGlvbnMuc2hhZG93QW5jaG9yIHx8IG9wdGlvbnMuaWNvbkFuY2hvciB8fFxyXG4gIFx0XHQgICAgICAgICAgICBzaXplICYmIHNpemUuZGl2aWRlQnkoMiwgdHJ1ZSkpO1xyXG5cclxuICBcdFx0aW1nLmNsYXNzTmFtZSA9ICdsZWFmbGV0LW1hcmtlci0nICsgbmFtZSArICcgJyArIChvcHRpb25zLmNsYXNzTmFtZSB8fCAnJyk7XHJcblxyXG4gIFx0XHRpZiAoYW5jaG9yKSB7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLm1hcmdpbkxlZnQgPSAoLWFuY2hvci54KSArICdweCc7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLm1hcmdpblRvcCAgPSAoLWFuY2hvci55KSArICdweCc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChzaXplKSB7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLndpZHRoICA9IHNpemUueCArICdweCc7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLmhlaWdodCA9IHNpemUueSArICdweCc7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2NyZWF0ZUltZzogZnVuY3Rpb24gKHNyYywgZWwpIHtcclxuICBcdFx0ZWwgPSBlbCB8fCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbWcnKTtcclxuICBcdFx0ZWwuc3JjID0gc3JjO1xyXG4gIFx0XHRyZXR1cm4gZWw7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRJY29uVXJsOiBmdW5jdGlvbiAobmFtZSkge1xyXG4gIFx0XHRyZXR1cm4gQnJvd3Nlci5yZXRpbmEgJiYgdGhpcy5vcHRpb25zW25hbWUgKyAnUmV0aW5hVXJsJ10gfHwgdGhpcy5vcHRpb25zW25hbWUgKyAnVXJsJ107XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLmljb24ob3B0aW9uczogSWNvbiBvcHRpb25zKVxyXG4gIC8vIENyZWF0ZXMgYW4gaWNvbiBpbnN0YW5jZSB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxyXG4gIGZ1bmN0aW9uIGljb24ob3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBJY29uKG9wdGlvbnMpO1xyXG4gIH1cblxuICAvKlxuICAgKiBAbWluaWNsYXNzIEljb24uRGVmYXVsdCAoSWNvbilcbiAgICogQGFrYSBMLkljb24uRGVmYXVsdFxuICAgKiBAc2VjdGlvblxuICAgKlxuICAgKiBBIHRyaXZpYWwgc3ViY2xhc3Mgb2YgYEljb25gLCByZXByZXNlbnRzIHRoZSBpY29uIHRvIHVzZSBpbiBgTWFya2VyYHMgd2hlblxuICAgKiBubyBpY29uIGlzIHNwZWNpZmllZC4gUG9pbnRzIHRvIHRoZSBibHVlIG1hcmtlciBpbWFnZSBkaXN0cmlidXRlZCB3aXRoIExlYWZsZXRcbiAgICogcmVsZWFzZXMuXG4gICAqXG4gICAqIEluIG9yZGVyIHRvIGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCBpY29uLCBqdXN0IGNoYW5nZSB0aGUgcHJvcGVydGllcyBvZiBgTC5JY29uLkRlZmF1bHQucHJvdG90eXBlLm9wdGlvbnNgXG4gICAqICh3aGljaCBpcyBhIHNldCBvZiBgSWNvbiBvcHRpb25zYCkuXG4gICAqXG4gICAqIElmIHlvdSB3YW50IHRvIF9jb21wbGV0ZWx5XyByZXBsYWNlIHRoZSBkZWZhdWx0IGljb24sIG92ZXJyaWRlIHRoZVxuICAgKiBgTC5NYXJrZXIucHJvdG90eXBlLm9wdGlvbnMuaWNvbmAgd2l0aCB5b3VyIG93biBpY29uIGluc3RlYWQuXG4gICAqL1xuXG4gIHZhciBJY29uRGVmYXVsdCA9IEljb24uZXh0ZW5kKHtcblxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGljb25Vcmw6ICAgICAgICdtYXJrZXItaWNvbi5wbmcnLFxuICBcdFx0aWNvblJldGluYVVybDogJ21hcmtlci1pY29uLTJ4LnBuZycsXG4gIFx0XHRzaGFkb3dVcmw6ICAgICAnbWFya2VyLXNoYWRvdy5wbmcnLFxuICBcdFx0aWNvblNpemU6ICAgIFsyNSwgNDFdLFxuICBcdFx0aWNvbkFuY2hvcjogIFsxMiwgNDFdLFxuICBcdFx0cG9wdXBBbmNob3I6IFsxLCAtMzRdLFxuICBcdFx0dG9vbHRpcEFuY2hvcjogWzE2LCAtMjhdLFxuICBcdFx0c2hhZG93U2l6ZTogIFs0MSwgNDFdXG4gIFx0fSxcblxuICBcdF9nZXRJY29uVXJsOiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0aWYgKHR5cGVvZiBJY29uRGVmYXVsdC5pbWFnZVBhdGggIT09ICdzdHJpbmcnKSB7XHQvLyBEZXByZWNhdGVkLCBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eSBvbmx5XG4gIFx0XHRcdEljb25EZWZhdWx0LmltYWdlUGF0aCA9IHRoaXMuX2RldGVjdEljb25QYXRoKCk7XG4gIFx0XHR9XG5cbiAgXHRcdC8vIEBvcHRpb24gaW1hZ2VQYXRoOiBTdHJpbmdcbiAgXHRcdC8vIGBJY29uLkRlZmF1bHRgIHdpbGwgdHJ5IHRvIGF1dG8tZGV0ZWN0IHRoZSBsb2NhdGlvbiBvZiB0aGVcbiAgXHRcdC8vIGJsdWUgaWNvbiBpbWFnZXMuIElmIHlvdSBhcmUgcGxhY2luZyB0aGVzZSBpbWFnZXMgaW4gYSBub24tc3RhbmRhcmRcbiAgXHRcdC8vIHdheSwgc2V0IHRoaXMgb3B0aW9uIHRvIHBvaW50IHRvIHRoZSByaWdodCBwYXRoLlxuICBcdFx0cmV0dXJuICh0aGlzLm9wdGlvbnMuaW1hZ2VQYXRoIHx8IEljb25EZWZhdWx0LmltYWdlUGF0aCkgKyBJY29uLnByb3RvdHlwZS5fZ2V0SWNvblVybC5jYWxsKHRoaXMsIG5hbWUpO1xuICBcdH0sXG5cbiAgXHRfc3RyaXBVcmw6IGZ1bmN0aW9uIChwYXRoKSB7XHQvLyBzZXBhcmF0ZSBmdW5jdGlvbiB0byB1c2UgaW4gdGVzdHNcbiAgXHRcdHZhciBzdHJpcCA9IGZ1bmN0aW9uIChzdHIsIHJlLCBpZHgpIHtcbiAgXHRcdFx0dmFyIG1hdGNoID0gcmUuZXhlYyhzdHIpO1xuICBcdFx0XHRyZXR1cm4gbWF0Y2ggJiYgbWF0Y2hbaWR4XTtcbiAgXHRcdH07XG4gIFx0XHRwYXRoID0gc3RyaXAocGF0aCwgL151cmxcXCgoWydcIl0pPyguKylcXDFcXCkkLywgMik7XG4gIFx0XHRyZXR1cm4gcGF0aCAmJiBzdHJpcChwYXRoLCAvXiguKiltYXJrZXItaWNvblxcLnBuZyQvLCAxKTtcbiAgXHR9LFxuXG4gIFx0X2RldGVjdEljb25QYXRoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgZWwgPSBjcmVhdGUkMSgnZGl2JywgICdsZWFmbGV0LWRlZmF1bHQtaWNvbi1wYXRoJywgZG9jdW1lbnQuYm9keSk7XG4gIFx0XHR2YXIgcGF0aCA9IGdldFN0eWxlKGVsLCAnYmFja2dyb3VuZC1pbWFnZScpIHx8XG4gIFx0XHQgICAgICAgICAgIGdldFN0eWxlKGVsLCAnYmFja2dyb3VuZEltYWdlJyk7XHQvLyBJRThcblxuICBcdFx0ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbCk7XG4gIFx0XHRwYXRoID0gdGhpcy5fc3RyaXBVcmwocGF0aCk7XG4gIFx0XHRpZiAocGF0aCkgeyByZXR1cm4gcGF0aDsgfVxuICBcdFx0dmFyIGxpbmsgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW2hyZWYkPVwibGVhZmxldC5jc3NcIl0nKTtcbiAgXHRcdGlmICghbGluaykgeyByZXR1cm4gJyc7IH1cbiAgXHRcdHJldHVybiBsaW5rLmhyZWYuc3Vic3RyaW5nKDAsIGxpbmsuaHJlZi5sZW5ndGggLSAnbGVhZmxldC5jc3MnLmxlbmd0aCAtIDEpO1xuICBcdH1cbiAgfSk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLk1hcmtlckRyYWcgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IEwuTWFya2VyIHRvIG1ha2UgdGhlIG1hcmtlcnMgZHJhZ2dhYmxlLlxuICAgKi9cblxuXG4gIC8qIEBuYW1lc3BhY2UgTWFya2VyXG4gICAqIEBzZWN0aW9uIEludGVyYWN0aW9uIGhhbmRsZXJzXG4gICAqXG4gICAqIEludGVyYWN0aW9uIGhhbmRsZXJzIGFyZSBwcm9wZXJ0aWVzIG9mIGEgbWFya2VyIGluc3RhbmNlIHRoYXQgYWxsb3cgeW91IHRvIGNvbnRyb2wgaW50ZXJhY3Rpb24gYmVoYXZpb3IgaW4gcnVudGltZSwgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIGNlcnRhaW4gZmVhdHVyZXMgc3VjaCBhcyBkcmFnZ2luZyAoc2VlIGBIYW5kbGVyYCBtZXRob2RzKS4gRXhhbXBsZTpcbiAgICpcbiAgICogYGBganNcbiAgICogbWFya2VyLmRyYWdnaW5nLmRpc2FibGUoKTtcbiAgICogYGBgXG4gICAqXG4gICAqIEBwcm9wZXJ0eSBkcmFnZ2luZzogSGFuZGxlclxuICAgKiBNYXJrZXIgZHJhZ2dpbmcgaGFuZGxlciAoYnkgYm90aCBtb3VzZSBhbmQgdG91Y2gpLiBPbmx5IHZhbGlkIHdoZW4gdGhlIG1hcmtlciBpcyBvbiB0aGUgbWFwIChPdGhlcndpc2Ugc2V0IFtgbWFya2VyLm9wdGlvbnMuZHJhZ2dhYmxlYF0oI21hcmtlci1kcmFnZ2FibGUpKS5cbiAgICovXG5cbiAgdmFyIE1hcmtlckRyYWcgPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcmtlcikge1xuICBcdFx0dGhpcy5fbWFya2VyID0gbWFya2VyO1xuICBcdH0sXG5cbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGljb24gPSB0aGlzLl9tYXJrZXIuX2ljb247XG5cbiAgXHRcdGlmICghdGhpcy5fZHJhZ2dhYmxlKSB7XG4gIFx0XHRcdHRoaXMuX2RyYWdnYWJsZSA9IG5ldyBEcmFnZ2FibGUoaWNvbiwgaWNvbiwgdHJ1ZSk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2RyYWdnYWJsZS5vbih7XG4gIFx0XHRcdGRyYWdzdGFydDogdGhpcy5fb25EcmFnU3RhcnQsXG4gIFx0XHRcdHByZWRyYWc6IHRoaXMuX29uUHJlRHJhZyxcbiAgXHRcdFx0ZHJhZzogdGhpcy5fb25EcmFnLFxuICBcdFx0XHRkcmFnZW5kOiB0aGlzLl9vbkRyYWdFbmRcbiAgXHRcdH0sIHRoaXMpLmVuYWJsZSgpO1xuXG4gIFx0XHRhZGRDbGFzcyhpY29uLCAnbGVhZmxldC1tYXJrZXItZHJhZ2dhYmxlJyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9kcmFnZ2FibGUub2ZmKHtcbiAgXHRcdFx0ZHJhZ3N0YXJ0OiB0aGlzLl9vbkRyYWdTdGFydCxcbiAgXHRcdFx0cHJlZHJhZzogdGhpcy5fb25QcmVEcmFnLFxuICBcdFx0XHRkcmFnOiB0aGlzLl9vbkRyYWcsXG4gIFx0XHRcdGRyYWdlbmQ6IHRoaXMuX29uRHJhZ0VuZFxuICBcdFx0fSwgdGhpcykuZGlzYWJsZSgpO1xuXG4gIFx0XHRpZiAodGhpcy5fbWFya2VyLl9pY29uKSB7XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX21hcmtlci5faWNvbiwgJ2xlYWZsZXQtbWFya2VyLWRyYWdnYWJsZScpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRtb3ZlZDogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2RyYWdnYWJsZSAmJiB0aGlzLl9kcmFnZ2FibGUuX21vdmVkO1xuICBcdH0sXG5cbiAgXHRfYWRqdXN0UGFuOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIG1hcmtlciA9IHRoaXMuX21hcmtlcixcbiAgXHRcdCAgICBtYXAgPSBtYXJrZXIuX21hcCxcbiAgXHRcdCAgICBzcGVlZCA9IHRoaXMuX21hcmtlci5vcHRpb25zLmF1dG9QYW5TcGVlZCxcbiAgXHRcdCAgICBwYWRkaW5nID0gdGhpcy5fbWFya2VyLm9wdGlvbnMuYXV0b1BhblBhZGRpbmcsXG4gIFx0XHQgICAgaWNvblBvcyA9IGdldFBvc2l0aW9uKG1hcmtlci5faWNvbiksXG4gIFx0XHQgICAgYm91bmRzID0gbWFwLmdldFBpeGVsQm91bmRzKCksXG4gIFx0XHQgICAgb3JpZ2luID0gbWFwLmdldFBpeGVsT3JpZ2luKCk7XG5cbiAgXHRcdHZhciBwYW5Cb3VuZHMgPSB0b0JvdW5kcyhcbiAgXHRcdFx0Ym91bmRzLm1pbi5fc3VidHJhY3Qob3JpZ2luKS5hZGQocGFkZGluZyksXG4gIFx0XHRcdGJvdW5kcy5tYXguX3N1YnRyYWN0KG9yaWdpbikuc3VidHJhY3QocGFkZGluZylcbiAgXHRcdCk7XG5cbiAgXHRcdGlmICghcGFuQm91bmRzLmNvbnRhaW5zKGljb25Qb3MpKSB7XG4gIFx0XHRcdC8vIENvbXB1dGUgaW5jcmVtZW50YWwgbW92ZW1lbnRcbiAgXHRcdFx0dmFyIG1vdmVtZW50ID0gdG9Qb2ludChcbiAgXHRcdFx0XHQoTWF0aC5tYXgocGFuQm91bmRzLm1heC54LCBpY29uUG9zLngpIC0gcGFuQm91bmRzLm1heC54KSAvIChib3VuZHMubWF4LnggLSBwYW5Cb3VuZHMubWF4LngpIC1cbiAgXHRcdFx0XHQoTWF0aC5taW4ocGFuQm91bmRzLm1pbi54LCBpY29uUG9zLngpIC0gcGFuQm91bmRzLm1pbi54KSAvIChib3VuZHMubWluLnggLSBwYW5Cb3VuZHMubWluLngpLFxuXG4gIFx0XHRcdFx0KE1hdGgubWF4KHBhbkJvdW5kcy5tYXgueSwgaWNvblBvcy55KSAtIHBhbkJvdW5kcy5tYXgueSkgLyAoYm91bmRzLm1heC55IC0gcGFuQm91bmRzLm1heC55KSAtXG4gIFx0XHRcdFx0KE1hdGgubWluKHBhbkJvdW5kcy5taW4ueSwgaWNvblBvcy55KSAtIHBhbkJvdW5kcy5taW4ueSkgLyAoYm91bmRzLm1pbi55IC0gcGFuQm91bmRzLm1pbi55KVxuICBcdFx0XHQpLm11bHRpcGx5Qnkoc3BlZWQpO1xuXG4gIFx0XHRcdG1hcC5wYW5CeShtb3ZlbWVudCwge2FuaW1hdGU6IGZhbHNlfSk7XG5cbiAgXHRcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MuX2FkZChtb3ZlbWVudCk7XG4gIFx0XHRcdHRoaXMuX2RyYWdnYWJsZS5fc3RhcnRQb3MuX2FkZChtb3ZlbWVudCk7XG5cbiAgXHRcdFx0c2V0UG9zaXRpb24obWFya2VyLl9pY29uLCB0aGlzLl9kcmFnZ2FibGUuX25ld1Bvcyk7XG4gIFx0XHRcdHRoaXMuX29uRHJhZyhlKTtcblxuICBcdFx0XHR0aGlzLl9wYW5SZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZSh0aGlzLl9hZGp1c3RQYW4uYmluZCh0aGlzLCBlKSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbkRyYWdTdGFydDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gQHNlY3Rpb24gRHJhZ2dpbmcgZXZlbnRzXG4gIFx0XHQvLyBAZXZlbnQgZHJhZ3N0YXJ0OiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBzdGFydHMgZHJhZ2dpbmcgdGhlIG1hcmtlci5cblxuICBcdFx0Ly8gQGV2ZW50IG1vdmVzdGFydDogRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcmtlciBzdGFydHMgbW92aW5nIChiZWNhdXNlIG9mIGRyYWdnaW5nKS5cblxuICBcdFx0dGhpcy5fb2xkTGF0TG5nID0gdGhpcy5fbWFya2VyLmdldExhdExuZygpO1xuXG4gIFx0XHQvLyBXaGVuIHVzaW5nIEVTNiBpbXBvcnRzIGl0IGNvdWxkIG5vdCBiZSBzZXQgd2hlbiBgUG9wdXBgIHdhcyBub3QgaW1wb3J0ZWQgYXMgd2VsbFxuICBcdFx0dGhpcy5fbWFya2VyLmNsb3NlUG9wdXAgJiYgdGhpcy5fbWFya2VyLmNsb3NlUG9wdXAoKTtcblxuICBcdFx0dGhpcy5fbWFya2VyXG4gIFx0XHRcdC5maXJlKCdtb3Zlc3RhcnQnKVxuICBcdFx0XHQuZmlyZSgnZHJhZ3N0YXJ0Jyk7XG4gIFx0fSxcblxuICBcdF9vblByZURyYWc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFya2VyLm9wdGlvbnMuYXV0b1Bhbikge1xuICBcdFx0XHRjYW5jZWxBbmltRnJhbWUodGhpcy5fcGFuUmVxdWVzdCk7XG4gIFx0XHRcdHRoaXMuX3BhblJlcXVlc3QgPSByZXF1ZXN0QW5pbUZyYW1lKHRoaXMuX2FkanVzdFBhbi5iaW5kKHRoaXMsIGUpKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uRHJhZzogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXJrZXIgPSB0aGlzLl9tYXJrZXIsXG4gIFx0XHQgICAgc2hhZG93ID0gbWFya2VyLl9zaGFkb3csXG4gIFx0XHQgICAgaWNvblBvcyA9IGdldFBvc2l0aW9uKG1hcmtlci5faWNvbiksXG4gIFx0XHQgICAgbGF0bG5nID0gbWFya2VyLl9tYXAubGF5ZXJQb2ludFRvTGF0TG5nKGljb25Qb3MpO1xuXG4gIFx0XHQvLyB1cGRhdGUgc2hhZG93IHBvc2l0aW9uXG4gIFx0XHRpZiAoc2hhZG93KSB7XG4gIFx0XHRcdHNldFBvc2l0aW9uKHNoYWRvdywgaWNvblBvcyk7XG4gIFx0XHR9XG5cbiAgXHRcdG1hcmtlci5fbGF0bG5nID0gbGF0bG5nO1xuICBcdFx0ZS5sYXRsbmcgPSBsYXRsbmc7XG4gIFx0XHRlLm9sZExhdExuZyA9IHRoaXMuX29sZExhdExuZztcblxuICBcdFx0Ly8gQGV2ZW50IGRyYWc6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCByZXBlYXRlZGx5IHdoaWxlIHRoZSB1c2VyIGRyYWdzIHRoZSBtYXJrZXIuXG4gIFx0XHRtYXJrZXJcbiAgXHRcdCAgICAuZmlyZSgnbW92ZScsIGUpXG4gIFx0XHQgICAgLmZpcmUoJ2RyYWcnLCBlKTtcbiAgXHR9LFxuXG4gIFx0X29uRHJhZ0VuZDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdC8vIEBldmVudCBkcmFnZW5kOiBEcmFnRW5kRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgc3RvcHMgZHJhZ2dpbmcgdGhlIG1hcmtlci5cblxuICBcdFx0IGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9wYW5SZXF1ZXN0KTtcblxuICBcdFx0Ly8gQGV2ZW50IG1vdmVlbmQ6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtYXJrZXIgc3RvcHMgbW92aW5nIChiZWNhdXNlIG9mIGRyYWdnaW5nKS5cbiAgXHRcdGRlbGV0ZSB0aGlzLl9vbGRMYXRMbmc7XG4gIFx0XHR0aGlzLl9tYXJrZXJcbiAgXHRcdCAgICAuZmlyZSgnbW92ZWVuZCcpXG4gIFx0XHQgICAgLmZpcmUoJ2RyYWdlbmQnLCBlKTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIE1hcmtlclxyXG4gICAqIEBpbmhlcml0cyBJbnRlcmFjdGl2ZSBsYXllclxyXG4gICAqIEBha2EgTC5NYXJrZXJcclxuICAgKiBMLk1hcmtlciBpcyB1c2VkIHRvIGRpc3BsYXkgY2xpY2thYmxlL2RyYWdnYWJsZSBpY29ucyBvbiB0aGUgbWFwLiBFeHRlbmRzIGBMYXllcmAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLm1hcmtlcihbNTAuNSwgMzAuNV0pLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBNYXJrZXIgPSBMYXllci5leHRlbmQoe1xyXG5cclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIE1hcmtlciBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gaWNvbjogSWNvbiA9ICpcclxuICBcdFx0Ly8gSWNvbiBpbnN0YW5jZSB0byB1c2UgZm9yIHJlbmRlcmluZyB0aGUgbWFya2VyLlxyXG4gIFx0XHQvLyBTZWUgW0ljb24gZG9jdW1lbnRhdGlvbl0oI0wuSWNvbikgZm9yIGRldGFpbHMgb24gaG93IHRvIGN1c3RvbWl6ZSB0aGUgbWFya2VyIGljb24uXHJcbiAgXHRcdC8vIElmIG5vdCBzcGVjaWZpZWQsIGEgY29tbW9uIGluc3RhbmNlIG9mIGBMLkljb24uRGVmYXVsdGAgaXMgdXNlZC5cclxuICBcdFx0aWNvbjogbmV3IEljb25EZWZhdWx0KCksXHJcblxyXG4gIFx0XHQvLyBPcHRpb24gaW5oZXJpdGVkIGZyb20gXCJJbnRlcmFjdGl2ZSBsYXllclwiIGFic3RyYWN0IGNsYXNzXHJcbiAgXHRcdGludGVyYWN0aXZlOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBrZXlib2FyZDogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgbWFya2VyIGNhbiBiZSB0YWJiZWQgdG8gd2l0aCBhIGtleWJvYXJkIGFuZCBjbGlja2VkIGJ5IHByZXNzaW5nIGVudGVyLlxyXG4gIFx0XHRrZXlib2FyZDogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdGl0bGU6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBicm93c2VyIHRvb2x0aXAgdGhhdCBhcHBlYXIgb24gbWFya2VyIGhvdmVyIChubyB0b29sdGlwIGJ5IGRlZmF1bHQpLlxyXG4gIFx0XHQvLyBbVXNlZnVsIGZvciBhY2Nlc3NpYmlsaXR5XShodHRwczovL2xlYWZsZXRqcy5jb20vZXhhbXBsZXMvYWNjZXNzaWJpbGl0eS8jbWFya2Vycy1tdXN0LWJlLWxhYmVsbGVkKS5cclxuICBcdFx0dGl0bGU6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhbHQ6IFN0cmluZyA9ICdNYXJrZXInXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBgYWx0YCBhdHRyaWJ1dGUgb2YgdGhlIGljb24gaW1hZ2UuXHJcbiAgXHRcdC8vIFtVc2VmdWwgZm9yIGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vbGVhZmxldGpzLmNvbS9leGFtcGxlcy9hY2Nlc3NpYmlsaXR5LyNtYXJrZXJzLW11c3QtYmUtbGFiZWxsZWQpLlxyXG4gIFx0XHRhbHQ6ICdNYXJrZXInLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6SW5kZXhPZmZzZXQ6IE51bWJlciA9IDBcclxuICBcdFx0Ly8gQnkgZGVmYXVsdCwgbWFya2VyIGltYWdlcyB6SW5kZXggaXMgc2V0IGF1dG9tYXRpY2FsbHkgYmFzZWQgb24gaXRzIGxhdGl0dWRlLiBVc2UgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgdG8gcHV0IHRoZSBtYXJrZXIgb24gdG9wIG9mIGFsbCBvdGhlcnMgKG9yIGJlbG93KSwgc3BlY2lmeWluZyBhIGhpZ2ggdmFsdWUgbGlrZSBgMTAwMGAgKG9yIGhpZ2ggbmVnYXRpdmUgdmFsdWUsIHJlc3BlY3RpdmVseSkuXHJcbiAgXHRcdHpJbmRleE9mZnNldDogMCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXHJcbiAgXHRcdC8vIFRoZSBvcGFjaXR5IG9mIHRoZSBtYXJrZXIuXHJcbiAgXHRcdG9wYWNpdHk6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHJpc2VPbkhvdmVyOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgbWFya2VyIHdpbGwgZ2V0IG9uIHRvcCBvZiBvdGhlcnMgd2hlbiB5b3UgaG92ZXIgdGhlIG1vdXNlIG92ZXIgaXQuXHJcbiAgXHRcdHJpc2VPbkhvdmVyOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmlzZU9mZnNldDogTnVtYmVyID0gMjUwXHJcbiAgXHRcdC8vIFRoZSB6LWluZGV4IG9mZnNldCB1c2VkIGZvciB0aGUgYHJpc2VPbkhvdmVyYCBmZWF0dXJlLlxyXG4gIFx0XHRyaXNlT2Zmc2V0OiAyNTAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICdtYXJrZXJQYW5lJ1xyXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSBtYXJrZXJzIGljb24gd2lsbCBiZSBhZGRlZC5cclxuICBcdFx0cGFuZTogJ21hcmtlclBhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBzaGFkb3dQYW5lOiBTdHJpbmcgPSAnc2hhZG93UGFuZSdcclxuICBcdFx0Ly8gYE1hcCBwYW5lYCB3aGVyZSB0aGUgbWFya2VycyBzaGFkb3cgd2lsbCBiZSBhZGRlZC5cclxuICBcdFx0c2hhZG93UGFuZTogJ3NoYWRvd1BhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBidWJibGluZ01vdXNlRXZlbnRzOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hlbiBgdHJ1ZWAsIGEgbW91c2UgZXZlbnQgb24gdGhpcyBtYXJrZXIgd2lsbCB0cmlnZ2VyIHRoZSBzYW1lIGV2ZW50IG9uIHRoZSBtYXBcclxuICBcdFx0Ly8gKHVubGVzcyBbYEwuRG9tRXZlbnQuc3RvcFByb3BhZ2F0aW9uYF0oI2RvbWV2ZW50LXN0b3Bwcm9wYWdhdGlvbikgaXMgdXNlZCkuXHJcbiAgXHRcdGJ1YmJsaW5nTW91c2VFdmVudHM6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuT25Gb2N1czogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hlbiBgdHJ1ZWAsIHRoZSBtYXAgd2lsbCBwYW4gd2hlbmV2ZXIgdGhlIG1hcmtlciBpcyBmb2N1c2VkICh2aWFcclxuICBcdFx0Ly8gZS5nLiBwcmVzc2luZyBgdGFiYCBvbiB0aGUga2V5Ym9hcmQpIHRvIGVuc3VyZSB0aGUgbWFya2VyIGlzXHJcbiAgXHRcdC8vIHZpc2libGUgd2l0aGluIHRoZSBtYXAncyBib3VuZHNcclxuICBcdFx0YXV0b1Bhbk9uRm9jdXM6IHRydWUsXHJcblxyXG4gIFx0XHQvLyBAc2VjdGlvbiBEcmFnZ2FibGUgbWFya2VyIG9wdGlvbnNcclxuICBcdFx0Ly8gQG9wdGlvbiBkcmFnZ2FibGU6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSBtYXJrZXIgaXMgZHJhZ2dhYmxlIHdpdGggbW91c2UvdG91Y2ggb3Igbm90LlxyXG4gIFx0XHRkcmFnZ2FibGU6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0byBwYW4gdGhlIG1hcCB3aGVuIGRyYWdnaW5nIHRoaXMgbWFya2VyIG5lYXIgaXRzIGVkZ2Ugb3Igbm90LlxyXG4gIFx0XHRhdXRvUGFuOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gYXV0b1BhblBhZGRpbmc6IFBvaW50ID0gUG9pbnQoNTAsIDUwKVxyXG4gIFx0XHQvLyBEaXN0YW5jZSAoaW4gcGl4ZWxzIHRvIHRoZSBsZWZ0L3JpZ2h0IGFuZCB0byB0aGUgdG9wL2JvdHRvbSkgb2YgdGhlXHJcbiAgXHRcdC8vIG1hcCBlZGdlIHRvIHN0YXJ0IHBhbm5pbmcgdGhlIG1hcC5cclxuICBcdFx0YXV0b1BhblBhZGRpbmc6IFs1MCwgNTBdLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuU3BlZWQ6IE51bWJlciA9IDEwXHJcbiAgXHRcdC8vIE51bWJlciBvZiBwaXhlbHMgdGhlIG1hcCBzaG91bGQgcGFuIGJ5LlxyXG4gIFx0XHRhdXRvUGFuU3BlZWQ6IDEwXHJcbiAgXHR9LFxyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKlxyXG4gIFx0ICogSW4gYWRkaXRpb24gdG8gW3NoYXJlZCBsYXllciBtZXRob2RzXSgjTGF5ZXIpIGxpa2UgYGFkZFRvKClgIGFuZCBgcmVtb3ZlKClgIGFuZCBbcG9wdXAgbWV0aG9kc10oI1BvcHVwKSBsaWtlIGJpbmRQb3B1cCgpIHlvdSBjYW4gYWxzbyB1c2UgdGhlIGZvbGxvd2luZyBtZXRob2RzOlxyXG4gIFx0ICovXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKGxhdGxuZywgb3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLl96b29tQW5pbWF0ZWQgPSB0aGlzLl96b29tQW5pbWF0ZWQgJiYgbWFwLm9wdGlvbnMubWFya2VyWm9vbUFuaW1hdGlvbjtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRtYXAub24oJ3pvb21hbmltJywgdGhpcy5fYW5pbWF0ZVpvb20sIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9pbml0SWNvbigpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRpZiAodGhpcy5kcmFnZ2luZyAmJiB0aGlzLmRyYWdnaW5nLmVuYWJsZWQoKSkge1xyXG4gIFx0XHRcdHRoaXMub3B0aW9ucy5kcmFnZ2FibGUgPSB0cnVlO1xyXG4gIFx0XHRcdHRoaXMuZHJhZ2dpbmcucmVtb3ZlSG9va3MoKTtcclxuICBcdFx0fVxyXG4gIFx0XHRkZWxldGUgdGhpcy5kcmFnZ2luZztcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRtYXAub2ZmKCd6b29tYW5pbScsIHRoaXMuX2FuaW1hdGVab29tLCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fcmVtb3ZlSWNvbigpO1xyXG4gIFx0XHR0aGlzLl9yZW1vdmVTaGFkb3coKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB7XHJcbiAgXHRcdFx0em9vbTogdGhpcy51cGRhdGUsXHJcbiAgXHRcdFx0dmlld3Jlc2V0OiB0aGlzLnVwZGF0ZVxyXG4gIFx0XHR9O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExhdExuZzogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IGdlb2dyYXBoaWNhbCBwb3NpdGlvbiBvZiB0aGUgbWFya2VyLlxyXG4gIFx0Z2V0TGF0TG5nOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXRsbmc7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TGF0TG5nKGxhdGxuZzogTGF0TG5nKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgbWFya2VyIHBvc2l0aW9uIHRvIHRoZSBnaXZlbiBwb2ludC5cclxuICBcdHNldExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgb2xkTGF0TG5nID0gdGhpcy5fbGF0bG5nO1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdmU6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcmtlciBpcyBtb3ZlZCB2aWEgW2BzZXRMYXRMbmdgXSgjbWFya2VyLXNldGxhdGxuZykgb3IgYnkgW2RyYWdnaW5nXSgjbWFya2VyLWRyYWdnaW5nKS4gT2xkIGFuZCBuZXcgY29vcmRpbmF0ZXMgYXJlIGluY2x1ZGVkIGluIGV2ZW50IGFyZ3VtZW50cyBhcyBgb2xkTGF0TG5nYCwgYGxhdGxuZ2AuXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ21vdmUnLCB7b2xkTGF0TG5nOiBvbGRMYXRMbmcsIGxhdGxuZzogdGhpcy5fbGF0bG5nfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0WkluZGV4T2Zmc2V0KG9mZnNldDogTnVtYmVyKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgW3pJbmRleCBvZmZzZXRdKCNtYXJrZXItemluZGV4b2Zmc2V0KSBvZiB0aGUgbWFya2VyLlxyXG4gIFx0c2V0WkluZGV4T2Zmc2V0OiBmdW5jdGlvbiAob2Zmc2V0KSB7XHJcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXhPZmZzZXQgPSBvZmZzZXQ7XHJcbiAgXHRcdHJldHVybiB0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEljb246IEljb25cclxuICBcdC8vIFJldHVybnMgdGhlIGN1cnJlbnQgaWNvbiB1c2VkIGJ5IHRoZSBtYXJrZXJcclxuICBcdGdldEljb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5pY29uO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldEljb24oaWNvbjogSWNvbik6IHRoaXNcclxuICBcdC8vIENoYW5nZXMgdGhlIG1hcmtlciBpY29uLlxyXG4gIFx0c2V0SWNvbjogZnVuY3Rpb24gKGljb24pIHtcclxuXHJcbiAgXHRcdHRoaXMub3B0aW9ucy5pY29uID0gaWNvbjtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0aGlzLl9pbml0SWNvbigpO1xyXG4gIFx0XHRcdHRoaXMudXBkYXRlKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuYmluZFBvcHVwKHRoaXMuX3BvcHVwLCB0aGlzLl9wb3B1cC5vcHRpb25zKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGdldEVsZW1lbnQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2ljb247XHJcbiAgXHR9LFxyXG5cclxuICBcdHVwZGF0ZTogZnVuY3Rpb24gKCkge1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ljb24gJiYgdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dmFyIHBvcyA9IHRoaXMuX21hcC5sYXRMbmdUb0xheWVyUG9pbnQodGhpcy5fbGF0bG5nKS5yb3VuZCgpO1xyXG4gIFx0XHRcdHRoaXMuX3NldFBvcyhwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRJY29uOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zLFxyXG4gIFx0XHQgICAgY2xhc3NUb0FkZCA9ICdsZWFmbGV0LXpvb20tJyArICh0aGlzLl96b29tQW5pbWF0ZWQgPyAnYW5pbWF0ZWQnIDogJ2hpZGUnKTtcclxuXHJcbiAgXHRcdHZhciBpY29uID0gb3B0aW9ucy5pY29uLmNyZWF0ZUljb24odGhpcy5faWNvbiksXHJcbiAgXHRcdCAgICBhZGRJY29uID0gZmFsc2U7XHJcblxyXG4gIFx0XHQvLyBpZiB3ZSdyZSBub3QgcmV1c2luZyB0aGUgaWNvbiwgcmVtb3ZlIHRoZSBvbGQgb25lIGFuZCBpbml0IG5ldyBvbmVcclxuICBcdFx0aWYgKGljb24gIT09IHRoaXMuX2ljb24pIHtcclxuICBcdFx0XHRpZiAodGhpcy5faWNvbikge1xyXG4gIFx0XHRcdFx0dGhpcy5fcmVtb3ZlSWNvbigpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRhZGRJY29uID0gdHJ1ZTtcclxuXHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMudGl0bGUpIHtcclxuICBcdFx0XHRcdGljb24udGl0bGUgPSBvcHRpb25zLnRpdGxlO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0aWYgKGljb24udGFnTmFtZSA9PT0gJ0lNRycpIHtcclxuICBcdFx0XHRcdGljb24uYWx0ID0gb3B0aW9ucy5hbHQgfHwgJyc7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRhZGRDbGFzcyhpY29uLCBjbGFzc1RvQWRkKTtcclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLmtleWJvYXJkKSB7XHJcbiAgXHRcdFx0aWNvbi50YWJJbmRleCA9ICcwJztcclxuICBcdFx0XHRpY29uLnNldEF0dHJpYnV0ZSgncm9sZScsICdidXR0b24nKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5faWNvbiA9IGljb247XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy5yaXNlT25Ib3Zlcikge1xyXG4gIFx0XHRcdHRoaXMub24oe1xyXG4gIFx0XHRcdFx0bW91c2VvdmVyOiB0aGlzLl9icmluZ1RvRnJvbnQsXHJcbiAgXHRcdFx0XHRtb3VzZW91dDogdGhpcy5fcmVzZXRaSW5kZXhcclxuICBcdFx0XHR9KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5hdXRvUGFuT25Gb2N1cykge1xyXG4gIFx0XHRcdG9uKGljb24sICdmb2N1cycsIHRoaXMuX3Bhbk9uRm9jdXMsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbmV3U2hhZG93ID0gb3B0aW9ucy5pY29uLmNyZWF0ZVNoYWRvdyh0aGlzLl9zaGFkb3cpLFxyXG4gIFx0XHQgICAgYWRkU2hhZG93ID0gZmFsc2U7XHJcblxyXG4gIFx0XHRpZiAobmV3U2hhZG93ICE9PSB0aGlzLl9zaGFkb3cpIHtcclxuICBcdFx0XHR0aGlzLl9yZW1vdmVTaGFkb3coKTtcclxuICBcdFx0XHRhZGRTaGFkb3cgPSB0cnVlO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAobmV3U2hhZG93KSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3MobmV3U2hhZG93LCBjbGFzc1RvQWRkKTtcclxuICBcdFx0XHRuZXdTaGFkb3cuYWx0ID0gJyc7XHJcbiAgXHRcdH1cclxuICBcdFx0dGhpcy5fc2hhZG93ID0gbmV3U2hhZG93O1xyXG5cclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLm9wYWNpdHkgPCAxKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcblxyXG5cclxuICBcdFx0aWYgKGFkZEljb24pIHtcclxuICBcdFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9pY29uKTtcclxuICBcdFx0fVxyXG4gIFx0XHR0aGlzLl9pbml0SW50ZXJhY3Rpb24oKTtcclxuICBcdFx0aWYgKG5ld1NoYWRvdyAmJiBhZGRTaGFkb3cpIHtcclxuICBcdFx0XHR0aGlzLmdldFBhbmUob3B0aW9ucy5zaGFkb3dQYW5lKS5hcHBlbmRDaGlsZCh0aGlzLl9zaGFkb3cpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZW1vdmVJY29uOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMucmlzZU9uSG92ZXIpIHtcclxuICBcdFx0XHR0aGlzLm9mZih7XHJcbiAgXHRcdFx0XHRtb3VzZW92ZXI6IHRoaXMuX2JyaW5nVG9Gcm9udCxcclxuICBcdFx0XHRcdG1vdXNlb3V0OiB0aGlzLl9yZXNldFpJbmRleFxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmF1dG9QYW5PbkZvY3VzKSB7XHJcbiAgXHRcdFx0b2ZmKHRoaXMuX2ljb24sICdmb2N1cycsIHRoaXMuX3Bhbk9uRm9jdXMsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZW1vdmUodGhpcy5faWNvbik7XHJcbiAgXHRcdHRoaXMucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faWNvbik7XHJcblxyXG4gIFx0XHR0aGlzLl9pY29uID0gbnVsbDtcclxuICBcdH0sXHJcblxyXG4gIFx0X3JlbW92ZVNoYWRvdzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAodGhpcy5fc2hhZG93KSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX3NoYWRvdyk7XHJcbiAgXHRcdH1cclxuICBcdFx0dGhpcy5fc2hhZG93ID0gbnVsbDtcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldFBvczogZnVuY3Rpb24gKHBvcykge1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ljb24pIHtcclxuICBcdFx0XHRzZXRQb3NpdGlvbih0aGlzLl9pY29uLCBwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fc2hhZG93KSB7XHJcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fc2hhZG93LCBwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl96SW5kZXggPSBwb3MueSArIHRoaXMub3B0aW9ucy56SW5kZXhPZmZzZXQ7XHJcblxyXG4gIFx0XHR0aGlzLl9yZXNldFpJbmRleCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlWkluZGV4OiBmdW5jdGlvbiAob2Zmc2V0KSB7XHJcbiAgXHRcdGlmICh0aGlzLl9pY29uKSB7XHJcbiAgXHRcdFx0dGhpcy5faWNvbi5zdHlsZS56SW5kZXggPSB0aGlzLl96SW5kZXggKyBvZmZzZXQ7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2FuaW1hdGVab29tOiBmdW5jdGlvbiAob3B0KSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAuX2xhdExuZ1RvTmV3TGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcsIG9wdC56b29tLCBvcHQuY2VudGVyKS5yb3VuZCgpO1xyXG5cclxuICBcdFx0dGhpcy5fc2V0UG9zKHBvcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0SW50ZXJhY3Rpb246IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmludGVyYWN0aXZlKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0YWRkQ2xhc3ModGhpcy5faWNvbiwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcclxuXHJcbiAgXHRcdHRoaXMuYWRkSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faWNvbik7XHJcblxyXG4gIFx0XHRpZiAoTWFya2VyRHJhZykge1xyXG4gIFx0XHRcdHZhciBkcmFnZ2FibGUgPSB0aGlzLm9wdGlvbnMuZHJhZ2dhYmxlO1xyXG4gIFx0XHRcdGlmICh0aGlzLmRyYWdnaW5nKSB7XHJcbiAgXHRcdFx0XHRkcmFnZ2FibGUgPSB0aGlzLmRyYWdnaW5nLmVuYWJsZWQoKTtcclxuICBcdFx0XHRcdHRoaXMuZHJhZ2dpbmcuZGlzYWJsZSgpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0dGhpcy5kcmFnZ2luZyA9IG5ldyBNYXJrZXJEcmFnKHRoaXMpO1xyXG5cclxuICBcdFx0XHRpZiAoZHJhZ2dhYmxlKSB7XHJcbiAgXHRcdFx0XHR0aGlzLmRyYWdnaW5nLmVuYWJsZSgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldE9wYWNpdHkob3BhY2l0eTogTnVtYmVyKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgb3BhY2l0eSBvZiB0aGUgbWFya2VyLlxyXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcclxuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIG9wYWNpdHkgPSB0aGlzLm9wdGlvbnMub3BhY2l0eTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9pY29uKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9pY29uLCBvcGFjaXR5KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMuX3NoYWRvdykge1xyXG4gIFx0XHRcdHNldE9wYWNpdHkodGhpcy5fc2hhZG93LCBvcGFjaXR5KTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfYnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX3VwZGF0ZVpJbmRleCh0aGlzLm9wdGlvbnMucmlzZU9mZnNldCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZXNldFpJbmRleDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoMCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9wYW5PbkZvY3VzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XHJcbiAgXHRcdGlmICghbWFwKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIGljb25PcHRzID0gdGhpcy5vcHRpb25zLmljb24ub3B0aW9ucztcclxuICBcdFx0dmFyIHNpemUgPSBpY29uT3B0cy5pY29uU2l6ZSA/IHRvUG9pbnQoaWNvbk9wdHMuaWNvblNpemUpIDogdG9Qb2ludCgwLCAwKTtcclxuICBcdFx0dmFyIGFuY2hvciA9IGljb25PcHRzLmljb25BbmNob3IgPyB0b1BvaW50KGljb25PcHRzLmljb25BbmNob3IpIDogdG9Qb2ludCgwLCAwKTtcclxuXHJcbiAgXHRcdG1hcC5wYW5JbnNpZGUodGhpcy5fbGF0bG5nLCB7XHJcbiAgXHRcdFx0cGFkZGluZ1RvcExlZnQ6IGFuY2hvcixcclxuICBcdFx0XHRwYWRkaW5nQm90dG9tUmlnaHQ6IHNpemUuc3VidHJhY3QoYW5jaG9yKVxyXG4gIFx0XHR9KTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldFBvcHVwQW5jaG9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMuaWNvbi5vcHRpb25zLnBvcHVwQW5jaG9yO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0VG9vbHRpcEFuY2hvcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmljb24ub3B0aW9ucy50b29sdGlwQW5jaG9yO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gZmFjdG9yeSBMLm1hcmtlcihsYXRsbmc6IExhdExuZywgb3B0aW9ucz8gOiBNYXJrZXIgb3B0aW9ucylcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5tYXJrZXIobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/IDogTWFya2VyIG9wdGlvbnMpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgTWFya2VyIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCBhbmQgb3B0aW9uYWxseSBhbiBvcHRpb25zIG9iamVjdC5cclxuICBmdW5jdGlvbiBtYXJrZXIobGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IE1hcmtlcihsYXRsbmcsIG9wdGlvbnMpO1xyXG4gIH1cblxuICAvKlxuICAgKiBAY2xhc3MgUGF0aFxuICAgKiBAYWthIEwuUGF0aFxuICAgKiBAaW5oZXJpdHMgSW50ZXJhY3RpdmUgbGF5ZXJcbiAgICpcbiAgICogQW4gYWJzdHJhY3QgY2xhc3MgdGhhdCBjb250YWlucyBvcHRpb25zIGFuZCBjb25zdGFudHMgc2hhcmVkIGJldHdlZW4gdmVjdG9yXG4gICAqIG92ZXJsYXlzIChQb2x5Z29uLCBQb2x5bGluZSwgQ2lyY2xlKS4gRG8gbm90IHVzZSBpdCBkaXJlY3RseS4gRXh0ZW5kcyBgTGF5ZXJgLlxuICAgKi9cblxuICB2YXIgUGF0aCA9IExheWVyLmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgUGF0aCBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiBzdHJva2U6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBXaGV0aGVyIHRvIGRyYXcgc3Ryb2tlIGFsb25nIHRoZSBwYXRoLiBTZXQgaXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIGJvcmRlcnMgb24gcG9seWdvbnMgb3IgY2lyY2xlcy5cbiAgXHRcdHN0cm9rZTogdHJ1ZSxcblxuICBcdFx0Ly8gQG9wdGlvbiBjb2xvcjogU3RyaW5nID0gJyMzMzg4ZmYnXG4gIFx0XHQvLyBTdHJva2UgY29sb3JcbiAgXHRcdGNvbG9yOiAnIzMzODhmZicsXG5cbiAgXHRcdC8vIEBvcHRpb24gd2VpZ2h0OiBOdW1iZXIgPSAzXG4gIFx0XHQvLyBTdHJva2Ugd2lkdGggaW4gcGl4ZWxzXG4gIFx0XHR3ZWlnaHQ6IDMsXG5cbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXG4gIFx0XHQvLyBTdHJva2Ugb3BhY2l0eVxuICBcdFx0b3BhY2l0eTogMSxcblxuICBcdFx0Ly8gQG9wdGlvbiBsaW5lQ2FwOiBTdHJpbmc9ICdyb3VuZCdcbiAgXHRcdC8vIEEgc3RyaW5nIHRoYXQgZGVmaW5lcyBbc2hhcGUgdG8gYmUgdXNlZCBhdCB0aGUgZW5kXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3N0cm9rZS1saW5lY2FwKSBvZiB0aGUgc3Ryb2tlLlxuICBcdFx0bGluZUNhcDogJ3JvdW5kJyxcblxuICBcdFx0Ly8gQG9wdGlvbiBsaW5lSm9pbjogU3RyaW5nID0gJ3JvdW5kJ1xuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIFtzaGFwZSB0byBiZSB1c2VkIGF0IHRoZSBjb3JuZXJzXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3N0cm9rZS1saW5lam9pbikgb2YgdGhlIHN0cm9rZS5cbiAgXHRcdGxpbmVKb2luOiAncm91bmQnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGRhc2hBcnJheTogU3RyaW5nID0gbnVsbFxuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIHRoZSBzdHJva2UgW2Rhc2ggcGF0dGVybl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9zdHJva2UtZGFzaGFycmF5KS4gRG9lc24ndCB3b3JrIG9uIGBDYW52YXNgLXBvd2VyZWQgbGF5ZXJzIGluIFtzb21lIG9sZCBicm93c2Vyc10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC9zZXRMaW5lRGFzaCNCcm93c2VyX2NvbXBhdGliaWxpdHkpLlxuICBcdFx0ZGFzaEFycmF5OiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGRhc2hPZmZzZXQ6IFN0cmluZyA9IG51bGxcbiAgXHRcdC8vIEEgc3RyaW5nIHRoYXQgZGVmaW5lcyB0aGUgW2Rpc3RhbmNlIGludG8gdGhlIGRhc2ggcGF0dGVybiB0byBzdGFydCB0aGUgZGFzaF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9zdHJva2UtZGFzaG9mZnNldCkuIERvZXNuJ3Qgd29yayBvbiBgQ2FudmFzYC1wb3dlcmVkIGxheWVycyBpbiBbc29tZSBvbGQgYnJvd3NlcnNdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQvc2V0TGluZURhc2gjQnJvd3Nlcl9jb21wYXRpYmlsaXR5KS5cbiAgXHRcdGRhc2hPZmZzZXQ6IG51bGwsXG5cbiAgXHRcdC8vIEBvcHRpb24gZmlsbDogQm9vbGVhbiA9IGRlcGVuZHNcbiAgXHRcdC8vIFdoZXRoZXIgdG8gZmlsbCB0aGUgcGF0aCB3aXRoIGNvbG9yLiBTZXQgaXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIGZpbGxpbmcgb24gcG9seWdvbnMgb3IgY2lyY2xlcy5cbiAgXHRcdGZpbGw6IGZhbHNlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGZpbGxDb2xvcjogU3RyaW5nID0gKlxuICBcdFx0Ly8gRmlsbCBjb2xvci4gRGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIHRoZSBbYGNvbG9yYF0oI3BhdGgtY29sb3IpIG9wdGlvblxuICBcdFx0ZmlsbENvbG9yOiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGZpbGxPcGFjaXR5OiBOdW1iZXIgPSAwLjJcbiAgXHRcdC8vIEZpbGwgb3BhY2l0eS5cbiAgXHRcdGZpbGxPcGFjaXR5OiAwLjIsXG5cbiAgXHRcdC8vIEBvcHRpb24gZmlsbFJ1bGU6IFN0cmluZyA9ICdldmVub2RkJ1xuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIFtob3cgdGhlIGluc2lkZSBvZiBhIHNoYXBlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL2ZpbGwtcnVsZSkgaXMgZGV0ZXJtaW5lZC5cbiAgXHRcdGZpbGxSdWxlOiAnZXZlbm9kZCcsXG5cbiAgXHRcdC8vIGNsYXNzTmFtZTogJycsXG5cbiAgXHRcdC8vIE9wdGlvbiBpbmhlcml0ZWQgZnJvbSBcIkludGVyYWN0aXZlIGxheWVyXCIgYWJzdHJhY3QgY2xhc3NcbiAgXHRcdGludGVyYWN0aXZlOiB0cnVlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGJ1YmJsaW5nTW91c2VFdmVudHM6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBXaGVuIGB0cnVlYCwgYSBtb3VzZSBldmVudCBvbiB0aGlzIHBhdGggd2lsbCB0cmlnZ2VyIHRoZSBzYW1lIGV2ZW50IG9uIHRoZSBtYXBcbiAgXHRcdC8vICh1bmxlc3MgW2BMLkRvbUV2ZW50LnN0b3BQcm9wYWdhdGlvbmBdKCNkb21ldmVudC1zdG9wcHJvcGFnYXRpb24pIGlzIHVzZWQpLlxuICBcdFx0YnViYmxpbmdNb3VzZUV2ZW50czogdHJ1ZVxuICBcdH0sXG5cbiAgXHRiZWZvcmVBZGQ6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdC8vIFJlbmRlcmVyIGlzIHNldCBoZXJlIGJlY2F1c2Ugd2UgbmVlZCB0byBjYWxsIHJlbmRlcmVyLmdldEV2ZW50c1xuICBcdFx0Ly8gYmVmb3JlIHRoaXMuZ2V0RXZlbnRzLlxuICBcdFx0dGhpcy5fcmVuZGVyZXIgPSBtYXAuZ2V0UmVuZGVyZXIodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5faW5pdFBhdGgodGhpcyk7XG4gIFx0XHR0aGlzLl9yZXNldCgpO1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX2FkZFBhdGgodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5fcmVtb3ZlUGF0aCh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCByZWRyYXcoKTogdGhpc1xuICBcdC8vIFJlZHJhd3MgdGhlIGxheWVyLiBTb21ldGltZXMgdXNlZnVsIGFmdGVyIHlvdSBjaGFuZ2VkIHRoZSBjb29yZGluYXRlcyB0aGF0IHRoZSBwYXRoIHVzZXMuXG4gIFx0cmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl91cGRhdGVQYXRoKHRoaXMpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0U3R5bGUoc3R5bGU6IFBhdGggb3B0aW9ucyk6IHRoaXNcbiAgXHQvLyBDaGFuZ2VzIHRoZSBhcHBlYXJhbmNlIG9mIGEgUGF0aCBiYXNlZCBvbiB0aGUgb3B0aW9ucyBpbiB0aGUgYFBhdGggb3B0aW9uc2Agb2JqZWN0LlxuICBcdHNldFN0eWxlOiBmdW5jdGlvbiAoc3R5bGUpIHtcbiAgXHRcdHNldE9wdGlvbnModGhpcywgc3R5bGUpO1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl91cGRhdGVTdHlsZSh0aGlzKTtcbiAgXHRcdFx0aWYgKHRoaXMub3B0aW9ucy5zdHJva2UgJiYgc3R5bGUgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHN0eWxlLCAnd2VpZ2h0JykpIHtcbiAgXHRcdFx0XHR0aGlzLl91cGRhdGVCb3VuZHMoKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgYnJpbmdUb0Zyb250KCk6IHRoaXNcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSB0b3Agb2YgYWxsIHBhdGggbGF5ZXJzLlxuICBcdGJyaW5nVG9Gcm9udDogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl9icmluZ1RvRnJvbnQodGhpcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjaygpOiB0aGlzXG4gIFx0Ly8gQnJpbmdzIHRoZSBsYXllciB0byB0aGUgYm90dG9tIG9mIGFsbCBwYXRoIGxheWVycy5cbiAgXHRicmluZ1RvQmFjazogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl9icmluZ1RvQmFjayh0aGlzKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHRnZXRFbGVtZW50OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fcGF0aDtcbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyBkZWZpbmVkIGluIGNoaWxkIGNsYXNzZXNcbiAgXHRcdHRoaXMuX3Byb2plY3QoKTtcbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfY2xpY2tUb2xlcmFuY2U6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdC8vIHVzZWQgd2hlbiBkb2luZyBoaXQgZGV0ZWN0aW9uIGZvciBDYW52YXMgbGF5ZXJzXG4gIFx0XHRyZXR1cm4gKHRoaXMub3B0aW9ucy5zdHJva2UgPyB0aGlzLm9wdGlvbnMud2VpZ2h0IC8gMiA6IDApICtcbiAgXHRcdCAgKHRoaXMuX3JlbmRlcmVyLm9wdGlvbnMudG9sZXJhbmNlIHx8IDApO1xuICBcdH1cbiAgfSk7XG5cbiAgLypcbiAgICogQGNsYXNzIENpcmNsZU1hcmtlclxuICAgKiBAYWthIEwuQ2lyY2xlTWFya2VyXG4gICAqIEBpbmhlcml0cyBQYXRoXG4gICAqXG4gICAqIEEgY2lyY2xlIG9mIGEgZml4ZWQgc2l6ZSB3aXRoIHJhZGl1cyBzcGVjaWZpZWQgaW4gcGl4ZWxzLiBFeHRlbmRzIGBQYXRoYC5cbiAgICovXG5cbiAgdmFyIENpcmNsZU1hcmtlciA9IFBhdGguZXh0ZW5kKHtcblxuICBcdC8vIEBzZWN0aW9uXG4gIFx0Ly8gQGFrYSBDaXJjbGVNYXJrZXIgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGZpbGw6IHRydWUsXG5cbiAgXHRcdC8vIEBvcHRpb24gcmFkaXVzOiBOdW1iZXIgPSAxMFxuICBcdFx0Ly8gUmFkaXVzIG9mIHRoZSBjaXJjbGUgbWFya2VyLCBpbiBwaXhlbHNcbiAgXHRcdHJhZGl1czogMTBcbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKGxhdGxuZywgb3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuX2xhdGxuZyA9IHRvTGF0TG5nKGxhdGxuZyk7XG4gIFx0XHR0aGlzLl9yYWRpdXMgPSB0aGlzLm9wdGlvbnMucmFkaXVzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHNldExhdExuZyhsYXRMbmc6IExhdExuZyk6IHRoaXNcbiAgXHQvLyBTZXRzIHRoZSBwb3NpdGlvbiBvZiBhIGNpcmNsZSBtYXJrZXIgdG8gYSBuZXcgbG9jYXRpb24uXG4gIFx0c2V0TGF0TG5nOiBmdW5jdGlvbiAobGF0bG5nKSB7XG4gIFx0XHR2YXIgb2xkTGF0TG5nID0gdGhpcy5fbGF0bG5nO1xuICBcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcbiAgXHRcdHRoaXMucmVkcmF3KCk7XG5cbiAgXHRcdC8vIEBldmVudCBtb3ZlOiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFya2VyIGlzIG1vdmVkIHZpYSBbYHNldExhdExuZ2BdKCNjaXJjbGVtYXJrZXItc2V0bGF0bG5nKS4gT2xkIGFuZCBuZXcgY29vcmRpbmF0ZXMgYXJlIGluY2x1ZGVkIGluIGV2ZW50IGFyZ3VtZW50cyBhcyBgb2xkTGF0TG5nYCwgYGxhdGxuZ2AuXG4gIFx0XHRyZXR1cm4gdGhpcy5maXJlKCdtb3ZlJywge29sZExhdExuZzogb2xkTGF0TG5nLCBsYXRsbmc6IHRoaXMuX2xhdGxuZ30pO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldExhdExuZygpOiBMYXRMbmdcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IGdlb2dyYXBoaWNhbCBwb3NpdGlvbiBvZiB0aGUgY2lyY2xlIG1hcmtlclxuICBcdGdldExhdExuZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2xhdGxuZztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRSYWRpdXMocmFkaXVzOiBOdW1iZXIpOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgcmFkaXVzIG9mIGEgY2lyY2xlIG1hcmtlci4gVW5pdHMgYXJlIGluIHBpeGVscy5cbiAgXHRzZXRSYWRpdXM6IGZ1bmN0aW9uIChyYWRpdXMpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy5yYWRpdXMgPSB0aGlzLl9yYWRpdXMgPSByYWRpdXM7XG4gIFx0XHRyZXR1cm4gdGhpcy5yZWRyYXcoKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRSYWRpdXMoKTogTnVtYmVyXG4gIFx0Ly8gUmV0dXJucyB0aGUgY3VycmVudCByYWRpdXMgb2YgdGhlIGNpcmNsZVxuICBcdGdldFJhZGl1czogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX3JhZGl1cztcbiAgXHR9LFxuXG4gIFx0c2V0U3R5bGUgOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICBcdFx0dmFyIHJhZGl1cyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5yYWRpdXMgfHwgdGhpcy5fcmFkaXVzO1xuICBcdFx0UGF0aC5wcm90b3R5cGUuc2V0U3R5bGUuY2FsbCh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuc2V0UmFkaXVzKHJhZGl1cyk7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0X3Byb2plY3Q6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHRoaXMuX3BvaW50ID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcpO1xuICBcdFx0dGhpcy5fdXBkYXRlQm91bmRzKCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciByID0gdGhpcy5fcmFkaXVzLFxuICBcdFx0ICAgIHIyID0gdGhpcy5fcmFkaXVzWSB8fCByLFxuICBcdFx0ICAgIHcgPSB0aGlzLl9jbGlja1RvbGVyYW5jZSgpLFxuICBcdFx0ICAgIHAgPSBbciArIHcsIHIyICsgd107XG4gIFx0XHR0aGlzLl9weEJvdW5kcyA9IG5ldyBCb3VuZHModGhpcy5fcG9pbnQuc3VidHJhY3QocCksIHRoaXMuX3BvaW50LmFkZChwKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUGF0aCgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX3VwZGF0ZUNpcmNsZSh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X2VtcHR5OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fcmFkaXVzICYmICF0aGlzLl9yZW5kZXJlci5fYm91bmRzLmludGVyc2VjdHModGhpcy5fcHhCb3VuZHMpO1xuICBcdH0sXG5cbiAgXHQvLyBOZWVkZWQgYnkgdGhlIGBDYW52YXNgIHJlbmRlcmVyIGZvciBpbnRlcmFjdGl2aXR5XG4gIFx0X2NvbnRhaW5zUG9pbnQ6IGZ1bmN0aW9uIChwKSB7XG4gIFx0XHRyZXR1cm4gcC5kaXN0YW5jZVRvKHRoaXMuX3BvaW50KSA8PSB0aGlzLl9yYWRpdXMgKyB0aGlzLl9jbGlja1RvbGVyYW5jZSgpO1xuICBcdH1cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLmNpcmNsZU1hcmtlcihsYXRsbmc6IExhdExuZywgb3B0aW9ucz86IENpcmNsZU1hcmtlciBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBjaXJjbGUgbWFya2VyIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCwgYW5kIGFuIG9wdGlvbmFsIG9wdGlvbnMgb2JqZWN0LlxuICBmdW5jdGlvbiBjaXJjbGVNYXJrZXIobGF0bG5nLCBvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBDaXJjbGVNYXJrZXIobGF0bG5nLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qXG4gICAqIEBjbGFzcyBDaXJjbGVcbiAgICogQGFrYSBMLkNpcmNsZVxuICAgKiBAaW5oZXJpdHMgQ2lyY2xlTWFya2VyXG4gICAqXG4gICAqIEEgY2xhc3MgZm9yIGRyYXdpbmcgY2lyY2xlIG92ZXJsYXlzIG9uIGEgbWFwLiBFeHRlbmRzIGBDaXJjbGVNYXJrZXJgLlxuICAgKlxuICAgKiBJdCdzIGFuIGFwcHJveGltYXRpb24gYW5kIHN0YXJ0cyB0byBkaXZlcmdlIGZyb20gYSByZWFsIGNpcmNsZSBjbG9zZXIgdG8gcG9sZXMgKGR1ZSB0byBwcm9qZWN0aW9uIGRpc3RvcnRpb24pLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiBMLmNpcmNsZShbNTAuNSwgMzAuNV0sIHtyYWRpdXM6IDIwMH0pLmFkZFRvKG1hcCk7XG4gICAqIGBgYFxuICAgKi9cblxuICB2YXIgQ2lyY2xlID0gQ2lyY2xlTWFya2VyLmV4dGVuZCh7XG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKSB7XG4gIFx0XHRpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdudW1iZXInKSB7XG4gIFx0XHRcdC8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggMC43LnggZmFjdG9yeSAobGF0bG5nLCByYWRpdXMsIG9wdGlvbnM/KVxuICBcdFx0XHRvcHRpb25zID0gZXh0ZW5kKHt9LCBsZWdhY3lPcHRpb25zLCB7cmFkaXVzOiBvcHRpb25zfSk7XG4gIFx0XHR9XG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xuICBcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcblxuICBcdFx0aWYgKGlzTmFOKHRoaXMub3B0aW9ucy5yYWRpdXMpKSB7IHRocm93IG5ldyBFcnJvcignQ2lyY2xlIHJhZGl1cyBjYW5ub3QgYmUgTmFOJyk7IH1cblxuICBcdFx0Ly8gQHNlY3Rpb25cbiAgXHRcdC8vIEBha2EgQ2lyY2xlIG9wdGlvbnNcbiAgXHRcdC8vIEBvcHRpb24gcmFkaXVzOiBOdW1iZXI7IFJhZGl1cyBvZiB0aGUgY2lyY2xlLCBpbiBtZXRlcnMuXG4gIFx0XHR0aGlzLl9tUmFkaXVzID0gdGhpcy5vcHRpb25zLnJhZGl1cztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRSYWRpdXMocmFkaXVzOiBOdW1iZXIpOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgcmFkaXVzIG9mIGEgY2lyY2xlLiBVbml0cyBhcmUgaW4gbWV0ZXJzLlxuICBcdHNldFJhZGl1czogZnVuY3Rpb24gKHJhZGl1cykge1xuICBcdFx0dGhpcy5fbVJhZGl1cyA9IHJhZGl1cztcbiAgXHRcdHJldHVybiB0aGlzLnJlZHJhdygpO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldFJhZGl1cygpOiBOdW1iZXJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHJhZGl1cyBvZiBhIGNpcmNsZS4gVW5pdHMgYXJlIGluIG1ldGVycy5cbiAgXHRnZXRSYWRpdXM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl9tUmFkaXVzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcbiAgXHQvLyBSZXR1cm5zIHRoZSBgTGF0TG5nQm91bmRzYCBvZiB0aGUgcGF0aC5cbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBoYWxmID0gW3RoaXMuX3JhZGl1cywgdGhpcy5fcmFkaXVzWSB8fCB0aGlzLl9yYWRpdXNdO1xuXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZ0JvdW5kcyhcbiAgXHRcdFx0dGhpcy5fbWFwLmxheWVyUG9pbnRUb0xhdExuZyh0aGlzLl9wb2ludC5zdWJ0cmFjdChoYWxmKSksXG4gIFx0XHRcdHRoaXMuX21hcC5sYXllclBvaW50VG9MYXRMbmcodGhpcy5fcG9pbnQuYWRkKGhhbGYpKSk7XG4gIFx0fSxcblxuICBcdHNldFN0eWxlOiBQYXRoLnByb3RvdHlwZS5zZXRTdHlsZSxcblxuICBcdF9wcm9qZWN0OiBmdW5jdGlvbiAoKSB7XG5cbiAgXHRcdHZhciBsbmcgPSB0aGlzLl9sYXRsbmcubG5nLFxuICBcdFx0ICAgIGxhdCA9IHRoaXMuX2xhdGxuZy5sYXQsXG4gIFx0XHQgICAgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIGNycyA9IG1hcC5vcHRpb25zLmNycztcblxuICBcdFx0aWYgKGNycy5kaXN0YW5jZSA9PT0gRWFydGguZGlzdGFuY2UpIHtcbiAgXHRcdFx0dmFyIGQgPSBNYXRoLlBJIC8gMTgwLFxuICBcdFx0XHQgICAgbGF0UiA9ICh0aGlzLl9tUmFkaXVzIC8gRWFydGguUikgLyBkLFxuICBcdFx0XHQgICAgdG9wID0gbWFwLnByb2plY3QoW2xhdCArIGxhdFIsIGxuZ10pLFxuICBcdFx0XHQgICAgYm90dG9tID0gbWFwLnByb2plY3QoW2xhdCAtIGxhdFIsIGxuZ10pLFxuICBcdFx0XHQgICAgcCA9IHRvcC5hZGQoYm90dG9tKS5kaXZpZGVCeSgyKSxcbiAgXHRcdFx0ICAgIGxhdDIgPSBtYXAudW5wcm9qZWN0KHApLmxhdCxcbiAgXHRcdFx0ICAgIGxuZ1IgPSBNYXRoLmFjb3MoKE1hdGguY29zKGxhdFIgKiBkKSAtIE1hdGguc2luKGxhdCAqIGQpICogTWF0aC5zaW4obGF0MiAqIGQpKSAvXG4gIFx0XHRcdCAgICAgICAgICAgIChNYXRoLmNvcyhsYXQgKiBkKSAqIE1hdGguY29zKGxhdDIgKiBkKSkpIC8gZDtcblxuICBcdFx0XHRpZiAoaXNOYU4obG5nUikgfHwgbG5nUiA9PT0gMCkge1xuICBcdFx0XHRcdGxuZ1IgPSBsYXRSIC8gTWF0aC5jb3MoTWF0aC5QSSAvIDE4MCAqIGxhdCk7IC8vIEZhbGxiYWNrIGZvciBlZGdlIGNhc2UsICMyNDI1XG4gIFx0XHRcdH1cblxuICBcdFx0XHR0aGlzLl9wb2ludCA9IHAuc3VidHJhY3QobWFwLmdldFBpeGVsT3JpZ2luKCkpO1xuICBcdFx0XHR0aGlzLl9yYWRpdXMgPSBpc05hTihsbmdSKSA/IDAgOiBwLnggLSBtYXAucHJvamVjdChbbGF0MiwgbG5nIC0gbG5nUl0pLng7XG4gIFx0XHRcdHRoaXMuX3JhZGl1c1kgPSBwLnkgLSB0b3AueTtcblxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dmFyIGxhdGxuZzIgPSBjcnMudW5wcm9qZWN0KGNycy5wcm9qZWN0KHRoaXMuX2xhdGxuZykuc3VidHJhY3QoW3RoaXMuX21SYWRpdXMsIDBdKSk7XG5cbiAgXHRcdFx0dGhpcy5fcG9pbnQgPSBtYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2xhdGxuZyk7XG4gIFx0XHRcdHRoaXMuX3JhZGl1cyA9IHRoaXMuX3BvaW50LnggLSBtYXAubGF0TG5nVG9MYXllclBvaW50KGxhdGxuZzIpLng7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZUJvdW5kcygpO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQGZhY3RvcnkgTC5jaXJjbGUobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBDaXJjbGUgb3B0aW9ucylcbiAgLy8gSW5zdGFudGlhdGVzIGEgY2lyY2xlIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCwgYW5kIGFuIG9wdGlvbnMgb2JqZWN0XG4gIC8vIHdoaWNoIGNvbnRhaW5zIHRoZSBjaXJjbGUgcmFkaXVzLlxuICAvLyBAYWx0ZXJuYXRpdmVcbiAgLy8gQGZhY3RvcnkgTC5jaXJjbGUobGF0bG5nOiBMYXRMbmcsIHJhZGl1czogTnVtYmVyLCBvcHRpb25zPzogQ2lyY2xlIG9wdGlvbnMpXG4gIC8vIE9ic29sZXRlIHdheSBvZiBpbnN0YW50aWF0aW5nIGEgY2lyY2xlLCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIDAuNy54IGNvZGUuXG4gIC8vIERvIG5vdCB1c2UgaW4gbmV3IGFwcGxpY2F0aW9ucyBvciBwbHVnaW5zLlxuICBmdW5jdGlvbiBjaXJjbGUobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBDaXJjbGUobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKTtcbiAgfVxuXG4gIC8qXG4gICAqIEBjbGFzcyBQb2x5bGluZVxuICAgKiBAYWthIEwuUG9seWxpbmVcbiAgICogQGluaGVyaXRzIFBhdGhcbiAgICpcbiAgICogQSBjbGFzcyBmb3IgZHJhd2luZyBwb2x5bGluZSBvdmVybGF5cyBvbiBhIG1hcC4gRXh0ZW5kcyBgUGF0aGAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5bGluZSBmcm9tIGFuIGFycmF5IG9mIExhdExuZyBwb2ludHNcbiAgICogdmFyIGxhdGxuZ3MgPSBbXG4gICAqIFx0WzQ1LjUxLCAtMTIyLjY4XSxcbiAgICogXHRbMzcuNzcsIC0xMjIuNDNdLFxuICAgKiBcdFszNC4wNCwgLTExOC4yXVxuICAgKiBdO1xuICAgKlxuICAgKiB2YXIgcG9seWxpbmUgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtjb2xvcjogJ3JlZCd9KS5hZGRUbyhtYXApO1xuICAgKlxuICAgKiAvLyB6b29tIHRoZSBtYXAgdG8gdGhlIHBvbHlsaW5lXG4gICAqIG1hcC5maXRCb3VuZHMocG9seWxpbmUuZ2V0Qm91bmRzKCkpO1xuICAgKiBgYGBcbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHBhc3MgYSBtdWx0aS1kaW1lbnNpb25hbCBhcnJheSB0byByZXByZXNlbnQgYSBgTXVsdGlQb2x5bGluZWAgc2hhcGU6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5bGluZSBmcm9tIGFuIGFycmF5IG9mIGFycmF5cyBvZiBMYXRMbmcgcG9pbnRzXG4gICAqIHZhciBsYXRsbmdzID0gW1xuICAgKiBcdFtbNDUuNTEsIC0xMjIuNjhdLFxuICAgKiBcdCBbMzcuNzcsIC0xMjIuNDNdLFxuICAgKiBcdCBbMzQuMDQsIC0xMTguMl1dLFxuICAgKiBcdFtbNDAuNzgsIC03My45MV0sXG4gICAqIFx0IFs0MS44MywgLTg3LjYyXSxcbiAgICogXHQgWzMyLjc2LCAtOTYuNzJdXVxuICAgKiBdO1xuICAgKiBgYGBcbiAgICovXG5cblxuICB2YXIgUG9seWxpbmUgPSBQYXRoLmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgUG9seWxpbmUgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gc21vb3RoRmFjdG9yOiBOdW1iZXIgPSAxLjBcbiAgXHRcdC8vIEhvdyBtdWNoIHRvIHNpbXBsaWZ5IHRoZSBwb2x5bGluZSBvbiBlYWNoIHpvb20gbGV2ZWwuIE1vcmUgbWVhbnNcbiAgXHRcdC8vIGJldHRlciBwZXJmb3JtYW5jZSBhbmQgc21vb3RoZXIgbG9vaywgYW5kIGxlc3MgbWVhbnMgbW9yZSBhY2N1cmF0ZSByZXByZXNlbnRhdGlvbi5cbiAgXHRcdHNtb290aEZhY3RvcjogMS4wLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG5vQ2xpcDogQm9vbGVhbiA9IGZhbHNlXG4gIFx0XHQvLyBEaXNhYmxlIHBvbHlsaW5lIGNsaXBwaW5nLlxuICBcdFx0bm9DbGlwOiBmYWxzZVxuICBcdH0sXG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF0bG5ncywgb3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuX3NldExhdExuZ3MobGF0bG5ncyk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0TGF0TG5ncygpOiBMYXRMbmdbXVxuICBcdC8vIFJldHVybnMgYW4gYXJyYXkgb2YgdGhlIHBvaW50cyBpbiB0aGUgcGF0aCwgb3IgbmVzdGVkIGFycmF5cyBvZiBwb2ludHMgaW4gY2FzZSBvZiBtdWx0aS1wb2x5bGluZS5cbiAgXHRnZXRMYXRMbmdzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fbGF0bG5ncztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRMYXRMbmdzKGxhdGxuZ3M6IExhdExuZ1tdKTogdGhpc1xuICBcdC8vIFJlcGxhY2VzIGFsbCB0aGUgcG9pbnRzIGluIHRoZSBwb2x5bGluZSB3aXRoIHRoZSBnaXZlbiBhcnJheSBvZiBnZW9ncmFwaGljYWwgcG9pbnRzLlxuICBcdHNldExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHR0aGlzLl9zZXRMYXRMbmdzKGxhdGxuZ3MpO1xuICBcdFx0cmV0dXJuIHRoaXMucmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgaXNFbXB0eSgpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIFBvbHlsaW5lIGhhcyBubyBMYXRMbmdzLlxuICBcdGlzRW1wdHk6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiAhdGhpcy5fbGF0bG5ncy5sZW5ndGg7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgY2xvc2VzdExheWVyUG9pbnQocDogUG9pbnQpOiBQb2ludFxuICBcdC8vIFJldHVybnMgdGhlIHBvaW50IGNsb3Nlc3QgdG8gYHBgIG9uIHRoZSBQb2x5bGluZS5cbiAgXHRjbG9zZXN0TGF5ZXJQb2ludDogZnVuY3Rpb24gKHApIHtcbiAgXHRcdHZhciBtaW5EaXN0YW5jZSA9IEluZmluaXR5LFxuICBcdFx0ICAgIG1pblBvaW50ID0gbnVsbCxcbiAgXHRcdCAgICBjbG9zZXN0ID0gX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50LFxuICBcdFx0ICAgIHAxLCBwMjtcblxuICBcdFx0Zm9yICh2YXIgaiA9IDAsIGpMZW4gPSB0aGlzLl9wYXJ0cy5sZW5ndGg7IGogPCBqTGVuOyBqKyspIHtcbiAgXHRcdFx0dmFyIHBvaW50cyA9IHRoaXMuX3BhcnRzW2pdO1xuXG4gIFx0XHRcdGZvciAodmFyIGkgPSAxLCBsZW4gPSBwb2ludHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0XHRwMSA9IHBvaW50c1tpIC0gMV07XG4gIFx0XHRcdFx0cDIgPSBwb2ludHNbaV07XG5cbiAgXHRcdFx0XHR2YXIgc3FEaXN0ID0gY2xvc2VzdChwLCBwMSwgcDIsIHRydWUpO1xuXG4gIFx0XHRcdFx0aWYgKHNxRGlzdCA8IG1pbkRpc3RhbmNlKSB7XG4gIFx0XHRcdFx0XHRtaW5EaXN0YW5jZSA9IHNxRGlzdDtcbiAgXHRcdFx0XHRcdG1pblBvaW50ID0gY2xvc2VzdChwLCBwMSwgcDIpO1xuICBcdFx0XHRcdH1cbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0aWYgKG1pblBvaW50KSB7XG4gIFx0XHRcdG1pblBvaW50LmRpc3RhbmNlID0gTWF0aC5zcXJ0KG1pbkRpc3RhbmNlKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiBtaW5Qb2ludDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXG4gIFx0Ly8gUmV0dXJucyB0aGUgY2VudGVyIChbY2VudHJvaWRdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NlbnRyb2lkKSkgb2YgdGhlIHBvbHlsaW5lLlxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gdGhyb3dzIGVycm9yIHdoZW4gbm90IHlldCBhZGRlZCB0byBtYXAgYXMgdGhpcyBjZW50ZXIgY2FsY3VsYXRpb24gcmVxdWlyZXMgcHJvamVjdGVkIGNvb3JkaW5hdGVzXG4gIFx0XHRpZiAoIXRoaXMuX21hcCkge1xuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ011c3QgYWRkIGxheWVyIHRvIG1hcCBiZWZvcmUgdXNpbmcgZ2V0Q2VudGVyKCknKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiBwb2x5bGluZUNlbnRlcih0aGlzLl9kZWZhdWx0U2hhcGUoKSwgdGhpcy5fbWFwLm9wdGlvbnMuY3JzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRCb3VuZHMoKTogTGF0TG5nQm91bmRzXG4gIFx0Ly8gUmV0dXJucyB0aGUgYExhdExuZ0JvdW5kc2Agb2YgdGhlIHBhdGguXG4gIFx0Z2V0Qm91bmRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fYm91bmRzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGFkZExhdExuZyhsYXRsbmc6IExhdExuZywgbGF0bG5ncz86IExhdExuZ1tdKTogdGhpc1xuICBcdC8vIEFkZHMgYSBnaXZlbiBwb2ludCB0byB0aGUgcG9seWxpbmUuIEJ5IGRlZmF1bHQsIGFkZHMgdG8gdGhlIGZpcnN0IHJpbmcgb2ZcbiAgXHQvLyB0aGUgcG9seWxpbmUgaW4gY2FzZSBvZiBhIG11bHRpLXBvbHlsaW5lLCBidXQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgcGFzc2luZ1xuICBcdC8vIGEgc3BlY2lmaWMgcmluZyBhcyBhIExhdExuZyBhcnJheSAodGhhdCB5b3UgY2FuIGVhcmxpZXIgYWNjZXNzIHdpdGggW2BnZXRMYXRMbmdzYF0oI3BvbHlsaW5lLWdldGxhdGxuZ3MpKS5cbiAgXHRhZGRMYXRMbmc6IGZ1bmN0aW9uIChsYXRsbmcsIGxhdGxuZ3MpIHtcbiAgXHRcdGxhdGxuZ3MgPSBsYXRsbmdzIHx8IHRoaXMuX2RlZmF1bHRTaGFwZSgpO1xuICBcdFx0bGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcbiAgXHRcdGxhdGxuZ3MucHVzaChsYXRsbmcpO1xuICBcdFx0dGhpcy5fYm91bmRzLmV4dGVuZChsYXRsbmcpO1xuICBcdFx0cmV0dXJuIHRoaXMucmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdF9zZXRMYXRMbmdzOiBmdW5jdGlvbiAobGF0bG5ncykge1xuICBcdFx0dGhpcy5fYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcygpO1xuICBcdFx0dGhpcy5fbGF0bG5ncyA9IHRoaXMuX2NvbnZlcnRMYXRMbmdzKGxhdGxuZ3MpO1xuICBcdH0sXG5cbiAgXHRfZGVmYXVsdFNoYXBlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gaXNGbGF0KHRoaXMuX2xhdGxuZ3MpID8gdGhpcy5fbGF0bG5ncyA6IHRoaXMuX2xhdGxuZ3NbMF07XG4gIFx0fSxcblxuICBcdC8vIHJlY3Vyc2l2ZWx5IGNvbnZlcnQgbGF0bG5ncyBpbnB1dCBpbnRvIGFjdHVhbCBMYXRMbmcgaW5zdGFuY2VzOyBjYWxjdWxhdGUgYm91bmRzIGFsb25nIHRoZSB3YXlcbiAgXHRfY29udmVydExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHR2YXIgcmVzdWx0ID0gW10sXG4gIFx0XHQgICAgZmxhdCA9IGlzRmxhdChsYXRsbmdzKTtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IGxhdGxuZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0aWYgKGZsYXQpIHtcbiAgXHRcdFx0XHRyZXN1bHRbaV0gPSB0b0xhdExuZyhsYXRsbmdzW2ldKTtcbiAgXHRcdFx0XHR0aGlzLl9ib3VuZHMuZXh0ZW5kKHJlc3VsdFtpXSk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cmVzdWx0W2ldID0gdGhpcy5fY29udmVydExhdExuZ3MobGF0bG5nc1tpXSk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHJlc3VsdDtcbiAgXHR9LFxuXG4gIFx0X3Byb2plY3Q6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBweEJvdW5kcyA9IG5ldyBCb3VuZHMoKTtcbiAgXHRcdHRoaXMuX3JpbmdzID0gW107XG4gIFx0XHR0aGlzLl9wcm9qZWN0TGF0bG5ncyh0aGlzLl9sYXRsbmdzLCB0aGlzLl9yaW5ncywgcHhCb3VuZHMpO1xuXG4gIFx0XHRpZiAodGhpcy5fYm91bmRzLmlzVmFsaWQoKSAmJiBweEJvdW5kcy5pc1ZhbGlkKCkpIHtcbiAgXHRcdFx0dGhpcy5fcmF3UHhCb3VuZHMgPSBweEJvdW5kcztcbiAgXHRcdFx0dGhpcy5fdXBkYXRlQm91bmRzKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciB3ID0gdGhpcy5fY2xpY2tUb2xlcmFuY2UoKSxcbiAgXHRcdCAgICBwID0gbmV3IFBvaW50KHcsIHcpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX3Jhd1B4Qm91bmRzKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fcHhCb3VuZHMgPSBuZXcgQm91bmRzKFtcbiAgXHRcdFx0dGhpcy5fcmF3UHhCb3VuZHMubWluLnN1YnRyYWN0KHApLFxuICBcdFx0XHR0aGlzLl9yYXdQeEJvdW5kcy5tYXguYWRkKHApXG4gIFx0XHRdKTtcbiAgXHR9LFxuXG4gIFx0Ly8gcmVjdXJzaXZlbHkgdHVybnMgbGF0bG5ncyBpbnRvIGEgc2V0IG9mIHJpbmdzIHdpdGggcHJvamVjdGVkIGNvb3JkaW5hdGVzXG4gIFx0X3Byb2plY3RMYXRsbmdzOiBmdW5jdGlvbiAobGF0bG5ncywgcmVzdWx0LCBwcm9qZWN0ZWRCb3VuZHMpIHtcbiAgXHRcdHZhciBmbGF0ID0gbGF0bG5nc1swXSBpbnN0YW5jZW9mIExhdExuZyxcbiAgXHRcdCAgICBsZW4gPSBsYXRsbmdzLmxlbmd0aCxcbiAgXHRcdCAgICBpLCByaW5nO1xuXG4gIFx0XHRpZiAoZmxhdCkge1xuICBcdFx0XHRyaW5nID0gW107XG4gIFx0XHRcdGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRcdHJpbmdbaV0gPSB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KGxhdGxuZ3NbaV0pO1xuICBcdFx0XHRcdHByb2plY3RlZEJvdW5kcy5leHRlbmQocmluZ1tpXSk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0cmVzdWx0LnB1c2gocmluZyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0XHR0aGlzLl9wcm9qZWN0TGF0bG5ncyhsYXRsbmdzW2ldLCByZXN1bHQsIHByb2plY3RlZEJvdW5kcyk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0Ly8gY2xpcCBwb2x5bGluZSBieSByZW5kZXJlciBib3VuZHMgc28gdGhhdCB3ZSBoYXZlIGxlc3MgdG8gcmVuZGVyIGZvciBwZXJmb3JtYW5jZVxuICBcdF9jbGlwUG9pbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgYm91bmRzID0gdGhpcy5fcmVuZGVyZXIuX2JvdW5kcztcblxuICBcdFx0dGhpcy5fcGFydHMgPSBbXTtcbiAgXHRcdGlmICghdGhpcy5fcHhCb3VuZHMgfHwgIXRoaXMuX3B4Qm91bmRzLmludGVyc2VjdHMoYm91bmRzKSkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubm9DbGlwKSB7XG4gIFx0XHRcdHRoaXMuX3BhcnRzID0gdGhpcy5fcmluZ3M7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dmFyIHBhcnRzID0gdGhpcy5fcGFydHMsXG4gIFx0XHQgICAgaSwgaiwgaywgbGVuLCBsZW4yLCBzZWdtZW50LCBwb2ludHM7XG5cbiAgXHRcdGZvciAoaSA9IDAsIGsgPSAwLCBsZW4gPSB0aGlzLl9yaW5ncy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRwb2ludHMgPSB0aGlzLl9yaW5nc1tpXTtcblxuICBcdFx0XHRmb3IgKGogPSAwLCBsZW4yID0gcG9pbnRzLmxlbmd0aDsgaiA8IGxlbjIgLSAxOyBqKyspIHtcbiAgXHRcdFx0XHRzZWdtZW50ID0gY2xpcFNlZ21lbnQocG9pbnRzW2pdLCBwb2ludHNbaiArIDFdLCBib3VuZHMsIGosIHRydWUpO1xuXG4gIFx0XHRcdFx0aWYgKCFzZWdtZW50KSB7IGNvbnRpbnVlOyB9XG5cbiAgXHRcdFx0XHRwYXJ0c1trXSA9IHBhcnRzW2tdIHx8IFtdO1xuICBcdFx0XHRcdHBhcnRzW2tdLnB1c2goc2VnbWVudFswXSk7XG5cbiAgXHRcdFx0XHQvLyBpZiBzZWdtZW50IGdvZXMgb3V0IG9mIHNjcmVlbiwgb3IgaXQncyB0aGUgbGFzdCBvbmUsIGl0J3MgdGhlIGVuZCBvZiB0aGUgbGluZSBwYXJ0XG4gIFx0XHRcdFx0aWYgKChzZWdtZW50WzFdICE9PSBwb2ludHNbaiArIDFdKSB8fCAoaiA9PT0gbGVuMiAtIDIpKSB7XG4gIFx0XHRcdFx0XHRwYXJ0c1trXS5wdXNoKHNlZ21lbnRbMV0pO1xuICBcdFx0XHRcdFx0aysrO1xuICBcdFx0XHRcdH1cbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBzaW1wbGlmeSBlYWNoIGNsaXBwZWQgcGFydCBvZiB0aGUgcG9seWxpbmUgZm9yIHBlcmZvcm1hbmNlXG4gIFx0X3NpbXBsaWZ5UG9pbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgcGFydHMgPSB0aGlzLl9wYXJ0cyxcbiAgXHRcdCAgICB0b2xlcmFuY2UgPSB0aGlzLm9wdGlvbnMuc21vb3RoRmFjdG9yO1xuXG4gIFx0XHRmb3IgKHZhciBpID0gMCwgbGVuID0gcGFydHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0cGFydHNbaV0gPSBzaW1wbGlmeShwYXJ0c1tpXSwgdG9sZXJhbmNlKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKCF0aGlzLl9tYXApIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRoaXMuX2NsaXBQb2ludHMoKTtcbiAgXHRcdHRoaXMuX3NpbXBsaWZ5UG9pbnRzKCk7XG4gIFx0XHR0aGlzLl91cGRhdGVQYXRoKCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVQYXRoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5fdXBkYXRlUG9seSh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gTmVlZGVkIGJ5IHRoZSBgQ2FudmFzYCByZW5kZXJlciBmb3IgaW50ZXJhY3Rpdml0eVxuICBcdF9jb250YWluc1BvaW50OiBmdW5jdGlvbiAocCwgY2xvc2VkKSB7XG4gIFx0XHR2YXIgaSwgaiwgaywgbGVuLCBsZW4yLCBwYXJ0LFxuICBcdFx0ICAgIHcgPSB0aGlzLl9jbGlja1RvbGVyYW5jZSgpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX3B4Qm91bmRzIHx8ICF0aGlzLl9weEJvdW5kcy5jb250YWlucyhwKSkgeyByZXR1cm4gZmFsc2U7IH1cblxuICBcdFx0Ly8gaGl0IGRldGVjdGlvbiBmb3IgcG9seWxpbmVzXG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSB0aGlzLl9wYXJ0cy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRwYXJ0ID0gdGhpcy5fcGFydHNbaV07XG5cbiAgXHRcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBhcnQubGVuZ3RoLCBrID0gbGVuMiAtIDE7IGogPCBsZW4yOyBrID0gaisrKSB7XG4gIFx0XHRcdFx0aWYgKCFjbG9zZWQgJiYgKGogPT09IDApKSB7IGNvbnRpbnVlOyB9XG5cbiAgXHRcdFx0XHRpZiAocG9pbnRUb1NlZ21lbnREaXN0YW5jZShwLCBwYXJ0W2tdLCBwYXJ0W2pdKSA8PSB3KSB7XG4gIFx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHRcdHJldHVybiBmYWxzZTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBmYWN0b3J5IEwucG9seWxpbmUobGF0bG5nczogTGF0TG5nW10sIG9wdGlvbnM/OiBQb2x5bGluZSBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBwb2x5bGluZSBvYmplY3QgZ2l2ZW4gYW4gYXJyYXkgb2YgZ2VvZ3JhcGhpY2FsIHBvaW50cyBhbmRcbiAgLy8gb3B0aW9uYWxseSBhbiBvcHRpb25zIG9iamVjdC4gWW91IGNhbiBjcmVhdGUgYSBgUG9seWxpbmVgIG9iamVjdCB3aXRoXG4gIC8vIG11bHRpcGxlIHNlcGFyYXRlIGxpbmVzIChgTXVsdGlQb2x5bGluZWApIGJ5IHBhc3NpbmcgYW4gYXJyYXkgb2YgYXJyYXlzXG4gIC8vIG9mIGdlb2dyYXBoaWMgcG9pbnRzLlxuICBmdW5jdGlvbiBwb2x5bGluZShsYXRsbmdzLCBvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBQb2x5bGluZShsYXRsbmdzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8vIFJldHJvY29tcGF0LiBBbGxvdyBwbHVnaW5zIHRvIHN1cHBvcnQgTGVhZmxldCB2ZXJzaW9ucyBiZWZvcmUgYW5kIGFmdGVyIDEuMS5cbiAgUG9seWxpbmUuX2ZsYXQgPSBfZmxhdDtcblxuICAvKlxuICAgKiBAY2xhc3MgUG9seWdvblxuICAgKiBAYWthIEwuUG9seWdvblxuICAgKiBAaW5oZXJpdHMgUG9seWxpbmVcbiAgICpcbiAgICogQSBjbGFzcyBmb3IgZHJhd2luZyBwb2x5Z29uIG92ZXJsYXlzIG9uIGEgbWFwLiBFeHRlbmRzIGBQb2x5bGluZWAuXG4gICAqXG4gICAqIE5vdGUgdGhhdCBwb2ludHMgeW91IHBhc3Mgd2hlbiBjcmVhdGluZyBhIHBvbHlnb24gc2hvdWxkbid0IGhhdmUgYW4gYWRkaXRpb25hbCBsYXN0IHBvaW50IGVxdWFsIHRvIHRoZSBmaXJzdCBvbmUg4oCUIGl0J3MgYmV0dGVyIHRvIGZpbHRlciBvdXQgc3VjaCBwb2ludHMuXG4gICAqXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5Z29uIGZyb20gYW4gYXJyYXkgb2YgTGF0TG5nIHBvaW50c1xuICAgKiB2YXIgbGF0bG5ncyA9IFtbMzcsIC0xMDkuMDVdLFs0MSwgLTEwOS4wM10sWzQxLCAtMTAyLjA1XSxbMzcsIC0xMDIuMDRdXTtcbiAgICpcbiAgICogdmFyIHBvbHlnb24gPSBMLnBvbHlnb24obGF0bG5ncywge2NvbG9yOiAncmVkJ30pLmFkZFRvKG1hcCk7XG4gICAqXG4gICAqIC8vIHpvb20gdGhlIG1hcCB0byB0aGUgcG9seWdvblxuICAgKiBtYXAuZml0Qm91bmRzKHBvbHlnb24uZ2V0Qm91bmRzKCkpO1xuICAgKiBgYGBcbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHBhc3MgYW4gYXJyYXkgb2YgYXJyYXlzIG9mIGxhdGxuZ3MsIHdpdGggdGhlIGZpcnN0IGFycmF5IHJlcHJlc2VudGluZyB0aGUgb3V0ZXIgc2hhcGUgYW5kIHRoZSBvdGhlciBhcnJheXMgcmVwcmVzZW50aW5nIGhvbGVzIGluIHRoZSBvdXRlciBzaGFwZTpcbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIGxhdGxuZ3MgPSBbXG4gICAqICAgW1szNywgLTEwOS4wNV0sWzQxLCAtMTA5LjAzXSxbNDEsIC0xMDIuMDVdLFszNywgLTEwMi4wNF1dLCAvLyBvdXRlciByaW5nXG4gICAqICAgW1szNy4yOSwgLTEwOC41OF0sWzQwLjcxLCAtMTA4LjU4XSxbNDAuNzEsIC0xMDIuNTBdLFszNy4yOSwgLTEwMi41MF1dIC8vIGhvbGVcbiAgICogXTtcbiAgICogYGBgXG4gICAqXG4gICAqIEFkZGl0aW9uYWxseSwgeW91IGNhbiBwYXNzIGEgbXVsdGktZGltZW5zaW9uYWwgYXJyYXkgdG8gcmVwcmVzZW50IGEgTXVsdGlQb2x5Z29uIHNoYXBlLlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbGF0bG5ncyA9IFtcbiAgICogICBbIC8vIGZpcnN0IHBvbHlnb25cbiAgICogICAgIFtbMzcsIC0xMDkuMDVdLFs0MSwgLTEwOS4wM10sWzQxLCAtMTAyLjA1XSxbMzcsIC0xMDIuMDRdXSwgLy8gb3V0ZXIgcmluZ1xuICAgKiAgICAgW1szNy4yOSwgLTEwOC41OF0sWzQwLjcxLCAtMTA4LjU4XSxbNDAuNzEsIC0xMDIuNTBdLFszNy4yOSwgLTEwMi41MF1dIC8vIGhvbGVcbiAgICogICBdLFxuICAgKiAgIFsgLy8gc2Vjb25kIHBvbHlnb25cbiAgICogICAgIFtbNDEsIC0xMTEuMDNdLFs0NSwgLTExMS4wNF0sWzQ1LCAtMTA0LjA1XSxbNDEsIC0xMDQuMDVdXVxuICAgKiAgIF1cbiAgICogXTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBQb2x5Z29uID0gUG9seWxpbmUuZXh0ZW5kKHtcblxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGZpbGw6IHRydWVcbiAgXHR9LFxuXG4gIFx0aXNFbXB0eTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuICF0aGlzLl9sYXRsbmdzLmxlbmd0aCB8fCAhdGhpcy5fbGF0bG5nc1swXS5sZW5ndGg7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0Q2VudGVyKCk6IExhdExuZ1xuICBcdC8vIFJldHVybnMgdGhlIGNlbnRlciAoW2NlbnRyb2lkXShodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NlbnRyb2lkKSkgb2YgdGhlIFBvbHlnb24uXG4gIFx0Z2V0Q2VudGVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyB0aHJvd3MgZXJyb3Igd2hlbiBub3QgeWV0IGFkZGVkIHRvIG1hcCBhcyB0aGlzIGNlbnRlciBjYWxjdWxhdGlvbiByZXF1aXJlcyBwcm9qZWN0ZWQgY29vcmRpbmF0ZXNcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignTXVzdCBhZGQgbGF5ZXIgdG8gbWFwIGJlZm9yZSB1c2luZyBnZXRDZW50ZXIoKScpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHBvbHlnb25DZW50ZXIodGhpcy5fZGVmYXVsdFNoYXBlKCksIHRoaXMuX21hcC5vcHRpb25zLmNycyk7XG4gIFx0fSxcblxuICBcdF9jb252ZXJ0TGF0TG5nczogZnVuY3Rpb24gKGxhdGxuZ3MpIHtcbiAgXHRcdHZhciByZXN1bHQgPSBQb2x5bGluZS5wcm90b3R5cGUuX2NvbnZlcnRMYXRMbmdzLmNhbGwodGhpcywgbGF0bG5ncyksXG4gIFx0XHQgICAgbGVuID0gcmVzdWx0Lmxlbmd0aDtcblxuICBcdFx0Ly8gcmVtb3ZlIGxhc3QgcG9pbnQgaWYgaXQgZXF1YWxzIGZpcnN0IG9uZVxuICBcdFx0aWYgKGxlbiA+PSAyICYmIHJlc3VsdFswXSBpbnN0YW5jZW9mIExhdExuZyAmJiByZXN1bHRbMF0uZXF1YWxzKHJlc3VsdFtsZW4gLSAxXSkpIHtcbiAgXHRcdFx0cmVzdWx0LnBvcCgpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHJlc3VsdDtcbiAgXHR9LFxuXG4gIFx0X3NldExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHRQb2x5bGluZS5wcm90b3R5cGUuX3NldExhdExuZ3MuY2FsbCh0aGlzLCBsYXRsbmdzKTtcbiAgXHRcdGlmIChpc0ZsYXQodGhpcy5fbGF0bG5ncykpIHtcbiAgXHRcdFx0dGhpcy5fbGF0bG5ncyA9IFt0aGlzLl9sYXRsbmdzXTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2RlZmF1bHRTaGFwZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIGlzRmxhdCh0aGlzLl9sYXRsbmdzWzBdKSA/IHRoaXMuX2xhdGxuZ3NbMF0gOiB0aGlzLl9sYXRsbmdzWzBdWzBdO1xuICBcdH0sXG5cbiAgXHRfY2xpcFBvaW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gcG9seWdvbnMgbmVlZCBhIGRpZmZlcmVudCBjbGlwcGluZyBhbGdvcml0aG0gc28gd2UgcmVkZWZpbmUgdGhhdFxuXG4gIFx0XHR2YXIgYm91bmRzID0gdGhpcy5fcmVuZGVyZXIuX2JvdW5kcyxcbiAgXHRcdCAgICB3ID0gdGhpcy5vcHRpb25zLndlaWdodCxcbiAgXHRcdCAgICBwID0gbmV3IFBvaW50KHcsIHcpO1xuXG4gIFx0XHQvLyBpbmNyZWFzZSBjbGlwIHBhZGRpbmcgYnkgc3Ryb2tlIHdpZHRoIHRvIGF2b2lkIHN0cm9rZSBvbiBjbGlwIGVkZ2VzXG4gIFx0XHRib3VuZHMgPSBuZXcgQm91bmRzKGJvdW5kcy5taW4uc3VidHJhY3QocCksIGJvdW5kcy5tYXguYWRkKHApKTtcblxuICBcdFx0dGhpcy5fcGFydHMgPSBbXTtcbiAgXHRcdGlmICghdGhpcy5fcHhCb3VuZHMgfHwgIXRoaXMuX3B4Qm91bmRzLmludGVyc2VjdHMoYm91bmRzKSkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubm9DbGlwKSB7XG4gIFx0XHRcdHRoaXMuX3BhcnRzID0gdGhpcy5fcmluZ3M7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHRoaXMuX3JpbmdzLmxlbmd0aCwgY2xpcHBlZDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGNsaXBwZWQgPSBjbGlwUG9seWdvbih0aGlzLl9yaW5nc1tpXSwgYm91bmRzLCB0cnVlKTtcbiAgXHRcdFx0aWYgKGNsaXBwZWQubGVuZ3RoKSB7XG4gIFx0XHRcdFx0dGhpcy5fcGFydHMucHVzaChjbGlwcGVkKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX3VwZGF0ZVBvbHkodGhpcywgdHJ1ZSk7XG4gIFx0fSxcblxuICBcdC8vIE5lZWRlZCBieSB0aGUgYENhbnZhc2AgcmVuZGVyZXIgZm9yIGludGVyYWN0aXZpdHlcbiAgXHRfY29udGFpbnNQb2ludDogZnVuY3Rpb24gKHApIHtcbiAgXHRcdHZhciBpbnNpZGUgPSBmYWxzZSxcbiAgXHRcdCAgICBwYXJ0LCBwMSwgcDIsIGksIGosIGssIGxlbiwgbGVuMjtcblxuICBcdFx0aWYgKCF0aGlzLl9weEJvdW5kcyB8fCAhdGhpcy5fcHhCb3VuZHMuY29udGFpbnMocCkpIHsgcmV0dXJuIGZhbHNlOyB9XG5cbiAgXHRcdC8vIHJheSBjYXN0aW5nIGFsZ29yaXRobSBmb3IgZGV0ZWN0aW5nIGlmIHBvaW50IGlzIGluIHBvbHlnb25cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IHRoaXMuX3BhcnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdHBhcnQgPSB0aGlzLl9wYXJ0c1tpXTtcblxuICBcdFx0XHRmb3IgKGogPSAwLCBsZW4yID0gcGFydC5sZW5ndGgsIGsgPSBsZW4yIC0gMTsgaiA8IGxlbjI7IGsgPSBqKyspIHtcbiAgXHRcdFx0XHRwMSA9IHBhcnRbal07XG4gIFx0XHRcdFx0cDIgPSBwYXJ0W2tdO1xuXG4gIFx0XHRcdFx0aWYgKCgocDEueSA+IHAueSkgIT09IChwMi55ID4gcC55KSkgJiYgKHAueCA8IChwMi54IC0gcDEueCkgKiAocC55IC0gcDEueSkgLyAocDIueSAtIHAxLnkpICsgcDEueCkpIHtcbiAgXHRcdFx0XHRcdGluc2lkZSA9ICFpbnNpZGU7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIGFsc28gY2hlY2sgaWYgaXQncyBvbiBwb2x5Z29uIHN0cm9rZVxuICBcdFx0cmV0dXJuIGluc2lkZSB8fCBQb2x5bGluZS5wcm90b3R5cGUuX2NvbnRhaW5zUG9pbnQuY2FsbCh0aGlzLCBwLCB0cnVlKTtcbiAgXHR9XG5cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLnBvbHlnb24obGF0bG5nczogTGF0TG5nW10sIG9wdGlvbnM/OiBQb2x5bGluZSBvcHRpb25zKVxuICBmdW5jdGlvbiBwb2x5Z29uKGxhdGxuZ3MsIG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IFBvbHlnb24obGF0bG5ncywgb3B0aW9ucyk7XG4gIH1cblxuICAvKlxyXG4gICAqIEBjbGFzcyBHZW9KU09OXHJcbiAgICogQGFrYSBMLkdlb0pTT05cclxuICAgKiBAaW5oZXJpdHMgRmVhdHVyZUdyb3VwXHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgR2VvSlNPTiBvYmplY3Qgb3IgYW4gYXJyYXkgb2YgR2VvSlNPTiBvYmplY3RzLiBBbGxvd3MgeW91IHRvIHBhcnNlXHJcbiAgICogR2VvSlNPTiBkYXRhIGFuZCBkaXNwbGF5IGl0IG9uIHRoZSBtYXAuIEV4dGVuZHMgYEZlYXR1cmVHcm91cGAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLmdlb0pTT04oZGF0YSwge1xyXG4gICAqIFx0c3R5bGU6IGZ1bmN0aW9uIChmZWF0dXJlKSB7XHJcbiAgICogXHRcdHJldHVybiB7Y29sb3I6IGZlYXR1cmUucHJvcGVydGllcy5jb2xvcn07XHJcbiAgICogXHR9XHJcbiAgICogfSkuYmluZFBvcHVwKGZ1bmN0aW9uIChsYXllcikge1xyXG4gICAqIFx0cmV0dXJuIGxheWVyLmZlYXR1cmUucHJvcGVydGllcy5kZXNjcmlwdGlvbjtcclxuICAgKiB9KS5hZGRUbyhtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgR2VvSlNPTiA9IEZlYXR1cmVHcm91cC5leHRlbmQoe1xyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKiBAYWthIEdlb0pTT04gb3B0aW9uc1xyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gcG9pbnRUb0xheWVyOiBGdW5jdGlvbiA9ICpcclxuICBcdCAqIEEgYEZ1bmN0aW9uYCBkZWZpbmluZyBob3cgR2VvSlNPTiBwb2ludHMgc3Bhd24gTGVhZmxldCBsYXllcnMuIEl0IGlzIGludGVybmFsbHlcclxuICBcdCAqIGNhbGxlZCB3aGVuIGRhdGEgaXMgYWRkZWQsIHBhc3NpbmcgdGhlIEdlb0pTT04gcG9pbnQgZmVhdHVyZSBhbmQgaXRzIGBMYXRMbmdgLlxyXG4gIFx0ICogVGhlIGRlZmF1bHQgaXMgdG8gc3Bhd24gYSBkZWZhdWx0IGBNYXJrZXJgOlxyXG4gIFx0ICogYGBganNcclxuICBcdCAqIGZ1bmN0aW9uKGdlb0pzb25Qb2ludCwgbGF0bG5nKSB7XHJcbiAgXHQgKiBcdHJldHVybiBMLm1hcmtlcihsYXRsbmcpO1xyXG4gIFx0ICogfVxyXG4gIFx0ICogYGBgXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBzdHlsZTogRnVuY3Rpb24gPSAqXHJcbiAgXHQgKiBBIGBGdW5jdGlvbmAgZGVmaW5pbmcgdGhlIGBQYXRoIG9wdGlvbnNgIGZvciBzdHlsaW5nIEdlb0pTT04gbGluZXMgYW5kIHBvbHlnb25zLFxyXG4gIFx0ICogY2FsbGVkIGludGVybmFsbHkgd2hlbiBkYXRhIGlzIGFkZGVkLlxyXG4gIFx0ICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgdG8gbm90IG92ZXJyaWRlIGFueSBkZWZhdWx0czpcclxuICBcdCAqIGBgYGpzXHJcbiAgXHQgKiBmdW5jdGlvbiAoZ2VvSnNvbkZlYXR1cmUpIHtcclxuICBcdCAqIFx0cmV0dXJuIHt9XHJcbiAgXHQgKiB9XHJcbiAgXHQgKiBgYGBcclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIG9uRWFjaEZlYXR1cmU6IEZ1bmN0aW9uID0gKlxyXG4gIFx0ICogQSBgRnVuY3Rpb25gIHRoYXQgd2lsbCBiZSBjYWxsZWQgb25jZSBmb3IgZWFjaCBjcmVhdGVkIGBGZWF0dXJlYCwgYWZ0ZXIgaXQgaGFzXHJcbiAgXHQgKiBiZWVuIGNyZWF0ZWQgYW5kIHN0eWxlZC4gVXNlZnVsIGZvciBhdHRhY2hpbmcgZXZlbnRzIGFuZCBwb3B1cHMgdG8gZmVhdHVyZXMuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0byBkbyBub3RoaW5nIHdpdGggdGhlIG5ld2x5IGNyZWF0ZWQgbGF5ZXJzOlxyXG4gIFx0ICogYGBganNcclxuICBcdCAqIGZ1bmN0aW9uIChmZWF0dXJlLCBsYXllcikge31cclxuICBcdCAqIGBgYFxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gZmlsdGVyOiBGdW5jdGlvbiA9ICpcclxuICBcdCAqIEEgYEZ1bmN0aW9uYCB0aGF0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgd2hldGhlciB0byBpbmNsdWRlIGEgZmVhdHVyZSBvciBub3QuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0byBpbmNsdWRlIGFsbCBmZWF0dXJlczpcclxuICBcdCAqIGBgYGpzXHJcbiAgXHQgKiBmdW5jdGlvbiAoZ2VvSnNvbkZlYXR1cmUpIHtcclxuICBcdCAqIFx0cmV0dXJuIHRydWU7XHJcbiAgXHQgKiB9XHJcbiAgXHQgKiBgYGBcclxuICBcdCAqIE5vdGU6IGR5bmFtaWNhbGx5IGNoYW5naW5nIHRoZSBgZmlsdGVyYCBvcHRpb24gd2lsbCBoYXZlIGVmZmVjdCBvbmx5IG9uIG5ld2x5XHJcbiAgXHQgKiBhZGRlZCBkYXRhLiBJdCB3aWxsIF9ub3RfIHJlLWV2YWx1YXRlIGFscmVhZHkgaW5jbHVkZWQgZmVhdHVyZXMuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBjb29yZHNUb0xhdExuZzogRnVuY3Rpb24gPSAqXHJcbiAgXHQgKiBBIGBGdW5jdGlvbmAgdGhhdCB3aWxsIGJlIHVzZWQgZm9yIGNvbnZlcnRpbmcgR2VvSlNPTiBjb29yZGluYXRlcyB0byBgTGF0TG5nYHMuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0aGUgYGNvb3Jkc1RvTGF0TG5nYCBzdGF0aWMgbWV0aG9kLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gbWFya2Vyc0luaGVyaXRPcHRpb25zOiBCb29sZWFuID0gZmFsc2VcclxuICBcdCAqIFdoZXRoZXIgZGVmYXVsdCBNYXJrZXJzIGZvciBcIlBvaW50XCIgdHlwZSBGZWF0dXJlcyBpbmhlcml0IGZyb20gZ3JvdXAgb3B0aW9ucy5cclxuICBcdCAqL1xyXG5cclxuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChnZW9qc29uLCBvcHRpb25zKSB7XHJcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSB7fTtcclxuXHJcbiAgXHRcdGlmIChnZW9qc29uKSB7XHJcbiAgXHRcdFx0dGhpcy5hZGREYXRhKGdlb2pzb24pO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkRGF0YSggPEdlb0pTT04+IGRhdGEgKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhIEdlb0pTT04gb2JqZWN0IHRvIHRoZSBsYXllci5cclxuICBcdGFkZERhdGE6IGZ1bmN0aW9uIChnZW9qc29uKSB7XHJcbiAgXHRcdHZhciBmZWF0dXJlcyA9IGlzQXJyYXkoZ2VvanNvbikgPyBnZW9qc29uIDogZ2VvanNvbi5mZWF0dXJlcyxcclxuICBcdFx0ICAgIGksIGxlbiwgZmVhdHVyZTtcclxuXHJcbiAgXHRcdGlmIChmZWF0dXJlcykge1xyXG4gIFx0XHRcdGZvciAoaSA9IDAsIGxlbiA9IGZlYXR1cmVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHQvLyBvbmx5IGFkZCB0aGlzIGlmIGdlb21ldHJ5IG9yIGdlb21ldHJpZXMgYXJlIHNldCBhbmQgbm90IG51bGxcclxuICBcdFx0XHRcdGZlYXR1cmUgPSBmZWF0dXJlc1tpXTtcclxuICBcdFx0XHRcdGlmIChmZWF0dXJlLmdlb21ldHJpZXMgfHwgZmVhdHVyZS5nZW9tZXRyeSB8fCBmZWF0dXJlLmZlYXR1cmVzIHx8IGZlYXR1cmUuY29vcmRpbmF0ZXMpIHtcclxuICBcdFx0XHRcdFx0dGhpcy5hZGREYXRhKGZlYXR1cmUpO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy5maWx0ZXIgJiYgIW9wdGlvbnMuZmlsdGVyKGdlb2pzb24pKSB7IHJldHVybiB0aGlzOyB9XHJcblxyXG4gIFx0XHR2YXIgbGF5ZXIgPSBnZW9tZXRyeVRvTGF5ZXIoZ2VvanNvbiwgb3B0aW9ucyk7XHJcbiAgXHRcdGlmICghbGF5ZXIpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0fVxyXG4gIFx0XHRsYXllci5mZWF0dXJlID0gYXNGZWF0dXJlKGdlb2pzb24pO1xyXG5cclxuICBcdFx0bGF5ZXIuZGVmYXVsdE9wdGlvbnMgPSBsYXllci5vcHRpb25zO1xyXG4gIFx0XHR0aGlzLnJlc2V0U3R5bGUobGF5ZXIpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMub25FYWNoRmVhdHVyZSkge1xyXG4gIFx0XHRcdG9wdGlvbnMub25FYWNoRmVhdHVyZShnZW9qc29uLCBsYXllcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLmFkZExheWVyKGxheWVyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCByZXNldFN0eWxlKCA8UGF0aD4gbGF5ZXI/ICk6IHRoaXNcclxuICBcdC8vIFJlc2V0cyB0aGUgZ2l2ZW4gdmVjdG9yIGxheWVyJ3Mgc3R5bGUgdG8gdGhlIG9yaWdpbmFsIEdlb0pTT04gc3R5bGUsIHVzZWZ1bCBmb3IgcmVzZXR0aW5nIHN0eWxlIGFmdGVyIGhvdmVyIGV2ZW50cy5cclxuICBcdC8vIElmIGBsYXllcmAgaXMgb21pdHRlZCwgdGhlIHN0eWxlIG9mIGFsbCBmZWF0dXJlcyBpbiB0aGUgY3VycmVudCBsYXllciBpcyByZXNldC5cclxuICBcdHJlc2V0U3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRpZiAobGF5ZXIgPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzLmVhY2hMYXllcih0aGlzLnJlc2V0U3R5bGUsIHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdC8vIHJlc2V0IGFueSBjdXN0b20gc3R5bGVzXHJcbiAgXHRcdGxheWVyLm9wdGlvbnMgPSBleHRlbmQoe30sIGxheWVyLmRlZmF1bHRPcHRpb25zKTtcclxuICBcdFx0dGhpcy5fc2V0TGF5ZXJTdHlsZShsYXllciwgdGhpcy5vcHRpb25zLnN0eWxlKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0U3R5bGUoIDxGdW5jdGlvbj4gc3R5bGUgKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyBzdHlsZXMgb2YgR2VvSlNPTiB2ZWN0b3IgbGF5ZXJzIHdpdGggdGhlIGdpdmVuIHN0eWxlIGZ1bmN0aW9uLlxyXG4gIFx0c2V0U3R5bGU6IGZ1bmN0aW9uIChzdHlsZSkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdFx0dGhpcy5fc2V0TGF5ZXJTdHlsZShsYXllciwgc3R5bGUpO1xyXG4gIFx0XHR9LCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldExheWVyU3R5bGU6IGZ1bmN0aW9uIChsYXllciwgc3R5bGUpIHtcclxuICBcdFx0aWYgKGxheWVyLnNldFN0eWxlKSB7XHJcbiAgXHRcdFx0aWYgKHR5cGVvZiBzdHlsZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdFx0c3R5bGUgPSBzdHlsZShsYXllci5mZWF0dXJlKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bGF5ZXIuc2V0U3R5bGUoc3R5bGUpO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBzZWN0aW9uXHJcbiAgLy8gVGhlcmUgYXJlIHNldmVyYWwgc3RhdGljIGZ1bmN0aW9ucyB3aGljaCBjYW4gYmUgY2FsbGVkIHdpdGhvdXQgaW5zdGFudGlhdGluZyBMLkdlb0pTT046XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZW9tZXRyeVRvTGF5ZXIoZmVhdHVyZURhdGE6IE9iamVjdCwgb3B0aW9ucz86IEdlb0pTT04gb3B0aW9ucyk6IExheWVyXHJcbiAgLy8gQ3JlYXRlcyBhIGBMYXllcmAgZnJvbSBhIGdpdmVuIEdlb0pTT04gZmVhdHVyZS4gQ2FuIHVzZSBhIGN1c3RvbVxyXG4gIC8vIFtgcG9pbnRUb0xheWVyYF0oI2dlb2pzb24tcG9pbnR0b2xheWVyKSBhbmQvb3IgW2Bjb29yZHNUb0xhdExuZ2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5nKVxyXG4gIC8vIGZ1bmN0aW9ucyBpZiBwcm92aWRlZCBhcyBvcHRpb25zLlxyXG4gIGZ1bmN0aW9uIGdlb21ldHJ5VG9MYXllcihnZW9qc29uLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0dmFyIGdlb21ldHJ5ID0gZ2VvanNvbi50eXBlID09PSAnRmVhdHVyZScgPyBnZW9qc29uLmdlb21ldHJ5IDogZ2VvanNvbixcclxuICBcdCAgICBjb29yZHMgPSBnZW9tZXRyeSA/IGdlb21ldHJ5LmNvb3JkaW5hdGVzIDogbnVsbCxcclxuICBcdCAgICBsYXllcnMgPSBbXSxcclxuICBcdCAgICBwb2ludFRvTGF5ZXIgPSBvcHRpb25zICYmIG9wdGlvbnMucG9pbnRUb0xheWVyLFxyXG4gIFx0ICAgIF9jb29yZHNUb0xhdExuZyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5jb29yZHNUb0xhdExuZyB8fCBjb29yZHNUb0xhdExuZyxcclxuICBcdCAgICBsYXRsbmcsIGxhdGxuZ3MsIGksIGxlbjtcclxuXHJcbiAgXHRpZiAoIWNvb3JkcyAmJiAhZ2VvbWV0cnkpIHtcclxuICBcdFx0cmV0dXJuIG51bGw7XHJcbiAgXHR9XHJcblxyXG4gIFx0c3dpdGNoIChnZW9tZXRyeS50eXBlKSB7XHJcbiAgXHRjYXNlICdQb2ludCc6XHJcbiAgXHRcdGxhdGxuZyA9IF9jb29yZHNUb0xhdExuZyhjb29yZHMpO1xyXG4gIFx0XHRyZXR1cm4gX3BvaW50VG9MYXllcihwb2ludFRvTGF5ZXIsIGdlb2pzb24sIGxhdGxuZywgb3B0aW9ucyk7XHJcblxyXG4gIFx0Y2FzZSAnTXVsdGlQb2ludCc6XHJcbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvb3Jkcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdGxhdGxuZyA9IF9jb29yZHNUb0xhdExuZyhjb29yZHNbaV0pO1xyXG4gIFx0XHRcdGxheWVycy5wdXNoKF9wb2ludFRvTGF5ZXIocG9pbnRUb0xheWVyLCBnZW9qc29uLCBsYXRsbmcsIG9wdGlvbnMpKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gbmV3IEZlYXR1cmVHcm91cChsYXllcnMpO1xyXG5cclxuICBcdGNhc2UgJ0xpbmVTdHJpbmcnOlxyXG4gIFx0Y2FzZSAnTXVsdGlMaW5lU3RyaW5nJzpcclxuICBcdFx0bGF0bG5ncyA9IGNvb3Jkc1RvTGF0TG5ncyhjb29yZHMsIGdlb21ldHJ5LnR5cGUgPT09ICdMaW5lU3RyaW5nJyA/IDAgOiAxLCBfY29vcmRzVG9MYXRMbmcpO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvbHlsaW5lKGxhdGxuZ3MsIG9wdGlvbnMpO1xyXG5cclxuICBcdGNhc2UgJ1BvbHlnb24nOlxyXG4gIFx0Y2FzZSAnTXVsdGlQb2x5Z29uJzpcclxuICBcdFx0bGF0bG5ncyA9IGNvb3Jkc1RvTGF0TG5ncyhjb29yZHMsIGdlb21ldHJ5LnR5cGUgPT09ICdQb2x5Z29uJyA/IDEgOiAyLCBfY29vcmRzVG9MYXRMbmcpO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvbHlnb24obGF0bG5ncywgb3B0aW9ucyk7XHJcblxyXG4gIFx0Y2FzZSAnR2VvbWV0cnlDb2xsZWN0aW9uJzpcclxuICBcdFx0Zm9yIChpID0gMCwgbGVuID0gZ2VvbWV0cnkuZ2VvbWV0cmllcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdHZhciBnZW9MYXllciA9IGdlb21ldHJ5VG9MYXllcih7XHJcbiAgXHRcdFx0XHRnZW9tZXRyeTogZ2VvbWV0cnkuZ2VvbWV0cmllc1tpXSxcclxuICBcdFx0XHRcdHR5cGU6ICdGZWF0dXJlJyxcclxuICBcdFx0XHRcdHByb3BlcnRpZXM6IGdlb2pzb24ucHJvcGVydGllc1xyXG4gIFx0XHRcdH0sIG9wdGlvbnMpO1xyXG5cclxuICBcdFx0XHRpZiAoZ2VvTGF5ZXIpIHtcclxuICBcdFx0XHRcdGxheWVycy5wdXNoKGdlb0xheWVyKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIG5ldyBGZWF0dXJlR3JvdXAobGF5ZXJzKTtcclxuXHJcbiAgXHRjYXNlICdGZWF0dXJlQ29sbGVjdGlvbic6XHJcbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGdlb21ldHJ5LmZlYXR1cmVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0dmFyIGZlYXR1cmVMYXllciA9IGdlb21ldHJ5VG9MYXllcihnZW9tZXRyeS5mZWF0dXJlc1tpXSwgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHRcdGlmIChmZWF0dXJlTGF5ZXIpIHtcclxuICBcdFx0XHRcdGxheWVycy5wdXNoKGZlYXR1cmVMYXllcik7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBuZXcgRmVhdHVyZUdyb3VwKGxheWVycyk7XHJcblxyXG4gIFx0ZGVmYXVsdDpcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEdlb0pTT04gb2JqZWN0LicpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gX3BvaW50VG9MYXllcihwb2ludFRvTGF5ZXJGbiwgZ2VvanNvbiwgbGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gcG9pbnRUb0xheWVyRm4gP1xyXG4gIFx0XHRwb2ludFRvTGF5ZXJGbihnZW9qc29uLCBsYXRsbmcpIDpcclxuICBcdFx0bmV3IE1hcmtlcihsYXRsbmcsIG9wdGlvbnMgJiYgb3B0aW9ucy5tYXJrZXJzSW5oZXJpdE9wdGlvbnMgJiYgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY29vcmRzVG9MYXRMbmcoY29vcmRzOiBBcnJheSk6IExhdExuZ1xyXG4gIC8vIENyZWF0ZXMgYSBgTGF0TG5nYCBvYmplY3QgZnJvbSBhbiBhcnJheSBvZiAyIG51bWJlcnMgKGxvbmdpdHVkZSwgbGF0aXR1ZGUpXHJcbiAgLy8gb3IgMyBudW1iZXJzIChsb25naXR1ZGUsIGxhdGl0dWRlLCBhbHRpdHVkZSkgdXNlZCBpbiBHZW9KU09OIGZvciBwb2ludHMuXHJcbiAgZnVuY3Rpb24gY29vcmRzVG9MYXRMbmcoY29vcmRzKSB7XHJcbiAgXHRyZXR1cm4gbmV3IExhdExuZyhjb29yZHNbMV0sIGNvb3Jkc1swXSwgY29vcmRzWzJdKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjb29yZHNUb0xhdExuZ3MoY29vcmRzOiBBcnJheSwgbGV2ZWxzRGVlcD86IE51bWJlciwgY29vcmRzVG9MYXRMbmc/OiBGdW5jdGlvbik6IEFycmF5XHJcbiAgLy8gQ3JlYXRlcyBhIG11bHRpZGltZW5zaW9uYWwgYXJyYXkgb2YgYExhdExuZ2BzIGZyb20gYSBHZW9KU09OIGNvb3JkaW5hdGVzIGFycmF5LlxyXG4gIC8vIGBsZXZlbHNEZWVwYCBzcGVjaWZpZXMgdGhlIG5lc3RpbmcgbGV2ZWwgKDAgaXMgZm9yIGFuIGFycmF5IG9mIHBvaW50cywgMSBmb3IgYW4gYXJyYXkgb2YgYXJyYXlzIG9mIHBvaW50cywgZXRjLiwgMCBieSBkZWZhdWx0KS5cclxuICAvLyBDYW4gdXNlIGEgY3VzdG9tIFtgY29vcmRzVG9MYXRMbmdgXSgjZ2VvanNvbi1jb29yZHN0b2xhdGxuZykgZnVuY3Rpb24uXHJcbiAgZnVuY3Rpb24gY29vcmRzVG9MYXRMbmdzKGNvb3JkcywgbGV2ZWxzRGVlcCwgX2Nvb3Jkc1RvTGF0TG5nKSB7XHJcbiAgXHR2YXIgbGF0bG5ncyA9IFtdO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBjb29yZHMubGVuZ3RoLCBsYXRsbmc7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRsYXRsbmcgPSBsZXZlbHNEZWVwID9cclxuICBcdFx0XHRjb29yZHNUb0xhdExuZ3MoY29vcmRzW2ldLCBsZXZlbHNEZWVwIC0gMSwgX2Nvb3Jkc1RvTGF0TG5nKSA6XHJcbiAgXHRcdFx0KF9jb29yZHNUb0xhdExuZyB8fCBjb29yZHNUb0xhdExuZykoY29vcmRzW2ldKTtcclxuXHJcbiAgXHRcdGxhdGxuZ3MucHVzaChsYXRsbmcpO1xyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiBsYXRsbmdzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGxhdExuZ1RvQ29vcmRzKGxhdGxuZzogTGF0TG5nLCBwcmVjaXNpb24/OiBOdW1iZXJ8ZmFsc2UpOiBBcnJheVxyXG4gIC8vIFJldmVyc2Ugb2YgW2Bjb29yZHNUb0xhdExuZ2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5nKVxyXG4gIC8vIENvb3JkaW5hdGVzIHZhbHVlcyBhcmUgcm91bmRlZCB3aXRoIFtgZm9ybWF0TnVtYF0oI3V0aWwtZm9ybWF0bnVtKSBmdW5jdGlvbi5cclxuICBmdW5jdGlvbiBsYXRMbmdUb0Nvb3JkcyhsYXRsbmcsIHByZWNpc2lvbikge1xyXG4gIFx0bGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcclxuICBcdHJldHVybiBsYXRsbmcuYWx0ICE9PSB1bmRlZmluZWQgP1xyXG4gIFx0XHRbZm9ybWF0TnVtKGxhdGxuZy5sbmcsIHByZWNpc2lvbiksIGZvcm1hdE51bShsYXRsbmcubGF0LCBwcmVjaXNpb24pLCBmb3JtYXROdW0obGF0bG5nLmFsdCwgcHJlY2lzaW9uKV0gOlxyXG4gIFx0XHRbZm9ybWF0TnVtKGxhdGxuZy5sbmcsIHByZWNpc2lvbiksIGZvcm1hdE51bShsYXRsbmcubGF0LCBwcmVjaXNpb24pXTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBsYXRMbmdzVG9Db29yZHMobGF0bG5nczogQXJyYXksIGxldmVsc0RlZXA/OiBOdW1iZXIsIGNsb3NlZD86IEJvb2xlYW4sIHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IEFycmF5XHJcbiAgLy8gUmV2ZXJzZSBvZiBbYGNvb3Jkc1RvTGF0TG5nc2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5ncylcclxuICAvLyBgY2xvc2VkYCBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGZpcnN0IHBvaW50IHNob3VsZCBiZSBhcHBlbmRlZCB0byB0aGUgZW5kIG9mIHRoZSBhcnJheSB0byBjbG9zZSB0aGUgZmVhdHVyZSwgb25seSB1c2VkIHdoZW4gYGxldmVsc0RlZXBgIGlzIDAuIEZhbHNlIGJ5IGRlZmF1bHQuXHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uLlxyXG4gIGZ1bmN0aW9uIGxhdExuZ3NUb0Nvb3JkcyhsYXRsbmdzLCBsZXZlbHNEZWVwLCBjbG9zZWQsIHByZWNpc2lvbikge1xyXG4gIFx0dmFyIGNvb3JkcyA9IFtdO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXRsbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdC8vIENoZWNrIGZvciBmbGF0IGFycmF5cyByZXF1aXJlZCB0byBlbnN1cmUgdW5iYWxhbmNlZCBhcnJheXMgYXJlIGNvcnJlY3RseSBjb252ZXJ0ZWQgaW4gcmVjdXJzaW9uXHJcbiAgXHRcdGNvb3Jkcy5wdXNoKGxldmVsc0RlZXAgP1xyXG4gIFx0XHRcdGxhdExuZ3NUb0Nvb3JkcyhsYXRsbmdzW2ldLCBpc0ZsYXQobGF0bG5nc1tpXSkgPyAwIDogbGV2ZWxzRGVlcCAtIDEsIGNsb3NlZCwgcHJlY2lzaW9uKSA6XHJcbiAgXHRcdFx0bGF0TG5nVG9Db29yZHMobGF0bG5nc1tpXSwgcHJlY2lzaW9uKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0aWYgKCFsZXZlbHNEZWVwICYmIGNsb3NlZCkge1xyXG4gIFx0XHRjb29yZHMucHVzaChjb29yZHNbMF0uc2xpY2UoKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIGNvb3JkcztcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIGdldEZlYXR1cmUobGF5ZXIsIG5ld0dlb21ldHJ5KSB7XHJcbiAgXHRyZXR1cm4gbGF5ZXIuZmVhdHVyZSA/XHJcbiAgXHRcdGV4dGVuZCh7fSwgbGF5ZXIuZmVhdHVyZSwge2dlb21ldHJ5OiBuZXdHZW9tZXRyeX0pIDpcclxuICBcdFx0YXNGZWF0dXJlKG5ld0dlb21ldHJ5KTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBhc0ZlYXR1cmUoZ2VvanNvbjogT2JqZWN0KTogT2JqZWN0XHJcbiAgLy8gTm9ybWFsaXplIEdlb0pTT04gZ2VvbWV0cmllcy9mZWF0dXJlcyBpbnRvIEdlb0pTT04gZmVhdHVyZXMuXHJcbiAgZnVuY3Rpb24gYXNGZWF0dXJlKGdlb2pzb24pIHtcclxuICBcdGlmIChnZW9qc29uLnR5cGUgPT09ICdGZWF0dXJlJyB8fCBnZW9qc29uLnR5cGUgPT09ICdGZWF0dXJlQ29sbGVjdGlvbicpIHtcclxuICBcdFx0cmV0dXJuIGdlb2pzb247XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIHtcclxuICBcdFx0dHlwZTogJ0ZlYXR1cmUnLFxyXG4gIFx0XHRwcm9wZXJ0aWVzOiB7fSxcclxuICBcdFx0Z2VvbWV0cnk6IGdlb2pzb25cclxuICBcdH07XHJcbiAgfVxyXG5cclxuICB2YXIgUG9pbnRUb0dlb0pTT04gPSB7XHJcbiAgXHR0b0dlb0pTT046IGZ1bmN0aW9uIChwcmVjaXNpb24pIHtcclxuICBcdFx0cmV0dXJuIGdldEZlYXR1cmUodGhpcywge1xyXG4gIFx0XHRcdHR5cGU6ICdQb2ludCcsXHJcbiAgXHRcdFx0Y29vcmRpbmF0ZXM6IGxhdExuZ1RvQ29vcmRzKHRoaXMuZ2V0TGF0TG5nKCksIHByZWNpc2lvbilcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBNYXJrZXJcclxuICAvLyBAc2VjdGlvbiBPdGhlciBtZXRob2RzXHJcbiAgLy8gQG1ldGhvZCB0b0dlb0pTT04ocHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogT2JqZWN0XHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgLy8gUmV0dXJucyBhIFtgR2VvSlNPTmBdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dlb0pTT04pIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtYXJrZXIgKGFzIGEgR2VvSlNPTiBgUG9pbnRgIEZlYXR1cmUpLlxyXG4gIE1hcmtlci5pbmNsdWRlKFBvaW50VG9HZW9KU09OKTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBDaXJjbGVNYXJrZXJcclxuICAvLyBAbWV0aG9kIHRvR2VvSlNPTihwcmVjaXNpb24/OiBOdW1iZXJ8ZmFsc2UpOiBPYmplY3RcclxuICAvLyBDb29yZGluYXRlcyB2YWx1ZXMgYXJlIHJvdW5kZWQgd2l0aCBbYGZvcm1hdE51bWBdKCN1dGlsLWZvcm1hdG51bSkgZnVuY3Rpb24gd2l0aCBnaXZlbiBgcHJlY2lzaW9uYC5cclxuICAvLyBSZXR1cm5zIGEgW2BHZW9KU09OYF0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR2VvSlNPTikgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNpcmNsZSBtYXJrZXIgKGFzIGEgR2VvSlNPTiBgUG9pbnRgIEZlYXR1cmUpLlxyXG4gIENpcmNsZS5pbmNsdWRlKFBvaW50VG9HZW9KU09OKTtcclxuICBDaXJjbGVNYXJrZXIuaW5jbHVkZShQb2ludFRvR2VvSlNPTik7XHJcblxyXG5cclxuICAvLyBAbmFtZXNwYWNlIFBvbHlsaW5lXHJcbiAgLy8gQG1ldGhvZCB0b0dlb0pTT04ocHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogT2JqZWN0XHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgLy8gUmV0dXJucyBhIFtgR2VvSlNPTmBdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dlb0pTT04pIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwb2x5bGluZSAoYXMgYSBHZW9KU09OIGBMaW5lU3RyaW5nYCBvciBgTXVsdGlMaW5lU3RyaW5nYCBGZWF0dXJlKS5cclxuICBQb2x5bGluZS5pbmNsdWRlKHtcclxuICBcdHRvR2VvSlNPTjogZnVuY3Rpb24gKHByZWNpc2lvbikge1xyXG4gIFx0XHR2YXIgbXVsdGkgPSAhaXNGbGF0KHRoaXMuX2xhdGxuZ3MpO1xyXG5cclxuICBcdFx0dmFyIGNvb3JkcyA9IGxhdExuZ3NUb0Nvb3Jkcyh0aGlzLl9sYXRsbmdzLCBtdWx0aSA/IDEgOiAwLCBmYWxzZSwgcHJlY2lzaW9uKTtcclxuXHJcbiAgXHRcdHJldHVybiBnZXRGZWF0dXJlKHRoaXMsIHtcclxuICBcdFx0XHR0eXBlOiAobXVsdGkgPyAnTXVsdGknIDogJycpICsgJ0xpbmVTdHJpbmcnLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgUG9seWdvblxyXG4gIC8vIEBtZXRob2QgdG9HZW9KU09OKHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IE9iamVjdFxyXG4gIC8vIENvb3JkaW5hdGVzIHZhbHVlcyBhcmUgcm91bmRlZCB3aXRoIFtgZm9ybWF0TnVtYF0oI3V0aWwtZm9ybWF0bnVtKSBmdW5jdGlvbiB3aXRoIGdpdmVuIGBwcmVjaXNpb25gLlxyXG4gIC8vIFJldHVybnMgYSBbYEdlb0pTT05gXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9HZW9KU09OKSByZXByZXNlbnRhdGlvbiBvZiB0aGUgcG9seWdvbiAoYXMgYSBHZW9KU09OIGBQb2x5Z29uYCBvciBgTXVsdGlQb2x5Z29uYCBGZWF0dXJlKS5cclxuICBQb2x5Z29uLmluY2x1ZGUoe1xyXG4gIFx0dG9HZW9KU09OOiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHZhciBob2xlcyA9ICFpc0ZsYXQodGhpcy5fbGF0bG5ncyksXHJcbiAgXHRcdCAgICBtdWx0aSA9IGhvbGVzICYmICFpc0ZsYXQodGhpcy5fbGF0bG5nc1swXSk7XHJcblxyXG4gIFx0XHR2YXIgY29vcmRzID0gbGF0TG5nc1RvQ29vcmRzKHRoaXMuX2xhdGxuZ3MsIG11bHRpID8gMiA6IGhvbGVzID8gMSA6IDAsIHRydWUsIHByZWNpc2lvbik7XHJcblxyXG4gIFx0XHRpZiAoIWhvbGVzKSB7XHJcbiAgXHRcdFx0Y29vcmRzID0gW2Nvb3Jkc107XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiBnZXRGZWF0dXJlKHRoaXMsIHtcclxuICBcdFx0XHR0eXBlOiAobXVsdGkgPyAnTXVsdGknIDogJycpICsgJ1BvbHlnb24nLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAbmFtZXNwYWNlIExheWVyR3JvdXBcclxuICBMYXllckdyb3VwLmluY2x1ZGUoe1xyXG4gIFx0dG9NdWx0aVBvaW50OiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHZhciBjb29yZHMgPSBbXTtcclxuXHJcbiAgXHRcdHRoaXMuZWFjaExheWVyKGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRcdGNvb3Jkcy5wdXNoKGxheWVyLnRvR2VvSlNPTihwcmVjaXNpb24pLmdlb21ldHJ5LmNvb3JkaW5hdGVzKTtcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRyZXR1cm4gZ2V0RmVhdHVyZSh0aGlzLCB7XHJcbiAgXHRcdFx0dHlwZTogJ011bHRpUG9pbnQnLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9HZW9KU09OKHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IE9iamVjdFxyXG4gIFx0Ly8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgXHQvLyBSZXR1cm5zIGEgW2BHZW9KU09OYF0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR2VvSlNPTikgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxheWVyIGdyb3VwIChhcyBhIEdlb0pTT04gYEZlYXR1cmVDb2xsZWN0aW9uYCwgYEdlb21ldHJ5Q29sbGVjdGlvbmAsIG9yIGBNdWx0aVBvaW50YCkuXHJcbiAgXHR0b0dlb0pTT046IGZ1bmN0aW9uIChwcmVjaXNpb24pIHtcclxuXHJcbiAgXHRcdHZhciB0eXBlID0gdGhpcy5mZWF0dXJlICYmIHRoaXMuZmVhdHVyZS5nZW9tZXRyeSAmJiB0aGlzLmZlYXR1cmUuZ2VvbWV0cnkudHlwZTtcclxuXHJcbiAgXHRcdGlmICh0eXBlID09PSAnTXVsdGlQb2ludCcpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy50b011bHRpUG9pbnQocHJlY2lzaW9uKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGlzR2VvbWV0cnlDb2xsZWN0aW9uID0gdHlwZSA9PT0gJ0dlb21ldHJ5Q29sbGVjdGlvbicsXHJcbiAgXHRcdCAgICBqc29ucyA9IFtdO1xyXG5cclxuICBcdFx0dGhpcy5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdFx0aWYgKGxheWVyLnRvR2VvSlNPTikge1xyXG4gIFx0XHRcdFx0dmFyIGpzb24gPSBsYXllci50b0dlb0pTT04ocHJlY2lzaW9uKTtcclxuICBcdFx0XHRcdGlmIChpc0dlb21ldHJ5Q29sbGVjdGlvbikge1xyXG4gIFx0XHRcdFx0XHRqc29ucy5wdXNoKGpzb24uZ2VvbWV0cnkpO1xyXG4gIFx0XHRcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRcdFx0dmFyIGZlYXR1cmUgPSBhc0ZlYXR1cmUoanNvbik7XHJcbiAgXHRcdFx0XHRcdC8vIFNxdWFzaCBuZXN0ZWQgZmVhdHVyZSBjb2xsZWN0aW9uc1xyXG4gIFx0XHRcdFx0XHRpZiAoZmVhdHVyZS50eXBlID09PSAnRmVhdHVyZUNvbGxlY3Rpb24nKSB7XHJcbiAgXHRcdFx0XHRcdFx0anNvbnMucHVzaC5hcHBseShqc29ucywgZmVhdHVyZS5mZWF0dXJlcyk7XHJcbiAgXHRcdFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHRcdFx0anNvbnMucHVzaChmZWF0dXJlKTtcclxuICBcdFx0XHRcdFx0fVxyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAoaXNHZW9tZXRyeUNvbGxlY3Rpb24pIHtcclxuICBcdFx0XHRyZXR1cm4gZ2V0RmVhdHVyZSh0aGlzLCB7XHJcbiAgXHRcdFx0XHRnZW9tZXRyaWVzOiBqc29ucyxcclxuICBcdFx0XHRcdHR5cGU6ICdHZW9tZXRyeUNvbGxlY3Rpb24nXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB7XHJcbiAgXHRcdFx0dHlwZTogJ0ZlYXR1cmVDb2xsZWN0aW9uJyxcclxuICBcdFx0XHRmZWF0dXJlczoganNvbnNcclxuICBcdFx0fTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBHZW9KU09OXHJcbiAgLy8gQGZhY3RvcnkgTC5nZW9KU09OKGdlb2pzb24/OiBPYmplY3QsIG9wdGlvbnM/OiBHZW9KU09OIG9wdGlvbnMpXHJcbiAgLy8gQ3JlYXRlcyBhIEdlb0pTT04gbGF5ZXIuIE9wdGlvbmFsbHkgYWNjZXB0cyBhbiBvYmplY3QgaW5cclxuICAvLyBbR2VvSlNPTiBmb3JtYXRdKGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3OTQ2KSB0byBkaXNwbGF5IG9uIHRoZSBtYXBcclxuICAvLyAoeW91IGNhbiBhbHRlcm5hdGl2ZWx5IGFkZCBpdCBsYXRlciB3aXRoIGBhZGREYXRhYCBtZXRob2QpIGFuZCBhbiBgb3B0aW9uc2Agb2JqZWN0LlxyXG4gIGZ1bmN0aW9uIGdlb0pTT04oZ2VvanNvbiwgb3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBHZW9KU09OKGdlb2pzb24sIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eS5cclxuICB2YXIgZ2VvSnNvbiA9IGdlb0pTT047XG5cbiAgLypcclxuICAgKiBAY2xhc3MgSW1hZ2VPdmVybGF5XHJcbiAgICogQGFrYSBMLkltYWdlT3ZlcmxheVxyXG4gICAqIEBpbmhlcml0cyBJbnRlcmFjdGl2ZSBsYXllclxyXG4gICAqXHJcbiAgICogVXNlZCB0byBsb2FkIGFuZCBkaXNwbGF5IGEgc2luZ2xlIGltYWdlIG92ZXIgc3BlY2lmaWMgYm91bmRzIG9mIHRoZSBtYXAuIEV4dGVuZHMgYExheWVyYC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBpbWFnZVVybCA9ICdodHRwczovL21hcHMubGliLnV0ZXhhcy5lZHUvbWFwcy9oaXN0b3JpY2FsL25ld2Fya19ual8xOTIyLmpwZycsXHJcbiAgICogXHRpbWFnZUJvdW5kcyA9IFtbNDAuNzEyMjE2LCAtNzQuMjI2NTVdLCBbNDAuNzczOTQxLCAtNzQuMTI1NDRdXTtcclxuICAgKiBMLmltYWdlT3ZlcmxheShpbWFnZVVybCwgaW1hZ2VCb3VuZHMpLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBJbWFnZU92ZXJsYXkgPSBMYXllci5leHRlbmQoe1xyXG5cclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIEltYWdlT3ZlcmxheSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXHJcbiAgXHRcdC8vIFRoZSBvcGFjaXR5IG9mIHRoZSBpbWFnZSBvdmVybGF5LlxyXG4gIFx0XHRvcGFjaXR5OiAxLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhbHQ6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBgYWx0YCBhdHRyaWJ1dGUgb2YgdGhlIGltYWdlICh1c2VmdWwgZm9yIGFjY2Vzc2liaWxpdHkpLlxyXG4gIFx0XHRhbHQ6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBpbnRlcmFjdGl2ZTogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGltYWdlIG92ZXJsYXkgd2lsbCBlbWl0IFttb3VzZSBldmVudHNdKCNpbnRlcmFjdGl2ZS1sYXllcikgd2hlbiBjbGlja2VkIG9yIGhvdmVyZWQuXHJcbiAgXHRcdGludGVyYWN0aXZlOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY3Jvc3NPcmlnaW46IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGltYWdlLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgdGhlIGltYWdlIHdpbGwgaGF2ZSBpdHMgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHNldCB0byB0aGUgU3RyaW5nIHByb3ZpZGVkLiBUaGlzIGlzIG5lZWRlZCBpZiB5b3Ugd2FudCB0byBhY2Nlc3MgaW1hZ2UgcGl4ZWwgZGF0YS5cclxuICBcdFx0Ly8gUmVmZXIgdG8gW0NPUlMgU2V0dGluZ3NdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvQ09SU19zZXR0aW5nc19hdHRyaWJ1dGVzKSBmb3IgdmFsaWQgU3RyaW5nIHZhbHVlcy5cclxuICBcdFx0Y3Jvc3NPcmlnaW46IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBlcnJvck92ZXJsYXlVcmw6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFVSTCB0byB0aGUgb3ZlcmxheSBpbWFnZSB0byBzaG93IGluIHBsYWNlIG9mIHRoZSBvdmVybGF5IHRoYXQgZmFpbGVkIHRvIGxvYWQuXHJcbiAgXHRcdGVycm9yT3ZlcmxheVVybDogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpJbmRleDogTnVtYmVyID0gMVxyXG4gIFx0XHQvLyBUaGUgZXhwbGljaXQgW3pJbmRleF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQ1NTL0NTU19Qb3NpdGlvbmluZy9VbmRlcnN0YW5kaW5nX3pfaW5kZXgpIG9mIHRoZSBvdmVybGF5IGxheWVyLlxyXG4gIFx0XHR6SW5kZXg6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNsYXNzTmFtZTogU3RyaW5nID0gJydcclxuICBcdFx0Ly8gQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIGltYWdlLiBFbXB0eSBieSBkZWZhdWx0LlxyXG4gIFx0XHRjbGFzc05hbWU6ICcnXHJcbiAgXHR9LFxyXG5cclxuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uICh1cmwsIGJvdW5kcywgb3B0aW9ucykgeyAvLyAoU3RyaW5nLCBMYXRMbmdCb3VuZHMsIE9iamVjdClcclxuICBcdFx0dGhpcy5fdXJsID0gdXJsO1xyXG4gIFx0XHR0aGlzLl9ib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9pbWFnZSkge1xyXG4gIFx0XHRcdHRoaXMuX2luaXRJbWFnZSgpO1xyXG5cclxuICBcdFx0XHRpZiAodGhpcy5vcHRpb25zLm9wYWNpdHkgPCAxKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl91cGRhdGVPcGFjaXR5KCk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmludGVyYWN0aXZlKSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5faW1hZ2UsICdsZWFmbGV0LWludGVyYWN0aXZlJyk7XHJcbiAgXHRcdFx0dGhpcy5hZGRJbnRlcmFjdGl2ZVRhcmdldCh0aGlzLl9pbWFnZSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuZ2V0UGFuZSgpLmFwcGVuZENoaWxkKHRoaXMuX2ltYWdlKTtcclxuICBcdFx0dGhpcy5fcmVzZXQoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmVtb3ZlKHRoaXMuX2ltYWdlKTtcclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5pbnRlcmFjdGl2ZSkge1xyXG4gIFx0XHRcdHRoaXMucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faW1hZ2UpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0T3BhY2l0eShvcGFjaXR5OiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBvcGFjaXR5IG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcclxuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ltYWdlKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRzZXRTdHlsZTogZnVuY3Rpb24gKHN0eWxlT3B0cykge1xyXG4gIFx0XHRpZiAoc3R5bGVPcHRzLm9wYWNpdHkpIHtcclxuICBcdFx0XHR0aGlzLnNldE9wYWNpdHkoc3R5bGVPcHRzLm9wYWNpdHkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9Gcm9udCgpOiB0aGlzXHJcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSB0b3Agb2YgYWxsIG92ZXJsYXlzLlxyXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0Zyb250KHRoaXMuX2ltYWdlKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjaygpOiB0aGlzXHJcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSBib3R0b20gb2YgYWxsIG92ZXJsYXlzLlxyXG4gIFx0YnJpbmdUb0JhY2s6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRvQmFjayh0aGlzLl9pbWFnZSk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0VXJsKHVybDogU3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgVVJMIG9mIHRoZSBpbWFnZS5cclxuICBcdHNldFVybDogZnVuY3Rpb24gKHVybCkge1xyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5faW1hZ2UpIHtcclxuICBcdFx0XHR0aGlzLl9pbWFnZS5zcmMgPSB1cmw7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0Qm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xyXG4gIFx0Ly8gVXBkYXRlIHRoZSBib3VuZHMgdGhhdCB0aGlzIEltYWdlT3ZlcmxheSBjb3ZlcnNcclxuICBcdHNldEJvdW5kczogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHR0aGlzLl9ib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX3Jlc2V0KCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgZXZlbnRzID0ge1xyXG4gIFx0XHRcdHpvb206IHRoaXMuX3Jlc2V0LFxyXG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXRcclxuICBcdFx0fTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRldmVudHMuem9vbWFuaW0gPSB0aGlzLl9hbmltYXRlWm9vbTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIGV2ZW50cztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRaSW5kZXgodmFsdWU6IE51bWJlcik6IHRoaXNcclxuICBcdC8vIENoYW5nZXMgdGhlIFt6SW5kZXhdKCNpbWFnZW92ZXJsYXktemluZGV4KSBvZiB0aGUgaW1hZ2Ugb3ZlcmxheS5cclxuICBcdHNldFpJbmRleDogZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXggPSB2YWx1ZTtcclxuICBcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIEdldCB0aGUgYm91bmRzIHRoYXQgdGhpcyBJbWFnZU92ZXJsYXkgY292ZXJzXHJcbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2JvdW5kcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50KCk6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYEhUTUxJbWFnZUVsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvSFRNTEltYWdlRWxlbWVudClcclxuICBcdC8vIHVzZWQgYnkgdGhpcyBvdmVybGF5LlxyXG4gIFx0Z2V0RWxlbWVudDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5faW1hZ2U7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0SW1hZ2U6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIHdhc0VsZW1lbnRTdXBwbGllZCA9IHRoaXMuX3VybC50YWdOYW1lID09PSAnSU1HJztcclxuICBcdFx0dmFyIGltZyA9IHRoaXMuX2ltYWdlID0gd2FzRWxlbWVudFN1cHBsaWVkID8gdGhpcy5fdXJsIDogY3JlYXRlJDEoJ2ltZycpO1xyXG5cclxuICBcdFx0YWRkQ2xhc3MoaW1nLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7IGFkZENsYXNzKGltZywgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lKSB7IGFkZENsYXNzKGltZywgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cclxuXHJcbiAgXHRcdGltZy5vbnNlbGVjdHN0YXJ0ID0gZmFsc2VGbjtcclxuICBcdFx0aW1nLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2FkOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBJbWFnZU92ZXJsYXkgbGF5ZXIgaGFzIGxvYWRlZCBpdHMgaW1hZ2VcclxuICBcdFx0aW1nLm9ubG9hZCA9IGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbG9hZCcpO1xyXG4gIFx0XHRpbWcub25lcnJvciA9IGJpbmQodGhpcy5fb3ZlcmxheU9uRXJyb3IsIHRoaXMsICdlcnJvcicpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbiB8fCB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09ICcnKSB7XHJcbiAgXHRcdFx0aW1nLmNyb3NzT3JpZ2luID0gdGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luID09PSB0cnVlID8gJycgOiB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuekluZGV4KSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh3YXNFbGVtZW50U3VwcGxpZWQpIHtcclxuICBcdFx0XHR0aGlzLl91cmwgPSBpbWcuc3JjO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aW1nLnNyYyA9IHRoaXMuX3VybDtcclxuICBcdFx0aW1nLmFsdCA9IHRoaXMub3B0aW9ucy5hbHQ7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gdGhpcy5fbWFwLmdldFpvb21TY2FsZShlLnpvb20pLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gdGhpcy5fbWFwLl9sYXRMbmdCb3VuZHNUb05ld0xheWVyQm91bmRzKHRoaXMuX2JvdW5kcywgZS56b29tLCBlLmNlbnRlcikubWluO1xyXG5cclxuICBcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX2ltYWdlLCBvZmZzZXQsIHNjYWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBpbWFnZSA9IHRoaXMuX2ltYWdlLFxyXG4gIFx0XHQgICAgYm91bmRzID0gbmV3IEJvdW5kcyhcclxuICBcdFx0ICAgICAgICB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2JvdW5kcy5nZXROb3J0aFdlc3QoKSksXHJcbiAgXHRcdCAgICAgICAgdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9ib3VuZHMuZ2V0U291dGhFYXN0KCkpKSxcclxuICBcdFx0ICAgIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xyXG5cclxuICBcdFx0c2V0UG9zaXRpb24oaW1hZ2UsIGJvdW5kcy5taW4pO1xyXG5cclxuICBcdFx0aW1hZ2Uuc3R5bGUud2lkdGggID0gc2l6ZS54ICsgJ3B4JztcclxuICBcdFx0aW1hZ2Uuc3R5bGUuaGVpZ2h0ID0gc2l6ZS55ICsgJ3B4JztcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0c2V0T3BhY2l0eSh0aGlzLl9pbWFnZSwgdGhpcy5vcHRpb25zLm9wYWNpdHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlWkluZGV4OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9pbWFnZSAmJiB0aGlzLm9wdGlvbnMuekluZGV4ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5vcHRpb25zLnpJbmRleCAhPT0gbnVsbCkge1xyXG4gIFx0XHRcdHRoaXMuX2ltYWdlLnN0eWxlLnpJbmRleCA9IHRoaXMub3B0aW9ucy56SW5kZXg7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X292ZXJsYXlPbkVycm9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdC8vIEBldmVudCBlcnJvcjogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgSW1hZ2VPdmVybGF5IGxheWVyIGZhaWxzIHRvIGxvYWQgaXRzIGltYWdlXHJcbiAgXHRcdHRoaXMuZmlyZSgnZXJyb3InKTtcclxuXHJcbiAgXHRcdHZhciBlcnJvclVybCA9IHRoaXMub3B0aW9ucy5lcnJvck92ZXJsYXlVcmw7XHJcbiAgXHRcdGlmIChlcnJvclVybCAmJiB0aGlzLl91cmwgIT09IGVycm9yVXJsKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXJsID0gZXJyb3JVcmw7XHJcbiAgXHRcdFx0dGhpcy5faW1hZ2Uuc3JjID0gZXJyb3JVcmw7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjZW50ZXIgb2YgdGhlIEltYWdlT3ZlcmxheS5cclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fYm91bmRzLmdldENlbnRlcigpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAZmFjdG9yeSBMLmltYWdlT3ZlcmxheShpbWFnZVVybDogU3RyaW5nLCBib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IEltYWdlT3ZlcmxheSBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiB0aGUgVVJMIG9mIHRoZSBpbWFnZSBhbmQgdGhlXHJcbiAgLy8gZ2VvZ3JhcGhpY2FsIGJvdW5kcyBpdCBpcyB0aWVkIHRvLlxyXG4gIHZhciBpbWFnZU92ZXJsYXkgPSBmdW5jdGlvbiAodXJsLCBib3VuZHMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgSW1hZ2VPdmVybGF5KHVybCwgYm91bmRzLCBvcHRpb25zKTtcclxuICB9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIFZpZGVvT3ZlcmxheVxyXG4gICAqIEBha2EgTC5WaWRlb092ZXJsYXlcclxuICAgKiBAaW5oZXJpdHMgSW1hZ2VPdmVybGF5XHJcbiAgICpcclxuICAgKiBVc2VkIHRvIGxvYWQgYW5kIGRpc3BsYXkgYSB2aWRlbyBwbGF5ZXIgb3ZlciBzcGVjaWZpYyBib3VuZHMgb2YgdGhlIG1hcC4gRXh0ZW5kcyBgSW1hZ2VPdmVybGF5YC5cclxuICAgKlxyXG4gICAqIEEgdmlkZW8gb3ZlcmxheSB1c2VzIHRoZSBbYDx2aWRlbz5gXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdmlkZW8pXHJcbiAgICogSFRNTDUgZWxlbWVudC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciB2aWRlb1VybCA9ICdodHRwczovL3d3dy5tYXBib3guY29tL2JpdGVzLzAwMTg4L3BhdHJpY2lhX25hc2Eud2VibScsXHJcbiAgICogXHR2aWRlb0JvdW5kcyA9IFtbIDMyLCAtMTMwXSwgWyAxMywgLTEwMF1dO1xyXG4gICAqIEwudmlkZW9PdmVybGF5KHZpZGVvVXJsLCB2aWRlb0JvdW5kcyApLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBWaWRlb092ZXJsYXkgPSBJbWFnZU92ZXJsYXkuZXh0ZW5kKHtcclxuXHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBWaWRlb092ZXJsYXkgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9wbGF5OiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyBzdGFydHMgcGxheWluZyBhdXRvbWF0aWNhbGx5IHdoZW4gbG9hZGVkLlxyXG4gIFx0XHQvLyBPbiBzb21lIGJyb3dzZXJzIGF1dG9wbGF5IHdpbGwgb25seSB3b3JrIHdpdGggYG11dGVkOiB0cnVlYFxyXG4gIFx0XHRhdXRvcGxheTogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbG9vcDogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgdmlkZW8gd2lsbCBsb29wIGJhY2sgdG8gdGhlIGJlZ2lubmluZyB3aGVuIHBsYXllZC5cclxuICBcdFx0bG9vcDogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24ga2VlcEFzcGVjdFJhdGlvOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyB3aWxsIHNhdmUgYXNwZWN0IHJhdGlvIGFmdGVyIHRoZSBwcm9qZWN0aW9uLlxyXG4gIFx0XHQvLyBSZWxldmFudCBmb3Igc3VwcG9ydGVkIGJyb3dzZXJzLiBTZWUgW2Jyb3dzZXIgY29tcGF0aWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL29iamVjdC1maXQpXHJcbiAgXHRcdGtlZXBBc3BlY3RSYXRpbzogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbXV0ZWQ6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyBzdGFydHMgb24gbXV0ZSB3aGVuIGxvYWRlZC5cclxuICBcdFx0bXV0ZWQ6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBwbGF5c0lubGluZTogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gTW9iaWxlIGJyb3dzZXJzIHdpbGwgcGxheSB0aGUgdmlkZW8gcmlnaHQgd2hlcmUgaXQgaXMgaW5zdGVhZCBvZiBvcGVuIGl0IHVwIGluIGZ1bGxzY3JlZW4gbW9kZS5cclxuICBcdFx0cGxheXNJbmxpbmU6IHRydWVcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRJbWFnZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgd2FzRWxlbWVudFN1cHBsaWVkID0gdGhpcy5fdXJsLnRhZ05hbWUgPT09ICdWSURFTyc7XHJcbiAgXHRcdHZhciB2aWQgPSB0aGlzLl9pbWFnZSA9IHdhc0VsZW1lbnRTdXBwbGllZCA/IHRoaXMuX3VybCA6IGNyZWF0ZSQxKCd2aWRlbycpO1xyXG5cclxuICBcdFx0YWRkQ2xhc3ModmlkLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7IGFkZENsYXNzKHZpZCwgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lKSB7IGFkZENsYXNzKHZpZCwgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cclxuXHJcbiAgXHRcdHZpZC5vbnNlbGVjdHN0YXJ0ID0gZmFsc2VGbjtcclxuICBcdFx0dmlkLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2FkOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSB2aWRlbyBoYXMgZmluaXNoZWQgbG9hZGluZyB0aGUgZmlyc3QgZnJhbWVcclxuICBcdFx0dmlkLm9ubG9hZGVkZGF0YSA9IGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbG9hZCcpO1xyXG5cclxuICBcdFx0aWYgKHdhc0VsZW1lbnRTdXBwbGllZCkge1xyXG4gIFx0XHRcdHZhciBzb3VyY2VFbGVtZW50cyA9IHZpZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc291cmNlJyk7XHJcbiAgXHRcdFx0dmFyIHNvdXJjZXMgPSBbXTtcclxuICBcdFx0XHRmb3IgKHZhciBqID0gMDsgaiA8IHNvdXJjZUVsZW1lbnRzLmxlbmd0aDsgaisrKSB7XHJcbiAgXHRcdFx0XHRzb3VyY2VzLnB1c2goc291cmNlRWxlbWVudHNbal0uc3JjKTtcclxuICBcdFx0XHR9XHJcblxyXG4gIFx0XHRcdHRoaXMuX3VybCA9IChzb3VyY2VFbGVtZW50cy5sZW5ndGggPiAwKSA/IHNvdXJjZXMgOiBbdmlkLnNyY107XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIWlzQXJyYXkodGhpcy5fdXJsKSkgeyB0aGlzLl91cmwgPSBbdGhpcy5fdXJsXTsgfVxyXG5cclxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMua2VlcEFzcGVjdFJhdGlvICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2aWQuc3R5bGUsICdvYmplY3RGaXQnKSkge1xyXG4gIFx0XHRcdHZpZC5zdHlsZVsnb2JqZWN0Rml0J10gPSAnZmlsbCc7XHJcbiAgXHRcdH1cclxuICBcdFx0dmlkLmF1dG9wbGF5ID0gISF0aGlzLm9wdGlvbnMuYXV0b3BsYXk7XHJcbiAgXHRcdHZpZC5sb29wID0gISF0aGlzLm9wdGlvbnMubG9vcDtcclxuICBcdFx0dmlkLm11dGVkID0gISF0aGlzLm9wdGlvbnMubXV0ZWQ7XHJcbiAgXHRcdHZpZC5wbGF5c0lubGluZSA9ICEhdGhpcy5vcHRpb25zLnBsYXlzSW5saW5lO1xyXG4gIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX3VybC5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdHZhciBzb3VyY2UgPSBjcmVhdGUkMSgnc291cmNlJyk7XHJcbiAgXHRcdFx0c291cmNlLnNyYyA9IHRoaXMuX3VybFtpXTtcclxuICBcdFx0XHR2aWQuYXBwZW5kQ2hpbGQoc291cmNlKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0RWxlbWVudCgpOiBIVE1MVmlkZW9FbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYEhUTUxWaWRlb0VsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvSFRNTFZpZGVvRWxlbWVudClcclxuICBcdC8vIHVzZWQgYnkgdGhpcyBvdmVybGF5LlxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC52aWRlb092ZXJsYXkodmlkZW86IFN0cmluZ3xBcnJheXxIVE1MVmlkZW9FbGVtZW50LCBib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IFZpZGVvT3ZlcmxheSBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiB0aGUgVVJMIG9mIHRoZSB2aWRlbyAob3IgYXJyYXkgb2YgVVJMcywgb3IgZXZlbiBhIHZpZGVvIGVsZW1lbnQpIGFuZCB0aGVcclxuICAvLyBnZW9ncmFwaGljYWwgYm91bmRzIGl0IGlzIHRpZWQgdG8uXHJcblxyXG4gIGZ1bmN0aW9uIHZpZGVvT3ZlcmxheSh2aWRlbywgYm91bmRzLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IFZpZGVvT3ZlcmxheSh2aWRlbywgYm91bmRzLCBvcHRpb25zKTtcclxuICB9XG5cbiAgLypcbiAgICogQGNsYXNzIFNWR092ZXJsYXlcbiAgICogQGFrYSBMLlNWR092ZXJsYXlcbiAgICogQGluaGVyaXRzIEltYWdlT3ZlcmxheVxuICAgKlxuICAgKiBVc2VkIHRvIGxvYWQsIGRpc3BsYXkgYW5kIHByb3ZpZGUgRE9NIGFjY2VzcyB0byBhbiBTVkcgZmlsZSBvdmVyIHNwZWNpZmljIGJvdW5kcyBvZiB0aGUgbWFwLiBFeHRlbmRzIGBJbWFnZU92ZXJsYXlgLlxuICAgKlxuICAgKiBBbiBTVkcgb3ZlcmxheSB1c2VzIHRoZSBbYDxzdmc+YF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0VsZW1lbnQvc3ZnKSBlbGVtZW50LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgc3ZnRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIsIFwic3ZnXCIpO1xuICAgKiBzdmdFbGVtZW50LnNldEF0dHJpYnV0ZSgneG1sbnMnLCBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIpO1xuICAgKiBzdmdFbGVtZW50LnNldEF0dHJpYnV0ZSgndmlld0JveCcsIFwiMCAwIDIwMCAyMDBcIik7XG4gICAqIHN2Z0VsZW1lbnQuaW5uZXJIVE1MID0gJzxyZWN0IHdpZHRoPVwiMjAwXCIgaGVpZ2h0PVwiMjAwXCIvPjxyZWN0IHg9XCI3NVwiIHk9XCIyM1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIHN0eWxlPVwiZmlsbDpyZWRcIi8+PHJlY3QgeD1cIjc1XCIgeT1cIjEyM1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIHN0eWxlPVwiZmlsbDojMDAxM2ZmXCIvPic7XG4gICAqIHZhciBzdmdFbGVtZW50Qm91bmRzID0gWyBbIDMyLCAtMTMwIF0sIFsgMTMsIC0xMDAgXSBdO1xuICAgKiBMLnN2Z092ZXJsYXkoc3ZnRWxlbWVudCwgc3ZnRWxlbWVudEJvdW5kcykuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBTVkdPdmVybGF5ID0gSW1hZ2VPdmVybGF5LmV4dGVuZCh7XG4gIFx0X2luaXRJbWFnZTogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGVsID0gdGhpcy5faW1hZ2UgPSB0aGlzLl91cmw7XG5cbiAgXHRcdGFkZENsYXNzKGVsLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xuICBcdFx0aWYgKHRoaXMuX3pvb21BbmltYXRlZCkgeyBhZGRDbGFzcyhlbCwgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSkgeyBhZGRDbGFzcyhlbCwgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cblxuICBcdFx0ZWwub25zZWxlY3RzdGFydCA9IGZhbHNlRm47XG4gIFx0XHRlbC5vbm1vdXNlbW92ZSA9IGZhbHNlRm47XG4gIFx0fVxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50KCk6IFNWR0VsZW1lbnRcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYFNWR0VsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvU1ZHRWxlbWVudClcbiAgXHQvLyB1c2VkIGJ5IHRoaXMgb3ZlcmxheS5cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLnN2Z092ZXJsYXkoc3ZnOiBTdHJpbmd8U1ZHRWxlbWVudCwgYm91bmRzOiBMYXRMbmdCb3VuZHMsIG9wdGlvbnM/OiBTVkdPdmVybGF5IG9wdGlvbnMpXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiBhbiBTVkcgZWxlbWVudCBhbmQgdGhlIGdlb2dyYXBoaWNhbCBib3VuZHMgaXQgaXMgdGllZCB0by5cbiAgLy8gQSB2aWV3Qm94IGF0dHJpYnV0ZSBpcyByZXF1aXJlZCBvbiB0aGUgU1ZHIGVsZW1lbnQgdG8gem9vbSBpbiBhbmQgb3V0IHByb3Blcmx5LlxuXG4gIGZ1bmN0aW9uIHN2Z092ZXJsYXkoZWwsIGJvdW5kcywgb3B0aW9ucykge1xuICBcdHJldHVybiBuZXcgU1ZHT3ZlcmxheShlbCwgYm91bmRzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIERpdk92ZXJsYXlcclxuICAgKiBAaW5oZXJpdHMgSW50ZXJhY3RpdmUgbGF5ZXJcclxuICAgKiBAYWthIEwuRGl2T3ZlcmxheVxyXG4gICAqIEJhc2UgbW9kZWwgZm9yIEwuUG9wdXAgYW5kIEwuVG9vbHRpcC4gSW5oZXJpdCBmcm9tIGl0IGZvciBjdXN0b20gb3ZlcmxheXMgbGlrZSBwbHVnaW5zLlxyXG4gICAqL1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIERpdk92ZXJsYXlcclxuICB2YXIgRGl2T3ZlcmxheSA9IExheWVyLmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgRGl2T3ZlcmxheSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gaW50ZXJhY3RpdmU6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBJZiB0cnVlLCB0aGUgcG9wdXAvdG9vbHRpcCB3aWxsIGxpc3RlbiB0byB0aGUgbW91c2UgZXZlbnRzLlxyXG4gIFx0XHRpbnRlcmFjdGl2ZTogZmFsc2UsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIG9mZnNldDogUG9pbnQgPSBQb2ludCgwLCAwKVxyXG4gIFx0XHQvLyBUaGUgb2Zmc2V0IG9mIHRoZSBvdmVybGF5IHBvc2l0aW9uLlxyXG4gIFx0XHRvZmZzZXQ6IFswLCAwXSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyBBIGN1c3RvbSBDU1MgY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIG92ZXJsYXkuXHJcbiAgXHRcdGNsYXNzTmFtZTogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9IHVuZGVmaW5lZFxyXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSBvdmVybGF5IHdpbGwgYmUgYWRkZWQuXHJcbiAgXHRcdHBhbmU6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fEZ1bmN0aW9uID0gJydcclxuICBcdFx0Ly8gU2V0cyB0aGUgSFRNTCBjb250ZW50IG9mIHRoZSBvdmVybGF5IHdoaWxlIGluaXRpYWxpemluZy4gSWYgYSBmdW5jdGlvbiBpcyBwYXNzZWQgdGhlIHNvdXJjZSBsYXllciB3aWxsIGJlXHJcbiAgXHRcdC8vIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uIFRoZSBmdW5jdGlvbiBzaG91bGQgcmV0dXJuIGEgYFN0cmluZ2Agb3IgYEhUTUxFbGVtZW50YCB0byBiZSB1c2VkIGluIHRoZSBvdmVybGF5LlxyXG4gIFx0XHRjb250ZW50OiAnJ1xyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucywgc291cmNlKSB7XHJcbiAgXHRcdGlmIChvcHRpb25zICYmIChvcHRpb25zIGluc3RhbmNlb2YgTGF0TG5nIHx8IGlzQXJyYXkob3B0aW9ucykpKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcob3B0aW9ucyk7XHJcbiAgXHRcdFx0c2V0T3B0aW9ucyh0aGlzLCBzb3VyY2UpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcbiAgXHRcdFx0dGhpcy5fc291cmNlID0gc291cmNlO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY29udGVudCkge1xyXG4gIFx0XHRcdHRoaXMuX2NvbnRlbnQgPSB0aGlzLm9wdGlvbnMuY29udGVudDtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG9wZW5PbihtYXA6IE1hcCk6IHRoaXNcclxuICBcdC8vIEFkZHMgdGhlIG92ZXJsYXkgdG8gdGhlIG1hcC5cclxuICBcdC8vIEFsdGVybmF0aXZlIHRvIGBtYXAub3BlblBvcHVwKHBvcHVwKWAvYC5vcGVuVG9vbHRpcCh0b29sdGlwKWAuXHJcbiAgXHRvcGVuT246IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwID0gYXJndW1lbnRzLmxlbmd0aCA/IG1hcCA6IHRoaXMuX3NvdXJjZS5fbWFwOyAvLyBleHBlcmltZW50YWwsIG5vdCB0aGUgcGFydCBvZiBwdWJsaWMgYXBpXHJcbiAgXHRcdGlmICghbWFwLmhhc0xheWVyKHRoaXMpKSB7XHJcbiAgXHRcdFx0bWFwLmFkZExheWVyKHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb3NlKCk6IHRoaXNcclxuICBcdC8vIENsb3NlcyB0aGUgb3ZlcmxheS5cclxuICBcdC8vIEFsdGVybmF0aXZlIHRvIGBtYXAuY2xvc2VQb3B1cChwb3B1cClgL2AuY2xvc2VUb29sdGlwKHRvb2x0aXApYFxyXG4gIFx0Ly8gYW5kIGBsYXllci5jbG9zZVBvcHVwKClgL2AuY2xvc2VUb29sdGlwKClgLlxyXG4gIFx0Y2xvc2U6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC5yZW1vdmVMYXllcih0aGlzKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b2dnbGUobGF5ZXI/OiBMYXllcik6IHRoaXNcclxuICBcdC8vIE9wZW5zIG9yIGNsb3NlcyB0aGUgb3ZlcmxheSBib3VuZCB0byBsYXllciBkZXBlbmRpbmcgb24gaXRzIGN1cnJlbnQgc3RhdGUuXHJcbiAgXHQvLyBBcmd1bWVudCBtYXkgYmUgb21pdHRlZCBvbmx5IGZvciBvdmVybGF5IGJvdW5kIHRvIGxheWVyLlxyXG4gIFx0Ly8gQWx0ZXJuYXRpdmUgdG8gYGxheWVyLnRvZ2dsZVBvcHVwKClgL2AudG9nZ2xlVG9vbHRpcCgpYC5cclxuICBcdHRvZ2dsZTogZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0aGlzLmNsb3NlKCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0aWYgKGFyZ3VtZW50cy5sZW5ndGgpIHtcclxuICBcdFx0XHRcdHRoaXMuX3NvdXJjZSA9IGxheWVyO1xyXG4gIFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHRsYXllciA9IHRoaXMuX3NvdXJjZTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0dGhpcy5fcHJlcGFyZU9wZW4oKTtcclxuXHJcbiAgXHRcdFx0Ly8gb3BlbiB0aGUgb3ZlcmxheSBvbiB0aGUgbWFwXHJcbiAgXHRcdFx0dGhpcy5vcGVuT24obGF5ZXIuX21hcCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdHRoaXMuX3pvb21BbmltYXRlZCA9IG1hcC5fem9vbUFuaW1hdGVkO1xyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHtcclxuICBcdFx0XHR0aGlzLl9pbml0TGF5b3V0KCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChtYXAuX2ZhZGVBbmltYXRlZCkge1xyXG4gIFx0XHRcdHNldE9wYWNpdHkodGhpcy5fY29udGFpbmVyLCAwKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3JlbW92ZVRpbWVvdXQpO1xyXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG5cclxuICBcdFx0aWYgKG1hcC5fZmFkZUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9jb250YWluZXIsIDEpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLmJyaW5nVG9Gcm9udCgpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5pbnRlcmFjdGl2ZSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcclxuICBcdFx0XHR0aGlzLmFkZEludGVyYWN0aXZlVGFyZ2V0KHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0aWYgKG1hcC5fZmFkZUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9jb250YWluZXIsIDApO1xyXG4gIFx0XHRcdHRoaXMuX3JlbW92ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQocmVtb3ZlLCB1bmRlZmluZWQsIHRoaXMuX2NvbnRhaW5lciksIDIwMCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaW50ZXJhY3RpdmUpIHtcclxuICBcdFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9jb250YWluZXIsICdsZWFmbGV0LWludGVyYWN0aXZlJyk7XHJcbiAgXHRcdFx0dGhpcy5yZW1vdmVJbnRlcmFjdGl2ZVRhcmdldCh0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBuYW1lc3BhY2UgRGl2T3ZlcmxheVxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRMYXRMbmc6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIHBvaW50IG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0Z2V0TGF0TG5nOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXRsbmc7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TGF0TG5nKGxhdGxuZzogTGF0TG5nKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgZ2VvZ3JhcGhpY2FsIHBvaW50IHdoZXJlIHRoZSBvdmVybGF5IHdpbGwgb3Blbi5cclxuICBcdHNldExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUG9zaXRpb24oKTtcclxuICBcdFx0XHR0aGlzLl9hZGp1c3RQYW4oKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250ZW50OiBTdHJpbmd8SFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGNvbnRlbnQgb2YgdGhlIG92ZXJsYXkuXHJcbiAgXHRnZXRDb250ZW50OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250ZW50O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldENvbnRlbnQoaHRtbENvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudHxGdW5jdGlvbik6IHRoaXNcclxuICBcdC8vIFNldHMgdGhlIEhUTUwgY29udGVudCBvZiB0aGUgb3ZlcmxheS4gSWYgYSBmdW5jdGlvbiBpcyBwYXNzZWQgdGhlIHNvdXJjZSBsYXllciB3aWxsIGJlIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uXHJcbiAgXHQvLyBUaGUgZnVuY3Rpb24gc2hvdWxkIHJldHVybiBhIGBTdHJpbmdgIG9yIGBIVE1MRWxlbWVudGAgdG8gYmUgdXNlZCBpbiB0aGUgb3ZlcmxheS5cclxuICBcdHNldENvbnRlbnQ6IGZ1bmN0aW9uIChjb250ZW50KSB7XHJcbiAgXHRcdHRoaXMuX2NvbnRlbnQgPSBjb250ZW50O1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50OiBTdHJpbmd8SFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIEhUTUwgY29udGFpbmVyIG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0Z2V0RWxlbWVudDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fY29udGFpbmVyO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVwZGF0ZTogbnVsbFxyXG4gIFx0Ly8gVXBkYXRlcyB0aGUgb3ZlcmxheSBjb250ZW50LCBsYXlvdXQgYW5kIHBvc2l0aW9uLiBVc2VmdWwgZm9yIHVwZGF0aW5nIHRoZSBvdmVybGF5IGFmdGVyIHNvbWV0aGluZyBpbnNpZGUgY2hhbmdlZCwgZS5nLiBpbWFnZSBsb2FkZWQuXHJcbiAgXHR1cGRhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9tYXApIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xyXG5cclxuICBcdFx0dGhpcy5fdXBkYXRlQ29udGVudCgpO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVMYXlvdXQoKTtcclxuICBcdFx0dGhpcy5fdXBkYXRlUG9zaXRpb24oKTtcclxuXHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zdHlsZS52aXNpYmlsaXR5ID0gJyc7XHJcblxyXG4gIFx0XHR0aGlzLl9hZGp1c3RQYW4oKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBldmVudHMgPSB7XHJcbiAgXHRcdFx0em9vbTogdGhpcy5fdXBkYXRlUG9zaXRpb24sXHJcbiAgXHRcdFx0dmlld3Jlc2V0OiB0aGlzLl91cGRhdGVQb3NpdGlvblxyXG4gIFx0XHR9O1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX3pvb21BbmltYXRlZCkge1xyXG4gIFx0XHRcdGV2ZW50cy56b29tYW5pbSA9IHRoaXMuX2FuaW1hdGVab29tO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBldmVudHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaXNPcGVuOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCB3aGVuIHRoZSBvdmVybGF5IGlzIHZpc2libGUgb24gdGhlIG1hcC5cclxuICBcdGlzT3BlbjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gISF0aGlzLl9tYXAgJiYgdGhpcy5fbWFwLmhhc0xheWVyKHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9Gcm9udDogdGhpc1xyXG4gIFx0Ly8gQnJpbmdzIHRoaXMgb3ZlcmxheSBpbiBmcm9udCBvZiBvdGhlciBvdmVybGF5cyAoaW4gdGhlIHNhbWUgbWFwIHBhbmUpLlxyXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0Zyb250KHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYnJpbmdUb0JhY2s6IHRoaXNcclxuICBcdC8vIEJyaW5ncyB0aGlzIG92ZXJsYXkgdG8gdGhlIGJhY2sgb2Ygb3RoZXIgb3ZlcmxheXMgKGluIHRoZSBzYW1lIG1hcCBwYW5lKS5cclxuICBcdGJyaW5nVG9CYWNrOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0JhY2sodGhpcy5fY29udGFpbmVyKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gcHJlcGFyZSBib3VuZCBvdmVybGF5IHRvIG9wZW46IHVwZGF0ZSBsYXRsbmcgcG9zIC8gY29udGVudCBzb3VyY2UgKGZvciBGZWF0dXJlR3JvdXApXHJcbiAgXHRfcHJlcGFyZU9wZW46IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0dmFyIHNvdXJjZSA9IHRoaXMuX3NvdXJjZTtcclxuICBcdFx0aWYgKCFzb3VyY2UuX21hcCkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdGlmIChzb3VyY2UgaW5zdGFuY2VvZiBGZWF0dXJlR3JvdXApIHtcclxuICBcdFx0XHRzb3VyY2UgPSBudWxsO1xyXG4gIFx0XHRcdHZhciBsYXllcnMgPSB0aGlzLl9zb3VyY2UuX2xheWVycztcclxuICBcdFx0XHRmb3IgKHZhciBpZCBpbiBsYXllcnMpIHtcclxuICBcdFx0XHRcdGlmIChsYXllcnNbaWRdLl9tYXApIHtcclxuICBcdFx0XHRcdFx0c291cmNlID0gbGF5ZXJzW2lkXTtcclxuICBcdFx0XHRcdFx0YnJlYWs7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdGlmICghc291cmNlKSB7IHJldHVybiBmYWxzZTsgfSAvLyBVbmFibGUgdG8gZ2V0IHNvdXJjZSBsYXllci5cclxuXHJcbiAgXHRcdFx0Ly8gc2V0IG92ZXJsYXkgc291cmNlIHRvIHRoaXMgbGF5ZXJcclxuICBcdFx0XHR0aGlzLl9zb3VyY2UgPSBzb3VyY2U7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghbGF0bG5nKSB7XHJcbiAgXHRcdFx0aWYgKHNvdXJjZS5nZXRDZW50ZXIpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRDZW50ZXIoKTtcclxuICBcdFx0XHR9IGVsc2UgaWYgKHNvdXJjZS5nZXRMYXRMbmcpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRMYXRMbmcoKTtcclxuICBcdFx0XHR9IGVsc2UgaWYgKHNvdXJjZS5nZXRCb3VuZHMpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRCb3VuZHMoKS5nZXRDZW50ZXIoKTtcclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gZ2V0IHNvdXJjZSBsYXllciBMYXRMbmcuJyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuc2V0TGF0TG5nKGxhdGxuZyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0Ly8gdXBkYXRlIHRoZSBvdmVybGF5IChjb250ZW50LCBsYXlvdXQsIGV0Yy4uLilcclxuICBcdFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdHJ1ZTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZUNvbnRlbnQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9jb250ZW50KSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIG5vZGUgPSB0aGlzLl9jb250ZW50Tm9kZTtcclxuICBcdFx0dmFyIGNvbnRlbnQgPSAodHlwZW9mIHRoaXMuX2NvbnRlbnQgPT09ICdmdW5jdGlvbicpID8gdGhpcy5fY29udGVudCh0aGlzLl9zb3VyY2UgfHwgdGhpcykgOiB0aGlzLl9jb250ZW50O1xyXG5cclxuICBcdFx0aWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xyXG4gIFx0XHRcdG5vZGUuaW5uZXJIVE1MID0gY29udGVudDtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHR3aGlsZSAobm9kZS5oYXNDaGlsZE5vZGVzKCkpIHtcclxuICBcdFx0XHRcdG5vZGUucmVtb3ZlQ2hpbGQobm9kZS5maXJzdENoaWxkKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bm9kZS5hcHBlbmRDaGlsZChjb250ZW50KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBEaXZPdmVybGF5XHJcbiAgXHRcdC8vIEBzZWN0aW9uIERpdk92ZXJsYXkgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBjb250ZW50dXBkYXRlOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBjb250ZW50IG9mIHRoZSBvdmVybGF5IGlzIHVwZGF0ZWRcclxuICBcdFx0dGhpcy5maXJlKCdjb250ZW50dXBkYXRlJyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVQb3NpdGlvbjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2xhdGxuZyksXHJcbiAgXHRcdCAgICBvZmZzZXQgPSB0b1BvaW50KHRoaXMub3B0aW9ucy5vZmZzZXQpLFxyXG4gIFx0XHQgICAgYW5jaG9yID0gdGhpcy5fZ2V0QW5jaG9yKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCBwb3MuYWRkKGFuY2hvcikpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG9mZnNldCA9IG9mZnNldC5hZGQocG9zKS5hZGQoYW5jaG9yKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGJvdHRvbSA9IHRoaXMuX2NvbnRhaW5lckJvdHRvbSA9IC1vZmZzZXQueSxcclxuICBcdFx0ICAgIGxlZnQgPSB0aGlzLl9jb250YWluZXJMZWZ0ID0gLU1hdGgucm91bmQodGhpcy5fY29udGFpbmVyV2lkdGggLyAyKSArIG9mZnNldC54O1xyXG5cclxuICBcdFx0Ly8gYm90dG9tIHBvc2l0aW9uIHRoZSBvdmVybGF5IGluIGNhc2UgdGhlIGhlaWdodCBvZiB0aGUgb3ZlcmxheSBjaGFuZ2VzIChpbWFnZXMgbG9hZGluZyBldGMpXHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zdHlsZS5ib3R0b20gPSBib3R0b20gKyAncHgnO1xyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0QW5jaG9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBbMCwgMF07XHJcbiAgXHR9XHJcblxyXG4gIH0pO1xyXG5cclxuICBNYXAuaW5jbHVkZSh7XHJcbiAgXHRfaW5pdE92ZXJsYXk6IGZ1bmN0aW9uIChPdmVybGF5Q2xhc3MsIGNvbnRlbnQsIGxhdGxuZywgb3B0aW9ucykge1xyXG4gIFx0XHR2YXIgb3ZlcmxheSA9IGNvbnRlbnQ7XHJcbiAgXHRcdGlmICghKG92ZXJsYXkgaW5zdGFuY2VvZiBPdmVybGF5Q2xhc3MpKSB7XHJcbiAgXHRcdFx0b3ZlcmxheSA9IG5ldyBPdmVybGF5Q2xhc3Mob3B0aW9ucykuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRpZiAobGF0bG5nKSB7XHJcbiAgXHRcdFx0b3ZlcmxheS5zZXRMYXRMbmcobGF0bG5nKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gb3ZlcmxheTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcblxyXG4gIExheWVyLmluY2x1ZGUoe1xyXG4gIFx0X2luaXRPdmVybGF5OiBmdW5jdGlvbiAoT3ZlcmxheUNsYXNzLCBvbGQsIGNvbnRlbnQsIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIG92ZXJsYXkgPSBjb250ZW50O1xyXG4gIFx0XHRpZiAob3ZlcmxheSBpbnN0YW5jZW9mIE92ZXJsYXlDbGFzcykge1xyXG4gIFx0XHRcdHNldE9wdGlvbnMob3ZlcmxheSwgb3B0aW9ucyk7XHJcbiAgXHRcdFx0b3ZlcmxheS5fc291cmNlID0gdGhpcztcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvdmVybGF5ID0gKG9sZCAmJiAhb3B0aW9ucykgPyBvbGQgOiBuZXcgT3ZlcmxheUNsYXNzKG9wdGlvbnMsIHRoaXMpO1xyXG4gIFx0XHRcdG92ZXJsYXkuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gb3ZlcmxheTtcclxuICBcdH1cclxuICB9KTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBQb3B1cFxyXG4gICAqIEBpbmhlcml0cyBEaXZPdmVybGF5XHJcbiAgICogQGFrYSBMLlBvcHVwXHJcbiAgICogVXNlZCB0byBvcGVuIHBvcHVwcyBpbiBjZXJ0YWluIHBsYWNlcyBvZiB0aGUgbWFwLiBVc2UgW01hcC5vcGVuUG9wdXBdKCNtYXAtb3BlbnBvcHVwKSB0b1xyXG4gICAqIG9wZW4gcG9wdXBzIHdoaWxlIG1ha2luZyBzdXJlIHRoYXQgb25seSBvbmUgcG9wdXAgaXMgb3BlbiBhdCBvbmUgdGltZVxyXG4gICAqIChyZWNvbW1lbmRlZCBmb3IgdXNhYmlsaXR5KSwgb3IgdXNlIFtNYXAuYWRkTGF5ZXJdKCNtYXAtYWRkbGF5ZXIpIHRvIG9wZW4gYXMgbWFueSBhcyB5b3Ugd2FudC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBJZiB5b3Ugd2FudCB0byBqdXN0IGJpbmQgYSBwb3B1cCB0byBtYXJrZXIgY2xpY2sgYW5kIHRoZW4gb3BlbiBpdCwgaXQncyByZWFsbHkgZWFzeTpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogbWFya2VyLmJpbmRQb3B1cChwb3B1cENvbnRlbnQpLm9wZW5Qb3B1cCgpO1xyXG4gICAqIGBgYFxyXG4gICAqIFBhdGggb3ZlcmxheXMgbGlrZSBwb2x5bGluZXMgYWxzbyBoYXZlIGEgYGJpbmRQb3B1cGAgbWV0aG9kLlxyXG4gICAqXHJcbiAgICogQSBwb3B1cCBjYW4gYmUgYWxzbyBzdGFuZGFsb25lOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9wdXAgPSBMLnBvcHVwKClcclxuICAgKiBcdC5zZXRMYXRMbmcobGF0bG5nKVxyXG4gICAqIFx0LnNldENvbnRlbnQoJzxwPkhlbGxvIHdvcmxkITxiciAvPlRoaXMgaXMgYSBuaWNlIHBvcHVwLjwvcD4nKVxyXG4gICAqIFx0Lm9wZW5PbihtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqIG9yXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9wdXAgPSBMLnBvcHVwKGxhdGxuZywge2NvbnRlbnQ6ICc8cD5IZWxsbyB3b3JsZCE8YnIgLz5UaGlzIGlzIGEgbmljZSBwb3B1cC48L3A+JylcclxuICAgKiBcdC5vcGVuT24obWFwKTtcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgUG9wdXBcclxuICB2YXIgUG9wdXAgPSBEaXZPdmVybGF5LmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgUG9wdXAgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICdwb3B1cFBhbmUnXHJcbiAgXHRcdC8vIGBNYXAgcGFuZWAgd2hlcmUgdGhlIHBvcHVwIHdpbGwgYmUgYWRkZWQuXHJcbiAgXHRcdHBhbmU6ICdwb3B1cFBhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBvZmZzZXQ6IFBvaW50ID0gUG9pbnQoMCwgNylcclxuICBcdFx0Ly8gVGhlIG9mZnNldCBvZiB0aGUgcG9wdXAgcG9zaXRpb24uXHJcbiAgXHRcdG9mZnNldDogWzAsIDddLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhXaWR0aDogTnVtYmVyID0gMzAwXHJcbiAgXHRcdC8vIE1heCB3aWR0aCBvZiB0aGUgcG9wdXAsIGluIHBpeGVscy5cclxuICBcdFx0bWF4V2lkdGg6IDMwMCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbWluV2lkdGg6IE51bWJlciA9IDUwXHJcbiAgXHRcdC8vIE1pbiB3aWR0aCBvZiB0aGUgcG9wdXAsIGluIHBpeGVscy5cclxuICBcdFx0bWluV2lkdGg6IDUwLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhIZWlnaHQ6IE51bWJlciA9IG51bGxcclxuICBcdFx0Ly8gSWYgc2V0LCBjcmVhdGVzIGEgc2Nyb2xsYWJsZSBjb250YWluZXIgb2YgdGhlIGdpdmVuIGhlaWdodFxyXG4gIFx0XHQvLyBpbnNpZGUgYSBwb3B1cCBpZiBpdHMgY29udGVudCBleGNlZWRzIGl0LlxyXG4gIFx0XHQvLyBUaGUgc2Nyb2xsYWJsZSBjb250YWluZXIgY2FuIGJlIHN0eWxlZCB1c2luZyB0aGVcclxuICBcdFx0Ly8gYGxlYWZsZXQtcG9wdXAtc2Nyb2xsZWRgIENTUyBjbGFzcyBzZWxlY3Rvci5cclxuICBcdFx0bWF4SGVpZ2h0OiBudWxsLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBTZXQgaXQgdG8gYGZhbHNlYCBpZiB5b3UgZG9uJ3Qgd2FudCB0aGUgbWFwIHRvIGRvIHBhbm5pbmcgYW5pbWF0aW9uXHJcbiAgXHRcdC8vIHRvIGZpdCB0aGUgb3BlbmVkIHBvcHVwLlxyXG4gIFx0XHRhdXRvUGFuOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuUGFkZGluZ1RvcExlZnQ6IFBvaW50ID0gbnVsbFxyXG4gIFx0XHQvLyBUaGUgbWFyZ2luIGJldHdlZW4gdGhlIHBvcHVwIGFuZCB0aGUgdG9wIGxlZnQgY29ybmVyIG9mIHRoZSBtYXBcclxuICBcdFx0Ly8gdmlldyBhZnRlciBhdXRvcGFubmluZyB3YXMgcGVyZm9ybWVkLlxyXG4gIFx0XHRhdXRvUGFuUGFkZGluZ1RvcExlZnQ6IG51bGwsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9QYW5QYWRkaW5nQm90dG9tUmlnaHQ6IFBvaW50ID0gbnVsbFxyXG4gIFx0XHQvLyBUaGUgbWFyZ2luIGJldHdlZW4gdGhlIHBvcHVwIGFuZCB0aGUgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiB0aGUgbWFwXHJcbiAgXHRcdC8vIHZpZXcgYWZ0ZXIgYXV0b3Bhbm5pbmcgd2FzIHBlcmZvcm1lZC5cclxuICBcdFx0YXV0b1BhblBhZGRpbmdCb3R0b21SaWdodDogbnVsbCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gYXV0b1BhblBhZGRpbmc6IFBvaW50ID0gUG9pbnQoNSwgNSlcclxuICBcdFx0Ly8gRXF1aXZhbGVudCBvZiBzZXR0aW5nIGJvdGggdG9wIGxlZnQgYW5kIGJvdHRvbSByaWdodCBhdXRvcGFuIHBhZGRpbmcgdG8gdGhlIHNhbWUgdmFsdWUuXHJcbiAgXHRcdGF1dG9QYW5QYWRkaW5nOiBbNSwgNV0sXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGtlZXBJblZpZXc6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBTZXQgaXQgdG8gYHRydWVgIGlmIHlvdSB3YW50IHRvIHByZXZlbnQgdXNlcnMgZnJvbSBwYW5uaW5nIHRoZSBwb3B1cFxyXG4gIFx0XHQvLyBvZmYgb2YgdGhlIHNjcmVlbiB3aGlsZSBpdCBpcyBvcGVuLlxyXG4gIFx0XHRrZWVwSW5WaWV3OiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xvc2VCdXR0b246IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIENvbnRyb2xzIHRoZSBwcmVzZW5jZSBvZiBhIGNsb3NlIGJ1dHRvbiBpbiB0aGUgcG9wdXAuXHJcbiAgXHRcdGNsb3NlQnV0dG9uOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvQ2xvc2U6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIFNldCBpdCB0byBgZmFsc2VgIGlmIHlvdSB3YW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mXHJcbiAgXHRcdC8vIHRoZSBwb3B1cCBjbG9zaW5nIHdoZW4gYW5vdGhlciBwb3B1cCBpcyBvcGVuZWQuXHJcbiAgXHRcdGF1dG9DbG9zZTogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xvc2VPbkVzY2FwZUtleTogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gU2V0IGl0IHRvIGBmYWxzZWAgaWYgeW91IHdhbnQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2ZcclxuICBcdFx0Ly8gdGhlIEVTQyBrZXkgZm9yIGNsb3Npbmcgb2YgdGhlIHBvcHVwLlxyXG4gIFx0XHRjbG9zZU9uRXNjYXBlS2V5OiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBjbG9zZU9uQ2xpY2s6IEJvb2xlYW4gPSAqXHJcbiAgXHRcdC8vIFNldCBpdCBpZiB5b3Ugd2FudCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgcG9wdXAgY2xvc2luZyB3aGVuIHVzZXIgY2xpY2tzXHJcbiAgXHRcdC8vIG9uIHRoZSBtYXAuIERlZmF1bHRzIHRvIHRoZSBtYXAncyBbYGNsb3NlUG9wdXBPbkNsaWNrYF0oI21hcC1jbG9zZXBvcHVwb25jbGljaykgb3B0aW9uLlxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBjbGFzc05hbWU6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIEEgY3VzdG9tIENTUyBjbGFzcyBuYW1lIHRvIGFzc2lnbiB0byB0aGUgcG9wdXAuXHJcbiAgXHRcdGNsYXNzTmFtZTogJydcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG5hbWVzcGFjZSBQb3B1cFxyXG4gIFx0Ly8gQG1ldGhvZCBvcGVuT24obWFwOiBNYXApOiB0aGlzXHJcbiAgXHQvLyBBbHRlcm5hdGl2ZSB0byBgbWFwLm9wZW5Qb3B1cChwb3B1cClgLlxyXG4gIFx0Ly8gQWRkcyB0aGUgcG9wdXAgdG8gdGhlIG1hcCBhbmQgY2xvc2VzIHRoZSBwcmV2aW91cyBvbmUuXHJcbiAgXHRvcGVuT246IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwID0gYXJndW1lbnRzLmxlbmd0aCA/IG1hcCA6IHRoaXMuX3NvdXJjZS5fbWFwOyAvLyBleHBlcmltZW50YWwsIG5vdCB0aGUgcGFydCBvZiBwdWJsaWMgYXBpXHJcblxyXG4gIFx0XHRpZiAoIW1hcC5oYXNMYXllcih0aGlzKSAmJiBtYXAuX3BvcHVwICYmIG1hcC5fcG9wdXAub3B0aW9ucy5hdXRvQ2xvc2UpIHtcclxuICBcdFx0XHRtYXAucmVtb3ZlTGF5ZXIobWFwLl9wb3B1cCk7XHJcbiAgXHRcdH1cclxuICBcdFx0bWFwLl9wb3B1cCA9IHRoaXM7XHJcblxyXG4gIFx0XHRyZXR1cm4gRGl2T3ZlcmxheS5wcm90b3R5cGUub3Blbk9uLmNhbGwodGhpcywgbWFwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0RGl2T3ZlcmxheS5wcm90b3R5cGUub25BZGQuY2FsbCh0aGlzLCBtYXApO1xyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBNYXBcclxuICBcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBwb3B1cG9wZW46IFBvcHVwRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGlzIG9wZW5lZCBpbiB0aGUgbWFwXHJcbiAgXHRcdG1hcC5maXJlKCdwb3B1cG9wZW4nLCB7cG9wdXA6IHRoaXN9KTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9zb3VyY2UpIHtcclxuICBcdFx0XHQvLyBAbmFtZXNwYWNlIExheWVyXHJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IHBvcHVwb3BlbjogUG9wdXBFdmVudFxyXG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gYSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGlzIG9wZW5lZFxyXG4gIFx0XHRcdHRoaXMuX3NvdXJjZS5maXJlKCdwb3B1cG9wZW4nLCB7cG9wdXA6IHRoaXN9LCB0cnVlKTtcclxuICBcdFx0XHQvLyBGb3Igbm9uLXBhdGggbGF5ZXJzLCB3ZSB0b2dnbGUgdGhlIHBvcHVwIHdoZW4gY2xpY2tpbmdcclxuICBcdFx0XHQvLyBhZ2FpbiB0aGUgbGF5ZXIsIHNvIHByZXZlbnQgdGhlIG1hcCB0byByZW9wZW4gaXQuXHJcbiAgXHRcdFx0aWYgKCEodGhpcy5fc291cmNlIGluc3RhbmNlb2YgUGF0aCkpIHtcclxuICBcdFx0XHRcdHRoaXMuX3NvdXJjZS5vbigncHJlY2xpY2snLCBzdG9wUHJvcGFnYXRpb24pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vblJlbW92ZS5jYWxsKHRoaXMsIG1hcCk7XHJcblxyXG4gIFx0XHQvLyBAbmFtZXNwYWNlIE1hcFxyXG4gIFx0XHQvLyBAc2VjdGlvbiBQb3B1cCBldmVudHNcclxuICBcdFx0Ly8gQGV2ZW50IHBvcHVwY2xvc2U6IFBvcHVwRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGluIHRoZSBtYXAgaXMgY2xvc2VkXHJcbiAgXHRcdG1hcC5maXJlKCdwb3B1cGNsb3NlJywge3BvcHVwOiB0aGlzfSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fc291cmNlKSB7XHJcbiAgXHRcdFx0Ly8gQG5hbWVzcGFjZSBMYXllclxyXG4gIFx0XHRcdC8vIEBzZWN0aW9uIFBvcHVwIGV2ZW50c1xyXG4gIFx0XHRcdC8vIEBldmVudCBwb3B1cGNsb3NlOiBQb3B1cEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGJvdW5kIHRvIHRoaXMgbGF5ZXIgaXMgY2xvc2VkXHJcbiAgXHRcdFx0dGhpcy5fc291cmNlLmZpcmUoJ3BvcHVwY2xvc2UnLCB7cG9wdXA6IHRoaXN9LCB0cnVlKTtcclxuICBcdFx0XHRpZiAoISh0aGlzLl9zb3VyY2UgaW5zdGFuY2VvZiBQYXRoKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fc291cmNlLm9mZigncHJlY2xpY2snLCBzdG9wUHJvcGFnYXRpb24pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRnZXRFdmVudHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGV2ZW50cyA9IERpdk92ZXJsYXkucHJvdG90eXBlLmdldEV2ZW50cy5jYWxsKHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5jbG9zZU9uQ2xpY2sgIT09IHVuZGVmaW5lZCA/IHRoaXMub3B0aW9ucy5jbG9zZU9uQ2xpY2sgOiB0aGlzLl9tYXAub3B0aW9ucy5jbG9zZVBvcHVwT25DbGljaykge1xyXG4gIFx0XHRcdGV2ZW50cy5wcmVjbGljayA9IHRoaXMuY2xvc2U7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMua2VlcEluVmlldykge1xyXG4gIFx0XHRcdGV2ZW50cy5tb3ZlZW5kID0gdGhpcy5fYWRqdXN0UGFuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gZXZlbnRzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdExheW91dDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgcHJlZml4ID0gJ2xlYWZsZXQtcG9wdXAnLFxyXG4gIFx0XHQgICAgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsXHJcbiAgXHRcdFx0cHJlZml4ICsgJyAnICsgKHRoaXMub3B0aW9ucy5jbGFzc05hbWUgfHwgJycpICtcclxuICBcdFx0XHQnIGxlYWZsZXQtem9vbS1hbmltYXRlZCcpO1xyXG5cclxuICBcdFx0dmFyIHdyYXBwZXIgPSB0aGlzLl93cmFwcGVyID0gY3JlYXRlJDEoJ2RpdicsIHByZWZpeCArICctY29udGVudC13cmFwcGVyJywgY29udGFpbmVyKTtcclxuICBcdFx0dGhpcy5fY29udGVudE5vZGUgPSBjcmVhdGUkMSgnZGl2JywgcHJlZml4ICsgJy1jb250ZW50Jywgd3JhcHBlcik7XHJcblxyXG4gIFx0XHRkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbihjb250YWluZXIpO1xyXG4gIFx0XHRkaXNhYmxlU2Nyb2xsUHJvcGFnYXRpb24odGhpcy5fY29udGVudE5vZGUpO1xyXG4gIFx0XHRvbihjb250YWluZXIsICdjb250ZXh0bWVudScsIHN0b3BQcm9wYWdhdGlvbik7XHJcblxyXG4gIFx0XHR0aGlzLl90aXBDb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgcHJlZml4ICsgJy10aXAtY29udGFpbmVyJywgY29udGFpbmVyKTtcclxuICBcdFx0dGhpcy5fdGlwID0gY3JlYXRlJDEoJ2RpdicsIHByZWZpeCArICctdGlwJywgdGhpcy5fdGlwQ29udGFpbmVyKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xvc2VCdXR0b24pIHtcclxuICBcdFx0XHR2YXIgY2xvc2VCdXR0b24gPSB0aGlzLl9jbG9zZUJ1dHRvbiA9IGNyZWF0ZSQxKCdhJywgcHJlZml4ICsgJy1jbG9zZS1idXR0b24nLCBjb250YWluZXIpO1xyXG4gIFx0XHRcdGNsb3NlQnV0dG9uLnNldEF0dHJpYnV0ZSgncm9sZScsICdidXR0b24nKTsgLy8gb3ZlcnJpZGVzIHRoZSBpbXBsaWNpdCByb2xlPWxpbmsgb2YgPGE+IGVsZW1lbnRzICM3Mzk5XHJcbiAgXHRcdFx0Y2xvc2VCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgJ0Nsb3NlIHBvcHVwJyk7XHJcbiAgXHRcdFx0Y2xvc2VCdXR0b24uaHJlZiA9ICcjY2xvc2UnO1xyXG4gIFx0XHRcdGNsb3NlQnV0dG9uLmlubmVySFRNTCA9ICc8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mIzIxNTs8L3NwYW4+JztcclxuXHJcbiAgXHRcdFx0b24oY2xvc2VCdXR0b24sICdjbGljaycsIGZ1bmN0aW9uIChldikge1xyXG4gIFx0XHRcdFx0cHJldmVudERlZmF1bHQoZXYpO1xyXG4gIFx0XHRcdFx0dGhpcy5jbG9zZSgpO1xyXG4gIFx0XHRcdH0sIHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX2NvbnRlbnROb2RlLFxyXG4gIFx0XHQgICAgc3R5bGUgPSBjb250YWluZXIuc3R5bGU7XHJcblxyXG4gIFx0XHRzdHlsZS53aWR0aCA9ICcnO1xyXG4gIFx0XHRzdHlsZS53aGl0ZVNwYWNlID0gJ25vd3JhcCc7XHJcblxyXG4gIFx0XHR2YXIgd2lkdGggPSBjb250YWluZXIub2Zmc2V0V2lkdGg7XHJcbiAgXHRcdHdpZHRoID0gTWF0aC5taW4od2lkdGgsIHRoaXMub3B0aW9ucy5tYXhXaWR0aCk7XHJcbiAgXHRcdHdpZHRoID0gTWF0aC5tYXgod2lkdGgsIHRoaXMub3B0aW9ucy5taW5XaWR0aCk7XHJcblxyXG4gIFx0XHRzdHlsZS53aWR0aCA9ICh3aWR0aCArIDEpICsgJ3B4JztcclxuICBcdFx0c3R5bGUud2hpdGVTcGFjZSA9ICcnO1xyXG5cclxuICBcdFx0c3R5bGUuaGVpZ2h0ID0gJyc7XHJcblxyXG4gIFx0XHR2YXIgaGVpZ2h0ID0gY29udGFpbmVyLm9mZnNldEhlaWdodCxcclxuICBcdFx0ICAgIG1heEhlaWdodCA9IHRoaXMub3B0aW9ucy5tYXhIZWlnaHQsXHJcbiAgXHRcdCAgICBzY3JvbGxlZENsYXNzID0gJ2xlYWZsZXQtcG9wdXAtc2Nyb2xsZWQnO1xyXG5cclxuICBcdFx0aWYgKG1heEhlaWdodCAmJiBoZWlnaHQgPiBtYXhIZWlnaHQpIHtcclxuICBcdFx0XHRzdHlsZS5oZWlnaHQgPSBtYXhIZWlnaHQgKyAncHgnO1xyXG4gIFx0XHRcdGFkZENsYXNzKGNvbnRhaW5lciwgc2Nyb2xsZWRDbGFzcyk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0cmVtb3ZlQ2xhc3MoY29udGFpbmVyLCBzY3JvbGxlZENsYXNzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fY29udGFpbmVyV2lkdGggPSB0aGlzLl9jb250YWluZXIub2Zmc2V0V2lkdGg7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIHBvcyA9IHRoaXMuX21hcC5fbGF0TG5nVG9OZXdMYXllclBvaW50KHRoaXMuX2xhdGxuZywgZS56b29tLCBlLmNlbnRlciksXHJcbiAgXHRcdCAgICBhbmNob3IgPSB0aGlzLl9nZXRBbmNob3IoKTtcclxuICBcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCBwb3MuYWRkKGFuY2hvcikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRqdXN0UGFuOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmF1dG9QYW4pIHsgcmV0dXJuOyB9XHJcbiAgXHRcdGlmICh0aGlzLl9tYXAuX3BhbkFuaW0pIHsgdGhpcy5fbWFwLl9wYW5BbmltLnN0b3AoKTsgfVxyXG5cclxuICBcdFx0Ly8gV2UgY2FuIGVuZGxlc3NseSByZWN1cnNlIGlmIGtlZXBJblZpZXcgaXMgc2V0IGFuZCB0aGUgdmlldyByZXNldHMuXHJcbiAgXHRcdC8vIExldCdzIGd1YXJkIGFnYWluc3QgdGhhdCBieSBleGl0aW5nIGVhcmx5IGlmIHdlJ3JlIHJlc3BvbmRpbmcgdG8gb3VyIG93biBhdXRvcGFuLlxyXG4gIFx0XHRpZiAodGhpcy5fYXV0b3Bhbm5pbmcpIHtcclxuICBcdFx0XHR0aGlzLl9hdXRvcGFubmluZyA9IGZhbHNlO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcclxuICBcdFx0ICAgIG1hcmdpbkJvdHRvbSA9IHBhcnNlSW50KGdldFN0eWxlKHRoaXMuX2NvbnRhaW5lciwgJ21hcmdpbkJvdHRvbScpLCAxMCkgfHwgMCxcclxuICBcdFx0ICAgIGNvbnRhaW5lckhlaWdodCA9IHRoaXMuX2NvbnRhaW5lci5vZmZzZXRIZWlnaHQgKyBtYXJnaW5Cb3R0b20sXHJcbiAgXHRcdCAgICBjb250YWluZXJXaWR0aCA9IHRoaXMuX2NvbnRhaW5lcldpZHRoLFxyXG4gIFx0XHQgICAgbGF5ZXJQb3MgPSBuZXcgUG9pbnQodGhpcy5fY29udGFpbmVyTGVmdCwgLWNvbnRhaW5lckhlaWdodCAtIHRoaXMuX2NvbnRhaW5lckJvdHRvbSk7XHJcblxyXG4gIFx0XHRsYXllclBvcy5fYWRkKGdldFBvc2l0aW9uKHRoaXMuX2NvbnRhaW5lcikpO1xyXG5cclxuICBcdFx0dmFyIGNvbnRhaW5lclBvcyA9IG1hcC5sYXllclBvaW50VG9Db250YWluZXJQb2ludChsYXllclBvcyksXHJcbiAgXHRcdCAgICBwYWRkaW5nID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmcpLFxyXG4gIFx0XHQgICAgcGFkZGluZ1RMID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmdUb3BMZWZ0IHx8IHBhZGRpbmcpLFxyXG4gIFx0XHQgICAgcGFkZGluZ0JSID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmdCb3R0b21SaWdodCB8fCBwYWRkaW5nKSxcclxuICBcdFx0ICAgIHNpemUgPSBtYXAuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgZHggPSAwLFxyXG4gIFx0XHQgICAgZHkgPSAwO1xyXG5cclxuICBcdFx0aWYgKGNvbnRhaW5lclBvcy54ICsgY29udGFpbmVyV2lkdGggKyBwYWRkaW5nQlIueCA+IHNpemUueCkgeyAvLyByaWdodFxyXG4gIFx0XHRcdGR4ID0gY29udGFpbmVyUG9zLnggKyBjb250YWluZXJXaWR0aCAtIHNpemUueCArIHBhZGRpbmdCUi54O1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChjb250YWluZXJQb3MueCAtIGR4IC0gcGFkZGluZ1RMLnggPCAwKSB7IC8vIGxlZnRcclxuICBcdFx0XHRkeCA9IGNvbnRhaW5lclBvcy54IC0gcGFkZGluZ1RMLng7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKGNvbnRhaW5lclBvcy55ICsgY29udGFpbmVySGVpZ2h0ICsgcGFkZGluZ0JSLnkgPiBzaXplLnkpIHsgLy8gYm90dG9tXHJcbiAgXHRcdFx0ZHkgPSBjb250YWluZXJQb3MueSArIGNvbnRhaW5lckhlaWdodCAtIHNpemUueSArIHBhZGRpbmdCUi55O1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChjb250YWluZXJQb3MueSAtIGR5IC0gcGFkZGluZ1RMLnkgPCAwKSB7IC8vIHRvcFxyXG4gIFx0XHRcdGR5ID0gY29udGFpbmVyUG9zLnkgLSBwYWRkaW5nVEwueTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBNYXBcclxuICBcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBhdXRvcGFuc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBzdGFydHMgYXV0b3Bhbm5pbmcgd2hlbiBvcGVuaW5nIGEgcG9wdXAuXHJcbiAgXHRcdGlmIChkeCB8fCBkeSkge1xyXG4gIFx0XHRcdC8vIFRyYWNrIHRoYXQgd2UncmUgYXV0b3Bhbm5pbmcsIGFzIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSByZS1yYW4gb24gbW92ZWVuZFxyXG4gIFx0XHRcdGlmICh0aGlzLm9wdGlvbnMua2VlcEluVmlldykge1xyXG4gIFx0XHRcdFx0dGhpcy5fYXV0b3Bhbm5pbmcgPSB0cnVlO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0bWFwXHJcbiAgXHRcdFx0ICAgIC5maXJlKCdhdXRvcGFuc3RhcnQnKVxyXG4gIFx0XHRcdCAgICAucGFuQnkoW2R4LCBkeV0pO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRBbmNob3I6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Ly8gV2hlcmUgc2hvdWxkIHdlIGFuY2hvciB0aGUgcG9wdXAgb24gdGhlIHNvdXJjZSBsYXllcj9cclxuICBcdFx0cmV0dXJuIHRvUG9pbnQodGhpcy5fc291cmNlICYmIHRoaXMuX3NvdXJjZS5fZ2V0UG9wdXBBbmNob3IgPyB0aGlzLl9zb3VyY2UuX2dldFBvcHVwQW5jaG9yKCkgOiBbMCwgMF0pO1xyXG4gIFx0fVxyXG5cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBQb3B1cFxyXG4gIC8vIEBmYWN0b3J5IEwucG9wdXAob3B0aW9ucz86IFBvcHVwIG9wdGlvbnMsIHNvdXJjZT86IExheWVyKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIGBQb3B1cGAgb2JqZWN0IGdpdmVuIGFuIG9wdGlvbmFsIGBvcHRpb25zYCBvYmplY3QgdGhhdCBkZXNjcmliZXMgaXRzIGFwcGVhcmFuY2UgYW5kIGxvY2F0aW9uIGFuZCBhbiBvcHRpb25hbCBgc291cmNlYCBvYmplY3QgdGhhdCBpcyB1c2VkIHRvIHRhZyB0aGUgcG9wdXAgd2l0aCBhIHJlZmVyZW5jZSB0byB0aGUgTGF5ZXIgdG8gd2hpY2ggaXQgcmVmZXJzLlxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwucG9wdXAobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQb3B1cCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIGBQb3B1cGAgb2JqZWN0IGdpdmVuIGBsYXRsbmdgIHdoZXJlIHRoZSBwb3B1cCB3aWxsIG9wZW4gYW5kIGFuIG9wdGlvbmFsIGBvcHRpb25zYCBvYmplY3QgdGhhdCBkZXNjcmliZXMgaXRzIGFwcGVhcmFuY2UgYW5kIGxvY2F0aW9uLlxyXG4gIHZhciBwb3B1cCA9IGZ1bmN0aW9uIChvcHRpb25zLCBzb3VyY2UpIHtcclxuICBcdHJldHVybiBuZXcgUG9wdXAob3B0aW9ucywgc291cmNlKTtcclxuICB9O1xyXG5cclxuXHJcbiAgLyogQG5hbWVzcGFjZSBNYXBcclxuICAgKiBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXHJcbiAgICogQG9wdGlvbiBjbG9zZVBvcHVwT25DbGljazogQm9vbGVhbiA9IHRydWVcclxuICAgKiBTZXQgaXQgdG8gYGZhbHNlYCBpZiB5b3UgZG9uJ3Qgd2FudCBwb3B1cHMgdG8gY2xvc2Ugd2hlbiB1c2VyIGNsaWNrcyB0aGUgbWFwLlxyXG4gICAqL1xyXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xyXG4gIFx0Y2xvc2VQb3B1cE9uQ2xpY2s6IHRydWVcclxuICB9KTtcclxuXHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgLy8gQHNlY3Rpb24gTWV0aG9kcyBmb3IgTGF5ZXJzIGFuZCBDb250cm9sc1xyXG4gIE1hcC5pbmNsdWRlKHtcclxuICBcdC8vIEBtZXRob2Qgb3BlblBvcHVwKHBvcHVwOiBQb3B1cCk6IHRoaXNcclxuICBcdC8vIE9wZW5zIHRoZSBzcGVjaWZpZWQgcG9wdXAgd2hpbGUgY2xvc2luZyB0aGUgcHJldmlvdXNseSBvcGVuZWQgKHRvIG1ha2Ugc3VyZSBvbmx5IG9uZSBpcyBvcGVuZWQgYXQgb25lIHRpbWUgZm9yIHVzYWJpbGl0eSkuXHJcbiAgXHQvLyBAYWx0ZXJuYXRpdmVcclxuICBcdC8vIEBtZXRob2Qgb3BlblBvcHVwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudCwgbGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQb3B1cCBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gQ3JlYXRlcyBhIHBvcHVwIHdpdGggdGhlIHNwZWNpZmllZCBjb250ZW50IGFuZCBvcHRpb25zIGFuZCBvcGVucyBpdCBpbiB0aGUgZ2l2ZW4gcG9pbnQgb24gYSBtYXAuXHJcbiAgXHRvcGVuUG9wdXA6IGZ1bmN0aW9uIChwb3B1cCwgbGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRcdHRoaXMuX2luaXRPdmVybGF5KFBvcHVwLCBwb3B1cCwgbGF0bG5nLCBvcHRpb25zKVxyXG4gIFx0XHQgIC5vcGVuT24odGhpcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjbG9zZVBvcHVwKHBvcHVwPzogUG9wdXApOiB0aGlzXHJcbiAgXHQvLyBDbG9zZXMgdGhlIHBvcHVwIHByZXZpb3VzbHkgb3BlbmVkIHdpdGggW29wZW5Qb3B1cF0oI21hcC1vcGVucG9wdXApIChvciB0aGUgZ2l2ZW4gb25lKS5cclxuICBcdGNsb3NlUG9wdXA6IGZ1bmN0aW9uIChwb3B1cCkge1xyXG4gIFx0XHRwb3B1cCA9IGFyZ3VtZW50cy5sZW5ndGggPyBwb3B1cCA6IHRoaXMuX3BvcHVwO1xyXG4gIFx0XHRpZiAocG9wdXApIHtcclxuICBcdFx0XHRwb3B1cC5jbG9zZSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgTGF5ZXJcclxuICAgKiBAc2VjdGlvbiBQb3B1cCBtZXRob2RzIGV4YW1wbGVcclxuICAgKlxyXG4gICAqIEFsbCBsYXllcnMgc2hhcmUgYSBzZXQgb2YgbWV0aG9kcyBjb252ZW5pZW50IGZvciBiaW5kaW5nIHBvcHVwcyB0byBpdC5cclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIGxheWVyID0gTC5Qb2x5Z29uKGxhdGxuZ3MpLmJpbmRQb3B1cCgnSGkgVGhlcmUhJykuYWRkVG8obWFwKTtcclxuICAgKiBsYXllci5vcGVuUG9wdXAoKTtcclxuICAgKiBsYXllci5jbG9zZVBvcHVwKCk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBQb3B1cHMgd2lsbCBhbHNvIGJlIGF1dG9tYXRpY2FsbHkgb3BlbmVkIHdoZW4gdGhlIGxheWVyIGlzIGNsaWNrZWQgb24gYW5kIGNsb3NlZCB3aGVuIHRoZSBsYXllciBpcyByZW1vdmVkIGZyb20gdGhlIG1hcCBvciBhbm90aGVyIHBvcHVwIGlzIG9wZW5lZC5cclxuICAgKi9cclxuXHJcbiAgLy8gQHNlY3Rpb24gUG9wdXAgbWV0aG9kc1xyXG4gIExheWVyLmluY2x1ZGUoe1xyXG5cclxuICBcdC8vIEBtZXRob2QgYmluZFBvcHVwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudHxGdW5jdGlvbnxQb3B1cCwgb3B0aW9ucz86IFBvcHVwIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBCaW5kcyBhIHBvcHVwIHRvIHRoZSBsYXllciB3aXRoIHRoZSBwYXNzZWQgYGNvbnRlbnRgIGFuZCBzZXRzIHVwIHRoZVxyXG4gIFx0Ly8gbmVjZXNzYXJ5IGV2ZW50IGxpc3RlbmVycy4gSWYgYSBgRnVuY3Rpb25gIGlzIHBhc3NlZCBpdCB3aWxsIHJlY2VpdmVcclxuICBcdC8vIHRoZSBsYXllciBhcyB0aGUgZmlyc3QgYXJndW1lbnQgYW5kIHNob3VsZCByZXR1cm4gYSBgU3RyaW5nYCBvciBgSFRNTEVsZW1lbnRgLlxyXG4gIFx0YmluZFBvcHVwOiBmdW5jdGlvbiAoY29udGVudCwgb3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLl9wb3B1cCA9IHRoaXMuX2luaXRPdmVybGF5KFBvcHVwLCB0aGlzLl9wb3B1cCwgY29udGVudCwgb3B0aW9ucyk7XHJcbiAgXHRcdGlmICghdGhpcy5fcG9wdXBIYW5kbGVyc0FkZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5vbih7XHJcbiAgXHRcdFx0XHRjbGljazogdGhpcy5fb3BlblBvcHVwLFxyXG4gIFx0XHRcdFx0a2V5cHJlc3M6IHRoaXMuX29uS2V5UHJlc3MsXHJcbiAgXHRcdFx0XHRyZW1vdmU6IHRoaXMuY2xvc2VQb3B1cCxcclxuICBcdFx0XHRcdG1vdmU6IHRoaXMuX21vdmVQb3B1cFxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwSGFuZGxlcnNBZGRlZCA9IHRydWU7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVuYmluZFBvcHVwKCk6IHRoaXNcclxuICBcdC8vIFJlbW92ZXMgdGhlIHBvcHVwIHByZXZpb3VzbHkgYm91bmQgd2l0aCBgYmluZFBvcHVwYC5cclxuICBcdHVuYmluZFBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMub2ZmKHtcclxuICBcdFx0XHRcdGNsaWNrOiB0aGlzLl9vcGVuUG9wdXAsXHJcbiAgXHRcdFx0XHRrZXlwcmVzczogdGhpcy5fb25LZXlQcmVzcyxcclxuICBcdFx0XHRcdHJlbW92ZTogdGhpcy5jbG9zZVBvcHVwLFxyXG4gIFx0XHRcdFx0bW92ZTogdGhpcy5fbW92ZVBvcHVwXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXBIYW5kbGVyc0FkZGVkID0gZmFsc2U7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXAgPSBudWxsO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG9wZW5Qb3B1cChsYXRsbmc/OiBMYXRMbmcpOiB0aGlzXHJcbiAgXHQvLyBPcGVucyB0aGUgYm91bmQgcG9wdXAgYXQgdGhlIHNwZWNpZmllZCBgbGF0bG5nYCBvciBhdCB0aGUgZGVmYXVsdCBwb3B1cCBhbmNob3IgaWYgbm8gYGxhdGxuZ2AgaXMgcGFzc2VkLlxyXG4gIFx0b3BlblBvcHVwOiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdGlmICghKHRoaXMgaW5zdGFuY2VvZiBGZWF0dXJlR3JvdXApKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9wb3B1cC5fc291cmNlID0gdGhpcztcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0aWYgKHRoaXMuX3BvcHVwLl9wcmVwYXJlT3BlbihsYXRsbmcgfHwgdGhpcy5fbGF0bG5nKSkge1xyXG4gIFx0XHRcdFx0Ly8gb3BlbiB0aGUgcG9wdXAgb24gdGhlIG1hcFxyXG4gIFx0XHRcdFx0dGhpcy5fcG9wdXAub3Blbk9uKHRoaXMuX21hcCk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb3NlUG9wdXAoKTogdGhpc1xyXG4gIFx0Ly8gQ2xvc2VzIHRoZSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGlmIGl0IGlzIG9wZW4uXHJcbiAgXHRjbG9zZVBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwLmNsb3NlKCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9nZ2xlUG9wdXAoKTogdGhpc1xyXG4gIFx0Ly8gT3BlbnMgb3IgY2xvc2VzIHRoZSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGRlcGVuZGluZyBvbiBpdHMgY3VycmVudCBzdGF0ZS5cclxuICBcdHRvZ2dsZVBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwLnRvZ2dsZSh0aGlzKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpc1BvcHVwT3BlbigpOiBib29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllciBpcyBjdXJyZW50bHkgb3Blbi5cclxuICBcdGlzUG9wdXBPcGVuOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiAodGhpcy5fcG9wdXAgPyB0aGlzLl9wb3B1cC5pc09wZW4oKSA6IGZhbHNlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQb3B1cENvbnRlbnQoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fFBvcHVwKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgY29udGVudCBvZiB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllci5cclxuICBcdHNldFBvcHVwQ29udGVudDogZnVuY3Rpb24gKGNvbnRlbnQpIHtcclxuICBcdFx0aWYgKHRoaXMuX3BvcHVwKSB7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXAuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQb3B1cCgpOiBQb3B1cFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllci5cclxuICBcdGdldFBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9wb3B1cDtcclxuICBcdH0sXHJcblxyXG4gIFx0X29wZW5Qb3B1cDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9wb3B1cCB8fCAhdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcbiAgXHRcdC8vIHByZXZlbnQgbWFwIGNsaWNrXHJcbiAgXHRcdHN0b3AoZSk7XHJcblxyXG4gIFx0XHR2YXIgdGFyZ2V0ID0gZS5sYXllciB8fCBlLnRhcmdldDtcclxuICBcdFx0aWYgKHRoaXMuX3BvcHVwLl9zb3VyY2UgPT09IHRhcmdldCAmJiAhKHRhcmdldCBpbnN0YW5jZW9mIFBhdGgpKSB7XHJcbiAgXHRcdFx0Ly8gdHJlYXQgaXQgbGlrZSBhIG1hcmtlciBhbmQgZmlndXJlIG91dFxyXG4gIFx0XHRcdC8vIGlmIHdlIHNob3VsZCB0b2dnbGUgaXQgb3Blbi9jbG9zZWRcclxuICBcdFx0XHRpZiAodGhpcy5fbWFwLmhhc0xheWVyKHRoaXMuX3BvcHVwKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5jbG9zZVBvcHVwKCk7XHJcbiAgXHRcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRcdHRoaXMub3BlblBvcHVwKGUubGF0bG5nKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuX3BvcHVwLl9zb3VyY2UgPSB0YXJnZXQ7XHJcbiAgXHRcdHRoaXMub3BlblBvcHVwKGUubGF0bG5nKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X21vdmVQb3B1cDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dGhpcy5fcG9wdXAuc2V0TGF0TG5nKGUubGF0bG5nKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uS2V5UHJlc3M6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmIChlLm9yaWdpbmFsRXZlbnQua2V5Q29kZSA9PT0gMTMpIHtcclxuICBcdFx0XHR0aGlzLl9vcGVuUG9wdXAoZSk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgVG9vbHRpcFxuICAgKiBAaW5oZXJpdHMgRGl2T3ZlcmxheVxuICAgKiBAYWthIEwuVG9vbHRpcFxuICAgKiBVc2VkIHRvIGRpc3BsYXkgc21hbGwgdGV4dHMgb24gdG9wIG9mIG1hcCBsYXllcnMuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIElmIHlvdSB3YW50IHRvIGp1c3QgYmluZCBhIHRvb2x0aXAgdG8gbWFya2VyOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiBtYXJrZXIuYmluZFRvb2x0aXAoXCJteSB0b29sdGlwIHRleHRcIikub3BlblRvb2x0aXAoKTtcbiAgICogYGBgXG4gICAqIFBhdGggb3ZlcmxheXMgbGlrZSBwb2x5bGluZXMgYWxzbyBoYXZlIGEgYGJpbmRUb29sdGlwYCBtZXRob2QuXG4gICAqXG4gICAqIEEgdG9vbHRpcCBjYW4gYmUgYWxzbyBzdGFuZGFsb25lOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgdG9vbHRpcCA9IEwudG9vbHRpcCgpXG4gICAqIFx0LnNldExhdExuZyhsYXRsbmcpXG4gICAqIFx0LnNldENvbnRlbnQoJ0hlbGxvIHdvcmxkITxiciAvPlRoaXMgaXMgYSBuaWNlIHRvb2x0aXAuJylcbiAgICogXHQuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqIG9yXG4gICAqIGBgYGpzXG4gICAqIHZhciB0b29sdGlwID0gTC50b29sdGlwKGxhdGxuZywge2NvbnRlbnQ6ICdIZWxsbyB3b3JsZCE8YnIgLz5UaGlzIGlzIGEgbmljZSB0b29sdGlwLid9KVxuICAgKiBcdC5hZGRUbyhtYXApO1xuICAgKiBgYGBcbiAgICpcbiAgICpcbiAgICogTm90ZSBhYm91dCB0b29sdGlwIG9mZnNldC4gTGVhZmxldCB0YWtlcyB0d28gb3B0aW9ucyBpbiBjb25zaWRlcmF0aW9uXG4gICAqIGZvciBjb21wdXRpbmcgdG9vbHRpcCBvZmZzZXR0aW5nOlxuICAgKiAtIHRoZSBgb2Zmc2V0YCBUb29sdGlwIG9wdGlvbjogaXQgZGVmYXVsdHMgdG8gWzAsIDBdLCBhbmQgaXQncyBzcGVjaWZpYyB0byBvbmUgdG9vbHRpcC5cbiAgICogICBBZGQgYSBwb3NpdGl2ZSB4IG9mZnNldCB0byBtb3ZlIHRoZSB0b29sdGlwIHRvIHRoZSByaWdodCwgYW5kIGEgcG9zaXRpdmUgeSBvZmZzZXQgdG9cbiAgICogICBtb3ZlIGl0IHRvIHRoZSBib3R0b20uIE5lZ2F0aXZlcyB3aWxsIG1vdmUgdG8gdGhlIGxlZnQgYW5kIHRvcC5cbiAgICogLSB0aGUgYHRvb2x0aXBBbmNob3JgIEljb24gb3B0aW9uOiB0aGlzIHdpbGwgb25seSBiZSBjb25zaWRlcmVkIGZvciBNYXJrZXIuIFlvdVxuICAgKiAgIHNob3VsZCBhZGFwdCB0aGlzIHZhbHVlIGlmIHlvdSB1c2UgYSBjdXN0b20gaWNvbi5cbiAgICovXG5cblxuICAvLyBAbmFtZXNwYWNlIFRvb2x0aXBcbiAgdmFyIFRvb2x0aXAgPSBEaXZPdmVybGF5LmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgVG9vbHRpcCBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiBwYW5lOiBTdHJpbmcgPSAndG9vbHRpcFBhbmUnXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSB0b29sdGlwIHdpbGwgYmUgYWRkZWQuXG4gIFx0XHRwYW5lOiAndG9vbHRpcFBhbmUnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG9mZnNldDogUG9pbnQgPSBQb2ludCgwLCAwKVxuICBcdFx0Ly8gT3B0aW9uYWwgb2Zmc2V0IG9mIHRoZSB0b29sdGlwIHBvc2l0aW9uLlxuICBcdFx0b2Zmc2V0OiBbMCwgMF0sXG5cbiAgXHRcdC8vIEBvcHRpb24gZGlyZWN0aW9uOiBTdHJpbmcgPSAnYXV0bydcbiAgXHRcdC8vIERpcmVjdGlvbiB3aGVyZSB0byBvcGVuIHRoZSB0b29sdGlwLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBgcmlnaHRgLCBgbGVmdGAsXG4gIFx0XHQvLyBgdG9wYCwgYGJvdHRvbWAsIGBjZW50ZXJgLCBgYXV0b2AuXG4gIFx0XHQvLyBgYXV0b2Agd2lsbCBkeW5hbWljYWxseSBzd2l0Y2ggYmV0d2VlbiBgcmlnaHRgIGFuZCBgbGVmdGAgYWNjb3JkaW5nIHRvIHRoZSB0b29sdGlwXG4gIFx0XHQvLyBwb3NpdGlvbiBvbiB0aGUgbWFwLlxuICBcdFx0ZGlyZWN0aW9uOiAnYXV0bycsXG5cbiAgXHRcdC8vIEBvcHRpb24gcGVybWFuZW50OiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIFdoZXRoZXIgdG8gb3BlbiB0aGUgdG9vbHRpcCBwZXJtYW5lbnRseSBvciBvbmx5IG9uIG1vdXNlb3Zlci5cbiAgXHRcdHBlcm1hbmVudDogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gc3RpY2t5OiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIElmIHRydWUsIHRoZSB0b29sdGlwIHdpbGwgZm9sbG93IHRoZSBtb3VzZSBpbnN0ZWFkIG9mIGJlaW5nIGZpeGVkIGF0IHRoZSBmZWF0dXJlIGNlbnRlci5cbiAgXHRcdHN0aWNreTogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMC45XG4gIFx0XHQvLyBUb29sdGlwIGNvbnRhaW5lciBvcGFjaXR5LlxuICBcdFx0b3BhY2l0eTogMC45XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vbkFkZC5jYWxsKHRoaXMsIG1hcCk7XG4gIFx0XHR0aGlzLnNldE9wYWNpdHkodGhpcy5vcHRpb25zLm9wYWNpdHkpO1xuXG4gIFx0XHQvLyBAbmFtZXNwYWNlIE1hcFxuICBcdFx0Ly8gQHNlY3Rpb24gVG9vbHRpcCBldmVudHNcbiAgXHRcdC8vIEBldmVudCB0b29sdGlwb3BlbjogVG9vbHRpcEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBpcyBvcGVuZWQgaW4gdGhlIG1hcC5cbiAgXHRcdG1hcC5maXJlKCd0b29sdGlwb3BlbicsIHt0b29sdGlwOiB0aGlzfSk7XG5cbiAgXHRcdGlmICh0aGlzLl9zb3VyY2UpIHtcbiAgXHRcdFx0dGhpcy5hZGRFdmVudFBhcmVudCh0aGlzLl9zb3VyY2UpO1xuXG4gIFx0XHRcdC8vIEBuYW1lc3BhY2UgTGF5ZXJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gVG9vbHRpcCBldmVudHNcbiAgXHRcdFx0Ly8gQGV2ZW50IHRvb2x0aXBvcGVuOiBUb29sdGlwRXZlbnRcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIHRvb2x0aXAgYm91bmQgdG8gdGhpcyBsYXllciBpcyBvcGVuZWQuXG4gIFx0XHRcdHRoaXMuX3NvdXJjZS5maXJlKCd0b29sdGlwb3BlbicsIHt0b29sdGlwOiB0aGlzfSwgdHJ1ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vblJlbW92ZS5jYWxsKHRoaXMsIG1hcCk7XG5cbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwXG4gIFx0XHQvLyBAc2VjdGlvbiBUb29sdGlwIGV2ZW50c1xuICBcdFx0Ly8gQGV2ZW50IHRvb2x0aXBjbG9zZTogVG9vbHRpcEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBpbiB0aGUgbWFwIGlzIGNsb3NlZC5cbiAgXHRcdG1hcC5maXJlKCd0b29sdGlwY2xvc2UnLCB7dG9vbHRpcDogdGhpc30pO1xuXG4gIFx0XHRpZiAodGhpcy5fc291cmNlKSB7XG4gIFx0XHRcdHRoaXMucmVtb3ZlRXZlbnRQYXJlbnQodGhpcy5fc291cmNlKTtcblxuICBcdFx0XHQvLyBAbmFtZXNwYWNlIExheWVyXG4gIFx0XHRcdC8vIEBzZWN0aW9uIFRvb2x0aXAgZXZlbnRzXG4gIFx0XHRcdC8vIEBldmVudCB0b29sdGlwY2xvc2U6IFRvb2x0aXBFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGlzIGNsb3NlZC5cbiAgXHRcdFx0dGhpcy5fc291cmNlLmZpcmUoJ3Rvb2x0aXBjbG9zZScsIHt0b29sdGlwOiB0aGlzfSwgdHJ1ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGV2ZW50cyA9IERpdk92ZXJsYXkucHJvdG90eXBlLmdldEV2ZW50cy5jYWxsKHRoaXMpO1xuXG4gIFx0XHRpZiAoIXRoaXMub3B0aW9ucy5wZXJtYW5lbnQpIHtcbiAgXHRcdFx0ZXZlbnRzLnByZWNsaWNrID0gdGhpcy5jbG9zZTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIGV2ZW50cztcbiAgXHR9LFxuXG4gIFx0X2luaXRMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBwcmVmaXggPSAnbGVhZmxldC10b29sdGlwJyxcbiAgXHRcdCAgICBjbGFzc05hbWUgPSBwcmVmaXggKyAnICcgKyAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSB8fCAnJykgKyAnIGxlYWZsZXQtem9vbS0nICsgKHRoaXMuX3pvb21BbmltYXRlZCA/ICdhbmltYXRlZCcgOiAnaGlkZScpO1xuXG4gIFx0XHR0aGlzLl9jb250ZW50Tm9kZSA9IHRoaXMuX2NvbnRhaW5lciA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUpO1xuXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKCdyb2xlJywgJ3Rvb2x0aXAnKTtcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2xlYWZsZXQtdG9vbHRpcC0nICsgc3RhbXAodGhpcykpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlTGF5b3V0OiBmdW5jdGlvbiAoKSB7fSxcblxuICBcdF9hZGp1c3RQYW46IGZ1bmN0aW9uICgpIHt9LFxuXG4gIFx0X3NldFBvc2l0aW9uOiBmdW5jdGlvbiAocG9zKSB7XG4gIFx0XHR2YXIgc3ViWCwgc3ViWSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyLFxuICBcdFx0ICAgIGNlbnRlclBvaW50ID0gbWFwLmxhdExuZ1RvQ29udGFpbmVyUG9pbnQobWFwLmdldENlbnRlcigpKSxcbiAgXHRcdCAgICB0b29sdGlwUG9pbnQgPSBtYXAubGF5ZXJQb2ludFRvQ29udGFpbmVyUG9pbnQocG9zKSxcbiAgXHRcdCAgICBkaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uLFxuICBcdFx0ICAgIHRvb2x0aXBXaWR0aCA9IGNvbnRhaW5lci5vZmZzZXRXaWR0aCxcbiAgXHRcdCAgICB0b29sdGlwSGVpZ2h0ID0gY29udGFpbmVyLm9mZnNldEhlaWdodCxcbiAgXHRcdCAgICBvZmZzZXQgPSB0b1BvaW50KHRoaXMub3B0aW9ucy5vZmZzZXQpLFxuICBcdFx0ICAgIGFuY2hvciA9IHRoaXMuX2dldEFuY2hvcigpO1xuXG4gIFx0XHRpZiAoZGlyZWN0aW9uID09PSAndG9wJykge1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoIC8gMjtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQ7XG4gIFx0XHR9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ2JvdHRvbScpIHtcbiAgXHRcdFx0c3ViWCA9IHRvb2x0aXBXaWR0aCAvIDI7XG4gIFx0XHRcdHN1YlkgPSAwO1xuICBcdFx0fSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdjZW50ZXInKSB7XG4gIFx0XHRcdHN1YlggPSB0b29sdGlwV2lkdGggLyAyO1xuICBcdFx0XHRzdWJZID0gdG9vbHRpcEhlaWdodCAvIDI7XG4gIFx0XHR9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ3JpZ2h0Jykge1xuICBcdFx0XHRzdWJYID0gMDtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoO1xuICBcdFx0XHRzdWJZID0gdG9vbHRpcEhlaWdodCAvIDI7XG4gIFx0XHR9IGVsc2UgaWYgKHRvb2x0aXBQb2ludC54IDwgY2VudGVyUG9pbnQueCkge1xuICBcdFx0XHRkaXJlY3Rpb24gPSAncmlnaHQnO1xuICBcdFx0XHRzdWJYID0gMDtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0ZGlyZWN0aW9uID0gJ2xlZnQnO1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoICsgKG9mZnNldC54ICsgYW5jaG9yLngpICogMjtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fVxuXG4gIFx0XHRwb3MgPSBwb3Muc3VidHJhY3QodG9Qb2ludChzdWJYLCBzdWJZLCB0cnVlKSkuYWRkKG9mZnNldCkuYWRkKGFuY2hvcik7XG5cbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC1yaWdodCcpO1xuICBcdFx0cmVtb3ZlQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC10b29sdGlwLWxlZnQnKTtcbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC10b3AnKTtcbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC1ib3R0b20nKTtcbiAgXHRcdGFkZENsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC0nICsgZGlyZWN0aW9uKTtcbiAgXHRcdHNldFBvc2l0aW9uKGNvbnRhaW5lciwgcG9zKTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZVBvc2l0aW9uOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgcG9zID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcpO1xuICBcdFx0dGhpcy5fc2V0UG9zaXRpb24ocG9zKTtcbiAgXHR9LFxuXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy5vcGFjaXR5ID0gb3BhY2l0eTtcblxuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcikge1xuICBcdFx0XHRzZXRPcGFjaXR5KHRoaXMuX2NvbnRhaW5lciwgb3BhY2l0eSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAuX2xhdExuZ1RvTmV3TGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcsIGUuem9vbSwgZS5jZW50ZXIpO1xuICBcdFx0dGhpcy5fc2V0UG9zaXRpb24ocG9zKTtcbiAgXHR9LFxuXG4gIFx0X2dldEFuY2hvcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gV2hlcmUgc2hvdWxkIHdlIGFuY2hvciB0aGUgdG9vbHRpcCBvbiB0aGUgc291cmNlIGxheWVyP1xuICBcdFx0cmV0dXJuIHRvUG9pbnQodGhpcy5fc291cmNlICYmIHRoaXMuX3NvdXJjZS5fZ2V0VG9vbHRpcEFuY2hvciAmJiAhdGhpcy5vcHRpb25zLnN0aWNreSA/IHRoaXMuX3NvdXJjZS5fZ2V0VG9vbHRpcEFuY2hvcigpIDogWzAsIDBdKTtcbiAgXHR9XG5cbiAgfSk7XG5cbiAgLy8gQG5hbWVzcGFjZSBUb29sdGlwXG4gIC8vIEBmYWN0b3J5IEwudG9vbHRpcChvcHRpb25zPzogVG9vbHRpcCBvcHRpb25zLCBzb3VyY2U/OiBMYXllcilcbiAgLy8gSW5zdGFudGlhdGVzIGEgYFRvb2x0aXBgIG9iamVjdCBnaXZlbiBhbiBvcHRpb25hbCBgb3B0aW9uc2Agb2JqZWN0IHRoYXQgZGVzY3JpYmVzIGl0cyBhcHBlYXJhbmNlIGFuZCBsb2NhdGlvbiBhbmQgYW4gb3B0aW9uYWwgYHNvdXJjZWAgb2JqZWN0IHRoYXQgaXMgdXNlZCB0byB0YWcgdGhlIHRvb2x0aXAgd2l0aCBhIHJlZmVyZW5jZSB0byB0aGUgTGF5ZXIgdG8gd2hpY2ggaXQgcmVmZXJzLlxuICAvLyBAYWx0ZXJuYXRpdmVcbiAgLy8gQGZhY3RvcnkgTC50b29sdGlwKGxhdGxuZzogTGF0TG5nLCBvcHRpb25zPzogVG9vbHRpcCBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBgVG9vbHRpcGAgb2JqZWN0IGdpdmVuIGBsYXRsbmdgIHdoZXJlIHRoZSB0b29sdGlwIHdpbGwgb3BlbiBhbmQgYW4gb3B0aW9uYWwgYG9wdGlvbnNgIG9iamVjdCB0aGF0IGRlc2NyaWJlcyBpdHMgYXBwZWFyYW5jZSBhbmQgbG9jYXRpb24uXG4gIHZhciB0b29sdGlwID0gZnVuY3Rpb24gKG9wdGlvbnMsIHNvdXJjZSkge1xuICBcdHJldHVybiBuZXcgVG9vbHRpcChvcHRpb25zLCBzb3VyY2UpO1xuICB9O1xuXG4gIC8vIEBuYW1lc3BhY2UgTWFwXG4gIC8vIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcbiAgTWFwLmluY2x1ZGUoe1xuXG4gIFx0Ly8gQG1ldGhvZCBvcGVuVG9vbHRpcCh0b29sdGlwOiBUb29sdGlwKTogdGhpc1xuICBcdC8vIE9wZW5zIHRoZSBzcGVjaWZpZWQgdG9vbHRpcC5cbiAgXHQvLyBAYWx0ZXJuYXRpdmVcbiAgXHQvLyBAbWV0aG9kIG9wZW5Ub29sdGlwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudCwgbGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBUb29sdGlwIG9wdGlvbnMpOiB0aGlzXG4gIFx0Ly8gQ3JlYXRlcyBhIHRvb2x0aXAgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbnRlbnQgYW5kIG9wdGlvbnMgYW5kIG9wZW4gaXQuXG4gIFx0b3BlblRvb2x0aXA6IGZ1bmN0aW9uICh0b29sdGlwLCBsYXRsbmcsIG9wdGlvbnMpIHtcbiAgXHRcdHRoaXMuX2luaXRPdmVybGF5KFRvb2x0aXAsIHRvb2x0aXAsIGxhdGxuZywgb3B0aW9ucylcbiAgXHRcdCAgLm9wZW5Pbih0aGlzKTtcblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgY2xvc2VUb29sdGlwKHRvb2x0aXA6IFRvb2x0aXApOiB0aGlzXG4gIFx0Ly8gQ2xvc2VzIHRoZSB0b29sdGlwIGdpdmVuIGFzIHBhcmFtZXRlci5cbiAgXHRjbG9zZVRvb2x0aXA6IGZ1bmN0aW9uICh0b29sdGlwKSB7XG4gIFx0XHR0b29sdGlwLmNsb3NlKCk7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9XG5cbiAgfSk7XG5cbiAgLypcbiAgICogQG5hbWVzcGFjZSBMYXllclxuICAgKiBAc2VjdGlvbiBUb29sdGlwIG1ldGhvZHMgZXhhbXBsZVxuICAgKlxuICAgKiBBbGwgbGF5ZXJzIHNoYXJlIGEgc2V0IG9mIG1ldGhvZHMgY29udmVuaWVudCBmb3IgYmluZGluZyB0b29sdGlwcyB0byBpdC5cbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIGxheWVyID0gTC5Qb2x5Z29uKGxhdGxuZ3MpLmJpbmRUb29sdGlwKCdIaSBUaGVyZSEnKS5hZGRUbyhtYXApO1xuICAgKiBsYXllci5vcGVuVG9vbHRpcCgpO1xuICAgKiBsYXllci5jbG9zZVRvb2x0aXAoKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIC8vIEBzZWN0aW9uIFRvb2x0aXAgbWV0aG9kc1xuICBMYXllci5pbmNsdWRlKHtcblxuICBcdC8vIEBtZXRob2QgYmluZFRvb2x0aXAoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fEZ1bmN0aW9ufFRvb2x0aXAsIG9wdGlvbnM/OiBUb29sdGlwIG9wdGlvbnMpOiB0aGlzXG4gIFx0Ly8gQmluZHMgYSB0b29sdGlwIHRvIHRoZSBsYXllciB3aXRoIHRoZSBwYXNzZWQgYGNvbnRlbnRgIGFuZCBzZXRzIHVwIHRoZVxuICBcdC8vIG5lY2Vzc2FyeSBldmVudCBsaXN0ZW5lcnMuIElmIGEgYEZ1bmN0aW9uYCBpcyBwYXNzZWQgaXQgd2lsbCByZWNlaXZlXG4gIFx0Ly8gdGhlIGxheWVyIGFzIHRoZSBmaXJzdCBhcmd1bWVudCBhbmQgc2hvdWxkIHJldHVybiBhIGBTdHJpbmdgIG9yIGBIVE1MRWxlbWVudGAuXG4gIFx0YmluZFRvb2x0aXA6IGZ1bmN0aW9uIChjb250ZW50LCBvcHRpb25zKSB7XG5cbiAgXHRcdGlmICh0aGlzLl90b29sdGlwICYmIHRoaXMuaXNUb29sdGlwT3BlbigpKSB7XG4gIFx0XHRcdHRoaXMudW5iaW5kVG9vbHRpcCgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl90b29sdGlwID0gdGhpcy5faW5pdE92ZXJsYXkoVG9vbHRpcCwgdGhpcy5fdG9vbHRpcCwgY29udGVudCwgb3B0aW9ucyk7XG4gIFx0XHR0aGlzLl9pbml0VG9vbHRpcEludGVyYWN0aW9ucygpO1xuXG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnBlcm1hbmVudCAmJiB0aGlzLl9tYXAgJiYgdGhpcy5fbWFwLmhhc0xheWVyKHRoaXMpKSB7XG4gIFx0XHRcdHRoaXMub3BlblRvb2x0aXAoKTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgdW5iaW5kVG9vbHRpcCgpOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgdG9vbHRpcCBwcmV2aW91c2x5IGJvdW5kIHdpdGggYGJpbmRUb29sdGlwYC5cbiAgXHR1bmJpbmRUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHR0aGlzLl9pbml0VG9vbHRpcEludGVyYWN0aW9ucyh0cnVlKTtcbiAgXHRcdFx0dGhpcy5jbG9zZVRvb2x0aXAoKTtcbiAgXHRcdFx0dGhpcy5fdG9vbHRpcCA9IG51bGw7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0X2luaXRUb29sdGlwSW50ZXJhY3Rpb25zOiBmdW5jdGlvbiAocmVtb3ZlKSB7XG4gIFx0XHRpZiAoIXJlbW92ZSAmJiB0aGlzLl90b29sdGlwSGFuZGxlcnNBZGRlZCkgeyByZXR1cm47IH1cbiAgXHRcdHZhciBvbk9mZiA9IHJlbW92ZSA/ICdvZmYnIDogJ29uJyxcbiAgXHRcdCAgICBldmVudHMgPSB7XG4gIFx0XHRcdHJlbW92ZTogdGhpcy5jbG9zZVRvb2x0aXAsXG4gIFx0XHRcdG1vdmU6IHRoaXMuX21vdmVUb29sdGlwXG4gIFx0XHQgICAgfTtcbiAgXHRcdGlmICghdGhpcy5fdG9vbHRpcC5vcHRpb25zLnBlcm1hbmVudCkge1xuICBcdFx0XHRldmVudHMubW91c2VvdmVyID0gdGhpcy5fb3BlblRvb2x0aXA7XG4gIFx0XHRcdGV2ZW50cy5tb3VzZW91dCA9IHRoaXMuY2xvc2VUb29sdGlwO1xuICBcdFx0XHRldmVudHMuY2xpY2sgPSB0aGlzLl9vcGVuVG9vbHRpcDtcbiAgXHRcdFx0aWYgKHRoaXMuX21hcCkge1xuICBcdFx0XHRcdHRoaXMuX2FkZEZvY3VzTGlzdGVuZXJzKCk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0ZXZlbnRzLmFkZCA9IHRoaXMuX2FkZEZvY3VzTGlzdGVuZXJzO1xuICBcdFx0XHR9XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRldmVudHMuYWRkID0gdGhpcy5fb3BlblRvb2x0aXA7XG4gIFx0XHR9XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnN0aWNreSkge1xuICBcdFx0XHRldmVudHMubW91c2Vtb3ZlID0gdGhpcy5fbW92ZVRvb2x0aXA7XG4gIFx0XHR9XG4gIFx0XHR0aGlzW29uT2ZmXShldmVudHMpO1xuICBcdFx0dGhpcy5fdG9vbHRpcEhhbmRsZXJzQWRkZWQgPSAhcmVtb3ZlO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIG9wZW5Ub29sdGlwKGxhdGxuZz86IExhdExuZyk6IHRoaXNcbiAgXHQvLyBPcGVucyB0aGUgYm91bmQgdG9vbHRpcCBhdCB0aGUgc3BlY2lmaWVkIGBsYXRsbmdgIG9yIGF0IHRoZSBkZWZhdWx0IHRvb2x0aXAgYW5jaG9yIGlmIG5vIGBsYXRsbmdgIGlzIHBhc3NlZC5cbiAgXHRvcGVuVG9vbHRpcDogZnVuY3Rpb24gKGxhdGxuZykge1xuICBcdFx0aWYgKHRoaXMuX3Rvb2x0aXApIHtcbiAgXHRcdFx0aWYgKCEodGhpcyBpbnN0YW5jZW9mIEZlYXR1cmVHcm91cCkpIHtcbiAgXHRcdFx0XHR0aGlzLl90b29sdGlwLl9zb3VyY2UgPSB0aGlzO1xuICBcdFx0XHR9XG4gIFx0XHRcdGlmICh0aGlzLl90b29sdGlwLl9wcmVwYXJlT3BlbihsYXRsbmcpKSB7XG4gIFx0XHRcdFx0Ly8gb3BlbiB0aGUgdG9vbHRpcCBvbiB0aGUgbWFwXG4gIFx0XHRcdFx0dGhpcy5fdG9vbHRpcC5vcGVuT24odGhpcy5fbWFwKTtcblxuICBcdFx0XHRcdGlmICh0aGlzLmdldEVsZW1lbnQpIHtcbiAgXHRcdFx0XHRcdHRoaXMuX3NldEFyaWFEZXNjcmliZWRCeU9uTGF5ZXIodGhpcyk7XG4gIFx0XHRcdFx0fSBlbHNlIGlmICh0aGlzLmVhY2hMYXllcikge1xuICBcdFx0XHRcdFx0dGhpcy5lYWNoTGF5ZXIodGhpcy5fc2V0QXJpYURlc2NyaWJlZEJ5T25MYXllciwgdGhpcyk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBjbG9zZVRvb2x0aXAoKTogdGhpc1xuICBcdC8vIENsb3NlcyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGlmIGl0IGlzIG9wZW4uXG4gIFx0Y2xvc2VUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHRyZXR1cm4gdGhpcy5fdG9vbHRpcC5jbG9zZSgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHRvZ2dsZVRvb2x0aXAoKTogdGhpc1xuICBcdC8vIE9wZW5zIG9yIGNsb3NlcyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGRlcGVuZGluZyBvbiBpdHMgY3VycmVudCBzdGF0ZS5cbiAgXHR0b2dnbGVUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHR0aGlzLl90b29sdGlwLnRvZ2dsZSh0aGlzKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGlzVG9vbHRpcE9wZW4oKTogYm9vbGVhblxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSB0b29sdGlwIGJvdW5kIHRvIHRoaXMgbGF5ZXIgaXMgY3VycmVudGx5IG9wZW4uXG4gIFx0aXNUb29sdGlwT3BlbjogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX3Rvb2x0aXAuaXNPcGVuKCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0VG9vbHRpcENvbnRlbnQoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fFRvb2x0aXApOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgY29udGVudCBvZiB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyLlxuICBcdHNldFRvb2x0aXBDb250ZW50OiBmdW5jdGlvbiAoY29udGVudCkge1xuICBcdFx0aWYgKHRoaXMuX3Rvb2x0aXApIHtcbiAgXHRcdFx0dGhpcy5fdG9vbHRpcC5zZXRDb250ZW50KGNvbnRlbnQpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0VG9vbHRpcCgpOiBUb29sdGlwXG4gIFx0Ly8gUmV0dXJucyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyLlxuICBcdGdldFRvb2x0aXA6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl90b29sdGlwO1xuICBcdH0sXG5cbiAgXHRfYWRkRm9jdXNMaXN0ZW5lcnM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLmdldEVsZW1lbnQpIHtcbiAgXHRcdFx0dGhpcy5fYWRkRm9jdXNMaXN0ZW5lcnNPbkxheWVyKHRoaXMpO1xuICBcdFx0fSBlbHNlIGlmICh0aGlzLmVhY2hMYXllcikge1xuICBcdFx0XHR0aGlzLmVhY2hMYXllcih0aGlzLl9hZGRGb2N1c0xpc3RlbmVyc09uTGF5ZXIsIHRoaXMpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfYWRkRm9jdXNMaXN0ZW5lcnNPbkxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBlbCA9IGxheWVyLmdldEVsZW1lbnQoKTtcbiAgXHRcdGlmIChlbCkge1xuICBcdFx0XHRvbihlbCwgJ2ZvY3VzJywgZnVuY3Rpb24gKCkge1xuICBcdFx0XHRcdHRoaXMuX3Rvb2x0aXAuX3NvdXJjZSA9IGxheWVyO1xuICBcdFx0XHRcdHRoaXMub3BlblRvb2x0aXAoKTtcbiAgXHRcdFx0fSwgdGhpcyk7XG4gIFx0XHRcdG9uKGVsLCAnYmx1cicsIHRoaXMuY2xvc2VUb29sdGlwLCB0aGlzKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldEFyaWFEZXNjcmliZWRCeU9uTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIGVsID0gbGF5ZXIuZ2V0RWxlbWVudCgpO1xuICBcdFx0aWYgKGVsKSB7XG4gIFx0XHRcdGVsLnNldEF0dHJpYnV0ZSgnYXJpYS1kZXNjcmliZWRieScsIHRoaXMuX3Rvb2x0aXAuX2NvbnRhaW5lci5pZCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuXG4gIFx0X29wZW5Ub29sdGlwOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0aWYgKCF0aGlzLl90b29sdGlwIHx8ICF0aGlzLl9tYXAgfHwgKHRoaXMuX21hcC5kcmFnZ2luZyAmJiB0aGlzLl9tYXAuZHJhZ2dpbmcubW92aW5nKCkpKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3Rvb2x0aXAuX3NvdXJjZSA9IGUubGF5ZXIgfHwgZS50YXJnZXQ7XG5cbiAgXHRcdHRoaXMub3BlblRvb2x0aXAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnN0aWNreSA/IGUubGF0bG5nIDogdW5kZWZpbmVkKTtcbiAgXHR9LFxuXG4gIFx0X21vdmVUb29sdGlwOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIGxhdGxuZyA9IGUubGF0bG5nLCBjb250YWluZXJQb2ludCwgbGF5ZXJQb2ludDtcbiAgXHRcdGlmICh0aGlzLl90b29sdGlwLm9wdGlvbnMuc3RpY2t5ICYmIGUub3JpZ2luYWxFdmVudCkge1xuICBcdFx0XHRjb250YWluZXJQb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlLm9yaWdpbmFsRXZlbnQpO1xuICBcdFx0XHRsYXllclBvaW50ID0gdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KGNvbnRhaW5lclBvaW50KTtcbiAgXHRcdFx0bGF0bG5nID0gdGhpcy5fbWFwLmxheWVyUG9pbnRUb0xhdExuZyhsYXllclBvaW50KTtcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3Rvb2x0aXAuc2V0TGF0TG5nKGxhdGxuZyk7XG4gIFx0fVxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgRGl2SWNvblxuICAgKiBAYWthIEwuRGl2SWNvblxuICAgKiBAaW5oZXJpdHMgSWNvblxuICAgKlxuICAgKiBSZXByZXNlbnRzIGEgbGlnaHR3ZWlnaHQgaWNvbiBmb3IgbWFya2VycyB0aGF0IHVzZXMgYSBzaW1wbGUgYDxkaXY+YFxuICAgKiBlbGVtZW50IGluc3RlYWQgb2YgYW4gaW1hZ2UuIEluaGVyaXRzIGZyb20gYEljb25gIGJ1dCBpZ25vcmVzIHRoZSBgaWNvblVybGAgYW5kIHNoYWRvdyBvcHRpb25zLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBqc1xuICAgKiB2YXIgbXlJY29uID0gTC5kaXZJY29uKHtjbGFzc05hbWU6ICdteS1kaXYtaWNvbid9KTtcbiAgICogLy8geW91IGNhbiBzZXQgLm15LWRpdi1pY29uIHN0eWxlcyBpbiBDU1NcbiAgICpcbiAgICogTC5tYXJrZXIoWzUwLjUwNSwgMzAuNTddLCB7aWNvbjogbXlJY29ufSkuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGl0IGhhcyBhICdsZWFmbGV0LWRpdi1pY29uJyBDU1MgY2xhc3MgYW5kIGlzIHN0eWxlZCBhcyBhIGxpdHRsZSB3aGl0ZSBzcXVhcmUgd2l0aCBhIHNoYWRvdy5cbiAgICovXG5cbiAgdmFyIERpdkljb24gPSBJY29uLmV4dGVuZCh7XG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQHNlY3Rpb25cbiAgXHRcdC8vIEBha2EgRGl2SWNvbiBvcHRpb25zXG4gIFx0XHRpY29uU2l6ZTogWzEyLCAxMl0sIC8vIGFsc28gY2FuIGJlIHNldCB0aHJvdWdoIENTU1xuXG4gIFx0XHQvLyBpY29uQW5jaG9yOiAoUG9pbnQpLFxuICBcdFx0Ly8gcG9wdXBBbmNob3I6IChQb2ludCksXG5cbiAgXHRcdC8vIEBvcHRpb24gaHRtbDogU3RyaW5nfEhUTUxFbGVtZW50ID0gJydcbiAgXHRcdC8vIEN1c3RvbSBIVE1MIGNvZGUgdG8gcHV0IGluc2lkZSB0aGUgZGl2IGVsZW1lbnQsIGVtcHR5IGJ5IGRlZmF1bHQuIEFsdGVybmF0aXZlbHksXG4gIFx0XHQvLyBhbiBpbnN0YW5jZSBvZiBgSFRNTEVsZW1lbnRgLlxuICBcdFx0aHRtbDogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gYmdQb3M6IFBvaW50ID0gWzAsIDBdXG4gIFx0XHQvLyBPcHRpb25hbCByZWxhdGl2ZSBwb3NpdGlvbiBvZiB0aGUgYmFja2dyb3VuZCwgaW4gcGl4ZWxzXG4gIFx0XHRiZ1BvczogbnVsbCxcblxuICBcdFx0Y2xhc3NOYW1lOiAnbGVhZmxldC1kaXYtaWNvbidcbiAgXHR9LFxuXG4gIFx0Y3JlYXRlSWNvbjogZnVuY3Rpb24gKG9sZEljb24pIHtcbiAgXHRcdHZhciBkaXYgPSAob2xkSWNvbiAmJiBvbGRJY29uLnRhZ05hbWUgPT09ICdESVYnKSA/IG9sZEljb24gOiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKSxcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xuXG4gIFx0XHRpZiAob3B0aW9ucy5odG1sIGluc3RhbmNlb2YgRWxlbWVudCkge1xuICBcdFx0XHRlbXB0eShkaXYpO1xuICBcdFx0XHRkaXYuYXBwZW5kQ2hpbGQob3B0aW9ucy5odG1sKTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdGRpdi5pbm5lckhUTUwgPSBvcHRpb25zLmh0bWwgIT09IGZhbHNlID8gb3B0aW9ucy5odG1sIDogJyc7XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChvcHRpb25zLmJnUG9zKSB7XG4gIFx0XHRcdHZhciBiZ1BvcyA9IHRvUG9pbnQob3B0aW9ucy5iZ1Bvcyk7XG4gIFx0XHRcdGRpdi5zdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb24gPSAoLWJnUG9zLngpICsgJ3B4ICcgKyAoLWJnUG9zLnkpICsgJ3B4JztcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3NldEljb25TdHlsZXMoZGl2LCAnaWNvbicpO1xuXG4gIFx0XHRyZXR1cm4gZGl2O1xuICBcdH0sXG5cbiAgXHRjcmVhdGVTaGFkb3c6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiBudWxsO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQGZhY3RvcnkgTC5kaXZJY29uKG9wdGlvbnM6IERpdkljb24gb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIGBEaXZJY29uYCBpbnN0YW5jZSB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBkaXZJY29uKG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IERpdkljb24ob3B0aW9ucyk7XG4gIH1cblxuICBJY29uLkRlZmF1bHQgPSBJY29uRGVmYXVsdDtcblxuICAvKlxuICAgKiBAY2xhc3MgR3JpZExheWVyXG4gICAqIEBpbmhlcml0cyBMYXllclxuICAgKiBAYWthIEwuR3JpZExheWVyXG4gICAqXG4gICAqIEdlbmVyaWMgY2xhc3MgZm9yIGhhbmRsaW5nIGEgdGlsZWQgZ3JpZCBvZiBIVE1MIGVsZW1lbnRzLiBUaGlzIGlzIHRoZSBiYXNlIGNsYXNzIGZvciBhbGwgdGlsZSBsYXllcnMgYW5kIHJlcGxhY2VzIGBUaWxlTGF5ZXIuQ2FudmFzYC5cbiAgICogR3JpZExheWVyIGNhbiBiZSBleHRlbmRlZCB0byBjcmVhdGUgYSB0aWxlZCBncmlkIG9mIEhUTUwgZWxlbWVudHMgbGlrZSBgPGNhbnZhcz5gLCBgPGltZz5gIG9yIGA8ZGl2PmAuIEdyaWRMYXllciB3aWxsIGhhbmRsZSBjcmVhdGluZyBhbmQgYW5pbWF0aW5nIHRoZXNlIERPTSBlbGVtZW50cyBmb3IgeW91LlxuICAgKlxuICAgKlxuICAgKiBAc2VjdGlvbiBTeW5jaHJvbm91cyB1c2FnZVxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBUbyBjcmVhdGUgYSBjdXN0b20gbGF5ZXIsIGV4dGVuZCBHcmlkTGF5ZXIgYW5kIGltcGxlbWVudCB0aGUgYGNyZWF0ZVRpbGUoKWAgbWV0aG9kLCB3aGljaCB3aWxsIGJlIHBhc3NlZCBhIGBQb2ludGAgb2JqZWN0IHdpdGggdGhlIGB4YCwgYHlgLCBhbmQgYHpgICh6b29tIGxldmVsKSBjb29yZGluYXRlcyB0byBkcmF3IHlvdXIgdGlsZS5cbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIENhbnZhc0xheWVyID0gTC5HcmlkTGF5ZXIuZXh0ZW5kKHtcbiAgICogICAgIGNyZWF0ZVRpbGU6IGZ1bmN0aW9uKGNvb3Jkcyl7XG4gICAqICAgICAgICAgLy8gY3JlYXRlIGEgPGNhbnZhcz4gZWxlbWVudCBmb3IgZHJhd2luZ1xuICAgKiAgICAgICAgIHZhciB0aWxlID0gTC5Eb21VdGlsLmNyZWF0ZSgnY2FudmFzJywgJ2xlYWZsZXQtdGlsZScpO1xuICAgKlxuICAgKiAgICAgICAgIC8vIHNldHVwIHRpbGUgd2lkdGggYW5kIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIG9wdGlvbnNcbiAgICogICAgICAgICB2YXIgc2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgICogICAgICAgICB0aWxlLndpZHRoID0gc2l6ZS54O1xuICAgKiAgICAgICAgIHRpbGUuaGVpZ2h0ID0gc2l6ZS55O1xuICAgKlxuICAgKiAgICAgICAgIC8vIGdldCBhIGNhbnZhcyBjb250ZXh0IGFuZCBkcmF3IHNvbWV0aGluZyBvbiBpdCB1c2luZyBjb29yZHMueCwgY29vcmRzLnkgYW5kIGNvb3Jkcy56XG4gICAqICAgICAgICAgdmFyIGN0eCA9IHRpbGUuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICpcbiAgICogICAgICAgICAvLyByZXR1cm4gdGhlIHRpbGUgc28gaXQgY2FuIGJlIHJlbmRlcmVkIG9uIHNjcmVlblxuICAgKiAgICAgICAgIHJldHVybiB0aWxlO1xuICAgKiAgICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIEBzZWN0aW9uIEFzeW5jaHJvbm91cyB1c2FnZVxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBUaWxlIGNyZWF0aW9uIGNhbiBhbHNvIGJlIGFzeW5jaHJvbm91cywgdGhpcyBpcyB1c2VmdWwgd2hlbiB1c2luZyBhIHRoaXJkLXBhcnR5IGRyYXdpbmcgbGlicmFyeS4gT25jZSB0aGUgdGlsZSBpcyBmaW5pc2hlZCBkcmF3aW5nIGl0IGNhbiBiZSBwYXNzZWQgdG8gdGhlIGBkb25lKClgIGNhbGxiYWNrLlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgQ2FudmFzTGF5ZXIgPSBMLkdyaWRMYXllci5leHRlbmQoe1xuICAgKiAgICAgY3JlYXRlVGlsZTogZnVuY3Rpb24oY29vcmRzLCBkb25lKXtcbiAgICogICAgICAgICB2YXIgZXJyb3I7XG4gICAqXG4gICAqICAgICAgICAgLy8gY3JlYXRlIGEgPGNhbnZhcz4gZWxlbWVudCBmb3IgZHJhd2luZ1xuICAgKiAgICAgICAgIHZhciB0aWxlID0gTC5Eb21VdGlsLmNyZWF0ZSgnY2FudmFzJywgJ2xlYWZsZXQtdGlsZScpO1xuICAgKlxuICAgKiAgICAgICAgIC8vIHNldHVwIHRpbGUgd2lkdGggYW5kIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIG9wdGlvbnNcbiAgICogICAgICAgICB2YXIgc2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgICogICAgICAgICB0aWxlLndpZHRoID0gc2l6ZS54O1xuICAgKiAgICAgICAgIHRpbGUuaGVpZ2h0ID0gc2l6ZS55O1xuICAgKlxuICAgKiAgICAgICAgIC8vIGRyYXcgc29tZXRoaW5nIGFzeW5jaHJvbm91c2x5IGFuZCBwYXNzIHRoZSB0aWxlIHRvIHRoZSBkb25lKCkgY2FsbGJhY2tcbiAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgKiAgICAgICAgICAgICBkb25lKGVycm9yLCB0aWxlKTtcbiAgICogICAgICAgICB9LCAxMDAwKTtcbiAgICpcbiAgICogICAgICAgICByZXR1cm4gdGlsZTtcbiAgICogICAgIH1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBAc2VjdGlvblxuICAgKi9cblxuXG4gIHZhciBHcmlkTGF5ZXIgPSBMYXllci5leHRlbmQoe1xuXG4gIFx0Ly8gQHNlY3Rpb25cbiAgXHQvLyBAYWthIEdyaWRMYXllciBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiB0aWxlU2l6ZTogTnVtYmVyfFBvaW50ID0gMjU2XG4gIFx0XHQvLyBXaWR0aCBhbmQgaGVpZ2h0IG9mIHRpbGVzIGluIHRoZSBncmlkLiBVc2UgYSBudW1iZXIgaWYgd2lkdGggYW5kIGhlaWdodCBhcmUgZXF1YWwsIG9yIGBMLnBvaW50KHdpZHRoLCBoZWlnaHQpYCBvdGhlcndpc2UuXG4gIFx0XHR0aWxlU2l6ZTogMjU2LFxuXG4gIFx0XHQvLyBAb3B0aW9uIG9wYWNpdHk6IE51bWJlciA9IDEuMFxuICBcdFx0Ly8gT3BhY2l0eSBvZiB0aGUgdGlsZXMuIENhbiBiZSB1c2VkIGluIHRoZSBgY3JlYXRlVGlsZSgpYCBmdW5jdGlvbi5cbiAgXHRcdG9wYWNpdHk6IDEsXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlbklkbGU6IEJvb2xlYW4gPSAoZGVwZW5kcylcbiAgXHRcdC8vIExvYWQgbmV3IHRpbGVzIG9ubHkgd2hlbiBwYW5uaW5nIGVuZHMuXG4gIFx0XHQvLyBgdHJ1ZWAgYnkgZGVmYXVsdCBvbiBtb2JpbGUgYnJvd3NlcnMsIGluIG9yZGVyIHRvIGF2b2lkIHRvbyBtYW55IHJlcXVlc3RzIGFuZCBrZWVwIHNtb290aCBuYXZpZ2F0aW9uLlxuICBcdFx0Ly8gYGZhbHNlYCBvdGhlcndpc2UgaW4gb3JkZXIgdG8gZGlzcGxheSBuZXcgdGlsZXMgX2R1cmluZ18gcGFubmluZywgc2luY2UgaXQgaXMgZWFzeSB0byBwYW4gb3V0c2lkZSB0aGVcbiAgXHRcdC8vIFtga2VlcEJ1ZmZlcmBdKCNncmlkbGF5ZXIta2VlcGJ1ZmZlcikgb3B0aW9uIGluIGRlc2t0b3AgYnJvd3NlcnMuXG4gIFx0XHR1cGRhdGVXaGVuSWRsZTogQnJvd3Nlci5tb2JpbGUsXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlblpvb21pbmc6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBhIHNtb290aCB6b29tIGFuaW1hdGlvbiAoZHVyaW5nIGEgW3RvdWNoIHpvb21dKCNtYXAtdG91Y2h6b29tKSBvciBhIFtgZmx5VG8oKWBdKCNtYXAtZmx5dG8pKSB3aWxsIHVwZGF0ZSBncmlkIGxheWVycyBldmVyeSBpbnRlZ2VyIHpvb20gbGV2ZWwuIFNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB3aWxsIHVwZGF0ZSB0aGUgZ3JpZCBsYXllciBvbmx5IHdoZW4gdGhlIHNtb290aCBhbmltYXRpb24gZW5kcy5cbiAgXHRcdHVwZGF0ZVdoZW5ab29taW5nOiB0cnVlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHVwZGF0ZUludGVydmFsOiBOdW1iZXIgPSAyMDBcbiAgXHRcdC8vIFRpbGVzIHdpbGwgbm90IHVwZGF0ZSBtb3JlIHRoYW4gb25jZSBldmVyeSBgdXBkYXRlSW50ZXJ2YWxgIG1pbGxpc2Vjb25kcyB3aGVuIHBhbm5pbmcuXG4gIFx0XHR1cGRhdGVJbnRlcnZhbDogMjAwLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHpJbmRleDogTnVtYmVyID0gMVxuICBcdFx0Ly8gVGhlIGV4cGxpY2l0IHpJbmRleCBvZiB0aGUgdGlsZSBsYXllci5cbiAgXHRcdHpJbmRleDogMSxcblxuICBcdFx0Ly8gQG9wdGlvbiBib3VuZHM6IExhdExuZ0JvdW5kcyA9IHVuZGVmaW5lZFxuICBcdFx0Ly8gSWYgc2V0LCB0aWxlcyB3aWxsIG9ubHkgYmUgbG9hZGVkIGluc2lkZSB0aGUgc2V0IGBMYXRMbmdCb3VuZHNgLlxuICBcdFx0Ym91bmRzOiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG1pblpvb206IE51bWJlciA9IDBcbiAgXHRcdC8vIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgZG93biB0byB3aGljaCB0aGlzIGxheWVyIHdpbGwgYmUgZGlzcGxheWVkIChpbmNsdXNpdmUpLlxuICBcdFx0bWluWm9vbTogMCxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhab29tOiBOdW1iZXIgPSB1bmRlZmluZWRcbiAgXHRcdC8vIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdXAgdG8gd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIGRpc3BsYXllZCAoaW5jbHVzaXZlKS5cbiAgXHRcdG1heFpvb206IHVuZGVmaW5lZCxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhOYXRpdmVab29tOiBOdW1iZXIgPSB1bmRlZmluZWRcbiAgXHRcdC8vIE1heGltdW0gem9vbSBudW1iZXIgdGhlIHRpbGUgc291cmNlIGhhcyBhdmFpbGFibGUuIElmIGl0IGlzIHNwZWNpZmllZCxcbiAgXHRcdC8vIHRoZSB0aWxlcyBvbiBhbGwgem9vbSBsZXZlbHMgaGlnaGVyIHRoYW4gYG1heE5hdGl2ZVpvb21gIHdpbGwgYmUgbG9hZGVkXG4gIFx0XHQvLyBmcm9tIGBtYXhOYXRpdmVab29tYCBsZXZlbCBhbmQgYXV0by1zY2FsZWQuXG4gIFx0XHRtYXhOYXRpdmVab29tOiB1bmRlZmluZWQsXG5cbiAgXHRcdC8vIEBvcHRpb24gbWluTmF0aXZlWm9vbTogTnVtYmVyID0gdW5kZWZpbmVkXG4gIFx0XHQvLyBNaW5pbXVtIHpvb20gbnVtYmVyIHRoZSB0aWxlIHNvdXJjZSBoYXMgYXZhaWxhYmxlLiBJZiBpdCBpcyBzcGVjaWZpZWQsXG4gIFx0XHQvLyB0aGUgdGlsZXMgb24gYWxsIHpvb20gbGV2ZWxzIGxvd2VyIHRoYW4gYG1pbk5hdGl2ZVpvb21gIHdpbGwgYmUgbG9hZGVkXG4gIFx0XHQvLyBmcm9tIGBtaW5OYXRpdmVab29tYCBsZXZlbCBhbmQgYXV0by1zY2FsZWQuXG4gIFx0XHRtaW5OYXRpdmVab29tOiB1bmRlZmluZWQsXG5cbiAgXHRcdC8vIEBvcHRpb24gbm9XcmFwOiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIGxheWVyIGlzIHdyYXBwZWQgYXJvdW5kIHRoZSBhbnRpbWVyaWRpYW4uIElmIGB0cnVlYCwgdGhlXG4gIFx0XHQvLyBHcmlkTGF5ZXIgd2lsbCBvbmx5IGJlIGRpc3BsYXllZCBvbmNlIGF0IGxvdyB6b29tIGxldmVscy4gSGFzIG5vXG4gIFx0XHQvLyBlZmZlY3Qgd2hlbiB0aGUgW21hcCBDUlNdKCNtYXAtY3JzKSBkb2Vzbid0IHdyYXAgYXJvdW5kLiBDYW4gYmUgdXNlZFxuICBcdFx0Ly8gaW4gY29tYmluYXRpb24gd2l0aCBbYGJvdW5kc2BdKCNncmlkbGF5ZXItYm91bmRzKSB0byBwcmV2ZW50IHJlcXVlc3RpbmdcbiAgXHRcdC8vIHRpbGVzIG91dHNpZGUgdGhlIENSUyBsaW1pdHMuXG4gIFx0XHRub1dyYXA6IGZhbHNlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICd0aWxlUGFuZSdcbiAgXHRcdC8vIGBNYXAgcGFuZWAgd2hlcmUgdGhlIGdyaWQgbGF5ZXIgd2lsbCBiZSBhZGRlZC5cbiAgXHRcdHBhbmU6ICd0aWxlUGFuZScsXG5cbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xuICBcdFx0Ly8gQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIHRpbGUgbGF5ZXIuIEVtcHR5IGJ5IGRlZmF1bHQuXG4gIFx0XHRjbGFzc05hbWU6ICcnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGtlZXBCdWZmZXI6IE51bWJlciA9IDJcbiAgXHRcdC8vIFdoZW4gcGFubmluZyB0aGUgbWFwLCBrZWVwIHRoaXMgbWFueSByb3dzIGFuZCBjb2x1bW5zIG9mIHRpbGVzIGJlZm9yZSB1bmxvYWRpbmcgdGhlbS5cbiAgXHRcdGtlZXBCdWZmZXI6IDJcbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9pbml0Q29udGFpbmVyKCk7XG5cbiAgXHRcdHRoaXMuX2xldmVscyA9IHt9O1xuICBcdFx0dGhpcy5fdGlsZXMgPSB7fTtcblxuICBcdFx0dGhpcy5fcmVzZXRWaWV3KCk7IC8vIGltcGxpY2l0IF91cGRhdGUoKSBjYWxsXG4gIFx0fSxcblxuICBcdGJlZm9yZUFkZDogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0bWFwLl9hZGRab29tTGltaXQodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHR0aGlzLl9yZW1vdmVBbGxUaWxlcygpO1xuICBcdFx0cmVtb3ZlKHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRtYXAuX3JlbW92ZVpvb21MaW1pdCh0aGlzKTtcbiAgXHRcdHRoaXMuX2NvbnRhaW5lciA9IG51bGw7XG4gIFx0XHR0aGlzLl90aWxlWm9vbSA9IHVuZGVmaW5lZDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvRnJvbnQ6IHRoaXNcbiAgXHQvLyBCcmluZ3MgdGhlIHRpbGUgbGF5ZXIgdG8gdGhlIHRvcCBvZiBhbGwgdGlsZSBsYXllcnMuXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRvRnJvbnQodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdFx0dGhpcy5fc2V0QXV0b1pJbmRleChNYXRoLm1heCk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjazogdGhpc1xuICBcdC8vIEJyaW5ncyB0aGUgdGlsZSBsYXllciB0byB0aGUgYm90dG9tIG9mIGFsbCB0aWxlIGxheWVycy5cbiAgXHRicmluZ1RvQmFjazogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX21hcCkge1xuICBcdFx0XHR0b0JhY2sodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdFx0dGhpcy5fc2V0QXV0b1pJbmRleChNYXRoLm1pbik7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250YWluZXI6IEhUTUxFbGVtZW50XG4gIFx0Ly8gUmV0dXJucyB0aGUgSFRNTCBlbGVtZW50IHRoYXQgY29udGFpbnMgdGhlIHRpbGVzIGZvciB0aGlzIGxheWVyLlxuICBcdGdldENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRPcGFjaXR5KG9wYWNpdHk6IE51bWJlcik6IHRoaXNcbiAgXHQvLyBDaGFuZ2VzIHRoZSBbb3BhY2l0eV0oI2dyaWRsYXllci1vcGFjaXR5KSBvZiB0aGUgZ3JpZCBsYXllci5cbiAgXHRzZXRPcGFjaXR5OiBmdW5jdGlvbiAob3BhY2l0eSkge1xuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xuICBcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0WkluZGV4KHpJbmRleDogTnVtYmVyKTogdGhpc1xuICBcdC8vIENoYW5nZXMgdGhlIFt6SW5kZXhdKCNncmlkbGF5ZXItemluZGV4KSBvZiB0aGUgZ3JpZCBsYXllci5cbiAgXHRzZXRaSW5kZXg6IGZ1bmN0aW9uICh6SW5kZXgpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXggPSB6SW5kZXg7XG4gIFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoKTtcblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgaXNMb2FkaW5nOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgYW55IHRpbGUgaW4gdGhlIGdyaWQgbGF5ZXIgaGFzIG5vdCBmaW5pc2hlZCBsb2FkaW5nLlxuICBcdGlzTG9hZGluZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2xvYWRpbmc7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgcmVkcmF3OiB0aGlzXG4gIFx0Ly8gQ2F1c2VzIHRoZSBsYXllciB0byBjbGVhciBhbGwgdGhlIHRpbGVzIGFuZCByZXF1ZXN0IHRoZW0gYWdhaW4uXG4gIFx0cmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZUFsbFRpbGVzKCk7XG4gIFx0XHRcdHZhciB0aWxlWm9vbSA9IHRoaXMuX2NsYW1wWm9vbSh0aGlzLl9tYXAuZ2V0Wm9vbSgpKTtcbiAgXHRcdFx0aWYgKHRpbGVab29tICE9PSB0aGlzLl90aWxlWm9vbSkge1xuICBcdFx0XHRcdHRoaXMuX3RpbGVab29tID0gdGlsZVpvb207XG4gIFx0XHRcdFx0dGhpcy5fdXBkYXRlTGV2ZWxzKCk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0dGhpcy5fdXBkYXRlKCk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgZXZlbnRzID0ge1xuICBcdFx0XHR2aWV3cHJlcmVzZXQ6IHRoaXMuX2ludmFsaWRhdGVBbGwsXG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXRWaWV3LFxuICBcdFx0XHR6b29tOiB0aGlzLl9yZXNldFZpZXcsXG4gIFx0XHRcdG1vdmVlbmQ6IHRoaXMuX29uTW92ZUVuZFxuICBcdFx0fTtcblxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMudXBkYXRlV2hlbklkbGUpIHtcbiAgXHRcdFx0Ly8gdXBkYXRlIHRpbGVzIG9uIG1vdmUsIGJ1dCBub3QgbW9yZSBvZnRlbiB0aGFuIG9uY2UgcGVyIGdpdmVuIGludGVydmFsXG4gIFx0XHRcdGlmICghdGhpcy5fb25Nb3ZlKSB7XG4gIFx0XHRcdFx0dGhpcy5fb25Nb3ZlID0gdGhyb3R0bGUodGhpcy5fb25Nb3ZlRW5kLCB0aGlzLm9wdGlvbnMudXBkYXRlSW50ZXJ2YWwsIHRoaXMpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0ZXZlbnRzLm1vdmUgPSB0aGlzLl9vbk1vdmU7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcbiAgXHRcdFx0ZXZlbnRzLnpvb21hbmltID0gdGhpcy5fYW5pbWF0ZVpvb207XG4gIFx0XHR9XG5cbiAgXHRcdHJldHVybiBldmVudHM7XG4gIFx0fSxcblxuICBcdC8vIEBzZWN0aW9uIEV4dGVuc2lvbiBtZXRob2RzXG4gIFx0Ly8gTGF5ZXJzIGV4dGVuZGluZyBgR3JpZExheWVyYCBzaGFsbCByZWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZC5cbiAgXHQvLyBAbWV0aG9kIGNyZWF0ZVRpbGUoY29vcmRzOiBPYmplY3QsIGRvbmU/OiBGdW5jdGlvbik6IEhUTUxFbGVtZW50XG4gIFx0Ly8gQ2FsbGVkIG9ubHkgaW50ZXJuYWxseSwgbXVzdCBiZSBvdmVycmlkZGVuIGJ5IGNsYXNzZXMgZXh0ZW5kaW5nIGBHcmlkTGF5ZXJgLlxuICBcdC8vIFJldHVybnMgdGhlIGBIVE1MRWxlbWVudGAgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gYGNvb3Jkc2AuIElmIHRoZSBgZG9uZWAgY2FsbGJhY2tcbiAgXHQvLyBpcyBzcGVjaWZpZWQsIGl0IG11c3QgYmUgY2FsbGVkIHdoZW4gdGhlIHRpbGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcgYW5kIGRyYXdpbmcuXG4gIFx0Y3JlYXRlVGlsZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICBcdH0sXG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBtZXRob2QgZ2V0VGlsZVNpemU6IFBvaW50XG4gIFx0Ly8gTm9ybWFsaXplcyB0aGUgW3RpbGVTaXplIG9wdGlvbl0oI2dyaWRsYXllci10aWxlc2l6ZSkgaW50byBhIHBvaW50LiBVc2VkIGJ5IHRoZSBgY3JlYXRlVGlsZSgpYCBtZXRob2QuXG4gIFx0Z2V0VGlsZVNpemU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBzID0gdGhpcy5vcHRpb25zLnRpbGVTaXplO1xuICBcdFx0cmV0dXJuIHMgaW5zdGFuY2VvZiBQb2ludCA/IHMgOiBuZXcgUG9pbnQocywgcyk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVaSW5kZXg6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9jb250YWluZXIgJiYgdGhpcy5vcHRpb25zLnpJbmRleCAhPT0gdW5kZWZpbmVkICYmIHRoaXMub3B0aW9ucy56SW5kZXggIT09IG51bGwpIHtcbiAgXHRcdFx0dGhpcy5fY29udGFpbmVyLnN0eWxlLnpJbmRleCA9IHRoaXMub3B0aW9ucy56SW5kZXg7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9zZXRBdXRvWkluZGV4OiBmdW5jdGlvbiAoY29tcGFyZSkge1xuICBcdFx0Ly8gZ28gdGhyb3VnaCBhbGwgb3RoZXIgbGF5ZXJzIG9mIHRoZSBzYW1lIHBhbmUsIHNldCB6SW5kZXggdG8gbWF4ICsgMSAoZnJvbnQpIG9yIG1pbiAtIDEgKGJhY2spXG5cbiAgXHRcdHZhciBsYXllcnMgPSB0aGlzLmdldFBhbmUoKS5jaGlsZHJlbixcbiAgXHRcdCAgICBlZGdlWkluZGV4ID0gLWNvbXBhcmUoLUluZmluaXR5LCBJbmZpbml0eSk7IC8vIC1JbmZpbml0eSBmb3IgbWF4LCBJbmZpbml0eSBmb3IgbWluXG5cbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXllcnMubGVuZ3RoLCB6SW5kZXg7IGkgPCBsZW47IGkrKykge1xuXG4gIFx0XHRcdHpJbmRleCA9IGxheWVyc1tpXS5zdHlsZS56SW5kZXg7XG5cbiAgXHRcdFx0aWYgKGxheWVyc1tpXSAhPT0gdGhpcy5fY29udGFpbmVyICYmIHpJbmRleCkge1xuICBcdFx0XHRcdGVkZ2VaSW5kZXggPSBjb21wYXJlKGVkZ2VaSW5kZXgsICt6SW5kZXgpO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChpc0Zpbml0ZShlZGdlWkluZGV4KSkge1xuICBcdFx0XHR0aGlzLm9wdGlvbnMuekluZGV4ID0gZWRnZVpJbmRleCArIGNvbXBhcmUoLTEsIDEpO1xuICBcdFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7IHJldHVybjsgfVxuXG4gIFx0XHQvLyBJRSBkb2Vzbid0IGluaGVyaXQgZmlsdGVyIG9wYWNpdHkgcHJvcGVybHksIHNvIHdlJ3JlIGZvcmNlZCB0byBzZXQgaXQgb24gdGlsZXNcbiAgXHRcdGlmIChCcm93c2VyLmllbHQ5KSB7IHJldHVybjsgfVxuXG4gIFx0XHRzZXRPcGFjaXR5KHRoaXMuX2NvbnRhaW5lciwgdGhpcy5vcHRpb25zLm9wYWNpdHkpO1xuXG4gIFx0XHR2YXIgbm93ID0gK25ldyBEYXRlKCksXG4gIFx0XHQgICAgbmV4dEZyYW1lID0gZmFsc2UsXG4gIFx0XHQgICAgd2lsbFBydW5lID0gZmFsc2U7XG5cbiAgXHRcdGZvciAodmFyIGtleSBpbiB0aGlzLl90aWxlcykge1xuICBcdFx0XHR2YXIgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRcdGlmICghdGlsZS5jdXJyZW50IHx8ICF0aWxlLmxvYWRlZCkgeyBjb250aW51ZTsgfVxuXG4gIFx0XHRcdHZhciBmYWRlID0gTWF0aC5taW4oMSwgKG5vdyAtIHRpbGUubG9hZGVkKSAvIDIwMCk7XG5cbiAgXHRcdFx0c2V0T3BhY2l0eSh0aWxlLmVsLCBmYWRlKTtcbiAgXHRcdFx0aWYgKGZhZGUgPCAxKSB7XG4gIFx0XHRcdFx0bmV4dEZyYW1lID0gdHJ1ZTtcbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRpZiAodGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0XHRcdHdpbGxQcnVuZSA9IHRydWU7XG4gIFx0XHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRcdHRoaXMuX29uT3BhcXVlVGlsZSh0aWxlKTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdFx0dGlsZS5hY3RpdmUgPSB0cnVlO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh3aWxsUHJ1bmUgJiYgIXRoaXMuX25vUHJ1bmUpIHsgdGhpcy5fcHJ1bmVUaWxlcygpOyB9XG5cbiAgXHRcdGlmIChuZXh0RnJhbWUpIHtcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZhZGVGcmFtZSk7XG4gIFx0XHRcdHRoaXMuX2ZhZGVGcmFtZSA9IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fdXBkYXRlT3BhY2l0eSwgdGhpcyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbk9wYXF1ZVRpbGU6IGZhbHNlRm4sXG5cbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcikgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsICdsZWFmbGV0LWxheWVyICcgKyAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSB8fCAnJykpO1xuICBcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMub3BhY2l0eSA8IDEpIHtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlTGV2ZWxzOiBmdW5jdGlvbiAoKSB7XG5cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fdGlsZVpvb20sXG4gIFx0XHQgICAgbWF4Wm9vbSA9IHRoaXMub3B0aW9ucy5tYXhab29tO1xuXG4gIFx0XHRpZiAoem9vbSA9PT0gdW5kZWZpbmVkKSB7IHJldHVybiB1bmRlZmluZWQ7IH1cblxuICBcdFx0Zm9yICh2YXIgeiBpbiB0aGlzLl9sZXZlbHMpIHtcbiAgXHRcdFx0eiA9IE51bWJlcih6KTtcbiAgXHRcdFx0aWYgKHRoaXMuX2xldmVsc1t6XS5lbC5jaGlsZHJlbi5sZW5ndGggfHwgeiA9PT0gem9vbSkge1xuICBcdFx0XHRcdHRoaXMuX2xldmVsc1t6XS5lbC5zdHlsZS56SW5kZXggPSBtYXhab29tIC0gTWF0aC5hYnMoem9vbSAtIHopO1xuICBcdFx0XHRcdHRoaXMuX29uVXBkYXRlTGV2ZWwoeik7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cmVtb3ZlKHRoaXMuX2xldmVsc1t6XS5lbCk7XG4gIFx0XHRcdFx0dGhpcy5fcmVtb3ZlVGlsZXNBdFpvb20oeik7XG4gIFx0XHRcdFx0dGhpcy5fb25SZW1vdmVMZXZlbCh6KTtcbiAgXHRcdFx0XHRkZWxldGUgdGhpcy5fbGV2ZWxzW3pdO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBsZXZlbCA9IHRoaXMuX2xldmVsc1t6b29tXSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXA7XG5cbiAgXHRcdGlmICghbGV2ZWwpIHtcbiAgXHRcdFx0bGV2ZWwgPSB0aGlzLl9sZXZlbHNbem9vbV0gPSB7fTtcblxuICBcdFx0XHRsZXZlbC5lbCA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC10aWxlLWNvbnRhaW5lciBsZWFmbGV0LXpvb20tYW5pbWF0ZWQnLCB0aGlzLl9jb250YWluZXIpO1xuICBcdFx0XHRsZXZlbC5lbC5zdHlsZS56SW5kZXggPSBtYXhab29tO1xuXG4gIFx0XHRcdGxldmVsLm9yaWdpbiA9IG1hcC5wcm9qZWN0KG1hcC51bnByb2plY3QobWFwLmdldFBpeGVsT3JpZ2luKCkpLCB6b29tKS5yb3VuZCgpO1xuICBcdFx0XHRsZXZlbC56b29tID0gem9vbTtcblxuICBcdFx0XHR0aGlzLl9zZXRab29tVHJhbnNmb3JtKGxldmVsLCBtYXAuZ2V0Q2VudGVyKCksIG1hcC5nZXRab29tKCkpO1xuXG4gIFx0XHRcdC8vIGZvcmNlIHRoZSBicm93c2VyIHRvIGNvbnNpZGVyIHRoZSBuZXdseSBhZGRlZCBlbGVtZW50IGZvciB0cmFuc2l0aW9uXG4gIFx0XHRcdGZhbHNlRm4obGV2ZWwuZWwub2Zmc2V0V2lkdGgpO1xuXG4gIFx0XHRcdHRoaXMuX29uQ3JlYXRlTGV2ZWwobGV2ZWwpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9sZXZlbCA9IGxldmVsO1xuXG4gIFx0XHRyZXR1cm4gbGV2ZWw7XG4gIFx0fSxcblxuICBcdF9vblVwZGF0ZUxldmVsOiBmYWxzZUZuLFxuXG4gIFx0X29uUmVtb3ZlTGV2ZWw6IGZhbHNlRm4sXG5cbiAgXHRfb25DcmVhdGVMZXZlbDogZmFsc2VGbixcblxuICBcdF9wcnVuZVRpbGVzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBrZXksIHRpbGU7XG5cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fbWFwLmdldFpvb20oKTtcbiAgXHRcdGlmICh6b29tID4gdGhpcy5vcHRpb25zLm1heFpvb20gfHxcbiAgXHRcdFx0em9vbSA8IHRoaXMub3B0aW9ucy5taW5ab29tKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZUFsbFRpbGVzKCk7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0Zm9yIChrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRcdHRpbGUucmV0YWluID0gdGlsZS5jdXJyZW50O1xuICBcdFx0fVxuXG4gIFx0XHRmb3IgKGtleSBpbiB0aGlzLl90aWxlcykge1xuICBcdFx0XHR0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcbiAgXHRcdFx0aWYgKHRpbGUuY3VycmVudCAmJiAhdGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0XHR2YXIgY29vcmRzID0gdGlsZS5jb29yZHM7XG4gIFx0XHRcdFx0aWYgKCF0aGlzLl9yZXRhaW5QYXJlbnQoY29vcmRzLngsIGNvb3Jkcy55LCBjb29yZHMueiwgY29vcmRzLnogLSA1KSkge1xuICBcdFx0XHRcdFx0dGhpcy5fcmV0YWluQ2hpbGRyZW4oY29vcmRzLngsIGNvb3Jkcy55LCBjb29yZHMueiwgY29vcmRzLnogKyAyKTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0Zm9yIChrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0aWYgKCF0aGlzLl90aWxlc1trZXldLnJldGFpbikge1xuICBcdFx0XHRcdHRoaXMuX3JlbW92ZVRpbGUoa2V5KTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVtb3ZlVGlsZXNBdFpvb206IGZ1bmN0aW9uICh6b29tKSB7XG4gIFx0XHRmb3IgKHZhciBrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0aWYgKHRoaXMuX3RpbGVzW2tleV0uY29vcmRzLnogIT09IHpvb20pIHtcbiAgXHRcdFx0XHRjb250aW51ZTtcbiAgXHRcdFx0fVxuICBcdFx0XHR0aGlzLl9yZW1vdmVUaWxlKGtleSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZW1vdmVBbGxUaWxlczogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIga2V5IGluIHRoaXMuX3RpbGVzKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZVRpbGUoa2V5KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2ludmFsaWRhdGVBbGw6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGZvciAodmFyIHogaW4gdGhpcy5fbGV2ZWxzKSB7XG4gIFx0XHRcdHJlbW92ZSh0aGlzLl9sZXZlbHNbel0uZWwpO1xuICBcdFx0XHR0aGlzLl9vblJlbW92ZUxldmVsKE51bWJlcih6KSk7XG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl9sZXZlbHNbel07XG4gIFx0XHR9XG4gIFx0XHR0aGlzLl9yZW1vdmVBbGxUaWxlcygpO1xuXG4gIFx0XHR0aGlzLl90aWxlWm9vbSA9IHVuZGVmaW5lZDtcbiAgXHR9LFxuXG4gIFx0X3JldGFpblBhcmVudDogZnVuY3Rpb24gKHgsIHksIHosIG1pblpvb20pIHtcbiAgXHRcdHZhciB4MiA9IE1hdGguZmxvb3IoeCAvIDIpLFxuICBcdFx0ICAgIHkyID0gTWF0aC5mbG9vcih5IC8gMiksXG4gIFx0XHQgICAgejIgPSB6IC0gMSxcbiAgXHRcdCAgICBjb29yZHMyID0gbmV3IFBvaW50KCt4MiwgK3kyKTtcbiAgXHRcdGNvb3JkczIueiA9ICt6MjtcblxuICBcdFx0dmFyIGtleSA9IHRoaXMuX3RpbGVDb29yZHNUb0tleShjb29yZHMyKSxcbiAgXHRcdCAgICB0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcblxuICBcdFx0aWYgKHRpbGUgJiYgdGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0dGlsZS5yZXRhaW4gPSB0cnVlO1xuICBcdFx0XHRyZXR1cm4gdHJ1ZTtcblxuICBcdFx0fSBlbHNlIGlmICh0aWxlICYmIHRpbGUubG9hZGVkKSB7XG4gIFx0XHRcdHRpbGUucmV0YWluID0gdHJ1ZTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHoyID4gbWluWm9vbSkge1xuICBcdFx0XHRyZXR1cm4gdGhpcy5fcmV0YWluUGFyZW50KHgyLCB5MiwgejIsIG1pblpvb20pO1xuICBcdFx0fVxuXG4gIFx0XHRyZXR1cm4gZmFsc2U7XG4gIFx0fSxcblxuICBcdF9yZXRhaW5DaGlsZHJlbjogZnVuY3Rpb24gKHgsIHksIHosIG1heFpvb20pIHtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDIgKiB4OyBpIDwgMiAqIHggKyAyOyBpKyspIHtcbiAgXHRcdFx0Zm9yICh2YXIgaiA9IDIgKiB5OyBqIDwgMiAqIHkgKyAyOyBqKyspIHtcblxuICBcdFx0XHRcdHZhciBjb29yZHMgPSBuZXcgUG9pbnQoaSwgaik7XG4gIFx0XHRcdFx0Y29vcmRzLnogPSB6ICsgMTtcblxuICBcdFx0XHRcdHZhciBrZXkgPSB0aGlzLl90aWxlQ29vcmRzVG9LZXkoY29vcmRzKSxcbiAgXHRcdFx0XHQgICAgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG5cbiAgXHRcdFx0XHRpZiAodGlsZSAmJiB0aWxlLmFjdGl2ZSkge1xuICBcdFx0XHRcdFx0dGlsZS5yZXRhaW4gPSB0cnVlO1xuICBcdFx0XHRcdFx0Y29udGludWU7XG5cbiAgXHRcdFx0XHR9IGVsc2UgaWYgKHRpbGUgJiYgdGlsZS5sb2FkZWQpIHtcbiAgXHRcdFx0XHRcdHRpbGUucmV0YWluID0gdHJ1ZTtcbiAgXHRcdFx0XHR9XG5cbiAgXHRcdFx0XHRpZiAoeiArIDEgPCBtYXhab29tKSB7XG4gIFx0XHRcdFx0XHR0aGlzLl9yZXRhaW5DaGlsZHJlbihpLCBqLCB6ICsgMSwgbWF4Wm9vbSk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZXNldFZpZXc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgYW5pbWF0aW5nID0gZSAmJiAoZS5waW5jaCB8fCBlLmZseVRvKTtcbiAgXHRcdHRoaXMuX3NldFZpZXcodGhpcy5fbWFwLmdldENlbnRlcigpLCB0aGlzLl9tYXAuZ2V0Wm9vbSgpLCBhbmltYXRpbmcsIGFuaW1hdGluZyk7XG4gIFx0fSxcblxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHRoaXMuX3NldFZpZXcoZS5jZW50ZXIsIGUuem9vbSwgdHJ1ZSwgZS5ub1VwZGF0ZSk7XG4gIFx0fSxcblxuICBcdF9jbGFtcFpvb206IGZ1bmN0aW9uICh6b29tKSB7XG4gIFx0XHR2YXIgb3B0aW9ucyA9IHRoaXMub3B0aW9ucztcblxuICBcdFx0aWYgKHVuZGVmaW5lZCAhPT0gb3B0aW9ucy5taW5OYXRpdmVab29tICYmIHpvb20gPCBvcHRpb25zLm1pbk5hdGl2ZVpvb20pIHtcbiAgXHRcdFx0cmV0dXJuIG9wdGlvbnMubWluTmF0aXZlWm9vbTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHVuZGVmaW5lZCAhPT0gb3B0aW9ucy5tYXhOYXRpdmVab29tICYmIG9wdGlvbnMubWF4TmF0aXZlWm9vbSA8IHpvb20pIHtcbiAgXHRcdFx0cmV0dXJuIG9wdGlvbnMubWF4TmF0aXZlWm9vbTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHpvb207XG4gIFx0fSxcblxuICBcdF9zZXRWaWV3OiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBub1BydW5lLCBub1VwZGF0ZSkge1xuICBcdFx0dmFyIHRpbGVab29tID0gTWF0aC5yb3VuZCh6b29tKTtcbiAgXHRcdGlmICgodGhpcy5vcHRpb25zLm1heFpvb20gIT09IHVuZGVmaW5lZCAmJiB0aWxlWm9vbSA+IHRoaXMub3B0aW9ucy5tYXhab29tKSB8fFxuICBcdFx0ICAgICh0aGlzLm9wdGlvbnMubWluWm9vbSAhPT0gdW5kZWZpbmVkICYmIHRpbGVab29tIDwgdGhpcy5vcHRpb25zLm1pblpvb20pKSB7XG4gIFx0XHRcdHRpbGVab29tID0gdW5kZWZpbmVkO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGlsZVpvb20gPSB0aGlzLl9jbGFtcFpvb20odGlsZVpvb20pO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgdGlsZVpvb21DaGFuZ2VkID0gdGhpcy5vcHRpb25zLnVwZGF0ZVdoZW5ab29taW5nICYmICh0aWxlWm9vbSAhPT0gdGhpcy5fdGlsZVpvb20pO1xuXG4gIFx0XHRpZiAoIW5vVXBkYXRlIHx8IHRpbGVab29tQ2hhbmdlZCkge1xuXG4gIFx0XHRcdHRoaXMuX3RpbGVab29tID0gdGlsZVpvb207XG5cbiAgXHRcdFx0aWYgKHRoaXMuX2Fib3J0TG9hZGluZykge1xuICBcdFx0XHRcdHRoaXMuX2Fib3J0TG9hZGluZygpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0dGhpcy5fdXBkYXRlTGV2ZWxzKCk7XG4gIFx0XHRcdHRoaXMuX3Jlc2V0R3JpZCgpO1xuXG4gIFx0XHRcdGlmICh0aWxlWm9vbSAhPT0gdW5kZWZpbmVkKSB7XG4gIFx0XHRcdFx0dGhpcy5fdXBkYXRlKGNlbnRlcik7XG4gIFx0XHRcdH1cblxuICBcdFx0XHRpZiAoIW5vUHJ1bmUpIHtcbiAgXHRcdFx0XHR0aGlzLl9wcnVuZVRpbGVzKCk7XG4gIFx0XHRcdH1cblxuICBcdFx0XHQvLyBGbGFnIHRvIHByZXZlbnQgX3VwZGF0ZU9wYWNpdHkgZnJvbSBwcnVuaW5nIHRpbGVzIGR1cmluZ1xuICBcdFx0XHQvLyBhIHpvb20gYW5pbSBvciBhIHBpbmNoIGdlc3R1cmVcbiAgXHRcdFx0dGhpcy5fbm9QcnVuZSA9ICEhbm9QcnVuZTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fc2V0Wm9vbVRyYW5zZm9ybXMoY2VudGVyLCB6b29tKTtcbiAgXHR9LFxuXG4gIFx0X3NldFpvb21UcmFuc2Zvcm1zOiBmdW5jdGlvbiAoY2VudGVyLCB6b29tKSB7XG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2xldmVscykge1xuICBcdFx0XHR0aGlzLl9zZXRab29tVHJhbnNmb3JtKHRoaXMuX2xldmVsc1tpXSwgY2VudGVyLCB6b29tKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldFpvb21UcmFuc2Zvcm06IGZ1bmN0aW9uIChsZXZlbCwgY2VudGVyLCB6b29tKSB7XG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLl9tYXAuZ2V0Wm9vbVNjYWxlKHpvb20sIGxldmVsLnpvb20pLFxuICBcdFx0ICAgIHRyYW5zbGF0ZSA9IGxldmVsLm9yaWdpbi5tdWx0aXBseUJ5KHNjYWxlKVxuICBcdFx0ICAgICAgICAuc3VidHJhY3QodGhpcy5fbWFwLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pKS5yb3VuZCgpO1xuXG4gIFx0XHRpZiAoQnJvd3Nlci5hbnkzZCkge1xuICBcdFx0XHRzZXRUcmFuc2Zvcm0obGV2ZWwuZWwsIHRyYW5zbGF0ZSwgc2NhbGUpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0c2V0UG9zaXRpb24obGV2ZWwuZWwsIHRyYW5zbGF0ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZXNldEdyaWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgY3JzID0gbWFwLm9wdGlvbnMuY3JzLFxuICBcdFx0ICAgIHRpbGVTaXplID0gdGhpcy5fdGlsZVNpemUgPSB0aGlzLmdldFRpbGVTaXplKCksXG4gIFx0XHQgICAgdGlsZVpvb20gPSB0aGlzLl90aWxlWm9vbTtcblxuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX21hcC5nZXRQaXhlbFdvcmxkQm91bmRzKHRoaXMuX3RpbGVab29tKTtcbiAgXHRcdGlmIChib3VuZHMpIHtcbiAgXHRcdFx0dGhpcy5fZ2xvYmFsVGlsZVJhbmdlID0gdGhpcy5fcHhCb3VuZHNUb1RpbGVSYW5nZShib3VuZHMpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl93cmFwWCA9IGNycy53cmFwTG5nICYmICF0aGlzLm9wdGlvbnMubm9XcmFwICYmIFtcbiAgXHRcdFx0TWF0aC5mbG9vcihtYXAucHJvamVjdChbMCwgY3JzLndyYXBMbmdbMF1dLCB0aWxlWm9vbSkueCAvIHRpbGVTaXplLngpLFxuICBcdFx0XHRNYXRoLmNlaWwobWFwLnByb2plY3QoWzAsIGNycy53cmFwTG5nWzFdXSwgdGlsZVpvb20pLnggLyB0aWxlU2l6ZS55KVxuICBcdFx0XTtcbiAgXHRcdHRoaXMuX3dyYXBZID0gY3JzLndyYXBMYXQgJiYgIXRoaXMub3B0aW9ucy5ub1dyYXAgJiYgW1xuICBcdFx0XHRNYXRoLmZsb29yKG1hcC5wcm9qZWN0KFtjcnMud3JhcExhdFswXSwgMF0sIHRpbGVab29tKS55IC8gdGlsZVNpemUueCksXG4gIFx0XHRcdE1hdGguY2VpbChtYXAucHJvamVjdChbY3JzLndyYXBMYXRbMV0sIDBdLCB0aWxlWm9vbSkueSAvIHRpbGVTaXplLnkpXG4gIFx0XHRdO1xuICBcdH0sXG5cbiAgXHRfb25Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCB8fCB0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfZ2V0VGlsZWRQaXhlbEJvdW5kczogZnVuY3Rpb24gKGNlbnRlcikge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICBtYXBab29tID0gbWFwLl9hbmltYXRpbmdab29tID8gTWF0aC5tYXgobWFwLl9hbmltYXRlVG9ab29tLCBtYXAuZ2V0Wm9vbSgpKSA6IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgc2NhbGUgPSBtYXAuZ2V0Wm9vbVNjYWxlKG1hcFpvb20sIHRoaXMuX3RpbGVab29tKSxcbiAgXHRcdCAgICBwaXhlbENlbnRlciA9IG1hcC5wcm9qZWN0KGNlbnRlciwgdGhpcy5fdGlsZVpvb20pLmZsb29yKCksXG4gIFx0XHQgICAgaGFsZlNpemUgPSBtYXAuZ2V0U2l6ZSgpLmRpdmlkZUJ5KHNjYWxlICogMik7XG5cbiAgXHRcdHJldHVybiBuZXcgQm91bmRzKHBpeGVsQ2VudGVyLnN1YnRyYWN0KGhhbGZTaXplKSwgcGl4ZWxDZW50ZXIuYWRkKGhhbGZTaXplKSk7XG4gIFx0fSxcblxuICBcdC8vIFByaXZhdGUgbWV0aG9kIHRvIGxvYWQgdGlsZXMgaW4gdGhlIGdyaWQncyBhY3RpdmUgem9vbSBsZXZlbCBhY2NvcmRpbmcgdG8gbWFwIGJvdW5kc1xuICBcdF91cGRhdGU6IGZ1bmN0aW9uIChjZW50ZXIpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XG4gIFx0XHRpZiAoIW1hcCkgeyByZXR1cm47IH1cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fY2xhbXBab29tKG1hcC5nZXRab29tKCkpO1xuXG4gIFx0XHRpZiAoY2VudGVyID09PSB1bmRlZmluZWQpIHsgY2VudGVyID0gbWFwLmdldENlbnRlcigpOyB9XG4gIFx0XHRpZiAodGhpcy5fdGlsZVpvb20gPT09IHVuZGVmaW5lZCkgeyByZXR1cm47IH1cdC8vIGlmIG91dCBvZiBtaW56b29tL21heHpvb21cblxuICBcdFx0dmFyIHBpeGVsQm91bmRzID0gdGhpcy5fZ2V0VGlsZWRQaXhlbEJvdW5kcyhjZW50ZXIpLFxuICBcdFx0ICAgIHRpbGVSYW5nZSA9IHRoaXMuX3B4Qm91bmRzVG9UaWxlUmFuZ2UocGl4ZWxCb3VuZHMpLFxuICBcdFx0ICAgIHRpbGVDZW50ZXIgPSB0aWxlUmFuZ2UuZ2V0Q2VudGVyKCksXG4gIFx0XHQgICAgcXVldWUgPSBbXSxcbiAgXHRcdCAgICBtYXJnaW4gPSB0aGlzLm9wdGlvbnMua2VlcEJ1ZmZlcixcbiAgXHRcdCAgICBub1BydW5lUmFuZ2UgPSBuZXcgQm91bmRzKHRpbGVSYW5nZS5nZXRCb3R0b21MZWZ0KCkuc3VidHJhY3QoW21hcmdpbiwgLW1hcmdpbl0pLFxuICBcdFx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGlsZVJhbmdlLmdldFRvcFJpZ2h0KCkuYWRkKFttYXJnaW4sIC1tYXJnaW5dKSk7XG5cbiAgXHRcdC8vIFNhbml0eSBjaGVjazogcGFuaWMgaWYgdGhlIHRpbGUgcmFuZ2UgY29udGFpbnMgSW5maW5pdHkgc29tZXdoZXJlLlxuICBcdFx0aWYgKCEoaXNGaW5pdGUodGlsZVJhbmdlLm1pbi54KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1pbi55KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1heC54KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1heC55KSkpIHsgdGhyb3cgbmV3IEVycm9yKCdBdHRlbXB0ZWQgdG8gbG9hZCBhbiBpbmZpbml0ZSBudW1iZXIgb2YgdGlsZXMnKTsgfVxuXG4gIFx0XHRmb3IgKHZhciBrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0dmFyIGMgPSB0aGlzLl90aWxlc1trZXldLmNvb3JkcztcbiAgXHRcdFx0aWYgKGMueiAhPT0gdGhpcy5fdGlsZVpvb20gfHwgIW5vUHJ1bmVSYW5nZS5jb250YWlucyhuZXcgUG9pbnQoYy54LCBjLnkpKSkge1xuICBcdFx0XHRcdHRoaXMuX3RpbGVzW2tleV0uY3VycmVudCA9IGZhbHNlO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIF91cGRhdGUganVzdCBsb2FkcyBtb3JlIHRpbGVzLiBJZiB0aGUgdGlsZSB6b29tIGxldmVsIGRpZmZlcnMgdG9vIG11Y2hcbiAgXHRcdC8vIGZyb20gdGhlIG1hcCdzLCBsZXQgX3NldFZpZXcgcmVzZXQgbGV2ZWxzIGFuZCBwcnVuZSBvbGQgdGlsZXMuXG4gIFx0XHRpZiAoTWF0aC5hYnMoem9vbSAtIHRoaXMuX3RpbGVab29tKSA+IDEpIHsgdGhpcy5fc2V0VmlldyhjZW50ZXIsIHpvb20pOyByZXR1cm47IH1cblxuICBcdFx0Ly8gY3JlYXRlIGEgcXVldWUgb2YgY29vcmRpbmF0ZXMgdG8gbG9hZCB0aWxlcyBmcm9tXG4gIFx0XHRmb3IgKHZhciBqID0gdGlsZVJhbmdlLm1pbi55OyBqIDw9IHRpbGVSYW5nZS5tYXgueTsgaisrKSB7XG4gIFx0XHRcdGZvciAodmFyIGkgPSB0aWxlUmFuZ2UubWluLng7IGkgPD0gdGlsZVJhbmdlLm1heC54OyBpKyspIHtcbiAgXHRcdFx0XHR2YXIgY29vcmRzID0gbmV3IFBvaW50KGksIGopO1xuICBcdFx0XHRcdGNvb3Jkcy56ID0gdGhpcy5fdGlsZVpvb207XG5cbiAgXHRcdFx0XHRpZiAoIXRoaXMuX2lzVmFsaWRUaWxlKGNvb3JkcykpIHsgY29udGludWU7IH1cblxuICBcdFx0XHRcdHZhciB0aWxlID0gdGhpcy5fdGlsZXNbdGhpcy5fdGlsZUNvb3Jkc1RvS2V5KGNvb3JkcyldO1xuICBcdFx0XHRcdGlmICh0aWxlKSB7XG4gIFx0XHRcdFx0XHR0aWxlLmN1cnJlbnQgPSB0cnVlO1xuICBcdFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0XHRxdWV1ZS5wdXNoKGNvb3Jkcyk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIHNvcnQgdGlsZSBxdWV1ZSB0byBsb2FkIHRpbGVzIGluIG9yZGVyIG9mIHRoZWlyIGRpc3RhbmNlIHRvIGNlbnRlclxuICBcdFx0cXVldWUuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICBcdFx0XHRyZXR1cm4gYS5kaXN0YW5jZVRvKHRpbGVDZW50ZXIpIC0gYi5kaXN0YW5jZVRvKHRpbGVDZW50ZXIpO1xuICBcdFx0fSk7XG5cbiAgXHRcdGlmIChxdWV1ZS5sZW5ndGggIT09IDApIHtcbiAgXHRcdFx0Ly8gaWYgaXQncyB0aGUgZmlyc3QgYmF0Y2ggb2YgdGlsZXMgdG8gbG9hZFxuICBcdFx0XHRpZiAoIXRoaXMuX2xvYWRpbmcpIHtcbiAgXHRcdFx0XHR0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcbiAgXHRcdFx0XHQvLyBAZXZlbnQgbG9hZGluZzogRXZlbnRcbiAgXHRcdFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBncmlkIGxheWVyIHN0YXJ0cyBsb2FkaW5nIHRpbGVzLlxuICBcdFx0XHRcdHRoaXMuZmlyZSgnbG9hZGluZycpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0Ly8gY3JlYXRlIERPTSBmcmFnbWVudCB0byBhcHBlbmQgdGlsZXMgaW4gb25lIGJhdGNoXG4gIFx0XHRcdHZhciBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcblxuICBcdFx0XHRmb3IgKGkgPSAwOyBpIDwgcXVldWUubGVuZ3RoOyBpKyspIHtcbiAgXHRcdFx0XHR0aGlzLl9hZGRUaWxlKHF1ZXVlW2ldLCBmcmFnbWVudCk7XG4gIFx0XHRcdH1cblxuICBcdFx0XHR0aGlzLl9sZXZlbC5lbC5hcHBlbmRDaGlsZChmcmFnbWVudCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9pc1ZhbGlkVGlsZTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIGNycyA9IHRoaXMuX21hcC5vcHRpb25zLmNycztcblxuICBcdFx0aWYgKCFjcnMuaW5maW5pdGUpIHtcbiAgXHRcdFx0Ly8gZG9uJ3QgbG9hZCB0aWxlIGlmIGl0J3Mgb3V0IG9mIGJvdW5kcyBhbmQgbm90IHdyYXBwZWRcbiAgXHRcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX2dsb2JhbFRpbGVSYW5nZTtcbiAgXHRcdFx0aWYgKCghY3JzLndyYXBMbmcgJiYgKGNvb3Jkcy54IDwgYm91bmRzLm1pbi54IHx8IGNvb3Jkcy54ID4gYm91bmRzLm1heC54KSkgfHxcbiAgXHRcdFx0ICAgICghY3JzLndyYXBMYXQgJiYgKGNvb3Jkcy55IDwgYm91bmRzLm1pbi55IHx8IGNvb3Jkcy55ID4gYm91bmRzLm1heC55KSkpIHsgcmV0dXJuIGZhbHNlOyB9XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmJvdW5kcykgeyByZXR1cm4gdHJ1ZTsgfVxuXG4gIFx0XHQvLyBkb24ndCBsb2FkIHRpbGUgaWYgaXQgZG9lc24ndCBpbnRlcnNlY3QgdGhlIGJvdW5kcyBpbiBvcHRpb25zXG4gIFx0XHR2YXIgdGlsZUJvdW5kcyA9IHRoaXMuX3RpbGVDb29yZHNUb0JvdW5kcyhjb29yZHMpO1xuICBcdFx0cmV0dXJuIHRvTGF0TG5nQm91bmRzKHRoaXMub3B0aW9ucy5ib3VuZHMpLm92ZXJsYXBzKHRpbGVCb3VuZHMpO1xuICBcdH0sXG5cbiAgXHRfa2V5VG9Cb3VuZHM6IGZ1bmN0aW9uIChrZXkpIHtcbiAgXHRcdHJldHVybiB0aGlzLl90aWxlQ29vcmRzVG9Cb3VuZHModGhpcy5fa2V5VG9UaWxlQ29vcmRzKGtleSkpO1xuICBcdH0sXG5cbiAgXHRfdGlsZUNvb3Jkc1RvTndTZTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKSxcbiAgXHRcdCAgICBud1BvaW50ID0gY29vcmRzLnNjYWxlQnkodGlsZVNpemUpLFxuICBcdFx0ICAgIHNlUG9pbnQgPSBud1BvaW50LmFkZCh0aWxlU2l6ZSksXG4gIFx0XHQgICAgbncgPSBtYXAudW5wcm9qZWN0KG53UG9pbnQsIGNvb3Jkcy56KSxcbiAgXHRcdCAgICBzZSA9IG1hcC51bnByb2plY3Qoc2VQb2ludCwgY29vcmRzLnopO1xuICBcdFx0cmV0dXJuIFtudywgc2VdO1xuICBcdH0sXG5cbiAgXHQvLyBjb252ZXJ0cyB0aWxlIGNvb3JkaW5hdGVzIHRvIGl0cyBnZW9ncmFwaGljYWwgYm91bmRzXG4gIFx0X3RpbGVDb29yZHNUb0JvdW5kczogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIGJwID0gdGhpcy5fdGlsZUNvb3Jkc1RvTndTZShjb29yZHMpLFxuICBcdFx0ICAgIGJvdW5kcyA9IG5ldyBMYXRMbmdCb3VuZHMoYnBbMF0sIGJwWzFdKTtcblxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMubm9XcmFwKSB7XG4gIFx0XHRcdGJvdW5kcyA9IHRoaXMuX21hcC53cmFwTGF0TG5nQm91bmRzKGJvdW5kcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gYm91bmRzO1xuICBcdH0sXG4gIFx0Ly8gY29udmVydHMgdGlsZSBjb29yZGluYXRlcyB0byBrZXkgZm9yIHRoZSB0aWxlIGNhY2hlXG4gIFx0X3RpbGVDb29yZHNUb0tleTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0cmV0dXJuIGNvb3Jkcy54ICsgJzonICsgY29vcmRzLnkgKyAnOicgKyBjb29yZHMuejtcbiAgXHR9LFxuXG4gIFx0Ly8gY29udmVydHMgdGlsZSBjYWNoZSBrZXkgdG8gY29vcmRpbmF0ZXNcbiAgXHRfa2V5VG9UaWxlQ29vcmRzOiBmdW5jdGlvbiAoa2V5KSB7XG4gIFx0XHR2YXIgayA9IGtleS5zcGxpdCgnOicpLFxuICBcdFx0ICAgIGNvb3JkcyA9IG5ldyBQb2ludCgra1swXSwgK2tbMV0pO1xuICBcdFx0Y29vcmRzLnogPSAra1syXTtcbiAgXHRcdHJldHVybiBjb29yZHM7XG4gIFx0fSxcblxuICBcdF9yZW1vdmVUaWxlOiBmdW5jdGlvbiAoa2V5KSB7XG4gIFx0XHR2YXIgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRpZiAoIXRpbGUpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHJlbW92ZSh0aWxlLmVsKTtcblxuICBcdFx0ZGVsZXRlIHRoaXMuX3RpbGVzW2tleV07XG5cbiAgXHRcdC8vIEBldmVudCB0aWxldW5sb2FkOiBUaWxlRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gYSB0aWxlIGlzIHJlbW92ZWQgKGUuZy4gd2hlbiBhIHRpbGUgZ29lcyBvZmYgdGhlIHNjcmVlbikuXG4gIFx0XHR0aGlzLmZpcmUoJ3RpbGV1bmxvYWQnLCB7XG4gIFx0XHRcdHRpbGU6IHRpbGUuZWwsXG4gIFx0XHRcdGNvb3JkczogdGhpcy5fa2V5VG9UaWxlQ29vcmRzKGtleSlcbiAgXHRcdH0pO1xuICBcdH0sXG5cbiAgXHRfaW5pdFRpbGU6IGZ1bmN0aW9uICh0aWxlKSB7XG4gIFx0XHRhZGRDbGFzcyh0aWxlLCAnbGVhZmxldC10aWxlJyk7XG5cbiAgXHRcdHZhciB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgXHRcdHRpbGUuc3R5bGUud2lkdGggPSB0aWxlU2l6ZS54ICsgJ3B4JztcbiAgXHRcdHRpbGUuc3R5bGUuaGVpZ2h0ID0gdGlsZVNpemUueSArICdweCc7XG5cbiAgXHRcdHRpbGUub25zZWxlY3RzdGFydCA9IGZhbHNlRm47XG4gIFx0XHR0aWxlLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcblxuICBcdFx0Ly8gdXBkYXRlIG9wYWNpdHkgb24gdGlsZXMgaW4gSUU3LTggYmVjYXVzZSBvZiBmaWx0ZXIgaW5oZXJpdGFuY2UgcHJvYmxlbXNcbiAgXHRcdGlmIChCcm93c2VyLmllbHQ5ICYmIHRoaXMub3B0aW9ucy5vcGFjaXR5IDwgMSkge1xuICBcdFx0XHRzZXRPcGFjaXR5KHRpbGUsIHRoaXMub3B0aW9ucy5vcGFjaXR5KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2FkZFRpbGU6IGZ1bmN0aW9uIChjb29yZHMsIGNvbnRhaW5lcikge1xuICBcdFx0dmFyIHRpbGVQb3MgPSB0aGlzLl9nZXRUaWxlUG9zKGNvb3JkcyksXG4gIFx0XHQgICAga2V5ID0gdGhpcy5fdGlsZUNvb3Jkc1RvS2V5KGNvb3Jkcyk7XG5cbiAgXHRcdHZhciB0aWxlID0gdGhpcy5jcmVhdGVUaWxlKHRoaXMuX3dyYXBDb29yZHMoY29vcmRzKSwgYmluZCh0aGlzLl90aWxlUmVhZHksIHRoaXMsIGNvb3JkcykpO1xuXG4gIFx0XHR0aGlzLl9pbml0VGlsZSh0aWxlKTtcblxuICBcdFx0Ly8gaWYgY3JlYXRlVGlsZSBpcyBkZWZpbmVkIHdpdGggYSBzZWNvbmQgYXJndW1lbnQgKFwiZG9uZVwiIGNhbGxiYWNrKSxcbiAgXHRcdC8vIHdlIGtub3cgdGhhdCB0aWxlIGlzIGFzeW5jIGFuZCB3aWxsIGJlIHJlYWR5IGxhdGVyOyBvdGhlcndpc2VcbiAgXHRcdGlmICh0aGlzLmNyZWF0ZVRpbGUubGVuZ3RoIDwgMikge1xuICBcdFx0XHQvLyBtYXJrIHRpbGUgYXMgcmVhZHksIGJ1dCBkZWxheSBvbmUgZnJhbWUgZm9yIG9wYWNpdHkgYW5pbWF0aW9uIHRvIGhhcHBlblxuICBcdFx0XHRyZXF1ZXN0QW5pbUZyYW1lKGJpbmQodGhpcy5fdGlsZVJlYWR5LCB0aGlzLCBjb29yZHMsIG51bGwsIHRpbGUpKTtcbiAgXHRcdH1cblxuICBcdFx0c2V0UG9zaXRpb24odGlsZSwgdGlsZVBvcyk7XG5cbiAgXHRcdC8vIHNhdmUgdGlsZSBpbiBjYWNoZVxuICBcdFx0dGhpcy5fdGlsZXNba2V5XSA9IHtcbiAgXHRcdFx0ZWw6IHRpbGUsXG4gIFx0XHRcdGNvb3JkczogY29vcmRzLFxuICBcdFx0XHRjdXJyZW50OiB0cnVlXG4gIFx0XHR9O1xuXG4gIFx0XHRjb250YWluZXIuYXBwZW5kQ2hpbGQodGlsZSk7XG4gIFx0XHQvLyBAZXZlbnQgdGlsZWxvYWRzdGFydDogVGlsZUV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSBpcyByZXF1ZXN0ZWQgYW5kIHN0YXJ0cyBsb2FkaW5nLlxuICBcdFx0dGhpcy5maXJlKCd0aWxlbG9hZHN0YXJ0Jywge1xuICBcdFx0XHR0aWxlOiB0aWxlLFxuICBcdFx0XHRjb29yZHM6IGNvb3Jkc1xuICBcdFx0fSk7XG4gIFx0fSxcblxuICBcdF90aWxlUmVhZHk6IGZ1bmN0aW9uIChjb29yZHMsIGVyciwgdGlsZSkge1xuICBcdFx0aWYgKGVycikge1xuICBcdFx0XHQvLyBAZXZlbnQgdGlsZWVycm9yOiBUaWxlRXJyb3JFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIHRoZXJlIGlzIGFuIGVycm9yIGxvYWRpbmcgYSB0aWxlLlxuICBcdFx0XHR0aGlzLmZpcmUoJ3RpbGVlcnJvcicsIHtcbiAgXHRcdFx0XHRlcnJvcjogZXJyLFxuICBcdFx0XHRcdHRpbGU6IHRpbGUsXG4gIFx0XHRcdFx0Y29vcmRzOiBjb29yZHNcbiAgXHRcdFx0fSk7XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBrZXkgPSB0aGlzLl90aWxlQ29vcmRzVG9LZXkoY29vcmRzKTtcblxuICBcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRpZiAoIXRpbGUpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRpbGUubG9hZGVkID0gK25ldyBEYXRlKCk7XG4gIFx0XHRpZiAodGhpcy5fbWFwLl9mYWRlQW5pbWF0ZWQpIHtcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aWxlLmVsLCAwKTtcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZhZGVGcmFtZSk7XG4gIFx0XHRcdHRoaXMuX2ZhZGVGcmFtZSA9IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fdXBkYXRlT3BhY2l0eSwgdGhpcyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aWxlLmFjdGl2ZSA9IHRydWU7XG4gIFx0XHRcdHRoaXMuX3BydW5lVGlsZXMoKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKCFlcnIpIHtcbiAgXHRcdFx0YWRkQ2xhc3ModGlsZS5lbCwgJ2xlYWZsZXQtdGlsZS1sb2FkZWQnKTtcblxuICBcdFx0XHQvLyBAZXZlbnQgdGlsZWxvYWQ6IFRpbGVFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSBsb2Fkcy5cbiAgXHRcdFx0dGhpcy5maXJlKCd0aWxlbG9hZCcsIHtcbiAgXHRcdFx0XHR0aWxlOiB0aWxlLmVsLFxuICBcdFx0XHRcdGNvb3JkczogY29vcmRzXG4gIFx0XHRcdH0pO1xuICBcdFx0fVxuXG4gIFx0XHRpZiAodGhpcy5fbm9UaWxlc1RvTG9hZCgpKSB7XG4gIFx0XHRcdHRoaXMuX2xvYWRpbmcgPSBmYWxzZTtcbiAgXHRcdFx0Ly8gQGV2ZW50IGxvYWQ6IEV2ZW50XG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gdGhlIGdyaWQgbGF5ZXIgbG9hZGVkIGFsbCB2aXNpYmxlIHRpbGVzLlxuICBcdFx0XHR0aGlzLmZpcmUoJ2xvYWQnKTtcblxuICBcdFx0XHRpZiAoQnJvd3Nlci5pZWx0OSB8fCAhdGhpcy5fbWFwLl9mYWRlQW5pbWF0ZWQpIHtcbiAgXHRcdFx0XHRyZXF1ZXN0QW5pbUZyYW1lKHRoaXMuX3BydW5lVGlsZXMsIHRoaXMpO1xuICBcdFx0XHR9IGVsc2Uge1xuICBcdFx0XHRcdC8vIFdhaXQgYSBiaXQgbW9yZSB0aGFuIDAuMiBzZWNzICh0aGUgZHVyYXRpb24gb2YgdGhlIHRpbGUgZmFkZS1pbilcbiAgXHRcdFx0XHQvLyB0byB0cmlnZ2VyIGEgcHJ1bmluZy5cbiAgXHRcdFx0XHRzZXRUaW1lb3V0KGJpbmQodGhpcy5fcHJ1bmVUaWxlcywgdGhpcyksIDI1MCk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2dldFRpbGVQb3M6IGZ1bmN0aW9uIChjb29yZHMpIHtcbiAgXHRcdHJldHVybiBjb29yZHMuc2NhbGVCeSh0aGlzLmdldFRpbGVTaXplKCkpLnN1YnRyYWN0KHRoaXMuX2xldmVsLm9yaWdpbik7XG4gIFx0fSxcblxuICBcdF93cmFwQ29vcmRzOiBmdW5jdGlvbiAoY29vcmRzKSB7XG4gIFx0XHR2YXIgbmV3Q29vcmRzID0gbmV3IFBvaW50KFxuICBcdFx0XHR0aGlzLl93cmFwWCA/IHdyYXBOdW0oY29vcmRzLngsIHRoaXMuX3dyYXBYKSA6IGNvb3Jkcy54LFxuICBcdFx0XHR0aGlzLl93cmFwWSA/IHdyYXBOdW0oY29vcmRzLnksIHRoaXMuX3dyYXBZKSA6IGNvb3Jkcy55KTtcbiAgXHRcdG5ld0Nvb3Jkcy56ID0gY29vcmRzLno7XG4gIFx0XHRyZXR1cm4gbmV3Q29vcmRzO1xuICBcdH0sXG5cbiAgXHRfcHhCb3VuZHNUb1RpbGVSYW5nZTogZnVuY3Rpb24gKGJvdW5kcykge1xuICBcdFx0dmFyIHRpbGVTaXplID0gdGhpcy5nZXRUaWxlU2l6ZSgpO1xuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMoXG4gIFx0XHRcdGJvdW5kcy5taW4udW5zY2FsZUJ5KHRpbGVTaXplKS5mbG9vcigpLFxuICBcdFx0XHRib3VuZHMubWF4LnVuc2NhbGVCeSh0aWxlU2l6ZSkuY2VpbCgpLnN1YnRyYWN0KFsxLCAxXSkpO1xuICBcdH0sXG5cbiAgXHRfbm9UaWxlc1RvTG9hZDogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIga2V5IGluIHRoaXMuX3RpbGVzKSB7XG4gIFx0XHRcdGlmICghdGhpcy5fdGlsZXNba2V5XS5sb2FkZWQpIHsgcmV0dXJuIGZhbHNlOyB9XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdHJ1ZTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBmYWN0b3J5IEwuZ3JpZExheWVyKG9wdGlvbnM/OiBHcmlkTGF5ZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiBHcmlkTGF5ZXIgd2l0aCB0aGUgc3VwcGxpZWQgb3B0aW9ucy5cbiAgZnVuY3Rpb24gZ3JpZExheWVyKG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IEdyaWRMYXllcihvcHRpb25zKTtcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIFRpbGVMYXllclxyXG4gICAqIEBpbmhlcml0cyBHcmlkTGF5ZXJcclxuICAgKiBAYWthIEwuVGlsZUxheWVyXHJcbiAgICogVXNlZCB0byBsb2FkIGFuZCBkaXNwbGF5IHRpbGUgbGF5ZXJzIG9uIHRoZSBtYXAuIE5vdGUgdGhhdCBtb3N0IHRpbGUgc2VydmVycyByZXF1aXJlIGF0dHJpYnV0aW9uLCB3aGljaCB5b3UgY2FuIHNldCB1bmRlciBgTGF5ZXJgLiBFeHRlbmRzIGBHcmlkTGF5ZXJgLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmc/e2Zvb30nLCB7Zm9vOiAnYmFyJywgYXR0cmlidXRpb246ICcmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycyd9KS5hZGRUbyhtYXApO1xuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEBzZWN0aW9uIFVSTCB0ZW1wbGF0ZVxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBBIHN0cmluZyBvZiB0aGUgZm9sbG93aW5nIGZvcm06XHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKiAnaHR0cHM6Ly97c30uc29tZWRvbWFpbi5jb20vYmxhYmxhL3t6fS97eH0ve3l9e3J9LnBuZydcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIGB7c31gIG1lYW5zIG9uZSBvZiB0aGUgYXZhaWxhYmxlIHN1YmRvbWFpbnMgKHVzZWQgc2VxdWVudGlhbGx5IHRvIGhlbHAgd2l0aCBicm93c2VyIHBhcmFsbGVsIHJlcXVlc3RzIHBlciBkb21haW4gbGltaXRhdGlvbjsgc3ViZG9tYWluIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIG9wdGlvbnM7IGBhYCwgYGJgIG9yIGBjYCBieSBkZWZhdWx0LCBjYW4gYmUgb21pdHRlZCksIGB7en1gIOKAlCB6b29tIGxldmVsLCBge3h9YCBhbmQgYHt5fWAg4oCUIHRpbGUgY29vcmRpbmF0ZXMuIGB7cn1gIGNhbiBiZSB1c2VkIHRvIGFkZCBcIiZjb21tYXQ7MnhcIiB0byB0aGUgVVJMIHRvIGxvYWQgcmV0aW5hIHRpbGVzLlxyXG4gICAqXHJcbiAgICogWW91IGNhbiB1c2UgY3VzdG9tIGtleXMgaW4gdGhlIHRlbXBsYXRlLCB3aGljaCB3aWxsIGJlIFtldmFsdWF0ZWRdKCN1dGlsLXRlbXBsYXRlKSBmcm9tIFRpbGVMYXllciBvcHRpb25zLCBsaWtlIHRoaXM6XHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKiBMLnRpbGVMYXllcignaHR0cHM6Ly97c30uc29tZWRvbWFpbi5jb20ve2Zvb30ve3p9L3t4fS97eX0ucG5nJywge2ZvbzogJ2Jhcid9KTtcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIHZhciBUaWxlTGF5ZXIgPSBHcmlkTGF5ZXIuZXh0ZW5kKHtcclxuXHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBUaWxlTGF5ZXIgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIG1pblpvb206IE51bWJlciA9IDBcclxuICBcdFx0Ly8gVGhlIG1pbmltdW0gem9vbSBsZXZlbCBkb3duIHRvIHdoaWNoIHRoaXMgbGF5ZXIgd2lsbCBiZSBkaXNwbGF5ZWQgKGluY2x1c2l2ZSkuXHJcbiAgXHRcdG1pblpvb206IDAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIG1heFpvb206IE51bWJlciA9IDE4XHJcbiAgXHRcdC8vIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdXAgdG8gd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIGRpc3BsYXllZCAoaW5jbHVzaXZlKS5cclxuICBcdFx0bWF4Wm9vbTogMTgsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHN1YmRvbWFpbnM6IFN0cmluZ3xTdHJpbmdbXSA9ICdhYmMnXHJcbiAgXHRcdC8vIFN1YmRvbWFpbnMgb2YgdGhlIHRpbGUgc2VydmljZS4gQ2FuIGJlIHBhc3NlZCBpbiB0aGUgZm9ybSBvZiBvbmUgc3RyaW5nICh3aGVyZSBlYWNoIGxldHRlciBpcyBhIHN1YmRvbWFpbiBuYW1lKSBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxyXG4gIFx0XHRzdWJkb21haW5zOiAnYWJjJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gZXJyb3JUaWxlVXJsOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyBVUkwgdG8gdGhlIHRpbGUgaW1hZ2UgdG8gc2hvdyBpbiBwbGFjZSBvZiB0aGUgdGlsZSB0aGF0IGZhaWxlZCB0byBsb2FkLlxyXG4gIFx0XHRlcnJvclRpbGVVcmw6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tT2Zmc2V0OiBOdW1iZXIgPSAwXHJcbiAgXHRcdC8vIFRoZSB6b29tIG51bWJlciB1c2VkIGluIHRpbGUgVVJMcyB3aWxsIGJlIG9mZnNldCB3aXRoIHRoaXMgdmFsdWUuXHJcbiAgXHRcdHpvb21PZmZzZXQ6IDAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHRtczogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgaW52ZXJzZXMgWSBheGlzIG51bWJlcmluZyBmb3IgdGlsZXMgKHR1cm4gdGhpcyBvbiBmb3IgW1RNU10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVGlsZV9NYXBfU2VydmljZSkgc2VydmljZXMpLlxyXG4gIFx0XHR0bXM6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tUmV2ZXJzZTogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIHNldCB0byB0cnVlLCB0aGUgem9vbSBudW1iZXIgdXNlZCBpbiB0aWxlIFVSTHMgd2lsbCBiZSByZXZlcnNlZCAoYG1heFpvb20gLSB6b29tYCBpbnN0ZWFkIG9mIGB6b29tYClcclxuICBcdFx0em9vbVJldmVyc2U6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBkZXRlY3RSZXRpbmE6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBJZiBgdHJ1ZWAgYW5kIHVzZXIgaXMgb24gYSByZXRpbmEgZGlzcGxheSwgaXQgd2lsbCByZXF1ZXN0IGZvdXIgdGlsZXMgb2YgaGFsZiB0aGUgc3BlY2lmaWVkIHNpemUgYW5kIGEgYmlnZ2VyIHpvb20gbGV2ZWwgaW4gcGxhY2Ugb2Ygb25lIHRvIHV0aWxpemUgdGhlIGhpZ2ggcmVzb2x1dGlvbi5cclxuICBcdFx0ZGV0ZWN0UmV0aW5hOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY3Jvc3NPcmlnaW46IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHRpbGVzLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgYWxsIHRpbGVzIHdpbGwgaGF2ZSB0aGVpciBjcm9zc09yaWdpbiBhdHRyaWJ1dGUgc2V0IHRvIHRoZSBTdHJpbmcgcHJvdmlkZWQuIFRoaXMgaXMgbmVlZGVkIGlmIHlvdSB3YW50IHRvIGFjY2VzcyB0aWxlIHBpeGVsIGRhdGEuXHJcbiAgXHRcdC8vIFJlZmVyIHRvIFtDT1JTIFNldHRpbmdzXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0NPUlNfc2V0dGluZ3NfYXR0cmlidXRlcykgZm9yIHZhbGlkIFN0cmluZyB2YWx1ZXMuXHJcbiAgXHRcdGNyb3NzT3JpZ2luOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmVmZXJyZXJQb2xpY3k6IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgcmVmZXJyZXJQb2xpY3kgYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHRpbGVzLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgYWxsIHRpbGVzIHdpbGwgaGF2ZSB0aGVpciByZWZlcnJlclBvbGljeSBhdHRyaWJ1dGUgc2V0IHRvIHRoZSBTdHJpbmcgcHJvdmlkZWQuXHJcbiAgXHRcdC8vIFRoaXMgbWF5IGJlIG5lZWRlZCBpZiB5b3VyIG1hcCdzIHJlbmRlcmluZyBjb250ZXh0IGhhcyBhIHN0cmljdCBkZWZhdWx0IGJ1dCB5b3VyIHRpbGUgcHJvdmlkZXIgZXhwZWN0cyBhIHZhbGlkIHJlZmVycmVyXHJcbiAgXHRcdC8vIChlLmcuIHRvIHZhbGlkYXRlIGFuIEFQSSB0b2tlbikuXHJcbiAgXHRcdC8vIFJlZmVyIHRvIFtIVE1MSW1hZ2VFbGVtZW50LnJlZmVycmVyUG9saWN5XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvSFRNTEltYWdlRWxlbWVudC9yZWZlcnJlclBvbGljeSkgZm9yIHZhbGlkIFN0cmluZyB2YWx1ZXMuXHJcbiAgXHRcdHJlZmVycmVyUG9saWN5OiBmYWxzZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHRvcHRpb25zID0gc2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdC8vIGRldGVjdGluZyByZXRpbmEgZGlzcGxheXMsIGFkanVzdGluZyB0aWxlU2l6ZSBhbmQgem9vbSBsZXZlbHNcclxuICBcdFx0aWYgKG9wdGlvbnMuZGV0ZWN0UmV0aW5hICYmIEJyb3dzZXIucmV0aW5hICYmIG9wdGlvbnMubWF4Wm9vbSA+IDApIHtcclxuXHJcbiAgXHRcdFx0b3B0aW9ucy50aWxlU2l6ZSA9IE1hdGguZmxvb3Iob3B0aW9ucy50aWxlU2l6ZSAvIDIpO1xyXG5cclxuICBcdFx0XHRpZiAoIW9wdGlvbnMuem9vbVJldmVyc2UpIHtcclxuICBcdFx0XHRcdG9wdGlvbnMuem9vbU9mZnNldCsrO1xyXG4gIFx0XHRcdFx0b3B0aW9ucy5tYXhab29tID0gTWF0aC5tYXgob3B0aW9ucy5taW5ab29tLCBvcHRpb25zLm1heFpvb20gLSAxKTtcclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0b3B0aW9ucy56b29tT2Zmc2V0LS07XHJcbiAgXHRcdFx0XHRvcHRpb25zLm1pblpvb20gPSBNYXRoLm1pbihvcHRpb25zLm1heFpvb20sIG9wdGlvbnMubWluWm9vbSArIDEpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0b3B0aW9ucy5taW5ab29tID0gTWF0aC5tYXgoMCwgb3B0aW9ucy5taW5ab29tKTtcclxuICBcdFx0fSBlbHNlIGlmICghb3B0aW9ucy56b29tUmV2ZXJzZSkge1xyXG4gIFx0XHRcdC8vIG1ha2Ugc3VyZSBtYXhab29tIGlzIGd0ZSBtaW5ab29tXHJcbiAgXHRcdFx0b3B0aW9ucy5tYXhab29tID0gTWF0aC5tYXgob3B0aW9ucy5taW5ab29tLCBvcHRpb25zLm1heFpvb20pO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdC8vIG1ha2Ugc3VyZSBtaW5ab29tIGlzIGx0ZSBtYXhab29tXHJcbiAgXHRcdFx0b3B0aW9ucy5taW5ab29tID0gTWF0aC5taW4ob3B0aW9ucy5tYXhab29tLCBvcHRpb25zLm1pblpvb20pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodHlwZW9mIG9wdGlvbnMuc3ViZG9tYWlucyA9PT0gJ3N0cmluZycpIHtcclxuICBcdFx0XHRvcHRpb25zLnN1YmRvbWFpbnMgPSBvcHRpb25zLnN1YmRvbWFpbnMuc3BsaXQoJycpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLm9uKCd0aWxldW5sb2FkJywgdGhpcy5fb25UaWxlUmVtb3ZlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRVcmwodXJsOiBTdHJpbmcsIG5vUmVkcmF3PzogQm9vbGVhbik6IHRoaXNcclxuICBcdC8vIFVwZGF0ZXMgdGhlIGxheWVyJ3MgVVJMIHRlbXBsYXRlIGFuZCByZWRyYXdzIGl0ICh1bmxlc3MgYG5vUmVkcmF3YCBpcyBzZXQgdG8gYHRydWVgKS5cclxuICBcdC8vIElmIHRoZSBVUkwgZG9lcyBub3QgY2hhbmdlLCB0aGUgbGF5ZXIgd2lsbCBub3QgYmUgcmVkcmF3biB1bmxlc3NcclxuICBcdC8vIHRoZSBub1JlZHJhdyBwYXJhbWV0ZXIgaXMgc2V0IHRvIGZhbHNlLlxyXG4gIFx0c2V0VXJsOiBmdW5jdGlvbiAodXJsLCBub1JlZHJhdykge1xyXG4gIFx0XHRpZiAodGhpcy5fdXJsID09PSB1cmwgJiYgbm9SZWRyYXcgPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdG5vUmVkcmF3ID0gdHJ1ZTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fdXJsID0gdXJsO1xyXG5cclxuICBcdFx0aWYgKCFub1JlZHJhdykge1xyXG4gIFx0XHRcdHRoaXMucmVkcmF3KCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY3JlYXRlVGlsZShjb29yZHM6IE9iamVjdCwgZG9uZT86IEZ1bmN0aW9uKTogSFRNTEVsZW1lbnRcclxuICBcdC8vIENhbGxlZCBvbmx5IGludGVybmFsbHksIG92ZXJyaWRlcyBHcmlkTGF5ZXIncyBbYGNyZWF0ZVRpbGUoKWBdKCNncmlkbGF5ZXItY3JlYXRldGlsZSlcclxuICBcdC8vIHRvIHJldHVybiBhbiBgPGltZz5gIEhUTUwgZWxlbWVudCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBpbWFnZSBVUkwgZ2l2ZW4gYGNvb3Jkc2AuIFRoZSBgZG9uZWBcclxuICBcdC8vIGNhbGxiYWNrIGlzIGNhbGxlZCB3aGVuIHRoZSB0aWxlIGhhcyBiZWVuIGxvYWRlZC5cclxuICBcdGNyZWF0ZVRpbGU6IGZ1bmN0aW9uIChjb29yZHMsIGRvbmUpIHtcclxuICBcdFx0dmFyIHRpbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbWcnKTtcclxuXHJcbiAgXHRcdG9uKHRpbGUsICdsb2FkJywgYmluZCh0aGlzLl90aWxlT25Mb2FkLCB0aGlzLCBkb25lLCB0aWxlKSk7XHJcbiAgXHRcdG9uKHRpbGUsICdlcnJvcicsIGJpbmQodGhpcy5fdGlsZU9uRXJyb3IsIHRoaXMsIGRvbmUsIHRpbGUpKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gfHwgdGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luID09PSAnJykge1xyXG4gIFx0XHRcdHRpbGUuY3Jvc3NPcmlnaW4gPSB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09IHRydWUgPyAnJyA6IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gZm9yIHRoaXMgbmV3IG9wdGlvbiB3ZSBmb2xsb3cgdGhlIGRvY3VtZW50ZWQgYmVoYXZpb3JcclxuICBcdFx0Ly8gbW9yZSBjbG9zZWx5IGJ5IG9ubHkgc2V0dGluZyB0aGUgcHJvcGVydHkgd2hlbiBzdHJpbmdcclxuICBcdFx0aWYgKHR5cGVvZiB0aGlzLm9wdGlvbnMucmVmZXJyZXJQb2xpY3kgPT09ICdzdHJpbmcnKSB7XHJcbiAgXHRcdFx0dGlsZS5yZWZlcnJlclBvbGljeSA9IHRoaXMub3B0aW9ucy5yZWZlcnJlclBvbGljeTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gVGhlIGFsdCBhdHRyaWJ1dGUgaXMgc2V0IHRvIHRoZSBlbXB0eSBzdHJpbmcsXHJcbiAgXHRcdC8vIGFsbG93aW5nIHNjcmVlbiByZWFkZXJzIHRvIGlnbm9yZSB0aGUgZGVjb3JhdGl2ZSBpbWFnZSB0aWxlcy5cclxuICBcdFx0Ly8gaHR0cHM6Ly93d3cudzMub3JnL1dBSS90dXRvcmlhbHMvaW1hZ2VzL2RlY29yYXRpdmUvXHJcbiAgXHRcdC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sLWFyaWEvI2VsLWltZy1lbXB0eS1hbHRcclxuICBcdFx0dGlsZS5hbHQgPSAnJztcclxuXHJcbiAgXHRcdHRpbGUuc3JjID0gdGhpcy5nZXRUaWxlVXJsKGNvb3Jkcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGlsZTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQHNlY3Rpb24gRXh0ZW5zaW9uIG1ldGhvZHNcclxuICBcdC8vIEB1bmluaGVyaXRhYmxlXHJcbiAgXHQvLyBMYXllcnMgZXh0ZW5kaW5nIGBUaWxlTGF5ZXJgIG1pZ2h0IHJlaW1wbGVtZW50IHRoZSBmb2xsb3dpbmcgbWV0aG9kLlxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRUaWxlVXJsKGNvb3JkczogT2JqZWN0KTogU3RyaW5nXHJcbiAgXHQvLyBDYWxsZWQgb25seSBpbnRlcm5hbGx5LCByZXR1cm5zIHRoZSBVUkwgZm9yIGEgdGlsZSBnaXZlbiBpdHMgY29vcmRpbmF0ZXMuXHJcbiAgXHQvLyBDbGFzc2VzIGV4dGVuZGluZyBgVGlsZUxheWVyYCBjYW4gb3ZlcnJpZGUgdGhpcyBmdW5jdGlvbiB0byBwcm92aWRlIGN1c3RvbSB0aWxlIFVSTCBuYW1pbmcgc2NoZW1lcy5cclxuICBcdGdldFRpbGVVcmw6IGZ1bmN0aW9uIChjb29yZHMpIHtcclxuICBcdFx0dmFyIGRhdGEgPSB7XHJcbiAgXHRcdFx0cjogQnJvd3Nlci5yZXRpbmEgPyAnQDJ4JyA6ICcnLFxyXG4gIFx0XHRcdHM6IHRoaXMuX2dldFN1YmRvbWFpbihjb29yZHMpLFxyXG4gIFx0XHRcdHg6IGNvb3Jkcy54LFxyXG4gIFx0XHRcdHk6IGNvb3Jkcy55LFxyXG4gIFx0XHRcdHo6IHRoaXMuX2dldFpvb21Gb3JVcmwoKVxyXG4gIFx0XHR9O1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwICYmICF0aGlzLl9tYXAub3B0aW9ucy5jcnMuaW5maW5pdGUpIHtcclxuICBcdFx0XHR2YXIgaW52ZXJ0ZWRZID0gdGhpcy5fZ2xvYmFsVGlsZVJhbmdlLm1heC55IC0gY29vcmRzLnk7XHJcbiAgXHRcdFx0aWYgKHRoaXMub3B0aW9ucy50bXMpIHtcclxuICBcdFx0XHRcdGRhdGFbJ3knXSA9IGludmVydGVkWTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0ZGF0YVsnLXknXSA9IGludmVydGVkWTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRlbXBsYXRlKHRoaXMuX3VybCwgZXh0ZW5kKGRhdGEsIHRoaXMub3B0aW9ucykpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdGlsZU9uTG9hZDogZnVuY3Rpb24gKGRvbmUsIHRpbGUpIHtcclxuICBcdFx0Ly8gRm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvaXNzdWVzLzMzMzJcclxuICBcdFx0aWYgKEJyb3dzZXIuaWVsdDkpIHtcclxuICBcdFx0XHRzZXRUaW1lb3V0KGJpbmQoZG9uZSwgdGhpcywgbnVsbCwgdGlsZSksIDApO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdGRvbmUobnVsbCwgdGlsZSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X3RpbGVPbkVycm9yOiBmdW5jdGlvbiAoZG9uZSwgdGlsZSwgZSkge1xyXG4gIFx0XHR2YXIgZXJyb3JVcmwgPSB0aGlzLm9wdGlvbnMuZXJyb3JUaWxlVXJsO1xyXG4gIFx0XHRpZiAoZXJyb3JVcmwgJiYgdGlsZS5nZXRBdHRyaWJ1dGUoJ3NyYycpICE9PSBlcnJvclVybCkge1xyXG4gIFx0XHRcdHRpbGUuc3JjID0gZXJyb3JVcmw7XHJcbiAgXHRcdH1cclxuICBcdFx0ZG9uZShlLCB0aWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uVGlsZVJlbW92ZTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0ZS50aWxlLm9ubG9hZCA9IG51bGw7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRab29tRm9yVXJsOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciB6b29tID0gdGhpcy5fdGlsZVpvb20sXHJcbiAgXHRcdG1heFpvb20gPSB0aGlzLm9wdGlvbnMubWF4Wm9vbSxcclxuICBcdFx0em9vbVJldmVyc2UgPSB0aGlzLm9wdGlvbnMuem9vbVJldmVyc2UsXHJcbiAgXHRcdHpvb21PZmZzZXQgPSB0aGlzLm9wdGlvbnMuem9vbU9mZnNldDtcclxuXHJcbiAgXHRcdGlmICh6b29tUmV2ZXJzZSkge1xyXG4gIFx0XHRcdHpvb20gPSBtYXhab29tIC0gem9vbTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHpvb20gKyB6b29tT2Zmc2V0O1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0U3ViZG9tYWluOiBmdW5jdGlvbiAodGlsZVBvaW50KSB7XHJcbiAgXHRcdHZhciBpbmRleCA9IE1hdGguYWJzKHRpbGVQb2ludC54ICsgdGlsZVBvaW50LnkpICUgdGhpcy5vcHRpb25zLnN1YmRvbWFpbnMubGVuZ3RoO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLnN1YmRvbWFpbnNbaW5kZXhdO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBzdG9wcyBsb2FkaW5nIGFsbCB0aWxlcyBpbiB0aGUgYmFja2dyb3VuZCBsYXllclxyXG4gIFx0X2Fib3J0TG9hZGluZzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgaSwgdGlsZTtcclxuICBcdFx0Zm9yIChpIGluIHRoaXMuX3RpbGVzKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX3RpbGVzW2ldLmNvb3Jkcy56ICE9PSB0aGlzLl90aWxlWm9vbSkge1xyXG4gIFx0XHRcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2ldLmVsO1xyXG5cclxuICBcdFx0XHRcdHRpbGUub25sb2FkID0gZmFsc2VGbjtcclxuICBcdFx0XHRcdHRpbGUub25lcnJvciA9IGZhbHNlRm47XHJcblxyXG4gIFx0XHRcdFx0aWYgKCF0aWxlLmNvbXBsZXRlKSB7XHJcbiAgXHRcdFx0XHRcdHRpbGUuc3JjID0gZW1wdHlJbWFnZVVybDtcclxuICBcdFx0XHRcdFx0dmFyIGNvb3JkcyA9IHRoaXMuX3RpbGVzW2ldLmNvb3JkcztcclxuICBcdFx0XHRcdFx0cmVtb3ZlKHRpbGUpO1xyXG4gIFx0XHRcdFx0XHRkZWxldGUgdGhpcy5fdGlsZXNbaV07XHJcbiAgXHRcdFx0XHRcdC8vIEBldmVudCB0aWxlYWJvcnQ6IFRpbGVFdmVudFxyXG4gIFx0XHRcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSB3YXMgbG9hZGluZyBidXQgaXMgbm93IG5vdCB3YW50ZWQuXHJcbiAgXHRcdFx0XHRcdHRoaXMuZmlyZSgndGlsZWFib3J0Jywge1xyXG4gIFx0XHRcdFx0XHRcdHRpbGU6IHRpbGUsXHJcbiAgXHRcdFx0XHRcdFx0Y29vcmRzOiBjb29yZHNcclxuICBcdFx0XHRcdFx0fSk7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZW1vdmVUaWxlOiBmdW5jdGlvbiAoa2V5KSB7XHJcbiAgXHRcdHZhciB0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcclxuICBcdFx0aWYgKCF0aWxlKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0Ly8gQ2FuY2VscyBhbnkgcGVuZGluZyBodHRwIHJlcXVlc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGlsZVxyXG4gIFx0XHR0aWxlLmVsLnNldEF0dHJpYnV0ZSgnc3JjJywgZW1wdHlJbWFnZVVybCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gR3JpZExheWVyLnByb3RvdHlwZS5fcmVtb3ZlVGlsZS5jYWxsKHRoaXMsIGtleSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF90aWxlUmVhZHk6IGZ1bmN0aW9uIChjb29yZHMsIGVyciwgdGlsZSkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcCB8fCAodGlsZSAmJiB0aWxlLmdldEF0dHJpYnV0ZSgnc3JjJykgPT09IGVtcHR5SW1hZ2VVcmwpKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gR3JpZExheWVyLnByb3RvdHlwZS5fdGlsZVJlYWR5LmNhbGwodGhpcywgY29vcmRzLCBlcnIsIHRpbGUpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC50aWxlbGF5ZXIodXJsVGVtcGxhdGU6IFN0cmluZywgb3B0aW9ucz86IFRpbGVMYXllciBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIHRpbGUgbGF5ZXIgb2JqZWN0IGdpdmVuIGEgYFVSTCB0ZW1wbGF0ZWAgYW5kIG9wdGlvbmFsbHkgYW4gb3B0aW9ucyBvYmplY3QuXHJcblxyXG4gIGZ1bmN0aW9uIHRpbGVMYXllcih1cmwsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgVGlsZUxheWVyKHVybCwgb3B0aW9ucyk7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIFRpbGVMYXllci5XTVNcclxuICAgKiBAaW5oZXJpdHMgVGlsZUxheWVyXHJcbiAgICogQGFrYSBMLlRpbGVMYXllci5XTVNcclxuICAgKiBVc2VkIHRvIGRpc3BsYXkgW1dNU10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvV2ViX01hcF9TZXJ2aWNlKSBzZXJ2aWNlcyBhcyB0aWxlIGxheWVycyBvbiB0aGUgbWFwLiBFeHRlbmRzIGBUaWxlTGF5ZXJgLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIG5leHJhZCA9IEwudGlsZUxheWVyLndtcyhcImh0dHA6Ly9tZXNvbmV0LmFncm9uLmlhc3RhdGUuZWR1L2NnaS1iaW4vd21zL25leHJhZC9uMHIuY2dpXCIsIHtcclxuICAgKiBcdGxheWVyczogJ25leHJhZC1uMHItOTAwOTEzJyxcclxuICAgKiBcdGZvcm1hdDogJ2ltYWdlL3BuZycsXHJcbiAgICogXHR0cmFuc3BhcmVudDogdHJ1ZSxcclxuICAgKiBcdGF0dHJpYnV0aW9uOiBcIldlYXRoZXIgZGF0YSDCqSAyMDEyIElFTSBOZXhyYWRcIlxyXG4gICAqIH0pO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgVGlsZUxheWVyV01TID0gVGlsZUxheWVyLmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgVGlsZUxheWVyLldNUyBvcHRpb25zXHJcbiAgXHQvLyBJZiBhbnkgY3VzdG9tIG9wdGlvbnMgbm90IGRvY3VtZW50ZWQgaGVyZSBhcmUgdXNlZCwgdGhleSB3aWxsIGJlIHNlbnQgdG8gdGhlXHJcbiAgXHQvLyBXTVMgc2VydmVyIGFzIGV4dHJhIHBhcmFtZXRlcnMgaW4gZWFjaCByZXF1ZXN0IFVSTC4gVGhpcyBjYW4gYmUgdXNlZnVsIGZvclxyXG4gIFx0Ly8gW25vbi1zdGFuZGFyZCB2ZW5kb3IgV01TIHBhcmFtZXRlcnNdKGh0dHBzOi8vZG9jcy5nZW9zZXJ2ZXIub3JnL3N0YWJsZS9lbi91c2VyL3NlcnZpY2VzL3dtcy92ZW5kb3IuaHRtbCkuXHJcbiAgXHRkZWZhdWx0V21zUGFyYW1zOiB7XHJcbiAgXHRcdHNlcnZpY2U6ICdXTVMnLFxyXG4gIFx0XHRyZXF1ZXN0OiAnR2V0TWFwJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbGF5ZXJzOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyAqKihyZXF1aXJlZCkqKiBDb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBXTVMgbGF5ZXJzIHRvIHNob3cuXHJcbiAgXHRcdGxheWVyczogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHN0eWxlczogU3RyaW5nID0gJydcclxuICBcdFx0Ly8gQ29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgV01TIHN0eWxlcy5cclxuICBcdFx0c3R5bGVzOiAnJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gZm9ybWF0OiBTdHJpbmcgPSAnaW1hZ2UvanBlZydcclxuICBcdFx0Ly8gV01TIGltYWdlIGZvcm1hdCAodXNlIGAnaW1hZ2UvcG5nJ2AgZm9yIGxheWVycyB3aXRoIHRyYW5zcGFyZW5jeSkuXHJcbiAgXHRcdGZvcm1hdDogJ2ltYWdlL2pwZWcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB0cmFuc3BhcmVudDogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIFdNUyBzZXJ2aWNlIHdpbGwgcmV0dXJuIGltYWdlcyB3aXRoIHRyYW5zcGFyZW5jeS5cclxuICBcdFx0dHJhbnNwYXJlbnQ6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB2ZXJzaW9uOiBTdHJpbmcgPSAnMS4xLjEnXHJcbiAgXHRcdC8vIFZlcnNpb24gb2YgdGhlIFdNUyBzZXJ2aWNlIHRvIHVzZVxyXG4gIFx0XHR2ZXJzaW9uOiAnMS4xLjEnXHJcbiAgXHR9LFxyXG5cclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBjcnM6IENSUyA9IG51bGxcclxuICBcdFx0Ly8gQ29vcmRpbmF0ZSBSZWZlcmVuY2UgU3lzdGVtIHRvIHVzZSBmb3IgdGhlIFdNUyByZXF1ZXN0cywgZGVmYXVsdHMgdG9cclxuICBcdFx0Ly8gbWFwIENSUy4gRG9uJ3QgY2hhbmdlIHRoaXMgaWYgeW91J3JlIG5vdCBzdXJlIHdoYXQgaXQgbWVhbnMuXHJcbiAgXHRcdGNyczogbnVsbCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdXBwZXJjYXNlOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCBXTVMgcmVxdWVzdCBwYXJhbWV0ZXIga2V5cyB3aWxsIGJlIHVwcGVyY2FzZS5cclxuICBcdFx0dXBwZXJjYXNlOiBmYWxzZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHR2YXIgd21zUGFyYW1zID0gZXh0ZW5kKHt9LCB0aGlzLmRlZmF1bHRXbXNQYXJhbXMpO1xyXG5cclxuICBcdFx0Ly8gYWxsIGtleXMgdGhhdCBhcmUgbm90IFRpbGVMYXllciBvcHRpb25zIGdvIHRvIFdNUyBwYXJhbXNcclxuICBcdFx0Zm9yICh2YXIgaSBpbiBvcHRpb25zKSB7XHJcbiAgXHRcdFx0aWYgKCEoaSBpbiB0aGlzLm9wdGlvbnMpKSB7XHJcbiAgXHRcdFx0XHR3bXNQYXJhbXNbaV0gPSBvcHRpb25zW2ldO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0b3B0aW9ucyA9IHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR2YXIgcmVhbFJldGluYSA9IG9wdGlvbnMuZGV0ZWN0UmV0aW5hICYmIEJyb3dzZXIucmV0aW5hID8gMiA6IDE7XHJcbiAgXHRcdHZhciB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcclxuICBcdFx0d21zUGFyYW1zLndpZHRoID0gdGlsZVNpemUueCAqIHJlYWxSZXRpbmE7XHJcbiAgXHRcdHdtc1BhcmFtcy5oZWlnaHQgPSB0aWxlU2l6ZS55ICogcmVhbFJldGluYTtcclxuXHJcbiAgXHRcdHRoaXMud21zUGFyYW1zID0gd21zUGFyYW1zO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG5cclxuICBcdFx0dGhpcy5fY3JzID0gdGhpcy5vcHRpb25zLmNycyB8fCBtYXAub3B0aW9ucy5jcnM7XHJcbiAgXHRcdHRoaXMuX3dtc1ZlcnNpb24gPSBwYXJzZUZsb2F0KHRoaXMud21zUGFyYW1zLnZlcnNpb24pO1xyXG5cclxuICBcdFx0dmFyIHByb2plY3Rpb25LZXkgPSB0aGlzLl93bXNWZXJzaW9uID49IDEuMyA/ICdjcnMnIDogJ3Nycyc7XHJcbiAgXHRcdHRoaXMud21zUGFyYW1zW3Byb2plY3Rpb25LZXldID0gdGhpcy5fY3JzLmNvZGU7XHJcblxyXG4gIFx0XHRUaWxlTGF5ZXIucHJvdG90eXBlLm9uQWRkLmNhbGwodGhpcywgbWFwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0VGlsZVVybDogZnVuY3Rpb24gKGNvb3Jkcykge1xyXG5cclxuICBcdFx0dmFyIHRpbGVCb3VuZHMgPSB0aGlzLl90aWxlQ29vcmRzVG9Od1NlKGNvb3JkcyksXHJcbiAgXHRcdCAgICBjcnMgPSB0aGlzLl9jcnMsXHJcbiAgXHRcdCAgICBib3VuZHMgPSB0b0JvdW5kcyhjcnMucHJvamVjdCh0aWxlQm91bmRzWzBdKSwgY3JzLnByb2plY3QodGlsZUJvdW5kc1sxXSkpLFxyXG4gIFx0XHQgICAgbWluID0gYm91bmRzLm1pbixcclxuICBcdFx0ICAgIG1heCA9IGJvdW5kcy5tYXgsXHJcbiAgXHRcdCAgICBiYm94ID0gKHRoaXMuX3dtc1ZlcnNpb24gPj0gMS4zICYmIHRoaXMuX2NycyA9PT0gRVBTRzQzMjYgP1xyXG4gIFx0XHQgICAgW21pbi55LCBtaW4ueCwgbWF4LnksIG1heC54XSA6XHJcbiAgXHRcdCAgICBbbWluLngsIG1pbi55LCBtYXgueCwgbWF4LnldKS5qb2luKCcsJyksXHJcbiAgXHRcdCAgICB1cmwgPSBUaWxlTGF5ZXIucHJvdG90eXBlLmdldFRpbGVVcmwuY2FsbCh0aGlzLCBjb29yZHMpO1xyXG4gIFx0XHRyZXR1cm4gdXJsICtcclxuICBcdFx0XHRnZXRQYXJhbVN0cmluZyh0aGlzLndtc1BhcmFtcywgdXJsLCB0aGlzLm9wdGlvbnMudXBwZXJjYXNlKSArXHJcbiAgXHRcdFx0KHRoaXMub3B0aW9ucy51cHBlcmNhc2UgPyAnJkJCT1g9JyA6ICcmYmJveD0nKSArIGJib3g7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0UGFyYW1zKHBhcmFtczogT2JqZWN0LCBub1JlZHJhdz86IEJvb2xlYW4pOiB0aGlzXHJcbiAgXHQvLyBNZXJnZXMgYW4gb2JqZWN0IHdpdGggdGhlIG5ldyBwYXJhbWV0ZXJzIGFuZCByZS1yZXF1ZXN0cyB0aWxlcyBvbiB0aGUgY3VycmVudCBzY3JlZW4gKHVubGVzcyBgbm9SZWRyYXdgIHdhcyBzZXQgdG8gdHJ1ZSkuXHJcbiAgXHRzZXRQYXJhbXM6IGZ1bmN0aW9uIChwYXJhbXMsIG5vUmVkcmF3KSB7XHJcblxyXG4gIFx0XHRleHRlbmQodGhpcy53bXNQYXJhbXMsIHBhcmFtcyk7XHJcblxyXG4gIFx0XHRpZiAoIW5vUmVkcmF3KSB7XHJcbiAgXHRcdFx0dGhpcy5yZWRyYXcoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLnRpbGVMYXllci53bXMoYmFzZVVybDogU3RyaW5nLCBvcHRpb25zOiBUaWxlTGF5ZXIuV01TIG9wdGlvbnMpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgV01TIHRpbGUgbGF5ZXIgb2JqZWN0IGdpdmVuIGEgYmFzZSBVUkwgb2YgdGhlIFdNUyBzZXJ2aWNlIGFuZCBhIFdNUyBwYXJhbWV0ZXJzL29wdGlvbnMgb2JqZWN0LlxyXG4gIGZ1bmN0aW9uIHRpbGVMYXllcldNUyh1cmwsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgVGlsZUxheWVyV01TKHVybCwgb3B0aW9ucyk7XHJcbiAgfVxuXG4gIFRpbGVMYXllci5XTVMgPSBUaWxlTGF5ZXJXTVM7XG4gIHRpbGVMYXllci53bXMgPSB0aWxlTGF5ZXJXTVM7XG5cbiAgLypcbiAgICogQGNsYXNzIFJlbmRlcmVyXG4gICAqIEBpbmhlcml0cyBMYXllclxuICAgKiBAYWthIEwuUmVuZGVyZXJcbiAgICpcbiAgICogQmFzZSBjbGFzcyBmb3IgdmVjdG9yIHJlbmRlcmVyIGltcGxlbWVudGF0aW9ucyAoYFNWR2AsIGBDYW52YXNgKS4gSGFuZGxlcyB0aGVcbiAgICogRE9NIGNvbnRhaW5lciBvZiB0aGUgcmVuZGVyZXIsIGl0cyBib3VuZHMsIGFuZCBpdHMgem9vbSBhbmltYXRpb24uXG4gICAqXG4gICAqIEEgYFJlbmRlcmVyYCB3b3JrcyBhcyBhbiBpbXBsaWNpdCBsYXllciBncm91cCBmb3IgYWxsIGBQYXRoYHMgLSB0aGUgcmVuZGVyZXJcbiAgICogaXRzZWxmIGNhbiBiZSBhZGRlZCBvciByZW1vdmVkIHRvIHRoZSBtYXAuIEFsbCBwYXRocyB1c2UgYSByZW5kZXJlciwgd2hpY2ggY2FuXG4gICAqIGJlIGltcGxpY2l0ICh0aGUgbWFwIHdpbGwgZGVjaWRlIHRoZSB0eXBlIG9mIHJlbmRlcmVyIGFuZCB1c2UgaXQgYXV0b21hdGljYWxseSlcbiAgICogb3IgZXhwbGljaXQgKHVzaW5nIHRoZSBbYHJlbmRlcmVyYF0oI3BhdGgtcmVuZGVyZXIpIG9wdGlvbiBvZiB0aGUgcGF0aCkuXG4gICAqXG4gICAqIERvIG5vdCB1c2UgdGhpcyBjbGFzcyBkaXJlY3RseSwgdXNlIGBTVkdgIGFuZCBgQ2FudmFzYCBpbnN0ZWFkLlxuICAgKlxuICAgKiBAZXZlbnQgdXBkYXRlOiBFdmVudFxuICAgKiBGaXJlZCB3aGVuIHRoZSByZW5kZXJlciB1cGRhdGVzIGl0cyBib3VuZHMsIGNlbnRlciBhbmQgem9vbSwgZm9yIGV4YW1wbGUgd2hlblxuICAgKiBpdHMgbWFwIGhhcyBtb3ZlZFxuICAgKi9cblxuICB2YXIgUmVuZGVyZXIgPSBMYXllci5leHRlbmQoe1xuXG4gIFx0Ly8gQHNlY3Rpb25cbiAgXHQvLyBAYWthIFJlbmRlcmVyIG9wdGlvbnNcbiAgXHRvcHRpb25zOiB7XG4gIFx0XHQvLyBAb3B0aW9uIHBhZGRpbmc6IE51bWJlciA9IDAuMVxuICBcdFx0Ly8gSG93IG11Y2ggdG8gZXh0ZW5kIHRoZSBjbGlwIGFyZWEgYXJvdW5kIHRoZSBtYXAgdmlldyAocmVsYXRpdmUgdG8gaXRzIHNpemUpXG4gIFx0XHQvLyBlLmcuIDAuMSB3b3VsZCBiZSAxMCUgb2YgbWFwIHZpZXcgaW4gZWFjaCBkaXJlY3Rpb25cbiAgXHRcdHBhZGRpbmc6IDAuMVxuICBcdH0sXG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHN0YW1wKHRoaXMpO1xuICBcdFx0dGhpcy5fbGF5ZXJzID0gdGhpcy5fbGF5ZXJzIHx8IHt9O1xuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHtcbiAgXHRcdFx0dGhpcy5faW5pdENvbnRhaW5lcigpOyAvLyBkZWZpbmVkIGJ5IHJlbmRlcmVyIGltcGxlbWVudGF0aW9uc1xuXG4gIFx0XHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcbiAgXHRcdFx0XHRhZGRDbGFzcyh0aGlzLl9jb250YWluZXIsICdsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xuICBcdFx0dGhpcy5fdXBkYXRlKCk7XG4gIFx0XHR0aGlzLm9uKCd1cGRhdGUnLCB0aGlzLl91cGRhdGVQYXRocywgdGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLm9mZigndXBkYXRlJywgdGhpcy5fdXBkYXRlUGF0aHMsIHRoaXMpO1xuICBcdFx0dGhpcy5fZGVzdHJveUNvbnRhaW5lcigpO1xuICBcdH0sXG5cbiAgXHRnZXRFdmVudHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBldmVudHMgPSB7XG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXQsXG4gIFx0XHRcdHpvb206IHRoaXMuX29uWm9vbSxcbiAgXHRcdFx0bW92ZWVuZDogdGhpcy5fdXBkYXRlLFxuICBcdFx0XHR6b29tZW5kOiB0aGlzLl9vblpvb21FbmRcbiAgXHRcdH07XG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7XG4gIFx0XHRcdGV2ZW50cy56b29tYW5pbSA9IHRoaXMuX29uQW5pbVpvb207XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gZXZlbnRzO1xuICBcdH0sXG5cbiAgXHRfb25BbmltWm9vbTogZnVuY3Rpb24gKGV2KSB7XG4gIFx0XHR0aGlzLl91cGRhdGVUcmFuc2Zvcm0oZXYuY2VudGVyLCBldi56b29tKTtcbiAgXHR9LFxuXG4gIFx0X29uWm9vbTogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fdXBkYXRlVHJhbnNmb3JtKHRoaXMuX21hcC5nZXRDZW50ZXIoKSwgdGhpcy5fbWFwLmdldFpvb20oKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVUcmFuc2Zvcm06IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20pIHtcbiAgXHRcdHZhciBzY2FsZSA9IHRoaXMuX21hcC5nZXRab29tU2NhbGUoem9vbSwgdGhpcy5fem9vbSksXG4gIFx0XHQgICAgdmlld0hhbGYgPSB0aGlzLl9tYXAuZ2V0U2l6ZSgpLm11bHRpcGx5QnkoMC41ICsgdGhpcy5vcHRpb25zLnBhZGRpbmcpLFxuICBcdFx0ICAgIGN1cnJlbnRDZW50ZXJQb2ludCA9IHRoaXMuX21hcC5wcm9qZWN0KHRoaXMuX2NlbnRlciwgem9vbSksXG5cbiAgXHRcdCAgICB0b3BMZWZ0T2Zmc2V0ID0gdmlld0hhbGYubXVsdGlwbHlCeSgtc2NhbGUpLmFkZChjdXJyZW50Q2VudGVyUG9pbnQpXG4gIFx0XHRcdFx0ICAuc3VidHJhY3QodGhpcy5fbWFwLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pKTtcblxuICBcdFx0aWYgKEJyb3dzZXIuYW55M2QpIHtcbiAgXHRcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX2NvbnRhaW5lciwgdG9wTGVmdE9mZnNldCwgc2NhbGUpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCB0b3BMZWZ0T2Zmc2V0KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcbiAgXHRcdHRoaXMuX3VwZGF0ZVRyYW5zZm9ybSh0aGlzLl9jZW50ZXIsIHRoaXMuX3pvb20pO1xuXG4gIFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9sYXllcnMpIHtcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2lkXS5fcmVzZXQoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uWm9vbUVuZDogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XG4gIFx0XHRcdHRoaXMuX2xheWVyc1tpZF0uX3Byb2plY3QoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZVBhdGhzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9sYXllcnMpIHtcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2lkXS5fdXBkYXRlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdC8vIFVwZGF0ZSBwaXhlbCBib3VuZHMgb2YgcmVuZGVyZXIgY29udGFpbmVyIChmb3IgcG9zaXRpb25pbmcvc2l6aW5nL2NsaXBwaW5nIGxhdGVyKVxuICBcdFx0Ly8gU3ViY2xhc3NlcyBhcmUgcmVzcG9uc2libGUgb2YgZmlyaW5nIHRoZSAndXBkYXRlJyBldmVudC5cbiAgXHRcdHZhciBwID0gdGhpcy5vcHRpb25zLnBhZGRpbmcsXG4gIFx0XHQgICAgc2l6ZSA9IHRoaXMuX21hcC5nZXRTaXplKCksXG4gIFx0XHQgICAgbWluID0gdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KHNpemUubXVsdGlwbHlCeSgtcCkpLnJvdW5kKCk7XG5cbiAgXHRcdHRoaXMuX2JvdW5kcyA9IG5ldyBCb3VuZHMobWluLCBtaW4uYWRkKHNpemUubXVsdGlwbHlCeSgxICsgcCAqIDIpKS5yb3VuZCgpKTtcblxuICBcdFx0dGhpcy5fY2VudGVyID0gdGhpcy5fbWFwLmdldENlbnRlcigpO1xuICBcdFx0dGhpcy5fem9vbSA9IHRoaXMuX21hcC5nZXRab29tKCk7XG4gIFx0fVxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgQ2FudmFzXG4gICAqIEBpbmhlcml0cyBSZW5kZXJlclxuICAgKiBAYWthIEwuQ2FudmFzXG4gICAqXG4gICAqIEFsbG93cyB2ZWN0b3IgbGF5ZXJzIHRvIGJlIGRpc3BsYXllZCB3aXRoIFtgPGNhbnZhcz5gXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvQ2FudmFzX0FQSSkuXG4gICAqIEluaGVyaXRzIGBSZW5kZXJlcmAuXG4gICAqXG4gICAqIER1ZSB0byBbdGVjaG5pY2FsIGxpbWl0YXRpb25zXShodHRwczovL2Nhbml1c2UuY29tL2NhbnZhcyksIENhbnZhcyBpcyBub3RcbiAgICogYXZhaWxhYmxlIGluIGFsbCB3ZWIgYnJvd3NlcnMsIG5vdGFibHkgSUU4LCBhbmQgb3ZlcmxhcHBpbmcgZ2VvbWV0cmllcyBtaWdodFxuICAgKiBub3QgZGlzcGxheSBwcm9wZXJseSBpbiBzb21lIGVkZ2UgY2FzZXMuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIFVzZSBDYW52YXMgYnkgZGVmYXVsdCBmb3IgYWxsIHBhdGhzIGluIHRoZSBtYXA6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJywge1xuICAgKiBcdHJlbmRlcmVyOiBMLmNhbnZhcygpXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVXNlIGEgQ2FudmFzIHJlbmRlcmVyIHdpdGggZXh0cmEgcGFkZGluZyBmb3Igc3BlY2lmaWMgdmVjdG9yIGdlb21ldHJpZXM6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJyk7XG4gICAqIHZhciBteVJlbmRlcmVyID0gTC5jYW52YXMoeyBwYWRkaW5nOiAwLjUgfSk7XG4gICAqIHZhciBsaW5lID0gTC5wb2x5bGluZSggY29vcmRpbmF0ZXMsIHsgcmVuZGVyZXI6IG15UmVuZGVyZXIgfSApO1xuICAgKiB2YXIgY2lyY2xlID0gTC5jaXJjbGUoIGNlbnRlciwgeyByZW5kZXJlcjogbXlSZW5kZXJlciB9ICk7XG4gICAqIGBgYFxuICAgKi9cblxuICB2YXIgQ2FudmFzID0gUmVuZGVyZXIuZXh0ZW5kKHtcblxuICBcdC8vIEBzZWN0aW9uXG4gIFx0Ly8gQGFrYSBDYW52YXMgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gdG9sZXJhbmNlOiBOdW1iZXIgPSAwXG4gIFx0XHQvLyBIb3cgbXVjaCB0byBleHRlbmQgdGhlIGNsaWNrIHRvbGVyYW5jZSBhcm91bmQgYSBwYXRoL29iamVjdCBvbiB0aGUgbWFwLlxuICBcdFx0dG9sZXJhbmNlOiAwXG4gIFx0fSxcblxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGV2ZW50cyA9IFJlbmRlcmVyLnByb3RvdHlwZS5nZXRFdmVudHMuY2FsbCh0aGlzKTtcbiAgXHRcdGV2ZW50cy52aWV3cHJlcmVzZXQgPSB0aGlzLl9vblZpZXdQcmVSZXNldDtcbiAgXHRcdHJldHVybiBldmVudHM7XG4gIFx0fSxcblxuICBcdF9vblZpZXdQcmVSZXNldDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gU2V0IGEgZmxhZyBzbyB0aGF0IGEgdmlld3ByZXJlc2V0K21vdmVlbmQrdmlld3Jlc2V0IG9ubHkgdXBkYXRlcyZyZWRyYXdzIG9uY2VcbiAgXHRcdHRoaXMuX3Bvc3Rwb25lVXBkYXRlUGF0aHMgPSB0cnVlO1xuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKCkge1xuICBcdFx0UmVuZGVyZXIucHJvdG90eXBlLm9uQWRkLmNhbGwodGhpcyk7XG5cbiAgXHRcdC8vIFJlZHJhdyB2ZWN0b3JzIHNpbmNlIGNhbnZhcyBpcyBjbGVhcmVkIHVwb24gcmVtb3ZhbCxcbiAgXHRcdC8vIGluIGNhc2Ugb2YgcmVtb3ZpbmcgdGhlIHJlbmRlcmVyIGl0c2VsZiBmcm9tIHRoZSBtYXAuXG4gIFx0XHR0aGlzLl9kcmF3KCk7XG4gIFx0fSxcblxuICBcdF9pbml0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG5cbiAgXHRcdG9uKGNvbnRhaW5lciwgJ21vdXNlbW92ZScsIHRoaXMuX29uTW91c2VNb3ZlLCB0aGlzKTtcbiAgXHRcdG9uKGNvbnRhaW5lciwgJ2NsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIGNvbnRleHRtZW51JywgdGhpcy5fb25DbGljaywgdGhpcyk7XG4gIFx0XHRvbihjb250YWluZXIsICdtb3VzZW91dCcsIHRoaXMuX2hhbmRsZU1vdXNlT3V0LCB0aGlzKTtcbiAgXHRcdGNvbnRhaW5lclsnX2xlYWZsZXRfZGlzYWJsZV9ldmVudHMnXSA9IHRydWU7XG5cbiAgXHRcdHRoaXMuX2N0eCA9IGNvbnRhaW5lci5nZXRDb250ZXh0KCcyZCcpO1xuICBcdH0sXG5cbiAgXHRfZGVzdHJveUNvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3JlZHJhd1JlcXVlc3QpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2N0eDtcbiAgXHRcdHJlbW92ZSh0aGlzLl9jb250YWluZXIpO1xuICBcdFx0b2ZmKHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRkZWxldGUgdGhpcy5fY29udGFpbmVyO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9wb3N0cG9uZVVwZGF0ZVBhdGhzKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgbGF5ZXI7XG4gIFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMgPSBudWxsO1xuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XG4gIFx0XHRcdGxheWVyID0gdGhpcy5fbGF5ZXJzW2lkXTtcbiAgXHRcdFx0bGF5ZXIuX3VwZGF0ZSgpO1xuICBcdFx0fVxuICBcdFx0dGhpcy5fcmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20gJiYgdGhpcy5fYm91bmRzKSB7IHJldHVybjsgfVxuXG4gIFx0XHRSZW5kZXJlci5wcm90b3R5cGUuX3VwZGF0ZS5jYWxsKHRoaXMpO1xuXG4gIFx0XHR2YXIgYiA9IHRoaXMuX2JvdW5kcyxcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIsXG4gIFx0XHQgICAgc2l6ZSA9IGIuZ2V0U2l6ZSgpLFxuICBcdFx0ICAgIG0gPSBCcm93c2VyLnJldGluYSA/IDIgOiAxO1xuXG4gIFx0XHRzZXRQb3NpdGlvbihjb250YWluZXIsIGIubWluKTtcblxuICBcdFx0Ly8gc2V0IGNhbnZhcyBzaXplIChhbHNvIGNsZWFyaW5nIGl0KTsgdXNlIGRvdWJsZSBzaXplIG9uIHJldGluYVxuICBcdFx0Y29udGFpbmVyLndpZHRoID0gbSAqIHNpemUueDtcbiAgXHRcdGNvbnRhaW5lci5oZWlnaHQgPSBtICogc2l6ZS55O1xuICBcdFx0Y29udGFpbmVyLnN0eWxlLndpZHRoID0gc2l6ZS54ICsgJ3B4JztcbiAgXHRcdGNvbnRhaW5lci5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xuXG4gIFx0XHRpZiAoQnJvd3Nlci5yZXRpbmEpIHtcbiAgXHRcdFx0dGhpcy5fY3R4LnNjYWxlKDIsIDIpO1xuICBcdFx0fVxuXG4gIFx0XHQvLyB0cmFuc2xhdGUgc28gd2UgdXNlIHRoZSBzYW1lIHBhdGggY29vcmRpbmF0ZXMgYWZ0ZXIgY2FudmFzIGVsZW1lbnQgbW92ZXNcbiAgXHRcdHRoaXMuX2N0eC50cmFuc2xhdGUoLWIubWluLngsIC1iLm1pbi55KTtcblxuICBcdFx0Ly8gVGVsbCBwYXRocyB0byByZWRyYXcgdGhlbXNlbHZlc1xuICBcdFx0dGhpcy5maXJlKCd1cGRhdGUnKTtcbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRSZW5kZXJlci5wcm90b3R5cGUuX3Jlc2V0LmNhbGwodGhpcyk7XG5cbiAgXHRcdGlmICh0aGlzLl9wb3N0cG9uZVVwZGF0ZVBhdGhzKSB7XG4gIFx0XHRcdHRoaXMuX3Bvc3Rwb25lVXBkYXRlUGF0aHMgPSBmYWxzZTtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUGF0aHMoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2luaXRQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHRoaXMuX3VwZGF0ZURhc2hBcnJheShsYXllcik7XG4gIFx0XHR0aGlzLl9sYXllcnNbc3RhbXAobGF5ZXIpXSA9IGxheWVyO1xuXG4gIFx0XHR2YXIgb3JkZXIgPSBsYXllci5fb3JkZXIgPSB7XG4gIFx0XHRcdGxheWVyOiBsYXllcixcbiAgXHRcdFx0cHJldjogdGhpcy5fZHJhd0xhc3QsXG4gIFx0XHRcdG5leHQ6IG51bGxcbiAgXHRcdH07XG4gIFx0XHRpZiAodGhpcy5fZHJhd0xhc3QpIHsgdGhpcy5fZHJhd0xhc3QubmV4dCA9IG9yZGVyOyB9XG4gIFx0XHR0aGlzLl9kcmF3TGFzdCA9IG9yZGVyO1xuICBcdFx0dGhpcy5fZHJhd0ZpcnN0ID0gdGhpcy5fZHJhd0ZpcnN0IHx8IHRoaXMuX2RyYXdMYXN0O1xuICBcdH0sXG5cbiAgXHRfYWRkUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0aGlzLl9yZXF1ZXN0UmVkcmF3KGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X3JlbW92ZVBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIG9yZGVyID0gbGF5ZXIuX29yZGVyO1xuICBcdFx0dmFyIG5leHQgPSBvcmRlci5uZXh0O1xuICBcdFx0dmFyIHByZXYgPSBvcmRlci5wcmV2O1xuXG4gIFx0XHRpZiAobmV4dCkge1xuICBcdFx0XHRuZXh0LnByZXYgPSBwcmV2O1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGhpcy5fZHJhd0xhc3QgPSBwcmV2O1xuICBcdFx0fVxuICBcdFx0aWYgKHByZXYpIHtcbiAgXHRcdFx0cHJldi5uZXh0ID0gbmV4dDtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdHRoaXMuX2RyYXdGaXJzdCA9IG5leHQ7XG4gIFx0XHR9XG5cbiAgXHRcdGRlbGV0ZSBsYXllci5fb3JkZXI7XG5cbiAgXHRcdGRlbGV0ZSB0aGlzLl9sYXllcnNbc3RhbXAobGF5ZXIpXTtcblxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdC8vIFJlZHJhdyB0aGUgdW5pb24gb2YgdGhlIGxheWVyJ3Mgb2xkIHBpeGVsXG4gIFx0XHQvLyBib3VuZHMgYW5kIHRoZSBuZXcgcGl4ZWwgYm91bmRzLlxuICBcdFx0dGhpcy5fZXh0ZW5kUmVkcmF3Qm91bmRzKGxheWVyKTtcbiAgXHRcdGxheWVyLl9wcm9qZWN0KCk7XG4gIFx0XHRsYXllci5fdXBkYXRlKCk7XG4gIFx0XHQvLyBUaGUgcmVkcmF3IHdpbGwgZXh0ZW5kIHRoZSByZWRyYXcgYm91bmRzXG4gIFx0XHQvLyB3aXRoIHRoZSBuZXcgcGl4ZWwgYm91bmRzLlxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVTdHlsZTogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0aGlzLl91cGRhdGVEYXNoQXJyYXkobGF5ZXIpO1xuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVEYXNoQXJyYXk6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKHR5cGVvZiBsYXllci5vcHRpb25zLmRhc2hBcnJheSA9PT0gJ3N0cmluZycpIHtcbiAgXHRcdFx0dmFyIHBhcnRzID0gbGF5ZXIub3B0aW9ucy5kYXNoQXJyYXkuc3BsaXQoL1ssIF0rLyksXG4gIFx0XHRcdCAgICBkYXNoQXJyYXkgPSBbXSxcbiAgXHRcdFx0ICAgIGRhc2hWYWx1ZSxcbiAgXHRcdFx0ICAgIGk7XG4gIFx0XHRcdGZvciAoaSA9IDA7IGkgPCBwYXJ0cy5sZW5ndGg7IGkrKykge1xuICBcdFx0XHRcdGRhc2hWYWx1ZSA9IE51bWJlcihwYXJ0c1tpXSk7XG4gIFx0XHRcdFx0Ly8gSWdub3JlIGRhc2ggYXJyYXkgY29udGFpbmluZyBpbnZhbGlkIGxlbmd0aHNcbiAgXHRcdFx0XHRpZiAoaXNOYU4oZGFzaFZhbHVlKSkgeyByZXR1cm47IH1cbiAgXHRcdFx0XHRkYXNoQXJyYXkucHVzaChkYXNoVmFsdWUpO1xuICBcdFx0XHR9XG4gIFx0XHRcdGxheWVyLm9wdGlvbnMuX2Rhc2hBcnJheSA9IGRhc2hBcnJheTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdGxheWVyLm9wdGlvbnMuX2Rhc2hBcnJheSA9IGxheWVyLm9wdGlvbnMuZGFzaEFycmF5O1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVxdWVzdFJlZHJhdzogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCkgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fZXh0ZW5kUmVkcmF3Qm91bmRzKGxheWVyKTtcbiAgXHRcdHRoaXMuX3JlZHJhd1JlcXVlc3QgPSB0aGlzLl9yZWRyYXdSZXF1ZXN0IHx8IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fcmVkcmF3LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X2V4dGVuZFJlZHJhd0JvdW5kczogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRpZiAobGF5ZXIuX3B4Qm91bmRzKSB7XG4gIFx0XHRcdHZhciBwYWRkaW5nID0gKGxheWVyLm9wdGlvbnMud2VpZ2h0IHx8IDApICsgMTtcbiAgXHRcdFx0dGhpcy5fcmVkcmF3Qm91bmRzID0gdGhpcy5fcmVkcmF3Qm91bmRzIHx8IG5ldyBCb3VuZHMoKTtcbiAgXHRcdFx0dGhpcy5fcmVkcmF3Qm91bmRzLmV4dGVuZChsYXllci5fcHhCb3VuZHMubWluLnN1YnRyYWN0KFtwYWRkaW5nLCBwYWRkaW5nXSkpO1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMuZXh0ZW5kKGxheWVyLl9weEJvdW5kcy5tYXguYWRkKFtwYWRkaW5nLCBwYWRkaW5nXSkpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZWRyYXdSZXF1ZXN0ID0gbnVsbDtcblxuICBcdFx0aWYgKHRoaXMuX3JlZHJhd0JvdW5kcykge1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMubWluLl9mbG9vcigpO1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMubWF4Ll9jZWlsKCk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2NsZWFyKCk7IC8vIGNsZWFyIGxheWVycyBpbiByZWRyYXcgYm91bmRzXG4gIFx0XHR0aGlzLl9kcmF3KCk7IC8vIGRyYXcgbGF5ZXJzXG5cbiAgXHRcdHRoaXMuX3JlZHJhd0JvdW5kcyA9IG51bGw7XG4gIFx0fSxcblxuICBcdF9jbGVhcjogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX3JlZHJhd0JvdW5kcztcbiAgXHRcdGlmIChib3VuZHMpIHtcbiAgXHRcdFx0dmFyIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xuICBcdFx0XHR0aGlzLl9jdHguY2xlYXJSZWN0KGJvdW5kcy5taW4ueCwgYm91bmRzLm1pbi55LCBzaXplLngsIHNpemUueSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9jdHguc2F2ZSgpO1xuICBcdFx0XHR0aGlzLl9jdHguc2V0VHJhbnNmb3JtKDEsIDAsIDAsIDEsIDAsIDApO1xuICBcdFx0XHR0aGlzLl9jdHguY2xlYXJSZWN0KDAsIDAsIHRoaXMuX2NvbnRhaW5lci53aWR0aCwgdGhpcy5fY29udGFpbmVyLmhlaWdodCk7XG4gIFx0XHRcdHRoaXMuX2N0eC5yZXN0b3JlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9kcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbGF5ZXIsIGJvdW5kcyA9IHRoaXMuX3JlZHJhd0JvdW5kcztcbiAgXHRcdHRoaXMuX2N0eC5zYXZlKCk7XG4gIFx0XHRpZiAoYm91bmRzKSB7XG4gIFx0XHRcdHZhciBzaXplID0gYm91bmRzLmdldFNpemUoKTtcbiAgXHRcdFx0dGhpcy5fY3R4LmJlZ2luUGF0aCgpO1xuICBcdFx0XHR0aGlzLl9jdHgucmVjdChib3VuZHMubWluLngsIGJvdW5kcy5taW4ueSwgc2l6ZS54LCBzaXplLnkpO1xuICBcdFx0XHR0aGlzLl9jdHguY2xpcCgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9kcmF3aW5nID0gdHJ1ZTtcblxuICBcdFx0Zm9yICh2YXIgb3JkZXIgPSB0aGlzLl9kcmF3Rmlyc3Q7IG9yZGVyOyBvcmRlciA9IG9yZGVyLm5leHQpIHtcbiAgXHRcdFx0bGF5ZXIgPSBvcmRlci5sYXllcjtcbiAgXHRcdFx0aWYgKCFib3VuZHMgfHwgKGxheWVyLl9weEJvdW5kcyAmJiBsYXllci5fcHhCb3VuZHMuaW50ZXJzZWN0cyhib3VuZHMpKSkge1xuICBcdFx0XHRcdGxheWVyLl91cGRhdGVQYXRoKCk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fZHJhd2luZyA9IGZhbHNlO1xuXG4gIFx0XHR0aGlzLl9jdHgucmVzdG9yZSgpOyAgLy8gUmVzdG9yZSBzdGF0ZSBiZWZvcmUgY2xpcHBpbmcuXG4gIFx0fSxcblxuICBcdF91cGRhdGVQb2x5OiBmdW5jdGlvbiAobGF5ZXIsIGNsb3NlZCkge1xuICBcdFx0aWYgKCF0aGlzLl9kcmF3aW5nKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgaSwgaiwgbGVuMiwgcCxcbiAgXHRcdCAgICBwYXJ0cyA9IGxheWVyLl9wYXJ0cyxcbiAgXHRcdCAgICBsZW4gPSBwYXJ0cy5sZW5ndGgsXG4gIFx0XHQgICAgY3R4ID0gdGhpcy5fY3R4O1xuXG4gIFx0XHRpZiAoIWxlbikgeyByZXR1cm47IH1cblxuICBcdFx0Y3R4LmJlZ2luUGF0aCgpO1xuXG4gIFx0XHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBhcnRzW2ldLmxlbmd0aDsgaiA8IGxlbjI7IGorKykge1xuICBcdFx0XHRcdHAgPSBwYXJ0c1tpXVtqXTtcbiAgXHRcdFx0XHRjdHhbaiA/ICdsaW5lVG8nIDogJ21vdmVUbyddKHAueCwgcC55KTtcbiAgXHRcdFx0fVxuICBcdFx0XHRpZiAoY2xvc2VkKSB7XG4gIFx0XHRcdFx0Y3R4LmNsb3NlUGF0aCgpO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2ZpbGxTdHJva2UoY3R4LCBsYXllcik7XG5cbiAgXHRcdC8vIFRPRE8gb3B0aW1pemF0aW9uOiAxIGZpbGwvc3Ryb2tlIGZvciBhbGwgZmVhdHVyZXMgd2l0aCBlcXVhbCBzdHlsZSBpbnN0ZWFkIG9mIDEgZm9yIGVhY2ggZmVhdHVyZVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlQ2lyY2xlOiBmdW5jdGlvbiAobGF5ZXIpIHtcblxuICBcdFx0aWYgKCF0aGlzLl9kcmF3aW5nIHx8IGxheWVyLl9lbXB0eSgpKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgcCA9IGxheWVyLl9wb2ludCxcbiAgXHRcdCAgICBjdHggPSB0aGlzLl9jdHgsXG4gIFx0XHQgICAgciA9IE1hdGgubWF4KE1hdGgucm91bmQobGF5ZXIuX3JhZGl1cyksIDEpLFxuICBcdFx0ICAgIHMgPSAoTWF0aC5tYXgoTWF0aC5yb3VuZChsYXllci5fcmFkaXVzWSksIDEpIHx8IHIpIC8gcjtcblxuICBcdFx0aWYgKHMgIT09IDEpIHtcbiAgXHRcdFx0Y3R4LnNhdmUoKTtcbiAgXHRcdFx0Y3R4LnNjYWxlKDEsIHMpO1xuICBcdFx0fVxuXG4gIFx0XHRjdHguYmVnaW5QYXRoKCk7XG4gIFx0XHRjdHguYXJjKHAueCwgcC55IC8gcywgciwgMCwgTWF0aC5QSSAqIDIsIGZhbHNlKTtcblxuICBcdFx0aWYgKHMgIT09IDEpIHtcbiAgXHRcdFx0Y3R4LnJlc3RvcmUoKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fZmlsbFN0cm9rZShjdHgsIGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X2ZpbGxTdHJva2U6IGZ1bmN0aW9uIChjdHgsIGxheWVyKSB7XG4gIFx0XHR2YXIgb3B0aW9ucyA9IGxheWVyLm9wdGlvbnM7XG5cbiAgXHRcdGlmIChvcHRpb25zLmZpbGwpIHtcbiAgXHRcdFx0Y3R4Lmdsb2JhbEFscGhhID0gb3B0aW9ucy5maWxsT3BhY2l0eTtcbiAgXHRcdFx0Y3R4LmZpbGxTdHlsZSA9IG9wdGlvbnMuZmlsbENvbG9yIHx8IG9wdGlvbnMuY29sb3I7XG4gIFx0XHRcdGN0eC5maWxsKG9wdGlvbnMuZmlsbFJ1bGUgfHwgJ2V2ZW5vZGQnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuc3Ryb2tlICYmIG9wdGlvbnMud2VpZ2h0ICE9PSAwKSB7XG4gIFx0XHRcdGlmIChjdHguc2V0TGluZURhc2gpIHtcbiAgXHRcdFx0XHRjdHguc2V0TGluZURhc2gobGF5ZXIub3B0aW9ucyAmJiBsYXllci5vcHRpb25zLl9kYXNoQXJyYXkgfHwgW10pO1xuICBcdFx0XHR9XG4gIFx0XHRcdGN0eC5nbG9iYWxBbHBoYSA9IG9wdGlvbnMub3BhY2l0eTtcbiAgXHRcdFx0Y3R4LmxpbmVXaWR0aCA9IG9wdGlvbnMud2VpZ2h0O1xuICBcdFx0XHRjdHguc3Ryb2tlU3R5bGUgPSBvcHRpb25zLmNvbG9yO1xuICBcdFx0XHRjdHgubGluZUNhcCA9IG9wdGlvbnMubGluZUNhcDtcbiAgXHRcdFx0Y3R4LmxpbmVKb2luID0gb3B0aW9ucy5saW5lSm9pbjtcbiAgXHRcdFx0Y3R4LnN0cm9rZSgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBDYW52YXMgb2J2aW91c2x5IGRvZXNuJ3QgaGF2ZSBtb3VzZSBldmVudHMgZm9yIGluZGl2aWR1YWwgZHJhd24gb2JqZWN0cyxcbiAgXHQvLyBzbyB3ZSBlbXVsYXRlIHRoYXQgYnkgY2FsY3VsYXRpbmcgd2hhdCdzIHVuZGVyIHRoZSBtb3VzZSBvbiBtb3VzZW1vdmUvY2xpY2sgbWFudWFsbHlcblxuICBcdF9vbkNsaWNrOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIHBvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZSksIGxheWVyLCBjbGlja2VkTGF5ZXI7XG5cbiAgXHRcdGZvciAodmFyIG9yZGVyID0gdGhpcy5fZHJhd0ZpcnN0OyBvcmRlcjsgb3JkZXIgPSBvcmRlci5uZXh0KSB7XG4gIFx0XHRcdGxheWVyID0gb3JkZXIubGF5ZXI7XG4gIFx0XHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlICYmIGxheWVyLl9jb250YWluc1BvaW50KHBvaW50KSkge1xuICBcdFx0XHRcdGlmICghKGUudHlwZSA9PT0gJ2NsaWNrJyB8fCBlLnR5cGUgPT09ICdwcmVjbGljaycpIHx8ICF0aGlzLl9tYXAuX2RyYWdnYWJsZU1vdmVkKGxheWVyKSkge1xuICBcdFx0XHRcdFx0Y2xpY2tlZExheWVyID0gbGF5ZXI7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHR0aGlzLl9maXJlRXZlbnQoY2xpY2tlZExheWVyID8gW2NsaWNrZWRMYXllcl0gOiBmYWxzZSwgZSk7XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghdGhpcy5fbWFwIHx8IHRoaXMuX21hcC5kcmFnZ2luZy5tb3ZpbmcoKSB8fCB0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBwb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9MYXllclBvaW50KGUpO1xuICBcdFx0dGhpcy5faGFuZGxlTW91c2VIb3ZlcihlLCBwb2ludCk7XG4gIFx0fSxcblxuXG4gIFx0X2hhbmRsZU1vdXNlT3V0OiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIGxheWVyID0gdGhpcy5faG92ZXJlZExheWVyO1xuICBcdFx0aWYgKGxheWVyKSB7XG4gIFx0XHRcdC8vIGlmIHdlJ3JlIGxlYXZpbmcgdGhlIGxheWVyLCBmaXJlIG1vdXNlb3V0XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcbiAgXHRcdFx0dGhpcy5fZmlyZUV2ZW50KFtsYXllcl0sIGUsICdtb3VzZW91dCcpO1xuICBcdFx0XHR0aGlzLl9ob3ZlcmVkTGF5ZXIgPSBudWxsO1xuICBcdFx0XHR0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkID0gZmFsc2U7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9oYW5kbGVNb3VzZUhvdmVyOiBmdW5jdGlvbiAoZSwgcG9pbnQpIHtcbiAgXHRcdGlmICh0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dmFyIGxheWVyLCBjYW5kaWRhdGVIb3ZlcmVkTGF5ZXI7XG5cbiAgXHRcdGZvciAodmFyIG9yZGVyID0gdGhpcy5fZHJhd0ZpcnN0OyBvcmRlcjsgb3JkZXIgPSBvcmRlci5uZXh0KSB7XG4gIFx0XHRcdGxheWVyID0gb3JkZXIubGF5ZXI7XG4gIFx0XHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlICYmIGxheWVyLl9jb250YWluc1BvaW50KHBvaW50KSkge1xuICBcdFx0XHRcdGNhbmRpZGF0ZUhvdmVyZWRMYXllciA9IGxheWVyO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChjYW5kaWRhdGVIb3ZlcmVkTGF5ZXIgIT09IHRoaXMuX2hvdmVyZWRMYXllcikge1xuICBcdFx0XHR0aGlzLl9oYW5kbGVNb3VzZU91dChlKTtcblxuICBcdFx0XHRpZiAoY2FuZGlkYXRlSG92ZXJlZExheWVyKSB7XG4gIFx0XHRcdFx0YWRkQ2xhc3ModGhpcy5fY29udGFpbmVyLCAnbGVhZmxldC1pbnRlcmFjdGl2ZScpOyAvLyBjaGFuZ2UgY3Vyc29yXG4gIFx0XHRcdFx0dGhpcy5fZmlyZUV2ZW50KFtjYW5kaWRhdGVIb3ZlcmVkTGF5ZXJdLCBlLCAnbW91c2VvdmVyJyk7XG4gIFx0XHRcdFx0dGhpcy5faG92ZXJlZExheWVyID0gY2FuZGlkYXRlSG92ZXJlZExheWVyO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2ZpcmVFdmVudCh0aGlzLl9ob3ZlcmVkTGF5ZXIgPyBbdGhpcy5faG92ZXJlZExheWVyXSA6IGZhbHNlLCBlKTtcblxuICBcdFx0dGhpcy5fbW91c2VIb3ZlclRocm90dGxlZCA9IHRydWU7XG4gIFx0XHRzZXRUaW1lb3V0KGJpbmQoZnVuY3Rpb24gKCkge1xuICBcdFx0XHR0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkID0gZmFsc2U7XG4gIFx0XHR9LCB0aGlzKSwgMzIpO1xuICBcdH0sXG5cbiAgXHRfZmlyZUV2ZW50OiBmdW5jdGlvbiAobGF5ZXJzLCBlLCB0eXBlKSB7XG4gIFx0XHR0aGlzLl9tYXAuX2ZpcmVET01FdmVudChlLCB0eXBlIHx8IGUudHlwZSwgbGF5ZXJzKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgb3JkZXIgPSBsYXllci5fb3JkZXI7XG5cbiAgXHRcdGlmICghb3JkZXIpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBuZXh0ID0gb3JkZXIubmV4dDtcbiAgXHRcdHZhciBwcmV2ID0gb3JkZXIucHJldjtcblxuICBcdFx0aWYgKG5leHQpIHtcbiAgXHRcdFx0bmV4dC5wcmV2ID0gcHJldjtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdC8vIEFscmVhZHkgbGFzdFxuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG4gIFx0XHRpZiAocHJldikge1xuICBcdFx0XHRwcmV2Lm5leHQgPSBuZXh0O1xuICBcdFx0fSBlbHNlIGlmIChuZXh0KSB7XG4gIFx0XHRcdC8vIFVwZGF0ZSBmaXJzdCBlbnRyeSB1bmxlc3MgdGhpcyBpcyB0aGVcbiAgXHRcdFx0Ly8gc2luZ2xlIGVudHJ5XG4gIFx0XHRcdHRoaXMuX2RyYXdGaXJzdCA9IG5leHQ7XG4gIFx0XHR9XG5cbiAgXHRcdG9yZGVyLnByZXYgPSB0aGlzLl9kcmF3TGFzdDtcbiAgXHRcdHRoaXMuX2RyYXdMYXN0Lm5leHQgPSBvcmRlcjtcblxuICBcdFx0b3JkZXIubmV4dCA9IG51bGw7XG4gIFx0XHR0aGlzLl9kcmF3TGFzdCA9IG9yZGVyO1xuXG4gIFx0XHR0aGlzLl9yZXF1ZXN0UmVkcmF3KGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9CYWNrOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBvcmRlciA9IGxheWVyLl9vcmRlcjtcblxuICBcdFx0aWYgKCFvcmRlcikgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIG5leHQgPSBvcmRlci5uZXh0O1xuICBcdFx0dmFyIHByZXYgPSBvcmRlci5wcmV2O1xuXG4gIFx0XHRpZiAocHJldikge1xuICBcdFx0XHRwcmV2Lm5leHQgPSBuZXh0O1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0Ly8gQWxyZWFkeSBmaXJzdFxuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG4gIFx0XHRpZiAobmV4dCkge1xuICBcdFx0XHRuZXh0LnByZXYgPSBwcmV2O1xuICBcdFx0fSBlbHNlIGlmIChwcmV2KSB7XG4gIFx0XHRcdC8vIFVwZGF0ZSBsYXN0IGVudHJ5IHVubGVzcyB0aGlzIGlzIHRoZVxuICBcdFx0XHQvLyBzaW5nbGUgZW50cnlcbiAgXHRcdFx0dGhpcy5fZHJhd0xhc3QgPSBwcmV2O1xuICBcdFx0fVxuXG4gIFx0XHRvcmRlci5wcmV2ID0gbnVsbDtcblxuICBcdFx0b3JkZXIubmV4dCA9IHRoaXMuX2RyYXdGaXJzdDtcbiAgXHRcdHRoaXMuX2RyYXdGaXJzdC5wcmV2ID0gb3JkZXI7XG4gIFx0XHR0aGlzLl9kcmF3Rmlyc3QgPSBvcmRlcjtcblxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fVxuICB9KTtcblxuICAvLyBAZmFjdG9yeSBMLmNhbnZhcyhvcHRpb25zPzogUmVuZGVyZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIENhbnZhcyByZW5kZXJlciB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBjYW52YXMob3B0aW9ucykge1xuICBcdHJldHVybiBCcm93c2VyLmNhbnZhcyA/IG5ldyBDYW52YXMob3B0aW9ucykgOiBudWxsO1xuICB9XG5cbiAgLypcbiAgICogVGhhbmtzIHRvIERtaXRyeSBCYXJhbm92c2t5IGFuZCBoaXMgUmFwaGFlbCBsaWJyYXJ5IGZvciBpbnNwaXJhdGlvbiFcbiAgICovXG5cblxuICB2YXIgdm1sQ3JlYXRlID0gKGZ1bmN0aW9uICgpIHtcbiAgXHR0cnkge1xuICBcdFx0ZG9jdW1lbnQubmFtZXNwYWNlcy5hZGQoJ2x2bWwnLCAndXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwnKTtcbiAgXHRcdHJldHVybiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0XHRyZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnPGx2bWw6JyArIG5hbWUgKyAnIGNsYXNzPVwibHZtbFwiPicpO1xuICBcdFx0fTtcbiAgXHR9IGNhdGNoIChlKSB7XG4gIFx0XHQvLyBEbyBub3QgcmV0dXJuIGZuIGZyb20gY2F0Y2ggYmxvY2sgc28gYGVgIGNhbiBiZSBnYXJiYWdlIGNvbGxlY3RlZFxuICBcdFx0Ly8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvcHVsbC83Mjc5XG4gIFx0fVxuICBcdHJldHVybiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJzwnICsgbmFtZSArICcgeG1sbnM9XCJ1cm46c2NoZW1hcy1taWNyb3NvZnQuY29tOnZtbFwiIGNsYXNzPVwibHZtbFwiPicpO1xuICBcdH07XG4gIH0pKCk7XG5cblxuICAvKlxuICAgKiBAY2xhc3MgU1ZHXG4gICAqXG4gICAqXG4gICAqIFZNTCB3YXMgZGVwcmVjYXRlZCBpbiAyMDEyLCB3aGljaCBtZWFucyBWTUwgZnVuY3Rpb25hbGl0eSBleGlzdHMgb25seSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICogd2l0aCBvbGQgdmVyc2lvbnMgb2YgSW50ZXJuZXQgRXhwbG9yZXIuXG4gICAqL1xuXG4gIC8vIG1peGluIHRvIHJlZGVmaW5lIHNvbWUgU1ZHIG1ldGhvZHMgdG8gaGFuZGxlIFZNTCBzeW50YXggd2hpY2ggaXMgc2ltaWxhciBidXQgd2l0aCBzb21lIGRpZmZlcmVuY2VzXG4gIHZhciB2bWxNaXhpbiA9IHtcblxuICBcdF9pbml0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9jb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgJ2xlYWZsZXQtdm1sLWNvbnRhaW5lcicpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwLl9hbmltYXRpbmdab29tKSB7IHJldHVybjsgfVxuICBcdFx0UmVuZGVyZXIucHJvdG90eXBlLl91cGRhdGUuY2FsbCh0aGlzKTtcbiAgXHRcdHRoaXMuZmlyZSgndXBkYXRlJyk7XG4gIFx0fSxcblxuICBcdF9pbml0UGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgY29udGFpbmVyID0gbGF5ZXIuX2NvbnRhaW5lciA9IHZtbENyZWF0ZSgnc2hhcGUnKTtcblxuICBcdFx0YWRkQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC12bWwtc2hhcGUgJyArICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lIHx8ICcnKSk7XG5cbiAgXHRcdGNvbnRhaW5lci5jb29yZHNpemUgPSAnMSAxJztcblxuICBcdFx0bGF5ZXIuX3BhdGggPSB2bWxDcmVhdGUoJ3BhdGgnKTtcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChsYXllci5fcGF0aCk7XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZVN0eWxlKGxheWVyKTtcbiAgXHRcdHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildID0gbGF5ZXI7XG4gIFx0fSxcblxuICBcdF9hZGRQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBjb250YWluZXIgPSBsYXllci5fY29udGFpbmVyO1xuICBcdFx0dGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XG5cbiAgXHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlKSB7XG4gIFx0XHRcdGxheWVyLmFkZEludGVyYWN0aXZlVGFyZ2V0KGNvbnRhaW5lcik7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZW1vdmVQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBjb250YWluZXIgPSBsYXllci5fY29udGFpbmVyO1xuICBcdFx0cmVtb3ZlKGNvbnRhaW5lcik7XG4gIFx0XHRsYXllci5yZW1vdmVJbnRlcmFjdGl2ZVRhcmdldChjb250YWluZXIpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlU3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHN0cm9rZSA9IGxheWVyLl9zdHJva2UsXG4gIFx0XHQgICAgZmlsbCA9IGxheWVyLl9maWxsLFxuICBcdFx0ICAgIG9wdGlvbnMgPSBsYXllci5vcHRpb25zLFxuICBcdFx0ICAgIGNvbnRhaW5lciA9IGxheWVyLl9jb250YWluZXI7XG5cbiAgXHRcdGNvbnRhaW5lci5zdHJva2VkID0gISFvcHRpb25zLnN0cm9rZTtcbiAgXHRcdGNvbnRhaW5lci5maWxsZWQgPSAhIW9wdGlvbnMuZmlsbDtcblxuICBcdFx0aWYgKG9wdGlvbnMuc3Ryb2tlKSB7XG4gIFx0XHRcdGlmICghc3Ryb2tlKSB7XG4gIFx0XHRcdFx0c3Ryb2tlID0gbGF5ZXIuX3N0cm9rZSA9IHZtbENyZWF0ZSgnc3Ryb2tlJyk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0Y29udGFpbmVyLmFwcGVuZENoaWxkKHN0cm9rZSk7XG4gIFx0XHRcdHN0cm9rZS53ZWlnaHQgPSBvcHRpb25zLndlaWdodCArICdweCc7XG4gIFx0XHRcdHN0cm9rZS5jb2xvciA9IG9wdGlvbnMuY29sb3I7XG4gIFx0XHRcdHN0cm9rZS5vcGFjaXR5ID0gb3B0aW9ucy5vcGFjaXR5O1xuXG4gIFx0XHRcdGlmIChvcHRpb25zLmRhc2hBcnJheSkge1xuICBcdFx0XHRcdHN0cm9rZS5kYXNoU3R5bGUgPSBpc0FycmF5KG9wdGlvbnMuZGFzaEFycmF5KSA/XG4gIFx0XHRcdFx0ICAgIG9wdGlvbnMuZGFzaEFycmF5LmpvaW4oJyAnKSA6XG4gIFx0XHRcdFx0ICAgIG9wdGlvbnMuZGFzaEFycmF5LnJlcGxhY2UoLyggKiwgKikvZywgJyAnKTtcbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRzdHJva2UuZGFzaFN0eWxlID0gJyc7XG4gIFx0XHRcdH1cbiAgXHRcdFx0c3Ryb2tlLmVuZGNhcCA9IG9wdGlvbnMubGluZUNhcC5yZXBsYWNlKCdidXR0JywgJ2ZsYXQnKTtcbiAgXHRcdFx0c3Ryb2tlLmpvaW5zdHlsZSA9IG9wdGlvbnMubGluZUpvaW47XG5cbiAgXHRcdH0gZWxzZSBpZiAoc3Ryb2tlKSB7XG4gIFx0XHRcdGNvbnRhaW5lci5yZW1vdmVDaGlsZChzdHJva2UpO1xuICBcdFx0XHRsYXllci5fc3Ryb2tlID0gbnVsbDtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuZmlsbCkge1xuICBcdFx0XHRpZiAoIWZpbGwpIHtcbiAgXHRcdFx0XHRmaWxsID0gbGF5ZXIuX2ZpbGwgPSB2bWxDcmVhdGUoJ2ZpbGwnKTtcbiAgXHRcdFx0fVxuICBcdFx0XHRjb250YWluZXIuYXBwZW5kQ2hpbGQoZmlsbCk7XG4gIFx0XHRcdGZpbGwuY29sb3IgPSBvcHRpb25zLmZpbGxDb2xvciB8fCBvcHRpb25zLmNvbG9yO1xuICBcdFx0XHRmaWxsLm9wYWNpdHkgPSBvcHRpb25zLmZpbGxPcGFjaXR5O1xuXG4gIFx0XHR9IGVsc2UgaWYgKGZpbGwpIHtcbiAgXHRcdFx0Y29udGFpbmVyLnJlbW92ZUNoaWxkKGZpbGwpO1xuICBcdFx0XHRsYXllci5fZmlsbCA9IG51bGw7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVDaXJjbGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHAgPSBsYXllci5fcG9pbnQucm91bmQoKSxcbiAgXHRcdCAgICByID0gTWF0aC5yb3VuZChsYXllci5fcmFkaXVzKSxcbiAgXHRcdCAgICByMiA9IE1hdGgucm91bmQobGF5ZXIuX3JhZGl1c1kgfHwgcik7XG5cbiAgXHRcdHRoaXMuX3NldFBhdGgobGF5ZXIsIGxheWVyLl9lbXB0eSgpID8gJ00wIDAnIDpcbiAgXHRcdFx0J0FMICcgKyBwLnggKyAnLCcgKyBwLnkgKyAnICcgKyByICsgJywnICsgcjIgKyAnIDAsJyArICg2NTUzNSAqIDM2MCkpO1xuICBcdH0sXG5cbiAgXHRfc2V0UGF0aDogZnVuY3Rpb24gKGxheWVyLCBwYXRoKSB7XG4gIFx0XHRsYXllci5fcGF0aC52ID0gcGF0aDtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0b0Zyb250KGxheWVyLl9jb250YWluZXIpO1xuICBcdH0sXG5cbiAgXHRfYnJpbmdUb0JhY2s6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dG9CYWNrKGxheWVyLl9jb250YWluZXIpO1xuICBcdH1cbiAgfTtcblxuICB2YXIgY3JlYXRlID0gQnJvd3Nlci52bWwgPyB2bWxDcmVhdGUgOiBzdmdDcmVhdGU7XG5cbiAgLypcbiAgICogQGNsYXNzIFNWR1xuICAgKiBAaW5oZXJpdHMgUmVuZGVyZXJcbiAgICogQGFrYSBMLlNWR1xuICAgKlxuICAgKiBBbGxvd3MgdmVjdG9yIGxheWVycyB0byBiZSBkaXNwbGF5ZWQgd2l0aCBbU1ZHXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcpLlxuICAgKiBJbmhlcml0cyBgUmVuZGVyZXJgLlxuICAgKlxuICAgKiBEdWUgdG8gW3RlY2huaWNhbCBsaW1pdGF0aW9uc10oaHR0cHM6Ly9jYW5pdXNlLmNvbS9zdmcpLCBTVkcgaXMgbm90XG4gICAqIGF2YWlsYWJsZSBpbiBhbGwgd2ViIGJyb3dzZXJzLCBub3RhYmx5IEFuZHJvaWQgMi54IGFuZCAzLnguXG4gICAqXG4gICAqIEFsdGhvdWdoIFNWRyBpcyBub3QgYXZhaWxhYmxlIG9uIElFNyBhbmQgSUU4LCB0aGVzZSBicm93c2VycyBzdXBwb3J0XG4gICAqIFtWTUxdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZlY3Rvcl9NYXJrdXBfTGFuZ3VhZ2UpXG4gICAqIChhIG5vdyBkZXByZWNhdGVkIHRlY2hub2xvZ3kpLCBhbmQgdGhlIFNWRyByZW5kZXJlciB3aWxsIGZhbGwgYmFjayB0byBWTUwgaW5cbiAgICogdGhpcyBjYXNlLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBVc2UgU1ZHIGJ5IGRlZmF1bHQgZm9yIGFsbCBwYXRocyBpbiB0aGUgbWFwOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbWFwID0gTC5tYXAoJ21hcCcsIHtcbiAgICogXHRyZW5kZXJlcjogTC5zdmcoKVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIFVzZSBhIFNWRyByZW5kZXJlciB3aXRoIGV4dHJhIHBhZGRpbmcgZm9yIHNwZWNpZmljIHZlY3RvciBnZW9tZXRyaWVzOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbWFwID0gTC5tYXAoJ21hcCcpO1xuICAgKiB2YXIgbXlSZW5kZXJlciA9IEwuc3ZnKHsgcGFkZGluZzogMC41IH0pO1xuICAgKiB2YXIgbGluZSA9IEwucG9seWxpbmUoIGNvb3JkaW5hdGVzLCB7IHJlbmRlcmVyOiBteVJlbmRlcmVyIH0gKTtcbiAgICogdmFyIGNpcmNsZSA9IEwuY2lyY2xlKCBjZW50ZXIsIHsgcmVuZGVyZXI6IG15UmVuZGVyZXIgfSApO1xuICAgKiBgYGBcbiAgICovXG5cbiAgdmFyIFNWRyA9IFJlbmRlcmVyLmV4dGVuZCh7XG5cbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlKCdzdmcnKTtcblxuICBcdFx0Ly8gbWFrZXMgaXQgcG9zc2libGUgdG8gY2xpY2sgdGhyb3VnaCBzdmcgcm9vdDsgd2UnbGwgcmVzZXQgaXQgYmFjayBpbiBpbmRpdmlkdWFsIHBhdGhzXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKCdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG5cbiAgXHRcdHRoaXMuX3Jvb3RHcm91cCA9IGNyZWF0ZSgnZycpO1xuICBcdFx0dGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuX3Jvb3RHcm91cCk7XG4gIFx0fSxcblxuICBcdF9kZXN0cm95Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZW1vdmUodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdG9mZih0aGlzLl9jb250YWluZXIpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2NvbnRhaW5lcjtcbiAgXHRcdGRlbGV0ZSB0aGlzLl9yb290R3JvdXA7XG4gIFx0XHRkZWxldGUgdGhpcy5fc3ZnU2l6ZTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX21hcC5fYW5pbWF0aW5nWm9vbSAmJiB0aGlzLl9ib3VuZHMpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdFJlbmRlcmVyLnByb3RvdHlwZS5fdXBkYXRlLmNhbGwodGhpcyk7XG5cbiAgXHRcdHZhciBiID0gdGhpcy5fYm91bmRzLFxuICBcdFx0ICAgIHNpemUgPSBiLmdldFNpemUoKSxcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXI7XG5cbiAgXHRcdC8vIHNldCBzaXplIG9mIHN2Zy1jb250YWluZXIgaWYgY2hhbmdlZFxuICBcdFx0aWYgKCF0aGlzLl9zdmdTaXplIHx8ICF0aGlzLl9zdmdTaXplLmVxdWFscyhzaXplKSkge1xuICBcdFx0XHR0aGlzLl9zdmdTaXplID0gc2l6ZTtcbiAgXHRcdFx0Y29udGFpbmVyLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCBzaXplLngpO1xuICBcdFx0XHRjb250YWluZXIuc2V0QXR0cmlidXRlKCdoZWlnaHQnLCBzaXplLnkpO1xuICBcdFx0fVxuXG4gIFx0XHQvLyBtb3ZlbWVudDogdXBkYXRlIGNvbnRhaW5lciB2aWV3Qm94IHNvIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBjaGFuZ2UgY29vcmRpbmF0ZXMgb2YgaW5kaXZpZHVhbCBsYXllcnNcbiAgXHRcdHNldFBvc2l0aW9uKGNvbnRhaW5lciwgYi5taW4pO1xuICBcdFx0Y29udGFpbmVyLnNldEF0dHJpYnV0ZSgndmlld0JveCcsIFtiLm1pbi54LCBiLm1pbi55LCBzaXplLngsIHNpemUueV0uam9pbignICcpKTtcblxuICBcdFx0dGhpcy5maXJlKCd1cGRhdGUnKTtcbiAgXHR9LFxuXG4gIFx0Ly8gbWV0aG9kcyBiZWxvdyBhcmUgY2FsbGVkIGJ5IHZlY3RvciBsYXllcnMgaW1wbGVtZW50YXRpb25zXG5cbiAgXHRfaW5pdFBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHBhdGggPSBsYXllci5fcGF0aCA9IGNyZWF0ZSgncGF0aCcpO1xuXG4gIFx0XHQvLyBAbmFtZXNwYWNlIFBhdGhcbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSBudWxsXG4gIFx0XHQvLyBDdXN0b20gY2xhc3MgbmFtZSBzZXQgb24gYW4gZWxlbWVudC4gT25seSBmb3IgU1ZHIHJlbmRlcmVyLlxuICBcdFx0aWYgKGxheWVyLm9wdGlvbnMuY2xhc3NOYW1lKSB7XG4gIFx0XHRcdGFkZENsYXNzKHBhdGgsIGxheWVyLm9wdGlvbnMuY2xhc3NOYW1lKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKGxheWVyLm9wdGlvbnMuaW50ZXJhY3RpdmUpIHtcbiAgXHRcdFx0YWRkQ2xhc3MocGF0aCwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fdXBkYXRlU3R5bGUobGF5ZXIpO1xuICBcdFx0dGhpcy5fbGF5ZXJzW3N0YW1wKGxheWVyKV0gPSBsYXllcjtcbiAgXHR9LFxuXG4gIFx0X2FkZFBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCF0aGlzLl9yb290R3JvdXApIHsgdGhpcy5faW5pdENvbnRhaW5lcigpOyB9XG4gIFx0XHR0aGlzLl9yb290R3JvdXAuYXBwZW5kQ2hpbGQobGF5ZXIuX3BhdGgpO1xuICBcdFx0bGF5ZXIuYWRkSW50ZXJhY3RpdmVUYXJnZXQobGF5ZXIuX3BhdGgpO1xuICBcdH0sXG5cbiAgXHRfcmVtb3ZlUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRyZW1vdmUobGF5ZXIuX3BhdGgpO1xuICBcdFx0bGF5ZXIucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQobGF5ZXIuX3BhdGgpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRsYXllci5fcHJvamVjdCgpO1xuICBcdFx0bGF5ZXIuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlU3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHBhdGggPSBsYXllci5fcGF0aCxcbiAgXHRcdCAgICBvcHRpb25zID0gbGF5ZXIub3B0aW9ucztcblxuICBcdFx0aWYgKCFwYXRoKSB7IHJldHVybjsgfVxuXG4gIFx0XHRpZiAob3B0aW9ucy5zdHJva2UpIHtcbiAgXHRcdFx0cGF0aC5zZXRBdHRyaWJ1dGUoJ3N0cm9rZScsIG9wdGlvbnMuY29sb3IpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLW9wYWNpdHknLCBvcHRpb25zLm9wYWNpdHkpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLXdpZHRoJywgb3B0aW9ucy53ZWlnaHQpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWxpbmVjYXAnLCBvcHRpb25zLmxpbmVDYXApO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWxpbmVqb2luJywgb3B0aW9ucy5saW5lSm9pbik7XG5cbiAgXHRcdFx0aWYgKG9wdGlvbnMuZGFzaEFycmF5KSB7XG4gIFx0XHRcdFx0cGF0aC5zZXRBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknLCBvcHRpb25zLmRhc2hBcnJheSk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cGF0aC5yZW1vdmVBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknKTtcbiAgXHRcdFx0fVxuXG4gIFx0XHRcdGlmIChvcHRpb25zLmRhc2hPZmZzZXQpIHtcbiAgXHRcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWRhc2hvZmZzZXQnLCBvcHRpb25zLmRhc2hPZmZzZXQpO1xuICBcdFx0XHR9IGVsc2Uge1xuICBcdFx0XHRcdHBhdGgucmVtb3ZlQXR0cmlidXRlKCdzdHJva2UtZGFzaG9mZnNldCcpO1xuICBcdFx0XHR9XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlJywgJ25vbmUnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuZmlsbCkge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsIG9wdGlvbnMuZmlsbENvbG9yIHx8IG9wdGlvbnMuY29sb3IpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbC1vcGFjaXR5Jywgb3B0aW9ucy5maWxsT3BhY2l0eSk7XG4gIFx0XHRcdHBhdGguc2V0QXR0cmlidXRlKCdmaWxsLXJ1bGUnLCBvcHRpb25zLmZpbGxSdWxlIHx8ICdldmVub2RkJyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsICdub25lJyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVQb2x5OiBmdW5jdGlvbiAobGF5ZXIsIGNsb3NlZCkge1xuICBcdFx0dGhpcy5fc2V0UGF0aChsYXllciwgcG9pbnRzVG9QYXRoKGxheWVyLl9wYXJ0cywgY2xvc2VkKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVDaXJjbGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHAgPSBsYXllci5fcG9pbnQsXG4gIFx0XHQgICAgciA9IE1hdGgubWF4KE1hdGgucm91bmQobGF5ZXIuX3JhZGl1cyksIDEpLFxuICBcdFx0ICAgIHIyID0gTWF0aC5tYXgoTWF0aC5yb3VuZChsYXllci5fcmFkaXVzWSksIDEpIHx8IHIsXG4gIFx0XHQgICAgYXJjID0gJ2EnICsgciArICcsJyArIHIyICsgJyAwIDEsMCAnO1xuXG4gIFx0XHQvLyBkcmF3aW5nIGEgY2lyY2xlIHdpdGggdHdvIGhhbGYtYXJjc1xuICBcdFx0dmFyIGQgPSBsYXllci5fZW1wdHkoKSA/ICdNMCAwJyA6XG4gIFx0XHRcdCdNJyArIChwLnggLSByKSArICcsJyArIHAueSArXG4gIFx0XHRcdGFyYyArIChyICogMikgKyAnLDAgJyArXG4gIFx0XHRcdGFyYyArICgtciAqIDIpICsgJywwICc7XG5cbiAgXHRcdHRoaXMuX3NldFBhdGgobGF5ZXIsIGQpO1xuICBcdH0sXG5cbiAgXHRfc2V0UGF0aDogZnVuY3Rpb24gKGxheWVyLCBwYXRoKSB7XG4gIFx0XHRsYXllci5fcGF0aC5zZXRBdHRyaWJ1dGUoJ2QnLCBwYXRoKTtcbiAgXHR9LFxuXG4gIFx0Ly8gU1ZHIGRvZXMgbm90IGhhdmUgdGhlIGNvbmNlcHQgb2YgekluZGV4IHNvIHdlIHJlc29ydCB0byBjaGFuZ2luZyB0aGUgRE9NIG9yZGVyIG9mIGVsZW1lbnRzXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0b0Zyb250KGxheWVyLl9wYXRoKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9CYWNrOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHRvQmFjayhsYXllci5fcGF0aCk7XG4gIFx0fVxuICB9KTtcblxuICBpZiAoQnJvd3Nlci52bWwpIHtcbiAgXHRTVkcuaW5jbHVkZSh2bWxNaXhpbik7XG4gIH1cblxuICAvLyBAbmFtZXNwYWNlIFNWR1xuICAvLyBAZmFjdG9yeSBMLnN2ZyhvcHRpb25zPzogUmVuZGVyZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIFNWRyByZW5kZXJlciB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBzdmcob3B0aW9ucykge1xuICBcdHJldHVybiBCcm93c2VyLnN2ZyB8fCBCcm93c2VyLnZtbCA/IG5ldyBTVkcob3B0aW9ucykgOiBudWxsO1xuICB9XG5cbiAgTWFwLmluY2x1ZGUoe1xuICBcdC8vIEBuYW1lc3BhY2UgTWFwOyBAbWV0aG9kIGdldFJlbmRlcmVyKGxheWVyOiBQYXRoKTogUmVuZGVyZXJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBgUmVuZGVyZXJgIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gcmVuZGVyIHRoZSBnaXZlblxuICBcdC8vIGBQYXRoYC4gSXQgd2lsbCBlbnN1cmUgdGhhdCB0aGUgYHJlbmRlcmVyYCBvcHRpb25zIG9mIHRoZSBtYXAgYW5kIHBhdGhzXG4gIFx0Ly8gYXJlIHJlc3BlY3RlZCwgYW5kIHRoYXQgdGhlIHJlbmRlcmVycyBkbyBleGlzdCBvbiB0aGUgbWFwLlxuICBcdGdldFJlbmRlcmVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdC8vIEBuYW1lc3BhY2UgUGF0aDsgQG9wdGlvbiByZW5kZXJlcjogUmVuZGVyZXJcbiAgXHRcdC8vIFVzZSB0aGlzIHNwZWNpZmljIGluc3RhbmNlIG9mIGBSZW5kZXJlcmAgZm9yIHRoaXMgcGF0aC4gVGFrZXNcbiAgXHRcdC8vIHByZWNlZGVuY2Ugb3ZlciB0aGUgbWFwJ3MgW2RlZmF1bHQgcmVuZGVyZXJdKCNtYXAtcmVuZGVyZXIpLlxuICBcdFx0dmFyIHJlbmRlcmVyID0gbGF5ZXIub3B0aW9ucy5yZW5kZXJlciB8fCB0aGlzLl9nZXRQYW5lUmVuZGVyZXIobGF5ZXIub3B0aW9ucy5wYW5lKSB8fCB0aGlzLm9wdGlvbnMucmVuZGVyZXIgfHwgdGhpcy5fcmVuZGVyZXI7XG5cbiAgXHRcdGlmICghcmVuZGVyZXIpIHtcbiAgXHRcdFx0cmVuZGVyZXIgPSB0aGlzLl9yZW5kZXJlciA9IHRoaXMuX2NyZWF0ZVJlbmRlcmVyKCk7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5oYXNMYXllcihyZW5kZXJlcikpIHtcbiAgXHRcdFx0dGhpcy5hZGRMYXllcihyZW5kZXJlcik7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gcmVuZGVyZXI7XG4gIFx0fSxcblxuICBcdF9nZXRQYW5lUmVuZGVyZXI6IGZ1bmN0aW9uIChuYW1lKSB7XG4gIFx0XHRpZiAobmFtZSA9PT0gJ292ZXJsYXlQYW5lJyB8fCBuYW1lID09PSB1bmRlZmluZWQpIHtcbiAgXHRcdFx0cmV0dXJuIGZhbHNlO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgcmVuZGVyZXIgPSB0aGlzLl9wYW5lUmVuZGVyZXJzW25hbWVdO1xuICBcdFx0aWYgKHJlbmRlcmVyID09PSB1bmRlZmluZWQpIHtcbiAgXHRcdFx0cmVuZGVyZXIgPSB0aGlzLl9jcmVhdGVSZW5kZXJlcih7cGFuZTogbmFtZX0pO1xuICBcdFx0XHR0aGlzLl9wYW5lUmVuZGVyZXJzW25hbWVdID0gcmVuZGVyZXI7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gcmVuZGVyZXI7XG4gIFx0fSxcblxuICBcdF9jcmVhdGVSZW5kZXJlcjogZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwOyBAb3B0aW9uIHByZWZlckNhbnZhczogQm9vbGVhbiA9IGZhbHNlXG4gIFx0XHQvLyBXaGV0aGVyIGBQYXRoYHMgc2hvdWxkIGJlIHJlbmRlcmVkIG9uIGEgYENhbnZhc2AgcmVuZGVyZXIuXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBhbGwgYFBhdGhgcyBhcmUgcmVuZGVyZWQgaW4gYSBgU1ZHYCByZW5kZXJlci5cbiAgXHRcdHJldHVybiAodGhpcy5vcHRpb25zLnByZWZlckNhbnZhcyAmJiBjYW52YXMob3B0aW9ucykpIHx8IHN2ZyhvcHRpb25zKTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXG4gICAqIEwuUmVjdGFuZ2xlIGV4dGVuZHMgUG9seWdvbiBhbmQgY3JlYXRlcyBhIHJlY3RhbmdsZSB3aGVuIHBhc3NlZCBhIExhdExuZ0JvdW5kcyBvYmplY3QuXG4gICAqL1xuXG4gIC8qXG4gICAqIEBjbGFzcyBSZWN0YW5nbGVcbiAgICogQGFrYSBMLlJlY3RhbmdsZVxuICAgKiBAaW5oZXJpdHMgUG9seWdvblxuICAgKlxuICAgKiBBIGNsYXNzIGZvciBkcmF3aW5nIHJlY3RhbmdsZSBvdmVybGF5cyBvbiBhIG1hcC4gRXh0ZW5kcyBgUG9seWdvbmAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGRlZmluZSByZWN0YW5nbGUgZ2VvZ3JhcGhpY2FsIGJvdW5kc1xuICAgKiB2YXIgYm91bmRzID0gW1s1NC41NTkzMjIsIC01Ljc2NzgyMl0sIFs1Ni4xMjEwNjA0LCAtMy4wMjEyNDBdXTtcbiAgICpcbiAgICogLy8gY3JlYXRlIGFuIG9yYW5nZSByZWN0YW5nbGVcbiAgICogTC5yZWN0YW5nbGUoYm91bmRzLCB7Y29sb3I6IFwiI2ZmNzgwMFwiLCB3ZWlnaHQ6IDF9KS5hZGRUbyhtYXApO1xuICAgKlxuICAgKiAvLyB6b29tIHRoZSBtYXAgdG8gdGhlIHJlY3RhbmdsZSBib3VuZHNcbiAgICogbWFwLmZpdEJvdW5kcyhib3VuZHMpO1xuICAgKiBgYGBcbiAgICpcbiAgICovXG5cblxuICB2YXIgUmVjdGFuZ2xlID0gUG9seWdvbi5leHRlbmQoe1xuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChsYXRMbmdCb3VuZHMsIG9wdGlvbnMpIHtcbiAgXHRcdFBvbHlnb24ucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLCB0aGlzLl9ib3VuZHNUb0xhdExuZ3MobGF0TG5nQm91bmRzKSwgb3B0aW9ucyk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0Qm91bmRzKGxhdExuZ0JvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xuICBcdC8vIFJlZHJhd3MgdGhlIHJlY3RhbmdsZSB3aXRoIHRoZSBwYXNzZWQgYm91bmRzLlxuICBcdHNldEJvdW5kczogZnVuY3Rpb24gKGxhdExuZ0JvdW5kcykge1xuICBcdFx0cmV0dXJuIHRoaXMuc2V0TGF0TG5ncyh0aGlzLl9ib3VuZHNUb0xhdExuZ3MobGF0TG5nQm91bmRzKSk7XG4gIFx0fSxcblxuICBcdF9ib3VuZHNUb0xhdExuZ3M6IGZ1bmN0aW9uIChsYXRMbmdCb3VuZHMpIHtcbiAgXHRcdGxhdExuZ0JvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGxhdExuZ0JvdW5kcyk7XG4gIFx0XHRyZXR1cm4gW1xuICBcdFx0XHRsYXRMbmdCb3VuZHMuZ2V0U291dGhXZXN0KCksXG4gIFx0XHRcdGxhdExuZ0JvdW5kcy5nZXROb3J0aFdlc3QoKSxcbiAgXHRcdFx0bGF0TG5nQm91bmRzLmdldE5vcnRoRWFzdCgpLFxuICBcdFx0XHRsYXRMbmdCb3VuZHMuZ2V0U291dGhFYXN0KClcbiAgXHRcdF07XG4gIFx0fVxuICB9KTtcblxuXG4gIC8vIEBmYWN0b3J5IEwucmVjdGFuZ2xlKGxhdExuZ0JvdW5kczogTGF0TG5nQm91bmRzLCBvcHRpb25zPzogUG9seWxpbmUgb3B0aW9ucylcbiAgZnVuY3Rpb24gcmVjdGFuZ2xlKGxhdExuZ0JvdW5kcywgb3B0aW9ucykge1xuICBcdHJldHVybiBuZXcgUmVjdGFuZ2xlKGxhdExuZ0JvdW5kcywgb3B0aW9ucyk7XG4gIH1cblxuICBTVkcuY3JlYXRlID0gY3JlYXRlO1xuICBTVkcucG9pbnRzVG9QYXRoID0gcG9pbnRzVG9QYXRoO1xuXG4gIEdlb0pTT04uZ2VvbWV0cnlUb0xheWVyID0gZ2VvbWV0cnlUb0xheWVyO1xuICBHZW9KU09OLmNvb3Jkc1RvTGF0TG5nID0gY29vcmRzVG9MYXRMbmc7XG4gIEdlb0pTT04uY29vcmRzVG9MYXRMbmdzID0gY29vcmRzVG9MYXRMbmdzO1xuICBHZW9KU09OLmxhdExuZ1RvQ29vcmRzID0gbGF0TG5nVG9Db29yZHM7XG4gIEdlb0pTT04ubGF0TG5nc1RvQ29vcmRzID0gbGF0TG5nc1RvQ29vcmRzO1xuICBHZW9KU09OLmdldEZlYXR1cmUgPSBnZXRGZWF0dXJlO1xuICBHZW9KU09OLmFzRmVhdHVyZSA9IGFzRmVhdHVyZTtcblxuICAvKlxuICAgKiBMLkhhbmRsZXIuQm94Wm9vbSBpcyB1c2VkIHRvIGFkZCBzaGlmdC1kcmFnIHpvb20gaW50ZXJhY3Rpb24gdG8gdGhlIG1hcFxuICAgKiAoem9vbSB0byBhIHNlbGVjdGVkIGJvdW5kaW5nIGJveCksIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuICBNYXAubWVyZ2VPcHRpb25zKHtcbiAgXHQvLyBAb3B0aW9uIGJveFpvb206IEJvb2xlYW4gPSB0cnVlXG4gIFx0Ly8gV2hldGhlciB0aGUgbWFwIGNhbiBiZSB6b29tZWQgdG8gYSByZWN0YW5ndWxhciBhcmVhIHNwZWNpZmllZCBieVxuICBcdC8vIGRyYWdnaW5nIHRoZSBtb3VzZSB3aGlsZSBwcmVzc2luZyB0aGUgc2hpZnQga2V5LlxuICBcdGJveFpvb206IHRydWVcbiAgfSk7XG5cbiAgdmFyIEJveFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dGhpcy5fbWFwID0gbWFwO1xuICBcdFx0dGhpcy5fY29udGFpbmVyID0gbWFwLl9jb250YWluZXI7XG4gIFx0XHR0aGlzLl9wYW5lID0gbWFwLl9wYW5lcy5vdmVybGF5UGFuZTtcbiAgXHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcbiAgXHRcdG1hcC5vbigndW5sb2FkJywgdGhpcy5fZGVzdHJveSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdGFkZEhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRvbih0aGlzLl9jb250YWluZXIsICdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlRG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRvZmYodGhpcy5fY29udGFpbmVyLCAnbW91c2Vkb3duJywgdGhpcy5fb25Nb3VzZURvd24sIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRtb3ZlZDogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX21vdmVkO1xuICBcdH0sXG5cbiAgXHRfZGVzdHJveTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmVtb3ZlKHRoaXMuX3BhbmUpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX3BhbmU7XG4gIFx0fSxcblxuICBcdF9yZXNldFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XG4gIFx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xuICBcdH0sXG5cbiAgXHRfY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9yZXNldFN0YXRlVGltZW91dCAhPT0gMCkge1xuICBcdFx0XHRjbGVhclRpbWVvdXQodGhpcy5fcmVzZXRTdGF0ZVRpbWVvdXQpO1xuICBcdFx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlRG93bjogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghZS5zaGlmdEtleSB8fCAoKGUud2hpY2ggIT09IDEpICYmIChlLmJ1dHRvbiAhPT0gMSkpKSB7IHJldHVybiBmYWxzZTsgfVxuXG4gIFx0XHQvLyBDbGVhciB0aGUgZGVmZXJyZWQgcmVzZXRTdGF0ZSBpZiBpdCBoYXNuJ3QgZXhlY3V0ZWQgeWV0LCBvdGhlcndpc2UgaXRcbiAgXHRcdC8vIHdpbGwgaW50ZXJydXB0IHRoZSBpbnRlcmFjdGlvbiBhbmQgb3JwaGFuIGEgYm94IGVsZW1lbnQgaW4gdGhlIGNvbnRhaW5lci5cbiAgXHRcdHRoaXMuX2NsZWFyRGVmZXJyZWRSZXNldFN0YXRlKCk7XG4gIFx0XHR0aGlzLl9yZXNldFN0YXRlKCk7XG5cbiAgXHRcdGRpc2FibGVUZXh0U2VsZWN0aW9uKCk7XG4gIFx0XHRkaXNhYmxlSW1hZ2VEcmFnKCk7XG5cbiAgXHRcdHRoaXMuX3N0YXJ0UG9pbnQgPSB0aGlzLl9tYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZSk7XG5cbiAgXHRcdG9uKGRvY3VtZW50LCB7XG4gIFx0XHRcdGNvbnRleHRtZW51OiBzdG9wLFxuICBcdFx0XHRtb3VzZW1vdmU6IHRoaXMuX29uTW91c2VNb3ZlLFxuICBcdFx0XHRtb3VzZXVwOiB0aGlzLl9vbk1vdXNlVXAsXG4gIFx0XHRcdGtleWRvd246IHRoaXMuX29uS2V5RG93blxuICBcdFx0fSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0dGhpcy5fbW92ZWQgPSB0cnVlO1xuXG4gIFx0XHRcdHRoaXMuX2JveCA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC16b29tLWJveCcsIHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XG5cbiAgXHRcdFx0dGhpcy5fbWFwLmZpcmUoJ2JveHpvb21zdGFydCcpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9wb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlKTtcblxuICBcdFx0dmFyIGJvdW5kcyA9IG5ldyBCb3VuZHModGhpcy5fcG9pbnQsIHRoaXMuX3N0YXJ0UG9pbnQpLFxuICBcdFx0ICAgIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xuXG4gIFx0XHRzZXRQb3NpdGlvbih0aGlzLl9ib3gsIGJvdW5kcy5taW4pO1xuXG4gIFx0XHR0aGlzLl9ib3guc3R5bGUud2lkdGggID0gc2l6ZS54ICsgJ3B4JztcbiAgXHRcdHRoaXMuX2JveC5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xuICBcdH0sXG5cbiAgXHRfZmluaXNoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2JveCk7XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XG4gIFx0XHR9XG5cbiAgXHRcdGVuYWJsZVRleHRTZWxlY3Rpb24oKTtcbiAgXHRcdGVuYWJsZUltYWdlRHJhZygpO1xuXG4gIFx0XHRvZmYoZG9jdW1lbnQsIHtcbiAgXHRcdFx0Y29udGV4dG1lbnU6IHN0b3AsXG4gIFx0XHRcdG1vdXNlbW92ZTogdGhpcy5fb25Nb3VzZU1vdmUsXG4gIFx0XHRcdG1vdXNldXA6IHRoaXMuX29uTW91c2VVcCxcbiAgXHRcdFx0a2V5ZG93bjogdGhpcy5fb25LZXlEb3duXG4gIFx0XHR9LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW91c2VVcDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICgoZS53aGljaCAhPT0gMSkgJiYgKGUuYnV0dG9uICE9PSAxKSkgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fZmluaXNoKCk7XG5cbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHsgcmV0dXJuOyB9XG4gIFx0XHQvLyBQb3N0cG9uZSB0byBuZXh0IEpTIHRpY2sgc28gaW50ZXJuYWwgY2xpY2sgZXZlbnQgaGFuZGxpbmdcbiAgXHRcdC8vIHN0aWxsIHNlZSBpdCBhcyBcIm1vdmVkXCIuXG4gIFx0XHR0aGlzLl9jbGVhckRlZmVycmVkUmVzZXRTdGF0ZSgpO1xuICBcdFx0dGhpcy5fcmVzZXRTdGF0ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQodGhpcy5fcmVzZXRTdGF0ZSwgdGhpcyksIDApO1xuXG4gIFx0XHR2YXIgYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcyhcbiAgXHRcdCAgICAgICAgdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcodGhpcy5fc3RhcnRQb2ludCksXG4gIFx0XHQgICAgICAgIHRoaXMuX21hcC5jb250YWluZXJQb2ludFRvTGF0TG5nKHRoaXMuX3BvaW50KSk7XG5cbiAgXHRcdHRoaXMuX21hcFxuICBcdFx0XHQuZml0Qm91bmRzKGJvdW5kcylcbiAgXHRcdFx0LmZpcmUoJ2JveHpvb21lbmQnLCB7Ym94Wm9vbUJvdW5kczogYm91bmRzfSk7XG4gIFx0fSxcblxuICBcdF9vbktleURvd246IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoZS5rZXlDb2RlID09PSAyNykge1xuICBcdFx0XHR0aGlzLl9maW5pc2goKTtcbiAgXHRcdFx0dGhpcy5fY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGUoKTtcbiAgXHRcdFx0dGhpcy5fcmVzZXRTdGF0ZSgpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IGJveFpvb206IEhhbmRsZXJcbiAgLy8gQm94IChzaGlmdC1kcmFnIHdpdGggbW91c2UpIHpvb20gaGFuZGxlci5cbiAgTWFwLmFkZEluaXRIb29rKCdhZGRIYW5kbGVyJywgJ2JveFpvb20nLCBCb3hab29tKTtcblxuICAvKlxuICAgKiBMLkhhbmRsZXIuRG91YmxlQ2xpY2tab29tIGlzIHVzZWQgdG8gaGFuZGxlIGRvdWJsZS1jbGljayB6b29tIG9uIHRoZSBtYXAsIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBvcHRpb24gZG91YmxlQ2xpY2tab29tOiBCb29sZWFufFN0cmluZyA9IHRydWVcbiAgXHQvLyBXaGV0aGVyIHRoZSBtYXAgY2FuIGJlIHpvb21lZCBpbiBieSBkb3VibGUgY2xpY2tpbmcgb24gaXQgYW5kXG4gIFx0Ly8gem9vbWVkIG91dCBieSBkb3VibGUgY2xpY2tpbmcgd2hpbGUgaG9sZGluZyBzaGlmdC4gSWYgcGFzc2VkXG4gIFx0Ly8gYCdjZW50ZXInYCwgZG91YmxlLWNsaWNrIHpvb20gd2lsbCB6b29tIHRvIHRoZSBjZW50ZXIgb2YgdGhlXG4gIFx0Ly8gIHZpZXcgcmVnYXJkbGVzcyBvZiB3aGVyZSB0aGUgbW91c2Ugd2FzLlxuICBcdGRvdWJsZUNsaWNrWm9vbTogdHJ1ZVxuICB9KTtcblxuICB2YXIgRG91YmxlQ2xpY2tab29tID0gSGFuZGxlci5leHRlbmQoe1xuICBcdGFkZEhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9tYXAub24oJ2RibGNsaWNrJywgdGhpcy5fb25Eb3VibGVDbGljaywgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9tYXAub2ZmKCdkYmxjbGljaycsIHRoaXMuX29uRG91YmxlQ2xpY2ssIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Eb3VibGVDbGljazogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgb2xkWm9vbSA9IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgZGVsdGEgPSBtYXAub3B0aW9ucy56b29tRGVsdGEsXG4gIFx0XHQgICAgem9vbSA9IGUub3JpZ2luYWxFdmVudC5zaGlmdEtleSA/IG9sZFpvb20gLSBkZWx0YSA6IG9sZFpvb20gKyBkZWx0YTtcblxuICBcdFx0aWYgKG1hcC5vcHRpb25zLmRvdWJsZUNsaWNrWm9vbSA9PT0gJ2NlbnRlcicpIHtcbiAgXHRcdFx0bWFwLnNldFpvb20oem9vbSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRtYXAuc2V0Wm9vbUFyb3VuZChlLmNvbnRhaW5lclBvaW50LCB6b29tKTtcbiAgXHRcdH1cbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBzZWN0aW9uIEhhbmRsZXJzXG4gIC8vXG4gIC8vIE1hcCBwcm9wZXJ0aWVzIGluY2x1ZGUgaW50ZXJhY3Rpb24gaGFuZGxlcnMgdGhhdCBhbGxvdyB5b3UgdG8gY29udHJvbFxuICAvLyBpbnRlcmFjdGlvbiBiZWhhdmlvciBpbiBydW50aW1lLCBlbmFibGluZyBvciBkaXNhYmxpbmcgY2VydGFpbiBmZWF0dXJlcyBzdWNoXG4gIC8vIGFzIGRyYWdnaW5nIG9yIHRvdWNoIHpvb20gKHNlZSBgSGFuZGxlcmAgbWV0aG9kcykuIEZvciBleGFtcGxlOlxuICAvL1xuICAvLyBgYGBqc1xuICAvLyBtYXAuZG91YmxlQ2xpY2tab29tLmRpc2FibGUoKTtcbiAgLy8gYGBgXG4gIC8vXG4gIC8vIEBwcm9wZXJ0eSBkb3VibGVDbGlja1pvb206IEhhbmRsZXJcbiAgLy8gRG91YmxlIGNsaWNrIHpvb20gaGFuZGxlci5cbiAgTWFwLmFkZEluaXRIb29rKCdhZGRIYW5kbGVyJywgJ2RvdWJsZUNsaWNrWm9vbScsIERvdWJsZUNsaWNrWm9vbSk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLk1hcERyYWcgaXMgdXNlZCB0byBtYWtlIHRoZSBtYXAgZHJhZ2dhYmxlICh3aXRoIHBhbm5pbmcgaW5lcnRpYSksIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuICBNYXAubWVyZ2VPcHRpb25zKHtcbiAgXHQvLyBAb3B0aW9uIGRyYWdnaW5nOiBCb29sZWFuID0gdHJ1ZVxuICBcdC8vIFdoZXRoZXIgdGhlIG1hcCBpcyBkcmFnZ2FibGUgd2l0aCBtb3VzZS90b3VjaCBvciBub3QuXG4gIFx0ZHJhZ2dpbmc6IHRydWUsXG5cbiAgXHQvLyBAc2VjdGlvbiBQYW5uaW5nIEluZXJ0aWEgT3B0aW9uc1xuICBcdC8vIEBvcHRpb24gaW5lcnRpYTogQm9vbGVhbiA9ICpcbiAgXHQvLyBJZiBlbmFibGVkLCBwYW5uaW5nIG9mIHRoZSBtYXAgd2lsbCBoYXZlIGFuIGluZXJ0aWEgZWZmZWN0IHdoZXJlXG4gIFx0Ly8gdGhlIG1hcCBidWlsZHMgbW9tZW50dW0gd2hpbGUgZHJhZ2dpbmcgYW5kIGNvbnRpbnVlcyBtb3ZpbmcgaW5cbiAgXHQvLyB0aGUgc2FtZSBkaXJlY3Rpb24gZm9yIHNvbWUgdGltZS4gRmVlbHMgZXNwZWNpYWxseSBuaWNlIG9uIHRvdWNoXG4gIFx0Ly8gZGV2aWNlcy4gRW5hYmxlZCBieSBkZWZhdWx0LlxuICBcdGluZXJ0aWE6IHRydWUsXG5cbiAgXHQvLyBAb3B0aW9uIGluZXJ0aWFEZWNlbGVyYXRpb246IE51bWJlciA9IDMwMDBcbiAgXHQvLyBUaGUgcmF0ZSB3aXRoIHdoaWNoIHRoZSBpbmVydGlhbCBtb3ZlbWVudCBzbG93cyBkb3duLCBpbiBwaXhlbHMvc2Vjb25kwrIuXG4gIFx0aW5lcnRpYURlY2VsZXJhdGlvbjogMzQwMCwgLy8gcHgvc14yXG5cbiAgXHQvLyBAb3B0aW9uIGluZXJ0aWFNYXhTcGVlZDogTnVtYmVyID0gSW5maW5pdHlcbiAgXHQvLyBNYXggc3BlZWQgb2YgdGhlIGluZXJ0aWFsIG1vdmVtZW50LCBpbiBwaXhlbHMvc2Vjb25kLlxuICBcdGluZXJ0aWFNYXhTcGVlZDogSW5maW5pdHksIC8vIHB4L3NcblxuICBcdC8vIEBvcHRpb24gZWFzZUxpbmVhcml0eTogTnVtYmVyID0gMC4yXG4gIFx0ZWFzZUxpbmVhcml0eTogMC4yLFxuXG4gIFx0Ly8gVE9ETyByZWZhY3RvciwgbW92ZSB0byBDUlNcbiAgXHQvLyBAb3B0aW9uIHdvcmxkQ29weUp1bXA6IEJvb2xlYW4gPSBmYWxzZVxuICBcdC8vIFdpdGggdGhpcyBvcHRpb24gZW5hYmxlZCwgdGhlIG1hcCB0cmFja3Mgd2hlbiB5b3UgcGFuIHRvIGFub3RoZXIgXCJjb3B5XCJcbiAgXHQvLyBvZiB0aGUgd29ybGQgYW5kIHNlYW1sZXNzbHkganVtcHMgdG8gdGhlIG9yaWdpbmFsIG9uZSBzbyB0aGF0IGFsbCBvdmVybGF5c1xuICBcdC8vIGxpa2UgbWFya2VycyBhbmQgdmVjdG9yIGxheWVycyBhcmUgc3RpbGwgdmlzaWJsZS5cbiAgXHR3b3JsZENvcHlKdW1wOiBmYWxzZSxcblxuICBcdC8vIEBvcHRpb24gbWF4Qm91bmRzVmlzY29zaXR5OiBOdW1iZXIgPSAwLjBcbiAgXHQvLyBJZiBgbWF4Qm91bmRzYCBpcyBzZXQsIHRoaXMgb3B0aW9uIHdpbGwgY29udHJvbCBob3cgc29saWQgdGhlIGJvdW5kc1xuICBcdC8vIGFyZSB3aGVuIGRyYWdnaW5nIHRoZSBtYXAgYXJvdW5kLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiBgMC4wYCBhbGxvd3MgdGhlXG4gIFx0Ly8gdXNlciB0byBkcmFnIG91dHNpZGUgdGhlIGJvdW5kcyBhdCBub3JtYWwgc3BlZWQsIGhpZ2hlciB2YWx1ZXMgd2lsbFxuICBcdC8vIHNsb3cgZG93biBtYXAgZHJhZ2dpbmcgb3V0c2lkZSBib3VuZHMsIGFuZCBgMS4wYCBtYWtlcyB0aGUgYm91bmRzIGZ1bGx5XG4gIFx0Ly8gc29saWQsIHByZXZlbnRpbmcgdGhlIHVzZXIgZnJvbSBkcmFnZ2luZyBvdXRzaWRlIHRoZSBib3VuZHMuXG4gIFx0bWF4Qm91bmRzVmlzY29zaXR5OiAwLjBcbiAgfSk7XG5cbiAgdmFyIERyYWcgPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fZHJhZ2dhYmxlKSB7XG4gIFx0XHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XG5cbiAgXHRcdFx0dGhpcy5fZHJhZ2dhYmxlID0gbmV3IERyYWdnYWJsZShtYXAuX21hcFBhbmUsIG1hcC5fY29udGFpbmVyKTtcblxuICBcdFx0XHR0aGlzLl9kcmFnZ2FibGUub24oe1xuICBcdFx0XHRcdGRyYWdzdGFydDogdGhpcy5fb25EcmFnU3RhcnQsXG4gIFx0XHRcdFx0ZHJhZzogdGhpcy5fb25EcmFnLFxuICBcdFx0XHRcdGRyYWdlbmQ6IHRoaXMuX29uRHJhZ0VuZFxuICBcdFx0XHR9LCB0aGlzKTtcblxuICBcdFx0XHR0aGlzLl9kcmFnZ2FibGUub24oJ3ByZWRyYWcnLCB0aGlzLl9vblByZURyYWdMaW1pdCwgdGhpcyk7XG4gIFx0XHRcdGlmIChtYXAub3B0aW9ucy53b3JsZENvcHlKdW1wKSB7XG4gIFx0XHRcdFx0dGhpcy5fZHJhZ2dhYmxlLm9uKCdwcmVkcmFnJywgdGhpcy5fb25QcmVEcmFnV3JhcCwgdGhpcyk7XG4gIFx0XHRcdFx0bWFwLm9uKCd6b29tZW5kJywgdGhpcy5fb25ab29tRW5kLCB0aGlzKTtcblxuICBcdFx0XHRcdG1hcC53aGVuUmVhZHkodGhpcy5fb25ab29tRW5kLCB0aGlzKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0YWRkQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LWdyYWIgbGVhZmxldC10b3VjaC1kcmFnJyk7XG4gIFx0XHR0aGlzLl9kcmFnZ2FibGUuZW5hYmxlKCk7XG4gIFx0XHR0aGlzLl9wb3NpdGlvbnMgPSBbXTtcbiAgXHRcdHRoaXMuX3RpbWVzID0gW107XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ2xlYWZsZXQtZ3JhYicpO1xuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LXRvdWNoLWRyYWcnKTtcbiAgXHRcdHRoaXMuX2RyYWdnYWJsZS5kaXNhYmxlKCk7XG4gIFx0fSxcblxuICBcdG1vdmVkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fZHJhZ2dhYmxlICYmIHRoaXMuX2RyYWdnYWJsZS5fbW92ZWQ7XG4gIFx0fSxcblxuICBcdG1vdmluZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2RyYWdnYWJsZSAmJiB0aGlzLl9kcmFnZ2FibGUuX21vdmluZztcbiAgXHR9LFxuXG4gIFx0X29uRHJhZ1N0YXJ0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwO1xuXG4gIFx0XHRtYXAuX3N0b3AoKTtcbiAgXHRcdGlmICh0aGlzLl9tYXAub3B0aW9ucy5tYXhCb3VuZHMgJiYgdGhpcy5fbWFwLm9wdGlvbnMubWF4Qm91bmRzVmlzY29zaXR5KSB7XG4gIFx0XHRcdHZhciBib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyh0aGlzLl9tYXAub3B0aW9ucy5tYXhCb3VuZHMpO1xuXG4gIFx0XHRcdHRoaXMuX29mZnNldExpbWl0ID0gdG9Cb3VuZHMoXG4gIFx0XHRcdFx0dGhpcy5fbWFwLmxhdExuZ1RvQ29udGFpbmVyUG9pbnQoYm91bmRzLmdldE5vcnRoV2VzdCgpKS5tdWx0aXBseUJ5KC0xKSxcbiAgXHRcdFx0XHR0aGlzLl9tYXAubGF0TG5nVG9Db250YWluZXJQb2ludChib3VuZHMuZ2V0U291dGhFYXN0KCkpLm11bHRpcGx5QnkoLTEpXG4gIFx0XHRcdFx0XHQuYWRkKHRoaXMuX21hcC5nZXRTaXplKCkpKTtcblxuICBcdFx0XHR0aGlzLl92aXNjb3NpdHkgPSBNYXRoLm1pbigxLjAsIE1hdGgubWF4KDAuMCwgdGhpcy5fbWFwLm9wdGlvbnMubWF4Qm91bmRzVmlzY29zaXR5KSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9vZmZzZXRMaW1pdCA9IG51bGw7XG4gIFx0XHR9XG5cbiAgXHRcdG1hcFxuICBcdFx0ICAgIC5maXJlKCdtb3Zlc3RhcnQnKVxuICBcdFx0ICAgIC5maXJlKCdkcmFnc3RhcnQnKTtcblxuICBcdFx0aWYgKG1hcC5vcHRpb25zLmluZXJ0aWEpIHtcbiAgXHRcdFx0dGhpcy5fcG9zaXRpb25zID0gW107XG4gIFx0XHRcdHRoaXMuX3RpbWVzID0gW107XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbkRyYWc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwLm9wdGlvbnMuaW5lcnRpYSkge1xuICBcdFx0XHR2YXIgdGltZSA9IHRoaXMuX2xhc3RUaW1lID0gK25ldyBEYXRlKCksXG4gIFx0XHRcdCAgICBwb3MgPSB0aGlzLl9sYXN0UG9zID0gdGhpcy5fZHJhZ2dhYmxlLl9hYnNQb3MgfHwgdGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3M7XG5cbiAgXHRcdFx0dGhpcy5fcG9zaXRpb25zLnB1c2gocG9zKTtcbiAgXHRcdFx0dGhpcy5fdGltZXMucHVzaCh0aW1lKTtcblxuICBcdFx0XHR0aGlzLl9wcnVuZVBvc2l0aW9ucyh0aW1lKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fbWFwXG4gIFx0XHQgICAgLmZpcmUoJ21vdmUnLCBlKVxuICBcdFx0ICAgIC5maXJlKCdkcmFnJywgZSk7XG4gIFx0fSxcblxuICBcdF9wcnVuZVBvc2l0aW9uczogZnVuY3Rpb24gKHRpbWUpIHtcbiAgXHRcdHdoaWxlICh0aGlzLl9wb3NpdGlvbnMubGVuZ3RoID4gMSAmJiB0aW1lIC0gdGhpcy5fdGltZXNbMF0gPiA1MCkge1xuICBcdFx0XHR0aGlzLl9wb3NpdGlvbnMuc2hpZnQoKTtcbiAgXHRcdFx0dGhpcy5fdGltZXMuc2hpZnQoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uWm9vbUVuZDogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIHB4Q2VudGVyID0gdGhpcy5fbWFwLmdldFNpemUoKS5kaXZpZGVCeSgyKSxcbiAgXHRcdCAgICBweFdvcmxkQ2VudGVyID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludChbMCwgMF0pO1xuXG4gIFx0XHR0aGlzLl9pbml0aWFsV29ybGRPZmZzZXQgPSBweFdvcmxkQ2VudGVyLnN1YnRyYWN0KHB4Q2VudGVyKS54O1xuICBcdFx0dGhpcy5fd29ybGRXaWR0aCA9IHRoaXMuX21hcC5nZXRQaXhlbFdvcmxkQm91bmRzKCkuZ2V0U2l6ZSgpLng7XG4gIFx0fSxcblxuICBcdF92aXNjb3VzTGltaXQ6IGZ1bmN0aW9uICh2YWx1ZSwgdGhyZXNob2xkKSB7XG4gIFx0XHRyZXR1cm4gdmFsdWUgLSAodmFsdWUgLSB0aHJlc2hvbGQpICogdGhpcy5fdmlzY29zaXR5O1xuICBcdH0sXG5cbiAgXHRfb25QcmVEcmFnTGltaXQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fdmlzY29zaXR5IHx8ICF0aGlzLl9vZmZzZXRMaW1pdCkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIG9mZnNldCA9IHRoaXMuX2RyYWdnYWJsZS5fbmV3UG9zLnN1YnRyYWN0KHRoaXMuX2RyYWdnYWJsZS5fc3RhcnRQb3MpO1xuXG4gIFx0XHR2YXIgbGltaXQgPSB0aGlzLl9vZmZzZXRMaW1pdDtcbiAgXHRcdGlmIChvZmZzZXQueCA8IGxpbWl0Lm1pbi54KSB7IG9mZnNldC54ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC54LCBsaW1pdC5taW4ueCk7IH1cbiAgXHRcdGlmIChvZmZzZXQueSA8IGxpbWl0Lm1pbi55KSB7IG9mZnNldC55ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC55LCBsaW1pdC5taW4ueSk7IH1cbiAgXHRcdGlmIChvZmZzZXQueCA+IGxpbWl0Lm1heC54KSB7IG9mZnNldC54ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC54LCBsaW1pdC5tYXgueCk7IH1cbiAgXHRcdGlmIChvZmZzZXQueSA+IGxpbWl0Lm1heC55KSB7IG9mZnNldC55ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC55LCBsaW1pdC5tYXgueSk7IH1cblxuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MgPSB0aGlzLl9kcmFnZ2FibGUuX3N0YXJ0UG9zLmFkZChvZmZzZXQpO1xuICBcdH0sXG5cbiAgXHRfb25QcmVEcmFnV3JhcDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gVE9ETyByZWZhY3RvciB0byBiZSBhYmxlIHRvIGFkanVzdCBtYXAgcGFuZSBwb3NpdGlvbiBhZnRlciB6b29tXG4gIFx0XHR2YXIgd29ybGRXaWR0aCA9IHRoaXMuX3dvcmxkV2lkdGgsXG4gIFx0XHQgICAgaGFsZldpZHRoID0gTWF0aC5yb3VuZCh3b3JsZFdpZHRoIC8gMiksXG4gIFx0XHQgICAgZHggPSB0aGlzLl9pbml0aWFsV29ybGRPZmZzZXQsXG4gIFx0XHQgICAgeCA9IHRoaXMuX2RyYWdnYWJsZS5fbmV3UG9zLngsXG4gIFx0XHQgICAgbmV3WDEgPSAoeCAtIGhhbGZXaWR0aCArIGR4KSAlIHdvcmxkV2lkdGggKyBoYWxmV2lkdGggLSBkeCxcbiAgXHRcdCAgICBuZXdYMiA9ICh4ICsgaGFsZldpZHRoICsgZHgpICUgd29ybGRXaWR0aCAtIGhhbGZXaWR0aCAtIGR4LFxuICBcdFx0ICAgIG5ld1ggPSBNYXRoLmFicyhuZXdYMSArIGR4KSA8IE1hdGguYWJzKG5ld1gyICsgZHgpID8gbmV3WDEgOiBuZXdYMjtcblxuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9hYnNQb3MgPSB0aGlzLl9kcmFnZ2FibGUuX25ld1Bvcy5jbG9uZSgpO1xuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MueCA9IG5ld1g7XG4gIFx0fSxcblxuICBcdF9vbkRyYWdFbmQ6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIG9wdGlvbnMgPSBtYXAub3B0aW9ucyxcblxuICBcdFx0ICAgIG5vSW5lcnRpYSA9ICFvcHRpb25zLmluZXJ0aWEgfHwgZS5ub0luZXJ0aWEgfHwgdGhpcy5fdGltZXMubGVuZ3RoIDwgMjtcblxuICBcdFx0bWFwLmZpcmUoJ2RyYWdlbmQnLCBlKTtcblxuICBcdFx0aWYgKG5vSW5lcnRpYSkge1xuICBcdFx0XHRtYXAuZmlyZSgnbW92ZWVuZCcpO1xuXG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9wcnVuZVBvc2l0aW9ucygrbmV3IERhdGUoKSk7XG5cbiAgXHRcdFx0dmFyIGRpcmVjdGlvbiA9IHRoaXMuX2xhc3RQb3Muc3VidHJhY3QodGhpcy5fcG9zaXRpb25zWzBdKSxcbiAgXHRcdFx0ICAgIGR1cmF0aW9uID0gKHRoaXMuX2xhc3RUaW1lIC0gdGhpcy5fdGltZXNbMF0pIC8gMTAwMCxcbiAgXHRcdFx0ICAgIGVhc2UgPSBvcHRpb25zLmVhc2VMaW5lYXJpdHksXG5cbiAgXHRcdFx0ICAgIHNwZWVkVmVjdG9yID0gZGlyZWN0aW9uLm11bHRpcGx5QnkoZWFzZSAvIGR1cmF0aW9uKSxcbiAgXHRcdFx0ICAgIHNwZWVkID0gc3BlZWRWZWN0b3IuZGlzdGFuY2VUbyhbMCwgMF0pLFxuXG4gIFx0XHRcdCAgICBsaW1pdGVkU3BlZWQgPSBNYXRoLm1pbihvcHRpb25zLmluZXJ0aWFNYXhTcGVlZCwgc3BlZWQpLFxuICBcdFx0XHQgICAgbGltaXRlZFNwZWVkVmVjdG9yID0gc3BlZWRWZWN0b3IubXVsdGlwbHlCeShsaW1pdGVkU3BlZWQgLyBzcGVlZCksXG5cbiAgXHRcdFx0ICAgIGRlY2VsZXJhdGlvbkR1cmF0aW9uID0gbGltaXRlZFNwZWVkIC8gKG9wdGlvbnMuaW5lcnRpYURlY2VsZXJhdGlvbiAqIGVhc2UpLFxuICBcdFx0XHQgICAgb2Zmc2V0ID0gbGltaXRlZFNwZWVkVmVjdG9yLm11bHRpcGx5QnkoLWRlY2VsZXJhdGlvbkR1cmF0aW9uIC8gMikucm91bmQoKTtcblxuICBcdFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkge1xuICBcdFx0XHRcdG1hcC5maXJlKCdtb3ZlZW5kJyk7XG5cbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRvZmZzZXQgPSBtYXAuX2xpbWl0T2Zmc2V0KG9mZnNldCwgbWFwLm9wdGlvbnMubWF4Qm91bmRzKTtcblxuICBcdFx0XHRcdHJlcXVlc3RBbmltRnJhbWUoZnVuY3Rpb24gKCkge1xuICBcdFx0XHRcdFx0bWFwLnBhbkJ5KG9mZnNldCwge1xuICBcdFx0XHRcdFx0XHRkdXJhdGlvbjogZGVjZWxlcmF0aW9uRHVyYXRpb24sXG4gIFx0XHRcdFx0XHRcdGVhc2VMaW5lYXJpdHk6IGVhc2UsXG4gIFx0XHRcdFx0XHRcdG5vTW92ZVN0YXJ0OiB0cnVlLFxuICBcdFx0XHRcdFx0XHRhbmltYXRlOiB0cnVlXG4gIFx0XHRcdFx0XHR9KTtcbiAgXHRcdFx0XHR9KTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IGRyYWdnaW5nOiBIYW5kbGVyXG4gIC8vIE1hcCBkcmFnZ2luZyBoYW5kbGVyIChieSBib3RoIG1vdXNlIGFuZCB0b3VjaCkuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICdkcmFnZ2luZycsIERyYWcpO1xuXG4gIC8qXG4gICAqIEwuTWFwLktleWJvYXJkIGlzIGhhbmRsaW5nIGtleWJvYXJkIGludGVyYWN0aW9uIHdpdGggdGhlIG1hcCwgZW5hYmxlZCBieSBkZWZhdWx0LlxuICAgKi9cblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBLZXlib2FyZCBOYXZpZ2F0aW9uIE9wdGlvbnNcbiAgTWFwLm1lcmdlT3B0aW9ucyh7XG4gIFx0Ly8gQG9wdGlvbiBrZXlib2FyZDogQm9vbGVhbiA9IHRydWVcbiAgXHQvLyBNYWtlcyB0aGUgbWFwIGZvY3VzYWJsZSBhbmQgYWxsb3dzIHVzZXJzIHRvIG5hdmlnYXRlIHRoZSBtYXAgd2l0aCBrZXlib2FyZFxuICBcdC8vIGFycm93cyBhbmQgYCtgL2AtYCBrZXlzLlxuICBcdGtleWJvYXJkOiB0cnVlLFxuXG4gIFx0Ly8gQG9wdGlvbiBrZXlib2FyZFBhbkRlbHRhOiBOdW1iZXIgPSA4MFxuICBcdC8vIEFtb3VudCBvZiBwaXhlbHMgdG8gcGFuIHdoZW4gcHJlc3NpbmcgYW4gYXJyb3cga2V5LlxuICBcdGtleWJvYXJkUGFuRGVsdGE6IDgwXG4gIH0pO1xuXG4gIHZhciBLZXlib2FyZCA9IEhhbmRsZXIuZXh0ZW5kKHtcblxuICBcdGtleUNvZGVzOiB7XG4gIFx0XHRsZWZ0OiAgICBbMzddLFxuICBcdFx0cmlnaHQ6ICAgWzM5XSxcbiAgXHRcdGRvd246ICAgIFs0MF0sXG4gIFx0XHR1cDogICAgICBbMzhdLFxuICBcdFx0em9vbUluOiAgWzE4NywgMTA3LCA2MSwgMTcxXSxcbiAgXHRcdHpvb21PdXQ6IFsxODksIDEwOSwgNTQsIDE3M11cbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dGhpcy5fbWFwID0gbWFwO1xuXG4gIFx0XHR0aGlzLl9zZXRQYW5EZWx0YShtYXAub3B0aW9ucy5rZXlib2FyZFBhbkRlbHRhKTtcbiAgXHRcdHRoaXMuX3NldFpvb21EZWx0YShtYXAub3B0aW9ucy56b29tRGVsdGEpO1xuICBcdH0sXG5cbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX21hcC5fY29udGFpbmVyO1xuXG4gIFx0XHQvLyBtYWtlIHRoZSBjb250YWluZXIgZm9jdXNhYmxlIGJ5IHRhYmJpbmdcbiAgXHRcdGlmIChjb250YWluZXIudGFiSW5kZXggPD0gMCkge1xuICBcdFx0XHRjb250YWluZXIudGFiSW5kZXggPSAnMCc7XG4gIFx0XHR9XG5cbiAgXHRcdG9uKGNvbnRhaW5lciwge1xuICBcdFx0XHRmb2N1czogdGhpcy5fb25Gb2N1cyxcbiAgXHRcdFx0Ymx1cjogdGhpcy5fb25CbHVyLFxuICBcdFx0XHRtb3VzZWRvd246IHRoaXMuX29uTW91c2VEb3duXG4gIFx0XHR9LCB0aGlzKTtcblxuICBcdFx0dGhpcy5fbWFwLm9uKHtcbiAgXHRcdFx0Zm9jdXM6IHRoaXMuX2FkZEhvb2tzLFxuICBcdFx0XHRibHVyOiB0aGlzLl9yZW1vdmVIb29rc1xuICBcdFx0fSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW1vdmVIb29rcygpO1xuXG4gIFx0XHRvZmYodGhpcy5fbWFwLl9jb250YWluZXIsIHtcbiAgXHRcdFx0Zm9jdXM6IHRoaXMuX29uRm9jdXMsXG4gIFx0XHRcdGJsdXI6IHRoaXMuX29uQmx1cixcbiAgXHRcdFx0bW91c2Vkb3duOiB0aGlzLl9vbk1vdXNlRG93blxuICBcdFx0fSwgdGhpcyk7XG5cbiAgXHRcdHRoaXMuX21hcC5vZmYoe1xuICBcdFx0XHRmb2N1czogdGhpcy5fYWRkSG9va3MsXG4gIFx0XHRcdGJsdXI6IHRoaXMuX3JlbW92ZUhvb2tzXG4gIFx0XHR9LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW91c2VEb3duOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fZm9jdXNlZCkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIGJvZHkgPSBkb2N1bWVudC5ib2R5LFxuICBcdFx0ICAgIGRvY0VsID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LFxuICBcdFx0ICAgIHRvcCA9IGJvZHkuc2Nyb2xsVG9wIHx8IGRvY0VsLnNjcm9sbFRvcCxcbiAgXHRcdCAgICBsZWZ0ID0gYm9keS5zY3JvbGxMZWZ0IHx8IGRvY0VsLnNjcm9sbExlZnQ7XG5cbiAgXHRcdHRoaXMuX21hcC5fY29udGFpbmVyLmZvY3VzKCk7XG5cbiAgXHRcdHdpbmRvdy5zY3JvbGxUbyhsZWZ0LCB0b3ApO1xuICBcdH0sXG5cbiAgXHRfb25Gb2N1czogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fZm9jdXNlZCA9IHRydWU7XG4gIFx0XHR0aGlzLl9tYXAuZmlyZSgnZm9jdXMnKTtcbiAgXHR9LFxuXG4gIFx0X29uQmx1cjogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fZm9jdXNlZCA9IGZhbHNlO1xuICBcdFx0dGhpcy5fbWFwLmZpcmUoJ2JsdXInKTtcbiAgXHR9LFxuXG4gIFx0X3NldFBhbkRlbHRhOiBmdW5jdGlvbiAocGFuRGVsdGEpIHtcbiAgXHRcdHZhciBrZXlzID0gdGhpcy5fcGFuS2V5cyA9IHt9LFxuICBcdFx0ICAgIGNvZGVzID0gdGhpcy5rZXlDb2RlcyxcbiAgXHRcdCAgICBpLCBsZW47XG5cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLmxlZnQubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0a2V5c1tjb2Rlcy5sZWZ0W2ldXSA9IFstMSAqIHBhbkRlbHRhLCAwXTtcbiAgXHRcdH1cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLnJpZ2h0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGtleXNbY29kZXMucmlnaHRbaV1dID0gW3BhbkRlbHRhLCAwXTtcbiAgXHRcdH1cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLmRvd24ubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0a2V5c1tjb2Rlcy5kb3duW2ldXSA9IFswLCBwYW5EZWx0YV07XG4gIFx0XHR9XG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSBjb2Rlcy51cC5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRrZXlzW2NvZGVzLnVwW2ldXSA9IFswLCAtMSAqIHBhbkRlbHRhXTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldFpvb21EZWx0YTogZnVuY3Rpb24gKHpvb21EZWx0YSkge1xuICBcdFx0dmFyIGtleXMgPSB0aGlzLl96b29tS2V5cyA9IHt9LFxuICBcdFx0ICAgIGNvZGVzID0gdGhpcy5rZXlDb2RlcyxcbiAgXHRcdCAgICBpLCBsZW47XG5cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLnpvb21Jbi5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRrZXlzW2NvZGVzLnpvb21JbltpXV0gPSB6b29tRGVsdGE7XG4gIFx0XHR9XG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSBjb2Rlcy56b29tT3V0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGtleXNbY29kZXMuem9vbU91dFtpXV0gPSAtem9vbURlbHRhO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfYWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9uKGRvY3VtZW50LCAna2V5ZG93bicsIHRoaXMuX29uS2V5RG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9yZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b2ZmKGRvY3VtZW50LCAna2V5ZG93bicsIHRoaXMuX29uS2V5RG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9vbktleURvd246IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoZS5hbHRLZXkgfHwgZS5jdHJsS2V5IHx8IGUubWV0YUtleSkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIGtleSA9IGUua2V5Q29kZSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgb2Zmc2V0O1xuXG4gIFx0XHRpZiAoa2V5IGluIHRoaXMuX3BhbktleXMpIHtcbiAgXHRcdFx0aWYgKCFtYXAuX3BhbkFuaW0gfHwgIW1hcC5fcGFuQW5pbS5faW5Qcm9ncmVzcykge1xuICBcdFx0XHRcdG9mZnNldCA9IHRoaXMuX3BhbktleXNba2V5XTtcbiAgXHRcdFx0XHRpZiAoZS5zaGlmdEtleSkge1xuICBcdFx0XHRcdFx0b2Zmc2V0ID0gdG9Qb2ludChvZmZzZXQpLm11bHRpcGx5QnkoMyk7XG4gIFx0XHRcdFx0fVxuXG4gIFx0XHRcdFx0aWYgKG1hcC5vcHRpb25zLm1heEJvdW5kcykge1xuICBcdFx0XHRcdFx0b2Zmc2V0ID0gbWFwLl9saW1pdE9mZnNldCh0b1BvaW50KG9mZnNldCksIG1hcC5vcHRpb25zLm1heEJvdW5kcyk7XG4gIFx0XHRcdFx0fVxuXG4gIFx0XHRcdFx0aWYgKG1hcC5vcHRpb25zLndvcmxkQ29weUp1bXApIHtcbiAgXHRcdFx0XHRcdHZhciBuZXdMYXRMbmcgPSBtYXAud3JhcExhdExuZyhtYXAudW5wcm9qZWN0KG1hcC5wcm9qZWN0KG1hcC5nZXRDZW50ZXIoKSkuYWRkKG9mZnNldCkpKTtcbiAgXHRcdFx0XHRcdG1hcC5wYW5UbyhuZXdMYXRMbmcpO1xuICBcdFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0XHRtYXAucGFuQnkob2Zmc2V0KTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH0gZWxzZSBpZiAoa2V5IGluIHRoaXMuX3pvb21LZXlzKSB7XG4gIFx0XHRcdG1hcC5zZXRab29tKG1hcC5nZXRab29tKCkgKyAoZS5zaGlmdEtleSA/IDMgOiAxKSAqIHRoaXMuX3pvb21LZXlzW2tleV0pO1xuXG4gIFx0XHR9IGVsc2UgaWYgKGtleSA9PT0gMjcgJiYgbWFwLl9wb3B1cCAmJiBtYXAuX3BvcHVwLm9wdGlvbnMuY2xvc2VPbkVzY2FwZUtleSkge1xuICBcdFx0XHRtYXAuY2xvc2VQb3B1cCgpO1xuXG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHN0b3AoZSk7XG4gIFx0fVxuICB9KTtcblxuICAvLyBAc2VjdGlvbiBIYW5kbGVyc1xuICAvLyBAc2VjdGlvbiBIYW5kbGVyc1xuICAvLyBAcHJvcGVydHkga2V5Ym9hcmQ6IEhhbmRsZXJcbiAgLy8gS2V5Ym9hcmQgbmF2aWdhdGlvbiBoYW5kbGVyLlxuICBNYXAuYWRkSW5pdEhvb2soJ2FkZEhhbmRsZXInLCAna2V5Ym9hcmQnLCBLZXlib2FyZCk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLlNjcm9sbFdoZWVsWm9vbSBpcyB1c2VkIGJ5IEwuTWFwIHRvIGVuYWJsZSBtb3VzZSBzY3JvbGwgd2hlZWwgem9vbSBvbiB0aGUgbWFwLlxuICAgKi9cblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBzZWN0aW9uIE1vdXNlIHdoZWVsIG9wdGlvbnNcbiAgXHQvLyBAb3B0aW9uIHNjcm9sbFdoZWVsWm9vbTogQm9vbGVhbnxTdHJpbmcgPSB0cnVlXG4gIFx0Ly8gV2hldGhlciB0aGUgbWFwIGNhbiBiZSB6b29tZWQgYnkgdXNpbmcgdGhlIG1vdXNlIHdoZWVsLiBJZiBwYXNzZWQgYCdjZW50ZXInYCxcbiAgXHQvLyBpdCB3aWxsIHpvb20gdG8gdGhlIGNlbnRlciBvZiB0aGUgdmlldyByZWdhcmRsZXNzIG9mIHdoZXJlIHRoZSBtb3VzZSB3YXMuXG4gIFx0c2Nyb2xsV2hlZWxab29tOiB0cnVlLFxuXG4gIFx0Ly8gQG9wdGlvbiB3aGVlbERlYm91bmNlVGltZTogTnVtYmVyID0gNDBcbiAgXHQvLyBMaW1pdHMgdGhlIHJhdGUgYXQgd2hpY2ggYSB3aGVlbCBjYW4gZmlyZSAoaW4gbWlsbGlzZWNvbmRzKS4gQnkgZGVmYXVsdFxuICBcdC8vIHVzZXIgY2FuJ3Qgem9vbSB2aWEgd2hlZWwgbW9yZSBvZnRlbiB0aGFuIG9uY2UgcGVyIDQwIG1zLlxuICBcdHdoZWVsRGVib3VuY2VUaW1lOiA0MCxcblxuICBcdC8vIEBvcHRpb24gd2hlZWxQeFBlclpvb21MZXZlbDogTnVtYmVyID0gNjBcbiAgXHQvLyBIb3cgbWFueSBzY3JvbGwgcGl4ZWxzIChhcyByZXBvcnRlZCBieSBbTC5Eb21FdmVudC5nZXRXaGVlbERlbHRhXSgjZG9tZXZlbnQtZ2V0d2hlZWxkZWx0YSkpXG4gIFx0Ly8gbWVhbiBhIGNoYW5nZSBvZiBvbmUgZnVsbCB6b29tIGxldmVsLiBTbWFsbGVyIHZhbHVlcyB3aWxsIG1ha2Ugd2hlZWwtem9vbWluZ1xuICBcdC8vIGZhc3RlciAoYW5kIHZpY2UgdmVyc2EpLlxuICBcdHdoZWVsUHhQZXJab29tTGV2ZWw6IDYwXG4gIH0pO1xuXG4gIHZhciBTY3JvbGxXaGVlbFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9uKHRoaXMuX21hcC5fY29udGFpbmVyLCAnd2hlZWwnLCB0aGlzLl9vbldoZWVsU2Nyb2xsLCB0aGlzKTtcblxuICBcdFx0dGhpcy5fZGVsdGEgPSAwO1xuICBcdH0sXG5cbiAgXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b2ZmKHRoaXMuX21hcC5fY29udGFpbmVyLCAnd2hlZWwnLCB0aGlzLl9vbldoZWVsU2Nyb2xsLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uV2hlZWxTY3JvbGw6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgZGVsdGEgPSBnZXRXaGVlbERlbHRhKGUpO1xuXG4gIFx0XHR2YXIgZGVib3VuY2UgPSB0aGlzLl9tYXAub3B0aW9ucy53aGVlbERlYm91bmNlVGltZTtcblxuICBcdFx0dGhpcy5fZGVsdGEgKz0gZGVsdGE7XG4gIFx0XHR0aGlzLl9sYXN0TW91c2VQb3MgPSB0aGlzLl9tYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZSk7XG5cbiAgXHRcdGlmICghdGhpcy5fc3RhcnRUaW1lKSB7XG4gIFx0XHRcdHRoaXMuX3N0YXJ0VGltZSA9ICtuZXcgRGF0ZSgpO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgbGVmdCA9IE1hdGgubWF4KGRlYm91bmNlIC0gKCtuZXcgRGF0ZSgpIC0gdGhpcy5fc3RhcnRUaW1lKSwgMCk7XG5cbiAgXHRcdGNsZWFyVGltZW91dCh0aGlzLl90aW1lcik7XG4gIFx0XHR0aGlzLl90aW1lciA9IHNldFRpbWVvdXQoYmluZCh0aGlzLl9wZXJmb3JtWm9vbSwgdGhpcyksIGxlZnQpO1xuXG4gIFx0XHRzdG9wKGUpO1xuICBcdH0sXG5cbiAgXHRfcGVyZm9ybVpvb206IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgem9vbSA9IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgc25hcCA9IHRoaXMuX21hcC5vcHRpb25zLnpvb21TbmFwIHx8IDA7XG5cbiAgXHRcdG1hcC5fc3RvcCgpOyAvLyBzdG9wIHBhbm5pbmcgYW5kIGZseSBhbmltYXRpb25zIGlmIGFueVxuXG4gIFx0XHQvLyBtYXAgdGhlIGRlbHRhIHdpdGggYSBzaWdtb2lkIGZ1bmN0aW9uIHRvIC00Li40IHJhbmdlIGxlYW5pbmcgb24gLTEuLjFcbiAgXHRcdHZhciBkMiA9IHRoaXMuX2RlbHRhIC8gKHRoaXMuX21hcC5vcHRpb25zLndoZWVsUHhQZXJab29tTGV2ZWwgKiA0KSxcbiAgXHRcdCAgICBkMyA9IDQgKiBNYXRoLmxvZygyIC8gKDEgKyBNYXRoLmV4cCgtTWF0aC5hYnMoZDIpKSkpIC8gTWF0aC5MTjIsXG4gIFx0XHQgICAgZDQgPSBzbmFwID8gTWF0aC5jZWlsKGQzIC8gc25hcCkgKiBzbmFwIDogZDMsXG4gIFx0XHQgICAgZGVsdGEgPSBtYXAuX2xpbWl0Wm9vbSh6b29tICsgKHRoaXMuX2RlbHRhID4gMCA/IGQ0IDogLWQ0KSkgLSB6b29tO1xuXG4gIFx0XHR0aGlzLl9kZWx0YSA9IDA7XG4gIFx0XHR0aGlzLl9zdGFydFRpbWUgPSBudWxsO1xuXG4gIFx0XHRpZiAoIWRlbHRhKSB7IHJldHVybjsgfVxuXG4gIFx0XHRpZiAobWFwLm9wdGlvbnMuc2Nyb2xsV2hlZWxab29tID09PSAnY2VudGVyJykge1xuICBcdFx0XHRtYXAuc2V0Wm9vbSh6b29tICsgZGVsdGEpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0bWFwLnNldFpvb21Bcm91bmQodGhpcy5fbGFzdE1vdXNlUG9zLCB6b29tICsgZGVsdGEpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHNjcm9sbFdoZWVsWm9vbTogSGFuZGxlclxuICAvLyBTY3JvbGwgd2hlZWwgem9vbSBoYW5kbGVyLlxuICBNYXAuYWRkSW5pdEhvb2soJ2FkZEhhbmRsZXInLCAnc2Nyb2xsV2hlZWxab29tJywgU2Nyb2xsV2hlZWxab29tKTtcblxuICAvKlxuICAgKiBMLk1hcC5UYXBIb2xkIGlzIHVzZWQgdG8gc2ltdWxhdGUgYGNvbnRleHRtZW51YCBldmVudCBvbiBsb25nIGhvbGQsXG4gICAqIHdoaWNoIG90aGVyd2lzZSBpcyBub3QgZmlyZWQgYnkgbW9iaWxlIFNhZmFyaS5cbiAgICovXG5cbiAgdmFyIHRhcEhvbGREZWxheSA9IDYwMDtcblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBzZWN0aW9uIFRvdWNoIGludGVyYWN0aW9uIG9wdGlvbnNcbiAgXHQvLyBAb3B0aW9uIHRhcEhvbGQ6IEJvb2xlYW5cbiAgXHQvLyBFbmFibGVzIHNpbXVsYXRpb24gb2YgYGNvbnRleHRtZW51YCBldmVudCwgZGVmYXVsdCBpcyBgdHJ1ZWAgZm9yIG1vYmlsZSBTYWZhcmkuXG4gIFx0dGFwSG9sZDogQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnNhZmFyaSAmJiBCcm93c2VyLm1vYmlsZSxcblxuICBcdC8vIEBvcHRpb24gdGFwVG9sZXJhbmNlOiBOdW1iZXIgPSAxNVxuICBcdC8vIFRoZSBtYXggbnVtYmVyIG9mIHBpeGVscyBhIHVzZXIgY2FuIHNoaWZ0IGhpcyBmaW5nZXIgZHVyaW5nIHRvdWNoXG4gIFx0Ly8gZm9yIGl0IHRvIGJlIGNvbnNpZGVyZWQgYSB2YWxpZCB0YXAuXG4gIFx0dGFwVG9sZXJhbmNlOiAxNVxuICB9KTtcblxuICB2YXIgVGFwSG9sZCA9IEhhbmRsZXIuZXh0ZW5kKHtcbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b24odGhpcy5fbWFwLl9jb250YWluZXIsICd0b3VjaHN0YXJ0JywgdGhpcy5fb25Eb3duLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0cmVtb3ZlSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9mZih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vbkRvd24sIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Eb3duOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX2hvbGRUaW1lb3V0KTtcbiAgXHRcdGlmIChlLnRvdWNoZXMubGVuZ3RoICE9PSAxKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgZmlyc3QgPSBlLnRvdWNoZXNbMF07XG4gIFx0XHR0aGlzLl9zdGFydFBvcyA9IHRoaXMuX25ld1BvcyA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcblxuICBcdFx0dGhpcy5faG9sZFRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQoZnVuY3Rpb24gKCkge1xuICBcdFx0XHR0aGlzLl9jYW5jZWwoKTtcbiAgXHRcdFx0aWYgKCF0aGlzLl9pc1RhcFZhbGlkKCkpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdFx0Ly8gcHJldmVudCBzaW11bGF0ZWQgbW91c2UgZXZlbnRzIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby90b3VjaC1ldmVudHMvI21vdXNlLWV2ZW50c1xuICBcdFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kJywgcHJldmVudERlZmF1bHQpO1xuICBcdFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fY2FuY2VsQ2xpY2tQcmV2ZW50KTtcbiAgXHRcdFx0dGhpcy5fc2ltdWxhdGVFdmVudCgnY29udGV4dG1lbnUnLCBmaXJzdCk7XG4gIFx0XHR9LCB0aGlzKSwgdGFwSG9sZERlbGF5KTtcblxuICBcdFx0b24oZG9jdW1lbnQsICd0b3VjaGVuZCB0b3VjaGNhbmNlbCBjb250ZXh0bWVudScsIHRoaXMuX2NhbmNlbCwgdGhpcyk7XG4gIFx0XHRvbihkb2N1bWVudCwgJ3RvdWNobW92ZScsIHRoaXMuX29uTW92ZSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9jYW5jZWxDbGlja1ByZXZlbnQ6IGZ1bmN0aW9uIGNhbmNlbENsaWNrUHJldmVudCgpIHtcbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNoZW5kJywgcHJldmVudERlZmF1bHQpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2hlbmQgdG91Y2hjYW5jZWwnLCBjYW5jZWxDbGlja1ByZXZlbnQpO1xuICBcdH0sXG5cbiAgXHRfY2FuY2VsOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRjbGVhclRpbWVvdXQodGhpcy5faG9sZFRpbWVvdXQpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2hlbmQgdG91Y2hjYW5jZWwgY29udGV4dG1lbnUnLCB0aGlzLl9jYW5jZWwsIHRoaXMpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2htb3ZlJywgdGhpcy5fb25Nb3ZlLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBmaXJzdCA9IGUudG91Y2hlc1swXTtcbiAgXHRcdHRoaXMuX25ld1BvcyA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcbiAgXHR9LFxuXG4gIFx0X2lzVGFwVmFsaWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl9uZXdQb3MuZGlzdGFuY2VUbyh0aGlzLl9zdGFydFBvcykgPD0gdGhpcy5fbWFwLm9wdGlvbnMudGFwVG9sZXJhbmNlO1xuICBcdH0sXG5cbiAgXHRfc2ltdWxhdGVFdmVudDogZnVuY3Rpb24gKHR5cGUsIGUpIHtcbiAgXHRcdHZhciBzaW11bGF0ZWRFdmVudCA9IG5ldyBNb3VzZUV2ZW50KHR5cGUsIHtcbiAgXHRcdFx0YnViYmxlczogdHJ1ZSxcbiAgXHRcdFx0Y2FuY2VsYWJsZTogdHJ1ZSxcbiAgXHRcdFx0dmlldzogd2luZG93LFxuICBcdFx0XHQvLyBkZXRhaWw6IDEsXG4gIFx0XHRcdHNjcmVlblg6IGUuc2NyZWVuWCxcbiAgXHRcdFx0c2NyZWVuWTogZS5zY3JlZW5ZLFxuICBcdFx0XHRjbGllbnRYOiBlLmNsaWVudFgsXG4gIFx0XHRcdGNsaWVudFk6IGUuY2xpZW50WSxcbiAgXHRcdFx0Ly8gYnV0dG9uOiAyLFxuICBcdFx0XHQvLyBidXR0b25zOiAyXG4gIFx0XHR9KTtcblxuICBcdFx0c2ltdWxhdGVkRXZlbnQuX3NpbXVsYXRlZCA9IHRydWU7XG5cbiAgXHRcdGUudGFyZ2V0LmRpc3BhdGNoRXZlbnQoc2ltdWxhdGVkRXZlbnQpO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHRhcEhvbGQ6IEhhbmRsZXJcbiAgLy8gTG9uZyB0YXAgaGFuZGxlciB0byBzaW11bGF0ZSBgY29udGV4dG1lbnVgIGV2ZW50ICh1c2VmdWwgaW4gbW9iaWxlIFNhZmFyaSkuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICd0YXBIb2xkJywgVGFwSG9sZCk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLlRvdWNoWm9vbSBpcyB1c2VkIGJ5IEwuTWFwIHRvIGFkZCBwaW5jaCB6b29tIG9uIHN1cHBvcnRlZCBtb2JpbGUgYnJvd3NlcnMuXG4gICAqL1xuXG4gIC8vIEBuYW1lc3BhY2UgTWFwXG4gIC8vIEBzZWN0aW9uIEludGVyYWN0aW9uIE9wdGlvbnNcbiAgTWFwLm1lcmdlT3B0aW9ucyh7XG4gIFx0Ly8gQHNlY3Rpb24gVG91Y2ggaW50ZXJhY3Rpb24gb3B0aW9uc1xuICBcdC8vIEBvcHRpb24gdG91Y2hab29tOiBCb29sZWFufFN0cmluZyA9ICpcbiAgXHQvLyBXaGV0aGVyIHRoZSBtYXAgY2FuIGJlIHpvb21lZCBieSB0b3VjaC1kcmFnZ2luZyB3aXRoIHR3byBmaW5nZXJzLiBJZlxuICBcdC8vIHBhc3NlZCBgJ2NlbnRlcidgLCBpdCB3aWxsIHpvb20gdG8gdGhlIGNlbnRlciBvZiB0aGUgdmlldyByZWdhcmRsZXNzIG9mXG4gIFx0Ly8gd2hlcmUgdGhlIHRvdWNoIGV2ZW50cyAoZmluZ2Vycykgd2VyZS4gRW5hYmxlZCBmb3IgdG91Y2gtY2FwYWJsZSB3ZWJcbiAgXHQvLyBicm93c2Vycy5cbiAgXHR0b3VjaFpvb206IEJyb3dzZXIudG91Y2gsXG5cbiAgXHQvLyBAb3B0aW9uIGJvdW5jZUF0Wm9vbUxpbWl0czogQm9vbGVhbiA9IHRydWVcbiAgXHQvLyBTZXQgaXQgdG8gZmFsc2UgaWYgeW91IGRvbid0IHdhbnQgdGhlIG1hcCB0byB6b29tIGJleW9uZCBtaW4vbWF4IHpvb21cbiAgXHQvLyBhbmQgdGhlbiBib3VuY2UgYmFjayB3aGVuIHBpbmNoLXpvb21pbmcuXG4gIFx0Ym91bmNlQXRab29tTGltaXRzOiB0cnVlXG4gIH0pO1xuXG4gIHZhciBUb3VjaFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGFkZENsYXNzKHRoaXMuX21hcC5fY29udGFpbmVyLCAnbGVhZmxldC10b3VjaC16b29tJyk7XG4gIFx0XHRvbih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vblRvdWNoU3RhcnQsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LXRvdWNoLXpvb20nKTtcbiAgXHRcdG9mZih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vblRvdWNoU3RhcnQsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Ub3VjaFN0YXJ0OiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcDtcbiAgXHRcdGlmICghZS50b3VjaGVzIHx8IGUudG91Y2hlcy5sZW5ndGggIT09IDIgfHwgbWFwLl9hbmltYXRpbmdab29tIHx8IHRoaXMuX3pvb21pbmcpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBwMSA9IG1hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlLnRvdWNoZXNbMF0pLFxuICBcdFx0ICAgIHAyID0gbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUudG91Y2hlc1sxXSk7XG5cbiAgXHRcdHRoaXMuX2NlbnRlclBvaW50ID0gbWFwLmdldFNpemUoKS5fZGl2aWRlQnkoMik7XG4gIFx0XHR0aGlzLl9zdGFydExhdExuZyA9IG1hcC5jb250YWluZXJQb2ludFRvTGF0TG5nKHRoaXMuX2NlbnRlclBvaW50KTtcbiAgXHRcdGlmIChtYXAub3B0aW9ucy50b3VjaFpvb20gIT09ICdjZW50ZXInKSB7XG4gIFx0XHRcdHRoaXMuX3BpbmNoU3RhcnRMYXRMbmcgPSBtYXAuY29udGFpbmVyUG9pbnRUb0xhdExuZyhwMS5hZGQocDIpLl9kaXZpZGVCeSgyKSk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3N0YXJ0RGlzdCA9IHAxLmRpc3RhbmNlVG8ocDIpO1xuICBcdFx0dGhpcy5fc3RhcnRab29tID0gbWFwLmdldFpvb20oKTtcblxuICBcdFx0dGhpcy5fbW92ZWQgPSBmYWxzZTtcbiAgXHRcdHRoaXMuX3pvb21pbmcgPSB0cnVlO1xuXG4gIFx0XHRtYXAuX3N0b3AoKTtcblxuICBcdFx0b24oZG9jdW1lbnQsICd0b3VjaG1vdmUnLCB0aGlzLl9vblRvdWNoTW92ZSwgdGhpcyk7XG4gIFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25Ub3VjaEVuZCwgdGhpcyk7XG5cbiAgXHRcdHByZXZlbnREZWZhdWx0KGUpO1xuICBcdH0sXG5cbiAgXHRfb25Ub3VjaE1vdmU6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoIWUudG91Y2hlcyB8fCBlLnRvdWNoZXMubGVuZ3RoICE9PSAyIHx8ICF0aGlzLl96b29taW5nKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIHAxID0gbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUudG91Y2hlc1swXSksXG4gIFx0XHQgICAgcDIgPSBtYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZS50b3VjaGVzWzFdKSxcbiAgXHRcdCAgICBzY2FsZSA9IHAxLmRpc3RhbmNlVG8ocDIpIC8gdGhpcy5fc3RhcnREaXN0O1xuXG4gIFx0XHR0aGlzLl96b29tID0gbWFwLmdldFNjYWxlWm9vbShzY2FsZSwgdGhpcy5fc3RhcnRab29tKTtcblxuICBcdFx0aWYgKCFtYXAub3B0aW9ucy5ib3VuY2VBdFpvb21MaW1pdHMgJiYgKFxuICBcdFx0XHQodGhpcy5fem9vbSA8IG1hcC5nZXRNaW5ab29tKCkgJiYgc2NhbGUgPCAxKSB8fFxuICBcdFx0XHQodGhpcy5fem9vbSA+IG1hcC5nZXRNYXhab29tKCkgJiYgc2NhbGUgPiAxKSkpIHtcbiAgXHRcdFx0dGhpcy5fem9vbSA9IG1hcC5fbGltaXRab29tKHRoaXMuX3pvb20pO1xuICBcdFx0fVxuXG4gIFx0XHRpZiAobWFwLm9wdGlvbnMudG91Y2hab29tID09PSAnY2VudGVyJykge1xuICBcdFx0XHR0aGlzLl9jZW50ZXIgPSB0aGlzLl9zdGFydExhdExuZztcbiAgXHRcdFx0aWYgKHNjYWxlID09PSAxKSB7IHJldHVybjsgfVxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0Ly8gR2V0IGRlbHRhIGZyb20gcGluY2ggdG8gY2VudGVyLCBzbyBjZW50ZXJMYXRMbmcgaXMgZGVsdGEgYXBwbGllZCB0byBpbml0aWFsIHBpbmNoTGF0TG5nXG4gIFx0XHRcdHZhciBkZWx0YSA9IHAxLl9hZGQocDIpLl9kaXZpZGVCeSgyKS5fc3VidHJhY3QodGhpcy5fY2VudGVyUG9pbnQpO1xuICBcdFx0XHRpZiAoc2NhbGUgPT09IDEgJiYgZGVsdGEueCA9PT0gMCAmJiBkZWx0YS55ID09PSAwKSB7IHJldHVybjsgfVxuICBcdFx0XHR0aGlzLl9jZW50ZXIgPSBtYXAudW5wcm9qZWN0KG1hcC5wcm9qZWN0KHRoaXMuX3BpbmNoU3RhcnRMYXRMbmcsIHRoaXMuX3pvb20pLnN1YnRyYWN0KGRlbHRhKSwgdGhpcy5fem9vbSk7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0bWFwLl9tb3ZlU3RhcnQodHJ1ZSwgZmFsc2UpO1xuICBcdFx0XHR0aGlzLl9tb3ZlZCA9IHRydWU7XG4gIFx0XHR9XG5cbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltUmVxdWVzdCk7XG5cbiAgXHRcdHZhciBtb3ZlRm4gPSBiaW5kKG1hcC5fbW92ZSwgbWFwLCB0aGlzLl9jZW50ZXIsIHRoaXMuX3pvb20sIHtwaW5jaDogdHJ1ZSwgcm91bmQ6IGZhbHNlfSwgdW5kZWZpbmVkKTtcbiAgXHRcdHRoaXMuX2FuaW1SZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZShtb3ZlRm4sIHRoaXMsIHRydWUpO1xuXG4gIFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcbiAgXHR9LFxuXG4gIFx0X29uVG91Y2hFbmQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fbW92ZWQgfHwgIXRoaXMuX3pvb21pbmcpIHtcbiAgXHRcdFx0dGhpcy5fem9vbWluZyA9IGZhbHNlO1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3pvb21pbmcgPSBmYWxzZTtcbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltUmVxdWVzdCk7XG5cbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNobW92ZScsIHRoaXMuX29uVG91Y2hNb3ZlLCB0aGlzKTtcbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25Ub3VjaEVuZCwgdGhpcyk7XG5cbiAgXHRcdC8vIFBpbmNoIHVwZGF0ZXMgR3JpZExheWVycycgbGV2ZWxzIG9ubHkgd2hlbiB6b29tU25hcCBpcyBvZmYsIHNvIHpvb21TbmFwIGJlY29tZXMgbm9VcGRhdGUuXG4gIFx0XHRpZiAodGhpcy5fbWFwLm9wdGlvbnMuem9vbUFuaW1hdGlvbikge1xuICBcdFx0XHR0aGlzLl9tYXAuX2FuaW1hdGVab29tKHRoaXMuX2NlbnRlciwgdGhpcy5fbWFwLl9saW1pdFpvb20odGhpcy5fem9vbSksIHRydWUsIHRoaXMuX21hcC5vcHRpb25zLnpvb21TbmFwKTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdHRoaXMuX21hcC5fcmVzZXRWaWV3KHRoaXMuX2NlbnRlciwgdGhpcy5fbWFwLl9saW1pdFpvb20odGhpcy5fem9vbSkpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHRvdWNoWm9vbTogSGFuZGxlclxuICAvLyBUb3VjaCB6b29tIGhhbmRsZXIuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICd0b3VjaFpvb20nLCBUb3VjaFpvb20pO1xuXG4gIE1hcC5Cb3hab29tID0gQm94Wm9vbTtcbiAgTWFwLkRvdWJsZUNsaWNrWm9vbSA9IERvdWJsZUNsaWNrWm9vbTtcbiAgTWFwLkRyYWcgPSBEcmFnO1xuICBNYXAuS2V5Ym9hcmQgPSBLZXlib2FyZDtcbiAgTWFwLlNjcm9sbFdoZWVsWm9vbSA9IFNjcm9sbFdoZWVsWm9vbTtcbiAgTWFwLlRhcEhvbGQgPSBUYXBIb2xkO1xuICBNYXAuVG91Y2hab29tID0gVG91Y2hab29tO1xuXG4gIGV4cG9ydHMuQm91bmRzID0gQm91bmRzO1xuICBleHBvcnRzLkJyb3dzZXIgPSBCcm93c2VyO1xuICBleHBvcnRzLkNSUyA9IENSUztcbiAgZXhwb3J0cy5DYW52YXMgPSBDYW52YXM7XG4gIGV4cG9ydHMuQ2lyY2xlID0gQ2lyY2xlO1xuICBleHBvcnRzLkNpcmNsZU1hcmtlciA9IENpcmNsZU1hcmtlcjtcbiAgZXhwb3J0cy5DbGFzcyA9IENsYXNzO1xuICBleHBvcnRzLkNvbnRyb2wgPSBDb250cm9sO1xuICBleHBvcnRzLkRpdkljb24gPSBEaXZJY29uO1xuICBleHBvcnRzLkRpdk92ZXJsYXkgPSBEaXZPdmVybGF5O1xuICBleHBvcnRzLkRvbUV2ZW50ID0gRG9tRXZlbnQ7XG4gIGV4cG9ydHMuRG9tVXRpbCA9IERvbVV0aWw7XG4gIGV4cG9ydHMuRHJhZ2dhYmxlID0gRHJhZ2dhYmxlO1xuICBleHBvcnRzLkV2ZW50ZWQgPSBFdmVudGVkO1xuICBleHBvcnRzLkZlYXR1cmVHcm91cCA9IEZlYXR1cmVHcm91cDtcbiAgZXhwb3J0cy5HZW9KU09OID0gR2VvSlNPTjtcbiAgZXhwb3J0cy5HcmlkTGF5ZXIgPSBHcmlkTGF5ZXI7XG4gIGV4cG9ydHMuSGFuZGxlciA9IEhhbmRsZXI7XG4gIGV4cG9ydHMuSWNvbiA9IEljb247XG4gIGV4cG9ydHMuSW1hZ2VPdmVybGF5ID0gSW1hZ2VPdmVybGF5O1xuICBleHBvcnRzLkxhdExuZyA9IExhdExuZztcbiAgZXhwb3J0cy5MYXRMbmdCb3VuZHMgPSBMYXRMbmdCb3VuZHM7XG4gIGV4cG9ydHMuTGF5ZXIgPSBMYXllcjtcbiAgZXhwb3J0cy5MYXllckdyb3VwID0gTGF5ZXJHcm91cDtcbiAgZXhwb3J0cy5MaW5lVXRpbCA9IExpbmVVdGlsO1xuICBleHBvcnRzLk1hcCA9IE1hcDtcbiAgZXhwb3J0cy5NYXJrZXIgPSBNYXJrZXI7XG4gIGV4cG9ydHMuTWl4aW4gPSBNaXhpbjtcbiAgZXhwb3J0cy5QYXRoID0gUGF0aDtcbiAgZXhwb3J0cy5Qb2ludCA9IFBvaW50O1xuICBleHBvcnRzLlBvbHlVdGlsID0gUG9seVV0aWw7XG4gIGV4cG9ydHMuUG9seWdvbiA9IFBvbHlnb247XG4gIGV4cG9ydHMuUG9seWxpbmUgPSBQb2x5bGluZTtcbiAgZXhwb3J0cy5Qb3B1cCA9IFBvcHVwO1xuICBleHBvcnRzLlBvc0FuaW1hdGlvbiA9IFBvc0FuaW1hdGlvbjtcbiAgZXhwb3J0cy5Qcm9qZWN0aW9uID0gaW5kZXg7XG4gIGV4cG9ydHMuUmVjdGFuZ2xlID0gUmVjdGFuZ2xlO1xuICBleHBvcnRzLlJlbmRlcmVyID0gUmVuZGVyZXI7XG4gIGV4cG9ydHMuU1ZHID0gU1ZHO1xuICBleHBvcnRzLlNWR092ZXJsYXkgPSBTVkdPdmVybGF5O1xuICBleHBvcnRzLlRpbGVMYXllciA9IFRpbGVMYXllcjtcbiAgZXhwb3J0cy5Ub29sdGlwID0gVG9vbHRpcDtcbiAgZXhwb3J0cy5UcmFuc2Zvcm1hdGlvbiA9IFRyYW5zZm9ybWF0aW9uO1xuICBleHBvcnRzLlV0aWwgPSBVdGlsO1xuICBleHBvcnRzLlZpZGVvT3ZlcmxheSA9IFZpZGVvT3ZlcmxheTtcbiAgZXhwb3J0cy5iaW5kID0gYmluZDtcbiAgZXhwb3J0cy5ib3VuZHMgPSB0b0JvdW5kcztcbiAgZXhwb3J0cy5jYW52YXMgPSBjYW52YXM7XG4gIGV4cG9ydHMuY2lyY2xlID0gY2lyY2xlO1xuICBleHBvcnRzLmNpcmNsZU1hcmtlciA9IGNpcmNsZU1hcmtlcjtcbiAgZXhwb3J0cy5jb250cm9sID0gY29udHJvbDtcbiAgZXhwb3J0cy5kaXZJY29uID0gZGl2SWNvbjtcbiAgZXhwb3J0cy5leHRlbmQgPSBleHRlbmQ7XG4gIGV4cG9ydHMuZmVhdHVyZUdyb3VwID0gZmVhdHVyZUdyb3VwO1xuICBleHBvcnRzLmdlb0pTT04gPSBnZW9KU09OO1xuICBleHBvcnRzLmdlb0pzb24gPSBnZW9Kc29uO1xuICBleHBvcnRzLmdyaWRMYXllciA9IGdyaWRMYXllcjtcbiAgZXhwb3J0cy5pY29uID0gaWNvbjtcbiAgZXhwb3J0cy5pbWFnZU92ZXJsYXkgPSBpbWFnZU92ZXJsYXk7XG4gIGV4cG9ydHMubGF0TG5nID0gdG9MYXRMbmc7XG4gIGV4cG9ydHMubGF0TG5nQm91bmRzID0gdG9MYXRMbmdCb3VuZHM7XG4gIGV4cG9ydHMubGF5ZXJHcm91cCA9IGxheWVyR3JvdXA7XG4gIGV4cG9ydHMubWFwID0gY3JlYXRlTWFwO1xuICBleHBvcnRzLm1hcmtlciA9IG1hcmtlcjtcbiAgZXhwb3J0cy5wb2ludCA9IHRvUG9pbnQ7XG4gIGV4cG9ydHMucG9seWdvbiA9IHBvbHlnb247XG4gIGV4cG9ydHMucG9seWxpbmUgPSBwb2x5bGluZTtcbiAgZXhwb3J0cy5wb3B1cCA9IHBvcHVwO1xuICBleHBvcnRzLnJlY3RhbmdsZSA9IHJlY3RhbmdsZTtcbiAgZXhwb3J0cy5zZXRPcHRpb25zID0gc2V0T3B0aW9ucztcbiAgZXhwb3J0cy5zdGFtcCA9IHN0YW1wO1xuICBleHBvcnRzLnN2ZyA9IHN2ZztcbiAgZXhwb3J0cy5zdmdPdmVybGF5ID0gc3ZnT3ZlcmxheTtcbiAgZXhwb3J0cy50aWxlTGF5ZXIgPSB0aWxlTGF5ZXI7XG4gIGV4cG9ydHMudG9vbHRpcCA9IHRvb2x0aXA7XG4gIGV4cG9ydHMudHJhbnNmb3JtYXRpb24gPSB0b1RyYW5zZm9ybWF0aW9uO1xuICBleHBvcnRzLnZlcnNpb24gPSB2ZXJzaW9uO1xuICBleHBvcnRzLnZpZGVvT3ZlcmxheSA9IHZpZGVvT3ZlcmxheTtcblxuICB2YXIgb2xkTCA9IHdpbmRvdy5MO1xuICBleHBvcnRzLm5vQ29uZmxpY3QgPSBmdW5jdGlvbigpIHtcbiAgXHR3aW5kb3cuTCA9IG9sZEw7XG4gIFx0cmV0dXJuIHRoaXM7XG4gIH1cbiAgLy8gQWx3YXlzIGV4cG9ydCB1cyB0byB3aW5kb3cgZ2xvYmFsIChzZWUgIzIzNjQpXG4gIHdpbmRvdy5MID0gZXhwb3J0cztcblxufSkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bGVhZmxldC1zcmMuanMubWFwXG4iLCIvKiohXG4qIEBsaWNlbnNlXG4qIFRoZSBNSVQgTGljZW5zZSAoTUlUKVxuKiBcbiogQ29weXJpZ2h0IChjKSAyMDE3IE3DpW5zIEJlY2ttYW4gLSB3d3cuc3BhdGlhbGlsbHVzaW9ucy5jb21cbiogXG4qIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4qIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4qIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4qIFxuKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiogXG4qIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4qIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4qIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4qIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4qIFNPRlRXQVJFLlxuKiBcbiogTW9yZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgYXQgd3d3LnNwYXRpYWxpbGx1c2lvbnMuY29tIFxuKi9cbiFmdW5jdGlvbihJLHQpe1wib2JqZWN0XCI9PXR5cGVvZiBleHBvcnRzJiZcInVuZGVmaW5lZFwiIT10eXBlb2YgbW9kdWxlP21vZHVsZS5leHBvcnRzPXQoKTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFwibWlsc3ltYm9sXCIsdCk6SS5tcz10KCl9KHRoaXMsZnVuY3Rpb24oKXtcInVzZSBzdHJpY3RcIjt2YXIgdD17QmxhY2s6e0NpdmlsaWFuOlwiYmxhY2tcIixGcmllbmQ6XCJibGFja1wiLEhvc3RpbGU6XCJibGFja1wiLE5ldXRyYWw6XCJibGFja1wiLFVua25vd246XCJibGFja1wifSxEYXJrOntDaXZpbGlhbjpcInJnYig4MCwwLDgwKVwiLEZyaWVuZDpcInJnYigwLDEwNywxNDApXCIsSG9zdGlsZTpcInJnYigyMDAsMCwwKVwiLE5ldXRyYWw6XCJyZ2IoMCwxNjAsMClcIixVbmtub3duOlwicmdiKDIyNSwyMjAsMClcIn0sRnJhbWVDb2xvcjp7Q2l2aWxpYW46XCJyZ2IoMjU1LDAsMjU1KVwiLEZyaWVuZDpcInJnYigwLCAyNTUsIDI1NSlcIixIb3N0aWxlOlwicmdiKDI1NSwgMCwgMClcIixOZXV0cmFsOlwicmdiKDAsIDI1NSwgMClcIixVbmtub3duOlwicmdiKDI1NSwgMjU1LCAwKVwifSxJY29uQ29sb3I6e0NpdmlsaWFuOlwicmdiKDI1NSwwLDI1NSlcIixGcmllbmQ6XCJyZ2IoMCwgMjU1LCAyNTUpXCIsSG9zdGlsZTpcInJnYigyNTUsIDAsIDApXCIsTmV1dHJhbDpcInJnYigwLCAyNTUsIDApXCIsVW5rbm93bjpcInJnYigyNTUsIDI1NSwgMClcIn0sTGlnaHQ6e0NpdmlsaWFuOlwicmdiKDI1NSwxNjEsMjU1KVwiLEZyaWVuZDpcInJnYigxMjgsMjI0LDI1NSlcIixIb3N0aWxlOlwicmdiKDI1NSwxMjgsMTI4KVwiLE5ldXRyYWw6XCJyZ2IoMTcwLDI1NSwxNzApXCIsVW5rbm93bjpcInJnYigyNTUsMjU1LDEyOClcIn0sTWVkaXVtOntDaXZpbGlhbjpcInJnYigxMjgsMCwxMjgpXCIsRnJpZW5kOlwicmdiKDAsMTY4LDIyMClcIixIb3N0aWxlOlwicmdiKDI1NSw0OCw0OSlcIixOZXV0cmFsOlwicmdiKDAsMjI2LDExMClcIixVbmtub3duOlwicmdiKDI1NSwyNTUsMClcIn0sTm9uZTp7Q2l2aWxpYW46ITEsRnJpZW5kOiExLEhvc3RpbGU6ITEsTmV1dHJhbDohMSxVbmtub3duOiExfSxPZmZXaGl0ZTp7Q2l2aWxpYW46XCJyZ2IoMjM5LCAyMzksIDIzOSlcIixGcmllbmQ6XCJyZ2IoMjM5LCAyMzksIDIzOSlcIixIb3N0aWxlOlwicmdiKDIzOSwgMjM5LCAyMzkpXCIsTmV1dHJhbDpcInJnYigyMzksIDIzOSwgMjM5KVwiLFVua25vd246XCJyZ2IoMjM5LCAyMzksIDIzOSlcIn0sV2hpdGU6e0NpdmlsaWFuOlwid2hpdGVcIixGcmllbmQ6XCJ3aGl0ZVwiLEhvc3RpbGU6XCJ3aGl0ZVwiLE5ldXRyYWw6XCJ3aGl0ZVwiLFVua25vd246XCJ3aGl0ZVwifX07ZnVuY3Rpb24gRShJKXt2YXIgdCxFPVtdLFI9W10sZT10aGlzLmNvbG9ycy5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO2lmKCF0aGlzLm1ldGFkYXRhLmZyYW1lJiZ0aGlzLnN0eWxlLmljb258fHZvaWQgMD09PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcudHlwZSlyZXR1cm57cHJlOkUscG9zdDpSLGJib3g6dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveH07dmFyIEEsQz17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9O3N3aXRjaChDLnR5cGUpe2Nhc2VcInBhdGhcIjpDLmQ9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZy5kO2JyZWFrO2Nhc2VcImNpcmNsZVwiOkMuY3g9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZy5jeCxDLmN5PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuY3ksQy5yPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5Lmcucn0oQy5maWxsPXRoaXMuY29sb3JzLmZpbGxDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxDLmZpbGxvcGFjaXR5PXRoaXMuc3R5bGUuZmlsbE9wYWNpdHksQy5zdHJva2U9ZSxDLnN0cm9rZXdpZHRoPTEwPD10aGlzLnN0eWxlLnNpemU/dGhpcy5zdHlsZS5zdHJva2VXaWR0aDoxMCx0aGlzLnN0eWxlLmZyYW1lJiYwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSYmKFwicGF0aFwiPT1DLnR5cGUmJnRoaXMubWV0YWRhdGEuZmlsbCYmIXRoaXMuc3R5bGUubW9ub0NvbG9yPygoQT17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9KS5kPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuZCtcIiBaXCIsQS5zdHJva2V3aWR0aD0xMDw9dGhpcy5zdHlsZS5zaXplP3RoaXMuc3R5bGUuc3Ryb2tlV2lkdGg6MTApOkE9QyxFLnB1c2goSS5vdXRsaW5lKEEsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSk7aWYoXCJcIj09dGhpcy5zdHlsZS5tb25vQ29sb3ImJnRoaXMuc3R5bGUuZmlsbHx8IXRoaXMubWV0YWRhdGEubm90cHJlc2VudHx8KEMuc3Ryb2tlZGFzaGFycmF5PXRoaXMubWV0YWRhdGEubm90cHJlc2VudCksUi5wdXNoKEMpLHRoaXMubWV0YWRhdGEuc3BhY2UmJih0PXtGcmllbmQ6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTSAxMDAsMzAgQyA5MCwzMCA4MCwzNSA2OC42NTYyNSw1MCBsIDYyLjY4NzUsMCBDIDEyMCwzNSAxMTAsMzAgMTAwLDMwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTTY3LDUwIEwxMDAsMjAgMTMzLDUwIHpcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNNDUsNTAgbDAsLTIwIDExMCwwIDAsMjAgelwifSxVbmtub3duOnt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOmUsZDpcIk0gMTAwIDIyLjUgQyA4NSAyMi41IDcwIDMxLjY2OTIxMSA2NiA1MCBMIDEzNCA1MCBDIDEzMCAzMS42NjkyMDQgMTE1IDIyLjUgMTAwIDIyLjUgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLm1ldGFkYXRhLmFjdGl2aXR5JiYodD17RnJpZW5kOnt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOmUsZDpcIm0gMTYwLDEzNSAwLDE1IDE1LDAgMCwtMTUgeiBtIC0xMzUsMCAxNSwwIDAsMTUgLTE1LDAgeiBtIDEzNSwtODUgMCwxNSAxNSwwIDAsLTE1IHogbSAtMTM1LDAgMTUsMCAwLDE1IC0xNSwwIHpcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNIDEwMCAyOCBMIDg5LjQwNjI1IDM4LjU5Mzc1IEwgMTAwIDQ5LjIxODc1IEwgMTEwLjU5Mzc1IDM4LjU5Mzc1IEwgMTAwIDI4IHogTSAzOC42ODc1IDg5LjMxMjUgTCAyOC4wNjI1IDk5LjkzNzUgTCAzOC42ODc1IDExMC41MzEyNSBMIDQ5LjI4MTI1IDk5LjkzNzUgTCAzOC42ODc1IDg5LjMxMjUgeiBNIDE2MS40MDYyNSA4OS40MDYyNSBMIDE1MC43ODEyNSAxMDAgTCAxNjEuNDA2MjUgMTEwLjU5Mzc1IEwgMTcyIDEwMCBMIDE2MS40MDYyNSA4OS40MDYyNSB6IE0gOTkuOTM3NSAxNTAuNzE4NzUgTCA4OS4zMTI1IDE2MS4zMTI1IEwgOTkuOTM3NSAxNzEuOTM3NSBMIDExMC41MzEyNSAxNjEuMzEyNSBMIDk5LjkzNzUgMTUwLjcxODc1XCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxNDAsMTQwIDE1LDAgMCwxNSAtMTUsMCB6IG0gLTgwLDAgMCwxNSAtMTUsMCAwLC0xNSB6IG0gODAsLTgwIDAsLTE1IDE1LDAgMCwxNSB6IG0gLTgwLDAgLTE1LDAgMCwtMTUgMTUsMCB6XCJ9LFVua25vd246e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTSAxMDcuOTY4NzUgMzEuNDY4NzUgTCA5Mi4wMzEyNSAzMS43MTg3NSBMIDkyLjAzMTI1IDQ2LjQzNzUgTCAxMDcuNzE4NzUgNDYuNDM3NSBMIDEwNy45Njg3NSAzMS40Njg3NSB6IE0gNDcuMDMxMjUgOTIuNSBMIDMxLjA5Mzc1IDkyLjc1IEwgMzEuMDkzNzUgMTA3LjUgTCA0Ni43ODEyNSAxMDcuNSBMIDQ3LjAzMTI1IDkyLjUgeiBNIDE2OC40Mzc1IDkyLjUgTCAxNTIuNSA5Mi43NSBMIDE1Mi41IDEwNy41IEwgMTY4LjE4NzUgMTA3LjUgTCAxNjguNDM3NSA5Mi41IHogTSAxMDcuOTY4NzUgMTUzLjU2MjUgTCA5Mi4wMzEyNSAxNTMuODEyNSBMIDkyLjAzMTI1IDE2OC41MzEyNSBMIDEwNy43MTg3NSAxNjguNTMxMjUgTCAxMDcuOTY4NzUgMTUzLjU2MjUgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLm1ldGFkYXRhLmN5YmVyc3BhY2UmJih0PXtGcmllbmQ6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxMzUsMTUwIDQwLC00MCAwLDQwIHpcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJtIDE1MCw3OCAwLDQ0IDIyLC0yMiB6XCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxMTUsMTU1IDQwLC00MCAwLDQwIHpcIn0sVW5rbm93bjp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNIDE1MCA2NS43IEwgMTUwIDEzNCBDIDE3NiAxMjMgMTc2IDc3LjIgMTUwIDY1LjcgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLnN0eWxlLmZpbGwmJnRoaXMuc3R5bGUuZnJhbWUmJnRoaXMubWV0YWRhdGEubm90cHJlc2VudCYmIXRoaXMubWV0YWRhdGEudW5mcmFtZWQpe3N3aXRjaCgoQz17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9KS50eXBlKXtjYXNlXCJwYXRoXCI6Qy5kPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuZDticmVhaztjYXNlXCJjaXJjbGVcIjpDLmN4PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuY3gsQy5jeT10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLmN5LEMucj10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnJ9Qy5maWxsPSExLEMuc3Ryb2tlPXRoaXMuY29sb3JzLndoaXRlW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dLEMuc3Ryb2tld2lkdGg9cGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKSsxLEMuc3Ryb2tlZGFzaGFycmF5PXRoaXMubWV0YWRhdGEubm90cHJlc2VudCxSLnB1c2goQyl9cmV0dXJue3ByZTpFLHBvc3Q6UixiYm94OnRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3h9fWZ1bmN0aW9uIFIoSSl7dmFyIHQsRSxSPVtdLGU9W10sQT1uZXcgSS5CQm94KHt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSksQz1bXSxUPVtdLFM9W10sTj1bXTtpZih0aGlzLnN0eWxlLmljb24pe3ZhciBPPXRoaXMuY29sb3JzLmZpbGxDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxHPXRoaXMuY29sb3JzLmZpbGxDb2xvci5OZXV0cmFsO0U9dGhpcy5jb2xvcnMuaWNvbkNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO3ZhciBvPXRoaXMuY29sb3JzLmljb25GaWxsQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0sTT10aGlzLmNvbG9ycy5ub25lW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dLGk9dGhpcy5jb2xvcnMuYmxhY2tbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0sTD10aGlzLmNvbG9ycy53aGl0ZVt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxzPSh0aGlzLm1ldGFkYXRhLlNURDI1MjU/XCIyNTI1XCI6XCJBUFA2XCIpK1wiLFwiK3RoaXMubWV0YWRhdGEuZGltZW5zaW9uK3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24rdGhpcy5tZXRhZGF0YS5ub3RwcmVzZW50K3RoaXMubWV0YWRhdGEubnVtYmVyU0lEQytcIixmcmFtZTpcIit0aGlzLnN0eWxlLmZyYW1lK1wiLGFsdGVybmF0ZU1lZGFsOlwiK3RoaXMuc3R5bGUuYWx0ZXJuYXRlTWVkYWwrXCIsY29sb3JzOntmaWxsY29sb3I6XCIrTytcIixuZXV0cmFsQ29sb3JcIitHK1wiLGljb25Db2xvcjpcIitFK1wiLGljb25GaWxsQ29sb3I6XCIrbytcIixub25lOlwiK00rXCIsYmxhY2s6XCIraStcIix3aGl0ZTpcIitMK1wifVwiO2lmKEM9SS5faWNvbkNhY2hlLmhhc093blByb3BlcnR5KHMpP0kuX2ljb25DYWNoZVtzXS5pY29uUGFydHM6KEkuX2ljb25DYWNoZVtzXT17fSxJLl9pY29uQ2FjaGVbc10uaWNvblBhcnRzPUkuX2dldEljb25QYXJ0cyh0aGlzLm1ldGFkYXRhLHRoaXMuY29sb3JzLHRoaXMubWV0YWRhdGEuU1REMjUyNSx0aGlzLnN0eWxlLm1vbm9Db2xvcix0aGlzLnN0eWxlLmFsdGVybmF0ZU1lZGFsKSksdGhpcy5tZXRhZGF0YS5udW1iZXJTSURDfHwoLTEhPVtcIldNR1gtLVwiLFwiV01NWC0tXCIsXCJXTUZYLS1cIixcIldNWC0tLVwiLFwiV01TWC0tXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkKSYmKEEueTE9MTAsXCJVbmtub3duXCIhPXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24mJihBLngyPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3gueDIrMjApKSxJLl9pY29uQ2FjaGVbc10uaGFzT3duUHJvcGVydHkoXCJsZXR0ZXJTSURDXCIpPyh0PUkuX2ljb25DYWNoZVtzXS5sZXR0ZXJTSURDLmljb25zLE49SS5faWNvbkNhY2hlW3NdLmxldHRlclNJREMuYmJveCk6XCJmdW5jdGlvblwiPT10eXBlb2YgSS5fZ2V0SWNvbnMubGV0dGVyPyhJLl9pY29uQ2FjaGVbc10ubGV0dGVyU0lEQz1JLl9nZXRJY29ucy5sZXR0ZXIoSSxDLHRoaXMubWV0YWRhdGEuU1REMjUyNSksdD1JLl9pY29uQ2FjaGVbc10ubGV0dGVyU0lEQy5pY29ucyxOPUkuX2ljb25DYWNoZVtzXS5sZXR0ZXJTSURDLmJib3gpOmNvbnNvbGUud2FybihcIm1zLl9nZXRJY29ucy5sZXR0ZXIoKSBpcyBub3QgcHJlc2VudCwgeW91IHdpbGwgbmVlZCB0byBsb2FkIGZ1bmN0aW9uYWxpdHkgZm9yIGxldHRlciBiYXNlZCBTSURDc1wiKSksdGhpcy5tZXRhZGF0YS5udW1iZXJTSURDKXt2YXIgbj1TdHJpbmcodGhpcy5vcHRpb25zLnNpZGMpLnN1YnN0cig0LDIpO0kuX2ljb25DYWNoZVtzXS5oYXNPd25Qcm9wZXJ0eShcIm51bWJlclNJRENcIik/SS5faWNvbkNhY2hlW3NdLm51bWJlclNJREMuc3ltYm9sU2V0Lmhhc093blByb3BlcnR5KG4pPyh0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBJLl9nZXRJY29ucy5udW1iZXI/KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXT1JLl9nZXRJY29ucy5udW1iZXIoSSxuLEMsdGhpcy5tZXRhZGF0YS5TVEQyNTI1KSx0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0SWNvbnMubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIik6KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDPXt9LEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldD17fSxcImZ1bmN0aW9uXCI9PXR5cGVvZiBJLl9nZXRJY29ucy5udW1iZXI/KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXT1JLl9nZXRJY29ucy5udW1iZXIoSSxuLEMsdGhpcy5tZXRhZGF0YS5TVEQyNTI1KSx0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0SWNvbnMubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIikpfXZhciBhPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDpFPXRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwibSA5NC44MjA2LDc4LjEzNzIgYyAtMC40NTQyLDYuODk4MyAwLjY1MzIsMTQuMzIzIDUuMzQyNCwxOS42OTg1IDQuNTA5LDUuNjkzMyAxMS4zMDksOS4zNTczIDE0Ljk4LDE1LjcyODMgMy4xNjQsNi4zNTMgLTAuMDksMTQuMjQ1IC01LjkwMywxNy44MjIgLTcuMjY4LDQuODE3IC0xOC42MjE5LDIuNzg1IC0yMi43MzI4LC01LjI0OSAtMS41NTExLC0yLjc5NiAtMi4zODI4LC01LjkzMSAtMi44ODE1LC05LjA3MSAtMy41MDQ4LDAuNDE2IC03LjAwOTMsMC44MzUgLTEwLjUxNDIsMS4yNTIgMC44MjM5LDguNTU1IDUuMjI2MywxNy4yODcgMTMuMjU0NCwyMS4xMTEgNy44MjMyLDMuNzM2IDE3LjE4OTEsMy43ODMgMjUuMzI5MSwxLjA1MiA4Ljg0NiwtMy4xMDMgMTUuNzM3LC0xMS45NTggMTUuMTcxLC0yMS41MzcgMC4wNSwtNi45NTEgLTQuMjcyLC0xMi44NSAtOS4xMzQsLTE3LjQwMyAtNC41MjYsLTQuNjk0OSAtMTEuMDQ4LC04LjM4NjIgLTEyLjQwMSwtMTUuMjc0OCAtMS4yMTUsLTIuMzYzOSAtMC44ODksLTguMTI5IC0wLjg4OSwtOC4xMjkgeiBtIC0wLjYyNTMsLTIwLjUxNzcgMCwxMS42NTA5IDExLjY1MjcsMCAwLC0xMS42NTA5IHpcIn1dO2lmKHRoaXMubWV0YWRhdGEubnVtYmVyU0lEQyl7dmFyIGw9dFt0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNildO2lmKHZvaWQgMD09PWwmJjk1PD10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDQsMikmJihsPXRbdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDQpK1wiMDBcIl0pLHZvaWQgMD09PWwpXCIwMDAwMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDYpJiZcIlwiIT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNikmJihlLnB1c2goYSksdGhpcy52YWxpZEljb249ITEpO2Vsc2V7dmFyIHI9TnVtYmVyKHRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoMCw2KSk7dGhpcy5tZXRhZGF0YS5kaXNtb3VudGVkJiYxMTAzMDE8PXImJnI8PTExMDQwMyYmKFwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpJiZcIjAwXCIhPXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSYmKGw9W0kuX3NjYWxlKC41LGwpXSksXCIwMFwiPT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDYsMikmJlwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig4LDIpJiYobD1bSS5fdHJhbnNsYXRlKDAsLTEwLEkuX3NjYWxlKC43LGwpKV0pLFwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpJiZcIjAwXCI9PXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSYmKGw9W0kuX3RyYW5zbGF0ZSgwLDEwLEkuX3NjYWxlKC43LGwpKV0pKSxlLnB1c2gobCl9aWYoTi5oYXNPd25Qcm9wZXJ0eSh0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNikpJiYoQT1uZXcgSS5CQm94KE5bdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDYpXSkpLFwiOTVcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLkhFQURRVUFSVEVSUyBPUiBIRUFEUVVBUlRFUlMgRUxFTUVOVFwiXSksXCI5NlwiPT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDQsMikmJmUucHVzaChDW1wiR1IuSUMuRkYuRElWSVNJT04gQU5EIEJFTE9XIFNVUFBPUlRcIl0pLFwiOTdcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0pLFwiOThcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSksXCIwMFwiIT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDYsMikpe3ZhciBQPVRbdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpXTt2b2lkIDA9PT1QP3RoaXMudmFsaWRJY29uPSExOmUucHVzaChQKX1pZihcIjAwXCIhPXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSl7dmFyIHk9U1t0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDgsMildO3ZvaWQgMD09PXk/dGhpcy52YWxpZEljb249ITE6ZS5wdXNoKHkpfX1lbHNle3ZhciBjPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigwLDEpK1wiLVwiK3RoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpK1wiLVwiK3RoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig0LDYpO3QuaGFzT3duUHJvcGVydHkoYyk/ZS5wdXNoKHRbY10pOlwiLS0tLS0tXCIhPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig0LDYpJiZcIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KSYmKGUucHVzaChhKSx0aGlzLnZhbGlkSWNvbj0hMSksTltjXSYmKEE9bmV3IEkuQkJveChOW2NdKSl9fXJldHVybiB0aGlzLnN0eWxlLmZyYW1lJiZ0aGlzLm1ldGFkYXRhLmZpbGwmJiF0aGlzLnN0eWxlLm1vbm9Db2xvciYmIXRoaXMubWV0YWRhdGEuY29udHJvbE1lYXN1cmV8fDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpBfX1mdW5jdGlvbiBlKEkpe3ZhciB0LEU9W10sUj1bXSxlPW5ldyBJLkJCb3godGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCksQT10aGlzLnN0eWxlLmZyYW1lQ29sb3I/dGhpcy5zdHlsZS5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxDPW5ldyBJLkJCb3gsVD1OdW1iZXIodGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RofHxJLl9ocVN0YWZmTGVuZ3RoKTtpZih0aGlzLm1ldGFkYXRhLmhlYWRxdWFydGVycyYmMDxUKXt2YXIgUz0xMDA7LTE8W1wiQWlyRnJpZW5kXCIsXCJBaXJOZXV0cmFsXCIsXCJHcm91bmRGcmllbmRcIixcIkdyb3VuZE5ldXRyYWxcIixcIlNlYU5ldXRyYWxcIixcIlN1YnN1cmZhY2VOZXV0cmFsXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5kaW1lbnNpb24rdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbikmJihTPWUueTIpLHRoaXMubWV0YWRhdGEuZGltZW5zaW9uVHlwZSt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uVHlwZT09XCJTdWJzdXJmYWNlRnJpZW5kXCImJihTPWUueTEpLHQ9e3R5cGU6XCJwYXRoXCIsZDpcIk1cIitlLngxK1wiLFwiK1MrXCIgTFwiK2UueDErXCIsXCIrKGUueTIrVCl9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLnkyPWUueTIrVH1pZih0aGlzLm1ldGFkYXRhLnRhc2tGb3JjZSl7dmFyIE49e1wiQ29ycHMvTUVGXCI6MTEwLEFybXk6MTQ1LFwiQXJteSBHcm91cC9mcm9udFwiOjE4MCxcIlJlZ2lvbi9UaGVhdGVyXCI6MjE1fTt0PXt0eXBlOlwicGF0aFwiLGQ6XCJNXCIrKDEwMC0oTj1OW3RoaXMubWV0YWRhdGEuZWNoZWxvbl18fDkwKS8yKStcIixcIitlLnkxK1wiIExcIisoMTAwLU4vMikrXCIsXCIrKGUueTEtNDApK1wiIFwiKygxMDArTi8yKStcIixcIisoZS55MS00MCkrXCIgXCIrKDEwMCtOLzIpK1wiLFwiK2UueTF9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLngxPU1hdGgubWluKGUueDEsMTAwLU4vMiksQy54Mj1NYXRoLm1heChlLngyLDEwMCtOLzIpLEMueTE9ZS55MS00MH1pZih0aGlzLm1ldGFkYXRhLmluc3RhbGxhdGlvbil7dmFyIE89MDstMTxbXCJBaXJIb3N0aWxlXCIsXCJHcm91bmRIb3N0aWxlXCIsXCJTZWFIb3N0aWxlXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5kaW1lbnNpb24rdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbikmJihPPTE0KSwtMTxbXCJBaXJVbmtub3duXCIsXCJHcm91bmRVbmtub3duXCIsXCJTZWFVbmtub3duXCIsXCJBaXJGcmllbmRcIixcIlNlYUZyaWVuZFwiXS5pbmRleE9mKHRoaXMubWV0YWRhdGEuZGltZW5zaW9uK3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24pJiYoTz0yKSx0PXt0eXBlOlwicGF0aFwiLGZpbGw6QSxkOlwiTTg1LFwiKyhlLnkxK08tdGhpcy5zdHlsZS5zdHJva2VXaWR0aC8yKStcIiA4NSxcIisoZS55MS0xMCkrXCIgMTE1LFwiKyhlLnkxLTEwKStcIiAxMTUsXCIrKGUueTErTy10aGlzLnN0eWxlLnN0cm9rZVdpZHRoLzIpK1wiIDEwMCxcIisoZS55MS10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStcIiBaXCJ9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLm1lcmdlKHt5MTplLnkxLTEwfSl9aWYodGhpcy5tZXRhZGF0YS5mZWludER1bW15KXt2YXIgRz1lLnkxLTAtZS53aWR0aCgpLzI7dD17dHlwZTpcInBhdGhcIixzdHJva2VkYXNoYXJyYXk6SS5fZGFzaEFycmF5cy5mZWludER1bW15LGQ6XCJNMTAwLFwiK0crXCIgTFwiK2UueDErXCIsXCIrKGUueTEtMCkrXCIgTTEwMCxcIitHK1wiIExcIitlLngyK1wiLFwiKyhlLnkxLTApfSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZFLnB1c2goSS5vdXRsaW5lKHQsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSxSLnB1c2godCksQy5tZXJnZSh7eTE6R30pfWlmKHRoaXMubWV0YWRhdGEuZWNoZWxvbil7dmFyIG89dGhpcy5tZXRhZGF0YS5pbnN0YWxsYXRpb24/MTU6MCxNPXtcIlRlYW0vQ3Jld1wiOntnOlt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTplLnkxLTIwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGQ6XCJNODAsXCIrKGUueTEtMTApK1wiTDEyMCxcIisoZS55MS0zMCl9XSxiYm94Ont5MTplLnkxLTQwLW99fSxTcXVhZDp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTAwLGN5OmUueTEtMjAscjo3LjV9XSxiYm94Ont5MTplLnkxLTIwLTcuNS1vfX0sU2VjdGlvbjp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTE1LGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4Ojg1LGN5OmUueTEtMjAscjo3LjV9XSxiYm94Ont5MTplLnkxLTIwLTcuNS1vfX0sXCJQbGF0b29uL2RldGFjaG1lbnRcIjp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTAwLGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4OjcwLGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4OjEzMCxjeTplLnkxLTIwLHI6Ny41fV0sYmJveDp7eTE6ZS55MS0yMC03LjUtb319LFwiQ29tcGFueS9iYXR0ZXJ5L3Ryb29wXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLFwiKyhlLnkxLTEwKStcIkwxMDAsXCIrKGUueTEtMzUpfV0sYmJveDp7eTE6ZS55MS00MC1vfX0sXCJCYXR0YWxpb24vc3F1YWRyb25cIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk05MCxcIisoZS55MS0xMCkrXCJMOTAsXCIrKGUueTEtMzUpfSx7dHlwZTpcInBhdGhcIixkOlwiTTExMCxcIisoZS55MS0xMCkrXCJMMTEwLFwiKyhlLnkxLTM1KX1dLGJib3g6e3kxOmUueTEtNDAtb319LFwiUmVnaW1lbnQvZ3JvdXBcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrKGUueTEtMTApK1wiTDEwMCxcIisoZS55MS0zNSl9LHt0eXBlOlwicGF0aFwiLGQ6XCJNMTIwLFwiKyhlLnkxLTEwKStcIkwxMjAsXCIrKGUueTEtMzUpfSx7dHlwZTpcInBhdGhcIixkOlwiTTgwLFwiKyhlLnkxLTEwKStcIkw4MCxcIisoZS55MS0zNSl9XSxiYm94Ont5MTplLnkxLTQwLW99fSxCcmlnYWRlOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTg3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjVcIn1dLGJib3g6e3kxOmUueTEtMTUtMjUtb319LERpdmlzaW9uOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTcwLFwiKyhlLnkxLTEwKStcIiBsMjUsLTI1IG0wLDI1IGwtMjUsLTI1ICAgTTEwNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjcwLHgyOjEzMH19LFwiQ29ycHMvTUVGXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNNTIuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICBNODcuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICBNMTIyLjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjVcIn1dLGJib3g6e3kxOmUueTEtMTUtMjUtbyx4MTo1Mi41LHgyOjE0Ny41fX0sQXJteTp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0zNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE03MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0xMDUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTE0MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjM1LHgyOjE2NX19LFwiQXJteSBHcm91cC9mcm9udFwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTE3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTUyLjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTg3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTEyMi41LFwiKyhlLnkxLTEwKStcIiBsMjUsLTI1IG0wLDI1IGwtMjUsLTI1ICAgICAgIE0xNTcuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjE3LjUseDI6MTgyLjV9fSxcIlJlZ2lvbi9UaGVhdGVyXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNMCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0zNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE03MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0xMDUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTE0MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICAgTTE3NSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjAseDI6MjAwfX0sQ29tbWFuZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk03MCxcIisoZS55MS0yMi41KStcIiBsMjUsMCBtLTEyLjUsMTIuNSBsMCwtMjUgICBNMTA1LFwiKyhlLnkxLTIyLjUpK1wiIGwyNSwwIG0tMTIuNSwxMi41IGwwLC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjcwLHgyOjEzMH19fTtNLmhhc093blByb3BlcnR5KHRoaXMubWV0YWRhdGEuZWNoZWxvbikmJih0PU1bdGhpcy5tZXRhZGF0YS5lY2hlbG9uXS5nLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUoe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTotbyxkcmF3OnR9LHRoaXMuc3R5bGUub3V0bGluZVdpZHRoLHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsXCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUub3V0bGluZUNvbG9yP3RoaXMuc3R5bGUub3V0bGluZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuc3R5bGUub3V0bGluZUNvbG9yKSksUi5wdXNoKHt0eXBlOlwidHJhbnNsYXRlXCIseDowLHk6LW8sZHJhdzp0fSksQy5tZXJnZShNW3RoaXMubWV0YWRhdGEuZWNoZWxvbl0uYmJveCkpfWlmKHRoaXMubWV0YWRhdGEubW9iaWxpdHkpe3RoaXMuc3R5bGUuZnJhbWV8fChlLnkyPXRoaXMuYmJveC55MiksXCJOZXV0cmFsXCI9PXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24mJihcIlRvd2VkXCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHkmJlwiU2hvcnQgdG93ZWQgYXJyYXlcIiE9dGhpcy5tZXRhZGF0YS5tb2JpbGl0eSYmXCJMb25nIHRvd2VkIEFycmF5XCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHl8fChlLnkyKz04KSxcIk92ZXIgc25vdyAocHJpbWUgbW92ZXIpXCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHkmJlwiU2xlZFwiIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fHwoZS55Mis9MTMpKTt2YXIgaT17XCJXaGVlbGVkIGxpbWl0ZWQgY3Jvc3MgY291bnRyeVwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA1MywxIGwgOTQsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjU4LGN5Ojgscjo4fSx7dHlwZTpcImNpcmNsZVwiLGN4OjE0MixjeTo4LHI6OH1dLGJib3g6e3kyOmUueTIrMTZ9fSxcIldoZWVsZWQgY3Jvc3MgY291bnRyeVwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA1MywxIGwgOTQsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjU4LGN5Ojgscjo4fSx7dHlwZTpcImNpcmNsZVwiLGN4OjE0MixjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6OCxyOjh9XSxiYm94Ont5MjplLnkyKzE2fX0sVHJhY2tlZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTMsMSBsIDEwMCwwIGMxNSwwIDE1LDE1IDAsMTUgbCAtMTAwLDAgYy0xNSwwIC0xNSwtMTUgMCwtMTVcIn1dLGJib3g6e3kyOmUueTIrMTgseDE6NDIseDI6MTY4fX0sXCJXaGVlbGVkIGFuZCB0cmFja2VkIGNvbWJpbmF0aW9uXCI6e2c6W3t0eXBlOlwiY2lyY2xlXCIsY3g6NTgsY3k6OCxyOjh9LHt0eXBlOlwicGF0aFwiLGQ6XCJNIDgzLDEgbCA3MCwwIGMxNSwwIDE1LDE1IDAsMTUgbCAtNzAsMCBjLTE1LDAgLTE1LC0xNSAwLC0xNVwifV0sYmJveDp7eTI6ZS55MisxNix4MjoxNjh9fSxUb3dlZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNjMsMSBsIDc0LDBcIn0se3R5cGU6XCJjaXJjbGVcIixjeDo1OCxjeTozLHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxNDIsY3k6MyxyOjh9XSxiYm94Ont5MjplLnkyKzEwfX0sUmFpbDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTMsMSBsIDk2LDBcIn0se3R5cGU6XCJjaXJjbGVcIixjeDo1OCxjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDo3MyxjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxMjcsY3k6OCxyOjh9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTQyLGN5Ojgscjo4fV0sYmJveDp7eTI6ZS55MisxNn19LFwiT3ZlciBzbm93IChwcmltZSBtb3ZlcilcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTAsLTkgbDEwLDEwIDkwLDBcIn1dLGJib3g6e3kyOmUueTIrOX19LFNsZWQ6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNIDE0NSwtMTIgIGMxNSwwIDE1LDE1IDAsMTUgbCAtOTAsMCBjLTE1LDAgLTE1LC0xNSAwLC0xNVwifV0sYmJveDp7eTI6ZS55MisxNSx4MTo0Mix4MjoxNjh9fSxcIlBhY2sgYW5pbWFsc1wiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA4MCwyMCBsIDEwLC0yMCAxMCwyMCAxMCwtMjAgMTAsMjBcIn1dLGJib3g6e3kyOmUueTIrMjB9fSxCYXJnZTp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTAsMSBsIDEwMCwwIGMwLDEwIC0xMDAsMTAgLTEwMCwwXCJ9XSxiYm94Ont5MjplLnkyKzEwfX0sQW1waGliaW91czp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNjUsMTAgYyAwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMFwifV0sYmJveDp7eTI6ZS55MisyMH19LFwiU2hvcnQgdG93ZWQgYXJyYXlcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpBLGQ6XCJNIDUwLDUgbCAxMDAsMCBNNTAsMCBsMTAsMCAwLDEwIC0xMCwwIHogTTE1MCwwIGwtMTAsMCAwLDEwIDEwLDAgeiBNMTAwLDAgbDUsNSAtNSw1IC01LC01IHpcIn1dLGJib3g6e3kyOmUueTIrMTB9fSxcIkxvbmcgdG93ZWQgQXJyYXlcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpBLGQ6XCJNIDUwLDUgbCAxMDAsMCBNNTAsMCBsMTAsMCAwLDEwIC0xMCwwIHogTTE1MCwwIGwtMTAsMCAwLDEwIDEwLDAgeiBNMTA1LDAgbC0xMCwwIDAsMTAgMTAsMCB6IE03NSwwIGw1LDUgLTUsNSAtNSwtNSB6ICBNMTI1LDAgbDUsNSAtNSw1IC01LC01IHpcIn1dLGJib3g6e3kyOmUueTIrMTB9fX07aS5oYXNPd25Qcm9wZXJ0eSh0aGlzLm1ldGFkYXRhLm1vYmlsaXR5KSYmKHQ9aVt0aGlzLm1ldGFkYXRhLm1vYmlsaXR5XS5nLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUoe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTplLnkyLGRyYXc6dH0sdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSxSLnB1c2goe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTplLnkyLGRyYXc6dH0pLEMubWVyZ2UoaVt0aGlzLm1ldGFkYXRhLm1vYmlsaXR5XS5iYm94KSl9aWYodGhpcy5tZXRhZGF0YS5sZWFkZXJzaGlwKXt2YXIgTD17RnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDQ1LDYwIDU1LC0yNSA1NSwyNVwifX1bdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl07TCYmKEUucHVzaChMKSxDLm1lcmdlKHt5MTplLnkxLTIwfSkpfWZvcih2YXIgcz0wO3M8RS5sZW5ndGg7cysrKUVbc10uaGFzT3duUHJvcGVydHkoXCJmaWxsXCIpfHwoRVtzXS5maWxsPSExKSxFW3NdLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoRVtzXS5zdHJva2U9QSksRVtzXS5oYXNPd25Qcm9wZXJ0eShcInN0cm9rZXdpZHRoXCIpfHwoRVtzXS5zdHJva2V3aWR0aD10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKTtmb3Iocz0wO3M8Ui5sZW5ndGg7cysrKVJbc10uaGFzT3duUHJvcGVydHkoXCJmaWxsXCIpfHwoUltzXS5maWxsPSExKSxSW3NdLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoUltzXS5zdHJva2U9QSksUltzXS5oYXNPd25Qcm9wZXJ0eShcInN0cm9rZXdpZHRoXCIpfHwoUltzXS5zdHJva2V3aWR0aD10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKTtyZXR1cm57cHJlOkUscG9zdDpSLGJib3g6Q319ZnVuY3Rpb24gQShJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCxlPVIueTEsQT1SLnkyO2lmKHRoaXMubWV0YWRhdGEuY29uZGl0aW9uKWlmKHRoaXMubWV0YWRhdGEuZmlsbCYmXCJcIj09PXRoaXMuc3R5bGUubW9ub0NvbG9yJiYhdGhpcy5zdHlsZS5zaW1wbGVTdGF0dXNNb2RpZmllcil7IXRoaXMubWV0YWRhdGEuZnJhbWUmJnRoaXMubWV0YWRhdGEuaWNvbkJvdHRvbSYmKEE9dGhpcy5tZXRhZGF0YS5pY29uQm90dG9tKSx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudCYmKEErPTM1KSxBKz10aGlzLm1ldGFkYXRhLm1vYmlsaXR5PzI1OjUsRS5wdXNoKHt0eXBlOlwicGF0aFwiLHN0cm9rZXdpZHRoOnRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsZmlsbDp7RnVsbHlDYXBhYmxlOlwicmdiKDAsMjU1LDApXCIsRGFtYWdlZDpcInJnYigyNTUsMjU1LDApXCIsRGVzdHJveWVkOlwicmdiKDI1NSwwLDApXCIsRnVsbFRvQ2FwYWNpdHk6XCJyZ2IoMCwgMTgwLCAyNDApXCJ9W3RoaXMubWV0YWRhdGEuY29uZGl0aW9uXSxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwiTVwiK1IueDErXCIsXCIrQStcIiBsXCIrUi53aWR0aCgpK1wiLDAgMCwyNSAtXCIrUi53aWR0aCgpK1wiLDAgelwifSksQSs9MjUsMDx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCYmdC5wdXNoKEkub3V0bGluZShFLHRoaXMuc3R5bGUub3V0bGluZVdpZHRoLHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsXCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUub3V0bGluZUNvbG9yP3RoaXMuc3R5bGUub3V0bGluZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuc3R5bGUub3V0bGluZUNvbG9yKSl9ZWxzZVwiRGFtYWdlZFwiIT10aGlzLm1ldGFkYXRhLmNvbmRpdGlvbiYmXCJEZXN0cm95ZWRcIiE9dGhpcy5tZXRhZGF0YS5jb25kaXRpb258fChFLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0xNTAsMjAgTDUwLDE4MFwiLHN0cm9rZXdpZHRoOjIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXX0pLGU9MjAsQT0xODApLFwiRGVzdHJveWVkXCI9PXRoaXMubWV0YWRhdGEuY29uZGl0aW9uJiZFLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk01MCwyMCBMMTUwLDE4MFwiLHN0cm9rZXdpZHRoOjIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXX0pLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJnQucHVzaChJLm91dGxpbmUoRSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpO3JldHVybntwcmU6dCxwb3N0OkUsYmJveDp7eTE6ZSx5MjpBfX19ZnVuY3Rpb24gQyhJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5iYm94LGU9Ui54MSxBPVIueDIsQz1SLnkxLFQ9Ui55MjtpZihcIlwiIT09dGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRCYXIpe0MtPTY7dmFyIFM9dGhpcy5zdHlsZS5mb250ZmFtaWx5LE49dGhpcy5jb2xvcnMuaWNvbkNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dfHx0aGlzLmNvbG9ycy5pY29uQ29sb3IuRnJpZW5kO0UucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5lbmdhZ2VtZW50QmFyLHg6MTAwLHk6Ui55MS0xMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6MjIsZm9udGZhbWlseTpTLGZvbnR3ZWlnaHQ6XCJib2xkXCIsZmlsbDpOLHN0cm9rZTohMX0pO3ZhciBPPSExO2lmKHRoaXMubWV0YWRhdGEuZmlsbCYmXCJcIj09PXRoaXMuc3R5bGUubW9ub0NvbG9yKXtPPXtUQVJHRVQ6XCJyZ2IoMjU1LCAwLCAwKVwiLFwiTk9OLVRBUkdFVFwiOlwicmdiKDI1NSwgMjU1LCAyNTUpXCIsRVhQSVJFRDpcInJnYigyNTUsIDEyMCwgMClcIn1bdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRUeXBlLnRvVXBwZXJDYXNlKCldfHx0aGlzLmNvbG9ycy5maWxsQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl19dmFyIEcsbz1NYXRoLm1heChSLndpZHRoKCksMTYqdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRCYXIubGVuZ3RoKTtpZihlPU1hdGgubWluKGUsMTAwLW8vMiksQT1NYXRoLm1heChBLDEwMCtvLzIpLEUudW5zaGlmdCh7dHlwZTpcInBhdGhcIixzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGZpbGw6TyxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwiTVwiKygxMDAtby8yKStcIixcIitDK1wiIGxcIitvK1wiLDAgMCwtMjUgLVwiK28rXCIsMCB6XCJ9KSxDLT0yNSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKUc9dGhpcy5tZXRhZGF0YS5maWxsJiZcIlwiPT09dGhpcy5zdHlsZS5tb25vQ29sb3I/RVswXTpFLHQucHVzaChJLm91dGxpbmUoRyx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpfXJldHVybntwcmU6dCxwb3N0OkUsYmJveDp7eDE6ZSx4MjpBLHkxOkMseTI6VH19fWZ1bmN0aW9uIFQoSSl7dmFyIHQ9W10sRT1bXSxSPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3gsZT10aGlzLmNvbG9ycy5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO2lmKHRoaXMubWV0YWRhdGEuZGltZW5zaW9uVW5rbm93biYmZSYmRS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6XCI/XCIseDoxMDAseToxMjcsZmlsbDplLGZvbnRmYW1pbHk6dGhpcy5zdHlsZS5mb250ZmFtaWx5LGZvbnRzaXplOjgwLGZvbnR3ZWlnaHQ6XCJib2xkXCIsdGV4dGFuY2hvcjpcIm1pZGRsZVwifSksdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZyYmZSl7dmFyIEE9MTA7KFwiVW5rbm93blwiPT10aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9ufHxcIkhvc3RpbGVcIj09dGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbiYmXCJTdWJzdXJmYWNlXCIhPXRoaXMubWV0YWRhdGEuZGltZW5zaW9uKSYmKEE9LTEwKSxcIkV4ZXJjaXNlXCI9PXRoaXMubWV0YWRhdGEuY29udGV4dCYmKHRoaXMubWV0YWRhdGEuam9rZXJ8fHRoaXMubWV0YWRhdGEuZmFrZXJ8fEUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OlwiWFwiLHg6Ui54MitBLHk6NjAsZmlsbDplLGZvbnRmYW1pbHk6dGhpcy5zdHlsZS5mb250ZmFtaWx5LGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCIsdGV4dGFuY2hvcjpcInN0YXJ0XCJ9KSx0aGlzLm1ldGFkYXRhLmpva2VyJiZFLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpcIkpcIix4OlIueDIrQSx5OjYwLGZpbGw6ZSxmb250ZmFtaWx5OnRoaXMuc3R5bGUuZm9udGZhbWlseSxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHRhbmNob3I6XCJzdGFydFwifSksdGhpcy5tZXRhZGF0YS5mYWtlciYmRS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6XCJLXCIseDpSLngyK0EseTo2MCxmaWxsOmUsZm9udGZhbWlseTp0aGlzLnN0eWxlLmZvbnRmYW1pbHksZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIix0ZXh0YW5jaG9yOlwic3RhcnRcIn0pLFI9e3gyOlIueDIrQSsyMix5MTozNX0pLFwiU2ltdWxhdGlvblwiPT10aGlzLm1ldGFkYXRhLmNvbnRleHQmJihFLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpcIlNcIix4OlIueDIrQSx5OjYwLGZpbGw6ZSxmb250ZmFtaWx5OnRoaXMuc3R5bGUuZm9udGZhbWlseSxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHRhbmNob3I6XCJzdGFydFwifSksUj1uZXcgSS5CQm94KHt4MjpSLngyK0ErMjIseTE6MzV9KSl9cmV0dXJuIDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJnQucHVzaChJLm91dGxpbmUoRSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6dCxwb3N0OkUsYmJveDpSfX1mdW5jdGlvbiBTKEkpe3ZhciB0LEUsUj1bXSxlPVtdLEE9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCxTPShcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5pbmZvQ29sb3I/dGhpcy5zdHlsZS5pbmZvQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5pbmZvQ29sb3IpfHx0aGlzLmNvbG9ycy5pY29uQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl18fHRoaXMuY29sb3JzLmljb25Db2xvci5GcmllbmQsTj10aGlzLnN0eWxlLmZvbnRmYW1pbHksTz10aGlzLnN0eWxlLmluZm9TaXplLEM9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmQ/dGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZFt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLmluZm9CYWNrZ3JvdW5kLFQ9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmQ/dGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZFt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLmluZm9CYWNrZ3JvdW5kLEc9bmV3IEkuQkJveCxvPTIwO2Z1bmN0aW9uIE0oSSl7dmFyIHQsRT1bXTtmb3IodmFyIFIgaW4gSSlpZih0aGlzLm9wdGlvbnMuaGFzT3duUHJvcGVydHkoUikmJlwiXCIhPXRoaXMub3B0aW9uc1tSXSl7aWYoIUkuaGFzT3duUHJvcGVydHkoUikpY29udGludWU7Zm9yKHZhciBlPTA7ZTwoSVtSXS5sZW5ndGh8fDEpO2UrKyl7dmFyIEE7aWYodD17eTI6KEE9QXJyYXkuaXNBcnJheShJW1JdKT9JW1JdW2VdOklbUl0pLnkseTE6QS55LUEuZm9udHNpemV9LFwic3RhcnRcIj09QS50ZXh0YW5jaG9yJiYodC54MT1BLngsdC54Mj1BLngraSh0aGlzLm9wdGlvbnNbUl0pKihBLmZvbnRzaXplL08pKSxcIm1pZGRsZVwiPT1BLnRleHRhbmNob3Ipe3ZhciBDPWkodGhpcy5vcHRpb25zW1JdKSooQS5mb250c2l6ZS9PKTt0LngxPUEueC1DLzIsdC54Mj1BLngrQy8yfVwiZW5kXCI9PUEudGV4dGFuY2hvciYmKHQueDE9QS54LWkodGhpcy5vcHRpb25zW1JdKSooQS5mb250c2l6ZS9PKSx0LngyPUEueCksRy5tZXJnZSh0KTt2YXIgVD17dHlwZTpcInRleHRcIixmb250ZmFtaWx5Ok4sZmlsbDpTfTtBLmhhc093blByb3BlcnR5KFwiZmlsbFwiKSYmKFQuZmlsbD1BLmZpbGwpLEEuaGFzT3duUHJvcGVydHkoXCJzdHJva2VcIikmJihULnN0cm9rZT1BLnN0cm9rZSksQS5oYXNPd25Qcm9wZXJ0eShcInRleHRhbmNob3JcIikmJihULnRleHRhbmNob3I9QS50ZXh0YW5jaG9yKSxBLmhhc093blByb3BlcnR5KFwiZm9udHNpemVcIikmJihULmZvbnRzaXplPUEuZm9udHNpemUpLEEuaGFzT3duUHJvcGVydHkoXCJmb250d2VpZ2h0XCIpJiYoVC5mb250d2VpZ2h0PUEuZm9udHdlaWdodCksVC54PUEueCxULnk9QS55LFQudGV4dD10aGlzLm9wdGlvbnNbUl0sRS5wdXNoKFQpfX1yZXR1cm4gRX1mdW5jdGlvbiBpKEkpe2lmKDA9PUkubGVuZ3RoKXJldHVybiAwO2Zvcih2YXIgdD17XCIgXCI6OSxcIiFcIjoxMCwnXCInOjE1LFwiI1wiOjE3LCQ6MTcsXCIlXCI6MjcsXCImXCI6MjIsXCInXCI6OCxcIihcIjoxMCxcIilcIjoxMCxcIipcIjoxMixcIitcIjoxOCxcIixcIjo5LFwiLVwiOjEwLFwiLlwiOjksXCIvXCI6OSwwOjE3LDE6MTcsMjoxNywzOjE3LDQ6MTcsNToxNyw2OjE3LDc6MTcsODoxNyw5OjE3LFwiOlwiOjEwLFwiO1wiOjEwLFwiPFwiOjE4LFwiPVwiOjE4LFwiPlwiOjE4LFwiP1wiOjE5LFwiQFwiOjMwLEE6MjIsQjoyMixDOjIyLEQ6MjIsRToyMSxGOjE5LEc6MjQsSDoyMixJOjksSjoxNyxLOjIyLEw6MTksTToyNSxOOjIyLE86MjQsUDoyMSxROjI0LFI6MjIsUzoyMSxUOjE5LFU6MjIsVjoyMSxXOjI5LFg6MjEsWToyMSxaOjE5LFwiW1wiOjEwLFwiXVwiOjEwLFwiXlwiOjE4LF86MTcsXCJgXCI6MTAsYToxNyxiOjE5LGM6MTcsZDoxOSxlOjE3LGY6MTAsZzoxOSxoOjE5LGk6OSxqOjksazoxNyxsOjksbToyNyxuOjE5LG86MTkscDoxOSxxOjE5LHI6MTIsczoxNyx0OjEwLHU6MTksdjoxNyx3OjI0LHg6MTcseToxNyx6OjE1LFwie1wiOjEyLFwifFwiOjksXCJ9XCI6MTIsXCJ+XCI6MTh9LEU9MCxSPTA7UjxJLmxlbmd0aDtSKyspRSs9Ty8zMCoodFtJW1JdXT90W0lbUl1dOjI4LjUpO3JldHVybiBFKz1vfWlmKHRoaXMubWV0YWRhdGEubnVtYmVyU0lEQyl7aWYoIUkuX2xhYmVsQ2FjaGUuaGFzT3duUHJvcGVydHkoXCJudW1iZXJcIikpZm9yKHQgaW4gSS5fbGFiZWxDYWNoZS5udW1iZXI9e30sSS5fbGFiZWxPdmVycmlkZXMubnVtYmVyKUkuX2xhYmVsT3ZlcnJpZGVzLm51bWJlci5oYXNPd25Qcm9wZXJ0eSh0KSYmSS5fbGFiZWxPdmVycmlkZXMubnVtYmVyW3RdLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLm51bWJlcik7aWYoRT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNiksdGhpcy5tZXRhZGF0YS5jb250cm9sTWVhc3VyZSYmSS5fbGFiZWxDYWNoZS5udW1iZXIuaGFzT3duUHJvcGVydHkoRSkpcmV0dXJuIGUucHVzaChNLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLm51bWJlcltFXSkpLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpHfX1lbHNle2lmKCFJLl9sYWJlbENhY2hlLmhhc093blByb3BlcnR5KFwibGV0dGVyXCIpKWZvcih0IGluIEkuX2xhYmVsQ2FjaGUubGV0dGVyPXt9LEkuX2xhYmVsT3ZlcnJpZGVzLmxldHRlcilJLl9sYWJlbE92ZXJyaWRlcy5sZXR0ZXIuaGFzT3duUHJvcGVydHkodCkmJkkuX2xhYmVsT3ZlcnJpZGVzLmxldHRlclt0XS5jYWxsKHRoaXMsSS5fbGFiZWxDYWNoZS5sZXR0ZXIpO2lmKEU9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDAsMSkrXCItXCIrdGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDIsMSkrXCItXCIrdGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDQsNiksSS5fbGFiZWxDYWNoZS5sZXR0ZXIuaGFzT3duUHJvcGVydHkoRSkpcmV0dXJuIGUucHVzaChNLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLmxldHRlcltFXSkpLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpHfX12YXIgTCxzLG4sYT10aGlzLm9wdGlvbnMucXVhbnRpdHl8fHRoaXMub3B0aW9ucy5yZWluZm9yY2VkUmVkdWNlZHx8dGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHN8fHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb258fHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nfHx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzc3x8dGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudHx8dGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmhvc3RpbGV8fHRoaXMub3B0aW9ucy5pZmZTaWZ8fHRoaXMub3B0aW9ucy5zaWdpbnR8fHRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbnx8dGhpcy5vcHRpb25zLnR5cGV8fHRoaXMub3B0aW9ucy5kdGd8fHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRofHx0aGlzLm9wdGlvbnMubG9jYXRpb258fHRoaXMub3B0aW9ucy5zcGVlZHx8dGhpcy5vcHRpb25zLnNwZWNpYWxIZWFkcXVhcnRlcnN8fHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGV8fHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWV8fHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyfHx0aGlzLm9wdGlvbnMuYXV4aWxpYXJ5RXF1aXBtZW50SW5kaWNhdG9yfHx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudHx8dGhpcy5vcHRpb25zLmluc3RhbGxhdGlvbkNvbXBvc2l0aW9ufHx0aGlzLm9wdGlvbnMuZ3VhcmRlZFVuaXR8fHRoaXMub3B0aW9ucy5zcGVjaWFsRGVzaWduYXRvcjtpZih0aGlzLnN0eWxlLmluZm9GaWVsZHMmJmEpe3RoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzJiZlLnB1c2goKEw9dGhpcy5vcHRpb25zLnNwZWNpYWxIZWFkcXVhcnRlcnMscz00MixuPTExNSwxPT1MLmxlbmd0aCYmKHM9NDUsbj0xMTUpLDM9PUwubGVuZ3RoJiYocz0zNSxuPTExMCksNDw9TC5sZW5ndGgmJihzPTMyLG49MTEwKSx7dHlwZTpcInRleHRcIix0ZXh0OkwseDoxMDAseTpuLHRleHRhbmNob3I6XCJtaWRkbGVcIixmb250c2l6ZTpzLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9KSksdGhpcy5vcHRpb25zLnF1YW50aXR5JiYhdGhpcy5tZXRhZGF0YS5kaXNtb3VudGVkJiYoZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6dGhpcy5vcHRpb25zLnF1YW50aXR5LHg6MTAwLHk6QS55MS0xMCx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLEcueTE9QS55MS0xMC1PKSx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudCYmKGUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5oZWFkcXVhcnRlcnNFbGVtZW50LHg6MTAwLHk6QS55MiszNSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6MzUsZm9udGZhbWlseTpOLGZvbnR3ZWlnaHQ6XCJib2xkXCIsZmlsbDpTLHN0cm9rZTohMX0pLEcueTI9QS55MiszNSk7dmFyIGwscj17TDE6XCJcIixMMjpcIlwiLEwzOlwiXCIsTDQ6XCJcIixMNTpcIlwiLFIxOlwiXCIsUjI6XCJcIixSMzpcIlwiLFI0OlwiXCIsUjU6XCJcIn07aWYoaXNOYU4odGhpcy5vcHRpb25zLnNpZGMpfHxcIkFpclwiIT10aGlzLm1ldGFkYXRhLmJhc2VEaW1lbnNpb258fChyLlIxPXRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbixyLlIyPXRoaXMub3B0aW9ucy5pZmZTaWYsci5SMz10aGlzLm9wdGlvbnMudHlwZSwodGhpcy5vcHRpb25zLnNwZWVkfHx0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCkmJihsPVtdLHRoaXMub3B0aW9ucy5zcGVlZCYmbC5wdXNoKHRoaXMub3B0aW9ucy5zcGVlZCksdGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGgmJmwucHVzaCh0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCksci5SND1sLmpvaW4oXCIvXCIpKSwodGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHN8fHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24pJiYobD1bXSx0aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyYmbC5wdXNoKHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzKSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksci5SNT1sLmpvaW4oXCIvXCIpKSksKGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJHcm91bmRcIj09dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9uKSYmKHIuTDE9dGhpcy5vcHRpb25zLmR0ZywodGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGh8fHRoaXMub3B0aW9ucy5sb2NhdGlvbikmJihsPVtdLHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRoJiZsLnB1c2godGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGgpLHRoaXMub3B0aW9ucy5sb2NhdGlvbiYmbC5wdXNoKHRoaXMub3B0aW9ucy5sb2NhdGlvbiksci5MMj1sLmpvaW4oXCIvXCIpKSxyLkw0PXRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbixyLkw1PXRoaXMub3B0aW9ucy5zcGVlZCxyLlIyPXRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzLHIuUjQ9dGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbiwodGhpcy5vcHRpb25zLmV2YWx1YXRpb25SYXRpbmd8fHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzfHx0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50fHx0aGlzLm9wdGlvbnMuaG9zdGlsZXx8dGhpcy5vcHRpb25zLmlmZlNpZikmJihsPVtdLHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nJiZsLnB1c2godGhpcy5vcHRpb25zLmV2YWx1YXRpb25SYXRpbmcpLHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzJiZsLnB1c2godGhpcy5vcHRpb25zLmNvbWJhdEVmZmVjdGl2ZW5lc3MpLHRoaXMub3B0aW9ucy5zaWduYXR1cmVFcXVpcG1lbnQmJmwucHVzaCh0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50KSx0aGlzLm9wdGlvbnMuaG9zdGlsZSYmbC5wdXNoKHRoaXMub3B0aW9ucy5ob3N0aWxlKSx0aGlzLm9wdGlvbnMuaWZmU2lmJiZsLnB1c2godGhpcy5vcHRpb25zLmlmZlNpZiksci5SNT1sLmpvaW4oXCIvXCIpKSxpc05hTih0aGlzLm9wdGlvbnMuc2lkYyl8fHRoaXMubWV0YWRhdGEudW5pdD8oKHRoaXMub3B0aW9ucy50eXBlfHx0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlfHx0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lKSYmKGw9W10sdGhpcy5vcHRpb25zLnR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMudHlwZSksdGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZSYmbC5wdXNoKHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUpLHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWUmJmwucHVzaCh0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lKSxyLkwzPWwuam9pbihcIi9cIikpLHIuUjE9dGhpcy5vcHRpb25zLnJlaW5mb3JjZWRSZWR1Y2VkLHRoaXMubWV0YWRhdGEuYWN0aXZpdHkmJihyLlIxPXRoaXMub3B0aW9ucy5jb3VudHJ5KSwodGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXIpJiYobD1bXSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksdGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXImJmwucHVzaCh0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciksci5SMz1sLmpvaW4oXCIvXCIpKSk6KCh0aGlzLm9wdGlvbnMudHlwZXx8dGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZXx8dGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXJ8fHRoaXMub3B0aW9ucy5pbnN0YWxsYXRpb25Db21wb3NpdGlvbikmJihsPVtdLHRoaXMub3B0aW9ucy50eXBlJiZsLnB1c2godGhpcy5vcHRpb25zLnR5cGUpLHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlKSx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyKSx0aGlzLm9wdGlvbnMuaW5zdGFsbGF0aW9uQ29tcG9zaXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMuaW5zdGFsbGF0aW9uQ29tcG9zaXRpb24pLHIuTDM9bC5qb2luKFwiL1wiKSksci5SMT10aGlzLm9wdGlvbnMuY291bnRyeSwodGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmVxdWlwbWVudFRlYXJkb3duVGltZSkmJihsPVtdLHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uKSx0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lJiZsLnB1c2godGhpcy5vcHRpb25zLmVxdWlwbWVudFRlYXJkb3duVGltZSksci5SMz1sLmpvaW4oXCIvXCIpKSkpLHRoaXMubWV0YWRhdGEuZGlzbW91bnRlZCYmKHRoaXMub3B0aW9ucy5xdWFudGl0eSYmKGUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5xdWFudGl0eSx4OjEwMCx5OkEueTIrTyx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLEcueTI9QS55MitPKSxyLkwxPXRoaXMub3B0aW9ucy5kdGcsKHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRofHx0aGlzLm9wdGlvbnMubG9jYXRpb24pJiYobD1bXSx0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCYmbC5wdXNoKHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRoKSx0aGlzLm9wdGlvbnMubG9jYXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMubG9jYXRpb24pLHIuTDI9bC5qb2luKFwiL1wiKSksKHRoaXMub3B0aW9ucy50eXBlfHx0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlfHx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllcikmJihsPVtdLHRoaXMub3B0aW9ucy50eXBlJiZsLnB1c2godGhpcy5vcHRpb25zLnR5cGUpLHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlKSx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyKSxyLkwzPWwuam9pbihcIi9cIikpLHIuTDQ9dGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uLHIuTDU9dGhpcy5vcHRpb25zLnNwZWVkLHIuUjE9dGhpcy5vcHRpb25zLmNvdW50cnksci5SMj10aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiYobD1bXSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksci5SMz1sLmpvaW4oXCIvXCIpKSxyLlI0PXRoaXMub3B0aW9ucy5oaWdoZXJGb3JtYXRpb24sKHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nfHx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzc3x8dGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudHx8dGhpcy5vcHRpb25zLmhvc3RpbGV8fHRoaXMub3B0aW9ucy5pZmZTaWYpJiYobD1bXSx0aGlzLm9wdGlvbnMuZXZhbHVhdGlvblJhdGluZyYmbC5wdXNoKHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nKSx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzcyYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzKSx0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50JiZsLnB1c2godGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudCksdGhpcy5vcHRpb25zLmhvc3RpbGUmJmwucHVzaCh0aGlzLm9wdGlvbnMuaG9zdGlsZSksdGhpcy5vcHRpb25zLmlmZlNpZiYmbC5wdXNoKHRoaXMub3B0aW9ucy5pZmZTaWYpLHIuUjU9bC5qb2luKFwiL1wiKSkpLGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJTZWFcIiE9dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9ufHwoKHRoaXMub3B0aW9ucy5ndWFyZGVkVW5pdHx8dGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yKSYmKGw9W10sdGhpcy5vcHRpb25zLmd1YXJkZWRVbml0JiZsLnB1c2godGhpcy5vcHRpb25zLmd1YXJkZWRVbml0KSx0aGlzLm9wdGlvbnMuc3BlY2lhbERlc2lnbmF0b3ImJmwucHVzaCh0aGlzLm9wdGlvbnMuc3BlY2lhbERlc2lnbmF0b3IpLHIuTDE9bC5qb2luKFwiL1wiKSksci5SMT10aGlzLm9wdGlvbnMudW5pcXVlRGVzaWduYXRpb24sci5SMj10aGlzLm9wdGlvbnMudHlwZSxyLlIzPXRoaXMub3B0aW9ucy5pZmZTaWYsKHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzfHx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uKSYmKGw9W10sdGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHMmJmwucHVzaCh0aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyksdGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiYmbC5wdXNoKHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24pLHIuUjQ9bC5qb2luKFwiL1wiKSksKHRoaXMub3B0aW9ucy5sb2NhdGlvbnx8dGhpcy5vcHRpb25zLnNwZWVkKSYmKGw9W10sdGhpcy5vcHRpb25zLmxvY2F0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmxvY2F0aW9uKSx0aGlzLm9wdGlvbnMuc3BlZWQmJmwucHVzaCh0aGlzLm9wdGlvbnMuc3BlZWQpLHIuUjU9bC5qb2luKFwiL1wiKSkpLGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJTdWJzdXJmYWNlXCIhPXRoaXMubWV0YWRhdGEuYmFzZURpbWVuc2lvbnx8KHIuTDE9dGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yLHIuUjE9dGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uLHIuUjI9dGhpcy5vcHRpb25zLnR5cGUsci5SMz10aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCxyLlI0PXRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzLHIuUjU9dGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksRy54MT1BLngxLU1hdGgubWF4KHRoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzPyhpKHRoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzKS10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LndpZHRoKCkpLzI6MCx0aGlzLm9wdGlvbnMucXVhbnRpdHk/KGkodGhpcy5vcHRpb25zLnF1YW50aXR5KS10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LndpZHRoKCkpLzI6MCxpKHIuTDEpLGkoci5MMiksaShyLkwzKSxpKHIuTDQpLGkoci5MNSkpLEcueDI9QS54MitNYXRoLm1heCh0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycz8oaSh0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycyktdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC53aWR0aCgpKS8yOjAsdGhpcy5vcHRpb25zLnF1YW50aXR5PyhpKHRoaXMub3B0aW9ucy5xdWFudGl0eSktdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC53aWR0aCgpKS8yOjAsaShyLlIxKSxpKHIuUjIpLGkoci5SMyksaShyLlI0KSxpKHIuUjUpKSwoci5MMXx8ci5SMSkmJihHLnkxPU1hdGgubWluKEcueTEsMTAwLTIuNSpPKSksKHIuTDJ8fHIuUjIpJiYoRy55MT1NYXRoLm1pbihHLnkxLDEwMC0xLjUqTykpLChyLkw0fHxyLlI0KSYmKEcueTI9TWF0aC5tYXgoRy55MiwxMDArMS43Kk8pKSwoci5MNXx8ci5SNSkmJihHLnkyPU1hdGgubWF4KEcueTIsMTAwKzIuNypPKSksdGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZCl7dmFyIFA9e3gxOjEwMCx5MToxZTMseTI6MH0seT17eDI6MTAwLHkxOjFlMyx5MjowfTtyLkwxJiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MMSkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwLTIuNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMC0xLjUqTytvLzIpfSksci5MMiYmKFA9e3gxOk1hdGgubWluKFAueDEsQS54MS1pKHIuTDIpKSx4MjpBLngxLW8vMix5MTpNYXRoLm1pbihQLnkxLDEwMC0xLjUqTykseTI6TWF0aC5tYXgoUC55MiwxMDAtLjUqTytvLzIpfSksci5MMyYmKFA9e3gxOk1hdGgubWluKFAueDEsQS54MS1pKHIuTDMpKSx4MjpBLngxLW8vMix5MTpNYXRoLm1pbihQLnkxLDEwMC0uNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMCsuNSpPK28vMil9KSxyLkw0JiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MNCkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwKy41Kk8pLHkyOk1hdGgubWF4KFAueTIsMTAwKzEuNSpPK28vMil9KSxyLkw1JiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MNSkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwKzEuNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMCsyLjUqTytvLzIpfSksUC5oYXNPd25Qcm9wZXJ0eShcIngyXCIpJiYoRy54MS09Ty8yLGUucHVzaCh7dHlwZTpcInBhdGhcIixkOlwiTSBcIisoUC54MS1PLzIpK1wiLFwiKyhQLnkxK08vMikrXCIgXCIrUC54MStcIixcIitQLnkxK1wiIFwiK1AueDIrXCIsXCIrUC55MStcIiBcIitQLngyK1wiLFwiK1AueTIrXCIgXCIrKFAueDEtTy8yKStcIixcIitQLnkyK1wielwiLGZpbGw6QyxzdHJva2U6VHx8ITF9KSksci5SMSYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjEpKSx5MTpNYXRoLm1pbih5LnkxLDEwMC0yLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDAtMS41Kk8rby8yKX0pLHIuUjImJih5PXt4MTpBLngyK28vMix4MjpNYXRoLm1heCh5LngyLEEueDIraShyLlIyKSkseTE6TWF0aC5taW4oeS55MSwxMDAtMS41Kk8pLHkyOk1hdGgubWF4KHkueTIsMTAwLS41Kk8rby8yKX0pLHIuUjMmJih5PXt4MTpBLngyK28vMix4MjpNYXRoLm1heCh5LngyLEEueDIraShyLlIzKSkseTE6TWF0aC5taW4oeS55MSwxMDAtLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDArLjUqTytvLzIpfSksci5SNCYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjQpKSx5MTpNYXRoLm1pbih5LnkxLDEwMCsuNSpPKSx5MjpNYXRoLm1heCh5LnkyLDEwMCsxLjUqTytvLzIpfSksci5SNSYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjUpKSx5MTpNYXRoLm1pbih5LnkxLDEwMCsxLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDArMi41Kk8rby8yKX0pLHkuaGFzT3duUHJvcGVydHkoXCJ4MVwiKSYmKEcueDIrPU8vMixlLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0gXCIreS54MStcIixcIit5LnkxK1wiIFwiKyh5LngyK08vMikrXCIsXCIreS55MStcIiBcIisoeS54MitPLzIpK1wiLFwiKyh5LnkyLU8vMikrXCIgXCIreS54MitcIixcIit5LnkyK1wiIFwiK3kueDErXCIsXCIreS55MitcInpcIixmaWxsOkMsc3Ryb2tlOlR8fCExfSkpfXIuTDEmJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuTDEseDpBLngxLW8seToxMDAtMS41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkwyJiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkwyLHg6QS54MS1vLHk6MTAwLS41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkwzJiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkwzLHg6QS54MS1vLHk6MTAwKy41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkw0JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkw0LHg6QS54MS1vLHk6MTAwKzEuNSpPLHRleHRhbmNob3I6XCJlbmRcIixmb250c2l6ZTpPLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExfSksci5MNSYmZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6ci5MNSx4OkEueDEtbyx5OjEwMCsyLjUqTyx0ZXh0YW5jaG9yOlwiZW5kXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLHIuUjEmJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuUjEseDpBLngyK28seToxMDAtMS41Kk8sdGV4dGFuY2hvcjpcInN0YXJ0XCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLHIuUjImJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuUjIseDpBLngyK28seToxMDAtLjUqTyx0ZXh0YW5jaG9yOlwic3RhcnRcIixmb250c2l6ZTpPLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExfSksci5SMyYmZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6ci5SMyx4OkEueDIrbyx5OjEwMCsuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLlI0JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLlI0LHg6QS54MitvLHk6MTAwKzEuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLlI1JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLlI1LHg6QS54MitvLHk6MTAwKzIuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZSLnB1c2goSS5vdXRsaW5lKGUsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKX1yZXR1cm57cHJlOlIscG9zdDplLGJib3g6R319ZnVuY3Rpb24gTihJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveDtcIlwiPT10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nJiYoUj10aGlzLmJib3gpO3ZhciBlLEE9bmV3IEkuQkJveCxDPXRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXXx8dGhpcy5jb2xvcnMuaWNvbkNvbG9yLkZyaWVuZDtpZih0aGlzLnN0eWxlLmluZm9GaWVsZHMmJlwiXCIhPT10aGlzLm9wdGlvbnMuZGlyZWN0aW9uKXtpZigwPT10aGlzLm9wdGlvbnMuc3BlZWRMZWFkZXIpe2U9W3t0eXBlOlwicm90YXRlXCIsZGVncmVlOnRoaXMub3B0aW9ucy5kaXJlY3Rpb24seDoxMDAseToxMDAsZHJhdzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpDLHN0cm9rZTpDLHN0cm9rZXdpZHRoOnRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsZDpcIk0xMDAsMTAwIGwwLC03NSAtNSwzIDUsLTE1IDUsMTUgLTUsLTNcIn1dfV0sQS55MT1NYXRoLm1pbigxMDAtOTUqTWF0aC5jb3ModGhpcy5vcHRpb25zLmRpcmVjdGlvbi8zNjAqTWF0aC5QSSoyKSwxMDApLEEueTI9TWF0aC5tYXgoMTAwLTk1Kk1hdGguY29zKHRoaXMub3B0aW9ucy5kaXJlY3Rpb24vMzYwKk1hdGguUEkqMiksMTAwKSxBLngxPU1hdGgubWluKDEwMCs5NSpNYXRoLnNpbih0aGlzLm9wdGlvbnMuZGlyZWN0aW9uLzM2MCpNYXRoLlBJKjIpLDEwMCksQS54Mj1NYXRoLm1heCgxMDArOTUqTWF0aC5zaW4odGhpcy5vcHRpb25zLmRpcmVjdGlvbi8zNjAqTWF0aC5QSSoyKSwxMDApLFwiR3JvdW5kXCIhPXRoaXMubWV0YWRhdGEuYmFzZURpbWVuc2lvbiYmXCJcIiE9dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9ufHwodGhpcy5tZXRhZGF0YS5oZWFkcXVhcnRlcnM/KGU9W3t0eXBlOlwidHJhbnNsYXRlXCIseDpSLngxLTEwMCx5OlIueTItKDEwMC0odGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RofHxJLl9ocVN0YWZmTGVuZ3RoKSksZHJhdzplfV0sQS54MSs9Ui54MS0xMDAsQS54Mis9Ui54MS0xMDApOmU9W3t0eXBlOlwidHJhbnNsYXRlXCIseDowLHk6Ui55MixkcmF3OmV9LHt0eXBlOlwicGF0aFwiLGZpbGw6QyxzdHJva2U6QyxzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGQ6XCJNIDEwMCxcIitSLnkyK1wibDAsMTAwXCJ9XSksQS55Mis9Ui55MitwYXJzZUZsb2F0KHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgpLEUucHVzaChlKX1lbHNle3ZhciBUPXRoaXMub3B0aW9ucy5zcGVlZExlYWRlciooMTAwL3RoaXMuc3R5bGUuc2l6ZSksUz10aGlzLm9wdGlvbnMuZGlyZWN0aW9uKk1hdGguUEkvMTgwLE49LVQqTWF0aC5jb3MoUyksTz1UKk1hdGguc2luKFMpO0EueDE9TWF0aC5taW4oMTAwLDEwMCtPKSxBLngyPU1hdGgubWF4KDEwMCwxMDArTyksQS55MT1NYXRoLm1pbigxMDAsMTAwK04pLEEueTI9TWF0aC5tYXgoMTAwLDEwMCtOKSxlPXt0eXBlOlwicGF0aFwiLGZpbGw6QyxzdHJva2U6QyxzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGQ6XCJNIDEwMCwxMDAgIGxcIitPK1wiLFwiK059LHQucHVzaChlKX0wPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZ0LnVuc2hpZnQoSS5vdXRsaW5lKGUsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKX1yZXR1cm57cHJlOnQscG9zdDpFLGJib3g6QX19ZnVuY3Rpb24gSShJKXtyZXR1cm4gdm9pZCAwPT09SSYmKEk9e30pLHt4MTp2b2lkIDAhPT1JLngxP0kueDE6MTAwLHkxOnZvaWQgMCE9PUkueTE/SS55MToxMDAseDI6dm9pZCAwIT09SS54Mj9JLngyOjEwMCx5Mjp2b2lkIDAhPT1JLnkyP0kueTI6MTAwLHdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueDItdGhpcy54MX0saGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueTItdGhpcy55MX0sZ2V0U2l6ZTpmdW5jdGlvbigpe3JldHVybntoZWlnaHQ6dGhpcy55Mi10aGlzLnkxLHdpZHRoOnRoaXMueDItdGhpcy54MX19LG1lcmdlOmZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLngxPUkueDE8PXRoaXMueDE/SS54MTp0aGlzLngxLHRoaXMueTE9SS55MTw9dGhpcy55MT9JLnkxOnRoaXMueTEsdGhpcy54Mj1JLngyPj10aGlzLngyP0kueDI6dGhpcy54Mix0aGlzLnkyPUkueTI+PXRoaXMueTI/SS55Mjp0aGlzLnkyLHRoaXN9fX12YXIgTz17QWlySG9zdGlsZTp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSA0NSwxNTAgTDQ1LDcwIDEwMCwyMCAxNTUsNzAgMTU1LDE1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MToyMCx4MjoxNTUseTI6MTUwfSl9LEFpckZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSAxNTUsMTUwIEMgMTU1LDUwIDExNSwzMCAxMDAsMzAgODUsMzAgNDUsNTAgNDUsMTUwXCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjMwLHgyOjE1NSx5MjoxNTB9KX0sQWlyTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSA0NSwxNTAgTCA0NSwzMCwxNTUsMzAsMTU1LDE1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTozMCx4MjoxNTUseTI6MTUwfSl9LEFpclVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNjUsMTUwIGMgLTU1LDAgLTUwLC05MCAwLC05MCAwLC01MCA3MCwtNTAgNzAsMCA1MCwwIDU1LDkwIDAsOTBcIn0sYmJveDpuZXcgSSh7eDE6MjUseTE6MjAseDI6MTc1LHkyOjE1MH0pfSxHcm91bmRIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwyOCBMMTcyLDEwMCAxMDAsMTcyIDI4LDEwMCAxMDAsMjggWlwifSxiYm94Om5ldyBJKHt4MToyOCx5MToyOCx4MjoxNzIseTI6MTcyfSl9LEdyb3VuZEZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDUwIGwxNTAsMCAwLDEwMCAtMTUwLDAgelwifSxiYm94Om5ldyBJKHt4MToyNSx5MTo1MCx4MjoxNzUseTI6MTUwfSl9LEdyb3VuZE5ldXRyYWw6e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw0NSBsMTEwLDAgMCwxMTAgLTExMCwwIHpcIn0sYmJveDpuZXcgSSh7eDE6NDUseTE6NDUseDI6MTU1LHkyOjE1NX0pfSxHcm91bmRVbmtub3duOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjMsNjMgQzYzLDIwIDEzNywyMCAxMzcsNjMgQzE4MCw2MyAxODAsMTM3IDEzNywxMzcgQzEzNywxODAgNjMsMTgwIDYzLDEzNyBDMjAsMTM3IDIwLDYzIDYzLDYzIFpcIn0sYmJveDpuZXcgSSh7eDE6MzAuNzUseTE6MzAuNzUseDI6MTY5LjI1LHkyOjE2OS4yNX0pfSxMYW5kRGlzbW91bnRlZEluZGl2aWR1YWxIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwyOCBMMTcyLDEwMCAxMDAsMTcyIDI4LDEwMCAxMDAsMjggWlwifSxiYm94Om5ldyBJKHt4MToyOCx5MToyOCx4MjoxNzIseTI6MTcyfSl9LExhbmREaXNtb3VudGVkSW5kaXZpZHVhbEZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNDUgNTUsMjUgMCw2MCAtNTUsMjUgLTU1LC0yNSAwLC02MCB6XCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjQ1LHgyOjE1NSx5MjoxNTV9KX0sTGFuZERpc21vdW50ZWRJbmRpdmlkdWFsTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1IGwxMTAsMCAwLDExMCAtMTEwLDAgelwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo0NSx4MjoxNTUseTI6MTU1fSl9LExhbmREaXNtb3VudGVkSW5kaXZpZHVhbFVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk02Myw2MyBDNjMsMjAgMTM3LDIwIDEzNyw2MyBDMTgwLDYzIDE4MCwxMzcgMTM3LDEzNyBDMTM3LDE4MCA2MywxODAgNjMsMTM3IEMyMCwxMzcgMjAsNjMgNjMsNjMgWlwifSxiYm94Om5ldyBJKHt4MTozMC43NSx5MTozMC43NSx4MjoxNjkuMjUseTI6MTY5LjI1fSl9LFNlYUhvc3RpbGU6e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMjggTDE3MiwxMDAgMTAwLDE3MiAyOCwxMDAgMTAwLDI4IFpcIn0sYmJveDpuZXcgSSh7eDE6MjgseTE6MjgseDI6MTcyLHkyOjE3Mn0pfSxTZWFGcmllbmQ6e2c6e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6NjB9LGJib3g6bmV3IEkoe3gxOjQwLHkxOjQwLHgyOjE2MCx5MjoxNjB9KX0sU2VhTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1IGwxMTAsMCAwLDExMCAtMTEwLDAgelwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo0NSx4MjoxNTUseTI6MTU1fSl9LFNlYVVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk02Myw2MyBDNjMsMjAgMTM3LDIwIDEzNyw2MyBDMTgwLDYzIDE4MCwxMzcgMTM3LDEzNyBDMTM3LDE4MCA2MywxODAgNjMsMTM3IEMyMCwxMzcgMjAsNjMgNjMsNjMgWlwifSxiYm94Om5ldyBJKHt4MTozMC43NSx5MTozMC43NSx4MjoxNjkuMjUseTI6MTY5LjI1fSl9LFN1YnN1cmZhY2VIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNTAgTDQ1LDEzMCAxMDAsMTgwIDE1NSwxMzAgMTU1LDUwXCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjUwLHgyOjE1NSx5MjoxODB9KX0sU3Vic3VyZmFjZUZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwibSA0NSw1MCBjIDAsMTAwIDQwLDEyMCA1NSwxMjAgMTUsMCA1NSwtMjAgNTUsLTEyMFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo1MCx4MjoxNTUseTI6MTcwfSl9LFN1YnN1cmZhY2VOZXV0cmFsOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNTAgTDQ1LDE3MCAxNTUsMTcwIDE1NSw1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo1MCx4MjoxNTUseTI6MTcwfSl9LFN1YnN1cmZhY2VVbmtub3duOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDUwIGMgLTU1LDAgLTUwLDkwIDAsOTAgMCw1MCA3MCw1MCA3MCwwIDUwLDAgNTUsLTkwIDAsLTkwXCJ9LGJib3g6bmV3IEkoe3gxOjI1LHkxOjUwLHgyOjE3NSx5MjoxODB9KX0sUG9zaXRpb25NYXJrZXI6e2c6e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LGJib3g6bmV3IEkoe3gxOjg1LHkxOjg1LHgyOjExNSx5MjoxMTV9KX19LHM9bmV3IGZ1bmN0aW9uKCl7dGhpcy5fYXV0b1ZhbGlkYXRpb249ITEsdGhpcy52ZXJzaW9uPVwiMi4wLjBcIixcIm9iamVjdFwiPT10eXBlb2YgY29uc29sZSYmXCJvYmplY3RcIiE9dHlwZW9mIHByb2Nlc3MmJmNvbnNvbGUuaW5mbyhcIm1pbHN5bWJvbC5qcyBcIit0aGlzLnZlcnNpb24rXCIgLSBDb3B5cmlnaHQgKGMpIDIwMTggTVwiK1N0cmluZy5mcm9tQ2hhckNvZGUoMjI5KStcIm5zIEJlY2ttYW4gIGh0dHA6Ly93d3cuc3BhdGlhbGlsbHVzaW9ucy5jb21cIil9O2Z1bmN0aW9uIEcoKXt0aGlzLmJib3g9bmV3IEksdGhpcy5jb2xvcnM9e30sdGhpcy5tZXRhZGF0YT17fSx0aGlzLm9jdGFnb25BbmNob3I9e3g6NTAseTo1MH0sdGhpcy5vcHRpb25zPXt9LHRoaXMub3B0aW9ucy5xdWFudGl0eT1cIlwiLHRoaXMub3B0aW9ucy5yZWluZm9yY2VkUmVkdWNlZD1cIlwiLHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzPVwiXCIsdGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nPVwiXCIsdGhpcy5vcHRpb25zLmNvbWJhdEVmZmVjdGl2ZW5lc3M9XCJcIix0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50PVwiXCIsdGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5ob3N0aWxlPVwiXCIsdGhpcy5vcHRpb25zLmlmZlNpZj1cIlwiLHRoaXMub3B0aW9ucy5kaXJlY3Rpb249XCJcIix0aGlzLm9wdGlvbnMuc2lnaW50PVwiXCIsdGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uPVwiXCIsdGhpcy5vcHRpb25zLnR5cGU9XCJcIix0aGlzLm9wdGlvbnMuZHRnPVwiXCIsdGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGg9XCJcIix0aGlzLm9wdGlvbnMubG9jYXRpb249XCJcIix0aGlzLm9wdGlvbnMuc3BlZWQ9XCJcIix0aGlzLm9wdGlvbnMuc3BlZWRMZWFkZXI9MCx0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycz1cIlwiLHRoaXMub3B0aW9ucy5jb3VudHJ5PVwiXCIsdGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZT1cIlwiLHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWU9XCJcIix0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllcj1cIlwiLHRoaXMub3B0aW9ucy5hdXhpbGlhcnlFcXVpcG1lbnRJbmRpY2F0b3I9XCJcIix0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudD1cIlwiLHRoaXMub3B0aW9ucy5pbnN0YWxsYXRpb25Db21wb3NpdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5lbmdhZ2VtZW50QmFyPVwiXCIsdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRUeXBlPVwiXCIsdGhpcy5vcHRpb25zLmd1YXJkZWRVbml0PVwiXCIsdGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yPVwiXCIsdGhpcy5zdHlsZT17fSx0aGlzLnN0eWxlLmFsdGVybmF0ZU1lZGFsPSExLHRoaXMuc3R5bGUuY2l2aWxpYW5Db2xvcj0hMCx0aGlzLnN0eWxlLmNvbG9yTW9kZT1cIkxpZ2h0XCIsdGhpcy5zdHlsZS5maWxsPSEwLHRoaXMuc3R5bGUuZmlsbE9wYWNpdHk9MSx0aGlzLnN0eWxlLmZvbnRmYW1pbHk9XCJBcmlhbFwiLHRoaXMuc3R5bGUuZnJhbWU9ITAsdGhpcy5zdHlsZS5mcmFtZUNvbG9yPVwiXCIsdGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RoPTAsdGhpcy5zdHlsZS5pY29uPSEwLHRoaXMuc3R5bGUuaWNvbkNvbG9yPVwiXCIsdGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZD1cIlwiLHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmRGcmFtZT1cIlwiLHRoaXMuc3R5bGUuaW5mb0NvbG9yPVwiXCIsdGhpcy5zdHlsZS5pbmZvRmllbGRzPSEwLHRoaXMuc3R5bGUuaW5mb1NpemU9NDAsdGhpcy5zdHlsZS5tb25vQ29sb3I9XCJcIix0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj1cInJnYigyMzksIDIzOSwgMjM5KVwiLHRoaXMuc3R5bGUub3V0bGluZVdpZHRoPTAsdGhpcy5zdHlsZS5wYWRkaW5nPTAsdGhpcy5zdHlsZS5zaW1wbGVTdGF0dXNNb2RpZmllcj0hMSx0aGlzLnN0eWxlLnNpemU9MTAwLHRoaXMuc3R5bGUuc3F1YXJlPSExLHRoaXMuc3R5bGUuc3RhbmRhcmQ9XCJcIix0aGlzLnN0eWxlLnN0cm9rZVdpZHRoPTQsdGhpcy5zeW1ib2xBbmNob3I9e3g6NTAseTo1MH0sdGhpcy52YWxpZEljb249ITAsMDxhcmd1bWVudHMubGVuZ3RoJiZ0aGlzLnNldE9wdGlvbnMuYXBwbHkodGhpcyxhcmd1bWVudHMpfWZ1bmN0aW9uIG8oSSx0LEUpe3RoaXMub3B0aW9ucy5zaWRjPXRoaXMub3B0aW9ucy5zaWRjLnRvVXBwZXJDYXNlKCk7dmFyIFI9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDApP3RoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgwKTpcIi1cIixlPVwiXCIhPXRoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgxKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMSk6XCItXCIsQT1cIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMik/dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDIpOlwiLVwiLEM9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDMpP3RoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgzKTpcIi1cIixUPXQuZnVuY3Rpb25pZD1cIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KT90aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KTpcIi0tLS0tLVwiLFM9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDEwKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMTApOlwiLVwiLE49XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDExKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMTEpOlwiLVwiO2lmKC0xPFtcIkhcIixcIlNcIixcIkpcIixcIktcIl0uaW5kZXhPZihlKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblswXSksLTE8W1wiRlwiLFwiQVwiLFwiRFwiLFwiTVwiXS5pbmRleE9mKGUpJiYodC5hZmZpbGlhdGlvbj1FLmFmZmlsaWF0aW9uWzFdKSwtMTxbXCJOXCIsXCJMXCJdLmluZGV4T2YoZSkmJih0LmFmZmlsaWF0aW9uPUUuYWZmaWxpYXRpb25bMl0pLC0xPFtcIlBcIixcIlVcIixcIkdcIixcIldcIixcIk9cIl0uaW5kZXhPZihlKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblszXSksLTE8W1wiUFwiLFwiQVwiXS5pbmRleE9mKEEpJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMF0pLC0xPFtcIkdcIixcIlpcIixcIkZcIixcIlhcIl0uaW5kZXhPZihBKSYmKHQuZGltZW5zaW9uPUUuZGltZW5zaW9uWzFdKSwtMTxbXCJTXCJdLmluZGV4T2YoQSkmJih0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsyXSksLTE8W1wiVVwiXS5pbmRleE9mKEEpJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bM10pLFwiUFwiPT1BJiZcIk9cIiE9UiYmKHQuc3BhY2U9ITApLFwiT1wiPT1SJiYtMTxbXCJWXCIsXCJPXCIsXCJSXCJdLmluZGV4T2YoQSkmJih0LmFjdGl2aXR5PSEwKSxcIkdcIj09UiYmKHQuY29udHJvbE1lYXN1cmU9ITApLFwiSFwiPT1TJiYodC5pbnN0YWxsYXRpb249ITApLHRoaXMuc3R5bGUuZnJhbWUmJlwiQVwiPT1DJiYodC5ub3RwcmVzZW50PUkuX2Rhc2hBcnJheXMuYW50aWNpcGF0ZWQpLHRoaXMuc3R5bGUuZnJhbWUmJi0xPFtcIlBcIixcIkFcIixcIlNcIixcIkdcIixcIk1cIl0uaW5kZXhPZihlKSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiQ1wiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbMl0pLFwiRFwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbM10pLFwiWFwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbNF0pLFwiRlwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbNV0pLC0xPFtcIkdcIixcIldcIixcIkRcIixcIkxcIixcIk1cIixcIkpcIixcIktcIl0uaW5kZXhPZihlKSYmKHQuY29udGV4dD1FLmNvbnRleHRbMV0pLFwiT1wiPT1SJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMV0pLFwiRVwiPT1SJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMV0pLHQuYmFzZURpbWVuc2lvbj10LmRpbWVuc2lvbix0LmJhc2VBZmZpbGF0aW9uPXQuYWZmaWxpYXRpb24sXCJKXCI9PWUmJih0Lmpva2VyPSEwKSxcIktcIj09ZSYmKHQuZmFrZXI9ITApLCh0Lmpva2VyfHx0LmZha2VyKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblsxXSksXCJTXCI9PVImJlwiR1wiPT1BJiZcIkVcIj09VC5jaGFyQXQoMCkmJih0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsyXSksXCJJXCI9PVImJlwiR1wiPT1BJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMl0pLFwiRVwiPT1SJiYoXCJPXCI9PUEmJi0xPFtcIkFCLS0tLVwiLFwiQUUtLS0tXCIsXCJBRi0tLS1cIixcIkJCLS0tLVwiLFwiQ0ItLS0tXCIsXCJDQy0tLS1cIixcIkRCLS0tLVwiLFwiRERCLS0tXCIsXCJERUItLS1cIixcIkRGQi0tLVwiLFwiREdCLS0tXCIsXCJESEItLS1cIixcIkRJQi0tLVwiLFwiREpCLS0tXCIsXCJETEItLS1cIixcIkRNQi0tLVwiLFwiRE9CLS0tXCIsXCJFQS0tLS1cIixcIkVCLS0tLVwiLFwiRUMtLS0tXCIsXCJFRC0tLS1cIixcIkVFLS0tLVwiXS5pbmRleE9mKFQpfHxcIkZcIj09QSYmLTE8W1wiQkEtLS0tXCIsXCJNQS0tLS1cIixcIk1DLS0tLVwiXS5pbmRleE9mKFQpKSYmKHQuZGltZW5zaW9uPUUuZGltZW5zaW9uWzJdKSwoLTE8W1wiRlwiLFwiR1wiLFwiQ1wiLFwiRFwiXS5pbmRleE9mKFMpfHxcIkhcIj09UyYmXCJCXCI9PU4pJiYodC5mZWludER1bW15PSEwKSwtMTxbXCJBXCIsXCJCXCIsXCJDXCIsXCJEXCJdLmluZGV4T2YoUykmJih0LmhlYWRxdWFydGVycz0hMCksXCJHXCI9PUEmJlwiVUgtLS0tXCI9PVQmJih0LmhlYWRxdWFydGVycz0hMCksLTE8W1wiRVwiLFwiQlwiLFwiR1wiLFwiRFwiXS5pbmRleE9mKFMpJiYodC50YXNrRm9yY2U9ITApLFwiQVwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzExXSksXCJCXCI9PU4mJlwiSFwiIT1TJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzEyXSksXCJDXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMTNdKSxcIkRcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsxNF0pLFwiRVwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzE1XSksXCJGXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMTZdKSxcIkdcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsxN10pLFwiSFwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzE4XSksXCJJXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMjFdKSxcIkpcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsyMl0pLFwiS1wiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzIzXSksXCJMXCI9PU4mJlwiTlwiIT1TJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzI0XSksXCJNXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMjVdKSxcIk5cIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsyNl0pLFwiTVwiPT1TKXN3aXRjaChOKXtjYXNlXCJPXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVszMV07YnJlYWs7Y2FzZVwiUFwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbMzJdO2JyZWFrO2Nhc2VcIlFcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzMzXTticmVhaztjYXNlXCJSXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVszNF07YnJlYWs7Y2FzZVwiU1wiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbMzVdO2JyZWFrO2Nhc2VcIlRcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzM2XTticmVhaztjYXNlXCJVXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs0MV07YnJlYWs7Y2FzZVwiVlwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbNDJdO2JyZWFrO2Nhc2VcIldcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzM3XTticmVhaztjYXNlXCJZXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs1MV07YnJlYWs7Y2FzZVwiWlwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbNTJdO2JyZWFrO2RlZmF1bHQ6dC5tb2JpbGl0eT12b2lkIDB9aWYoXCJOXCI9PVMpc3dpdGNoKE4pe2Nhc2VcIlNcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzYxXTticmVhaztjYXNlXCJMXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs2Ml07YnJlYWs7ZGVmYXVsdDp0Lm1vYmlsaXR5PXZvaWQgMH1yZXR1cm4oXCJBXCI9PUEmJlwiQ1wiPT1ULmNoYXJBdCgwKXx8XCJHXCI9PUEmJlwiRVZDXCI9PVQuc3Vic3RyaW5nKDAsMyl8fFwiU1wiPT1BJiZcIlhcIj09VC5jaGFyQXQoMCkpJiYodC5jaXZpbGlhbj0hMCksXCJaXCIhPUEmJlwiWFwiIT1BfHwoLTE8W1wiUFwiLFwiVVwiLFwiRlwiLFwiTlwiLFwiSFwiLFwiQVwiLFwiU1wiLFwiR1wiLFwiV1wiXS5pbmRleE9mKGUpJiYodC5kaW1lbnNpb25Vbmtub3duPSEwKSwtMTxbXCJGXCIsXCJBXCJdLmluZGV4T2YoZSkmJih0LmRpbWVuc2lvbj1cIlNlYVwiKSwtMTxbXCJEXCIsXCJMXCIsXCJNXCIsXCJKXCIsXCJLXCJdLmluZGV4T2YoZSkmJih0LmFmZmlsaWF0aW9uPVwibm9uZVwiKSksXCJTXCI9PUEmJi0xPFtcIk8tLS0tLVwiLFwiRUQtLS0tXCIsXCJFUC0tLS1cIixcIkVWLS0tLVwiLFwiWk0tLS0tXCIsXCJaTi0tLS1cIixcIlpJLS0tLVwiXS5pbmRleE9mKFQpJiYodC5mcmFtZT0hMSksXCJFXCI9PVImJlwiTlwiPT1BJiYtMTxbXCJBQS0tLS1cIixcIkFCLS0tLVwiLFwiQUMtLS0tXCIsXCJBRC0tLS1cIixcIkFFLS0tLVwiLFwiQUctLS0tXCIsXCJCQi0tLS1cIixcIkJDLS0tLVwiLFwiQkYtLS0tXCIsXCJCTS0tLS1cIixcIi1DLS0tLS1cIixcIkNBLS0tLVwiLFwiQ0ItLS0tXCIsXCJDQy0tLS1cIixcIkNELS0tLVwiLFwiQ0UtLS0tXCJdLmluZGV4T2YoVCkmJih0LmZyYW1lPSExKSxcIldcIj09UiYmXCJTXCI9PUEmJi0xPFtcIldTVkUtLVwiLFwiV1NELUxJXCIsXCJXU0ZHU09cIixcIldTR1JMLVwiLFwiV1NSLUxJXCIsXCJXU0RTTE1cIixcIldTUy1MSVwiLFwiV1NUTUgtXCIsXCJXU1QtRkNcIixcIldTVFNTLVwiXS5pbmRleE9mKFQpJiYodC5mcmFtZT0hMSksXCJVXCI9PUEmJi0xPFtcIldNLS0tLVwiLFwiV01ELS0tXCIsXCJXTUctLS1cIixcIldNR0QtLVwiLFwiV01HWC0tXCIsXCJXTUdFLS1cIixcIldNR0MtLVwiLFwiV01HUi0tXCIsXCJXTUdPLS1cIixcIldNTS0tLVwiLFwiV01NRC0tXCIsXCJXTU1YLS1cIixcIldNTUUtLVwiLFwiV01NQy0tXCIsXCJXTU1SLS1cIixcIldNTU8tLVwiLFwiV01GLS0tXCIsXCJXTUZELS1cIixcIldNRlgtLVwiLFwiV01GRS0tXCIsXCJXTUZDLS1cIixcIldNRlItLVwiLFwiV01GTy0tXCIsXCJXTU8tLS1cIixcIldNT0QtLVwiLFwiV01YLS0tXCIsXCJXTUUtLS1cIixcIldNQS0tLVwiLFwiV01DLS0tXCIsXCJXTVItLS1cIixcIldNQi0tLVwiLFwiV01CRC0tXCIsXCJXTU4tLS1cIixcIldNUy0tLVwiLFwiV01TWC0tXCIsXCJXTVNELS1cIixcIldELS0tLVwiLFwiV0RNLS0tXCIsXCJXRE1HLS1cIixcIldETU0tLVwiLFwiTkQtLS0tXCIsXCJFLS0tLS1cIixcIlYtLS0tLVwiLFwiWC0tLS0tXCIsXCJOQlMtLS1cIixcIk5CUi0tLVwiLFwiTkJXLS0tXCIsXCJOTS0tLS1cIixcIk5BLS0tLVwiXS5pbmRleE9mKFQpJiYodC5TVEQyNTI1Pyh0LmZpbGw9ITEsXCJXRC0tLS1cIj09VCYmKHQuZmlsbD0hMCksLTE8W1wiTkQtLS0tXCIsXCJOQlMtLS1cIixcIk5CUi0tLVwiLFwiTkJXLS0tXCIsXCJOTS0tLS1cIixcIk5BLS0tLVwiXS5pbmRleE9mKFQpJiYodC5maWxsPSEwLHQuZnJhbWU9ITEpKToodC5mcmFtZT0hMSwtMTxbXCJFLS0tLS1cIixcIlYtLS0tLVwiLFwiWC0tLS0tXCJdLmluZGV4T2YoVCkmJih0LmZpbGw9ITEsdC5mcmFtZT0hMSkpKSxcIldBU1wiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoMCwzKSYmXCJXT1NcIiE9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDAsMykmJlwiR1wiIT1SfHwodC5mcmFtZT0hMSksXCJHXCI9PVImJlwiT1wiPT1BJiYtMTxbXCJWXCIsXCJMXCIsXCJQXCIsXCJJXCJdLmluZGV4T2YoVC5jaGFyQXQoMCkpJiYodC5mcmFtZT0hMCx0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsxXSksdH1mdW5jdGlvbiBNKEksdCxFKXt2YXIgUj17fSxlPXt9O2Zvcih2YXIgQSBpbiBJLl9pY29uU0lEQy5sZXR0ZXIpSS5faWNvblNJREMubGV0dGVyLmhhc093blByb3BlcnR5KEEpJiZJLl9pY29uU0lEQy5sZXR0ZXJbQV0uY2FsbCh0aGlzLFIsZSx0LEUpO3JldHVybntpY29uczpSLGJib3g6ZX19ZnVuY3Rpb24gbihJLHQpe2lmKFwib2JqZWN0XCI9PXR5cGVvZiBJKXtpZihBcnJheS5pc0FycmF5KEkpKXtmb3IodmFyIEU9MDtFPEkubGVuZ3RoO0UrKyluLmNhbGwodGhpcyxJW0VdLHQpO3JldHVybn1yZXR1cm4gSS5pY29uPSEwLFwidGV4dFwiPT1JLnR5cGUmJihJLmhhc093blByb3BlcnR5KFwiZm9udGZhbWlseVwiKXx8KEkuZm9udGZhbWlseT1cIkFyaWFsXCIpLEkuaGFzT3duUHJvcGVydHkoXCJmb250d2VpZ2h0XCIpfHwoSS5mb250d2VpZ2h0PVwiYm9sZFwiKSxJLmhhc093blByb3BlcnR5KFwidGV4dGFuY2hvclwiKXx8KEkudGV4dGFuY2hvcj1cIm1pZGRsZVwiKSxJLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoSS5zdHJva2U9ITEpKSxJLmhhc093blByb3BlcnR5KFwiZmlsbFwiKXx8KEkuZmlsbD10KSx2b2lkKEkuaGFzT3duUHJvcGVydHkoXCJzdHJva2VcIil8fChJLnN0cm9rZT10KSl9fWZ1bmN0aW9uIGEoSSl7dmFyIHQ9NDIsRT0xMTU7cmV0dXJuIDE9PUkubGVuZ3RoJiYodD00NSxFPTExNSksMz09SS5sZW5ndGgmJih0PTM1LEU9MTEwKSw0PD1JLmxlbmd0aCYmKHQ9MzIsRT0xMTApLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpFLGZvbnRzaXplOnQsdGV4dDpJfX1mdW5jdGlvbiBsKEkpe3ZhciB0PTMwO3JldHVybiAzPT1JLmxlbmd0aCYmKHQ9MjUpLDQ8PUkubGVuZ3RoJiYodD0yMikse3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc3LGZvbnRzaXplOnQsdGV4dDpJfX1mdW5jdGlvbiByKEkpe3ZhciB0PTMwLEU9MTQ1O3JldHVybiAzPT1JLmxlbmd0aCYmKHQ9MjUsRT0xNDApLDQ8PUkubGVuZ3RoJiYodD0yMCxFPTEzNSkse3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OkUsZm9udHNpemU6dCx0ZXh0Okl9fWZ1bmN0aW9uIGkoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD10LmZyYW1lLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbQ10sTz1FLmljb25GaWxsQ29sb3JbQ10sRz1FLm5vbmVbQ10sbz1FLmJsYWNrW0NdLE09e1wiU1AuSS5BTlRJU0FURUxMSVRFIFdFQVBPTlwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTAgMCw5IG0gMCwtMzQgMCw1IG0gMCwtOSAtMiw0IDQsMCB6IG0gLTEwLDkgMCwyMCAyMCwwIDAsLTIwIHogbSAyNSwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTMwLDAgLTI1LDAgMCwyMCAyNSwwIHogbSAwLDEwIDUsMCBtIDIwLDAgNSwwXCJ9LFwiU1AuSS5BU1RST05PTUlDQUwgU0FURUxMSVRFXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTcsOTAgLTEsLTkgOCwwIC0xLDkgbSAtNSwyMCAxLDkgMiwwIDEsLTkgbSA4LC0xMCA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sXCJTUC5JLkJJT1NBVEVMTElURVwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4OSBjIDAsNC40IC0zLjYsOCAtOCw4IC00LjQsMCAtOCwtMy42IC04LC04IDAsLTQuNCAzLjYsLTggOCwtOCA0LjQsMCA4LDMuNiA4LDggeiBtIC0xMCwxMCAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDAgbSAtMTcsLTI1IDE3LDEwIC0xLDIgLTE0LC03XCJ9LFwiU1AuSS5DQVBTVUxFXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTE1IGMgLTIsNSAzMiw1IDMwLDAgbCAtNSwtMzAgYyAtMSwtNSAtMTksLTUgLTIwLDAgelwifX07Zm9yKHZhciBpIGluIE1bXCJTUC5JLkNJVklMSUFOIEFTVFJPTk9NSUNBTCBTQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gOTcsOTAgLTEsLTkgOCwwIC0xLDkgbSAtNSwyMCAxLDkgMiwwIDEsLTkgbSA4LC0xMCA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sTVtcIlNQLkkuQ0lWSUxJQU4gQklPU0FURUxMSVRFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDEwMCw4OSBjIDAsNC40IC0zLjYsOCAtOCw4IC00LjQsMCAtOCwtMy42IC04LC04IDAsLTQuNCAzLjYsLTggOCwtOCA0LjQsMCA4LDMuNiA4LDggeiBtIC0xMCwxMCAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDAgbSAtMTcsLTI1IDE3LDEwIC0xLDIgLTE0LC03XCJ9LE1bXCJTUC5JLkNJVklMSUFOIENBUFNVTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gODUsMTE1IGMgLTIsNSAzMiw1IDMwLDAgbCAtNSwtMzAgYyAtMSwtNSAtMTksLTUgLTIwLDAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBDT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDExMCwxMDkgNSwwIG0gLTMwLDAgNSwwIG0gLTUsLTEwIC0yNSwwIDAsMjAgMjUsMCB6IG0gMzAsMCAwLDIwIDI1LDAgMCwtMjAgeiBtIC0yNSwwIDAsMjAgMjAsMCAwLC0yMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDkwIDAsOSBNIDc1LDgxIGMgMTYsMTIgMzQsMTIgNTAsMFwifV0sTVtcIlNQLkkuQ0lWSUxJQU4gRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMDcsMTEzIGMgMCwzLjkgLTMuMSw3IC03LDcgLTMuOSwwIC03LC0zLjEgLTcsLTcgMCwtMy45IDMuMSwtNyA3LC03IDMuOSwwIDcsMy4xIDcsNyB6IG0gLTE3LC0zMyAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCwxMDcgYyA4LC05IDE2LC05IDI0LDBcIn1dLE1bXCJTUC5JLkNJVklMSUFOIE1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDkxLjEsOTIgMCwxNiAxNy44LDAgMCwtMTYgeiBtIDIyLjIsMCAwLDE2IDIyLjIsMCAwLC0xNiB6IG0gLTI2LjYsMCAtMjIuMiwwIDAsMTYgMjIuMiwwIHogbSAwLDggNC40LDAgbSAxNy44LDAgNC40LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMTkgMTAsLTkgMTAsOSBtIC0yMCwtMzggMTAsOSAxMCwtOSBtIDM1LDkgLTEwLDEwIDEwLDEwIE0gNTUsOTAgNjUsMTAwIDU1LDExMFwifV0sTVtcIlNQLkkuQ0lWSUxJQU4gTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCw4NyBjIDgsNiAxNiw2IDI0LDAgbSAtMjAsOCA4LC0xNCA4LDE0XCJ9XSxNW1wiU1AuSS5DSVZJTElBTiBPUkJJVEVSIFNIVVRUTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gODksMTE1IDYsLTI1IGMgMywtMTIgNywtMTIgMTAsMCBsIDYsMjUgLTEwLDAgLTEsNSAtMSwtNSB6XCJ9LE1bXCJTUC5JLkNJVklMSUFOIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMTAsMTAwIDEwLDAgbSAtNDAsMCAxMCwwIG0gLTEwLC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDQwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBTUEFDRSBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDk3LjUsMTEyLjUgMCw3LjUgNSwwIDAsLTcuNSB6IG0gMCwtMzIuNSA1LDAgMCwyNi40IC01LDAgeiBtIC0wLjMsNy42IEMgODMuMyw4OC4yIDcyLjUsOTMuNSA3Mi41LDEwMCBjIDAsNi45IDEyLjMsMTIuNSAyNy41LDEyLjUgMTUuMiwwIDI3LjUsLTUuNiAyNy41LC0xMi41IDAsLTYuNSAtMTEsLTExLjkgLTI1LC0xMi40IGwgMCw1LjYgYyA5LjksMC40IDE3LjUsMy4yIDE3LjUsNi42IDAsMy43IC04LjksNi43IC0xOS44LDYuNyAtMTAuOSwwIC0xOS44LC0zIC0xOS44LC02LjcgMCwtMy40IDcuNCwtNi4xIDE3LjEsLTYuNiBsIDAsLTUuNiBjIC0wLjEsMCAtMC4yLC0wIC0wLjMsMCB6XCJ9LE1bXCJTUC5JLkNJVklMSUFOIFRFVEhFUkVEIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMjAsODcgLTIwLDEyIG0gMzMsLTEyIGMgMCwzLjYgLTIuOSw2LjUgLTYuNSw2LjUgLTMuNiwwIC02LjUsLTIuOSAtNi41LC02LjUgMCwtMy42IDIuOSwtNi41IDYuNSwtNi41IDMuNiwwIDYuNSwyLjkgNi41LDYuNSB6IG0gLTIzLDIyIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBXRUFUSEVSIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojk1LGZvbnRzaXplOjI1LHRleHQ6XCJXWFwifV0sTVtcIlNQLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxNW1wiU1AuSS5DSVZJTElBTlwiXS5maWxsPVJ8fFM/TzohVCYmTyxNW1wiU1AuSS5DSVZJTElBTlwiXS5zdHJva2U9byxNW1wiU1AuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLE1bXCJTUC5JLkNPTU1VTklDQVRJT05TIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsOTAgMCw5IE0gNzUsODEgYyAxNiwxMiAzNCwxMiA1MCwwXCJ9XSxNW1wiU1AuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTUC5NMi5DWUJFUlNQQUNFXCJdPXIoXCJDWUJcIiksTVtcIlNQLkkuRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDcsMTEzIGMgMCwzLjkgLTMuMSw3IC03LDcgLTMuOSwwIC03LC0zLjEgLTcsLTcgMCwtMy45IDMuMSwtNyA3LC03IDMuOSwwIDcsMy4xIDcsNyB6IG0gLTE3LC0zMyAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCwxMDcgYyA4LC05IDE2LC05IDI0LDBcIn1dLE1bXCJTUC5JLkZGLkNSRVdFRCBTUEFDRSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAuMyw2Mi40IGMgLTEuOCwtMCAtNC4zLDMuNyAtNC41LDUuNCAtMi41LDExLjMgLTMuNCwyMy4xIC02LjIsMzMuNCAtMi45LDYuNyAtNi44LDguMyAtOS45LDEyLjEgLTMsMy42IC04LjUsMTAuNCAtOC41LDEwLjQgbCAwLDYuNCBjIDAsMCA1LjksMC45IDguOSwxLjIgMywwLjIgOC43LDAuMSA4LjcsMC4xIGwgMC4zLDQuMyA0LjMsMC4yIDAuMiwzLjEgNS44LDAgMC45LDYuNSAwLjksLTYuNCA1LjgsMCAwLjIsLTMuMSA0LjMsLTAuMiAwLjMsLTQuMyBjIDAsMCA1LjcsMC4xIDguNywtMC4xIDMsLTAuMiA4LjksLTEuMiA4LjksLTEuMiBsIDAsLTYuNCBjIDAsMCAtNS41LC02LjcgLTguNSwtMTAuMyAtMy4xLC0zLjggLTcsLTUuNCAtOS45LC0xMi4xIC0yLjgsLTEwLjQgLTMuNywtMjIuMiAtNi4yLC0zMy40IC0wLjMsLTIuOSAtMi43LC01LjUgLTQuNSwtNS41IHpcIn0sTVtcIlNQLkkuRkYuU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE1LDcwIDIwLDAgMCw1NSAtMjAsMCB6IG0gLTI1LDUgMjAsMCAwLDQ1IC0yMCwwIHogbSAtMjUsLTUgMjAsMCAwLDU1IC0yMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTgwLDEzNSBjMTAsLTEwIDMwLC0xMCA0MCwwIE0xMDAsMTI3IEwxMDAsMTAwIE03MCwxMDAgTDEzMCwxMDBcIn1dLE1bXCJTUC5JLkZGLlNQQUNFIFNUQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMy4xLDk3LjQgYyAtMTIuNCwwLjMgLTI1LjcsMC4xIC0zNi43LDYuNyAtNC4xLDIuMSAtOC41LDUuOSAtNy44LDExIDAuMiwzLjcgMC4zLDcuNCAwLjUsMTEuMSA2LjIsNy44IDE2LjYsMTAuNCAyNiwxMS44IDE0LDEuOCAyOC41LDEuMiA0Mi4xLC0zIDUuMiwtMS43IDEwLjQsLTQuMyAxNC4yLC04LjMgMC4zLC01LjEgLTAuMywtMTAuNCAwLjcsLTE1LjMgLTEuMiwtNC4zIC01LjksLTYuNCAtOS43LC04LjIgLTkuMiwtNCAtMTkuMywtNS40IC0yOS4yLC01LjYgeiBtIC0zLjIsOS42IGMgMTAuMSwtMC4yIDIwLjUsMS45IDI5LjEsNy40IC0xMyw4LjQgLTI5LjYsOS43IC00NC4zLDYuMSAtNC45LC0xLjMgLTkuNywtMy4zIC0xMy43LC02LjQgOC44LC00LjkgMTguOSwtNi45IDI4LjksLTcuMiB6XCIsZmlsbDpSP086R30se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6XCJibGFja1wiLGQ6XCJtIDk2LjksMTA3IGMgMC43LC04LjEgMS40LC0xNi4zIDIuMSwtMjQuNCBNIDg5LjMsMTIxLjggYyAzLjEsLTEzLjIgNi4yLC0yNi4zIDkuMywtMzkuNSA0LjksMTIuNyA5LjcsMjUuNSAxNC42LDM4LjIgbSAyNy44LC01LjMgYyAtMC4xLDMuOSAtMC4yLDcuOCAtMC4zLDExLjYgTSA1OC42LDExMy4zIGMgMC4yLDQuNSAwLjMsOSAwLjUsMTMuNSBtIC0wLjUsLTEuMiBjIDMuNSw2LjMgMTEsOC42IDE3LjYsMTAuNSAxNi40LDQuMSAzMy45LDMuOSA1MC4xLC0wLjggNS41LC0xLjggMTEuOCwtNC4zIDE0LjcsLTkuNyBtIDAuNSwtMTMgYyAtMC41LDUuNCAtNi4xLDguMSAtMTAuNSwxMCAtMTUuNCw1LjcgLTMyLjQsNi4xIC00OC41LDMuNiAtNy45LC0xLjQgLTE2LjMsLTMuNCAtMjIuMiwtOS4yIC0zLjYsLTMuOSAtMC45LC05LjYgMy40LC0xMS43IDguMywtNS4yIDE4LjMsLTYuNiAyNy45LC03LjUgMTMuNSwtMSAyNy41LDAgNDAuMiw1LjEgNC4yLDEuOCA5LjMsNC42IDkuNyw5LjcgeiBtIC0xMy4zLDEuNiBjIC04LjIsLTUuOSAtMTguOCwtNi44IC0yOC42LC03IC05LjUsMC4xIC0xOS41LDEuMiAtMjcuNiw2LjQgbCAtMC42LDAuNSBtIDU4LjksLTIuNiBjIC0wLjgsNC44IC02LjEsNi40IC0xMCw3LjggLTEzLjIsMy43IC0yNy40LDMuNyAtNDAuNSwtMCAtMy44LC0xLjIgLTguMSwtMi44IC05LjgsLTYuNyAtMC43LC00LjkgNSwtNy4xIDguNywtOC41IDEyLjcsLTQgMjYuNiwtNCAzOS41LC0xIDQuNCwxLjIgOS44LDIuOCAxMS45LDcuMyBsIDAuMSwwLjUgMCwwLjUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOlwiYmxhY2tcIixzdHJva2U6ITEsZDpcIk0gNzUuMiw5My4xIEMgODguOSw4NyAxMDIuNiw4MC44IDExNi4zLDc0LjcgYyAyLjMsMS4zIDQuNywyLjYgNywzLjkgLTEzLjcsNiAtMjcuMywxMiAtNDEsMTggLTIuNCwtMS4yIC00LjgsLTIuMyAtNy4yLC0zLjUgelwifV0sTVtcIlNQLkkuTUFOVUFMIFRSQUNLXCJdPWEoXCJNQU5cIiksTVtcIlNQLkkuTUlMSVRBUllcIl09YShcIk1JTFwiKSxNW1wiU1AuSS5NSU5JQVRVUklaRUQgU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA5MS4xLDkyIDAsMTYgMTcuOCwwIDAsLTE2IHogbSAyMi4yLDAgMCwxNiAyMi4yLDAgMCwtMTYgeiBtIC0yNi42LDAgLTIyLjIsMCAwLDE2IDIyLjIsMCB6IG0gMCw4IDQuNCwwIG0gMTcuOCwwIDQuNCwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsMTE5IDEwLC05IDEwLDkgbSAtMjAsLTM4IDEwLDkgMTAsLTkgbSAzNSw5IC0xMCwxMCAxMCwxMCBNIDU1LDkwIDY1LDEwMCA1NSwxMTBcIn1dLE1bXCJTUC5JLk5BVklHQVRJT05BTCBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDExMCwxMDkgNSwwIG0gLTMwLDAgNSwwIG0gLTUsLTEwIC0yNSwwIDAsMjAgMjUsMCB6IG0gMzAsMCAwLDIwIDI1LDAgMCwtMjAgeiBtIC0yNSwwIDAsMjAgMjAsMCAwLC0yMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODgsODcgYyA4LDYgMTYsNiAyNCwwIG0gLTIwLDggOCwtMTQgOCwxNFwifV0sTVtcIlNQLkkuT1JCSVRFUiBTSFVUVExFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg5LDExNSA2LC0yNSBjIDMsLTEyIDcsLTEyIDEwLDAgbCA2LDI1IC0xMCwwIC0xLDUgLTEsLTUgelwifSxNW1wiU1AuSS5SRS1FTlRSWSBWRUhJQ0xFXCJdPWEoXCJSVlwiKSxNW1wiU1AuSS5SRUNPTk5BSVNTQU5DRSBTQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA2LDEwMCA5LDIwIG0gLTIxLC0yMCAtOSwyMCBtIDE3LC0yMCAzLDIwIG0gLTcsLTIwIC0zLDIwIG0gMTUsLTMwIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5TQVRFTExJVEUsIEdFTkVSQUxcIl09YShcIlNBVFwiKSxNW1wiU1AuSS5TQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwMCAxMCwwIG0gLTQwLDAgMTAsMCBtIC0xMCwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSA0MCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTMwLDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sTVtcIlNQLkkuU1BBQ0UgTEFVTkNIIFZFSElDTEVcIl09YShcIlNMVlwiKSxNW1wiU1AuSS5TUEFDRSBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDk3LjUsMTEyLjUgMCw3LjUgNSwwIDAsLTcuNSB6IG0gMCwtMzIuNSA1LDAgMCwyNi40IC01LDAgeiBtIC0wLjMsNy42IEMgODMuMyw4OC4yIDcyLjUsOTMuNSA3Mi41LDEwMCBjIDAsNi45IDEyLjMsMTIuNSAyNy41LDEyLjUgMTUuMiwwIDI3LjUsLTUuNiAyNy41LC0xMi41IDAsLTYuNSAtMTEsLTExLjkgLTI1LC0xMi40IGwgMCw1LjYgYyA5LjksMC40IDE3LjUsMy4yIDE3LjUsNi42IDAsMy43IC04LjksNi43IC0xOS44LDYuNyAtMTAuOSwwIC0xOS44LC0zIC0xOS44LC02LjcgMCwtMy40IDcuNCwtNi4xIDE3LjEsLTYuNiBsIDAsLTUuNiBjIC0wLjEsMCAtMC4yLC0wIC0wLjMsMCB6XCJ9LE1bXCJTUC5JLlNQQUNFIFZFSElDTEVcIl09YShcIlNWXCIpLE1bXCJTUC5JLlRFVEhFUkVEIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjAsODcgLTIwLDEyIG0gMzMsLTEyIGMgMCwzLjYgLTIuOSw2LjUgLTYuNSw2LjUgLTMuNiwwIC02LjUsLTIuOSAtNi41LC02LjUgMCwtMy42IDIuOSwtNi41IDYuNSwtNi41IDMuNiwwIDYuNSwyLjkgNi41LDYuNSB6IG0gLTIzLDIyIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5XRUFUSEVSIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwMCxmb250c2l6ZToyNSx0ZXh0OlwiV1hcIn1dLE1bXCJTUC5NMS5HRU9TVEFUSU9OQVJZIE9SQklUIChHTylcIl09bChcIkdPXCIpLE1bXCJTUC5NMS5HRU9TWU5DSFJPTk9VUyBPUkJJVCAoR1NPKVwiXT1sKFwiR1NPXCIpLE1bXCJTUC5NMS5ISUdIIEVBUlRIIE9SQklUIChIRU8pXCJdPWwoXCJIRU9cIiksTVtcIlNQLk0xLkxPVyBFQVJUSCBPUkJJVCAoTEVPKVwiXT1sKFwiTEVPXCIpLE1bXCJTUC5NMS5NRURJVU0gRUFSVEggT1JCSVQgKE1FTylcIl09bChcIk1FT1wiKSxNW1wiU1AuTTEuTU9MTklZQSBPUkJJVCAoTU8pXCJdPWwoXCJNT1wiKSxNW1wiU1AuTTIuSU5GUkFSRURcIl09cihcIklSXCIpLE1bXCJTUC5NMi5PUFRJQ0FMXCJdPXIoXCJPXCIpLE1bXCJTUC5NMi5SQURBUlwiXT1yKFwiUlwiKSxNW1wiU1AuTTIuU0lHTkFMUyBJTlRFTExJR0VOQ0UgKFNJR0lOVClcIl09cihcIlNJXCIpLE1bXCJTUEFDRS5NSVNTSUxFLklDT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMzUgbDAsLTEwIDUsLTUgMCwtNTUgNSwtNSA1LDUgMCw1NSA1LDUgMCwxMCAtMTAsLTEwIHpcIn0sKFJ8fFMpJiYoTVtcIlNQQUNFLk1JU1NJTEUuSUNPTlwiXS5maWxsPVQ/RS5maWxsQ29sb3IuVW5rbm93bjpFLmljb25GaWxsQ29sb3IuVW5rbm93biksTVtcIlNQQUNFLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0xLlNQQUNFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5BUlJPV1wiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIkFcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5HUk9VTkQtQkFTRUQgSU5URVJDRVBUT1IgKEdCSSlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJHXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifV0sTVtcIlNQQUNFLk1JU1NJTEUuTTIuSU5URVJNRURJQVRFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLkxPTkcgUkFOR0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJMXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUlwifV0sTVtcIlNQQUNFLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiTVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNIT1JUIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNQQUNFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlBcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSAzIChTTS0zKVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCIzXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gVEVSTUlOQUwgUEhBU0UgKFNNLVQpXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlRFUk1JTkFMIEhJR0gtQUxUSVRVREUgQVJFQSBERUZFTlNFIChUSEFBRClcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJUXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLkNMT1NFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLkRFQlJJU1wiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIkRcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5VTktOT1dOXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiVVwifSxNW1wiU1BBQ0UuUExBTkVUIExBTkRFUlwiXT1hKFwiUExcIiksTSlNLmhhc093blByb3BlcnR5KGkpJiYoSS5oYXNPd25Qcm9wZXJ0eShpKSYmY29uc29sZS53YXJuKFwiT3ZlcnJpZGUgb2Y6IFwiK2kpLG4uY2FsbCh0aGlzLE1baV0sTiksSVtpXT1NW2ldKX1zLnNldENvbG9yTW9kZT1mdW5jdGlvbihJLHQpe3JldHVybiB0aGlzLl9jb2xvck1vZGVzW0ldPXt9LHRoaXMuX2NvbG9yTW9kZXNbSV0uSG9zdGlsZT10Lkhvc3RpbGUsdGhpcy5fY29sb3JNb2Rlc1tJXS5GcmllbmQ9dC5GcmllbmQsdGhpcy5fY29sb3JNb2Rlc1tJXS5OZXV0cmFsPXQuTmV1dHJhbCx0aGlzLl9jb2xvck1vZGVzW0ldLlVua25vd249dC5Vbmtub3duLHRoaXMuX2NvbG9yTW9kZXNbSV0uQ2l2aWxpYW49dC5DaXZpbGlhbix0aGlzLl9jb2xvck1vZGVzW0ldfSxzLmFkZFN5bWJvbFBhcnQ9ZnVuY3Rpb24oSSl7aWYoXCJmdW5jdGlvblwiPT10eXBlb2YgSSl7dmFyIHQ9cy5nZXRTeW1ib2xQYXJ0cygpOy0xPT10LmluZGV4T2YoSSkmJnMuc2V0U3ltYm9sUGFydHModC5jb25jYXQoSSkpfXJldHVybiBzfSxzLmdldFN5bWJvbFBhcnRzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3N5bWJvbFBhcnRzLnNsaWNlKDApfSxzLnNldFN5bWJvbFBhcnRzPWZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLl9zeW1ib2xQYXJ0cz1JLHN9LHMucmVzZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIEkgaW4gdGhpcy5fYnJva2VuUGF0aDJEPXZvaWQgMCx0aGlzLl9jb2xvck1vZGVzPXt9LHQpcy5zZXRDb2xvck1vZGUoSSx0W0ldKTt0aGlzLl9kYXNoQXJyYXlzPXtwZW5kaW5nOlwiNCw0XCIsYW50aWNpcGF0ZWQ6XCI4LDEyXCIsZmVpbnREdW1teTpcIjgsOFwifSx0aGlzLl9nZXRJY29ucz17fSx0aGlzLl9nZXRNZXRhZGF0YT17fSx0aGlzLl9ocVN0YWZmTGVuZ3RoPTEwMCx0aGlzLl9pY29uQ2FjaGU9e30sdGhpcy5faWNvblBhcnRzPVtdLHRoaXMuX2xhYmVsQ2FjaGU9e30sdGhpcy5fbGFiZWxPdmVycmlkZXM9e30sdGhpcy5faWNvblNJREM9e30sdGhpcy5faWNvblNJREMubGV0dGVyPVtdLHRoaXMuX2ljb25TSURDLm51bWJlcj1bXSx0aGlzLl9TVEQyNTI1PSEwLHRoaXMuX3N2Z05TPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIix0aGlzLl9zeW1ib2xQYXJ0cz1bXSxzLmFkZFN5bWJvbFBhcnQoRSkscy5hZGRTeW1ib2xQYXJ0KFIpLHMuYWRkU3ltYm9sUGFydChlKSxzLmFkZFN5bWJvbFBhcnQoQSkscy5hZGRTeW1ib2xQYXJ0KEMpLHMuYWRkU3ltYm9sUGFydChUKSxzLmFkZFN5bWJvbFBhcnQoUykscy5hZGRTeW1ib2xQYXJ0KE4pfSxzLnJlc2V0KCkscy5CQm94PUkscy5Db2xvck1vZGU9ZnVuY3Rpb24oSSx0LEUsUixlKXt2YXIgQT17fTtyZXR1cm4gQS5DaXZpbGlhbj1JLEEuRnJpZW5kPXQsQS5Ib3N0aWxlPUUsQS5OZXV0cmFsPVIsQS5Vbmtub3duPWUsQX0scy5zZXRCcm9rZW5QYXRoMkQ9ZnVuY3Rpb24oSSl7cy5fYnJva2VuUGF0aDJEPUl9LHMuX2dldEljb25QYXJ0cz1mdW5jdGlvbihJLHQsRSxSLGUpe3ZhciBBPXt9O2Zvcih2YXIgQyBpbiB0aGlzLl9pY29uUGFydHMpdGhpcy5faWNvblBhcnRzLmhhc093blByb3BlcnR5KEMpJiZ0aGlzLl9pY29uUGFydHNbQ10uY2FsbCh0aGlzLEEsSSx0LEUsUixlKTtyZXR1cm4gQX0scy5fc2NhbGU9ZnVuY3Rpb24oSSx0KXtyZXR1cm57dHlwZTpcInRyYW5zbGF0ZVwiLHg6MTAwLTEwMCpJLHk6MTAwLTEwMCpJLGRyYXc6W3t0eXBlOlwic2NhbGVcIixmYWN0b3I6SSxkcmF3Olt0XX1dfX0scy5fdHJhbnNsYXRlPWZ1bmN0aW9uKEksdCxFKXtyZXR1cm57dHlwZTpcInRyYW5zbGF0ZVwiLHg6SSx5OnQsZHJhdzpbRV19fSxzLmFkZEljb25QYXJ0cz1mdW5jdGlvbihJKXtBcnJheS5pc0FycmF5KEkpfHwoST1bSV0pO2Zvcih2YXIgdD0wO3Q8SS5sZW5ndGg7dCsrKVwiZnVuY3Rpb25cIj09dHlwZW9mIElbdF0mJi0xPT10aGlzLl9pY29uUGFydHMuaW5kZXhPZihJW3RdKSYmKHRoaXMuX2ljb25QYXJ0cz10aGlzLl9pY29uUGFydHMuY29uY2F0KElbdF0pKTtyZXR1cm4gc30scy5hZGRMYWJlbE92ZXJyaWRlcz1mdW5jdGlvbihJLHQpe3JldHVybiB0aGlzLl9sYWJlbENhY2hlPXt9LFwiZnVuY3Rpb25cIj09dHlwZW9mIEkmJih0aGlzLl9sYWJlbE92ZXJyaWRlcy5oYXNPd25Qcm9wZXJ0eSh0KXx8KHRoaXMuX2xhYmVsT3ZlcnJpZGVzW3RdPVtdKSx0aGlzLl9sYWJlbE92ZXJyaWRlc1t0XT10aGlzLl9sYWJlbE92ZXJyaWRlc1t0XS5jb25jYXQoSSkpLHN9LHMuYWRkSWNvbnM9ZnVuY3Rpb24oSSl7dGhpcy5faWNvbkNhY2hlPXt9LEFycmF5LmlzQXJyYXkoSSl8fChJPVtJXSk7Zm9yKHZhciB0PTA7dDxJLmxlbmd0aDt0KyspSVt0XS5oYXNPd25Qcm9wZXJ0eShcImdldE1ldGFkYXRhXCIpJiYocy5fZ2V0TWV0YWRhdGFbSVt0XS50eXBlXT1JW3RdLmdldE1ldGFkYXRhKSxJW3RdLmhhc093blByb3BlcnR5KFwiZ2V0SWNvbnNcIikmJihzLl9nZXRJY29uc1tJW3RdLnR5cGVdPUlbdF0uZ2V0SWNvbnMpLElbdF0uaGFzT3duUHJvcGVydHkoXCJpY29uUGFydHNcIikmJnMuYWRkSWNvblBhcnRzKElbdF0uaWNvblBhcnRzKSxJW3RdLmhhc093blByb3BlcnR5KFwibGFiZWxzXCIpJiZzLmFkZExhYmVsT3ZlcnJpZGVzKElbdF0ubGFiZWxzLElbdF0udHlwZSksSVt0XS5oYXNPd25Qcm9wZXJ0eShcImljb25zXCIpJiZzLmFkZFNJRENpY29ucyhJW3RdLmljb25zLElbdF0udHlwZSl9LHMuYWRkU0lEQ2ljb25zPWZ1bmN0aW9uKEksdCl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2YgSSYmLTE9PXRoaXMuX2ljb25TSURDW3RdLmluZGV4T2YoSSkmJih0aGlzLl9pY29uU0lEQ1t0XT10aGlzLl9pY29uU0lEQ1t0XS5jb25jYXQoSSkpLHN9LHMuZ2V0Q29sb3JNb2RlPWZ1bmN0aW9uKEkpe3ZhciB0PXRoaXMuX2NvbG9yTW9kZXNbSV07cmV0dXJuIG5ldyBzLkNvbG9yTW9kZSh0LkNpdmlsaWFuLHQuRnJpZW5kLHQuSG9zdGlsZSx0Lk5ldXRyYWwsdC5Vbmtub3duKX0scy5nZXREYXNoQXJyYXlzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2Rhc2hBcnJheXN9LHMuZ2V0SHFTdGFmZkxlbmd0aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ocVN0YWZmTGVuZ3RofSxzLmdldFZlcnNpb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52ZXJzaW9ufSxzLm91dGxpbmU9ZnVuY3Rpb24oSSx0LEUsUil7cmV0dXJuIGZ1bmN0aW9uIEkodCxFLFIsZSl7dmFyIEE7aWYoQXJyYXkuaXNBcnJheSh0KSlmb3IodmFyIEMgaW4gQT1bXSx0KUEucHVzaChJKHRbQ10sRSxSLGUpKTtlbHNle2Zvcih2YXIgVCBpbiBBPXt9LHQpLTE9PVtcImZpbGxcIixcImZpbGxvcGFjaXR5XCJdLmluZGV4T2YoVCkmJihBW1RdPXRbVF0pO2lmKFwidHJhbnNsYXRlXCI9PXQudHlwZXx8XCJyb3RhdGVcIj09dC50eXBlfHxcInNjYWxlXCI9PXQudHlwZSlmb3IodmFyIFMgaW4gQS5kcmF3PVtdLHQuZHJhdylBLmRyYXcucHVzaChJKHQuZHJhd1tTXSxFLFIsZSkpO2Vsc2UgQS5zdHJva2V3aWR0aD0hMSE9PUEuc3Ryb2tlP051bWJlcihBLnN0cm9rZXdpZHRofHxSKSsyKkU6MipFLEEuc3Ryb2tlPWUsQS5maWxsPSExLEEubGluZWNhcD1cInJvdW5kXCJ9cmV0dXJuIEF9KEksdCxFLFIpfSxzLnNldERhc2hBcnJheXM9ZnVuY3Rpb24oSSx0LEUpe3JldHVybiB0aGlzLl9kYXNoQXJyYXlzLnBlbmRpbmc9SSx0aGlzLl9kYXNoQXJyYXlzLmFudGljaXBhdGVkPXQsdGhpcy5fZGFzaEFycmF5cy5mZWludER1bW15PUUsdGhpcy5fZGFzaEFycmF5c30scy5zZXRIcVN0YWZmTGVuZ3RoPWZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLl9ocVN0YWZmTGVuZ3RoPUksdGhpcy5faHFTdGFmZkxlbmd0aH0scy5zZXRTdGFuZGFyZD1mdW5jdGlvbihJKXtyZXR1cm5cIjI1MjVcIj09ST90aGlzLl9TVEQyNTI1PSEwOlwiQVBQNlwiPT1JJiYhKHRoaXMuX1NURDI1MjU9ITEpfSxzLl9zeW1ib2xHZW9tZXRyaWVzPU8sRy5wcm90b3R5cGUuYXNDYW52YXM9ZnVuY3Rpb24oSSl7aWYodm9pZCAwPT09cy5fYnJva2VuUGF0aDJEKWlmKFwidW5kZWZpbmVkXCI9PXR5cGVvZiBQYXRoMkQpcy5zZXRCcm9rZW5QYXRoMkQoITApO2Vsc2V7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImNhbnZhc1wiKTt0LndpZGh0PTEsdC5oZWlnaHQ9MTt2YXIgRT10LmdldENvbnRleHQoXCIyZFwiKSxSPW5ldyBQYXRoMkQoXCJNMCAwIGggMTAgdiAxMCBoIC0xMCBaXCIpO0UuZmlsbChSKTt2YXIgZT1FLmdldEltYWdlRGF0YSgwLDAsMSwxKS5kYXRhLmpvaW4oKTtzLnNldEJyb2tlblBhdGgyRCghKFwiMCwwLDAsMjU1XCI9PWUpKX12YXIgQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiY2FudmFzXCIpO0k9SXx8MSxBLndpZHRoPXRoaXMud2lkdGgqSSxBLmhlaWdodD10aGlzLmhlaWdodCpJO3ZhciBDPUEuZ2V0Q29udGV4dChcIjJkXCIpO3JldHVybiBDLnNjYWxlKEkqdGhpcy5zdHlsZS5zaXplLzEwMCxJKnRoaXMuc3R5bGUuc2l6ZS8xMDApLEMudHJhbnNsYXRlKC0odGhpcy5iYm94LngxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLC0odGhpcy5iYm94LnkxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpKSx0aGlzLmNhbnZhc0RyYXcuY2FsbCh0aGlzLEMsdGhpcy5kcmF3SW5zdHJ1Y3Rpb25zKSxBfSxHLnByb3RvdHlwZS5jYW52YXNEcmF3PWZ1bmN0aW9uIEkodCxFKXtmb3IodmFyIFI9MDtSPEUubGVuZ3RoO1IrKylpZihBcnJheS5pc0FycmF5KEVbUl0pKUVbUl0ubGVuZ3RoJiZJLmNhbGwodGhpcyx0LEVbUl0pO2Vsc2UgaWYoXCJvYmplY3RcIj09dHlwZW9mIEVbUl0pe3N3aXRjaCh0LmxpbmVXaWR0aD1FW1JdLnN0cm9rZXdpZHRofHx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiYoRVtSXS5zdHJva2U/dC5zdHJva2VTdHlsZT1FW1JdLnN0cm9rZTp0LnN0cm9rZVN0eWxlPVwicmdiYSgwLDAsMCwwKVwiKSxFW1JdLnN0cm9rZWRhc2hhcnJheT90LnNldExpbmVEYXNoKEVbUl0uc3Ryb2tlZGFzaGFycmF5LnNwbGl0KFwiLFwiKSk6MCE9dC5nZXRMaW5lRGFzaCgpLmxlbmd0aCYmdC5zZXRMaW5lRGFzaChbXSksRVtSXS5saW5lY2FwJiYodC5saW5lQ2FwPUVbUl0ubGluZWNhcCx0LmxpbmVKb2luPUVbUl0ubGluZWNhcCksRVtSXS5maWxsJiYodC5maWxsU3R5bGU9RVtSXS5maWxsKSxFW1JdLmZpbGx8fCh0LmZpbGxTdHlsZT1cInJnYmEoMCwwLDAsMClcIiksdm9pZCAwIT09RVtSXS5maWxsb3BhY2l0eSYmKHQuZ2xvYmFsQWxwaGE9RVtSXS5maWxsb3BhY2l0eSksRVtSXS50eXBlKXtjYXNlXCJwYXRoXCI6aWYocy5fYnJva2VuUGF0aDJEKVwiZnVuY3Rpb25cIj09dHlwZW9mIHMuUGF0aDJEPyhzLlBhdGgyRCh0LEVbUl0uZCksKHZvaWQgMD09PUVbUl0uZmlsbHx8dm9pZCAwIT09RVtSXS5maWxsJiZFW1JdLmZpbGwpJiZ0LmZpbGwoKSwxIT10Lmdsb2JhbEFscGhhJiYodC5nbG9iYWxBbHBoYT0xKSwodm9pZCAwPT09RVtSXS5zdHJva2V8fHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiZFW1JdLnN0cm9rZSkmJnQuc3Ryb2tlKCkpOmNvbnNvbGUud2FybihcIm1zLlBhdGgyRCgpIGlzIG5vdCBwcmVzZW50LCB5b3Ugd2lsbCBuZWVkIHRvIGxvYWQgZnVuY3Rpb25hbGl0eSBmb3IgdXNpbmcgQ2FudmFzIGluIG9sZGVyIHZlcnNpb24gb2YgSW50ZXJuZXQgRXhwbG9yZXIuXCIpO2Vsc2V7dmFyIGU9bmV3IFBhdGgyRChFW1JdLmQpO0VbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKHQuc2F2ZSgpLHQuY2xpcChuZXcgUGF0aDJEKEVbUl0uY2xpcFBhdGgpLFwibm9uemVyb1wiKSksKHZvaWQgMD09PUVbUl0uZmlsbHx8dm9pZCAwIT09RVtSXS5maWxsJiZFW1JdLmZpbGwpJiZ0LmZpbGwoZSksRVtSXS5oYXNPd25Qcm9wZXJ0eShcImNsaXBQYXRoXCIpJiZ0LnJlc3RvcmUoKSwxIT10Lmdsb2JhbEFscGhhJiYodC5nbG9iYWxBbHBoYT0xKSwodm9pZCAwPT09RVtSXS5zdHJva2V8fHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiZFW1JdLnN0cm9rZSkmJnQuc3Ryb2tlKGUpfWJyZWFrO2Nhc2VcImNpcmNsZVwiOkVbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKHQuc2F2ZSgpLHQuY2xpcChuZXcgUGF0aDJEKEVbUl0uY2xpcFBhdGgpLFwibm9uemVyb1wiKSksdC5iZWdpblBhdGgoKSx0LmFyYyhFW1JdLmN4LEVbUl0uY3ksRVtSXS5yLDAsMipNYXRoLlBJLCExKSwodm9pZCAwPT09RVtSXS5maWxsfHx2b2lkIDAhPT1FW1JdLmZpbGwmJkVbUl0uZmlsbCkmJnQuZmlsbCgpLEVbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmdC5yZXN0b3JlKCksKHZvaWQgMD09PUVbUl0uc3Ryb2tlfHx2b2lkIDAhPT1FW1JdLnN0cm9rZSYmRVtSXS5zdHJva2UpJiZ0LnN0cm9rZSgpO2JyZWFrO2Nhc2VcInRleHRcIjp0LmZvbnQ9KHZvaWQgMCE9PUVbUl0uZm9udHdlaWdodD9FW1JdLmZvbnR3ZWlnaHQrXCIgXCI6XCJcIikrRVtSXS5mb250c2l6ZStcInB4IFwiK0VbUl0uZm9udGZhbWlseSx0LnRleHRBbGlnbj1cIm1pZGRsZVwiPT1FW1JdLnRleHRhbmNob3I/XCJjZW50ZXJcIjpFW1JdLnRleHRhbmNob3IsdC5maWxsVGV4dChFW1JdLnRleHQsRVtSXS54LEVbUl0ueSksRVtSXS5zdHJva2UmJnQuc3Ryb2tlVGV4dChFW1JdLnRleHQsRVtSXS54LEVbUl0ueSk7YnJlYWs7Y2FzZVwidHJhbnNsYXRlXCI6dC5zYXZlKCksdC50cmFuc2xhdGUoRVtSXS54LEVbUl0ueSksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpO2JyZWFrO2Nhc2VcInJvdGF0ZVwiOnZhciBBPUVbUl0ueCxDPUVbUl0ueTt0LnNhdmUoKSx0LnRyYW5zbGF0ZShBLEMpLHQucm90YXRlKEVbUl0uZGVncmVlKk1hdGguUEkvMTgwKSx0LnRyYW5zbGF0ZSgtQSwtQyksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpO2JyZWFrO2Nhc2VcInNjYWxlXCI6dC5zYXZlKCksdC5zY2FsZShFW1JdLmZhY3RvcixFW1JdLmZhY3RvciksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpfUVbUl0ubGluZWNhcCYmKHQubGluZUNhcD1cImJ1dHRcIix0LmxpbmVKb2luPVwibWl0ZXJcIiksdm9pZCAwIT09RVtSXS5maWxsb3BhY2l0eSYmKHQuZ2xvYmFsQWxwaGE9MSl9fSxHLnByb3RvdHlwZS5hc0RPTT1mdW5jdGlvbigpe3ZhciBJPWRvY3VtZW50LHQ9KG5ldyBET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyh0aGlzLmFzU1ZHKCksXCJ0ZXh0L3htbFwiKTtyZXR1cm4gSS5hZG9wdE5vZGUodC5kb2N1bWVudEVsZW1lbnQpfSxHLnByb3RvdHlwZS5hc1NWRz1mdW5jdGlvbigpe3ZhciBJPSc8c3ZnIHhtbG5zPVwiJytzLl9zdmdOUysnXCIgdmVyc2lvbj1cIjEuMlwiIGJhc2VQcm9maWxlPVwidGlueVwiIHdpZHRoPVwiJyt0aGlzLndpZHRoKydcIiBoZWlnaHQ9XCInK3RoaXMuaGVpZ2h0KydcIiB2aWV3Qm94PVwiJysodGhpcy5iYm94LngxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpK1wiIFwiKyh0aGlzLmJib3gueTEtdGhpcy5zdHlsZS5zdHJva2VXaWR0aC10aGlzLnN0eWxlLm91dGxpbmVXaWR0aCkrXCIgXCIrdGhpcy5iYXNlV2lkdGgrXCIgXCIrdGhpcy5iYXNlSGVpZ2h0KydcIj4nO3JldHVybiBJKz1mdW5jdGlvbiBJKHQpe2Zvcih2YXIgRT1cIlwiLFI9MDtSPHQubGVuZ3RoO1IrKylpZihBcnJheS5pc0FycmF5KHRbUl0pKXRbUl0ubGVuZ3RoJiYoRSs9SS5jYWxsKHRoaXMsdFtSXSkpO2Vsc2UgaWYoXCJvYmplY3RcIj09dHlwZW9mIHRbUl0pe3ZhciBlPVwiXCI7aWYoXCJzdmdcIj09dFtSXS50eXBlKWUrPXRbUl0uc3ZnO2Vsc2V7c3dpdGNoKHRbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKGUrPSc8Y2xpcFBhdGggaWQ9XCJjbGlwXCI+JyxlKz0nPHBhdGggZD1cIicrdFtSXS5jbGlwUGF0aCsnXCIgY2xpcC1ydWxlPVwibm9uemVyb1wiIC8+JyxlKz1cIjwvY2xpcFBhdGg+XCIpLHRbUl0udHlwZSl7Y2FzZVwicGF0aFwiOmUrPSc8cGF0aCBkPVwiJyt0W1JdLmQrJ1wiICcsdFtSXS5oYXNPd25Qcm9wZXJ0eShcImNsaXBQYXRoXCIpJiYoZSs9J2NsaXAtcGF0aD1cInVybCgjY2xpcClcIiAnKTticmVhaztjYXNlXCJjaXJjbGVcIjplKz0nPGNpcmNsZSBjeD1cIicrdFtSXS5jeCsnXCIgY3k9XCInK3RbUl0uY3krJ1wiIHI9XCInK3RbUl0ucisnXCIgJyx0W1JdLmhhc093blByb3BlcnR5KFwiY2xpcFBhdGhcIikmJihlKz0nY2xpcC1wYXRoPVwidXJsKCNjbGlwKVwiICcpO2JyZWFrO2Nhc2VcInRleHRcIjplKz0nPHRleHQgeD1cIicrdFtSXS54KydcIiB5PVwiJyt0W1JdLnkrJ1wiIHRleHQtYW5jaG9yPVwiJyt0W1JdLnRleHRhbmNob3IrJ1wiIGZvbnQtc2l6ZT1cIicrdFtSXS5mb250c2l6ZSsnXCIgZm9udC1mYW1pbHk9XCInK3RbUl0uZm9udGZhbWlseSsnXCIgJyx0W1JdLmZvbnR3ZWlnaHQmJihlKz0nZm9udC13ZWlnaHQ9XCInK3RbUl0uZm9udHdlaWdodCsnXCIgJyk7YnJlYWs7Y2FzZVwidHJhbnNsYXRlXCI6ZSs9JzxnIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgnK3RbUl0ueCtcIixcIit0W1JdLnkrJylcIiAnO2JyZWFrO2Nhc2VcInJvdGF0ZVwiOmUrPSc8ZyB0cmFuc2Zvcm09XCJyb3RhdGUoJyt0W1JdLmRlZ3JlZStcIixcIit0W1JdLngrXCIsXCIrdFtSXS55KycpXCIgJzticmVhaztjYXNlXCJzY2FsZVwiOmUrPSc8ZyB0cmFuc2Zvcm09XCJzY2FsZSgnK3RbUl0uZmFjdG9yKycpXCIgJ31zd2l0Y2godm9pZCAwIT09dFtSXS5zdHJva2UmJihlKz0nc3Ryb2tlLXdpZHRoPVwiJysodFtSXS5zdHJva2V3aWR0aHx8dGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrJ1wiICcsdFtSXS5zdHJva2VkYXNoYXJyYXkmJihlKz0nc3Ryb2tlLWRhc2hhcnJheT1cIicrdFtSXS5zdHJva2VkYXNoYXJyYXkrJ1wiICcpLHRbUl0ubGluZWNhcCYmKGUrPSdzdHJva2UtbGluZWNhcD1cIicrdFtSXS5saW5lY2FwKydcIiAnLGUrPSdzdHJva2UtbGluZWpvaW49XCInK3RbUl0ubGluZWNhcCsnXCIgJyksdFtSXS5zdHJva2U/ZSs9J3N0cm9rZT1cIicrdFtSXS5zdHJva2UrJ1wiICc6ZSs9J3N0cm9rZT1cIm5vbmVcIiAnKSx2b2lkIDAhPT10W1JdLmZpbGwmJihlKz0nZmlsbD1cIicrKHRbUl0uZmlsbD90W1JdLmZpbGw6XCJub25lXCIpKydcIiAnKSx2b2lkIDAhPT10W1JdLmZpbGxvcGFjaXR5JiYoZSs9J2ZpbGwtb3BhY2l0eT1cIicrdFtSXS5maWxsb3BhY2l0eSsnXCIgJyksZSs9XCI+XCIsdFtSXS50eXBlKXtjYXNlXCJwYXRoXCI6ZSs9XCI8L3BhdGg+XCI7YnJlYWs7Y2FzZVwiY2lyY2xlXCI6ZSs9XCI8L2NpcmNsZT5cIjticmVhaztjYXNlXCJ0ZXh0XCI6ZSs9U3RyaW5nKHRbUl0udGV4dCkucmVwbGFjZSgvJi9nLFwiJmFtcDtcIikucmVwbGFjZSgvPC9nLFwiJmx0O1wiKS5yZXBsYWNlKC8+L2csXCImZ3Q7XCIpK1wiPC90ZXh0PlwiO2JyZWFrO2Nhc2VcInRyYW5zbGF0ZVwiOmNhc2VcInJvdGF0ZVwiOmNhc2VcInNjYWxlXCI6ZSs9SS5jYWxsKHRoaXMsdFtSXS5kcmF3KSxlKz1cIjwvZz5cIn19RSs9ZX1yZXR1cm4gRX0uY2FsbCh0aGlzLHRoaXMuZHJhd0luc3RydWN0aW9ucyksSSs9XCI8L3N2Zz5cIix0aGlzLlhNTD1JfSxHLnByb3RvdHlwZS5nZXRBbmNob3I9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zeW1ib2xBbmNob3J9LEcucHJvdG90eXBlLmdldENvbG9ycz1mdW5jdGlvbigpe3ZhciBJPVwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLmNvbG9yTW9kZT90aGlzLnN0eWxlLmNvbG9yTW9kZTpzLmdldENvbG9yTW9kZSh0aGlzLnN0eWxlLmNvbG9yTW9kZSksdD1cIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5mcmFtZUNvbG9yP3RoaXMuc3R5bGUuZnJhbWVDb2xvcjpzLmdldENvbG9yTW9kZShcIkZyYW1lQ29sb3JcIiksRT1cIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5pY29uQ29sb3I/dGhpcy5zdHlsZS5pY29uQ29sb3I6cy5nZXRDb2xvck1vZGUoXCJJY29uQ29sb3JcIiksUj1JLGU9cy5nZXRDb2xvck1vZGUoXCJCbGFja1wiKSxBPXMuZ2V0Q29sb3JNb2RlKFwiV2hpdGVcIiksQz1zLmdldENvbG9yTW9kZShcIk9mZldoaXRlXCIpLFQ9cy5nZXRDb2xvck1vZGUoXCJOb25lXCIpO3RoaXMuc3R5bGUuY2l2aWxpYW5Db2xvciYmdGhpcy5tZXRhZGF0YS5jaXZpbGlhbiYmKEkuRnJpZW5kPUkuTmV1dHJhbD1JLlVua25vd249SS5DaXZpbGlhbix0LkZyaWVuZD10Lk5ldXRyYWw9dC5Vbmtub3duPXQuQ2l2aWxpYW4sRS5GcmllbmQ9RS5OZXV0cmFsPUUuVW5rbm93bj1FLkNpdmlsaWFuKSwodGhpcy5tZXRhZGF0YS5qb2tlcnx8dGhpcy5tZXRhZGF0YS5mYWtlcikmJihJLkZyaWVuZD1JLkhvc3RpbGUsdC5GcmllbmQ9dC5Ib3N0aWxlLEUuRnJpZW5kPUUuSG9zdGlsZSksXCJcIiE9dGhpcy5zdHlsZS5tb25vQ29sb3ImJih0LkZyaWVuZD10Lk5ldXRyYWw9dC5Ib3N0aWxlPXQuVW5rbm93bj10LkNpdmlsaWFuPXRoaXMuc3R5bGUubW9ub0NvbG9yLGU9dCxBPUk9VCk7dmFyIFM9e2ZpbGxDb2xvcjpJLGZyYW1lQ29sb3I6dCxpY29uQ29sb3I6RSxpY29uRmlsbENvbG9yOlIsbm9uZTpULGJsYWNrOmUsd2hpdGU6QX07cmV0dXJuIHRoaXMubWV0YWRhdGEuZnJhbWU/Uy5mcmFtZUNvbG9yPVwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLmZyYW1lQ29sb3I/dGhpcy5zdHlsZS5mcmFtZUNvbG9yOmU6Uy5mcmFtZUNvbG9yPVQsdGhpcy5tZXRhZGF0YS5maWxsPyhTLmZpbGxDb2xvcj10aGlzLm1ldGFkYXRhLmZyYW1lfHwhdGhpcy5tZXRhZGF0YS5mcmFtZSYmIXRoaXMuc3R5bGUuaWNvbj9JOlQsUy5pY29uQ29sb3I9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaWNvbkNvbG9yP3RoaXMuc3R5bGUuaWNvbkNvbG9yOmUsUy5pY29uRmlsbENvbG9yPXRoaXMubWV0YWRhdGEuZnJhbWU/QzpJLFMud2hpdGU9Qyk6KFMuZmlsbENvbG9yPVQsUy5mcmFtZUNvbG9yPXRoaXMubWV0YWRhdGEuZnJhbWU/dDpULFMuaWNvbkNvbG9yPXQsUy5pY29uRmlsbENvbG9yPVQsdGhpcy5tZXRhZGF0YS5mcmFtZXx8dGhpcy5tZXRhZGF0YS5maWxsfHx0aGlzLnN0eWxlLmljb258fChTLmZyYW1lQ29sb3I9ZSxTLmZpbGxDb2xvcj1lKSksU30sRy5wcm90b3R5cGUuZ2V0T2N0YWdvbkFuY2hvcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLm9jdGFnb25BbmNob3J9LEcucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKCl7dmFyIEk9e2FjdGl2aXR5OiExLGFmZmlsaWF0aW9uOlwidW5kZWZpbmVkXCIsYmFzZUFmZmlsYXRpb246XCJcIixiYXNlRGltZW5zaW9uOlwiXCIsYmFzZUdlb21ldHJ5OntnOlwiXCIsYmJveDp7fX0sY2l2aWxpYW46ITEsY29uZGl0aW9uOlwiXCIsY29udGV4dDpcIlwiLGRpbWVuc2lvbjpcInVuZGVmaW5lZFwiLGRpbWVuc2lvblVua25vd246ITEsZWNoZWxvbjpcIlwiLGZha2VyOiExLGZlbmludER1bW15OiExLGZpbGw6dGhpcy5zdHlsZS5maWxsLGZyYW1lOnRoaXMuc3R5bGUuZnJhbWUsZnVuY3Rpb25pZDpcIlwiLGhlYWRxdWFydGVyczohMSxpbnN0YWxsYXRpb246ITEsam9rZXI6ITEsbW9iaWxpdHk6XCJcIixub3RwcmVzZW50OlwiXCIsbnVtYmVyU0lEQzohMSxzcGFjZTohMSxTVEQyNTI1OnMuX1NURDI1MjUsdGFza0ZvcmNlOiExLHVuaXQ6ITF9LHQ9e2NvbnRleHQ6W1wiUmVhbGl0eVwiLFwiRXhlcmNpc2VcIixcIlNpbXVsYXRpb25cIl0sc3RhdHVzOltcIlByZXNlbnRcIixcIlBsYW5uZWRcIixcIkZ1bGx5Q2FwYWJsZVwiLFwiRGFtYWdlZFwiLFwiRGVzdHJveWVkXCIsXCJGdWxsVG9DYXBhY2l0eVwiXSxlY2hlbG9uTW9iaWxpdHk6ezExOlwiVGVhbS9DcmV3XCIsMTI6XCJTcXVhZFwiLDEzOlwiU2VjdGlvblwiLDE0OlwiUGxhdG9vbi9kZXRhY2htZW50XCIsMTU6XCJDb21wYW55L2JhdHRlcnkvdHJvb3BcIiwxNjpcIkJhdHRhbGlvbi9zcXVhZHJvblwiLDE3OlwiUmVnaW1lbnQvZ3JvdXBcIiwxODpcIkJyaWdhZGVcIiwyMTpcIkRpdmlzaW9uXCIsMjI6XCJDb3Jwcy9NRUZcIiwyMzpcIkFybXlcIiwyNDpcIkFybXkgR3JvdXAvZnJvbnRcIiwyNTpcIlJlZ2lvbi9UaGVhdGVyXCIsMjY6XCJDb21tYW5kXCIsMzE6XCJXaGVlbGVkIGxpbWl0ZWQgY3Jvc3MgY291bnRyeVwiLDMyOlwiV2hlZWxlZCBjcm9zcyBjb3VudHJ5XCIsMzM6XCJUcmFja2VkXCIsMzQ6XCJXaGVlbGVkIGFuZCB0cmFja2VkIGNvbWJpbmF0aW9uXCIsMzU6XCJUb3dlZFwiLDM2OlwiUmFpbFwiLDM3OlwiUGFjayBhbmltYWxzXCIsNDE6XCJPdmVyIHNub3cgKHByaW1lIG1vdmVyKVwiLDQyOlwiU2xlZFwiLDUxOlwiQmFyZ2VcIiw1MjpcIkFtcGhpYmlvdXNcIiw2MTpcIlNob3J0IHRvd2VkIGFycmF5XCIsNjI6XCJMb25nIHRvd2VkIEFycmF5XCIsNzE6XCJMZWFkZXIgSW5kaXZpZHVhbFwiLDcyOlwiRGVwdXR5IEluZGl2aWR1YWxcIn0sYWZmaWxpYXRpb246W1wiSG9zdGlsZVwiLFwiRnJpZW5kXCIsXCJOZXV0cmFsXCIsXCJVbmtub3duXCJdLGRpbWVuc2lvbjpbXCJBaXJcIixcIkdyb3VuZFwiLFwiU2VhXCIsXCJTdWJzdXJmYWNlXCJdfTtyZXR1cm4gSS5jb250ZXh0PXQuY29udGV4dFswXSx0aGlzLnN0eWxlLnN0YW5kYXJkJiYoSS5TVEQyNTI1PVwiQVBQNlwiIT10aGlzLnN0eWxlLnN0YW5kYXJkKSxcIlwiIT10aGlzLnN0eWxlLm1vbm9Db2xvciYmKEkuZmlsbD0hMSksdGhpcy5vcHRpb25zLnNpZGM9U3RyaW5nKHRoaXMub3B0aW9ucy5zaWRjKS5yZXBsYWNlKC9cXCovZyxcIi1cIikucmVwbGFjZSgvIC9nLFwiXCIpLEkubnVtYmVyU0lEQz0haXNOYU4odGhpcy5vcHRpb25zLnNpZGMpLEkubnVtYmVyU0lEQz9cImZ1bmN0aW9uXCI9PXR5cGVvZiBzLl9nZXRNZXRhZGF0YS5udW1iZXI/ST1zLl9nZXRNZXRhZGF0YS5udW1iZXIuY2FsbCh0aGlzLHMsSSx0KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0TWV0YWRhdGEubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIik6XCJmdW5jdGlvblwiPT10eXBlb2Ygcy5fZ2V0TWV0YWRhdGEubGV0dGVyP0k9cy5fZ2V0TWV0YWRhdGEubGV0dGVyLmNhbGwodGhpcyxzLEksdCk6Y29uc29sZS53YXJuKFwibXMuX2dldE1ldGFkYXRhLmxldHRlcigpIGlzIG5vdCBwcmVzZW50LCB5b3Ugd2lsbCBuZWVkIHRvIGxvYWQgZnVuY3Rpb25hbGl0eSBmb3IgbGV0dGVyIGJhc2VkIFNJRENzXCIpLHMuX3N5bWJvbEdlb21ldHJpZXMuaGFzT3duUHJvcGVydHkoSS5kaW1lbnNpb24rSS5hZmZpbGlhdGlvbik/SS5iYXNlR2VvbWV0cnk9cy5fc3ltYm9sR2VvbWV0cmllc1tJLmRpbWVuc2lvbitJLmFmZmlsaWF0aW9uXTpJLmJhc2VHZW9tZXRyeS5iYm94PW5ldyBzLkJCb3gsdGhpcy5zdHlsZS5mcmFtZXx8dGhpcy5zdHlsZS5pY29ufHwoSS5iYXNlR2VvbWV0cnk9cy5fc3ltYm9sR2VvbWV0cmllcy5Qb3NpdGlvbk1hcmtlciksSX0sRy5wcm90b3R5cGUuZ2V0T3B0aW9ucz1mdW5jdGlvbihJKXt2YXIgdCxFPXt9O2Zvcih0IGluIHRoaXMub3B0aW9ucyl0aGlzLm9wdGlvbnMuaGFzT3duUHJvcGVydHkodCkmJihFW3RdPXRoaXMub3B0aW9uc1t0XSk7aWYoSXx8dm9pZCAwPT09SSlmb3IodCBpbiB0aGlzLnN0eWxlKXRoaXMuc3R5bGUuaGFzT3duUHJvcGVydHkodCkmJihFW3RdPXRoaXMuc3R5bGVbdF0pO3JldHVybiBFfSxHLnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMud2lkdGgmJnZvaWQgMCE9PXRoaXMuaGVpZ2h0fHx0aGlzLnVwZGF0ZVN5bWJvbCgpLHt3aWR0aDp0aGlzLndpZHRoLGhlaWdodDp0aGlzLmhlaWdodH19LEcucHJvdG90eXBlLmdldFN0eWxlPWZ1bmN0aW9uKCl7dmFyIEksdD17fTtmb3IoSSBpbiB0aGlzLnN0eWxlKXRoaXMuc3R5bGUuaGFzT3duUHJvcGVydHkoSSkmJih0W0ldPXRoaXMuc3R5bGVbSV0pO3JldHVybiB0fSxHLnByb3RvdHlwZS5pc1ZhbGlkPWZ1bmN0aW9uKEkpe3ZhciB0PS0xPT1KU09OLnN0cmluZ2lmeSh0aGlzLmRyYXdJbnN0cnVjdGlvbnMpLmluZGV4T2YoXCJudWxsXCIpO3JldHVybiBJP3thZmZpbGlhdGlvbjp0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uLGRpbWVuc2lvbjp0aGlzLm1ldGFkYXRhLmRpbWVuc2lvbixkaW1lbnNpb25Vbmtub3duOnRoaXMubWV0YWRhdGEuZGltZW5zaW9uVW5rbm93bixkcmF3SW5zdHJ1Y3Rpb25zOnQsaWNvbjp0aGlzLnZhbGlkSWNvbixtb2JpbGl0eTpudWxsIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fTohKFwidW5kZWZpbmVkXCI9PXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb258fFwidW5kZWZpbmVkXCI9PXRoaXMubWV0YWRhdGEuZGltZW5zaW9uJiYhdGhpcy5tZXRhZGF0YS5jb250cm9sTWVhc3VyZSkmJnQmJnRoaXMudmFsaWRJY29uJiZudWxsIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fSxHLnByb3RvdHlwZS5zZXRPcHRpb25zPWZ1bmN0aW9uKCl7dmFyIEk7Zm9yKEk9MDtJPGFyZ3VtZW50cy5sZW5ndGg7SSsrKXt2YXIgdD1hcmd1bWVudHNbSV07aWYoXCJvYmplY3RcIj09dHlwZW9mIHQpZm9yKHZhciBFIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShFKSYmKFwiU0lEQ1wiIT09RT90aGlzLnN0eWxlLmhhc093blByb3BlcnR5KEUpP3RoaXMuc3R5bGVbRV09dFtFXTp0aGlzLm9wdGlvbnNbRV09dFtFXTp0aGlzLm9wdGlvbnMuc2lkYz10W0VdKTtlbHNlIHRoaXMub3B0aW9ucy5zaWRjPXR9Zm9yKEkgaW4gdGhpcy52YWxpZEljb249ITAsdGhpcy5tZXRhZGF0YT10aGlzLmdldE1ldGFkYXRhKCksdGhpcy5jb2xvcnM9dGhpcy5nZXRDb2xvcnMoKSx0aGlzLmRyYXdJbnN0cnVjdGlvbnM9W10sdGhpcy5iYm94PW5ldyBzLkJCb3gscy5fc3ltYm9sUGFydHMpaWYocy5fc3ltYm9sUGFydHMuaGFzT3duUHJvcGVydHkoSSkpe3ZhciBSPXMuX3N5bWJvbFBhcnRzW0ldLmNhbGwodGhpcyxzKSxlPTA8Ui5wcmUubGVuZ3RofHwwPFIucG9zdC5sZW5ndGg7aWYoUi5wcmUpe2lmKDA8Ui5wcmUubGVuZ3RoKXtmb3IoOzE9PVIucHJlLmxlbmd0aDspUi5wcmU9Ui5wcmVbMF07MCE9Ui5wcmUubGVuZ3RoJiYodGhpcy5kcmF3SW5zdHJ1Y3Rpb25zPVtdLmNvbmNhdChSLnByZSx0aGlzLmRyYXdJbnN0cnVjdGlvbnMpKX1pZigwPFIucG9zdC5sZW5ndGgpe2Zvcig7MT09Ui5wb3N0Lmxlbmd0aCYmKFIucG9zdD1SLnBvc3RbMF0sdm9pZCAwIT09Ui5wb3N0KTspO3ZvaWQgMCE9PVIucG9zdCYmMD09Ui5wb3N0Lmxlbmd0aHx8KHRoaXMuZHJhd0luc3RydWN0aW9ucz10aGlzLmRyYXdJbnN0cnVjdGlvbnMuY29uY2F0KFIucG9zdCkpfVwib2JqZWN0XCI9PXR5cGVvZiBSLmJib3gmJmUmJnRoaXMuYmJveC5tZXJnZShSLmJib3gpfX10aGlzLnN0eWxlLnBhZGRpbmcmJih0aGlzLmJib3gueDEtPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueDIrPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueTEtPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueTIrPXRoaXMuc3R5bGUucGFkZGluZyk7dmFyIEE9e3g6MTAwLHk6MTAwfTtpZih0aGlzLm9jdGFnb25BbmNob3I9e3g6KEEueC10aGlzLmJib3gueDErcGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStwYXJzZUZsb2F0KHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSkqdGhpcy5zdHlsZS5zaXplLzEwMCx5OihBLnktdGhpcy5iYm94LnkxK3BhcnNlRmxvYXQodGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrcGFyc2VGbG9hdCh0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCkpKnRoaXMuc3R5bGUuc2l6ZS8xMDB9LHRoaXMubWV0YWRhdGEuaGVhZHF1YXJ0ZXJzKXt2YXIgQz10aGlzLnN0eWxlLmhxU3RhZmZMZW5ndGh8fHMuX2hxU3RhZmZMZW5ndGg7QT17eDp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LngxLHk6dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC55MitDfX1pZih0aGlzLnN0eWxlLnNxdWFyZSl7dmFyIFQ9TWF0aC5tYXgoQS54LXRoaXMuYmJveC54MSx0aGlzLmJib3gueDItQS54KSxTPU1hdGgubWF4KEEueS10aGlzLmJib3gueTEsdGhpcy5iYm94LnkyLUEueSksTj1NYXRoLm1heChULFMpO3RoaXMuYmJveC54MT1BLngtTix0aGlzLmJib3gueTE9QS55LU4sdGhpcy5iYm94LngyPUEueCtOLHRoaXMuYmJveC55Mj1BLnkrTn1yZXR1cm4gdGhpcy5iYXNlV2lkdGg9dGhpcy5iYm94LndpZHRoKCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLHRoaXMuYmFzZUhlaWdodD10aGlzLmJib3guaGVpZ2h0KCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLHRoaXMud2lkdGg9dGhpcy5iYXNlV2lkdGgqdGhpcy5zdHlsZS5zaXplLzEwMCx0aGlzLmhlaWdodD10aGlzLmJhc2VIZWlnaHQqdGhpcy5zdHlsZS5zaXplLzEwMCx0aGlzLnN5bWJvbEFuY2hvcj17eDooQS54LXRoaXMuYmJveC54MStwYXJzZUZsb2F0KHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgpK3BhcnNlRmxvYXQodGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpKSp0aGlzLnN0eWxlLnNpemUvMTAwLHk6KEEueS10aGlzLmJib3gueTErcGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStwYXJzZUZsb2F0KHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSkqdGhpcy5zdHlsZS5zaXplLzEwMH0scy5fYXV0b1ZhbGlkYXRpb24mJih0aGlzLmlzVmFsaWQoKXx8KGNvbnNvbGUud2FybihcIkVycm9yIGluIHN5bWJvbDogXCIrdGhpcy5vcHRpb25zLnNpZGMpLGNvbnNvbGUud2Fybih0aGlzLmlzVmFsaWQoITApKSkpLHRoaXN9LEcucHJvdG90eXBlLnRvRGF0YVVSTD1mdW5jdGlvbigpe3JldHVyblwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxcIit3aW5kb3cuYnRvYSh0aGlzLmFzU1ZHKCkpfSxzLlN5bWJvbD1HO3ZhciBMPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbaV0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUC0tLS0tLS1cIl09W10sSVtcIlMtUC1TLS0tLS1cIl09W0VbXCJTUC5JLkZGLlNBVEVMTElURVwiXV0sSVtcIlMtUC1WLS0tLS1cIl09W0VbXCJTUC5JLkZGLkNSRVdFRCBTUEFDRSBWRUhJQ0xFXCJdXSxJW1wiUy1QLVQtLS0tLVwiXT1bRVtcIlNQLkkuRkYuU1BBQ0UgU1RBVElPTlwiXV0sSVtcIlMtUC1MLS0tLS1cIl09W0VbXCJTUC5JLlNQQUNFIExBVU5DSCBWRUhJQ0xFXCJdXX19O2Z1bmN0aW9uIFAoSSx0LEUsUixlLEEpe3ZhciBDPXQuZnJhbWUsVD10LmFmZmlsaWF0aW9ufHxcIkZyaWVuZFwiLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbVF0sTz1FLmljb25GaWxsQ29sb3JbVF0sRz1FLmJsYWNrW1RdLG89e307Zm9yKHZhciBNIGluIG9bXCJBUi5JLk1JTElUQVJZXCJdPWEoXCJNSUxcIiksb1tcIkFSLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxvW1wiQVIuSS5DSVZJTElBTlwiXS5maWxsPVJ8fFM/TzohQyYmTyxvW1wiQVIuSS5DSVZJTElBTlwiXS5zdHJva2U9RyxvW1wiQVIuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLG9bXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxvW1wiQVIuSS5DSVZJTElBTiBGSVhFRCBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxvW1wiQVIuSS5GRi5DSVZJTElBTiBGSVhFRCBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGQ6XCJNNjIsODAgbDMwLDAgMCwtMTAgMTYsMCAwLDEwIDMwLDAgMCwxNSAtMzAsMCAwLDI1IDEwLDAgMCw1IC0zNiwwIDAsLTUgMTAsMCAwLC0yNSAtMzAsMCBaIE05NSw3MCBsMCwtNSAxMCwwIDAsNVwiLGZpbGw6ISFSJiZPfSxvW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTYwLDg1IGw0MCwxNSA0MCwtMTUgMCwzMCAtNDAsLTE1IC00MCwxNSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNNjAsODUgbDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0sb1tcIkFSLkkuRkYuQ0lWSUxJQU4gUk9UQVJZIFdJTkdcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGQ6XCJNODAsNzAgbDEwLDEwIE0xMjAsMTEwIGwtMTAsLTEwIE04MCwxMTAgbDEwLC0xMCBNMTIwLDcwIGwtMTAsMTAgTTEwMCwxMTUgbDAsMjAgTTk1LDEzNSBsMTAsMFwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGZpbGw6ISFSJiZPLGQ6XCJtIDExMyw5MCBjIC0wLjMsOC44IC0xLjksMjAuMyAtMTAuOCwyNC42IC03LjcsMiAtMTIuMywtNy4xIC0xMy44LC0xMy4zIC0yLjYsLTExLjUgLTIuMywtMjYgNi45LC0zNC42IDYuMCwtNC45IDEzLjEsMS45IDE0LjksNy44IDIsNC45IDIuOCwxMC4yIDIuOCwxNS41IHpcIn1dLG9bXCJBUi5JLk1JTElUQVJZIEJBTExPT05cIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5Ojk1LHI6MTV9LHt0eXBlOlwicGF0aFwiLGQ6XCJNOTUsMTEwIGwwLDEwIDEwLDAgMCwtMTAgelwifV0sb1tcIkFSLkkuRkYuTUlMSVRBUlkgQkFMTE9PTlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMTUgbDIwLDAgMCwyMCAtMjAsMCB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjkwLHI6MzV9XSxvW1wiQVIuSS5DSVZJTElBTiBCQUxMT09OXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGN4OjEwMCxjeTo5NSxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiEoIVImJiFTKSYmTyxzdHJva2U6RyxkOlwiTTk1LDExMCBsMCwxMCAxMCwwIDAsLTEwIHpcIn1dLG9bXCJBUi5JLkZGLkNJVklMSUFOIEJBTExPT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNOTAsMTI1IGwyMCwwIDAsMTAgLTIwLDAgelwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGN4OjEwMCxjeTo5MCxyOjM1fV0sb1tcIkFSLkkuTUlMSVRBUlkgQUlSU0hJUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTAsMTEwIDEwLDEwIDEwLDAgLTUsLTE1IG0gMCwtMTAgNSwtMTUgLTEwLDAgLTEwLDEwIG0gMTcuMiwxMCBjIDAsNi4xIC0xMi4yLDExLjEgLTI3LjIsMTEuMSAtMTUsMCAtMjcuMiwtNSAtMjcuMiwtMTEuMSAwLC02LjEgMTIuMiwtMTEuMSAyNy4yLC0xMS4xIDE1LDAgMjcuMiw1IDI3LjIsMTEuMSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIEFJUlNISVBcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohKCFSJiYhUykmJk8sc3Ryb2tlOkcsZDpcIm0gMTEwLDExMCAxMCwxMCAxMCwwIC01LC0xNSBtIDAsLTEwIDUsLTE1IC0xMCwwIC0xMCwxMCBtIDE3LjIsMTAgYyAwLDYuMSAtMTIuMiwxMS4xIC0yNy4yLDExLjEgLTE1LDAgLTI3LjIsLTUgLTI3LjIsLTExLjEgMCwtNi4xIDEyLjIsLTExLjEgMjcuMiwtMTEuMSAxNSwwIDI3LjIsNSAyNy4yLDExLjEgelwifSxvW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2MCw4NCA0MCwyMCA0MCwtMjAgMCw4IC00MCwyNSAtNDAsLTI1IHpcIixzdHJva2U6ITF9LG9bXCJBUi5JLkFJUiBERUNPWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTY1LDk1IGwxNSwtMTUgMCwzMCBaIE05Mi41LDk1IGwxNSwtMTUgMCwzMCBaIE0xMjAsOTUgbDE1LC0xNSAwLDMwIFogTTY1LDEyMCBsNzAsMCAwLC01IC03MCwwIFpcIn0sb1tcIlNVLklDLkFJUiBERUNPWSBEU3ltYm9sXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDg1IDgxIEwgNjUgOTggTCA4NSAxMTkgTCA4NSA4MSB6IE0gMTEwIDgxIEwgOTAgOTggTCAxMTAgMTE5IEwgMTEwIDgxIHogTSAxMzUgODEgTCAxMTUgOTggTCAxMzUgMTE5IEwgMTM1IDgxIHpcIn0sb1tcIkFSLkkuTUVESUNBTCBFVkFDVUFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTMsODMgbDE0LDAgMCwxMCAxMCwwIDAsMTQgLTEwLDAgMCwxMCAtMTQsMCAwLC0xMCAtMTAsMCAwLC0xNCAxMCwwIFpcIn0sb1tcIkFSLkkuQVRUQUNLL1NUUklLRVwiXT1hKFwiQVwiKSxvW1wiQVIuSS5CT01CRVJcIl09YShcIkJcIiksb1tcIkFSLkkuQ0FSR09cIl09YShcIkNcIiksb1tcIkFSLkkuRVNDT1JUXCJdPWEoXCJFXCIpLG9bXCJBUi5JLkZJR0hURVJcIl09YShcIkZcIiksb1tcIkFSLkkuRklHSFRFUiBJTlRFUkNFUFRPUlwiXT1hKFwiSVwiKSxvW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl09YShcIkpcIiksb1tcIkFSLkkuVEFOS0VSXCJdPWEoXCJLXCIpLG9bXCJBUi5JLlBBVFJPTFwiXT1hKFwiUFwiKSxvW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXT1hKFwiUlwiKSxvW1wiQVIuSS4yNTI1IFBIT1RPR1JBUEhJQ1wiXT1hKFwiWFwiKSxvW1wiQVIuSS5UUkFJTkVSXCJdPWEoXCJUXCIpLG9bXCJBUi5JLlVUSUxJVFlcIl09YShcIlVcIiksb1tcIkFSLkkuVlNUT0xcIl09YShSJiYhUz9cIkxcIjpcIlZcIiksb1tcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdPWEoUiYmIVM/XCJEXCI6XCJBQ1BcIiksb1tcIkFSLkkuQUlSQk9STkUgRUFSTFkgV0FSTklOR1wiXT1hKFImJiFTP1wiV1wiOlwiQUVXXCIpLG9bXCJBUi5JLkFOVElTVVJGQUNFIFdBUkZBUkVcIl09YShSJiYhUz9cIk5cIjpcIkFTVVdcIiksb1tcIkFSLkkuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdPWEoUiYmIVM/XCJTXCI6XCJBU1dcIiksb1tcIkFSLkkuQ09NTVVOSUNBVElPTlNcIl09YShSJiYhUz9cIllcIjpcIkNPTVwiKSxvW1wiQVIuSS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl09YShcIkNTQVJcIiksb1tcIkFSLkkuRUxFQ1RST05JQyBTVVBQT1JUIE1FQVNVUkVTXCJdPWEoUj9cIlpcIjpcIkVTTVwiKSxvW1wiQVIuSS5HT1ZFUk5NRU5UXCJdPWEoXCJHT1ZcIiksb1tcIkFSLkkuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl09YShcIk1DTVwiKSxvW1wiQVIuSS5QRVJTT05ORUwgUkVDT1ZFUllcIl09YShSP1wiSFwiOlwiUFJPXCIpLG9bXCJBUi5JLlBBU1NFTkdFUlwiXT1hKFwiUFhcIiksb1tcIkFSLkkuU0VBUkNIIEFORCBSRVNDVUVcIl09YShcIlNBUlwiKSxvW1wiQVIuSS5TVVBSRVNTSU9OIE9GIEVORU1ZIEFJUiBERUZFTkNFXCJdPWEoXCJTRUFEXCIpLG9bXCJBUi5JLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl09YShcIlNPRlwiKSxvW1wiQVIuSS5VTFRSQSBMSUdIVFwiXT1hKFwiVUxcIiksb1tcIkFSLkkuVklQXCJdPWEoXCJWSVBcIiksb1tcIkFSLkkuRkYuTUlMSVRBUlkgRklYRUQgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OS4yLDU4LjIgYyAtMywwLjggLTIuNSw1LjggLTIuNSw1LjggbCAtMC4zLDE2IC0zNy4yLDM2LjUgMS4zLDQuNiBMIDk2LjcsOTYuNiA5NywxMjguNiBsIC04LjUsOC4yIDAsNC42IDkuMywtNC4yIGMgMC43LDAuNiAxLjgsMS43IDEuOCwxLjcgMCwwIDEuMiwtMS4xIDEuOSwtMS43IGwgOS4zLDQuMiAwLC00LjYgLTguNSwtOC4yIDAuMywtMzIgMzYuMiwyNC41IDEuMywtNC42IC0zNy4yLC0zNi41IC0wLjMsLTE2IGMgMCwwIDAuNSwtNSAtMi41LC01LjggLTAuNCwtMC4xIC0wLjcsLTAuMSAtMS4xLDAgelwiLHN0cm9rZTohMX0sb1tcIkFSLkkuRklYRUQtV0lORyBEU3ltYm9sXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIk0gOTkuNCA4MC44IEMgOTcuOSA4MS4xIDk4LjEgODMuNCA5OC4xIDgzLjQgTCA5OCA5MC43IEwgNzguNiAxMDcuNCBMIDc5LjMgMTA5LjQgTCA5OC4xIDk4LjMgTCA5OC4zIDExMi45IEwgOTMuOSAxMTYuNiBMIDkzLjkgMTE4LjcgTCA5OC44IDExNi44IEMgOTkuMSAxMTcgOTkuNyAxMTcuNSA5OS43IDExNy41IEMgOTkuNyAxMTcuNSAxMDAuNCAxMTcgMTAwLjcgMTE2LjggTCAxMDUuNiAxMTguNyBMIDEwNS42IDExNi42IEwgMTAxLjEgMTEyLjkgTCAxMDEuMyA5OC4zIEwgMTIwLjIgMTA5LjQgTCAxMjAuOSAxMDcuNCBMIDEwMS41IDkwLjcgTCAxMDEuMyA4My40IEMgMTAxLjMgODMuNCAxMDEuNiA4MS4xIDEwMCA4MC44IEMgOTkuOCA4MC44IDk5LjYgODAuOCA5OS40IDgwLjggelwiOlwiTTEwMCwxMDAgTDEzMCw4OCBjMTUsMCAxNSwyNCAwLDI0IEwxMDAsMTAwIDcwLDExMiBjLTE1LDAgLTE1LC0yNCAwLC0yNCBaXCJ9LG9bXCJBUi5JLkNJVklMSUFOIEZJWEVELVdJTkcgRFN5bWJvbFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEoIVImJiFTKSYmTyxzdHJva2U6RyxkOlI/XCJtIDc1LjEsOTAuMyAxOS42LDAgMCwtNi41IDEwLjUsMCAwLDYuNSAxOS42LDAgMCw5LjcgLTE5LjYsMCAwLDE2LjIgNi41LDAgMCwzLjIgLTIzLjYsMCAwLC0zLjIgNi41LDAgMCwtMTYuMiAtMTkuNiwwIHogbSAyMS42LC02LjUgMCwtMy4yIDYuNSwwIDAsMy4yXCI6XCJNMTAwLDEwMCBMMTMwLDg4IGMxNSwwIDE1LDI0IDAsMjQgTDEwMCwxMDAgNzAsMTEyIGMtMTUsMCAtMTUsLTI0IDAsLTI0IFpcIn0sb1tcIkFSLkkuRklHSFRFUi9CT01CRVJcIl09YShcIkYvQlwiKSxvW1wiQVIuSS5FTEVDVFJPTklDIFNVUFBPUlRcIl09YShSP1wiRVNcIjpcIkVTTVwiKSxvW1wiQVIuSS5QRVJTT05ORUwgUkVDT1ZFUlkgRFN5bWJvbFwiXT1hKFwiUFJcIiksb1tcIkFSLkkuUEhPVE9HUkFQSElDIFJFQ09OTkFJU1NBTkNFXCJdPWEoXCJQSFwiKSxvW1wiQVIuSS5FTEVDVFJPTklDIEFUVEFDSyAoRUEpXCJdPWEoXCJFQVwiKSxvW1wiQVIuSS5WRVJUSUNBTC1UQUtFT0ZGIFVBViAoVlQtVUFWKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCw4NSAzMCwxMCAzMCwtMTAgMCwtNSAtMzAsNSAtMzAsLTUgeiBtIC0xMCw1IDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0sb1tcIkFSLkkuVEVUSEVSRUQgTElHSFRFUiBUSEFOIEFJUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA3NSwxMTAgODUsOTUgbSAtNSwyMCBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgeiBtIDE1LC02IDAsMTEgMTAsMCAwLC0xMSBtIDEwLC0xNCBjIDAsOC4zIC02LjcsMTUgLTE1LDE1IC04LjMsMCAtMTUsLTYuNyAtMTUsLTE1IDAsLTguMyA2LjcsLTE1IDE1LC0xNSA4LjMsMCAxNSw2LjcgMTUsMTUgelwifSxvW1wiQVIuSS5DSVZJTElBTiBURVRIRVJFRCBMSUdIVEVSIFRIQU4gQUlSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNIDc1LDExMCA4NSw5NSBtIC01LDIwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gMTUsLTYgMCwxMSAxMCwwIDAsLTExIG0gMTAsLTE0IGMgMCw4LjMgLTYuNywxNSAtMTUsMTUgLTguMywwIC0xNSwtNi43IC0xNSwtMTUgMCwtOC4zIDYuNywtMTUgMTUsLTE1IDguMywwIDE1LDYuNyAxNSwxNSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIFVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwifSxvW1wiQVIuSS5XRUFQT05cIl09YShcIldQTlwiKSxvW1wiQVIuSS5VTkRFUldBVEVSIERFQ09ZIERTeW1ib2xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gODUgODEgTCA2NSA5OCBMIDg1IDExOSBMIDg1IDgxIHogTSAxMTAgODEgTCA5MCA5OCBMIDExMCAxMTkgTCAxMTAgODEgeiBNIDEzNSA4MSBMIDExNSA5OCBMIDEzNSAxMTkgTCAxMzUgODEgelwifSxvW1wiQVIuSS5CT01CXCJdPWEoXCJCT01CXCIpLG9bXCJBUi5JLk1BTlVBTCBUUkFDS1wiXT1hKFwiTUFOXCIpLG9bXCJBSVIuTTEuQVRUQUNLXCJdPWwoXCJBXCIpLG9bXCJBSVIuTTEuQk9NQkVSXCJdPWwoXCJCXCIpLG9bXCJBSVIuTTEuQ0FSR09cIl09bChcIkNcIiksb1tcIkFJUi5NMS5GSUdIVEVSXCJdPWwoXCJGXCIpLG9bXCJBSVIuTTEuSU5URVJDRVBUT1JcIl09bChcIklcIiksb1tcIkFJUi5NMS5UQU5LRVJcIl09bChcIktcIiksb1tcIkFJUi5NMS5VVElMSVRZXCJdPWwoXCJVXCIpLG9bXCJBSVIuTTEuVlNUT0xcIl09bChSJiYhUz9cIkxcIjpcIlZcIiksb1tcIkFJUi5NMS5QQVNTRU5HRVJcIl09bChcIlBYXCIpLG9bXCJBSVIuTTEuVUxUUkEgTElHSFRcIl09bChcIlVMXCIpLG9bXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdPWwoUiYmIVM/XCJEXCI6XCJBQ1BcIiksb1tcIkFJUi5NMS5BTlRJU1VSRkFDRSBXQVJGQVJFXCJdPWwoUiYmIVM/XCJOXCI6XCJBU1VXXCIpLG9bXCJBSVIuTTEuQUlSQk9STkUgRUFSTFkgV0FSTklOR1wiXT1sKFImJiFTP1wiV1wiOlwiQUVXXCIpLG9bXCJBSVIuTTEuR09WRVJOTUVOVFwiXT1sKFwiR09WXCIpLG9bXCJBSVIuTTEuTUVERVZBQ1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05NS41LDgwIGw5LDAgMCwtOSA5LDAgMCwtOSAtOSwwIDAsLTkgLTksMCAwLDkgLTksMCAwLDkgOSwwIFpcIn0sb1tcIkFJUi5NMS5FU0NPUlRcIl09bChcIkVcIiksb1tcIkFJUi5NMS5JTlRFTlNJVkUgQ0FSRVwiXT1sKFwiSUNcIiksb1tcIkFJUi5NMS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl09bChcIkpcIiksb1tcIkFJUi5NMS5QQVRST0xcIl09bChcIlBcIiksb1tcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXT1sKFwiUlwiKSxvW1wiQUlSLk0xLlRSQUlORVJcIl09bChcIlRcIiksb1tcIkFJUi5NMS5QSE9UT0dSQVBISUNcIl09bChSJiYhUz9cIlhcIjpcIlBIXCIpLG9bXCJBSVIuTTEuUEVSU09OTkVMIFJFQ09WRVJZXCJdPWwoXCJQUlwiKSxvW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFImJiFTP1wiU1wiOlwiQVNXXCIpLG9bXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl09bChSJiYhUz9cIllcIjpcIkNPTVwiKSxvW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VSVkVJTExBTkNFIE1FQVNVUkVTXCJdPWwoUj9cIlpcIjpcIkVTTVwiKSxvW1wiQUlSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdPWwoXCJNQ01cIiksb1tcIkFJUi5NMS5TRUFSQ0ggQU5EIFJFU0NVRVwiXT1sKFwiU0FSXCIpLG9bXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXT1sKFwiU09GXCIpLG9bXCJBSVIuTTEuU1VSRkFDRSBXQVJGQVJFXCJdPWwoXCJTVVdcIiksb1tcIkFJUi5NMS5WSVBcIl09bChcIlZJUFwiKSxvW1wiQUlSLk0xLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXT1sKFImJiFTP1wiSFwiOlwiQ1NBUlwiKSxvW1wiQUlSLk0xLlNVUFJFU1NJT04gT0YgRU5FTVkgQUlSIERFRkVOQ0VcIl09bChcIlNFQURcIiksb1tcIkFJUi5NMS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODAsNjUgMjAsMTMgMjAsLTEzIDAsLTUgLTIwLDEwIC0yMCwtMTAgelwifSxvW1wiQUlSLk0xLkJPT00tT05MWVwiXT1sKFwiQlwiKSxvW1wiQUlSLk0xLkRST1VHRS1PTkxZXCJdPWwoXCJEXCIpLG9bXCJBSVIuTTEuRUxFQ1RST05JQyBTVVBQT1JUIChFUylcIl09bChSP1wiRVNcIjpcIkVTTVwiKSxvW1wiQUlSLk0xLkhJSkFDS0VSXCJdPWwoXCJISlwiKSxvW1wiQUlSLk0xLkNZQkVSU1BBQ0VcIl09bChcIkNZQlwiKSxvW1wiQUlSLk0xLkZJR0hURVIvQk9NQkVSXCJdPWwoXCJGL0JcIiksb1tcIkFJUi5NMS5FTEVDVFJPTklDIEFUVEFDSyAoRUEpXCJdPWwoXCJFQVwiKSxvW1wiQUlSLk0xLk1VTFRJTUlTU0lPTlwiXT1sKFwiTU1cIiksb1tcIkFJUi5NMS5ISUpBQ0tJTkdcIl09bChcIkhcIiksb1tcIkFJUi5NMS5BU1cgSEVMTy1MQU1QU1wiXT1sKFwiTFBcIiksb1tcIkFJUi5NMS5BU1cgSEVMTyAtIFNILTYwUlwiXT1sKFwiNjBSXCIpLG9bXCJBSVIuTTIuSEVBVllcIl09cihcIkhcIiksb1tcIkFJUi5NMi5NRURJVU1cIl09cihcIk1cIiksb1tcIkFJUi5NMi5MSUdIVFwiXT1yKFwiTFwiKSxvW1wiQUlSLk0yLkJPT00tT05MWVwiXT1yKFwiQlwiKSxvW1wiQUlSLk0yLkRST1VHRS1PTkxZXCJdPXIoXCJEXCIpLG9bXCJBSVIuTTIuQk9PTSBBTkQgRFJPVUdFXCJdPXIoXCJCL0RcIiksb1tcIkFJUi5NMi5DTE9TRSBSQU5HRVwiXT1yKFwiQ1JcIiksb1tcIkFJUi5NMi5TSE9SVCBSQU5HRVwiXT1yKFwiU1JcIiksb1tcIkFJUi5NMi5NRURJVU0gUkFOR0VcIl09cihcIk1SXCIpLG9bXCJBSVIuTTIuTE9ORyBSQU5HRVwiXT1yKFwiTFJcIiksb1tcIkFJUi5NMi5QSE9UT0dSQVBISUNcIl09cihcIlBcIiksb1tcIkFJUi5NMi5DWUJFUlNQQUNFXCJdPXIoXCJDWUJcIiksb1tcIkFJUi5NMi5ET1dOTElOS0VEXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjE0MCxmb250c2l6ZToyNSx0ZXh0OlwiRExcIn0sb1tcIkFJUi5NSVNTSUxFLklDT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMzUgbDAsLTEwIDUsLTUgMCwtNTUgNSwtNSA1LDUgMCw1NSA1LDUgMCwxMCAtMTAsLTEwIHpcIn0sKFJ8fFMpJiYob1tcIkFJUi5NSVNTSUxFLklDT05cIl0uZmlsbD1DP0UuZmlsbENvbG9yLlVua25vd246RS5pY29uRmlsbENvbG9yLlVua25vd24pLG9bXCJBSVIuTUlTU0lMRS5JQy5BTlRJQkFMTElTVElDIE1JU1NJTEVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBQk1cIn0sb1tcIkFJUi5NSVNTSUxFLklDLkJPTUJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJCT01CXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkFcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlVcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMS5TUEFDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUFwifV0sb1tcIkFJUi5NSVNTSUxFLk0xLkFOVEktQkFMTElTVElDXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJBXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMS5DUlVJU0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkNcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLkxBTkRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkxcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5BSVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJBXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5TVVJGQUNFXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSxvW1wiQUlSLk1JU1NJTEUuTTIuU1VCU1VSRkFDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJVXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuU1BBQ0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUFwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLkxBVU5DSEVEXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiTFwifSxvW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0sb1tcIkFJUi5NSVNTSUxFLk0yLlBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gMiAoU00tMilcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiMlwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSA2IChTTS02KVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCI2XCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuRVZPTFZFRCBTRUEgU1BBUlJPVyBNSVNTSUxFIChFU1NNKVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuUk9MTElORyBBSVJGUkFNRSBNSVNTSUxFIChSQU0pXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiUlwifSxvW1wiQUlSLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUlwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLk1FRElVTSBSQU5HRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuSU5URVJNRURJQVRFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiTFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMi5JTlRFUkNPTlRJTkVOVEFMXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLG8pby5oYXNPd25Qcm9wZXJ0eShNKSYmKEkuaGFzT3duUHJvcGVydHkoTSkmJmNvbnNvbGUud2FybihcIk92ZXJyaWRlIG9mOiBcIitNKSxuLmNhbGwodGhpcyxvW01dLE4pLElbTV09b1tNXSl9dmFyIHk9e3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltQXSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiUy1BLS0tLS0tLVwiXT1bXSxJW1wiUy1BLU0tLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUllcIl1dLElbXCJTLUEtTUYtLS0tXCJdPVtFW1wiQVIuSS5GRi5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdXSxJW1wiUy1BLU1GQi0tLVwiXT1bRVtcIkFSLkkuQk9NQkVSXCJdXSxJW1wiUy1BLU1GRi0tLVwiXT1bRVtcIkFSLkkuRklHSFRFUlwiXV0sSVtcIlMtQS1NRkZJLS1cIl09W0VbXCJBUi5JLkZJR0hURVIgSU5URVJDRVBUT1JcIl1dLElbXCJTLUEtTUZULS0tXCJdPVtFW1wiQVIuSS5UUkFJTkVSXCJdXSxJW1wiUy1BLU1GQS0tLVwiXT1bRVtcIkFSLkkuQVRUQUNLL1NUUklLRVwiXV0sSVtcIlMtQS1NRkwtLS1cIl09W0VbXCJBUi5JLlZTVE9MXCJdXSxJW1wiUy1BLU1GSy0tLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdXSxJW1wiUy1BLU1GS0ItLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdLEVbXCJBSVIuTTEuQk9PTS1PTkxZXCJdXSxJW1wiUy1BLU1GS0QtLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdLEVbXCJBSVIuTTEuRFJPVUdFLU9OTFlcIl1dLElbXCJTLUEtTUZDLS0tXCJdPVtFW1wiQVIuSS5DQVJHT1wiXV0sSVtcIlMtQS1NRkNMLS1cIl09W0VbXCJBUi5JLkNBUkdPXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUEtTUZDTS0tXCJdPVtFW1wiQVIuSS5DQVJHT1wiXSxFW1wiQUlSLk0yLk1FRElVTVwiXV0sSVtcIlMtQS1NRkNILS1cIl09W0VbXCJBUi5JLkNBUkdPXCJdLEVbXCJBSVIuTTIuSEVBVllcIl1dLElbXCJTLUEtTUZKLS0tXCJdPVtFW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZPLS0tXCJdPVtFW1wiQVIuSS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbXCJTLUEtTUZSLS0tXCJdPVtFW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXV0sSVtcIlMtQS1NRlJXLS1cIl09W0VbXCJBUi5JLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbXCJTLUEtTUZSWi0tXCJdPVtFW1wiQVIuSS5FTEVDVFJPTklDIFNVUFBPUlQgTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZSWC0tXCJdPVI/W0VbXCJBUi5JLjI1MjUgUEhPVE9HUkFQSElDXCJdXTpbRVtcIkFSLkkuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkFJUi5NMi5QSE9UT0dSQVBISUNcIl1dLElbXCJTLUEtTUZQLS0tXCJdPVtFW1wiQVIuSS5QQVRST0xcIl1dLElbXCJTLUEtTUZQTi0tXCJdPVtFW1wiQVIuSS5BTlRJU1VSRkFDRSBXQVJGQVJFXCJdXSxJW1wiUy1BLU1GUE0tLVwiXT1bRVtcIkFSLkkuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZVLS0tXCJdPVtFW1wiQVIuSS5VVElMSVRZXCJdXSxJW1wiUy1BLU1GVUwtLVwiXT1bRVtcIkFSLkkuVVRJTElUWVwiXSxFW1wiQUlSLk0yLkxJR0hUXCJdXSxJW1wiUy1BLU1GVU0tLVwiXT1bRVtcIkFSLkkuVVRJTElUWVwiXSxFW1wiQUlSLk0yLk1FRElVTVwiXV0sSVtcIlMtQS1NRlVILS1cIl09W0VbXCJBUi5JLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtQS1NRlktLS1cIl09W0VbXCJBUi5JLkNPTU1VTklDQVRJT05TXCJdXSxJW1wiUy1BLU1GSC0tLVwiXT1bRVtcIkFSLkkuUEVSU09OTkVMIFJFQ09WRVJZXCJdXSxJW1wiUy1BLU1GRC0tLVwiXT1bRVtcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJW1wiUy1BLU1GUS0tLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUEtTUZRQS0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFUVEFDS1wiXV0sSVtcIlMtQS1NRlFCLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQk9NQkVSXCJdXSxJW1wiUy1BLU1GUUMtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5DQVJHT1wiXV0sSVtcIlMtQS1NRlFELS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJW1wiUy1BLU1GUUYtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5GSUdIVEVSXCJdXSxJW1wiUy1BLU1GUUgtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLElbXCJTLUEtTUZRSi0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sSVtcIlMtQS1NRlFLLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVEFOS0VSXCJdXSxJW1wiUy1BLU1GUUwtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5WU1RPTFwiXV0sSVtcIlMtQS1NRlFNLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtQS1NRlFJLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZRTi0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFOVElTVVJGQUNFIFdBUkZBUkVcIl1dLElbXCJTLUEtTUZRUC0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLlBBVFJPTFwiXV0sSVtcIlMtQS1NRlFSLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUEtTUZRUlctXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbXCJTLUEtTUZRUlotXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VSVkVJTExBTkNFIE1FQVNVUkVTXCJdXSxJW1wiUy1BLU1GUVJYLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5QSE9UT0dSQVBISUNcIl1dLElbXCJTLUEtTUZRUy0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtQS1NRlFULS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVFJBSU5FUlwiXV0sSVtcIlMtQS1NRlFVLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVVRJTElUWVwiXV0sSVtcIlMtQS1NRlFZLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl1dLElbXCJTLUEtTUZRTy0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLk1FREVWQUNcIl1dLElbXCJTLUEtTUZTLS0tXCJdPVtFW1wiQVIuSS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbXCJTLUEtTUZNLS0tXCJdPVtFW1wiQVIuSS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1BLU1ILS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl1dLElbXCJTLUEtTUhBLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkFUVEFDS1wiXV0sSVtcIlMtQS1NSFMtLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1BLU1IVS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5VVElMSVRZXCJdXSxJW1wiUy1BLU1IVUwtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5VVElMSVRZXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUEtTUhVTS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5NRURJVU1cIl1dLElbXCJTLUEtTUhVSC0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtQS1NSEktLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUhILS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXV0sSVtcIlMtQS1NSFItLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUEtTUhRLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdXSxJW1wiUy1BLU1IQy0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5DQVJHT1wiXV0sSVtcIlMtQS1NSENMLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQ0FSR09cIl0sRVtcIkFJUi5NMi5MSUdIVFwiXV0sSVtcIlMtQS1NSENNLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQ0FSR09cIl0sRVtcIkFJUi5NMi5NRURJVU1cIl1dLElbXCJTLUEtTUhDSC0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkNBUkdPXCJdLEVbXCJBSVIuTTIuSEVBVllcIl1dLElbXCJTLUEtTUhULS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlRSQUlORVJcIl1dLElbXCJTLUEtTUhPLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLk1FREVWQUNcIl1dLElbXCJTLUEtTUhNLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUEtTUhELS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkFJUkJPUk5FIENPTU1BTkQgUE9TVFwiXV0sSVtcIlMtQS1NSEstLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuVEFOS0VSXCJdXSxJW1wiUy1BLU1ISi0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbXCJTLUEtTUwtLS0tXCJdPVtFW1wiQVIuSS5GRi5NSUxJVEFSWSBCQUxMT09OXCJdXSxJW1wiUy1BLU1WLS0tLVwiXT1bRVtcIkFSLkkuVklQXCJdXSxJW1wiUy1BLU1FLS0tLVwiXT1bRVtcIkFSLkkuRVNDT1JUXCJdXSxJW1wiUy1BLVctLS0tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl1dLElbXCJTLUEtV00tLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUNPTlwiXV0sSVtcIlMtQS1XTVMtLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5MQVVOQ0hFRFwiXV0sSVtcIlMtQS1XTVNTLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5TVVJGQUNFXCJdXSxJW1wiUy1BLVdNU0EtLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkFJUlwiXV0sSVtcIlMtQS1XTVNVLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5TVUJTVVJGQUNFXCJdXSxJW1wiUy1BLVdNU0ItLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLklDLkFOVElCQUxMSVNUSUMgTUlTU0lMRVwiXV0sSVtcIlMtQS1XTUEtLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkxBVU5DSEVEXCJdXSxJW1wiUy1BLVdNQVMtLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLkFJUlwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuU1VSRkFDRVwiXV0sSVtcIlMtQS1XTUFBLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkFJUlwiXV0sSVtcIlMtQS1XTUFQLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLlNQQUNFXCJdXSxJW1wiUy1BLVdNVS0tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLlNVUkZBQ0VcIl1dLElbXCJTLUEtV01MLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUNPTlwiXSxFW1wiQUlSLk1JU1NJTEUuTTEuTEFORFwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuQUlSXCJdXSxJW1wiUy1BLVdNQ00tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLkNSVUlTRVwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXV0sSVtcIlMtQS1XTUItLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5CQUxMSVNUSUNcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLk1JU1NJTEVcIl1dLElbXCJTLUEtV0ItLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUMuQk9NQlwiXV0sSVtcIlMtQS1XRC0tLS1cIl09W0VbXCJBUi5JLkFJUiBERUNPWVwiXV0sSVtcIlMtQS1DLS0tLS1cIl09W0VbXCJBUi5JLkNJVklMSUFOXCJdXSxJW1wiUy1BLUNGLS0tLVwiXT1bRVtcIkFSLkkuRkYuQ0lWSUxJQU4gRklYRUQgV0lOR1wiXV0sSVtcIlMtQS1DSC0tLS1cIl09W0VbXCJBUi5JLkZGLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdXSxJW1wiUy1BLUNMLS0tLVwiXT1bRVtcIkFSLkkuRkYuQ0lWSUxJQU4gQkFMTE9PTlwiXV19fTtmdW5jdGlvbiBjKEksdCxFLFIsZSxBKXt2YXIgQz10LmZyYW1lLFQ9dC5hZmZpbGlhdGlvbnx8XCJGcmllbmRcIixTPXQuYmFzZUdlb21ldHJ5LE49dC5udW1iZXJTSURDLE89RS5pY29uQ29sb3JbVF0sRz1FLmljb25GaWxsQ29sb3JbVF0sbz1FLmJsYWNrW1RdLE09RS53aGl0ZVtUXSxpPXt9O2Zvcih2YXIgTCBpbiBpW1wiR1IuSUMuTUlMSVRBUllcIl09YShcIk1JTFwiKSxpW1wiR1IuSS5HT1ZFUk5NRU5UXCJdPWEoXCJHT1ZcIiksaVtcIkdSLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTEwIC0xMCwtMTAgMTAsLTEwIDAsLTEwIDUwLDAgMCwxMCAxMCwxMCAtMTAsMTAgelwifSxpW1wiR1IuSUMuRkVSUllcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9HOiFDJiZHLGQ6XCJtIDc1LDEwMCAwLC0zNSA1MCwwIDAsMzUgMjAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJGRVwiOlwiRlwifV0saVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdPWEoXCJBRE1cIiksaVtcIkdSLklDLk1BTlVBTCBUUkFDS1wiXT1hKFwiTUFOXCIpLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBDSEFQQVJSQUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsODAgMzAsMCBjIDUuNTQsMCAxMCw0LjQ2IDEwLDEwIGwgMCw1IGMgMCw1LjU0IC00LjQ2LDEwIC0xMCwxMCBsIC0zMCwwIGMgLTUuNTQsMCAtMTAsLTQuNDYgLTEwLC0xMCBsIDAsLTUgYyAwLC01LjU0IDQuNDYsLTEwIDEwLC0xMCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMSxmb250c2l6ZToyMCx0ZXh0OlwiQ1wifV0saVtcIkdSLklDLkFJUiBERUZFTlNFIENPTVBPU0lURVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTg1LDEyMCBDODUsMTEwIDExNSwxMTAgMTE1LDEyMCBNOTAsMTE1IEw5MCw5MCBDOTAsODAgMTEwLDgwIDExMCw5MCBMMTEwLDExNSBNMTAwLDExMiBsMCwtMzBcIixmaWxsOiExfSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQURcIl09YShcIkhNRFwiKSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgSEFXS1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMDEsZm9udHNpemU6MjAsdGV4dDpcIkhcIn0saVtcIkdSLklDLkFJUiBERUZFTlNFIEgvTUFEIFBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAxLGZvbnRzaXplOjIwLHRleHQ6XCJQXCJ9LGlbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTAsMTIwIEw5MCw5MCBDOTAsODAgMTEwLDgwIDExMCw5MCBMMTEwLDEyMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GTE9BVElORyBDUkFGVFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw3NSAyMCwwIDAsLTEwIC01LDAgMCwtMTAgLTEwLDAgMCwxMCAtNSwwIHpcIixzdHJva2U6ITF9LGlbXCJHUi5JQy5BSVIgQU5EIE1JU1NJTEUgREVGRU5TRVwiXT1hKFwiTURcIiksaVtcIkdSLklDLk1JTElUQVJZIEhJU1RPUllcIl09YShcIk1IXCIpLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBUQVJHRVRJTkcgVU5JVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk04MCwxMDAgbDIwLC0xNSAwLDE1IDIwLC0xNSBNNzUsODAgQzc1LDEwMCA4NSwxMTUgMTA1LDExNVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTEwLHI6NX1dLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBUSEVBVEVSIE1JU1NJTEUgREVGRU5TRSBVTklUXCJdPWEoXCJUTURcIiksaVtcIkdSLklDLkFJUiBERUZFTlNFIFNIT1JUIFJBTkdFXCJdPWEoXCJTUkRcIiksaVtcIkdSLklDLkFJUiBERUZFTlNFIFNUSU5HRVJcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsODAgMzAsMCBjIDUuNTQsMCAxMCw0LjQ2IDEwLDEwIGwgMCw1IGMgMCw1LjU0IC00LjQ2LDEwIC0xMCwxMCBsIC0zMCwwIGMgLTUuNTQsMCAtMTAsLTQuNDYgLTEwLC0xMCBsIDAsLTUgYyAwLC01LjU0IDQuNDYsLTEwIDEwLC0xMCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMSxmb250c2l6ZToyMCx0ZXh0OlwiU1wifV0saVtcIkdSLklDLkFJUiBERUZFTlNFIFZVTENBTlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSw4MCAzMCwwIGMgNS41NCwwIDEwLDQuNDYgMTAsMTAgbCAwLDUgYyAwLDUuNTQgLTQuNDYsMTAgLTEwLDEwIGwgLTMwLDAgYyAtNS41NCwwIC0xMCwtNC40NiAtMTAsLTEwIGwgMCwtNSBjIDAsLTUuNTQgNC40NiwtMTAgMTAsLTEwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAxLGZvbnRzaXplOjIwLHRleHQ6XCJWXCJ9XSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgR1VOIFVOSVRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsODAgTDEwMCwxMjAgTTkyLDkwIGwwLDIwIE0xMDgsOTAgbDAsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuQUlSIFRSQUZGSUMgU0VSVklDRVNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDk1IDAsMjUgbSA3LjUsLTMyLjUgYyAwLDQuMSAtMy40LDcuNSAtNy41LDcuNSAtNC4xLDAgLTcuNSwtMy40IC03LjUsLTcuNSAwLC00LjEgMy40LC03LjUgNy41LC03LjUgNC4xLDAgNy41LDMuNCA3LjUsNy41IHogTSA2MCw4NSBsIDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0saVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk04MCw3MCBsNDAsMCBNODAsODAgbDI1LC0yNSBNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfV0saVtcIkdSLklDLkFMTElFRCBDT01NQU5EIEVVUk9QRSBSQVBJRCBSRUFDVElPTiBDT1JQUyAoQVJSQylcIl09YShcIkFSUkNcIiksaVtcIkdSLklDLkFMTElFRCBDT01NQU5EIE9QRVJBVElPTlNcIl09YShcIkFDT1wiKSxpW1wiR1IuSUMuQU1NVU5JVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCwxMTcgMCwtMjUgYyAwLC0xNSAyMCwtMTUgMjAsMCBsIDAsMjUgbSAtMjUsMCAzMCwwXCIsZmlsbDohMX0saVtcIkdSLklDLkFSTU9VUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTTEyNSw4MCBDMTUwLDgwIDE1MCwxMjAgMTI1LDEyMCBMNzUsMTIwIEM1MCwxMjAgNTAsODAgNzUsODAgWlwiLGZpbGw6ITF9LGlbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDgwIGMgMjUsMCAyNSwzMCAwLDMwIGwgLTQwLDAgQyA1NSwxMTAgNTUsODAgODAsODAgWlwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzAsY3k6MTE1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTMwLGN5OjExNSxyOjUsZmlsbDohMX1dLGlbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTYwLDg1IGw0MCwxNSA0MCwtMTUgMCwzMCAtNDAsLTE1IC00MCwxNSB6XCJ9LGlbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lORyAyNTI1Q1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxMDAgTDEwMCwxNDBcIn0saVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxpW1wiR1IuSUMuQ09NQkFUQU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4Ni45LDExMCBjIC0zLjYsMiAtNy4yLDMuOSAtMTAuOCw1LjkgMi4xLDIuOSA2LjcsMy45IDEwLDIuMSAyLjYsLTAuOSA0LjcsLTMuOCAzLjEsLTYuMSAtMC44LC0wLjYgLTEuNSwtMS4zIC0yLjMsLTEuOSB6IG0gMjYuMywwLjEgYyAzLjYsMiA3LjIsMy45IDEwLjgsNS45IC0yLjEsMi45IC02LjcsMy45IC0xMCwyLjEgLTIuNiwtMC45IC00LjcsLTMuOCAtMy4xLC02LjEgMC44LC0wLjYgMS41LC0xLjMgMi4zLC0xLjkgelwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMi45LDExMCBjIC01LjYsLTQgLTExLjMsLTcuOSAtMTYuMSwtMTIuNSAtNC4yLC00LjUgLTcsLTkuOCAtOS4yLC0xNS4xIC0wLjgsNC40IC0wLjksOS4zIDIuNCwxMy4yIDMuNiw0LjUgOC42LDguMSAxMy41LDExLjggMi4zLDEuNyA0LjcsMy4zIDcuMSw0LjggMC44LC0wLjcgMS41LC0xLjUgMi4zLC0yLjIgbSAtMjUuNywwIGMgNS42LC00IDExLjMsLTcuOSAxNi4xLC0xMi41IDQuMiwtNC41IDcsLTkuOCA5LjIsLTE1LjEgMC44LDQuNCAwLjksOS4zIC0yLjQsMTMuMiAtMy42LDQuNSAtOC42LDguMSAtMTMuNSwxMS44IC0yLjMsMS43IC00LjcsMy4zIC03LjEsNC44IC0wLjgsLTAuNyAtMS41LC0xLjUgLTIuMywtMi4yXCIsZmlsbDpNLHN0cm9rZXdpZHRoOjJ9XSxpW1wiR1IuSUMuQVZJQVRJT04gQ09NUE9TSVRFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMDAgMTUuNyw3LjkgYyAxMS44LDAgMTEuOCwtMTUuNyAwLC0xNS43IHogbSAwLDAgLTE1LjcsLTcuOSBjIC0xMS44LDAgLTExLjgsMTUuNyAwLDE1LjcgeiBtIC0xMCwtMjAgMTAsMjAgLTEwLDIwIDIwLDAgLTEwLC0yMCAxMCwtMjAgelwifSxpW1wiR1IuSUMuQVZJQVRJT04gVEFDVElDQUwgQUlSIENPTlRST0wgUEFSVFlcIl09YShcIlRBQ1BcIiksaVtcIkdSLklDLkFWSUFUSU9OIEZPUldBUkQgQUlSIENPTlRST0xMRVJcIl09YShcIkZBQ1wiKSxpW1wiR1IuSUMuU1BFQ0lBTCBUUk9PUFNcIl09YShcIlNUXCIpLGlbXCJHUi5JQy5SQU5HRVJcIl09YShcIlJHUlwiKSxpW1wiR1IuSUMuQkFORFwiXT1hKFwiQkFORFwiKSxpW1wiR1IuSUMuQVJNWSBNVVNJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OS42LDExMC41IGMgLTQuOCwtMS40IC0xMC45LDIuMiAtMTAuNCw3LjcgMSwyLjUgNi4yLDIuNCA5LjYsLTAuMiAxLjksLTEuNSAyLjcsLTMuOCAyLjMsLTYuOSBsIC0wLjEsLTIxLjMgYyAxMi43LDUuOCA3LjYsMTQuOCA1LjYsMjAuNyA0LjcsLTQuOSA1LjgsLTEzLjIgMS41LC0xNy45IC00LjQsLTQuNiAtNSwtNyAtOC40LC0xMyB6XCIsc3Ryb2tlOiExfSxpW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdPWEoXCJBVEZcIiksaVtcIkdSLklDLkNCUk5cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyMCBjIDAsLTIwIDEwLC0zMiA1MCwtMzUgbSAtMTAsMzUgQyAxMjAsMTAwIDExMCw4OCA3MCw4NVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6OTAscjo2fSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeTo5MCxyOjZ9XSxpW1wiR1IuQ0hFTUlDQUwsIEJJT0xPR0lDQUwsIFJBRElPTE9HSUNBTCwgTlVDTEVBUiwgQU5EIEhJR0gtWUlFTEQgRVhQTE9TSVZFU1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsODAgMjAsMCAxMCwyMCAtMTAsMjAgLTIwLDAgLTEwLC0yMCB6XCIsZmlsbDpHfSxhKFwiRVwiKV0saVtcIkdSLklDLlNQQUNFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTEuMjUsMTYuNSAtNC4yLC0zLjMgMi41LDQuOSAtNS41LDEuNyAtMC40LC0wIDAuMiwwIC0wLjIsMCAwLjQsLTAgNS40LDIuMyAtMS44LDQuNiAzLjYsLTMuNSAxLjMsMTYuNSAxLjMsLTE2LjUgNC4yLDMuMyAtMi41LC00LjkgNS41LC0xLjcgMC40LDAgLTAuMiwtMCAwLjIsMCAtMC40LDAgLTUuMywtMS43IDIuNSwtNC42IC00LDMuMiB6XCIsc3Ryb2tlOiExfV0saVtcIkdSLklDLkNJVklMIEFGRkFJUlNcIl09YShcIkNBXCIpLGlbXCJHUi5JQy5DSVZJTC1NSUxJVEFSWS1DT09QRVJBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2MCw4MCA4MCwwIDAsMjAgYyAwLDI1IC04MCwyNSAtODAsMCB6XCIsZmlsbDohMX0saVtcIkdSLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxpW1wiR1IuSS5DSVZJTElBTlwiXS5maWxsPVJ8fE4/RzohQyYmRyxpW1wiR1IuSS5DSVZJTElBTlwiXS5zdHJva2U9byxpW1wiR1IuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLGlbXCJHUi5JQy5DT01NQU5EIEFORCBDT05UUk9MXCJdPWEoXCJDMlwiKSxpW1wiR1IuSUMuQ09NQkFUXCJdPWEoXCJDQlRcIiksaVtcIkdSLklDLkNPTUJBVCBTRVJWSUNFIFNVUFBPUlRcIl09YShcIkNTU1wiKSxpW1wiR1IuSUMuQ09NQkFUIFNVUFBPUlRcIl09YShcIkNTXCIpLGlbXCJHUi5JQy5DT01CQVQgU1VQUE9SVCAoTUFOT0VVVlJFIEVOSEFOQ0VNRU5UKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw4MCAwLDI1IDE1LDE1IDE1LC0xNSAwLC0yNSB6XCJ9LGlbXCJHUi5JQy5DT01CSU5FRCBBUk1TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDcwLDgwIDYwLDQwIG0gMCwtNDAgLTYwLDQwIG0gNTUsLTQwIGMgMjUsMCAyNSw0MCAwLDQwIGwgLTUwLDAgQyA1MCwxMjAgNTAsODAgNzUsODAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5DT1VOVEVSLUlOVEVMTElHRU5DRVwiXT1hKFwiQ0lcIiksaVtcIkdSLklDLkNSSU1JTkFMIElOVkVTVElHQVRJT04gRElWSVNJT05cIl09YShcIkNJRFwiKSxpW1wiR1IuSUMuRElWSU5HXCJdPVtdLGlbXCJHUi5JQy5ET0dcIl09YShcIkRPR1wiKSxpW1wiR1IuSUMuRFJJTExJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsODAgNSw0MCAyMCwwIDUsLTQwIHpcIn0saVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdPWEoXCJERUFcIiksaVtcIkdSLklDLkVMRUNUUk9OSUMgUkFOR0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEyMCwxMzAgYy00MCwyMCAtODAsLTQ1IC00MCwtNzAgeiBNMTAwLDk1IEwxNDAsNzVcIixmaWxsOiEhUiYmR30saVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXT1hKFwiRVdcIiksaVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw2MCAwLDIyLjcgLTE5LjcsLTExLjMgLTEwLDE3LjMgTCA4MCwxMDAgbCAtMTkuNywxMS4zIDEwLDE3LjMgTCA5MCwxMTcuMyA5MCwxNDAgbCAyMCwwIDAsLTIyLjcgMTkuNywxMS4zIDEwLC0xNy4zIEwgMTIwLDEwMCBsIDE5LjcsLTExLjMgLTEwLC0xNy4zIEwgMTEwLDgyLjcgMTEwLDYwIDkwLDYwIHpcIn0saVtcIkdSLklDLkVOR0lORUVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk02MCwxMjAgTDYwLDgwIDE0MCw4MCAxNDAsMTIwIE0xMDAsODAgTDEwMCwxMTBcIn0saVtcIkdSLklDLkVOR0lORUVSIE1FQ0hBTklaRURcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsOTAgMCwxNSBtIC0yNSw1IDAsLTIwIDUwLDAgMCwyMCBtIDAsLTMwIGMgMjUsMCAyNSw0MCAwLDQwIGwgLTUwLDAgQyA1MCwxMjAgNTAsODAgNzUsODAgWlwifSxpW1wiR1IuSUMuRU5HSU5FRVIgVVRJTElUWSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDEwMCAwLDEwIG0gLTE1LDUgMCwtMTUgMzAsMCAwLDE1IE0gNzAsODAgYyAwLDE1IDYwLDE1IDYwLDAgbCAwLDQwIC02MCwwIHpcIn0saVtcIkdSLklDLkVOVklST05NRU5UQUwgUFJPVEVDVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTEwLDE1IDUsMCAtMTAsMTAgNSwwIC0xMCwxMCAxNSwwIDAsNSAxMCwwIDAsLTUgMTUsMCAtMTAsLTEwIDUsMCAtMTAsLTEwIDUsMCB6XCIsZmlsbDohMX0saVtcIkdSLklDLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXT1hKFwiRU9EXCIpLGlbXCJHUi5JQy5GRURFUkFMIEJVUkVBVSBPRiBJTlZFU1RJR0FUSU9OIChGQkkpXCJdPWEoXCJGQklcIiksaVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXT17dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX0saVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWSBPQlNFUlZFUlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTA4LHI6NX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTIwIDMwLC0yMCBtIC0zMCwyMCAyMCwtNDAgMjAsNDAgelwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRklFTEQgQ0FNUCBDT05TVFJVQ1RJT05cIl09W2lbXCJHUi5JQy5FTkdJTkVFUlwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3Nyxmb250c2l6ZToyNSx0ZXh0OlwiQ0FNUFwifV0saVtcIkdSLklDLkZJTkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsOTUgMTAsLTEwIDIwLDAgMTAsMTAgbSAtNDAsMCAwLDIwIDQwLDAgMCwtMjAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDkwIC01LDUgLTEwLC0xMCA1LC01IC0yMCwwIDUsNSAtMTAsMTAgLTUsLTUgMCwyMCA1LC01IDEwLDEwIC01LDUgMjAsMCAtNSwtNSAxMCwtMTAgNSw1IHpcIn0saVtcIkdSLklDLkZJWEVEIFdJTkcgTUlTT1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsc3Ryb2tlOm8sZDpcIk03MCw4NSBsNDAsMCAxMCwtMTAgMCw1MCAtMTAsLTEwIC00MCwwIHogTTEyMCw4NSBsMTAsMCBNMTIwLDk1IGwxMCwwIE0xMjAsMTA1IGwxMCwwIE0xMjAsMTE1IGwxMCwwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJNIDc4LjggNjEuNSBDIDY4LjEgNjEuNSA2OC4xIDc4LjUgNzguOCA3OC41IEwgMTAwIDcwIEwgNzguOCA2MS41IHogTSAxMDAgNzAgTCAxMjEuMyA3OC41IEMgMTMxLjkgNzguNSAxMzEuOSA2MS41IDEyMS4zIDYxLjUgTCAxMDAgNzAgelwifV0saVtcIkdSLklDLkdFT1NQQVRJQUwgU1VQUE9SVFwiXT1hKFwiR0VPXCIpLGlbXCJHUi5JQy5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXT1hKFwiR09cIiksaVtcIkdSLklDLklORk9STUFUSU9OIE9QRVJBVElPTlNcIl09YShSJiYhTj9cIklXXCI6XCJJT1wiKSxpW1wiR1IuSUMuSU5URVJOQVRJT05BTCBTRUNVUklUWSBBU1NJU1RBTkNFIEZPUkNFIChJU0FGKVwiXT1hKFwiSVNBRlwiKSxpW1wiR1IuSUMuSU5URVJST0dBVElPTlwiXT1hKFwiSVBXXCIpLGlbXCJHUi5JQy5KT0lOVCBGSVJFIFNVUFBPUlRcIl09YShcIkpGU1wiKSxpW1wiR1IuSUMuSk9JTlQgSU5GT1JNQVRJT04gQlVSRUFVXCJdPWEoXCJKSUJcIiksaVtcIkdSLklDLkpPSU5UIElOVEVMTElHRU5DRSBDRU5UUkVcIl09YShcIkpJQ1wiKSxpW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXT1hKFwiSkFHXCIpLGlbXCJHUi5JQy5MQUJPVVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsODUgMjAsMCBtIC0xMCwwIDAsMjUgLTEwLDAgMTAsMTAgMTAsLTEwIC0xMCwwXCIsZmlsbDohMX0saVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4MCAxMCwxMCAwLDMwIG0gMCwtMzAgLTEwLDAgbSAxMCwwIC0xMCwxMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDExOCBDIDc2LDEwOSA4NSw5NSA4Miw4MiBjIDYsNyAxMiw3IDE4LDAgNiw3IDEyLDcgMTgsMCAtMywxMyA2LDI3IC0xOCwzNiB6XCIsZmlsbDohMX0saVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9HOiFDJiZHLGQ6XCJtIDc1LDEwMCAwLC0zNSA1MCwwIDAsMzUgMjAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMDAgLTE1LDM1IC0xMCwwIDE1LC0zNSB6XCJ9XSxpW1wiR1IuSUMuTElBSVNPTlwiXT1hKFwiTE9cIiksaVtcIkdSLklDLk1BSU5URU5BTkNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzAsOTAgYzEwLDAgMTAsMjAgMCwyMCBtMTAsLTEwIGw0MCwwIG0xMCwtMTAgYy0xMCwwIC0xMCwyMCAwLDIwXCIsZmlsbDohMX0saVtcIkdSLklDLk1BVEVSSUVMXCJdPWEoXCJNQVRcIiksaVtcIkdSLklDLk1FRElDQUwgRVZBQ1VBVElPTiBIRUxJQ09QVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsODUgbDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHogTTk1LjUsODAgbDksMCAwLC05IDksMCAwLC05IC05LDAgMCwtOSAtOSwwIDAsOSAtOSwwIDAsOSA5LDAgWlwifSxpW1wiR1IuSUMuTUVTU0VOR0VSXCJdPWEoXCJNXCIpLGlbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXT1hKFwiTUVUXCIpLGlbXCJHUi5JQy5NSUxJVEFSWSBJTkZPUk1BVElPTiBTVVBQT1JUIE9QRVJBVElPTlMgKE1JU08pXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzAsODUgbDQwLDAgMTAsLTEwIDAsNTAgLTEwLC0xMCAtNDAsMCB6IE0xMjAsODUgbDEwLDAgTTEyMCw5NSBsMTAsMCBNMTIwLDEwNSBsMTAsMCBNMTIwLDExNSBsMTAsMFwifSxpW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdPWEoXCJNSVwiKSxpW1wiR1IuSUMuTUlMSVRBUlkgUE9MSUNFXCJdPWEoXCJNUFwiKSxpW1wiR1IuSUMuTUlORVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMTAwIGMgMCw1LjUgLTksMTAgLTIwLDEwIC0xMSwwIC0yMCwtNC41IC0yMCwtMTAgMCwtNS41IDksLTEwIDIwLC0xMCAxMSwwIDIwLDQuNSAyMCwxMCB6IG0gLTUsLTIwIC0zMCw0MCBtIDAsLTQwIDMwLDQwIG0gLTE1LC00MCAwLDQwXCJ9LGlbXCJHUi5JQy5NSU5FIENMRUFSSU5HXCJdPVtpW1wiR1IuSUMuTUlORVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3Nyxmb250c2l6ZToyNSx0ZXh0OlwiQ0xSXCJ9XSxpW1wiR1IuSUMuTUlORSBMQVVOQ0hJTkdcIl09W2lbXCJHUi5JQy5NSU5FXCJdLHt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyNSAwLDEwIDQwLDAgMCwtMTAgelwifV0saVtcIkdSLklDLk1JTkUgTEFZSU5HXCJdPVtpW1wiR1IuSUMuTUlORVwiXSx7dHlwZTpcInBhdGhcIixkOlwibSA4MCw2NSAwLDEwIDQwLDAgMCwtMTAgelwifV0saVtcIkdSLklDLk1JU1NJTEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMjAgTDkwLDkwIEM5MCw4MCAxMTAsODAgMTEwLDkwIEwxMTAsMTIwIE0xMDAsMTIwIEwxMDAsODBcIixmaWxsOiExfSxpW1wiR1IuSUMuTUlTU0lMRS5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixkOlwiTTkwLDkwIEwxMTAsOTBcIn0saVtcIkdSLklDLk1JU1NJTEUuTUVESVVNXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTAsOTAgTDExMCw5MCBNOTAsOTcgTDExMCw5N1wifSxpW1wiR1IuSUMuTUlTU0lMRS5IRUFWWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTkwLDkwIEwxMTAsOTAgTTkwLDk3IEwxMTAsOTcgTTkwLDEwNCBMMTEwLDEwNFwifSxpW1wiR1IuSUMuTU9SQUxFLCBXRUxGQVJFLCBBTkQgUkVDUkVBVElPTlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1XUlwifSxpW1wiR1IuSUMuTU9SVEFSXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDExMSBsMCwtMzAgTTkwLDkwIGwxMCwtMTAgMTAsMTBcIixmaWxsOiExfV0saVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsOTUgMjAsMCBtIC0xMCwtMTAgMCwzMCBtIC0xNSwtMzUgMzAsMCAwLDQwIC0zMCwwIHpcIixmaWxsOiExfSxpW1wiR1IuSUMuTVVMVElOQVRJT05BTCAoTU4pXCJdPWEoXCJNTlwiKSxpW1wiR1IuSUMuTkFWQUxcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw4NSBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgeiBtIC0yMCw1IDMwLDAgbSAtMTUsMCAwLDMwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0gODIuMyAxMDIuNiBDIDgyLjMgMTEzLjkgODQuMiAxMTUuOSA4NC4yIDExNS45IEwgODYuNSAxMTQuMSBDIDkwLjIgMTE3LjggOTQuOCAxMjAuOCA5OS45IDEyMC45IEwgMTAwLjUgMTIwLjkgTCAxMDEgMTIwLjkgQyAxMDYuMiAxMjAuOCAxMTAuOCAxMTcuOCAxMTQuNCAxMTQuMSBMIDExNi43IDExNS45IEMgMTE2LjcgMTE1LjkgMTE4LjYgMTEzLjkgMTE4LjcgMTAyLjYgQyAxMTMuOSAxMDYuOCAxMDguOSAxMDkgMTA4LjkgMTA5IEwgMTEwLjkgMTEwLjcgQyAxMTAuOSAxMTAuNyAxMDYuOCAxMTUuMiAxMDAuNSAxMTUuMiBMIDEwMC41IDExNS4yIEMgMTAwLjUgMTE1LjIgMTAwLjQgMTE1LjIgMTAwLjQgMTE1LjIgQyA5NC4yIDExNS4yIDkwIDExMC43IDkwIDExMC43IEwgOTIgMTA5IEMgOTIgMTA5IDg3IDEwNi44IDgyLjMgMTAyLjYgelwiLHN0cm9rZTohMX1dLGlbXCJHUi5JQy5PQlNFUlZFUi9PQlNFUlZBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTI1LDQwIDUwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5PUkROQU5DRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA5MCw5NyA4Myw4MyBtIDI3LDE0IDcsLTE0IE0gOTUsOTUgOTAsODEgbSAxNSwxNCA1LC0xNCBtIDEwLDI2LjUgYyAwLDYuOSAtOSwxMi41IC0yMCwxMi41IC0xMSwwIC0yMCwtNS42IC0yMCwtMTIuNSAwLC02LjkgOSwtMTIuNSAyMCwtMTIuNSAxMSwwIDIwLDUuNiAyMCwxMi41IHpcIixmaWxsOiExfSxpW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdPWEoXCJQU1wiKSxpW1wiR1IuSUMuUEVUUk9MRVVNIE9JTCBMVUJSSUNBTlRTXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTkgMCwtMjQgbSAwLDAgQyA5OSw5NSA4NSw4MSA4NSw4MSBsIDMwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5QSVBFTElORVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTEwIDE1LDAgbSAtMTUsLTE1IDE1LDAgbSAtNDUsMTUgLTE1LDAgTSA4NSw5NSA3MCw5NSBtIDMwLC0xNSAwLDEwIC0xNSwwIDAsMjUgMzAsMCAwLC0yNSAtMTUsMCBtIC0xMCwtMTAgMjAsMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5QT1NUQUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsODAgMzAsMCBjIC0xLjQsMTUuNSAwLDI1IDEwLDM1IC0yMCwwIC00MCwtMjAgLTQwLC0zNSB6XCIsZmlsbDohMX0saVtcIkdSLklDLlBVQkxJQyBBRkZBSVJTXCJdPWEoXCJQQVwiKSxpW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdPWEoXCJCUEFEXCIpLGlbXCJHUi5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsc3Ryb2tlOm8sZDpcIk03MCw4NSBsNDAsMCAxMCwtMTAgMCw1MCAtMTAsLTEwIC00MCwwIHogTTEyMCw4NSBsMTAsMCBNMTIwLDk1IGwxMCwwIE0xMjAsMTA1IGwxMCwwIE0xMjAsMTE1IGwxMCwwXCJ9LGlbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTE1LDk1IGMgMCwxNSAxNSwxNSAxNSwwIDAsLTE1IC0xNSwtMTUgLTE1LDAgeiBtIDAsMCAtNDUsMCAwLDEwIDEwLDAgMCwtMTBcIn0saVtcIkdSLklDLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzIsOTUgbDMwLC0yNSAwLDI1IDMwLC0yNSBNNzAsNzAgYzAsMzUgMTUsNTAgNTAsNTBcIixmaWxsOiExfSxpW1wiR1IuSUMuUkFESU9cIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC02MCBNNzAsNzAgbDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwXCJ9XSxpW1wiR1IuSUMuUkFESU8gUkVMQVlcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwtMTUsLTQwIDE1LDAgMCwtMjAgTTcwLDYwIGw2MCwwXCJ9XSxpW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMzUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxNDAgbDAsLTgwICBNNzAsNjAgbDYwLDAgTTgwLDcwIGw0MCwwXCJ9XSxpW1wiR1IuSUMuUkFJTEhFQURcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsODAgbDAsNDAgTTgxLDkwLjUgbDM4LDE5IE04MSwxMDkuNSBsMzgsLTE5XCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjIwLGZpbGw6ITF9LHMuX3RyYW5zbGF0ZSgwLC01MCxbe3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0pXSxpW1wiR1IuSUMuUkVMSUdJT1VTIFNVUFBPUlRcIl09YShcIlJFTFwiKSxpW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdPWEoXCJSSFVcIiksaVtcIkdSLklDLlNFQS1BSVItTEFORFwiXT1hKFwiU0VBTFwiKSxpW1wiR1IuSUMuU1VQUE9SVFwiXT1hKFwiU1BUXCIpLGlbXCJHUi5JQy5BUk1ZIEZJRUxEIFNVUFBPUlRcIl09YShcIkFGU1wiKSxpW1wiR1IuSUMuQ09OVFJBQ1RJTkcgU0VSVklDRVNcIl09YShcIktTXCIpLGlbXCJHUi5JQy5TRUFQT1JUIE9GIERFQkFSS0FUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfSxzLl90cmFuc2xhdGUoMCwtMzUscy5fc2NhbGUoLjYsaVtcIkdSLklDLk5BVkFMXCJdKSldLGlbXCJHUi5JQy5TRUNVUklUWVwiXT1hKFwiU0VDXCIpLGlbXCJHUi5JQy5TRUNVUklUWSBQT0xJQ0UgKEFJUilcIl09W2EoXCJTUFwiKSx7dHlwZTpcInBhdGhcIixkOlwiTSA3OC44IDEyMS41IEMgNjguMSAxMjEuNSA2OC4xIDEzOC41IDc4LjggMTM4LjUgTCAxMDAgMTMwIEwgNzguOCAxMjEuNSB6IE0gMTAwIDEzMCBMIDEyMS4zIDEzOC41IEMgMTMxLjkgMTM4LjUgMTMxLjkgMTIxLjUgMTIxLjMgMTIxLjUgTCAxMDAgMTMwIHpcIn1dLGlbXCJHUi5JQy5TRU5TT1JcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDgwIGMgMCw3LjUgMTIuNSwyMCAyMCwyMCAtNy41LDAgLTIwLDEyLjUgLTIwLDIwIDAsLTcuNSAtMTIuNSwtMjAgLTIwLC0yMCA3LjUsMCAyMCwtMTIuNSAyMCwtMjAgelwifSxpW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdPWEoXCJTUFwiKSxpW1wiR1IuSUMuU05JUEVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAgODUgTCA5MCA4NSBMIDYwIDg1IHogTSAxMTAgODUgTCAxNDAgODUgTCAxMTAgODUgeiBNIDEwMCA5MCBMIDEwMCAxMTUgTCAxMDAgOTAgelwifSxpW1wiR1IuSUMuUEFSQUNIVVRFIFJJR0dFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyMCwxMDAgLTIwLDIwIC0yMCwtMjAgbSAwLDAgYyAwLC0yNSA0MCwtMjUgNDAsMCBsIC00MCwwXCJ9LGlbXCJHUi5JQy5TUEVDSUFMIEZPUkNFU1wiXT1hKFwiU0ZcIiksaVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl09YShcIlNPRlwiKSxpW1wiR1IuSUMuU1VSVkVJTExBTkNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4MCAtMjUsNDAgNTAsMCB6XCJ9LGlbXCJHUi5JQy5TVVJWRVlcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNODUsMTIwIGwxNSwtMTUgMTUsMTUgXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTA1IGwwLC0yNSAyMCwxMi41IHpcIixmaWxsOiEhUiYmR31dLGlbXCJHUi5JQy5TVVNUQUlOTUVOVFwiXT1hKFwiU1VTVFwiKSxpW1wiR1IuSUMuVEVMRVBIT05FIFNXSVRDSFwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTM1LGZvbnRzaXplOjMwLHRleHQ6XCJDXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTQwIGwwLC04MCAgTTcwLDYwIGw2MCwwXCJ9XSxpW1wiR1IuSUMuVE9QT0dSQVBISUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSwxMDUgYyAxMCw1IDIwLDUgMzAsMCBtIC0xNSwtMTUgMTUsMzAgbSAtMzAsMCAxNSwtMzAgMCwtMTBcIn0saVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfV0saVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXT1hKFwiVFNBXCIpLGlbXCJHUi5JQy5VTk1BTk5FRCBTWVNURU1TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0saVtcIkdSLklDLlNFQVJDSCBBTkQgUkVTQ1VFXCJdPWEoXCJTQVJcIiksaVtcIkdSLklDLkRJVkVSLCBDSVZJTElBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOkcsZDpcIk0gMTE0LjMsOTQgQyAxMTQuMywxMDIuMyAxMDcuOSwxMDkgMTAwLDEwOSBjIC03LjksMCAtMTQuMiwtNi43IC0xNC4yLC0xNSAwLC04LjMgNi40LC0xNSAxNC4yLC0xNSA3LjksMCAxNC4zLDYuNyAxNC4zLDE1IHogbSAwLDI3IDE0LjMsMTUgLTU3LDAgMTQuMywtMTUgTSAxMjUuNyw3OSBsIDE0LjMsMCAwLDMwIC0xNC4zLDAgbSAtNTEuMywwIC0xNC4zLDAgMCwtMzAgMTQuMywwIG0gNTQuMiwxNSBjIDAsMTYuNiAtMTIuOCwzMCAtMjguNSwzMCAtMTUuNywwIC0yOC41LC0xMy40IC0yOC41LC0zMCBDIDcxLjUsNzcuNCA4NC4zLDY0IDEwMCw2NCAxMTUuNyw2NCAxMjguNSw3Ny40IDEyOC41LDk0IHpcIn0saVtcIkdSLklDLlZJREVPIElNQUdFUllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsMTEwIC0yNiwwIG0gNywtMjAgMTksMCBtIC0xNSwtMTAgLTY1LDAgMCw0MCA1MCwwIHogbSAxNSw1IDAsMzBcIn0saVtcIkdSLklDLlVOSVRFRCBTVEFURVMgU0VDUkVUIFNFUlZJQ0UoVFJFQVMpIChVU1NTKVwiXT1hKFwiVVNTU1wiKSxpW1wiR1IuSUMuV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsOTAgNTAsMCBjIDEwLDAgMjAsMTAgMjAsMjAgbSAtNDAsLTMwIDIwLDAgbSAtMTAsMCAwLDEwXCIsZmlsbDohMX0saVtcIkdSLklDLldBVEVSIFBVUklGSUNBVElPTlwiXT1baVtcIkdSLklDLldBVEVSXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjkwLHk6MTEwLGZvbnRzaXplOjIwLHRleHQ6XCJQVVJFXCJ9XSxpW1wiR1IuSUMuRkYuQUlSIEFTU0FVTFQgV0lUSCBPUkdBTklDIExJRlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0zNSwxMjAgTCA5MCwxMjAgbDEwLDEwIDEwLC0xMCBMMTY1LDEyMFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNzUsMTIwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNTUsMTIwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNTAsMTIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwibSA1NSwxMzUgYyAxMCwtMjAgODAsLTIwIDkwLDBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxNTAgQzI1LDExMCAxNzUsMTEwIDE3NSwxNTBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTUwIEM0NSwxMTAgMTU1LDExMCAxNTUsMTUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTcwLDE0MCBDNzAsMTE1IDEzMCwxMTUgMTMwLDE0MFwiLGZpbGw6ITF9fVtUXSxpW1wiR1IuSUMuRkYuQUlSIEFORCBOQVZBTCBHVU5GSVJFIExJQUlTT04gQ09NUEFOWVwiXT1bXSxpW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwibSAzMCw5NSBjIDEwLDAgMCwxNSAxMy41LDE1IDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDEzLjUsMCAzLjUsLTE1IDEzLjUsLTE1XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDI1LDkwIGMgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMjAsLTIwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwibSA0NSwxMTAgYyAxOC44LDAgMCwtMjAgMTgsLTIwIDE4LjgsMCAwLDIwIDE4LjgsMjAgMTguOCwwIDAsLTIwIDE4LjgsLTIwIDE4LjgsMCAwLDIwIDE4LjgsMjAgMTguOCwwIDAsLTIwIDE4LjgsLTIwIDE4LjgsMCAwLDIwIDE4LDIwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwibSAzMiw5NSBjIDEwLDAgMCwxNSAxMS41LDE1IDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDExLjUsMCAxLjUsLTE1IDExLjUsLTE1XCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5BTkFMWVNJU1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTIwIDAsLTY1IG0gMCw5MCAtMzAsLTI1IDYwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01NSwxMzUgTDEwMCwzMyAxNDUsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsMTUwIEwxMDAsNTIgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSwxNTAgTDEwMCw0NyAxNTUsMTUwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTYwLDEzMiBMMTAwLDMwIDE0MCwxMzJcIn19W1RdLGlbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTIyLjggNjYuOCBDIDExOS45IDY2LjggMTE3LjQgNjguNiAxMTcuNCA3MS42IEwgMTE3LjQgNzMuMSBMIDEyOC43IDczLjEgTCAxMjguNyA3Mi40IEMgMTI4LjcgNjguOCAxMjYuNSA2Ni44IDEyMi44IDY2LjggeiBNIDEwOC42IDc0LjggTCAxMDguNiA3NiBMIDExNy42IDc2IEwgMTE3LjUgNzcuNSBMIDExOCA4MC44IEMgMTE5LjEgODEuNSAxMTguOSA4Mi41IDEyMC44IDgzLjUgQyAxMjIuMSA4NC4xIDEyNCA4NCAxMjUuMiA4My40IEMgMTI3LjUgODIuNCAxMjkgNzkuMiAxMjguMyA3NiBMIDEzNy41IDc2IEwgMTM3LjUgNzQuOCBMIDEwOC42IDc0LjggeiBNIDk0LjggODIuMSBDIDkzLjMgODIuMSA5MiA4My41IDkyIDg1IEwgOTIgODUuMiBDIDkyIDg2LjYgOTYgOTEuMyA5NyA5Mi42IEMgOTguMiA5NC4zIDEwMC44IDk4LjggMTAzLjIgOTguOCBDIDEwNC41IDk4LjggMTExLjEgOTMuNyAxMTIuNiA5Mi44IEwgMTEyLjYgMTA2LjIgTCAxMjYuNCA4NS42IEMgMTIzIDg1LjYgMTE0LjkgODUuMiAxMTIuMiA4NS45IEMgMTEwLjIgODYuNCAxMDUgOTEuNiAxMDMuNiA5MS43IEMgMTAzLjQgOTEgMTAwLjYgODcuNSAxMDAgODYuNSBDIDk5LjIgODUuNCA5Ny4yIDgyLjEgOTUuNiA4Mi4xIEwgOTQuOCA4Mi4xIHogTSAxMzAuNCA4NS42IEMgMTI5LjYgODUuNiAxMTcuNSAxMDQuMSAxMTYuMyAxMDYuMiBMIDEyOC4xIDEwNi4yIEwgMTI4LjEgMTEwLjYgTCAxMTIuNSAxMTAuNiBMIDExMi41IDEzMy4yIEwgMTIwLjcgMTMzLjIgTCAxMjIgMTE3LjUgTCAxMjQuMyAxMTcuNSBMIDEyNS42IDEzMy4yIEwgMTMzLjUgMTMzLjIgTCAxMzMuNSA4Ny45IEMgMTMzLjUgODcuMiAxMzEuMiA4NS42IDEzMC40IDg1LjYgeiBNIDY2LjkgOTAuNyBDIDY2LjUgOTEuNCA2Mi41IDk2LjkgNjIuNSA5Ni45IEMgNjIuNSA5Ny44IDc2LjcgMTA3LjIgNzguNSAxMDguMyBDIDgxLjQgMTEwLjIgODMuOSAxMTIuMSA4Ni43IDExNCBDIDg4LjIgMTE1IDg5LjQgMTE1LjkgOTAuOCAxMTYuOCBDIDkyLjEgMTE3LjcgOTQuMSAxMTguNSA5NC4xIDEyMC40IEwgOTQuMSAxMzMuMiBMIDEwNS41IDEzMy4yIEwgMTA1LjUgMTIxLjcgQyAxMDUuNSAxMjAuNiAxMDcuMiAxMTkgMTA3LjIgMTE4LjggQyAxMDcuMiAxMTcuNiAxMDYuMSAxMTguNiAxMDUuNiAxMTYuOSBDIDEwNS4yIDExNS40IDEwNS40IDExNS42IDEwNC41IDExNC41IEMgMTAzLjUgMTEzLjEgMTAxLjkgMTEyIDk5LjggMTEyIEMgOTYuOCAxMTIgOTcuNiAxMTEuOCA5NS4zIDExMC4zIEMgOTMuOSAxMDkuMyA5Mi41IDEwOC40IDkxLjIgMTA3LjQgQyA4OC43IDEwNS41IDg1LjggMTAzLjUgODMuMiAxMDEuOCBDIDgwLjkgMTAwLjMgNjguMiA5MSA2Ni45IDkwLjcgeiBNIDY3LjkgOTIuNiBMIDcyLjcgOTUuNyBMIDcyLjggMTAzIEwgNjcuOSA5OS45IEwgNjcuOSA5Mi42IHogTSA3Ny44IDk5LjMgTCA4Mi42IDEwMi42IEwgODIuNiAxMTAgTCA3Ny44IDEwNi42IEwgNzcuOCA5OS4zIHogTSA4Ny40IDEwNi4yIEwgOTIuNSAxMDkuNSBMIDkyLjQgMTE2LjkgTCA4Ny40IDExMy41IEwgODcuNCAxMDYuMiB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTohMSxkOlwiTSAxMTcuNCA3My4xIEwgMTE3LjQgNzQuOCBMIDEyOC43IDc0LjggTCAxMjguNyA3My4xIEwgMTE3LjQgNzMuMSB6IE0gMTI2LjQgODUuNiBMIDExMi42IDEwNi4yIEwgMTEyLjYgMTEwLjYgTCAxMjguMSAxMTAuNiBMIDEyOC4xIDEwNi4yIEwgMTE2LjQgMTA2LjIgQyAxMTcuNSAxMDQuMSAxMjkuNiA4NS42IDEzMC40IDg1LjYgTCAxMjYuNCA4NS42IHogTSA2Ny45IDkyLjYgTCA2Ny45IDk5LjkgTCA3Mi44IDEwMyBMIDcyLjcgOTUuNyBMIDY3LjkgOTIuNiB6IE0gNzcuOCA5OS4zIEwgNzcuOCAxMDYuNiBMIDgyLjYgMTEwIEwgODIuNiAxMDIuNiBMIDc3LjggOTkuMyB6IE0gODcuNCAxMDYuMiBMIDg3LjQgMTEzLjUgTCA5Mi40IDExNi45IEwgOTIuNSAxMDkuNSBMIDg3LjQgMTA2LjIgeiBcIn1dLGlbXCJHUi5JQy5GRi5CUk9BRENBU1QgVFJBTlNNSVRURVIgQU5URU5OQVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDYwIDIwLDIwIDIwLC0yMCBtIC0yMCwwIDAsODBcIn0saVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xNjAsNzUgbC0xNSwyNSAxNSwyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTE3NSw1MCBsLTMwLDUwIDMwLDUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTE1NSw1MCBsLTIwLDUwIDIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTE1MCw4MCBsLTE1LDIwIDE1LDIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMTUuNSA2OS44IEMgMTE1LjggNzAuNCAxMTYuOSA3Mi45IDExNy41IDcyLjkgTCAxMjguMyA3Mi45IEwgMTI4LjMgNjkuOCBMIDExNS41IDY5LjggeiBNIDExNy4zIDc0LjcgQyAxMTYuOCA3NC43IDExNiA3NS43IDExNS44IDc2LjEgTCAxMTcuMiA3Ni4xIEwgMTE3LjIgNzYuOCBDIDExNy4yIDc5LjYgMTE5LjggODEuOCAxMjIuOCA4MS44IEMgMTI2LjUgODEuOCAxMjguMyA3OC42IDEyOC4zIDc0LjcgTCAxMTcuMyA3NC43IHogTSAxMTEuMyA4My42IEMgMTEwLjUgODMuNiA5OS40IDkxLjggOTcuOCA5Mi45IEMgOTUuNiA5NC40IDkzIDk2LjEgOTEgOTcuNyBDIDg5LjEgOTkuMiA4NS40IDEwMC41IDg1LjQgMTAzLjYgTCA4NS40IDEwNCBDIDg1LjQgMTA0LjcgODcuMSAxMDYuNyA4OC4yIDEwNi43IEwgODguOCAxMDYuNyBDIDkwLjIgMTA2LjcgMTA4IDkzLjQgMTExLjMgOTEuNyBMIDExMS4zIDEwNS4zIEwgMTI2IDgzLjYgTCAxMTEuMyA4My42IHogTSA3NS4zIDgzLjYgQyA3NC41IDgzLjYgNzMuNCA4NC40IDczLjQgODUgTCA3My40IDEwOC45IEMgNzMuNCAxMDkuOCA3My45IDExMC4yIDc0LjQgMTEwLjUgTCA3OC41IDExMC41IEwgNzguNSA4My42IEwgNzUuMyA4My42IHogTSA3OC41IDExMC41IEwgNzguNSAxMzUuMiBMIDEwNS42IDEzNS4yIEwgMTA1LjYgMTEwLjUgTCA3OC41IDExMC41IHogTSAxMzAuNSA4My42IEMgMTI5LjYgODMuNiAxMjMuOCA5Mi45IDEyMi45IDk0LjIgQyAxMjEuOSA5NS43IDExNS43IDEwNC41IDExNS41IDEwNS4zIEwgMTI3LjYgMTA1LjMgTCAxMjcuNiAxMTAuMyBMIDExMS41IDExMC4zIEwgMTExLjUgMTM0LjggTCAxMTkuNiAxMzQuOCBDIDEyMC42IDEzNC44IDEyMS4xIDEyNy45IDEyMS4zIDEyNi42IEMgMTIxLjcgMTIzLjkgMTIyLjQgMTIwLjQgMTIyLjYgMTE3LjggTCAxMjIuOSAxMTcuOCBMIDEyNS40IDEzNC44IEwgMTMzLjkgMTM0LjggTCAxMzMuOSA4Ni43IEMgMTMzLjkgODUuNiAxMzEuOSA4My42IDEzMC43IDgzLjYgTCAxMzAuNSA4My42XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTohMSxkOlwiTSAxMTcuNSA3Mi45IEwgMTE3LjMgNzQuNyBMIDEyOC4zIDc0LjcgTCAxMjguMyA3Mi45IEwgMTE3LjUgNzIuOSB6IE0gMTI2IDgzLjcgTCAxMTEuMyAxMDUuMyBMIDExMS41IDExMC4zIEwgMTI3LjcgMTEwLjMgTCAxMjcuNyAxMDUuMyBMIDExNS41IDEwNS4zIEMgMTE1LjcgMTA0LjUgMTIxLjkgOTUuNyAxMjIuOSA5NC4zIEMgMTIzLjggOTIuOSAxMjkuNiA4My43IDEzMC41IDgzLjcgTCAxMjYgODMuNyB6IFwifV0saVtcIkdSLklDLkZGLkRFUEFSVE1FTlQgT0YgSlVTVElDRSAoRE9KKVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTAwLjIgNjIuMyBDIDEwMC4xIDYzLjIgOTkgNjYuMyA5OC43IDY3LjQgQyA5Ny44IDY5LjkgOTkuNCA3MCA5OS40IDcyLjMgTCA5OS40IDczIEMgOTkuNCA3My43IDk4LjkgNzMuNSA5OC4zIDczLjggQyA5Ni42IDcyLjQgOTQuMiA3MSA5MS4zIDcxIEwgOTAgNzEgQyA4NC4yIDcxIDgwIDc1LjUgNzQuNiA3NS41IEwgNzMuOSA3NS41IEMgNzIuMyA3NS41IDcxLjUgNzQuMSA3MS4zIDc1LjggTCA3NC4zIDc3LjIgQyA3MS44IDgyLjQgNjkuOSA4OS43IDY3LjUgOTUuNSBDIDY2LjMgOTguNiA2NS4zIDEwMS42IDY0LjEgMTA0LjcgQyA2My41IDEwNi4zIDYzLjEgMTA3LjcgNjIuNSAxMDkuMyBDIDYyIDExMC41IDYxLjggMTEzLjEgNjAuMiAxMTMuMiBDIDYyLjQgMTE2LjQgNjggMTIwLjUgNzMuMyAxMjAuNSBMIDc2IDEyMC41IEMgODEuNiAxMjAuNSA4Ny4zIDExNi42IDg5LjUgMTEzLjIgTCA4OC4yIDExMy4yIEwgNzUuNCA3Ny4yIEwgNzQuNSA3Ny4yIEwgNzQuNSA3NyBMIDc1LjQgNzcuMiBMIDc4LjYgNzcuNyBMIDc5LjMgNzcuNyBMIDg5LjMgNzYuMiBMIDkwLjQgNzYuMyBDIDkzLjcgNzYuMyA5My44IDgwLjIgOTQuNyA4MC4yIEwgOTcuNyA4MC4yIEwgOTcuNyAxMjkuMiBMIDg2LjEgMTI5LjIgTCA4Ni4xIDEzMS41IEwgODEuNCAxMzEuNSBMIDgxLjQgMTM0LjEgTCA3Ny41IDEzNC4xIEwgNzcuNSAxMzguMiBMIDEyMy4zIDEzOC4yIEwgMTIzLjMgMTMzLjkgTCAxMTkuMyAxMzMuOSBMIDExOS4zIDEzMS42IEwgMTE0LjUgMTMxLjYgTCAxMTQuNSAxMjkuMiBMIDEwMi42IDEyOS4yIEwgMTAyLjYgODAuMiBMIDEwNiA4MC4yIEMgMTA3IDgwLjIgMTA2LjYgNzYuNCAxMTAuNyA3Ni40IEwgMTExLjMgNzYuNCBMIDEyMS4yIDc3LjcgTCAxMjIuMiA3Ny43IEwgMTI1LjQgNzcuMyBDIDEyNC4zIDc5LjcgMTIzLjEgODMuOCAxMjIuMSA4Ni40IEMgMTIwLjkgODkuNiAxMTkuOSA5Mi42IDExOC43IDk1LjggQyAxMTcuNSA5OC45IDExNi42IDEwMS45IDExNS40IDEwNSBDIDExNC45IDEwNi40IDExNC4yIDEwOC4xIDExMy43IDEwOS42IEMgMTEzLjQgMTEwLjQgMTEzLjEgMTExLjEgMTEyLjkgMTExLjkgQyAxMTIuNSAxMTMuMiAxMTIuOCAxMTMuMiAxMTEuMiAxMTMuMiBDIDExMy4zIDExNi40IDExOS4yIDEyMC41IDEyNC42IDEyMC41IEwgMTI3LjIgMTIwLjUgQyAxMzIuNiAxMjAuNSAxMzguOCAxMTYuNCAxNDAuOSAxMTMuMiBMIDEzOS44IDExMy4yIEwgMTI2LjQgNzcuMSBDIDEyNy40IDc2LjkgMTI5LjMgNzYuMiAxMjkuMyA3NS4zIEMgMTI5LjMgNzQuNSAxMjcuOCA3NS41IDEyNi43IDc1LjUgTCAxMjYuMyA3NS41IEMgMTIwLjggNzUuNSAxMTYuNiA3MSAxMTAuOSA3MSBMIDEwOS42IDcxIEMgMTA2LjcgNzEgMTA0LjIgNzIuNCAxMDIuNiA3My44IEMgMTAxLjggNzMuNCAxMDEuMyA3My42IDEwMS4zIDcyLjMgQyAxMDEuMyA3MS45IDEwMi40IDY4LjggMTAyLjUgNjguNSBMIDEwMC42IDYyLjMgTCAxMDAuMiA2Mi4zIHogTSAxMjYuMSA4MC44IEwgMTM3LjggMTEzLjIgTCAxMTQuMSAxMTMuMiBMIDEyNi4xIDgwLjggeiBNIDc0LjggODAuOCBMIDg2LjUgMTEzLjIgTCA2My4xIDExMy4xIEwgNzQuOCA4MC44IHpcIn0saVtcIkdSLklDLkZGLkRJUkVDVElPTiBGSU5ESU5HXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE0MCBsMCwtODAgTTgwLDgwIGwyMCwtMjAgMjAsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuRElWSVNJT04gQU5EIEJFTE9XIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk00MCw3NSBsMTUsMjUgLTE1LDI1XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgbDMwLDUwIC0zMCw1MFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw1MCBsMjAsNTAgLTIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDgwIGwxNSwyMCAtMTUsMjBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCA2NSBMIDExNS4yIDkxLjMgTCAxMzAuMyAxMTcuNSBDIDEzMy4zIDExMi40IDEzNSAxMDYuNCAxMzUgMTAwIEMgMTM1IDgwLjcgMTE5LjMgNjUgMTAwIDY1IHogTSAxMDAgNjUgQyA4MC43IDY1IDY1IDgwLjcgNjUgMTAwIEMgNjUgMTA2LjQgNjYuNyAxMTIuNCA2OS43IDExNy41IEwgODQuOCA5MS4zIEwgMTAwIDY1IHogTSA2OS43IDExNy41IEMgNzUuNyAxMjggODcgMTM1IDEwMCAxMzUgQyAxMTMgMTM1IDEyNC4zIDEyOCAxMzAuMyAxMTcuNSBMIDEwMCAxMTcuNSBMIDY5LjcgMTE3LjUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxzdHJva2U6ITEsZDpcIk0gNjkuNywxMTcuNSAxMDAsNjUgbCAzMC4zLDUyLjUgelwifV0saVtcIkdSLklDLkZGLkZJRUxEIEFSVElMTEVSWSBST0NLRVRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTUwIGwwLC05NyBNODUsMTMwIGwwLC01MCBNMTE1LDEzMCBsMCwtNTAgTTg1LDczIGwxNSwtMjAgMTUsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuSEVBRFFVQVJURVJTIE9SIEhFQURRVUFSVEVSUyBFTEVNRU5UXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsODAgbDEzMCwwIFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDgwIGwxNTAsMCBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsODAgbDExMCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw4MCBsMTAwLDAgXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5IT1JTRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjksNzIuOCBjIDAsMCAtNi4zLDIgLTksMi42IC0zLjQsMC43IC00LjksMS44IC03LjcsMy4xIC00LjIsMS45IC02LjgsMy42IC0xMS4zLDQuMyAtMy4zLDAuNSAtNy43LDEuNyAtMTEsMSAtMy45LC0wLjkgLTYuMSwtMi45IC0xMC4xLC0yLjkgLTMuNywtMCAtNy40LC0wLjYgLTEwLjYsMS4zIC0yLjYsMS42IC00LjcsNC4yIC01LjgsNy4xIC0yLjMsNS40IC0wLjgsMTIuNSAtMS4yLDE4LjQgLTAuMiwzLjEgLTAuNCw5LjMgLTAuNiwxMC4yIDAsMCAxLjYsLTAgMy40LC0yLjUgMC45LC0xLjIgMS43LC0zLjQgMS45LC00LjkgMC41LC0zLjEgLTAuNywtNy41IC0wLjQsLTEwIDEuMSwtMC4zIDIuNCwyLjggMi42LDQuNyAwLjIsMiAtMSwzLjMgLTEuNCw1LjIgLTAuNSwzIDAuMyw1IDAuNiw4LjMgMC4xLDEuNiAwLjgsMy45IDAuNSw2IC0wLjIsMiAtMC4yLDQuMyAtMC4yLDQuMyBsIDYuOSwwIC0wLjQsLTMuOCBjIDAsMCAtMS44LC0yLjUgLTIuMSwtNC4zIC0wLjUsLTIuNyAtMC41LC01LjQgMC4yLC04IDAuNSwtMiAzLjEsLTQuMyA0LjEsLTYuMSAxLjgsLTMuMSAzLjEsLTcuMSAzLjEsLTcuMSAwLDAgNS4xLDMuNCA5LjEsNC4yIDMuOCwwLjggMTEuNiwxLjQgMTEuNiwxLjQgMCwwIC0wLjIsNy4zIDAuMSwxMi40IC0wLDAuMSAwLjMsMy45IDAuMywzLjEgLTEuNCwzLjIgLTAsOC4yIC0wLDguMiAwLDAgMi45LDAgNi4zLC0wIGwgLTAuMywtMy40IGMgMCwwIC0xLjUsLTMuNSAtMS41LC01LjMgMCwtMy4xIDAuMSwtNS45IDAuOSwtOC45IDAuNCwtMS4yIDAuNywtMi45IDEuMywtNCAxLjQsLTIuMiAzLjEsLTMuOCA0LjIsLTYuMSAxLjEsLTIuNiAyLjMsLTUuMyAzLjYsLTcuOSAxLjYsLTMuMyA3LjgsLTcuMyA3LjgsLTcuMyAwLDAgNSwyLjkgOC40LDQuOSAxLjIsMC43IDMsMC4xIDMuNywtMSAwLjcsLTEuMSAwLjgsLTIuMiAwLjMsLTMuMyAtMy4yLC02LjcgLTcuOCwtOS40IC03LjgsLTkuNCB6XCIsc3Ryb2tlOiExfSxpW1wiR1IuSUMuRkYuSU5GQU5UUllcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw2NUwxNTAsMTM1TTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgTDE3NSwxNTAgTTI1LDE1MCBMMTc1LDUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw0NUwxNTUsMTU1TTQ1LDE1NUwxNTUsNDVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTYwLDcwTDE0MCwxMzBNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLklORkFOVFJZIERJU01PVU5URURcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw2NUwxNTAsMTM1TTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDQ1LDcwIDExMCw2MCBNIDQ1LDEzMCAxNTUsNzBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1TDE1NSwxNTVNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsNzBMMTQwLDEzME02MCwxMzBMMTQwLDcwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuSU5URVJDRVBUXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDEyMCBsMCwtNjAgTTgwLDEyMCBsMjAsMjAgMjAsLTIwXCJ9LGlbXCJHUi5JQy5GRi5KQU1NSU5HXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjMsNjAgYzEwLDAgMCwxMCA3LDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDcsLTEwIE00MCw3NSBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDYwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgTTI1LDc1IGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNjAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCAgTTQ1LDc1IGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjcsNjAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMywxMCAgIE01Miw3NSBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDcsLTEwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5MQVcgRU5GT1JDRU1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTkuNiw1MSBjIC0yLjgsMCAtNSwyLjMgLTUsNS4zIDAsMi4xIDEuMiwzLjkgMi44LDQuNyBMIDg3LjgsNzguMyA2OS41LDc4LjQgYyAtMC4xLC0yLjggLTIuMywtNS4xIC01LC01LjEgLTIuOCwwIC01LDIuMyAtNSw1LjMgMCwyLjkgMi4yLDUuMyA1LDUuMyAwLjcsMCAxLjQsLTAuMiAyLC0wLjQgbCA5LjIsMTYuOCAtOS40LDE3LjIgYyAtMC42LC0wLjIgLTEuMiwtMC40IC0xLjgsLTAuNCAtMi44LDAgLTUsMi40IC01LDUuMyAwLDIuOSAyLjIsNS4zIDUsNS4zIDIuOCwwIDUsLTIuMyA1LC01LjMgMCwtMC4xIC0wLC0wLjIgLTAsLTAuMyBsIDE4LjMsMC4xIDkuNSwxNy4xIGMgLTEuNiwwLjkgLTIuNywyLjYgLTIuNyw0LjYgMCwyLjkgMi4zLDUuMyA1LDUuMyAyLjgsMCA1LC0yLjMgNSwtNS4zIDAsLTEuOSAtMC45LC0zLjUgLTIuMywtNC40IGwgOS42LC0xNy4zIDE4LjcsLTAuMSBjIC0wLDAuMSAtMCwwLjIgLTAsMC4zIDAsMi45IDIuMyw1LjMgNSw1LjMgMi44LDAgNSwtMi4zIDUsLTUuMyAwLC0yLjkgLTIuMiwtNS4zIC01LC01LjMgLTAuOCwwIC0xLjUsMC4yIC0yLjEsMC41IGwgLTkuNSwtMTcuNCA5LjUsLTE3LjQgYyAwLjYsMC4zIDEuNCwwLjUgMi4xLDAuNSAyLjgsMCA1LC0yLjQgNSwtNS4zIDAsLTIuOSAtMi4yLC01LjMgLTUsLTUuMyAtMi44LDAgLTUsMi4zIC01LDUuMyAwLDAuMSAwLDAuMiAwLDAuMyBMIDExMS44LDc4LjMgMTAyLjEsNjAuOCBjIDEuNSwtMC45IDIuNSwtMi42IDIuNSwtNC41IDAsLTIuOSAtMi4yLC01LjMgLTUsLTUuMyB6XCJ9LGlbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01NSw2NUw1NSwxMzVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTUsNTBMNTUsMTUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk01NSw0NUw1NSwxNTVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTU1LDcyTDU1LDEyOFwifX1bVF0saVtcIkdSLklDLkZGLk1FRElDQUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrUy5iYm94LnkxK1wiTDEwMCxcIitTLmJib3gueTIrXCJNXCIrUy5iYm94LngxK1wiLDEwMExcIitTLmJib3gueDIrXCIsMTAwXCJ9LGlbXCJHUi5JQy5GRi5NRURJQ0FMIFRIRUFURVJcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcwIGwwLC0xNDAgTTQwLDc1IGwxNSwyNSAtMTUsMjUgTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE01NSwxMDAgbDkwLDBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTUwIGwwLC0xMDAgTTI1LDUwIGwzMCw1MCAtMzAsNTAgTTE3NSw1MCBsLTMwLDUwIDMwLDUwIE01NSwxMDAgbDkwLDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1NSBsMCwtMTEwICBNNDUsNTAgbDIwLDUwIC0yMCw1MCBNMTU1LDUwIGwtMjAsNTAgMjAsNTAgTTY1LDEwMCBsNzAsMFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcyIGwwLC0xNDQgTTUwLDgwIGwxNSwyMCAtMTUsMjAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwIE02NSwxMDAgbDcwLDBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLk1FRElDQUwgQ09SUFNcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcwIGwwLC0xNDAgTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE0zMCwxMDAgbDExNSwwXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1MCBsMCwtMTAwICBNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTI1LDEwMCBsMTIwLDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1NSBsMCwtMTEwIE0xNTUsNTAgbC0yMCw1MCAyMCw1MCBNNDUsMTAwIGw5MCwwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxNzIgbDAsLTE0NCAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwIE0yOCwxMDAgbDExMCwwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXT1baVtcIkdSLklDLkZGLk1FRElDQUxcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTcwLDkwIGwwLDIwICBNMTMwLDkwIGwwLDIwXCJ9XSxpW1wiR1IuSUMuRkYuTUlMSVRBUlkgUE9MSUNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwxNDAgQyA1My43NDY1LDEyMi42NTQgNzEuMDkxNiw5NS42NzM3IDY1LjMwOTksNzAuNjE5NyBjIDExLjU2MzQsMTMuNDkwNiAyMy4xMjY3LDEzLjQ5MDYgMzQuNjkwMSwwIDExLjU2NCwxMy40OTA2IDIzLjEyNiwxMy40OTA2IDM0LjY5LDAgQyAxMjguOTA4LDk1LjY3MzcgMTQ2LjI1NCwxMjIuNjU0IDEwMCwxNDAgWlwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GRi5NT1RPUklaRURcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrUy5iYm94LnkxK1wiTDEwMCxcIitTLmJib3gueTJ9LGlbXCJHUi5JQy5GRi5OQVZBTFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDE0NSAxMDAsNjVcIixmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwibSA3MCw3MCA2MCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNTcuOCwxMDUuNSBjIC0yLjIsMC4xIDEuMywyMC42IDIuOCwyMi4xIDAuOCwwLjggMy41LC0zLjggNC42LC0yLjYgMTcuNCwyMC4yIDMzLDE5LjcgMzQuNywxOS42IDAsMCAwLjIsLTAgMC4zLDAgMS43LDAuMSAxNy4zLDAuNSAzNC43LC0xOS42IDEsLTEuMiAzLjcsMy40IDQuNiwyLjYgMS40LC0xLjUgNC45LC0yMS45IDIuOCwtMjIuMSAtMi4yLC0wLjEgLTQsNC4yIC02LjcsNi40IC0zLDIuNCAtNy41LDMuNCAtNy43LDQuNSAtMC4xLDAuOCA0LjksMy41IDMuOSw0LjkgLTUuMSw2LjMgLTE1LjEsMTYuNiAtMzEuMywxNyBsIC0wLjMsNC4zIC0wLjMsLTQuMyBjIC0xNi4yLC0wLjQgLTI2LjMsLTEwLjcgLTMxLjMsLTE3IC0xLjEsLTEuMyA0LC00LjEgMy45LC00LjkgLTAuMiwtMSAtNC43LC0yIC03LjcsLTQuNSAtMi43LC0yLjMgLTQuNSwtNi42IC02LjcsLTYuNCB6XCIsc3Ryb2tlOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo2MCxyOjUsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5QUklTT05cIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDYyLjUgNjcuOSBMIDYyLjUgNzMuNCBMIDY5LjkgNzMuNCBMIDY5LjkgMTA2IEMgNjYuOCAxMDYuNyA2NC40IDEwOS42IDY0LjQgMTEzLjQgQyA2NC40IDExNiA2NS44IDExNi45IDY1LjkgMTE4LjQgQyA2NiAxMjAuNCA2NS42IDEyMi41IDY1LjYgMTI0LjcgTCA2NS42IDEyNi42IEwgNjIuNSAxMjYuNiBMIDYyLjUgMTMyLjEgTCAxMzcuNSAxMzIuMSBMIDEzNy41IDEyNi42IEwgMTM2IDEyNi42IEwgMTM1LjYgMTE3LjUgQyAxMzguMyAxMTMuNCAxMzUuOCAxMDcgMTMxLjUgMTA2IEwgMTMxLjUgNzMuNCBMIDEzNy41IDczLjQgTCAxMzcuNSA2Ny45IEwgNjIuNSA2Ny45IHogTSA3NC41IDczLjQgTCA4Ny4yIDczLjQgTCA4Ny4yIDEwOC40IEMgODcuMiAxMDkuMiA4NC44IDEwOS43IDgzLjkgMTEwLjYgQyA4My4xIDExMS4zIDgyLjIgMTEyLjcgODEuNiAxMTMuNiBDIDgwLjUgMTE1LjIgNzguNiAxMTguNyA3OC42IDEyMS4xIEwgNzYuMSAxMTcgQyA3Ni41IDExNi40IDc2LjkgMTE0LjYgNzYuOSAxMTMuNyBMIDc2LjkgMTEyLjIgQyA3Ni45IDEwOS41IDc0LjUgMTA3LjkgNzQuNSAxMDYuNSBMIDc0LjUgNzMuNCB6IE0gOTEuNSA3My40IEwgMTEwLjIgNzMuNCBMIDExMC4yIDkwLjkgQyAxMDkgODkuNiAxMDguOCA4Ny44IDEwNi44IDg1LjcgQyAxMDUuNCA4NC4zIDEwMy41IDgzIDEwMC44IDgzIEwgMTAwLjMgODMgQyA5OC4yIDgzIDk2LjEgODMuNiA5NC45IDg0LjUgQyA5NC4zIDg1IDkzLjYgODUuNCA5My4xIDg2IEMgOTIuNCA4Ni42IDkyLjIgODcuMyA5MS41IDg3LjggTCA5MS41IDczLjQgeiBNIDExNC4zIDczLjQgTCAxMjcuMiA3My40IEwgMTI3LjIgMTA2LjUgQyAxMjcuMiAxMDYuOSAxMjQuOCAxMDkuMiAxMjQuNCAxMTEuMSBDIDEyMy43IDExNC4yIDEyNC41IDExNC42IDEyNSAxMTcgTCAxMjMuMyAxMjAuMiBDIDEyMi43IDExOC4zIDEyMC43IDExNSAxMTkuNyAxMTMuNSBDIDExOC4zIDExMS40IDExNy4zIDEwOS4xIDExNC4zIDEwOC45IEwgMTE0LjMgNzMuNCB6IE0gOTkuNyA4NC45IEwgMTAwLjYgODQuOSBDIDEwNC44IDg0LjkgMTA4LjUgOTAuNCAxMDguNSA5NC43IEwgMTA4LjUgOTYuNCBDIDEwOC41IDEwMC40IDEwNSAxMDYuMiAxMDEuMyAxMDYuMiBMIDk5LjQgMTA2LjIgQyA5NC45IDEwNi4yIDkxLjQgMTAwLjIgOTEuNiA5NS41IEMgOTEuOCA5MC43IDk0LjkgODQuOSA5OS43IDg0LjkgeiBNIDExMC4zIDEwMC41IEwgMTEwLjIgMTA2LjkgTCAxMDYuNyAxMDYuMyBMIDExMC4zIDEwMC41IHogTSA5MS41IDEwMy42IEwgOTQuMyAxMDYuOCBMIDkxLjUgMTA3LjQgTCA5MS41IDEwMy42IHogTSA3MC43IDEwNy45IEMgNzIuOSAxMDcuOSA3NC43IDExMC40IDc0LjcgMTEyLjcgTCA3NC43IDExMy40IEMgNzQuNyAxMTcuOSA3MCAxMjAuMiA2Ny42IDExNi43IEMgNjUuNyAxMTMuOCA2Ni45IDEwNy45IDcwLjcgMTA3LjkgeiBNIDEzMC42IDEwNy45IEMgMTMyLjggMTA3LjkgMTM0LjQgMTEwLjggMTM0LjQgMTEzLjIgTCAxMzQuNCAxMTMuNCBDIDEzNC40IDExNi43IDEzMyAxMTYuNyAxMzIgMTE4LjIgTCAxMjguOSAxMTguMyBMIDEyNi43IDExNS40IEwgMTI2LjUgMTEzLjIgQyAxMjYuMSAxMTEgMTI4LjIgMTA3LjkgMTMwLjYgMTA3LjkgeiBNIDEwNS45IDEwOC4yIEMgMTA3LjIgMTA4LjIgMTA4LjkgMTA5IDExMC4yIDEwOS4zIEwgMTEwLjIgMTI2LjYgTCA5MS41IDEyNi42IEwgOTEuNSAxMTAuMSBDIDkxLjUgMTA4LjYgOTYuNiAxMDguOSA5OC40IDEwOC45IEMgMTAxLjEgMTA4LjkgMTA0IDEwOC4yIDEwNS45IDEwOC4yIHogTSAxMTQuMyAxMTAuOCBDIDExNy4yIDExMi4zIDExNy40IDExMy40IDExOSAxMTYuNCBDIDEyMC4xIDExOC41IDEyMS43IDEyMC45IDEyMS43IDEyNCBDIDEyMS45IDEyNC4yIDEyMi4zIDEyNC45IDEyMi43IDEyNC45IEMgMTI0IDEyNC45IDEyNS41IDExOS44IDEyNi43IDExOC45IEwgMTI2LjcgMTE5LjQgTCAxMjcuMiAxMTkuNCBMIDEyNy4yIDEyNi42IEwgMTE0LjMgMTI2LjYgTCAxMTQuMyAxMTAuOCB6IE0gODcuMiAxMTEuMyBMIDg3LjIgMTI2LjYgTCA3NC41IDEyNi42IEwgNzQuNSAxMTguOSBDIDc1LjggMTE5LjQgNzcuNCAxMjUuNCA3OC42IDEyNS40IEMgODAuNiAxMjUuNCA4MC43IDExOS42IDgxLjkgMTE3LjUgQyA4My4yIDExNS4zIDg0LjQgMTExLjkgODcuMiAxMTEuMyB6IE0gMTMzLjYgMTE5LjcgTCAxMzMuOSAxMjYuNiBMIDEzMS41IDEyNi42IEwgMTMxLjUgMTIwLjQgTCAxMzMuNiAxMTkuNyB6IE0gNjguMSAxMTkuOSBDIDY4LjYgMTIwLjEgNjkuOSAxMjAuMyA2OS45IDEyMS4xIEwgNjkuOSAxMjYuNiBMIDY3LjcgMTI2LjYgTCA2OC4xIDExOS45IHpcIn0saVtcIkdSLklDLkZGLkpBSUwgQlJFQUtcIl09W2lbXCJHUi5JQy5GRi5QUklTT05cIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tld2lkdGg6NSxkOlwibSA3MCwxMzAgTDEzMCw3MFwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCwxMzVMMTUwLDY1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDE1MEwxNzUsNTBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDE1NUwxNTUsNDVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTYwLDEzMEwxNDAsNzBcIn19W1RdLGlbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRSBESVNNT1VOVEVEXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTAsMTM1TDE1MCw2NVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNDUsMTMwIDE1NSw3MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFIEVRVVBJTUVOVFwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDUwLjYgMTMyLjkgTCAxNDkuMyA2N1wifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLlNFQVJDSFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTQ1IDAsLTkwIG0gMzAsNjUgLTMwLDI1IC0zMCwtMjVcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuU0VOU09SXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTVwiK1MuYmJveC54MStcIiwxMDAgTDc1LDEwMCBNXCIrKDIwMC1TLmJib3gueDEpK1wiLDEwMCBMMTI1LDEwMFwifSx7dHlwZTpcInBhdGhcIixkOlwiTTY1LDg1IGw3MCwwIC0xNSwzMCAtNDAsMCB6XCIsZmlsbDohIVImJkd9XSxpW1wiR1IuSUMuRkYuU0lHTkFMXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01MCw2NSAxMDAsMTEwIDEwMCw5MCAxNTAsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsNTAgMTAwLDExMCAxMDAsOTAgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSw0NSAxMDAsMTEwIDEwMCw5MCAxNTUsMTU1XCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTU3LDcwIDEwMCwxMTAgMTAwLDkwIDE0MywxMzBcIn19W1RdLGlbXCJHUi5JQy5GRi5TSUdOQUwgRElTTU9VTlRFRFwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTAsNjUgMTAwLDExMCAxMDAsOTAgMTUwLDEzNVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA1Miw2Ni44IDEwMCwxMTAgbCAwLC0yMCA0Ny45LDQzLjFcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNDUsNDUgMTAwLDExMCAxMDAsOTAgMTU1LDE1NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01Nyw3MCAxMDAsMTEwIDEwMCw5MCAxNDMsMTMwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuU09VTkRcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNXCIrUy5iYm94LngxK1wiLDEwMCBMNzUsMTAwIE1cIisoMjAwLVMuYmJveC54MSkrXCIsMTAwIEwxMjUsMTAwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJNNjUsODUgbDcwLDAgLTE1LDMwIC00MCwwIHpcIixmaWxsOiEhUiYmR30se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJTXCJ9XSxpW1wiR1IuSUMuRkYuU1VQUExZXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsMTIwIGwxMzAsMCBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxMjAgbDE1MCwwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDEyMCBsMTEwLDBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTAsMTIwIGwxMDAsMCBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwiTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE0zNSwxMjAgbDEyMCwwXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTI1LDEyMCBsMTM1LDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTU1LDUwIGwtMjAsNTAgMjAsNTAgTTQ1LDEyMCBsMTAwLDBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTUwLDgwIGwtMTUsMjAgMTUsMjAgTTUwLDEyMCBsMTAwLDBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBESVZJU0lPTiBBTkQgQkVMT1dcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIm0gNDUsMTIwIDEyMCwwIE0gNDAsNzUgNTUsMTAwIDQwLDEyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwibSA0NSwxMjAgMTMwLDAgTSAyNSw1MCA1NSwxMDAgMjUsMTUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwibSA1NywxMjAgOTgsMCBNIDQ1LDUwIDY1LDEwMCA0NSwxNTBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDUwLDEyMCAxMDAsMCBNIDUwLDgwIDY1LDEwMCA1MCwxMjBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDAsNzUgbDE1LDI1IC0xNSwyNSBNMTYwLDc1IGwtMTUsMjUgMTUsMjUgTTQ1LDEyMCBsMTEwLDAgXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgbDMwLDUwIC0zMCw1MCBNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTQwLDEyMCBsMTIwLDAgXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiIE00NSw1MCBsMjAsNTAgLTIwLDUwIE0xNTUsNTAgbC0yMCw1MCAyMCw1MCBNNTUsMTIwIGw5MCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw4MCBsMTUsMjAgLTE1LDIwIE0xNTAsODAgbC0xNSwyMCAxNSwyMCBNNTAsMTIwIGwxMDAsMFwiLGZpbGw6ITF9fVtUXSxpW1wiR1IuSUMuRkYuQ0xBU1MgQUxMXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQUxMXCJ9LGlbXCJHUi5JQy5GRi5DTEFTUyBNVUxUSVBMRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1VTFRcIn0saVtcIkdSLklDLkZGLkNMQVNTIElcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDg1IGMgLTUsMTAgLTUsMjAgMCwzMCBtIDAsLTMwIGMgLTIwLDAgLTIwLDMwIDAsMzBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgSVwiXT1hKFwiSVwiKSxpW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl09aVtcIkdSLklDLlFVQVJURVJNQVNURVJcIl0saVtcIkdSLklDLkZGLk5BVE8gU1VQUExZIENMQVNTIElJXCJdPWEoXCJJSVwiKSxpW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMjAgMCwtMjAgLTE1LC0yMCAzMCwwIC0xNSwyMCBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl09aVtcIkdSLklDLkVOR0lORUVSXCJdLGlbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJVlwiXT1hKFwiSVZcIiksaVtcIkdSLklDLkZGLkNMQVNTIFZcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsMTE1IDAsLTI1IGMgMCwtMTAgMjAsLTEwIDIwLDAgbCAwLDI1IG0gLTI1LDAgMzAsMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5JTlRFUlBSRVRFUi9UUkFOU0xBVE9SXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSw5MCAxNSwwIDAsLTEwIDIwLDIwIC0yMCwyMCAwLC0xMCAtMTUsMCB6XCIsZmlsbDpHfSx7dHlwZTpcInBhdGhcIixkOlwibSAxMzUsOTAgLTE1LDAgMCwtMTAgLTIwLDIwIDIwLDIwIDAsLTEwIDE1LDAgelwifV0saVtcIkdSLklDLkZGLk5BVE8gU1VQUExZIENMQVNTIEFMTFwiXT1hKFwiQUxMXCIpLGlbXCJHUi5JQy5GRi5DTEFTUyBWSVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6ODUscjo1LGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDk1IDMwLDAgbSAtMTUsMTUgMCwtMjAgbSAtMTAsMzAgMTAsLTEwIDEwLDEwXCIsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTAwLHI6N30se3R5cGU6XCJjaXJjbGVcIixjeDoxMjUsY3k6MTAwLHI6N30se3R5cGU6XCJwYXRoXCIsZDpcIk03NSwxMDAgYzAsLTIwIDUwLC0yMCA1MCwwXCIsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC05MCBNMTY1LDgwIGwtMTMwLDBcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC03MCBNMTc1LDgwIGwtMTUwLDBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtNzUgTTE1NSw4MCBsLTExMCwwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkyIE0xNTMsODAgbC0xMDYsMFwifX1bVF0saVtcIkdSLklDLkZGLkNMQVNTIFZJSUkuVEhFQVRFUlwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtOTAgTTE1NSw4MCBsLTExMCwwXCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtNzAgTTE1NSw4MCBsLTExMCwwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTc1IE0xNDUsODAgbC05MCwwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkyIE0xNTMsODAgbC0xMDYsMFwifX1bVF0saVtcIkdSLklDLkZGLkNMQVNTIFZJSUkuQ09SUFNcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkwIE0xNTUsODAgbC0xMjAsMFwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTcwIE0xNTUsODAgbC0xMzAsMFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC03NSBNMTQ1LDgwIGwtMTAwLDBcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtOTIgTTE1Myw4MCBsLTEwNiwwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuQ0xBU1MgSVhcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTAgMCwxMCBtIDAsLTMwIDAsLTEwIG0gOC43LDE0LjIgOC40LC00LjggbSAtOC40LDE1LjkgOCw1LjQgbSAtMjUuNCwtNS40IC04LjIsNS40IG0gOC4yLC0xNi4zIC04LC01LjRcIixmaWxsOiExfV0saVtcIkdSLklDLkVRVUlQTUVOVCBNQU5VRkFDVFVSRVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjAsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDEyMCAwLDIwIG0gMCwtNjAgMCwtMjAgbSAxOC4xLDI4LjQgMTYsLTkuNiBtIC0xNiwzMS4yIDE2LDEyIE0gODIuNSwxMTAgNjYuMSwxMjIgTSA4Mi41LDg4LjggNjYuNSw3OFwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkNBXCJ9LGlbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk00MCw3NSBsMTUsMjUgLTE1LDI1IE0xNjAsNzUgbC0xNSwyNSAxNSwyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDUwIGwzMCw1MCAtMzAsNTAgTTE3NSw1MCBsLTMwLDUwIDMwLDUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDUwIGwyMCw1MCAtMjAsNTAgTTE1NSw1MCBsLTIwLDUwIDIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDgwIGwxNSwyMCAtMTUsMjAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5VUyBNQVJTSEFMUyBTRVJWSUNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw3MCA3LjEsMjAuMyAyMS41LDAuNCAtMTcuMSwxMyA2LjIsMjAuNiBMIDEwMCwxMTIgODIuNCwxMjQuMyA4OC42LDEwMy43IDcxLjUsOTAuNyA5Mi45LDkwLjMgeiBtIDAsLTUgYyAtMTkuMywwIC0zNSwxNS43IC0zNSwzNSAwLDE5LjMgMTUuNywzNSAzNSwzNSAxOS4zLDAgMzUsLTE1LjcgMzUsLTM1IDAsLTE5LjMgLTE1LjcsLTM1IC0zNSwtMzUgeiBtIDAsNSBjIDE2LjYsMCAzMCwxMy40IDMwLDMwIDAsMTYuNiAtMTMuNCwzMCAtMzAsMzAgLTE2LjYsMCAtMzAsLTEzLjQgLTMwLC0zMCAwLC0xNi42IDEzLjQsLTMwIDMwLC0zMCB6XCJ9LGlbXCJHUi5NMS5BQ0NJREVOVFwiXT1sKFwiQUNDXCIpLGlbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTg1LDU1IEwxMDAsNzUgMTE1LDU1XCJ9LGlbXCJHUi5NMS5BUk1PUkVEXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsNjAgMjAsMCBjIDEwLDAgMTAsMTUgMCwxNSBMIDkwLDc1IEMgODAsNzUgODAsNjAgOTAsNjBcIn0saVtcIkdSLk0xLkNBUkdPXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDYwIDAsMTUgLTE1LDAgMCwtMTUgMzAsMCAwLDE1IC0xNSwwXCJ9LGlbXCJHUi5NMS5BTU1VTklUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTUsNzUgTDk1LDYwIEM5NSw1NSAxMDUsNTUgMTA1LDYwIEwxMDUsNzUgTTkwLDc1IEwxMTAsNzVcIixmaWxsOiExfSxpW1wiR1IuTTEuQU1QSElCSU9VUyBXQVJGQVJFIFNISVAgXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDExMyw3NSAxMDAsNzUgOTAsNjQuMyA5NSw2NSBsIDAsLTggMTAsMCAwLDggNS41LC0wLjYgTCAxMDAsNzVcIn0saVtcIkdSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFwiUFwiKSxpW1wiR1IuTTEuQVJFQVwiXT1sKFwiQVJFQVwiKSxpW1wiR1IuTTEuQVJNWVwiXT1sKFwiWFhYWFwiKSxpW1wiR1IuTTEuQVRUQUNLXCJdPWwoXCJBXCIpLGlbXCJHUi5NMS5BVklBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3NSw2MCAwLDE1IDUwLC0xNSAwLDE1IHpcIn0saVtcIkdSLk0xLkJBVFRBTElPTlwiXT1sKFwiSUlcIiksaVtcIkdSLk0xLkJJT0xPR0lDQUxcIl09bChcIkJcIiksaVtcIkdSLk0xLkJPUkRFUlwiXT1sKFwiQk9SXCIpLGlbXCJHUi5NMS5CUklER0lOR1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDgwIDUsLTUgMzAsMCA1LDUgbSAtNDAsLTIwIDUsNSAzMCwwIDUsLTVcIn0saVtcIkdSLk0xLkJSSUdBREVcIl09bChcIlhcIiksaVtcIkdSLk0xLkNIRU1JQ0FMXCJdPWwoXCJDXCIpLGlbXCJHUi5NMS5JTlRSVVNJT05cIl09bChcIklcIiksaVtcIkdSLk0xLkNIRU1JQ0FMIFNVUlZFSUxMQU5DRVwiXT1sKFwiUlNcIiksaVtcIkdSLk0xLkNJVklMSUFOXCJdPWwoXCJDSVZcIiksaVtcIkdSLk0xLkNMT1NFIFBST1RFQ1RJT05cIl09bChcIkNMUFwiKSxpW1wiR1IuTTEuQ09NQkFUXCJdPWwoXCJDQlRcIiksaVtcIkdSLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl09bChcIkMyXCIpLGlbXCJHUi5NMS5DT01NQU5EIEFORCBDT05UUk9MIFJPVEFSWSBXSU5HXCJdPWwoUj9cIllcIjpcIkMyXCIpLGlbXCJHUi5NMS5USUxULVJPVE9SXCJdPWwoXCJUUlwiKSxpW1wiR1IuTTEuQ09NTUFORCBQT1NUIE5PREVcIl09bChcIkNQTlwiKSxpW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXT1sKFwiQ0NQXCIpLGlbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzUsZm9udHNpemU6MjAsdGV4dDpcIkNPTlNUXCJ9LGlbXCJHUi5NMS5DT01QQU5ZXCJdPWwoXCJJXCIpLGlbXCJHUi5NMS5DT1JQU1wiXT1sKFwiWFhYXCIpLGlbXCJHUi5NMS5DUk9TUyBDVUxUVVJBTCBDT01NVU5JQ0FUSU9OXCJdPWwoXCJDQ0NcIiksaVtcIkdSLk0xLkNST1dEIEFORCBSSU9UIENPTlRST0xcIl09bChcIkNSQ1wiKSxpW1wiR1IuTTEuREVDT05UQU1JTkFUSU9OXCJdPWwoXCJEXCIpLGlbXCJHUi5NMS5ERVRFTlRJT05cIl09bChcIkRFVFwiKSxpW1wiR1IuTTEuREVQVVRZXCJdPWwoXCJERVBcIiksaVtcIkdSLk0xLkRJUkVDVCBDT01NVU5JQ0FUSU9OU1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDk1LDY1IC01LDUgNSw1IG0gMTAsLTEwIDUsNSAtNSw1IE0gOTAsNzAgYyAyMCwwIDIwLDAgMjAsMCBtIDE1LDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHogbSAtNDAsMCBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgelwifSxpW1wiR1IuTTEuRElWSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTA0LjYsNjQuOCBjIDAsMi43IC0yLjEsNC44IC00LjYsNC44IC0yLjUsMCAtNC42LC0yLjIgLTQuNiwtNC44IDAsLTIuNyAyLjEsLTQuOCA0LjYsLTQuOCAyLjUsMCA0LjYsMi4yIDQuNiw0LjggeiBtIDAsOC43IDQuNiw0LjggLTE4LjMsMCA0LjYsLTQuOCBNIDEwOC4zLDYwIGwgNC42LDAgMCw5LjYgLTQuNiwwIG0gLTE2LjUsMCAtNC42LDAgMCwtOS42IDQuNiwwIG0gMTcuNCw0LjggYyAwLDUuMyAtNC4xLDkuNiAtOS4yLDkuNiAtNS4xLDAgLTkuMiwtNC4zIC05LjIsLTkuNiAwLC01LjMgNC4xLC05LjYgOS4yLC05LjYgNS4xLDAgOS4yLDQuMyA5LjIsOS42IHpcIn0saVtcIkdSLk0xLkRJVklTSU9OXCJdPWwoXCJYWFwiKSxpW1wiR1IuTTEuTUFSSU5FIERJVklTSU9OXCJdPWwoXCJEXCIpLGlbXCJHUi5NMS5ET0dcIl09bChcIkRPR1wiKSxpW1wiR1IuTTEuRFJJTExJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsNjAgNSwxNSAxMCwwIDUsLTE1IHpcIn0saVtcIkdSLk0xLkVMRUNUUk8tT1BUSUNBTFwiXT1sKFwiRU9cIiksaVtcIkdSLk0xLkVOSEFOQ0VEXCJdPWwoXCJFTkhcIiksaVtcIkdSLk0xLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXT1sKFwiRU9EXCIpLGlbXCJHUi5NMS5FQVJMWSBXQVJOSU5HIFJBREFSXCJdPWwoXCJFV1JcIiksaVtcIkdSLk0xLkZJUkUgRElSRUNUSU9OIENFTlRSRVwiXT1sKFwiRkRDXCIpLGlbXCJHUi5NMS5GT1JDRVwiXT1sKFwiRlwiKSxpW1wiR1IuTTEuRk9SV0FSRFwiXT1sKFwiRldEXCIpLGlbXCJHUi5NMS5HUk9VTkQgU1RBVElPTiBNT0RVTEVcIl09bChcIkdTTVwiKSxpW1wiR1IuTTEuSElKQUNLSU5HXCJdPWwoXCJIXCIpLGlbXCJHUi5NMS5JTkRJVklEVUFMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk04NSw2NSBsMzAsMFwifSxpW1wiR1IuTTEuSU5UUlVTSU9OXCJdPWwoXCJJXCIpLGlbXCJHUi5NMS5KMVwiXT1sKFwiSjFcIiksaVtcIkdSLk0xLkoyXCJdPWwoXCJKMlwiKSxpW1wiR1IuTTEuSjNcIl09bChcIkozXCIpLGlbXCJHUi5NMS5KNFwiXT1sKFwiSjRcIiksaVtcIkdSLk0xLko1XCJdPWwoXCJKNVwiKSxpW1wiR1IuTTEuSjZcIl09bChcIko2XCIpLGlbXCJHUi5NMS5KN1wiXT1sKFwiSjdcIiksaVtcIkdSLk0xLko4XCJdPWwoXCJKOFwiKSxpW1wiR1IuTTEuSjlcIl09bChcIko5XCIpLGlbXCJHUi5NMS5KT0lOVCBORVRXT1JLIE5PREVcIl09bChcIkpOTlwiKSxpW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdPWwoXCJMU1wiKSxpW1wiR1IuTTEuTEFSR0UgQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXT1sKFwiTENDUFwiKSxpW1wiR1IuTTEuTEFSR0UgRVhURU5TSU9OIE5PREVcIl09bChcIkxFTlwiKSxpW1wiR1IuTTEuTE9BRCBIQU5ETElORyBTWVNURU1cIl09bChcIkxIU1wiKSxpW1wiR1IuTTEuTUFJTlRFTkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NCw3MCAzMiwwIG0gNCwtNSBjIC01LDAgLTUsMTAgMCwxMCBNIDgwLDY1IGMgNSwwIDUsMTAgMCwxMFwifSxpW1wiR1IuTTEuTUVERVZBQ1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05NS41LDgwIGw5LDAgMCwtOSA5LDAgMCwtOSAtOSwwIDAsLTkgLTksMCAwLDkgLTksMCAwLDkgOSwwIFpcIn0saVtcIkdSLk0xLk1FVEVPUk9MT0dJQ0FMXCJdPWwoXCJNRVRcIiksaVtcIkdSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVcIl09bChcIk1DTVwiKSxpW1wiR1IuTTEuTUlTU0lMRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTk1LDgwIEw5NSw2MCBDOTUsNTUgMTA1LDU1IDEwNSw2MCBMMTA1LDgwIE0xMDAsODAgTDEwMCw1NVwiLGZpbGw6ITF9LGlbXCJHUi5NMS4oTU9CSUxFKSBBRFZJU09SIEFORCBTVVBQT1JUXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw2NSA1LDUgLTUsNSBNIDkwLDcwIGMgMjAsMCAyMCwwIDIwLDAgbSAxNSwwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTQwLDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHpcIixmaWxsOiExfSxpW1wiR1IuTTEuTU9CSUxFIFNVQlNDUklCRVIgRVFVSVBNRU5UXCJdPWwoXCJNU0VcIiksaVtcIkdSLk0xLk1PQklMSVRZIEFTU0FVTFRcIl09bChcIk1BXCIpLGlbXCJHUi5NMS5NT0JJTElUWSBTVVBQT1JUXCJdPWwoXCJNU1wiKSxpW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl09bChcIk1DQ1wiKSxpW1wiR1IuTTEuTVVMVElOQVRJT05BTFwiXT1sKFwiTU5cIiksaVtcIkdSLk0xLk1VTFRJTkFUSU9OQUwgU1BFQ0lBTElaRUQgVU5JVFwiXT1sKFwiTVNVXCIpLGlbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk04NSw3NSBsMTUsLTE1IDE1LDE1IE04NSw2NyBsMTUsLTE1IDE1LDE1XCIsZmlsbDohMX0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjFcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjJcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDNcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjNcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjRcIn0saVtcIkdSLk0xLk5BVkFMXCJdPXMuX3RyYW5zbGF0ZSgwLC0zNSxzLl9zY2FsZSguNixpW1wiR1IuSUMuTkFWQUxcIl0pKSxpW1wiR1IuTTEuTk9ERSBDRU5UUkVcIl09bChcIk5DXCIpLGlbXCJHUi5NMS5OVUNMRUFSXCJdPWwoXCJOXCIpLGlbXCJHUi5NMS5PRi0xXCJdPWwoXCJPRi0xXCIpLGlbXCJHUi5NMS5PRi0yXCJdPWwoXCJPRi0yXCIpLGlbXCJHUi5NMS5PRi0zXCJdPWwoXCJPRi0zXCIpLGlbXCJHUi5NMS5PRi00XCJdPWwoXCJPRi00XCIpLGlbXCJHUi5NMS5PRi01XCJdPWwoXCJPRi01XCIpLGlbXCJHUi5NMS5PRi02XCJdPWwoXCJPRi02XCIpLGlbXCJHUi5NMS5PRi03XCJdPWwoXCJPRi03XCIpLGlbXCJHUi5NMS5PRi04XCJdPWwoXCJPRi04XCIpLGlbXCJHUi5NMS5PRi05XCJdPWwoXCJPRi05XCIpLGlbXCJHUi5NMS5PRi0xMFwiXT1sKFwiT0YtMTBcIiksaVtcIkdSLk0xLk9GLURcIl09bChcIk9GLURcIiksaVtcIkdSLk0xLk9QRVJBVElPTlNcIl09bChcIk9QU1wiKSxpW1wiR1IuTTEuT1BUSUNBTFwiXT1sKFwiT1BUXCIpLGlbXCJHUi5NMS5PUi0xXCJdPWwoXCJPUi0xXCIpLGlbXCJHUi5NMS5PUi0yXCJdPWwoXCJPUi0yXCIpLGlbXCJHUi5NMS5PUi0zXCJdPWwoXCJPUi0zXCIpLGlbXCJHUi5NMS5PUi00XCJdPWwoXCJPUi00XCIpLGlbXCJHUi5NMS5PUi01XCJdPWwoXCJPUi01XCIpLGlbXCJHUi5NMS5PUi02XCJdPWwoXCJPUi02XCIpLGlbXCJHUi5NMS5PUi03XCJdPWwoXCJPUi03XCIpLGlbXCJHUi5NMS5PUi04XCJdPWwoXCJPUi04XCIpLGlbXCJHUi5NMS5PUi05XCJdPWwoXCJPUi05XCIpLGlbXCJHUi5NMS5PVEhFUlwiXT1sKFwiT1RIXCIpLGlbXCJHUi5NMS5QQUxMRVRJWkVEIExPQUQgU1lTVEVNXCJdPWwoXCJQTFNcIiksaVtcIkdSLk0xLlBFUlNPTk5FTCBSRUNPVkVSWVwiXT1sKFwiSFwiKSxpW1wiR1IuTTEuUExBVE9PTlwiXT1be3R5cGU6XCJjaXJjbGVcIixzdHJva2U6ITEsY3g6ODAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMDAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMjAsY3k6Njgscjo4fV0saVtcIkdSLk0xLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsNTUgYyAwLjEsMjEuNCAxMS43LDI0LjYgMjUsMjUgTSAxMTYsNTUgMTAxLDY3LjUgMTAxLDU1IDg2LjYsNjYuOVwifSxpW1wiR1IuTTEuUkFESU8gRlJFUVVFTkNZIElERU5USUZJQ0FUSU9OIChSRklEKSBJTlRFUlJPR0FUT1IvIFNFTlNPUlwiXT1sKFwiUkZcIiksaVtcIkdSLk0xLlJBSUxST0FEXCJdPXMuX3RyYW5zbGF0ZSgwLC01MCxbe3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0pLGlbXCJHUi5NMS5SQURJT0xPR0lDQUxcIl09bChcIlJBRFwiKSxpW1wiR1IuTTEuUkFOR0VSXCJdPWwoXCJSR1JcIiksaVtcIkdSLk0xLlJFQ09OXCJdPWwoXCJSXCIpLGlbXCJHUi5NMS5SRUdJTUVOVFwiXT1sKFwiSUlJXCIpLGlbXCJHUi5NMS5SRVRSQU5TTUlTU0lPTiBTSVRFXCJdPWwoXCJSVE5TXCIpLGlbXCJHUi5NMS5ST0JPVElDXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw1Mi43IDE0LjksMTQuOCBjIDAuNCwtMC4zIDAuOSwtMC40IDEuNCwtMC40IDEuNSwwIDIuNywxLjIgMi43LDIuNyAwLDEuNCAtMS4yLDIuNyAtMi43LDIuNyAtMS41LDAgLTIuNywtMS4zIC0yLjcsLTIuNyAwLC0wLjQgMC4xLC0wLjcgMC4yLC0xIGwgLTEwLjQsLTUuMiAtMi41LDguNiBjIDAuMiwwLjEgMC40LDAuMiAwLjYsMC4zIDAuNywwLjUgMS4yLDEuMyAxLjIsMi4zIDAsMS41IC0xLjIsMi43IC0yLjcsMi43IC0wLjU1LDAgLTEuMDYsLTAuMiAtMS40OSwtMC41IC0wLjczLC0wLjQgLTEuMjIsLTEuMyAtMS4yMiwtMi4yIDAsLTEuMiAwLjc3LC0yLjIgMS44NSwtMi42IGwgLTIuNTMsLTguNiAtMTAuNDIsNS4yIGMgMC4xMiwwLjMgMC4xOCwwLjYgMC4xOCwxIDAsMS41IC0xLjIxLDIuNyAtMi43LDIuNyAtMS40OSwwIC0yLjcsLTEuMiAtMi43LC0yLjcgMCwtMS41IDEuMjEsLTIuNyAyLjcsLTIuNyAwLjUyLDAgMS4wMSwwLjEgMS40MiwwLjQgbCAxNC45LC0xNC44IDAsMCAwLDAgelwiLHN0cm9rZTohMX0saVtcIkdSLk0xLkFTU0FVTFRcIl09bChcIkFTTFRcIiksaVtcIkdSLk0xLldFQVBPTlwiXT1sKFwiV1BOXCIpLGlbXCJHUi5NMS5XRUFQT05TXCJdPWwoXCJXXCIpLGlbXCJHUi5NMS5DUklNSU5BTCBJTlZFU1RJR0FUSU9OIERJVklTSU9OXCJdPWwoXCJDSURcIiksaVtcIkdSLk0xLkRJR0lUQUxcIl09bChcIkRJR1wiKSxpW1wiR1IuTTEuTkVUV09SSyBPUiBORVRXT1JLIE9QRVJBVElPTlNcIl09bChcIk5FVFwiKSxpW1wiR1IuTTEuQUlSRklFTEQsIEFFUklBTCBQT1JUIE9GIERFQkFSS0FUSU9OLCBPUiBBRVJJQUwgUE9SVCBPRiBFTUJBUktBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4MCw3MCA0MCwwIE0gODAsODAgMTExLDU1XCIsZmlsbDohMX0saVtcIkdSLk0xLlBJUEVMSU5FXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkyLDY2IC0xMiwwIG0gMTIsOCAtMTIsMCBtIDI4LDAgMTIsMCBtIC0xMiwtOCAxMiwwIG0gLTIwLC0xMSAwLDcgbSAtNSwtNyAxMCwwIG0gLTEzLDcgMCwxNiAxNiwwIDAsLTE2IC0xNiwwXCIsZmlsbDohMX0saVtcIkdSLk0xLlBPU1RBTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw2MCAxNSwwIGMgMCw1IDAsMTAgMTAsMTUgLTE1LDAgLTIwLDAgLTI1LC0xNVwiLGZpbGw6ITF9LGlbXCJHUi5NMS5XQVRFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw1NSAyMCwwIG0gLTEwLDEwIDAsLTEwIG0gLTI1LDEwIDQwLDAgYyAxMCwwIDE1LDUgMTUsMTBcIixmaWxsOiExfSxpW1wiR1IuTTEuSU5ERVBFTkRFTlQgQ09NTUFORFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTEuOCw1OS4yIDAsMTUuOCBtIC03LjksLTcuOSAxNS44LDAgbSAtMzEuNiwtNy45IDAsMTUuOCBtIDcuOSwtNy45IC0xNS44LDBcIixmaWxsOiExfSxpW1wiR1IuTTEuTVVMVEktUFVSUE9TRSBCTEFERVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4MCw2NSAyMCwtMTAgMjAsMTAgbSAtMjAsMTUgMCwtMjVcIixmaWxsOiExfSxpW1wiR1IuTTEuVEFOSy1XSURUSCBNSU5FIFBMT1dcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsNjUgNSwtMi41IG0gNSwtMi41IDUsLTIuNSBtIDEwLDAgNSwyLjUgbSA1LDIuNSA1LDIuNSBtIC0yMCwxNSAwLC0yMFwiLGZpbGw6ITF9LGlbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl09bChcIlJSQ1wiKSxpW1wiR1IuTTEuU0VBUkNIIEFORCBSRVNDVUVcIl09bChcIlNBUlwiKSxpW1wiR1IuTTEuU0VDVElPTlwiXT1be3R5cGU6XCJjaXJjbGVcIixzdHJva2U6ITEsY3g6OTAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMTAsY3k6Njgscjo4fV0saVtcIkdSLk0xLlNFQ1VSSVRZXCJdPWwoXCJTRUNcIiksaVtcIkdSLk0xLlNFTlNPUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNTUgYyAtMiw1IC01LDggLTEwLDEwIDUsMiA4LDUgMTAsMTAgMiwtNSA1LC04IDEwLC0xMCAtNSwtMiAtOCwtNSAtMTAsLTEwIHpcIn0saVtcIkdSLk0xLlNFTlNPUiBDT05UUk9MIE1PRFVMRVwiXT1sKFwiU0NNXCIpLGlbXCJHUi5NMS5TSUdOQUxTIElOVEVMTElHRU5DRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw1NSAwLDIzIG0gLTE1LC0xOCA1LC01IDUsNSA1LC01IDUsNSA1LC01IDUsNVwifSxpW1wiR1IuTTEuU0lHTkFMIFNVUFBPUlRcIl09bChcIlNQVFwiKSxpW1wiR1IuTTEuU0lOR0xFIFNIRUxURVIgU1dJVENIXCJdPWwoXCJTU1NcIiksaVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk04NSw3NSBsMTUsLTE1IDE1LDE1XCIsZmlsbDohMX0saVtcIkdSLk0xLlNNQUxMIEVYVEVOU0lPTiBOT0RFXCJdPWwoXCJTRU5cIiksaVtcIkdSLk0xLlNNT0tFXCJdPWwoXCJTXCIpLGlbXCJHUi5NMS5TTU9LRS9ERUNPTlwiXT1sKFwiU0RcIiksaVtcIkdSLk0xLlNOSVBFUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTTc1LDYwIGwyMCwwIE0xMDAsNzYgbDAsLTE4IE0xMjUsNjAgbC0yMCwwXCIsZmlsbDohMX0saVtcIkdSLk0xLlNPVU5EIFJBTkdJTkdcIl09bChcIlNEUlwiKSxpW1wiR1IuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFUyAoU09GKVwiXT1sKFwiU09GXCIpLGlbXCJHUi5NMS5TUEVDSUFMIFdFQVBPTlMgQU5EIFRBQ1RJQ1NcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzcsZm9udHNpemU6MjMsdGV4dDpcIlNXQVRcIn0saVtcIkdSLk0xLlNRVUFEXCJdPXt0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeTo2OCxyOjh9LGlbXCJHUi5NMS5TVVBQT1JUXCJdPWwoXCJTUFRcIiksaVtcIkdSLk0xLlNVUlZFWVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDgsNzggLTgsLTggbSAwLDAgLTgsOCBtIDgsLTggMCwtMTUgMTUsOCB6XCJ9LGlbXCJHUi5NMS5UQUNUSUNBTCBFWFBMT0lUQVRJT05cIl09bChcIlRFXCIpLGlbXCJHUi5NMS5UQVJHRVQgQUNRVUlTSVRJT05cIl09bChcIlRBXCIpLGlbXCJHUi5NMS5URUFNXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjY1LHI6MTB9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDc1IGwyMCwtMjBcIn1dLGlbXCJHUi5NMS5USEVBVFJFXCJdPWwoXCJYWFhYWFwiKSxpW1wiR1IuTTEuVE9QT0dSQVBISUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5Miw2NSBjIDYsMyAxMCwzIDE2LDAgbSAtMTgsMTMgMTAsLTIzIDEwLDIzXCJ9LGlbXCJHUi5NMS5UUkFJTklORyBDQU1QXCJdPWwoXCJUTkdcIiksaVtcIkdSLk0xLkhJSkFDS0VSXCJdPWwoXCJISlwiKSxpW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLDY1IDIwLDEzIDIwLC0xMyAwLC01IC0yMCwxMCAtMjAsLTEwIHpcIn0saVtcIkdSLk0xLlVQR1JBREVEIEVBUkxZIFdBUk5JTkcgUkFEQVJcIl09bChcIlVFV1wiKSxpW1wiR1IuTTEuVVRJTElUWVwiXT1sKFwiVVwiKSxpW1wiR1IuTTEuVklERU8gSU1BR0VSWVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyMCw2NSAtMTEsMCBtIDExLDEwIC0xNCwwIG0gNCwtMTQgLTMwLDAgMCwxOCAyNSwwIHogbSAxMCwyIDAsMTRcIn0saVtcIkdSLk0xLldPLTFcIl09bChcIldPLTFcIiksaVtcIkdSLk0xLldPLTJcIl09bChcIldPLTJcIiksaVtcIkdSLk0xLldPLTNcIl09bChcIldPLTNcIiksaVtcIkdSLk0xLldPLTRcIl09bChcIldPLTRcIiksaVtcIkdSLk0xLldPLTVcIl09bChcIldPLTVcIiksaVtcIkdSLk0xLllBUkRcIl09bChcIllSRFwiKSxpW1wiR1IuTTIuQUlSQk9STkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk03NSwxNDAgQzc1LDEyNSAxMDAsMTI1IDEwMCwxNDAgQzEwMCwxMjUgMTI1LDEyNSAxMjUsMTQwXCIsZmlsbDohMX0saVtcIkdSLk0yLkFSQ1RJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTExNSwxMjUgQzEyNSwxMjUgMTI1LDEzNSAxMTUsMTM1IEw4NSwxMzUgQzc1LDEzNSA3NSwxMjUgODUsMTI1XCIsZmlsbDohMX0saVtcIkdSLk0yLkFUVEFDS1wiXT1yKFwiQVwiKSxpW1wiR1IuTTIuTEFORElORyBDUkFGVFwiXT1yKFwiTENcIiksaVtcIkdSLk0yLkxBTkRJTkcgU0hJUFwiXT1yKFwiTFNcIiksaVtcIkdSLk0yLlNFUlZJQ0UgQ1JBRlQvWUFSRFwiXT1yKFwiWVlcIiksaVtcIkdSLk0yLlRVRyBIQVJCT1JcIl09cihcIllUXCIpLGlbXCJHUi5NMi5PQ0VBTiBHT0lORyBUVUcgQk9BVFwiXT1yKFwiQVRcIiksaVtcIkdSLk0yLlNVUkZBQ0UgREVQTE9ZTUVOVCBBTkQgRElTVFJJQlVUSU9OIENPTU1BTkRcIl09cihcIlNERENcIiksaVtcIkdSLk0yLkNPTVBPU0lURVwiXT1yKFwiQ09NUFwiKSxpW1wiR1IuTTIuTElHSFQgQU5EIE1FRElVTVwiXT1yKFwiTC9NXCIpLGlbXCJHUi5NMi5CQVRUTEUgREFNQUdFIFJFUEFJUlwiXT1yKFwiQkRSXCIpLGlbXCJHUi5NMi5CSUNZQ0xFIEVRVUlQUEVEXCJdPXt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMixyOjExLGZpbGw6ITF9LGlbXCJHUi5NMi5DQVNVQUxUWSBTVEFHSU5HXCJdPXIoXCJDU1wiKSxpW1wiR1IuTTIuQ0xFQVJJTkdcIl09cihcIkNMUlwiKSxpW1wiR1IuTTIuQ0xPU0UgUkFOR0VcIl09cihcIkNSXCIpLGlbXCJHUi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl09cihcIkNTQVJcIiksaVtcIkdSLk0yLkNPTlRST0xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTgsMTMwIDIsLTQgMiw0IG0gLTgsOCAtNCwtMiA0LC0yIG0gOCw4IC0yLDQgLTIsLTQgbSA4LC04IDQsMiAtNCwyIG0gLTE0LC0yIDE2LDAgbSAtOCwtOCAwLDE2XCIsZmlsbDohMX0saVtcIkdSLk0yLk5PTkNPTUJBVEFOVCBHRU5FUklDIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSwxMzUgMCwtMTAgMTAsMCAwLDEwIDUsMCAwLDEwIC0yMCwwIDAsLTEwIHpcIixzdHJva2U6ITF9LGlbXCJHUi5NMi5TSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAzMCwwIC01LC0xNSAtMTAsLTUgLTEwLDUgelwiLHN0cm9rZTohMX0saVtcIkdSLk0yLlNFTEYtUFJPUEVMTEVEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDEyNSAzMCwwIGMgMTAsMCAxMCwxNSAwLDE1IGwgLTMwLDAgYyAtMTAsMCAtMTAsLTE1IDAsLTE1XCIsZmlsbDohMX0saVtcIkdSLk0yLkNST1NTLUNPVU5UUlkgVFJVQ0tcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTIwIGw4MCwwXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjY1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0saVtcIkdSLk0yLkNBVkFMUllcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTEwLHk6MTQwLGZvbnRzaXplOjI1LHRleHQ6XCJDQVZcIn0saVtcIkdSLk0yLkRFQ09OVEFNSU5BVElPTlwiXT1yKFwiRFwiKSxpW1wiR1IuTTIuREVNT0xJVElPTlwiXT1yKFwiREVNXCIpLGlbXCJHUi5NMi5ERU5UQUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJEXCJ9LGlbXCJHUi5NMi5ESUdJVEFMXCJdPXIoXCJESUdcIiksaVtcIkdSLk0yLkVOSEFOQ0VEIFBPU0lUSU9OIExPQ0FUSU9OIFJFUE9SVElORyBTWVNURU1cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODcsMTQyIDEzLC0xMiAxMywxMiBtIC0xMywtMjAgMCwyMCAwLDBcIixmaWxsOiExfSxpW1wiR1IuTTIuRVFVSVBNRU5UXCJdPXIoXCJFXCIpLGlbXCJHUi5NMi5FUVVJTUVOVC9UUk9PUFwiXT1yKFwiRS9UXCIpLGlbXCJHUi5NMi5IRUFWWVwiXT1yKFwiSFwiKSxpW1wiR1IuTTIuSElHSCBBTFRJVFVERVwiXT1yKFwiSEFcIiksaVtcIkdSLk0yLkhJR0ggVE8gTUVESVVNIEFMVElUVURFXCJdPXIoXCJITUFcIiksaVtcIkdSLk0yLkhJR0ggVE8gTE9XIEFMVElUVURFXCJdPXIoXCJITEFcIiksaVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl09bChcIkNZQlwiKSxpW1wiR1IuTTIuQUlSIEFTU0FVTFRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSwxMjUgMTUsMjAgMTUsLTIwXCJ9LGlbXCJHUi5NMi5WRVJZIEhFQVZZXCJdPXIoXCJWSFwiKSxpW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXT1yKFwiQ1lCXCIpLGlbXCJHUi5NMi5OQVZZIEJBUkdFLCBTRUxGLVBST1BFTExFRFwiXT1yKFwiWVNcIiksaVtcIkdSLk0yLk5BVlkgQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXT1yKFwiWUJcIiksaVtcIkdSLk0yLkxBVU5DSFwiXT1yKFwiWUZUXCIpLGlbXCJHUi5NMS5UQUNUSUNBTCBTQVRFTExJVEUgQ09NTVVOSUNBVElPTlNcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw2NSAxMCwwIG0gLTMwLDAgMTAsMCBNIDg1LDc3IGMgMTAsLTcgMjAsLTcgMzAsMFwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LjQsNjAuOSAwLDkuMSAxMy4xLDAgMCwtOS4xIHogbSAzNiwwIDAsOS4xIDEzLjEsMCAwLC05LjEgeiBtIC0xOCwwIDAsOS4xIDEzLjEsMCAwLC05LjEgelwiLHN0cm9rZTohMX1dLGlbXCJHUi5NMi5JTlRFUk1PREFMXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyNSA0MCwwIDAsLTQgOCw5IC04LDkgMCwtNCAtNDAsMCAwLDQgLTgsLTkgOCwtOSB6XCIsZmlsbDohMX0saVtcIkdSLk0yLklOVEVOU0lWRSBDQVJFXCJdPXIoXCJJQ1wiKSxpW1wiR1IuTTIuSjFcIl09cihcIkoxXCIpLGlbXCJHUi5NMi5KMlwiXT1yKFwiSjJcIiksaVtcIkdSLk0yLkozXCJdPXIoXCJKM1wiKSxpW1wiR1IuTTIuSjRcIl09cihcIko0XCIpLGlbXCJHUi5NMi5KNVwiXT1yKFwiSjVcIiksaVtcIkdSLk0yLko2XCJdPXIoXCJKNlwiKSxpW1wiR1IuTTIuSjdcIl09cihcIko3XCIpLGlbXCJHUi5NMi5KOFwiXT1yKFwiSjhcIiksaVtcIkdSLk0yLko5XCJdPXIoXCJKOVwiKSxpW1wiR1IuTTIuTElHSFRcIl09cihcIkxcIiksaVtcIkdSLk0yLkxBQk9SQVRPUllcIl09cihcIkxBQlwiKSxpW1wiR1IuTTIuTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTgwLDE0MCBMMTE1LDEyMCAxMjAsMTQwXCJ9LGlbXCJHUi5NMi5MT05HIFJBTkdFXCJdPXIoXCJMUlwiKSxpW1wiR1IuTTIuTE9ORyBSQU5HRSBTVVJWRUlMTEFOQ0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTEwLHk6MTQwLGZvbnRzaXplOjI1LHRleHQ6XCJMUlNcIn0saVtcIkdSLk0yLkxPVyBBTFRJVFVERVwiXT1yKFwiTEFcIiksaVtcIkdSLk0yLk1FRElVTVwiXT1yKFwiTVwiKSxpW1wiR1IuTTIuTUVESVVNIEFMVElUVURFXCJdPXIoXCJNQVwiKSxpW1wiR1IuTTIuTUVESVVNIFRPIExPVyBBTFRJVFVERVwiXT1yKFwiTUxBXCIpLGlbXCJHUi5NMi5NRURJVU0gUkFOR0VcIl09cihcIk1SXCIpLGlbXCJHUi5NMi5NT1VOVEFJTlwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05MCwxNDAgTDEwMCwxMjAgMTEwLDE0MFwifSxpW1wiR1IuTTIuTVVMVElQTEUgQUxUSVRVREVTXCJdPXIoXCJIL01BXCIpLGlbXCJHUi5NMi5NVUxUSS1DSEFOTkVMXCJdPXIoXCJNQ1wiKSxpW1wiR1IuTTIuT0YtMVwiXT1yKFwiT0YtMVwiKSxpW1wiR1IuTTIuT0YtMlwiXT1yKFwiT0YtMlwiKSxpW1wiR1IuTTIuT0YtM1wiXT1yKFwiT0YtM1wiKSxpW1wiR1IuTTIuT0YtNFwiXT1yKFwiT0YtNFwiKSxpW1wiR1IuTTIuT0YtNVwiXT1yKFwiT0YtNVwiKSxpW1wiR1IuTTIuT0YtNlwiXT1yKFwiT0YtNlwiKSxpW1wiR1IuTTIuT0YtN1wiXT1yKFwiT0YtN1wiKSxpW1wiR1IuTTIuT0YtOFwiXT1yKFwiT0YtOFwiKSxpW1wiR1IuTTIuT0YtOVwiXT1yKFwiT0YtOVwiKSxpW1wiR1IuTTIuT0YtMTBcIl09cihcIk9GLTEwXCIpLGlbXCJHUi5NMi5PRi1EXCJdPXIoXCJPRi1EXCIpLGlbXCJHUi5NMi5PUFRJQ0FMXCJdPXIoXCJPUFRcIiksaVtcIkdSLk0yLk9SLTFcIl09cihcIk9SLTFcIiksaVtcIkdSLk0yLk9SLTJcIl09cihcIk9SLTJcIiksaVtcIkdSLk0yLk9SLTNcIl09cihcIk9SLTNcIiksaVtcIkdSLk0yLk9SLTRcIl09cihcIk9SLTRcIiksaVtcIkdSLk0yLk9SLTVcIl09cihcIk9SLTVcIiksaVtcIkdSLk0yLk9SLTZcIl09cihcIk9SLTZcIiksaVtcIkdSLk0yLk9SLTdcIl09cihcIk9SLTdcIiksaVtcIkdSLk0yLk9SLThcIl09cihcIk9SLThcIiksaVtcIkdSLk0yLk9SLTlcIl09cihcIk9SLTlcIiksaVtcIkdSLk0yLkdVRVJJTExBXCJdPXIoXCJHXCIpLGlbXCJHUi5NMi5BTVBISUJJT1VTXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDY0IDE0NC45IEMgODAuNCAxNDMuOSA2My4xIDEyNSA4MS40IDEyNSBDIDEwMC4yIDEyNSA4MS40IDE0NSAxMDAuMiAxNDUgQyAxMTkgMTQ1IDEwMC4yIDEyNSAxMTkgMTI1IEMgMTM3LjEgMTI1IDEyMC4yIDE0My42IDEzNS45IDE0NC45XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDI1LDE0NSBjIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAyMCwyMFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNDUgMTI1IEMgNjEuNyAxMjUuOSA0NC4yIDE0NSA2Mi42IDE0NSBDIDgxLjQgMTQ1IDYyLjYgMTI1IDgxLjQgMTI1IEMgMTAwLjIgMTI1IDgxLjQgMTQ1IDEwMC4yIDE0NSBDIDExOSAxNDUgMTAwLjIgMTI1IDExOSAxMjUgQyAxMzcuOCAxMjUgMTE5IDE0NSAxMzcuOCAxNDUgQyAxNTUuOSAxNDUgMTM4LjkgMTI2LjIgMTU0LjggMTI1IFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNzAuNCAxNDIuNCBDIDc0LjggMTM3IDY2LjggMTI1IDgxLjQgMTI1IEMgMTAwLjIgMTI1IDgxLjQgMTQ1IDEwMC4yIDE0NSBDIDExOSAxNDUgMTAwLjIgMTI1IDExOSAxMjUgQyAxMzMuMyAxMjUgMTI1LjcgMTM2LjYgMTI5LjcgMTQyLjEgXCIsZmlsbDohMX19W1RdLGlbXCJHUi5NMi5QQUNLIEFOSU1BTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NCwxNDAgOSwtMTUgNywxNSA3LC0xNSA5LDE1XCIsZmlsbDohMX0saVtcIkdSLk0yLlBBVElFTlQgRVZBQ1VBVElPTiBDT09SRElOQVRJT05cIl09cihcIlBFQ1wiKSxpW1wiR1IuTTIuUFJFVkVOVElWRSBNQUlOVEVOQU5DRVwiXT1yKFwiUE1cIiksaVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJQXCJ9LGlbXCJHUi5NMi5SQURJTyBSRUxBWSBMSU5FIE9GIFNJR0hUXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMzIscjoxMSxmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwiTSA5MC44IDEyOC4yIEMgOTAuMyAxMjkuMyA5MCAxMzAuNiA5MCAxMzIgQyA5MCAxMzMuNCA5MC4zIDEzNC43IDkwLjggMTM1LjggTCAxMDAgMTMyIEwgOTAuOCAxMjguMiB6IE0gMTAwIDEzMiBMIDEwOS4zIDEzNS44IEMgMTA5LjcgMTM0LjcgMTEwIDEzMy40IDExMCAxMzIgQyAxMTAgMTMwLjYgMTA5LjcgMTI5LjMgMTA5LjMgMTI4LjIgTCAxMDAgMTMyIHpcIn1dLGlbXCJHUi5NMi5SQUlMUk9BRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0saVtcIkdSLk0yLlRSQUNUT1IgVFJBSUxFUlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMzUsY3k6MTI1LHI6NX1dLGlbXCJHUi5NMi5SRUNPVkVSWSAoVU5NQU5ORUQgU1lTVEVNUylcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTI1IGMwLDIwIDYwLDIwIDYwLDBcIixmaWxsOiExfSxpW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNzUsMTI1IGM4LDAgOCwxNiAwLDE2IG04LC04IGwzNSwwIG04LC04IGMtOCwwIC04LDE2IDAsMTZcIn0saVtcIkdSLk0yLlJFRlVFTFwiXT1yKFwiS1wiKSxpW1wiR1IuTTIuUkVTQ1VFIENPT1JESU5BVElPTiBDRU5UUkVcIl09cihcIlJDQ1wiKSxpW1wiR1IuTTIuUklWRVJJTkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTI1IGMgMCwxMCA0MCwxMCA0MCwwIHpcIixmaWxsOiExfSxpW1wiR1IuTTIuUk9CT1RJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxMjEuNjhMMTE0Ljg5NSwxMzYuNDU5QzExNS4zMDksMTM2LjIwMSAxMTUuNzk4LDEzNi4wNTIgMTE2LjMyMSwxMzYuMDUyQzExNy44MTIsMTM2LjA1MiAxMTkuMDIyLDEzNy4yNjIgMTE5LjAyMiwxMzguNzUzQzExOS4wMjIsMTQwLjI0MyAxMTcuODEyLDE0MS40NTQgMTE2LjMyMSwxNDEuNDU0QzExNC44MzEsMTQxLjQ1NCAxMTMuNjIsMTQwLjI0MyAxMTMuNjIsMTM4Ljc1M0MxMTMuNjIsMTM4LjQwNyAxMTMuNjg2LDEzOC4wNzYgMTEzLjgwNSwxMzcuNzcyTDEwMy4zNzgsMTMyLjZMMTAwLjg1MSwxNDEuMjI0QzEwMS4wNzIsMTQxLjI5OCAxMDEuMjgsMTQxLjQgMTAxLjQ3MSwxNDEuNTI2QzEwMi4yMTEsMTQyLjAwOCAxMDIuNzAxLDE0Mi44NDMgMTAyLjcwMSwxNDMuNzkxQzEwMi43MDEsMTQ1LjI4MSAxMDEuNDkxLDE0Ni40OTIgMTAwLDE0Ni40OTJDOTkuNDUxLDE0Ni40OTIgOTguOTM5LDE0Ni4zMjcgOTguNTEyLDE0Ni4wNDVDOTcuNzc2LDE0NS41NjIgOTcuMjksMTQ0LjczIDk3LjI5LDE0My43ODVDOTcuMjksMTQyLjU5MiA5OC4wNjQsMTQxLjU3OSA5OS4xMzgsMTQxLjIyMkw5Ni42MTMsMTMyLjYwNkw4Ni4xODYsMTM3Ljc3OEM4Ni4zMDUsMTM4LjA4MiA4Ni4zNywxMzguNDEzIDg2LjM3LDEzOC43NTlDODYuMzcsMTQwLjI1IDg1LjE2LDE0MS40NiA4My42NjksMTQxLjQ2QzgyLjE3OSwxNDEuNDYgODAuOTY5LDE0MC4yNSA4MC45NjksMTM4Ljc1OUM4MC45NjksMTM3LjI2OCA4Mi4xNzksMTM2LjA1OCA4My42NjksMTM2LjA1OEM4NC4xOTMsMTM2LjA1OCA4NC42ODEsMTM2LjIwNyA4NS4wOTUsMTM2LjQ2NUw5OS45OTEsMTIxLjY3MUwxMDAsMTIxLjY2MkwxMDAsMTIxLjY4WlwiLHN0cm9rZTohMX0saVtcIkdSLk0yLlNFQ1VSSVRZIEZPUkNFIEFTU0lTVEFOQ0VcIl09cihcIlNGQVwiKSxpW1wiR1IuTTIuU0lOR0xFIENIQU5ORUxcIl09cihcIlNDXCIpLGlbXCJHUi5NMi5TS0lcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsMTQ1IC05LC04IG0gMjgsMCAtOSw4IG0gLTE1LC0yNCAyMCwyMCBtIDAsLTIwIC0yMCwyMFwiLGZpbGw6ITF9LGlbXCJHUi5NMi5TSE9SVCBSQU5HRVwiXT1yKFwiU1JcIiksaVtcIkdSLk0yLlNUUkFURUdJQ1wiXT1yKFwiU1RSXCIpLGlbXCJHUi5NMi5TVFJBVEVHSUMgTUlTU0lMRVwiXT1yKFwiU1wiKSxpW1wiR1IuTTIuU1VQUE9SVFwiXT1yKFwiU1BUXCIpLGlbXCJHUi5NMi5UQUNUSUNBTFwiXT1yKFwiVEFDXCIpLGlbXCJHUi5NMi5UQUNUSUNBTCBNSVNTSUxFXCJdPXIoXCJUXCIpLGlbXCJHUi5NMi5UQVJHRVQgQUNRVUlTSVRJT05cIl09cihcIlRBXCIpLGlbXCJHUi5NMi5UT1dFRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk03MCwxMjAgbDYwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTIwLHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjAscjo1fV0saVtcIkdSLk0yLlRST09QXCJdPXIoXCJUXCIpLGlbXCJHUi5NMi5UUkFDS0VEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDcwLDEyMCBsIDYwLDAgYzEwLDAgMTAsMTAgMCwxMCBsIC02MCwwIGMtMTAsMCAtMTAsLTEwIDAsLTEwXCIsZmlsbDohMX0saVtcIkdSLk0yLlRSVUNLXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTTYwLDEyMCBsODAsMFwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDo2NSxjeToxMjUscjo1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTM1LGN5OjEyNSxyOjV9XSxpW1wiR1IuTTIuVVRJTElUWVwiXT1yKFwiVVwiKSxpW1wiR1IuTTIuVkVSVElDQUwgT1IgU0hPUlQgVEFLRS1PRkYgQU5EIExBTkRJTkcgXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEzNSxmb250c2l6ZToyMCx0ZXh0OlwiVlNUT0xcIn0saVtcIkdSLk0yLlZFVEVSSU5BUllcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJWXCJ9LGlbXCJHUi5NMi5XSEVFTEVEXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjcwLGN5OjEyNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTI1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEzMCxjeToxMjUscjo1LGZpbGw6ITF9XSxpW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjcwLGN5OjEyNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMzAsY3k6MTI1LHI6NSxmaWxsOiExfV0saVtcIkdSLk0yLldPLTFcIl09cihcIldPLTFcIiksaVtcIkdSLk0yLldPLTJcIl09cihcIldPLTJcIiksaVtcIkdSLk0yLldPLTNcIl09cihcIldPLTNcIiksaVtcIkdSLk0yLldPLTRcIl09cihcIldPLTRcIiksaVtcIkdSLk0yLldPLTVcIl09cihcIldPLTVcIiksaVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDEwMCAzMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMzAsMCBtIC0zMCwtMTAgMzAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5MT05HIFJBTkdFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDExMCAzMCwwIG0gLTMwLC0yMCAzMCwwIG0gLTMwLDEwIDMwLDBcIixmaWxsOiExfSxpW1wiR1IuRVEuV0VBUE9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDgwXCIsZmlsbDohMX0saVtcIkdSLkVRLlJJRkxFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDgwIE0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5SSUZMRSBESVNNT1VOVEVEMVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw5MCAxMCwtMTAgMTAsMTAgbSAtMTAsLTEwIDAsNDBcIixmaWxsOiExfSxpW1wiR1IuRVEuTUFDSElORSBHVU5cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwIDAsODAgTSA4NSw3NSAxMDAsNjAgMTE1LDc1IE0gODAsMTQwIDEyMCwxNDBcIixmaWxsOiExfSxpW1wiR1IuRVEuR1JFTkFERSBMQVVOQ0hFUlwiXT1baVtcIkdSLkVRLlJJRkxFXCJdLHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjkwLHI6MTUsZmlsbDohMX1dLGlbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsMTM1IDAsLTcwIGMgMCwtMTUgMjAsLTE1IDIwLDBcIn0saVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTQwIDMwLDAgYyAwLC0yMCAtMzAsLTIwIC0zMCwwIHogbSAxNSwtODAgMCw2NSBtIDE1LC00NSAwLDQwIG0gLTMwLC00MCAwLDQwXCIsZmlsbDohMX1dLFJ8fE58fGlbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0ucHVzaCh7dHlwZTpcInBhdGhcIixkOlwiTSA4NSw3NSAxMDAsNjAgMTE1LDc1XCIsZmlsbDohMX0pLGlbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTQwIDE1LC0xNSAxNSwxNSBtIC0xNSwtODAgMCw2NSBtIC0xNSwtNDUgMCw0MCBtIDMwLC00MCAwLDQwXCIsZmlsbDohMX0saVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNjAgMCw4MCBtIDE1LC02MCAwLDQwIG0gLTMwLC00MCAwLDQwXCIsZmlsbDohMX0saVtcIkdSLkVRLlJFQ09JTExFU1MgR1VOXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDc1IDE1LC0xNSAxNSwxNSBtIDAsNSAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMTUsLTYwIDAsODBcIixmaWxsOiExfSxpW1wiR1IuRVEuSE9XSVRaRVJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExNSw4MCAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMTUsLTYwIDAsNjBcIixmaWxsOiExfV0sUnx8aVtcIkdSLkVRLkhPV0lUWkVSXCJdLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9KSxpW1wiR1IuRVEuSE9XSVRaRVIgVFJBQ0tFRFwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA3MCwxMjAgbCA2MCwwIGMxMCwwIDEwLDEwIDAsMTAgbCAtNjAsMCBjLTEwLDAgLTEwLC0xMCAwLC0xMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxNDAgMCwtODAgbSAtMTUsODAgMCwtNjUgYyAwLC0yMCAzMCwtMjAgMzAsMCBsIDAsNjVcIixmaWxsOiExfSxpW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxNDAgMzAsMCBjIDAsLTIwIC0zMCwtMjAgLTMwLDAgeiBtIDE1LC0xNSAwLC02NSBtIC0xNSw4MCAwLC02NSBjIDAsLTIwIDMwLC0yMCAzMCwwIGwgMCw2NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJSXCJ9LGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiRVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlJcIn1dLGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRIRUFUUkVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJUXCJ9LGlbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAxNSwtMTUgMTUsMTUgTSA4NSwxMjAgODUsNzUgYyAwLC0yMCAzMCwtMjAgMzAsMCBsIDAsNDUgbSAtMTUsNSAwLC02NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXT1baVtcIkdSLkVRLk1JU1NJTEUgTEFVTkNIRVJcIl1dLFImJmlbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXS5wdXNoKHt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAzMCwwXCIsZmlsbDohMX0pLGlbXCJHUi5FUS5NT1JUQVJcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDYwIE0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9XSxpW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw3NSAxNSwtMTUgMTUsMTUgbSAtMTUsLTUgMCw3MCBNIDg1LDg1IDEwMCw3MCAxMTUsODVcIixmaWxsOiExfSxpW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDExNSw5MCAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMCwtNTUgMTUsLTE1IDE1LDE1IG0gLTE1LC01IDAsNzAgTSA4NSw4NSAxMDAsNzAgMTE1LDg1XCIsZmlsbDohMX0saVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxNDAgMTUsLTE1IDE1LDE1IE0gODUsODUgMTAwLDcwIDExNSw4NSBtIC0xNSwtMTUgMCw1NSBNIDg1LDc1IDEwMCw2MCAxMTUsNzVcIixmaWxsOiExfSxpW1wiR1IuRVEuTk9OLUxFVEhBTCBXRUFQT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwIDAsODAgTSA4MCw2MCBsNDAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5OT04tTEVUSEFMIEdSRU5BREUgTEFVTkNIRVJcIl09W2lbXCJHUi5FUS5OT04tTEVUSEFMIFdFQVBPTlwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo5MCxyOjE1LGZpbGw6ITF9XSxpW1wiR1IuRVEuVEFTRVJcIl09W2lbXCJHUi5FUS5OT04tTEVUSEFMIFdFQVBPTlwiXSxhKFwiWlwiKV0saVtcIkdSLkVRLldBVEVSIENBTk5PTlwiXT1baVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdLGEoXCJXXCIpXSxpW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMzAgNjAsMFwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTM1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeToxMzUscjo1LGZpbGw6ITF9XSxpW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTMwIDYwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTM1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeToxMzUscjo1LGZpbGw6ITF9XSxpW1wiR1IuRVEuQVJNT1VSRUQgRklHSFRJTkcgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMDAgMzAsLTMwIDMwLDMwIC0zMCwzMCB6IG0gNjAsLTMwIDAsNjAgbSAtNjAsLTYwIDAsNjAgMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXT1baVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEVcIl1dLE4/aVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXS5wdXNoKHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQzJcIn0pOmlbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFIChBRlYpIENPTU1BTkQgQU5EIENPTlRST0xcIl0ucHVzaCh7dHlwZTpcInBhdGhcIixkOlwibSA4MCw5MCAyMCwxNSAwLC0xMCAyMCwxNVwiLGZpbGw6ITF9KSxpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw4MCAzMCwtMTAgMzAsMTAgbSAtNjAsLTEwIDAsNjAgNjAsMCAwLC02MFwifSxpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVIgQ09NQkFUIFNFUlZJQ0UgU1VQUE9SVCBWRUhJQ0xFXCJdPVtpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTIwIDYwLDBcIixmaWxsOiExfV0saVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSIEVOR0lORUVSIFJFQ09OIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMzAsODAgNzAsMTMwXCJ9LGlbXCJHUi5FUS5DT01CQVQgU0VSVklDRSBTVVBQT1JUIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA3MCwxMjAgMTMwLDEyMFwifSxpW1wiR1IuRVEuQVJNT1VSRUQgTUVESUNBTCBQRVJTT05ORUwgQ0FSUklFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDEwMCA2MCwwIG0gLTMwLC0zMCAwLDYwXCJ9LGlbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNjAsMTIwIDgwLDAgTSAxMjAsODAgYyAyNSwwLjIgMjUsNDAgMCw0MCBsIC00MCwwIEMgNTUsMTIwIDU1LDgwIDgwLDgwIFpcIixmaWxsOiExfSxpW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdXSxpW1wiR1IuRVEuQVJNT1VSRUQgVkVISUNMRVwiXT1hKFwiQVwiKSxpW1wiR1IuRVEuQVJNT1JFRCBDQVJSSUVSIFdJVEggVk9MQ0FOT1wiXT1hKFwiVlwiKSxpW1wiR1IuRVEuVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDgwIDYwLDAgbSAtNjAsNDAgNjAsMCBtIC02MCwtNTAgMCw2MCAwLDAgbSA2MCwtNjAgMCw2MFwifSxpW1wiR1IuRVEuQVNTQVVMVCBCUkVBQ0hFUiBWRUhJQ0xFIChBQlYpIFdJVEggQ09NQkFUIERPWkVSIEJMQURFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDk1IDMwLDI1IG0gLTMwLC02MCAwLDM1IC0zMCwyNSBtIDEwLC02MCA0MCwwIG0gLTUwLDIwIDYwLDAgbSAtNjAsNDAgNjAsMCBtIC02MCwtNTAgMCw2MCAwLDAgbSA2MCwtNjAgMCw2MFwifSxpW1wiR1IuRVEuTElHSFQgVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw4MCAwLDQwXCJ9LGlbXCJHUi5FUS5NRURJVU0gVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSw4MCAwLDQwIG0gLTEwLC00MCAwLDQwXCJ9LGlbXCJHUi5FUS5IRUFWWSBUQU5LXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTEwLDgwIDAsNDAgbSAtMjAsLTQwIDAsNDAgbSAxMCwtNDAgMCw0MFwifSxpW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsMTAwIDMwLDAgbSAxMCwtMTAgYyAtMTMuMSwwIC0xMi40LDIwIDAsMjAgTSA3NSw5MCBjIDEyLjcsMC4zIDEyLjcsMjAuMyAwLDIwXCJ9LGlbXCJHUi5FUS5CUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTE1LDc1IC0xMCwxMCAwLDMwIDEwLDEwIG0gLTMwLC01MCAxMCwxMCAwLDMwIC0xMCwxMCBtIC0xNSwtNTUgNjAsMCAwLDYwIC02MCwwIDAsLTYwXCIsZmlsbDohMX0saVtcIkdSLkVRLkZJWEVEIEJSSURHRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDAsNzAgMTAwLDEzMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5GT0xESU5HIEdJUkRFUiBCUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTEwLCA4MCA5MCw4MCA5MCwxMjAgMTEwLDEyMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5IT0xMT1cgREVDSyBCUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTEwLCA4MCA5MCw4MCA5MCwxMjAgMTEwLDEyMCB6XCIsZmlsbDohMX0saVtcIkdSLkVRLkRSSUxMXCJdPWlbXCJHUi5JQy5EUklMTElOR1wiXSxpW1wiR1IuRVEuRE9aRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsNjAgMjAsMCBtIC0xMCwwIDAsMjAgbSAtMzAsMCA2MCwwIG0gLTYwLC0xMCAwLDYwIDAsMCBtIDYwLC02MCAwLDYwIG0gLTYwLC0xMCA2MCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLkRPWkVSIEFSTU9SRURcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTMwIDYwLDAgbSAtMzAsLTcwIDAsMTAgbSAtMzAsMTAgMzAsLTEwIDMwLDEwIG0gMCwtMTAgMCw2MCBtIC02MCwtNjAgMCw2MCAwLDAgbSAyMCwtNzAgMjAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5FQVJUSE1PVkVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDIwIG0gLTI1LC0xNSA1LC01IDQwLDAgNSw1IG0gLTU1LDE1IDYwLDAgbSAtNjAsNDAgNjAsMCBtIDAsLTUwIDAsNjAgbSAtNjAsLTYwIDAsNjAgMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLk1VTFRJRlVOQ1RJT05BTCBFQVJUSE1PVkVSL0RJR0dFUlwiXT1baVtcIkdSLkVRLkVBUlRITU9WRVJcIl0sYShcIk1GXCIpXSxpW1wiR1IuRVEuTUlORSBDTEVBUklORyBFUVVJUE1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDgwIDAsMTUgLTMwLDI1IDYwLDAgLTMwLC0yNVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5NSU5FIExBWUlORyBWRUhJQ0xFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA5MCw4NSAyMCwzMCBtIDAsLTMwIC0yMCwzMCBtIDEwLC0zMCAwLDMwXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTB9XSxpW1wiR1IuRVEuTUlORSBTQ0FUVEVSQUJMRVwiXT1bYShcIlNcIikse3R5cGU6XCJjaXJjbGVcIixjeDo4NSxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjExNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMTUsY3k6MTE1LHI6NSxmaWxsOiExfV0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDY1IGMgMCwxNSA2MCwxNSA2MCwwIGwgMCw2NSAtNjAsMCB6XCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgQkFDS0hPRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMzAsMTMwIDEwMCw4MCA3NSw5NSA3NSw5NVwifSx7dHlwZTpcInBhdGhcIixkOlwiTSA3NSwxMDUgODUsOTUgNzUsOTUgelwifV0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBGRVJSWSBUUkFOU1BPUlRFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEwMCBjIDE1LDE1IDM1LDE1IDUwLDAgelwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIExJR0hUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTAwLDc4LjMgMTAwLDEzMFwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIE1FRElVTVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSwxMzAgMCwtNTIgTSA5NSwxMzAgbDAsLTUyXCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgSEVBVllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMTAsMTMwIDAsLTUzIG0gLTIwLDUwIDAsLTUzIG0gMTAsMS4zIDAsNTJcIn0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzAsMTMwIC00MCwtNDAgMCwyNSBjIDAsNSAtMTAsNSAtMTAsMFwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSwxMTUgMTAsLTEwXCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLLkhFQVZZXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTIwLDExMCAtMTAsMTAgbSAtMTAsLTEwIDEwLC0xMCBtIC01LDE1IDEwLC0xMFwifSxpW1wiR1IuRVEuTUVESUNBTCBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsMTAwIGwgNjAsMCBNIDEwMCw3OC4zIDEwMCwxMzBcIn0saVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4NSAxMCwwIDAsMTAgMTAsMCAwLDEwIC0xMCwwIDAsMTAgLTEwLDAgMCwtMTAgLTEwLDAgMCwtMTAgMTAsMCB6XCJ9LGlbXCJHUi5FUS5NT0JJTEUgRU1FUkdFTkNZIFBIWVNJQ0lBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDEwMCBsIDYwLDAgTSAxMDAsNzguMyAxMDAsMTMwIE0gODUsODUgMTE1LDg1XCJ9LGlbXCJHUi5FUS5CVVNcIl09W2lbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sYShcIkJcIildLGlbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl09W2lbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsOTAgMCwyMCBtIC0xMCwtMTAgMTAsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDo4NSxjeToxMzUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTI1LGN5OjEzNSxyOjUsZmlsbDohMX1dLGlbXCJHUi5FUS5XQVRFUiBWRUhJQ0xFXCJdPVtpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsOTUgYyAxMCwwIDAsMTAgMTAsMTAgMTAsMCAwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDAgMCwtMTAgMTAsLTEwIDEwLDAgMCwxMCAxMCwxMCAxMCwwIDAsLTEwIDEwLC0xMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMjUsY3k6MTM1LHI6NSxmaWxsOiExfV0saVtcIkdSLkVRLlRSQUlOIExPQ09NT1RJVkVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw3MCAwLDYwIDYwLDAgMCwtMzAgLTMwLDAgMCwtMzAgelwifSxpW1wiR1IuRVEuUkFJTENBUlwiXT1baVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NzUsY3k6MTM1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojg1LGN5OjEzNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMTUsY3k6MTM1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEyNSxjeToxMzUscjo1fV0saVtcIkdSLkVRLkNCUk4gRVFVSVBNRU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTTgwLDE0MCBjMCwtMjAgMTAsLTYwIDUwLC02MyBtLTEwLDYzIGMwLC0yMCAtMTAsLTYwIC01MCwtNjMgXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDo3MCxjeTo4NSxyOjh9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTMwLGN5Ojg1LHI6OH1dLGlbXCJHUi5FUS5DT01QVVRFUiBTWVNURU1cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDEzMiAwLC0xMCAtMzUsMCAwLC01MCA3MCwwIDAsNTAgLTM1LDAgbSAtMjUsMTAgNTAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5DT01NQU5EIExBVU5DSCBFUVVJUE1FTlQgKENMRSlcIl09YShcIkNMRVwiKSxpW1wiR1IuRVEuR0VORVJBVE9SIFNFVFwiXT1hKFwiR1wiKSxpW1wiR1IuRVEuR1JPVU5ELUJBU0VEIE1JRENPVVJTRSBERUZFTlNFIChHTUQpIEZJUkUgQ09OVFJPTCAoR0ZDKSBDRU5URVJcIl09YShcIkdGQ1wiKSxpW1wiR1IuRVEuSU4tRkxJR0hUIElOVEVSQ0VQVE9SIENPTU1VTklDQVRJT05TIFNZU1RFTSAoSUZJQ1MpIERBVEEgVEVSTUlOQUwgKElEVClcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4MCw4Mi40IDQ1LC0yIC00LDM3IG0gLTYsLTEgMCwtMzUgLTM0LDkgbSAxMiwyMSAwLDggTSA4MCw4Mi40IGMgMCwyNSAxNiwzNSA0MSwzNVwifSxpW1wiR1IuRVEuTEFTRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsNTUgMCwyNSAxMCw1IC0yMCw1IDIwLDUgLTIwLDUgMTAsNSAwLDE1IDEwLDUgLTIwLDUgMjAsNSAtMjAsNSAyMCw1IE0gOTAsNjUgMTAwLDU1IDExMCw2NVwifSxpW1wiR1IuRVEuVEVOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyNC40IDEwLC0zNyAyNSwtMTAgMjUsMTAgMTAsMzcgelwifSxpW1wiR1IuRVEuVEVOVCBDSVZJTElBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEyMCAxMCwtMzAgMTUsLTEwIDE1LDEwIDEwLDMwIHpcIn0saVtcIkdSLkVRLlRFTlQgTUlMSVRBUllcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTIwIDEwLC0zMCAxNSwtMTAgMTUsMTAgMTAsMzAgelwifSxpW1wiR1IuRVEuVU5JVCBERVBMT1lNRU5UIFNISVBNRU5UU1wiXT1hKFwiRFBMWVwiKSxpW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwxMjUgMCwtMjBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAzLDEwNSAwLDIwIG0gLTYsLTIwIDAsMjBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDYsMTA1IDAsMjAgbSAtMTIsLTIwIDAsMjAgbSA2LC0yMCAwLDIwXCJ9LGlbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsMTA1IDAsMjAgbSAtMTAsLTEwIDEwLDBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gOTAsMTI1IDIwLDAgbSAtMjAsMCBjIDAsLTQuMSAtMy40LC03LjUgLTcuNSwtNy41IC00LjEsMCAtNy41LDMuNCAtNy41LDcuNSAwLDQuMSAzLjQsNy41IDcuNSw3LjUgNC4xLDAgNy41LC0zLjQgNy41LC03LjUgeiBtIDM1LDAgNSwwIDAsLTIwIC0yMCwwIDAsLTIwIC0yMCwwIDAsMjAgLTIwLDAgMCwyMCA1LDAgbSA1MCwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSA5NSw5MCAwLDE1IDEwLDAgMCwtMTUgelwifV0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAtMjAsMCAtMjAsMCAwLC0yMCAtMjAsMCAwLDIwIDAsMjAgNSwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSA3NSw5MCAwLDE1IDEwLDAgMCwtMTUgelwifV0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAwLC0yMCAtMjAsMCAtMjAsMCAtMjAsMCAwLDIwIDAsMjAgNSwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSAxMTUsOTAgMCwxNSAxMCwwIDAsLTE1IHogbSAtMjAsMCAwLDE1IDEwLDAgMCwtMTUgeiBtIC0yMCwwIDAsMTUgMTAsMCAwLC0xNSB6XCJ9XSxpW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSBjIDAsLTQuMSAtMy40LC03LjUgLTcuNSwtNy41IC00LjEsMCAtNy41LDMuNCAtNy41LDcuNSAwLDQuMSAzLjQsNy41IDcuNSw3LjUgNC4xLDAgNy41LC0zLjQgNy41LC03LjUgeiBtIDM1LDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAtMzUsMCAyMCwwIG0gMTUsMCA1LDAgMCwtMjAgMCwtMjAgLTIwLDAgLTIwLDAgMCwyMCAtMjAsMCAwLDIwIDUsMFwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjIsZDpcIm0gOTUsOTAgMCwxNSAxMCwwIDAsLTE1IHpcIn1dLGlbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAtNjAsMCAwLDIwIDUsMCBtIDE1LC0yMCA1LC0xNVwifSxpW1wiR1IuRVEuUEFDSyBBTklNQUxcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCwxMjUgMTUsLTUwIDE1LDUwIDE1LC01MCAxNSw1MCBcIn0saVtcIkdSLkVRLk1JU1NJTEUgU1VQUE9SVFwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAwLGZvbnRzaXplOjIwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOjIwLHRleHQ6XCJTUFRcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFRSQU5TTE9BREVSXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1TTFwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDcwIDUwLDAgbSAtMjUsMTAgYyAwLC01IDAsLTEwIDAsLTEwXCJ9XSxpW1wiR1IuRVEuTUlTU0lMRSBUUkFOU1BPUlRFUlwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1NSw4NSA5MCwwXCJ9XSxpW1wiR1IuRVEuTUlTU0lMRSBDUkFORS9MT0FESU5HIERFVklDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3NSw4MCAyNSwtMjAgYyAwLDAgMCwxNSAwLDE1IGwgNSwwIDAsLTVcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFBST1BFTExBTlQgVFJBTlNQT1JURVJcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjkwLHk6MTEwLGZvbnRzaXplOjIwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjAsMTE1IDAsLTE1IC0xMCwtMTAgMjAsMCAtMTAsMTBcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFdBUkhFQUQgVFJBTlNQT1JURVJcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMCxmb250c2l6ZToyMCx0ZXh0OlwiTVNMXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZToyMCx0ZXh0OlwiV0hEXCJ9XSxpW1wiR1IuRVEuTEFORCBNSU5FXCJdPU4/e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjIsZmlsbDohMX06W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsNjUgNjAsMCAtMzAsNjUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5MCxmb250ZmFtaWx5OlwiQXJpYWxcIixmb250c2l6ZTozMCx0ZXh0OlwiTVwifV0saVtcIkdSLkVRLkFOVElQRVJTT05ORUwgTEFORCBNSU5FXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMn0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMTcsODIgbDIwLC0xOCAtMTgsMjV6IE04Myw4MiBsLTIwLC0xOCAxOCwyNXpcIixzdHJva2U6ITF9XSxpW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkUgTEVTUyBUSEFOIExFVEhBTFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMTcsODIgbDIwLC0xOCAtMTgsMjV6IE04Myw4MiBsLTIwLC0xOCAxOCwyNXpcIixzdHJva2U6ITF9XSxpW1wiR1IuRVEuQU5USVRBTksgTUlORVwiXT17dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMn0saVtcIkdSLkVRLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRVwiXT1hKFwiSUVEXCIpLGlbXCJHUi5FUS5MQU5EIE1JTkVTXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlI/XCJtIDEzNSw3MCAtNzAsMCAzNSw3MCB6XCI6XCJtIDY1LDEzMCA3MCwwIC0zNSwtNzAgelwifV0saVtcIkdSLkVRLlNFTlNPUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNjAgYyAwLDE1IDI1LDQwIDQwLDQwIC0xNSwwIC00MCwyNSAtNDAsNDAgMCwtMTUgLTI1LC00MCAtNDAsLTQwIDE1LDAgNDAsLTI1IDQwLC00MCB6XCJ9LGlbXCJHUi5FUS5TRU5TT1IgRU1QTEFDRURcIl09W3MuX3NjYWxlKC43NSxpW1wiR1IuRVEuU0VOU09SXCJdKSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDc1IDEwLC0xNSAxMCwxNSAxMCwtMTUgMTAsMTUgMTAsLTE1IDEwLDE1XCJ9XSxpW1wiR1IuRVEuUkFEQVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk03Miw5NSBsMzAsLTI1IDAsMjUgMzAsLTI1IE03MCw3MCBjMCwzNSAxNSw1MCA1MCw1MFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5BTlRFTk5BRVwiXT1bXSxpW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxzdHJva2U6byxkOlwibSAxMTAsOTUgMTAsMCBtIC0xMCwxMCAxMCwwIG0gLTEwLDEwIDEwLDAgbSAtMTAsLTMwIDEwLDAgbSAtMTAsLTUgLTEwLDEwIC0zMCwwIDAsMjAgMzAsMCAxMCwxMCB6XCJ9LGlbXCJHUi5JTi5JQy5FTERFUiBDQVJFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMC4xLDExOS4xIGMgMCwtNi4zIDIuMywtOC4yIDMuOSwtMTIuNiAxLC0yLjYgMS42LC0zLjMgMS44LC02LjUgMC4yLC0yLjQgMC45LC00LjcgMC45LC03LjIgdiAtMi42IGMgMCwtMi42IC0yLjIsLTguOSAtMy4zLC0xMC41IC0xLjMsLTIgLTQuOCwtNS40IC02LjcsLTYuOSAtMi4yLC0xLjggLTUuNCwtNC42IC04LjIsLTUuNiAtMS42LC0wLjUgLTkuOCwtMi40IC0xMS40LC0yLjMgbCAtNS43LDAuNiB2IDAuOCBjIDAsMC44IDIsMi43IDIuNCwzLjMgMCwzLjMgMC44LDYuOCAtMS4zLDguNCAtMi4yLDEuNiAtMi44LDMuNCAtMy44LDYuMyAtMC40LDEgLTAuOSwzLjEgLTEsNCAtMC4yLDEgLTAuMiw0IC0wLjQsNC42IC0xLjEsMi40IC0yLjYsNC4yIC0zLjgsNi40IGwgLTUuMSwwLjUgYyAtMi4xLDMuMiAtNC42LDQuMSAtNC42LDkuNiB2IDI2LjQgYyAwLjYsMC4yIDAuNCwwLjIgMC45LDAuMiAwLjUsMCAwLjMsLTAuMSAwLjksLTAuMiB2IC0yNy41IGMgMCwtMC43IDAuOCwtMyAxLjEsLTMuNSAwLjQsMC4yIDAuOCwwLjYgMS4zLDAuNiAwLjMsMCAxLjEsLTAuMyAxLjMsLTAuNCBsIDIuNiwwLjkgMC44LC0wLjYgMC42LDIuNSBjIDAuNCwwLjMgMC40LDAuNSAwLjgsMC41IGggMC40IGMgMC41LDAgMC42LC0wLjIgMC42LC0wLjYgdiAtMC40IGMgMCwtMSAtMS4yLC0zIC0xLjUsLTMuNyAxLjIsLTIuNSA2LjMsLTIuNiA4LjIsLTUuOCAwLjksLTEuNiAxLjgsLTMgMi42LC00LjUgMC40LC0wLjkgMi4zLC00LjEgMi40LC00LjQgaCA0LjQgYyAyLjMsMCAyLjEsMi41IDIuNiw0LjIgMC42LDIgMiwyIDIsNC42IDAsMi44IC0yLjksNyAtNCw5IC0wLjMsMC43IC0zLjksOC44IC0zLjksOC45IHYgMiBjIDAsMyAyLjYsOS4xIDIuNiwxMS4yIHYgMi4yIGMgLTEuMiwwLjMgLTYuOCwyLjQgLTYuOCwzLjUgMCwwLjMgMC40LDAuNiAwLjksMC42IGggNi44IGMgMi4zLDAgNC41LC0xIDYuNiwtMS4xIHYgLTMgYyAwLC0wLjYgLTEuMSwtMi4yIC0xLjEsLTMuNyAtMC45LC0xLjMgLTEuOCwtNiAtMS44LC04LjIgMCwtMy4yIDEuMiwtNS40IDIuNSwtNy40IDIuNSwtNCAwLjQsLTIuMyA0LjYsLTUuMSBsIDEuOCwxLjcgYyAtMSwxLjggLTIuMywzLjcgLTIuMyw2LjQgdiA1LjkgaCAwLjQgdiAwLjYgYyAwLDAuOSA1LDkgNS43LDEwLjMgLTEuNSwyLjMgLTYuNywxLjYgLTYuOCw1IGggNy41IGMgMS4yLDAgMy4zLC0xIDQuNSwtMS40IDEuNiwtMC41IDIuOSwtMS4xIDIuOSwtMyAwLC0wLjcgLTIuOSwtNC42IC0zLjYsLTUuNyAtMC4zLC0wLjQgLTIuNCwtNiAtMi40LC02LjYgdiAtMC40IHogbSAtNDUuMywtNDcuOSB2IDAuNiBjIDAsNC4zIDMuNyw3LjkgOC4xLDcuOSBoIDAuMiBjIDMuNywwIDcuNywtMy42IDcuNywtNyB2IC0yLjIgYyAwLC0zLjIgLTMuOSwtNi44IC03LjUsLTYuOCBoIC0xLjIgYyAtMy40LDAgLTcuMyw0IC03LjMsNy41IHpcIixzdHJva2U6ITF9LGlbXCJHUi5JTi5JQy5SQVcgTUFURVJJQUwgUFJPRFVDVElPTi9TVE9SQUdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5MCxmb250c2l6ZTozMCx0ZXh0OlwiUFNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJSTVwifV0saVtcIkdSLklOLklDLk1JTkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDg1IDEwLDEwIDUsLTUgYyAtNSwtNSAtMTAsLTUgLTE1LC01IHogTSA5NSw4NSA4NSw5NSA4MCw5MCBjIDUsLTUgMTAsLTUgMTUsLTUgeiBtIC01LDUgMzAsMzAgbSAtNDAsMCAzMCwtMzBcIn0saVtcIkdSLklOLklDLlBST0NFU1NJTkcgRkFDSUxJVFlcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjkwLGZvbnRzaXplOjMwLHRleHQ6XCJQUk9DXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyMCxmb250c2l6ZTozMCx0ZXh0OlwiRkFDXCJ9XSxpW1wiR1IuSU4uSUMuVVRJTElUWSBGQUNJTElUWVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlVUSUxcIn0saVtcIkdSLklOLklDLlJFU0VBUkNIXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiUiZEXCJ9LGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsODAgMTAsMjAgLTEwLDAgMTAsMjBcIixmaWxsOiExfSxpW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwLjUgYyAtMTYuNCwwIC0yOS42LDEzLjIgLTI5LjYsMjkuNiAwLDEyLjggOC4zLDIzLjkgMTkuNywyNy44IGwgMCwxOS43IGMgMy4yLDEuMiA2LjMsMS44IDkuOSwxLjggMy42LDAgNi43LC0wLjYgOS45LC0xLjggbCAwLC0xOS44IGMgMTEuNSwtMy45IDE5LjgsLTE1IDE5LjcsLTI3LjggMCwtMTYuNCAtMTMuMiwtMjkuNiAtMjkuNiwtMjkuNiB6XCIsZmlsbDohMX0saVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJOXCJ9LGlbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUiBEQU1cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJIXCJ9LGlbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUiBGT1NTSUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJGXCJ9LGlbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIk0gOTAuNCwxMTkgQyA4NC4yLDExNSA4MCwxMDkgODAsMTAxIGwgMjAsMCAtOS42LDE4IHogbSAxOS42LDAgLTEwLC0xOCAyMCwwIGMgMCw4IC00LDE0IC0xMCwxOCB6IE0gMTAwLDEwMSA4OS43LDgzLjggYyAzLC0yIDYuNSwtMyAxMC4zLC0zIDQsMCA3LDEgMTAsMyBMIDEwMCwxMDEgWlwiOlwiTSA4OS45LDgyLjUgMTEwLDgyLjcgODkuNywxMTcuMSA4MCw5OS45IDEyMC4xLDEwMCAxMTAsMTE3LjMgelwiLGZpbGw6ITF9LGlbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZIFdFQVBPTlMgR1JBREVcIl09e3R5cGU6XCJwYXRoXCIsZDpSP1wiTSA5MC40LDExOSBDIDg0LjIsMTE1IDgwLDEwOSA4MCwxMDEgbCAyMCwwIC05LjYsMTggeiBtIDE5LjYsMCAtMTAsLTE4IDIwLDAgYyAwLDggLTQsMTQgLTEwLDE4IHogTSAxMDAsMTAxIDg5LjcsODMuOCBjIDMsLTIgNi41LC0zIDEwLjMsLTMgNCwwIDcsMSAxMCwzIEwgMTAwLDEwMSBaXCI6XCJNIDg5LjksODIuNSAxMTAsODIuNyA4OS43LDExNy4xIDgwLDk5LjkgMTIwLjEsMTAwIDExMCwxMTcuMyB6XCJ9LGlbXCJHUi5JTi5JQy5BSVJDUkFGVCBQUk9EVUNUSU9OICYgQVNTRU1CTFlcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk1LjEsMTA5LjMgYyAwLDAgLTIwLjgsNC45IC0zMC4xLDYuNyAtMi4yLDAuNCAtNS43LDAuMiAtNi41LC0yIC0wLjQsLTEuMSAzLjMsLTYuNiA2LjUsLTcuMyA4LjcsLTEuOSAyNS43LC01LjUgMjUuNywtNS41IGwgMy4xLC0xNi4xIDQsLTAuOCAwLjMsMTUuOSAyNS42LC01LjggNi41LC0xMy4yIDUuMywtMS40IC0zLjMsMTYuMSAxNCw0LjggLTQuMywxLjIgLTEzLjcsLTIuOCAtMjMuNiw2LjcgMzEuNiwxMS44IC01LjUsMi41IHpcIn0saVtcIkdSLklOLklDLkJSSURHRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMTUgMTAsLTEwIDQwLDAgMTAsMTAgbSAtNjAsLTMwIDEwLDEwIDQwLDAgMTAsLTEwXCIsZmlsbDohMX0saVtcIkdSLklOLklDLkJBU0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsODUgNTAsMzAgbSAtNTAsMCA1MCwtMzBcIixmaWxsOiExfSxpW1wiR1IuSU4uSUMuU0VBIFNVUkZBQ0UgSU5TVEFMTEFUSU9OLCBPSUwgUklHL1BMQVRGT1JNXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMCwtNDAgbSAyNSw0MCAwLDE1IG0gLTM1LDAgMCwtMTUgNTAsMCAwLDE1XCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsOTAgMTUsMCAwLDE1IC0xNSwwIDAsLTE1XCJ9XSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkvQ0lWSUxJQU4uTUFURVJJRUxcIl09YShcIk1BVFwiKSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkvQ0lWSUxJQU4uUFJJTlRFRCBNRURJQVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6OTAscjoxMCxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTAscjoxMCxmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwibSA2NSwxMDAgNzUsMFwiLGZpbGw6ITF9XSxpW1wiR1IuSU4uSUMuSU5GUkFTVFJVQ1RVUkUuQkFOS0lORyBGSU5BTkNFIEFORCBJTlNVUkFOQ0UgIElORlJBU1RSVUNUVVJFLkVDT05PTUlDIElORlJBU1RSVUNUVVJFIEFTU0VUXCJdPWEoXCJFQ09OXCIpLGlbXCJHUi5JTi5JQy5JTkZSQVNUUlVDVFVSRS5URUxFQ09NTVVOSUNBVElPTlMgSU5GUkFTVFJVQ1RVUkUuVEVMRUNPTU1VTklDQVRJT05TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDEwNSAyMCwwIDAsMCBtIC0yNSwxNSAxNSwtMzAgMTUsMzAgbSAtNTUsLTQwIDI1LDEwIDAsLTEwIDE1LDEwIDE1LC0xMCAwLDEwIDI1LC0xMFwiLGZpbGw6ITF9LGlbXCJHUi5JTi5NMS5SQURJT0xPR0lDQUxcIl09bChcIlJcIiksaVtcIkdSLklOLk0xLkNPQUxcIl09bChcIkNPXCIpLGlbXCJHUi5JTi5NMS5HRU9USEVSTUFMXCJdPWwoXCJHVFwiKSxpW1wiR1IuSU4uTTEuSFlEUk9FTEVDVFJJQ1wiXT1sKFwiSFlcIiksaVtcIkdSLklOLk0xLk5BVFVSQUwgR0FTXCJdPWwoXCJOR1wiKSxpW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw3NSAwLC0xMCAtNiwtMTAgMTIsMCAtNiwxMFwiLGZpbGw6ITF9LGlbXCJHUi5JTi5NMS5DSVZJTElBTlwiXT1sKFwiQ0lWXCIpLGlbXCJHUi5JTi5NMS5DSVZJTElBTiBURUxFUEhPTkVcIl09bChcIlRcIiksaVtcIkdSLklOLk0xLkNJVklMSUFOIFRFTEVWSVNJT05cIl09bChcIlRWXCIpLGlbXCJHUi5JTi5NMi5DSEVNSUNBTCBXQVJGQVJFIFBST0RVQ1RJT05cIl09cihcIkNcIiksaVtcIkdSLklOLk0yLk5VQ0xFQVIgV0FSRkFSRSBQUk9EVUNUSU9OXCJdPXIoXCJOXCIpLGlbXCJHUi5JTi5NMi5SQURJT0xPR0lDQUwgV0FSRkFSRSBQUk9EVUNUSU9OXCJdPXIoXCJSXCIpLGlbXCJHUi5JTi5NMi5BVE9NSUMgRU5FUkdZIFJFQUNUT1JcIl09cihcIkFcIiksaVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXT1yKFwiUFwiKSxpW1wiR1IuSU4uTTIuTlVDTEVBUiBNQVRFUklBTCBTVE9SQUdFXCJdPXIoXCJTXCIpLGlbXCJHUi5JTi5NMi5DSEVNSUNBTCAmIEJJT0xPR0lDQUwgV0FSRkFSRVwiXT1yKFwiQlwiKSxpW1wiR1IuSU4uTTIuU0hJUCBDT05TVFJVQ1RJT05cIl09cihcIllSRFwiKSxpW1wiR1IuSU4uTTIuV0VBUE9OUyBHUkFERSBQUk9EVUNUSU9OXCJdPXIoXCJXXCIpLGlbXCJTT0YuSUMuVU5ERVJXQVRFUiBERU1PTElUSU9OIFRFQU1cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMyLHRleHQ6XCJVRFRcIn0saVtcIlNPRi5NMi5BVFRBQ0tcIl09cihcIkFcIiksaVtcIlNPRi5NMi5SRUZVRUxcIl09cihcIktcIiksaVtcIlNPRi5NMi5VVElMSVRZXCJdPXIoXCJVXCIpLGlbXCJTT0YuTTIuVlNUT0xcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTM1LGZvbnRzaXplOjIwLHRleHQ6XCJWU1RPTFwifSxpW1wiU09GLk0yLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXT1yKFI/XCJDU0FSXCI6XCJIXCIpLGlbXCJTVC5JQy5BUlJFU1RcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTIuNSwxMDAgMTUsMCBtIC0yLjUsLTEwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTUsNSAwLDIwIG0gMjAsLTE1IGMgMCwxMSAtOSwyMCAtMjAsMjAgLTExLDAgLTIwLC05IC0yMCwtMjAgMCwtMTEgOSwtMjAgMjAsLTIwIDExLDAgMjAsOSAyMCwyMCB6XCIsZmlsbDohMX0saVtcIlNULklDLkFSU09OL0ZJUkVcIl09Uj9be3R5cGU6XCJwYXRoXCIsZDpcIm0gODQuNiwxMDEuNiBjIDEuMywyMy4xIDMxLDIzLjIgMzAuNywtMS45IC0xLjUsMi4xIC00LjYsNi41IC04LjEsNy4zIDEuOSwtMi40IDIuNiwtOC41IDIuNCwtMTIuOSAtMS43LDMuNCAtNCw3LjkgLTcsNy44IDEuNywtNC4zIDIuNywtOS40IC0wLjUsLTEzLjcgLTAuMiwzIDAuOCw3LjEgLTEuOSw3IC0yLjcsLTAuMSAtMi45LC00LjQgLTEuMSwtMTAuOCAtNCw0LjEgLTYuMiw5LjggLTMuOCwxNy41IC0xLjksLTAuMiAtNC40LC0xLjkgLTcsLTcuOCAtMS41LDQuOSAxLjIsOS42IDMuMiwxMy43IC0yLjQsLTEuMSAtNiwtMyAtNywtNi4yIHpcIixzdHJva2U6ITF9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5Ojc1LGZvbnRzaXplOjI1LHRleHQ6XCJBU05cIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiRklSRVwifSxpW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyNywxMjcgNSw1IG0gLTE1LC0xNSA1LDUgbSAtMTUsLTE1IDUsNSBtIC0xNSwtMTUgNSw1IG0gLTE1LC0xNSA1LDUgbSAtMTUsLTE1IDUsNSBtIC0xNSwtMTUgNSw1XCIsZmlsbDohMX0saVtcIlNULklDLkJMQUNLIExJU1QgTE9DQVRJT05cIl09YShcIkJMS1wiKSxpW1wiU1QuSUMuQkxBQ0sgTUFSS0VUSU5HXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiQkxLXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiTUtUXCJ9XSxpW1wiU1QuSUMuQk9NQlwiXT1hKFwiQk9NQlwiKSxpW1wiU1QuSUMuQk9PQlkgVFJBUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMTUsLTI1IDE1LDI1IG0gLTM1LDUgYyAwLC0xMCA0MCwtMTAgNDAsMCAwLDEwIC00MCwxMCAtNDAsMCB6XCIsZmlsbDohMX0saVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4NSAwLDMwIG0gLTM1LC0xNSA0NSwwIG0gMjAsMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgelwiLGZpbGw6ITF9LGlbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdPWEoXCJNQVNTXCIpLGlbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4NSA1LC01IDUsNSBtIC01LC01IDAsMzAgbSAtMTUsMCAzMCwwIG0gNSw1IGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTMwLDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHpcIixmaWxsOiExfSxpW1wiU1QuSUMuRFJVRyBSRUxBVEVEIEFDVElWSVRJRVNcIl09YShcIkRSVUdcIiksaVtcIlNULklDLkVYUExPU0lPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTAsNTUgNSwyMCAxNSwtMTAgMCwxNSAxNSw1IC0xNSwxMCAxNSwxMCAtMTUsNSA1LDE1IC0yMCwtNSAtNSwyMCAtMTAsLTE1IC0xMCwyMCAtNSwtMjUgLTIwLDEwIDUsLTE1IEwgNTUsMTA1IDcwLDk1IDYwLDg1IDcwLDgwIDcwLDY1IDg1LDc1IDkwLDU1IDEwMCw3MCB6XCIsZmlsbDohMX0saVtcIlNULklDLkVYVE9SVElPTlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMzAsZm9udHNpemU6ODAsdGV4dDpcIiRcIn0saVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDUsODUgYyAtNSwxMCAtNSwyMCAwLDMwIG0gMCwtMzAgYyAtMjAsMCAtMjAsMzAgMCwzMFwiLGZpbGw6ITF9LHtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsMTIwIGwxMzAsMCBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxMjAgbDE1MCwwIFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSwxMjAgbDExMCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCwxMjAgbDEwMCwwIFwiLGZpbGw6ITF9fVtUXV0saVtcIlNULklDLkdSQUZGSVRJXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMCw4MCBjIC0xMCwwIC0xMCwxMCAwLDEwIDEwLDAgMTAsMTAgMCwxMCAtMTAsMCAtMTAsMTAgMCwxMCAxMCwwIDEwLDEwIDAsMTAgTSA5MCw4MCBjIC0xMCwwIC0xMCwxMCAwLDEwIDEwLDAgMTAsMTAgMCwxMCAtMTAsMCAtMTAsMTAgMCwxMCAxMCwwIDEwLDEwIDAsMTBcIixmaWxsOiExfSxpW1wiU1QuSUMuR1JPVVBcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTMzLDkwIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwIG0gLTUyLC0xMi4zIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwIG0gMjMsLTcuMyBjIDAsMTAgLTE1LDEwIC0xNSwwIDAsLTEwIDE1LC0xMCAxNSwwIHogbSAtOCw3LjMgMCwyNSBtIC0xMCwtMjAgMjAsMFwiLGZpbGw6ITF9LGlbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxkOlwibSA3MCw5NSAwLDEwIDY1LDAgMCwtMTAgeiBtIDU1LDEwIDAsMTAgNSwwIDAsLTEwIHogbSAwLC0xMCAwLC0xMCA1LDAgMCwxMCB6IG0gLTQ1LDEwIDAsMTUgMTAsMCAwLC0xNSB6IG0gMCwtMTAgMCwtMTUgMTAsMCAwLDE1IHpcIn0saVtcIlNULklDLkhJSkFDS0lORyAoQk9BVClcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP0c6IUMmJkcsZDpcIm0gMTA1LDgwIDAsMjAgMjAsMCB6IG0gLTUsMjUgMCwtMjUgbSAtMzAsMjUgMTAsMTUgNDAsMCAxMCwtMTUgelwifSxpW1wiU1QuSUMuR1JBWSBMSVNUIExPQ0FUSU9OXCJdPWEoXCJHUkFZXCIpLGlbXCJTVC5JQy5JRURcIl09YShcIklFRFwiKSxpW1wiU1QuSUMuSU5ESVZJRFVBTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDgsOTAgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDBcIixmaWxsOiExfSxpW1wiU1QuSUMuSU5URVJOQUwgU0VDVVJJVFkgRk9SQ0VcIl09YShcIklTRlwiKSxpW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwOCw5MCBjIDAsMTAgLTE1LDEwIC0xNSwwIDAsLTEwIDE1LC0xMCAxNSwwIHogbSAtOCw3LjMgMCwyNSBtIC0xMCwtMjAgMjAsMFwiLGZpbGw6ITF9LHtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01MCw2NSAxNTAsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsNTAgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSw0NSAxNTUsMTU1XCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTU3LDcwIDE0MywxMzBcIn19W1RdXSxpW1wiU1QuSUMuS0lMTElORyBWSUNUSU1TXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMzMsOTAgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDAgbSAtNTIsLTEyLjMgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDAgbSAyMywtNy4zIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwXCIsZmlsbDohMX0se1Vua25vd246e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTUwLDY1IDE1MCwxMzVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0yNSw1MCAxNzUsMTUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTQ1LDQ1IDE1NSwxNTVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTcsNzAgMTQzLDEzMFwifX1bVF1dLGlbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2NSw5NSA3MCwwIG0gMCwxMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgeiBtIC01MCwwIGMgMCw1LjUgLTQuNSwxMCAtMTAsMTAgLTUuNSwwIC0xMCwtNC41IC0xMCwtMTAgMCwtNS41IDQuNSwtMTAgMTAsLTEwIDUuNSwwIDEwLDQuNSAxMCwxMCB6XCIsZmlsbDohMX0saVtcIlNULklDLk1BU1MgR1JBVkUgTE9DQVRJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzcuNSw5MCAxMCwwIG0gLTUsLTUgMCwxNSBtIDcuNSwtMjAgMCwzMCAtMTUsMCAwLC0zMCB6IG0gMjIuNSwxMCAxMCwwIG0gLTUsLTUgMCwxNSBtIC03LjUsLTIwIDAsMzAgMTUsMCAwLC0zMCB6IG0gLTE1LDIwIDEwLDAgbSAtNSwtNSAwLDIwIG0gLTcuNSwtMjUgMTUsMCAwLDMwIC0xNSwwIHpcIixmaWxsOiExfSxpW1wiU1QuSUMuTUlORSBMQVlJTkdcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg1IDgwLDAgMCwzMCAtODAsMCB6XCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTM1LDEwMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgeiBtIC0yNSwwIGMgMCw1LjUgLTQuNSwxMCAtMTAsMTAgLTUuNSwwIC0xMCwtNC41IC0xMCwtMTAgMCwtNS41IDQuNSwtMTAgMTAsLTEwIDUuNSwwIDEwLDQuNSAxMCwxMCB6IG0gLTI1LDAgYyAwLDUuNSAtNC41LDEwIC0xMCwxMCAtNS41LDAgLTEwLC00LjUgLTEwLC0xMCAwLC01LjUgNC41LC0xMCAxMCwtMTAgNS41LDAgMTAsNC41IDEwLDEwIHpcIixzdHJva2U6ITF9XSxpW1wiU1QuSUMuUEFUUk9MTElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMzEsOTcgMCwtMTQgNSwwIGMgNCwwIDQsNyAwLDcgbCAtNSwwIG0gLTcxLDE1IDE1LDEwIE0gNjAsMTA1IDc1LDk1IG0gLTE1LDEwIDQwLDAgLTE1LC0xNSA0MCwwXCIsZmlsbDohMX0saVtcIlNULklDLlBPSVNPTklOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw5NSBjIDAsLTIwIDMwLC0yMCAzMCwwIDAsMjAgLTMwLDIwIC0zMCwwIHogbSAtMTUsMTAgNjAsMTUgbSAtNjAsMCA2MCwtMTVcIixmaWxsOiExfSxpW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTpvLGQ6XCJtIDExMCw5NSAxMCwwIG0gLTEwLDEwIDEwLDAgbSAtMTAsMTAgMTAsMCBtIC0xMCwtMzAgMTAsMCBtIC0xMCwtNSAtMTAsMTAgLTMwLDAgMCwyMCAzMCwwIDEwLDEwIHpcIn0saVtcIlNULklDLlJBRElPIEFORCBURUxFVklTSU9OIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXT1baVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXSx7VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTAsNjUgMTAwLDExMCAxMDAsOTAgMTUwLDEzNVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTI1LDUwIDEwMCwxMTAgMTAwLDkwIDE3NSwxNTBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNDUsNDUgMTAwLDExMCAxMDAsOTAgMTU1LDE1NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01Nyw3MCAxMDAsMTEwIDEwMCw5MCAxNDMsMTMwXCJ9fVtUXV0saVtcIlNULklDLlJJT1RcIl09YShcIlJJT1RcIiksaVtcIlNULklDLlNBRkUgSE9VU0VcIl09YShcIlNBRkVcIiksaVtcIlNULklDLlNFQVJDSElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxNDAsMTA1IGMgLTEwLDAgLTUsMCAtMTAsMCAtMTUsMCAtNSwtMTUgLTIwLC0xNSAtMTUsMCAtNSwyMCAtMjAsMjAgLTE1LDAgLTUsLTIwIC0yMCwtMjAgLTEwLDAgLTEwLDEwIC0xMCwxMCBtIDcwLDAgMTAsNSAtMTAsNVwiLGZpbGw6ITF9LGlbXCJTVC5JQy5TUFlcIl09YShcIlNQWVwiKSxpW1wiU1QuSUMuU05JUElOR1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsODUgNSwtNSA1LDUgbSAtNSwtNSAwLDQwXCIsZmlsbDohMX0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzUsZm9udHNpemU6MjUsdGV4dDpcIlNcIn1dLGlbXCJTVC5JQy5WQU5EQUxJU00vTE9PVC9SQU5TQUNLL1BMVU5ERVIvU0FDS1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTAwIGMgMCwtNSA1LC0xMCAxMCwtMTAgTSA4NSwxMDAgQyA4NSw5NSA4MCw5MCA3NSw5MCBtIDUsMjUgYyAtMC41LC0yOS41IDQwLC0zMCA0MCwwIHpcIixmaWxsOiExfSxpW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXT1hKFwiV0hUXCIpLGlbXCJTVC5JQy5ST0JCRVJZXCJdPWEoXCJST0JcIiksaVtcIlNULklDLlRIRUZUXCJdPWEoXCJUSEZcIiksaVtcIlNULklDLkJVUkdMQVJZXCJdPWEoXCJCVVJcIiksaVtcIlNULklDLlNNVUdHTElOR1wiXT1hKFwiU01HTFwiKSxpW1wiU1QuSUMuU0FCT1RBR0VcIl09YShcIlNBQlwiKSxpW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXT1hKFwiRFJVR1wiKSxpW1wiU1QuSUMuU1BZXCJdPWEoXCJTUFlcIiksaVtcIlNULklDLldBUlJBTlQgU0VSVkVEXCJdPWEoXCJXTlRcIiksaVtcIlNULklDLlBPTExJTkcgUExBQ0UvRUxFQ1RJT05cIl09YShcIlZPVEVcIiksaVtcIlNULklDLk5BVFVSQUwgRVZFTlRcIl09YShcIk5BVFwiKSxpW1wiU1QuSUMuR0VPTE9HSUNcIl09YShcIkdFT0xcIiksaVtcIlNULklDLkhZRFJPLU1FVEVPUk9MT0dJQ0FMXCJdPWEoXCJIWURSXCIpLGlbXCJTVC5JQy5JTkZFU1RBVElPTlwiXT1hKFwiSU5GU1wiKSxpW1wiU1QuSUMuR1JFTkFERVwiXT1hKFwiR1wiKSxpW1wiU1QuSUMuSU5DRU5ESUFSWVwiXT1hKFwiSVwiKSxpW1wiU1QuSUMuTUlORVwiXT1hKFwiTVwiKSxpW1wiU1QuSUMuSE9VU0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gNzAsMTAwIDYwLDAgbSAtMzAsLTIwIC0zMCwyMCAwLDM1IDYwLDAgMCwtMzUgLTMwLC0yMCB6XCJ9LGlbXCJTVC5JQy5ST0NLIFRIUk9XSU5HXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDYwIDI1LDI1IE0gNzAsNjUgOTUsOTAgTSA2MCw4MCA4MCwxMDAgbSA0NSwtNSA1LDE1IC01LDE1IC0yMCwxMCAtMjAsLTUgLTUsLTIwIDUsLTUgMTAsMCA1LC0xMCAxMCwtNSAxNSw1IHpcIn0saVtcIlNULk0xLkFDQ0lERU5UXCJdPWwoXCJBQ0NcIiksaVtcIlNULk0xLkFTU0FTU0lOQVRJT05cIl09bChcIkFTXCIpLGlbXCJTVC5NMS5DSVZJTElBTlwiXT1sKFwiQ0lWXCIpLGlbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXT1sKFwiQ1wiKSxpW1wiU1QuTTEuQ09NQkFUXCJdPWwoXCJDQlRcIiksaVtcIlNULk0xLkRFQUQgQk9EWVwiXT1sKFwiREJcIiksaVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdPWwoXCJEUFJFXCIpLGlbXCJTVC5NMS5EUlVHXCJdPWwoXCJEUlVHXCIpLGlbXCJTVC5NMS5FVklDVElPTlwiXT1sKFwiRVZcIiksaVtcIlNULk0xLkVYRUNVVElPTiAoV1JPTkdGVUwgS0lMTElORylcIl09bChcIkVYXCIpLGlbXCJTVC5NMS5FWEZJTFRSQVRJT05cIl09bChcIkVYRkxcIiksaVtcIlNULk0xLkZPUkVJR04gRklHSFRFUlNcIl09bChcIkZGXCIpLGlbXCJTVC5NMS5HQU5HXCJdPWwoXCJHQU5HXCIpLGlbXCJTVC5NMS5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXT1sKFwiR09cIiksaVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXT1sKFwiSFwiKSxpW1wiU1QuTTEuSE9VU0UtVE8tSE9VU0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gMTEwLDY1IC0yMCwwIDAsMTUgMjAsMCB6IG0gLTEwLC0xMCAtMTAsMTAgMjAsMCB6XCJ9LGlbXCJTVC5NMS5JRURcIl09bChcIklFRFwiKSxpW1wiU1QuTTEuSU5DSURFTlRcIl09bChcIklOQ1wiKSxpW1wiU1QuTTEuSU5GSUxUUkFUSU9OXCJdPWwoXCJJTkZMXCIpLGlbXCJTVC5NMS5LSUROQVBQSU5HXCJdPWwoXCJLXCIpLGlbXCJTVC5NMS5MQUJSQVRPUllcIl09bChcIkxBQlwiKSxpW1wiU1QuTTEuTEVBREVSXCJdPWwoXCJMRFJcIiksaVtcIlNULk0xLkxPT1RcIl09bChcIkxPT1RcIiksaVtcIlNULk0xLk1FRVRJTkdcIl09bChcIk1UR1wiKSxpW1wiU1QuTTEuTVVSREVSXCJdPWwoXCJNVVwiKSxpW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXT1sKFwiTkdPXCIpLGlbXCJTVC5NMS5PVEhFUlwiXT1sKFwiT1RIXCIpLGlbXCJTVC5NMS5QSVJBQ1lcIl09bChcIlBJXCIpLGlbXCJTVC5NMS5QUkVNQVRVUkVcIl09bChcIlBcIiksaVtcIlNULk0xLlJBSURcIl09bChcIlJBSURcIiksaVtcIlNULk0xLlJBUEVcIl09bChcIlJBXCIpLGlbXCJTVC5NMS5SRUxJR0lPVVNcIl09bChcIlJFTFwiKSxpW1wiU1QuTTEuU1BFQUtFUlwiXT1sKFwiU1BLXCIpLGlbXCJTVC5NMS5UQVJHRVRFRFwiXT1sKFwiVEdUXCIpLGlbXCJTVC5NMS5URVJST1JJU1RcIl09bChcIlRFUlwiKSxpW1wiU1QuTTEuVFJBRkZJQ0tJTkdcIl09bChcIlRGS1wiKSxpW1wiU1QuTTEuV0lMTElORyBSRUNSVUlUXCJdPWwoXCJXUlwiKSxpW1wiU1QuTTEuV1JJVFRFTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl09aVtcIlNULk0xLldJTExJTkdcIl09bChcIldcIiksaVtcIlNULk0xLkZBTFNFXCJdPWwoXCJGQUxcIiksaVtcIlNULk0xLkZJTkRcIl09bChcIkZORFwiKSxpW1wiU1QuTTEuRk9VTkQgQU5EIENMRUFSRURcIl09bChcIkNMUlwiKSxpW1wiU1QuTTEuSE9BWCAoREVDT1kpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDkwLDc1IDgwLDY3LjUgOTAsNjAgOTAsNzUgWiBtIDE1LDAgLTEwLC03LjUgMTAsLTcuNSAwLDE1IHogbSAxNSwwIC0xMCwtNy41IDEwLC03LjUgMCwxNSB6XCJ9LGlbXCJTVC5NMS5BVFRFTVBURURcIl09bChcIkFUVFwiKSxpW1wiU1QuTTEuQUNDSURFTlRcIl09bChcIkFDQ1wiKSxpW1wiU1QuTTEuSU5DSURFTlRcIl09bChcIklOQ1wiKSxpW1wiU1QuTTEuVEhFRlRcIl09bChcIlRIRlwiKSxpW1wiU1QuTTEuUElSQVRFXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo2MCxyOjcsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4Mi41LDc1IDM1LC0xNSBtIDAsMTUgLTM1LC0xNSBtIDMsNyA1LDEwIG0gMjcsLTEwIC0xMCwxMFwifV0saVtcIlNULk0yLkxFQURFUiBPUiBMRUFERVJTSElQXCJdPXIoXCJMRFJcIiksaVtcIlNULk0yLlJFTElHSU9VU1wiXT1yKFwiUkVMXCIpLGlbXCJBQy5JQy5DUklNSU5BTC5BQ1RJVklUWS5JTkNJREVOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjcsNjYuNyBjIC0zLjIsMC43IC02LjMsMy43IC02LjQsNyAwLjMsMy42IDUuMywyLjggNywwLjYgMiwtMS4yIDEuNywtNC41IDQuNSwtMy43IDIuNiwtMC42IDMuMiwzLjIgNS45LDMuMiAxLjYsMS41IDQuNCwtMC42IDUuNCwxLjIgMC43LDEuMSAxLjUsMi4yIDIuMiwzLjMgLTIsMy4xIC0xLjMsNy45IDEuOSwxMCAzLjUsMS4xIDQuOCwtMy41IDQuMSwtNi4yIC0wLjIsLTMgLTIuNSwtNSAtNS4xLC01LjQgLTEuNSwtMS45IC0yLjcsLTMuNCAtMS42LC01LjYgLTEsLTMuMyAtNS4xLC00LjUgLTguMiwtNC4zIC0yLjIsMC4zIC0yLjksMi42IC01LjMsMS45IC0xLjksMC40IC0xLjksLTIuOCAtNC4zLC0yIHogbSAwLjIsMS4zIGMgMi43LDAuNSAwLjksMC42IC0wLjYsMS4zIC0wLjUsMi4yIDMuOCwwLjQgMS40LDIuOSAtMC45LDEuOSAtNS44LDQuNyAtNS45LDEuMSAwLjEsLTIuNSAyLjcsLTQuOCA1LjEsLTUuMiB6IG0gMTAuMywwLjEgYyAyLjQsLTAuNSA3LjEsMi4zIDUuNiwzLjcgLTAuOCwtMi4xIC0zLDAgLTEuMiwxLjIgLTEuNywwLjkgLTcuNCwtMS42IC01LjcsLTIuNCAyLjUsMC44IDIuOCwtMi43IC0wLC0xLjkgLTEuNCwwLjIgMS4xLC0wLjggMS4zLC0wLjYgeiBNIDgxLjksNzEuNiBjIC0xLjgsMS45IC0zLjYsMy45IC01LjUsNS44IC03LjUsLTAuMSAtMTQsNi4yIC0xNS43LDEzLjIgLTAuNiw0LjIgMC41LDguNSAyLjgsMTIgMC43LDMuOSAtMy4yLDYuNyAtMywxMC43IC0wLjgsNy40IDQuOCwxNC41IDExLjcsMTYuOCAyLjMsLTAuNCAxLjMsMS4zIDEuNCwyIDEuNSwtMC40IDMsLTAuOCA0LjYsLTEuMiAtMC4yLDEuNSAtMC4xLDIuNyAxLjQsMS4yIDAuOSwtMC4zIDIuMywtMi4yIDIuOSwtMS41IDAuMiwyLjIgMS4yLDAuMSAyLC0wLjcgMC44LC0xLjIgMS42LC0yLjMgMi40LC0wLjUgMS4yLC0yLjQgNC4xLC03LjIgLTAuOCwtNy4zIC0zLjQsMi4zIC03LjUsNC42IC0xMS44LDMuNSAtNi4zLC0xLjUgLTEwLjksLTguOCAtOC4yLC0xNC45IDAuNCwtMy45IDYuOCwtMy40IDUsLTguMiAtMS44LC0yLjYgLTUuNywtMi45IC01LjcsLTcgLTEuNSwtNy4zIDUuNiwtMTQuNyAxMywtMTMuNyA0LjcsMC41IDcuNCw0LjkgMTAuOCw3LjYgMS45LDEuOSA0LjEsNS4xIDUuOSwxLjQgMi44LC0yIDQuMywtNC43IDEuOCwtNy42IEMgOTQuOCw3OS43IDkwLjksNzcuMyA4OCw3NC40IDg2LjMsNzIuOSA4My45LDcyLjYgODEuOSw3MS42IHogbSAzLjMsMy44IGMgMS42LDEuMSAyLjksMi4xIDAuMywzLjMgLTAuOSwzLjcgLTUuMSwtMC41IC0xLjUsLTEuNSAwLjQsLTAuNiAwLjksLTEuMSAxLjIsLTEuOCB6IG0gMzQuMiwzLjEgYyAzLDEuNCAzLjksNi40IDEuNCw4LjggLTIuOSwwLjEgLTMuNiwtNC4zIC0zLjEsLTYuNiAwLjEsLTIuOSAyLjUsMi43IDIuNSwtMC43IC0wLjIsLTAuNSAtMC41LC0xIC0wLjgsLTEuNCB6IE0gMTI3LjMsOTAuMiBjIC00LjMsMC40IC04LjgsLTAgLTEzLjEsMSAtMi4xLDEuMSAtNS43LDEuNSAtNC42LDQuNSAwLjEsMS44IDAuMiwzLjYgMC40LDUuNCAtNC45LDQuOSAtNS41LDEzLjMgLTIuMiwxOS4yIDIuNCw0LjMgNyw3IDExLjgsNy44IDMuMyw0LjkgNy4zLC0xLjMgMTEuMiwtMS43IDUuNSwtMi41IDguOSwtOC41IDguNSwtMTQuNSAwLjIsLTUgLTIuNCwtMTAuMSAtNi43LC0xMi44IC0wLjEsLTIuMyAtMC4yLC00LjYgLTAuMywtNi45IC0xLjYsLTAuOCAtMy40LC0xLjQgLTUuMSwtMi4xIHogTSAxMjcuOCw5Mi41IGMgLTAuOSwxLjcgMC42LDMuOCAtMC45LDQuOSAtMi4zLDAuNyAtMS43LC0yLjQgLTEuOSwtMy44IC0wLjYsLTEuNyAxLjksLTAuNyAyLjgsLTEgeiBtIC0yLjksOC4zIGMgNC4xLDAuOSA4LDMuNyA5LjMsNy45IDAuOSwzLjcgMC41LDggLTIuMywxMC45IC0xLjcsMiAtNS4zLDQuMyAtNy43LDMuMSAtMy4xLC0wLjggLTUuOCwyLjEgLTguNiwtMC41IC02LjksLTQuMiAtNy4yLC0xNiAwLjIsLTE5LjggMi43LC0xLjYgNiwtMS42IDkuMSwtMS42IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDg1LjEgNzUuMyBDIDg1IDc1LjggODQuMiA3Ni43IDgzLjkgNzcuMSBDIDgzLjYgNzcuNiA4Mi40IDc3LjkgODIuNCA3OC42IEwgODIuNCA3OSBDIDgyLjQgNzkuNCA4My4zIDgwLjEgODMuNiA4MC4xIEwgODMuOCA4MC4xIEMgODQuOCA4MC4xIDg1IDc5LjEgODUuNCA3OC42IEMgODUuNyA3OC4yIDg2LjcgNzcuNCA4Ny4yIDc3IEwgODUuMSA3NS4zIHogTSAxMjcuOCA5Mi41IEwgMTI1IDkyLjcgTCAxMjUuMiA5Ni41IEMgMTI1LjMgOTcuNSAxMjUuOSA5Ny4zIDEyNi41IDk3LjYgQyAxMjcuMSA5Ny4zIDEyNy44IDk3LjEgMTI3LjggOTYuMyBDIDEyNy44IDk1LjggMTI3LjcgOTUuNiAxMjcuNSA5NS4zIEwgMTI3LjggOTIuNSB6XCJ9XSxpW1wiQUMuSUMuQ1JJTUlOQUwuQ0lWSUwgRElTVFVSQkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDExMC42LDE0Mi40IDAsLTI4LjYgLTcuMSwwIDAsMjguNiB6IG0gLTIxLjIsMCA3LjEsMCAwLC0yOC42IC03LjEsMCB6IG0gNy4xLC0yOC42IGggNy4xIHYgLTExLjggaCAyNC40IFYgNzcuMiBoIC02LjMgdiAxOC42IGggLTE4IHYgLTEwLjcgYyAwLC0wLjkgMi4xLC0xLjIgMywtMS43IDAuOCwtMC40IDIuMSwtMS40IDIuNywtMiAxLjUsLTEuNCAzLjIsLTMuNiAzLjgsLTUuOSAxLjYsLTYuMyAtMC4yLC0xMC42IC0zLjgsLTE0LjEgLTMsLTMuMSAtOS4yLC00LjkgLTE0LjMsLTIuNyAtMy42LDEuNiAtOC40LDYuMiAtOC40LDExIHYgMy4yIGMgMCwyLjggMS45LDYuMiAzLjMsNy43IDEsMSAxLjgsMS43IDMsMi41IDEsMC42IDMuNiwxLjMgMy42LDIuMiB2IDEwLjcgSCA3OC40IHYgLTE4LjYgaCAtNi4zIHYgMjQuOSBoIDI0LjQgdiAxMS44IGggLTAgelwifSxpW1wiQUMuSUMuU0hPT1RJTkdcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDkzLjIsODkuNyBoIDE2LjggdiA5LjMgYyAtMi42LDAgLTcuMywxLjYgLTksMSAtMi4zLC0wLjggLTUuNCwtMiAtNy44LC0yLjYgdiAtNy44IGwgMCwwIHogbSAtMzAsMCBoIDI2LjEgdiA5LjYgYyAwLDAuOSA0LjEsMiA1LDIuMyAxLjksMC42IDMuNiwxLjQgNS41LDIgMiwwLjcgMy40LDAuNCA2LC0wLjEgMS42LC0wLjMgNS43LC0wLjQgNi42LC0wLjkgMC42LDIuNyA0LjYsMTQgNC42LDE1LjIgMCwxLjYgLTEuMiw0IC0xLjMsNS43IGwgMjEuNSwwIC04LjIsLTI1LjkgNy44LC03LjcgYyAtMC44LC0xLjYgLTQuMSwtMTMuNCAtNS4yLC0xMy40IGggLTY4LjQgdiAxMy4yIGwgMCwwIHpcIn0saVtcIkFDLklDLkZJUkUgRVZFTlRcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk2LjUsNzguNSBjIDAsLTUuMSA0LjEsLTkuNyA0LjEsLTEzIHYgLTAuNCBjIDAsLTEuMyAtMCwtMy44IC0xLjEsLTQuMSAtMSw0LjUgLTMuNSw4IC01LjksMTEuMiAtMS4yLDEuNiAtMi40LDMuMyAtMy42LDUgLTEsMS40IC0zLjEsMy41IC0zLjEsNS41IDAsMS40IDYuMSwxNy43IDMsMTcuNyAtMC4xLDAgLTMuOCwtMi41IC00LjIsLTIuOSAtMS40LC0xIC0yLjQsLTIuMyAtMy4zLC0zLjcgLTMuMSwtNC42IC0yLjQsLTQuNCAtMy44LC0xMC4zIC0xLjUsMC40IC0yLjYsNSAtMi45LDYuOSAtMC40LDIuNCAtMC4zLDYuNiAwLjIsOSAwLjYsMi44IDEuNCw1IDIuNSw3LjMgMC42LDEuMiAzLDUuNSAzLjEsNi41IC0yLjIsLTAuNSAtNywtNC42IC04LjYsLTYuMiAtMS41LC0xLjUgLTUuNSwtOC4zIC01LjksLTguNiAwLDkuOSA1LDIyLjggOS44LDI3LjYgMy4xLDMuMSA2LjMsNi40IDEwLjIsOC42IDIuNCwxLjUgMTAuNSw0LjMgMTQuMyw0LjMgaCAyLjQgYyAyLjgsMCAxMC44LC0zIDEyLjksLTQuMiAzLjQsLTEuOSA2LjksLTQuNyA5LC03LjkgNC40LC02LjUgOCwtMTUgOCwtMjUuOCB2IC0xLjMgbCAtMC40LC01LjggYyAtMC43LDAuNCAtMi4yLDQuNCAtMi41LDUuMiAtMC41LDEuMyAtMiwzLjQgLTIuOSw0LjYgLTEuNCwyLjEgLTUuMiw2LjMgLTcuOCw2LjkgdiAtMS4xIGMgMCwtNC40IDIuOCwtOC44IDIuOCwtMTIuNCB2IC0xLjkgbCAtMS4zLC0xMi4yIGggLTAuNiBjIC0wLjMsMy45IC0xLjYsNy45IC0zLjQsMTAuNSAtMS4zLDIgLTUuMyw1LjYgLTcuNyw2LjIgLTAuMiwtMC40IC0wLjQsLTAuNiAtMC40LC0xLjMgdiAtMi4zIGMgMCwtNS4xIDMsLTguOSAzLC0xMi44IHYgLTAuOCBjIDAsLTEuNSAtMi4xLC0zLjkgLTIuOSwtNS4yIC0wLjcsLTEuMSAtMi40LC00LjMgLTMuNSwtNC42IHYgMS4zIGMgMCw2LjIgLTEuNCwxMC42IC01LjYsMTIuNiAtMS4xLC0xLjcgLTMuNiwtMy4yIC0zLjYsLTYuMiB2IC0xLjkgbCAwLDAgelwifSxpW1wiQUMuSUMuTk9OLVJFc0lkRU5USUFMIEZJUkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS4yLDEyMi4zIC02LjIsMCAwLDUuOSA2LjIsMCB6IG0gLTEyLjEsMCAtNi4xLDAgMCw1LjkgNi4xLDAgeiBtIC0xMi4yLDAgLTUuOSwwIDAsNS45IDUuOSwwIHogbSAtMTIuMywwIC01LjcsMCAwLDUuOSA1LjcsMCB6IG0gMzAuNCwtNC44IGggNi4xIHYgLTYuMiBoIC0yLjUgYyAtMS4yLDAgLTIuNSwxLjUgLTMuNiwxLjggdiA0LjQgeiBtIC01LjksLTYuMiAtNi4xLDAgMCw2LjIgNi4xLDAgeiBtIC0xMi4yLDAgLTUuOSwwIDAsNi4yIDUuOSwwIHogbSAtMTIuMywwIC01LjcsMCAwLDYuMiA1LjcsMCB6IG0gMjUsLTMzLjQgYyAwLC0zLjQgMy40LC03LjQgMy40LC05LjEgMCwtMS40IC0wLjgsLTQuMiAtMS44LC00LjYgMCw3LjEgLTguNiwxMi44IC04LjYsMTUuNyB2IDAuNCBjIDAsMC43IDEuOSw1LjIgMi4zLDYuNiAwLjQsMS43IDEuNCw1LjYgMS42LDcuMyAtNi4yLC0wLjEgLTcuMywtOS44IC0xMC4zLC0xMS44IGwgLTAuMywzIDAsNC42IGMgMCw0LjcgMy40LDExLjQgNS42LDEzLjkgMSwxLjEgNC4yLDMuNyA1LjUsNC4zIDAuOCwwLjQgNi4zLDMgNi42LDMgMS40LDAgOS4yLC03LjIgMTAuNSwtOC42IDIuNSwtMi41IDQsLTkuNiA0LC0xNC44IHYgLTAuNyBsIC0wLjcsLTUuNyBjIC0xLDAuNiAtMi4xLDUuNiAtMi44LDcgLTEuNSwzLjIgLTEuOCwzLjEgLTUuNCw0IC0wLjMsLTEyLjIgNi43LC04LjMgLTIuNywtMTkuMSAwLDQuOSAtMC45LDcuOSAtNC4xLDkuNiAtMS40LC0wLjcgLTMsLTIuNyAtMywtNC44IHogbSAtMTQuOCwyNi40IGggMy42IGMgLTAuMSwtMC42IC0wLjMsLTEuNCAtMS4xLC0xLjQgaCAtMS4yIHYgLTIuNyBjIDAsLTAuOSAtMC45LC0yLjQgLTEuNCwtMyB2IDcgeiBtIC0xNi40LC0yOC42IGggMy45IHYgMjguNiBoIDguOSB2IC0yOC42IGggMy42IHYgNS40IGMgMC4zLC0wLjIgMS40LC0xLjQgMS40LC0xLjggdiAtNSBoIC02LjQgdiAyOC42IGggLTYuNCB2IC0yOC42IGggLTYuMSB2IDI4LjYgaCAtNS4yIHYgMzIuNyBoIDU0LjggdiAtMzAuNyBjIC0wLjQsMC4yIC0xLjEsMSAtMS4xLDEuNiB2IDI3LjUgaCAtNTIuNSB2IC0yOS44IGggNS4yIHYgLTI4LjYgaCAtMCB6XCJ9LGlbXCJBQy5JQy5SRXNJZEVOVElBTCBGSVJFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5MS41LDg4LjMgLTAuNywtMyAtMzAuMSwyNS4yIDE1LjYsMC4xIHYgMjUuNiBoIDUwLjUgdiAtMjUuNiBoIDEyLjQgYyAtMC40LC0wLjUgLTcuNiwtNS45IC04LC01LjkgLTAuMywwIC0xLjIsMS42IC0xLjQsMS45IGwgMS40LDEuNCBoIC0yLjQgYyAtMC43LDAuNSAtNC45LDMuMSAtNC45LDMuOCB2IDIyLjMgaCAtMTguMyB2IC0xMi45IGggLTguNyB2IDEyLjkgaCAtMTguMSB2IC0yMy41IGggMjIuNiBsIC0yLjIsLTIuNyAtMzAuNywtMC4xIEwgOTEuNSw4OC4zIHogbSAyNy42LDI4IC04LjIsMCAwLDguNSA4LjIsMCB6IG0gLTI3LDAuMiAtOC43LDAgMCw4LjIgOC43LDAgeiBtIDExLC0zNi40IGMgMCwwLjkgMi4xLDUuMyAyLjUsNi45IDAuNCwxLjggMS41LDYuMSAxLjUsNy44IC03LjEsLTEuNiAtNi45LC05LjkgLTEwLjMsLTEyLjIgLTEuNyw3LjUgMC44LDE1LjEgMy43LDE5LjUgMi40LDMuNiAyLjYsMy40IDYsNiAwLjQsMC40IDcuOSw0LjMgNy45LDQuMyAyLDAgOS42LC03LjEgMTEuMSwtOC42IDEuOCwtMS44IDUuNiwtMTAuOCA1LjYsLTE0LjQgViA4My41IGMgMCwtMS45IC0wLjMsLTMuMiAtMS40LC00IDAsMiAtMS44LDcgLTIuNiw4LjQgLTAuOCwxLjggLTQuMyw0LjIgLTYuMyw0LjcgdiAtMS43IGMgMCwtNC40IDIuNCwtNi44IDIuNCwtMTAuMSAwLC0yIC00LC03LjIgLTUuMiwtOCAwLDUuNCAtMC43LDggLTQuMiw5LjggLTEuMiwtMC43IC0zLjEsLTIuNiAtMy4xLC00LjQgdiAtMSBjIDAsLTEuNSAxLjgsLTUuNCAyLjUsLTYuNiAyLC0zLjkgMC41LC0zLjggLTAuNCwtNyBoIC0wLjQgYyAtMS4zLDUuNSAtMC44LDQuOCAtMy44LDguOSAtMSwxLjQgLTUuNCw1LjkgLTUuNCw3LjUgelwifSxpW1wiQUMuSUMuU0NIT09MIEZJUkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMS4zLDczIGMgLTQsLTEgLTE3LC03LjIgLTE5LjgsLTcuMiBoIC0yLjQgViA5NiBoIC0wLjcgYyAwLDUuNiAtMy44LDE1LjMgLTYuMiwxOC42IC0yLDIuNyAtMy43LDQuMSAtNi4yLDYuMiAtMC44LDAuNiAtNyw0LjkgLTcsNS40IHYgOCBoIDQ0LjEgViA5NiBoIC0yMC40IGwgMCwtMTQuOCAxOC44LC04LjIgeiBtIC00OS4yLDExLjggYyAwLC0zIDMuNiwtOCAzLjYsLTEwIDAsLTEuOCAtMC44LC0zLjkgLTIsLTQuNiAtMC40LDAuOCAtMC40LDMuNiAtMC45LDUgLTAuMywwLjcgLTEuOCwyLjcgLTIuMywzLjUgLTEuNiwyLjMgLTMuNCw0LjIgLTUuMSw2LjQgLTIuMiwyLjggMCw1IDEuMSw4LjIgMC44LDIuMiAxLjQsNy45IDIuMSw5LjQgQyA3MS45LDEwMi40IDcwLjYsOTEuOCA2Ny42LDg5LjkgbCAtMC42LDcuNiAwLjEsMC4yIGMgMCw1IDMuNiwxMi4zIDUuOSwxNSAxLjEsMS4zIDQuMywzLjYgNS45LDQuNiAxLjEsMC43IDIuNSwxIDMuNywxLjYgMC40LDAuMiAzLjIsMS45IDMuMiwxLjkgMi4xLDAgOS45LC03LjQgMTEuNSwtOSAxLjgsLTEuOCA1LjgsLTExIDUuOCwtMTQuNCB2IC02LjMgYyAwLC0yLjEgLTAuNCwtMi42IC0wLjcsLTQuMiBoIC0wLjggYyAtMC4yLDEuOSAtMi4yLDcuMSAtMyw4LjcgLTAuNywxLjMgLTYuMyw1LjcgLTYuMywzLjcgdiAtMS4yIGMgMCwtMy44IDIuNCwtNy4yIDIuNCwtMTAgdiAtMC44IGMgMCwtMS41IC00LjMsLTYuOCAtNS40LC03LjYgMCwyLjUgMC4xLDQuOCAtMC44LDYuNSAtMC41LDAuOSAtMi41LDMuNSAtMy42LDMuNSAtMS4xLDAgLTMuMiwtMy40IC0zLjIsLTUuMSB6XCJ9LGlbXCJBQy5JQy5IT1QgU1BPVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk2LjMsNzguNSBjIDAsLTUuMSA0LjEsLTkuNyA0LjEsLTEzIHYgLTAuNCBjIDAsLTEuMyAtMCwtMy44IC0xLjEsLTQuMSAtMSw0LjUgLTMuNSw4IC01LjksMTEuMiAtMS4zLDEuNiAtMi4zLDMuMyAtMy42LDQuOSAtMSwxLjMgLTMuMSwzLjQgLTMuMSw1LjUgMCwxLjQgNi4xLDE3LjcgMywxNy43IC0wLjEsMCAtMy43LC0yLjUgLTQuMiwtMi45IC0xLjQsLTEgLTIuNCwtMi4zIC0zLjMsLTMuNyAtMy4xLC00LjYgLTIuNCwtNC40IC0zLjgsLTEwLjMgLTEuNSwwLjQgLTIuNiw1IC0yLjksNi45IC0wLjQsMi40IC0wLjMsNi43IDAuMyw5IDAuNiwyLjggMS4zLDUgMi41LDcuMyAwLjYsMS4yIDMuMSw1LjUgMy4xLDYuNSAtMi4yLC0wLjUgLTcuMSwtNC42IC04LjYsLTYuMSAtMS41LC0xLjUgLTUuNSwtOC4zIC01LjksLTguNiAwLDkuOSA1LDIyLjggOS44LDI3LjYgMy4xLDMuMSA2LjMsNi40IDEwLjEsOC43IDIuNSwxLjUgMTAuNSw0LjMgMTQuMyw0LjMgaCAyLjQgYyAyLjksMCAxMC44LC0zIDEyLjksLTQuMiAzLjQsLTEuOSA2LjksLTQuNyA5LC03LjkgNC40LC02LjUgOCwtMTUgOCwtMjUuNyBWIDk5LjkgbCAtMC40LC01LjggYyAtMC43LDAuNCAtMi4yLDQuNCAtMi41LDUuMiAtMC41LDEuMyAtMiwzLjQgLTIuOCw0LjYgLTEuNCwyLjEgLTUuMiw2LjMgLTcuOSw2LjkgdiAtMS4xIGMgMCwtNC40IDIuOCwtOC44IDIuOCwtMTIuNCB2IC0xLjkgbCAtMS4zLC0xMi4yIC0wLjcsOGUtNCBjIC0wLjMsMy45IC0xLjcsNy45IC0zLjQsMTAuNSAtMS4zLDIgLTUuMyw1LjYgLTcuNyw2LjIgLTAuMiwtMC40IC0wLjQsLTAuNiAtMC40LC0xLjMgdiAtMi40IGMgMCwtNS4xIDMsLTguOSAzLC0xMi44IFYgODIuNiBjIDAsLTEuNSAtMi4xLC0zLjkgLTIuOSwtNS4yIC0wLjcsLTEuMSAtMi40LC00LjMgLTMuNSwtNC42IHYgMS4zIGMgMCw2LjIgLTEuNCwxMC42IC01LjYsMTIuNiAtMS4xLC0xLjcgLTMuNiwtMy4xIC0zLjYsLTYuMiB2IC0xLjkgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTEzLDEyNi45IGMgMCw2LjMgLTUuMSwxMS40IC0xMS40LDExLjQgLTYuMywwIC0xMS40LC01LjEgLTExLjQsLTExLjQgMCwtNi4zIDUuMSwtMTEuNCAxMS40LC0xMS40IDYuMywwIDExLjQsNS4xIDExLjQsMTEuNCB6XCJ9XSxpW1wiQUMuSUMuRklSRSBPUklHSU5cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5Ni4zLDc4LjUgYyAwLC01LjEgNC4xLC05LjcgNC4xLC0xMyB2IC0wLjQgYyAwLC0xLjMgLTAsLTMuOCAtMS4xLC00LjEgLTEsNC41IC0zLjUsOCAtNS45LDExLjIgLTEuMywxLjYgLTIuMywzLjMgLTMuNiw0LjkgLTEsMS4zIC0zLjEsMy40IC0zLjEsNS41IDAsMS40IDYuMSwxNy43IDMsMTcuNyAtMC4xLDAgLTMuNywtMi41IC00LjIsLTIuOSAtMS40LC0xIC0yLjQsLTIuMyAtMy4zLC0zLjcgLTMuMSwtNC42IC0yLjQsLTQuNCAtMy44LC0xMC4zIC0xLjUsMC40IC0yLjYsNSAtMi45LDYuOSAtMC40LDIuNCAtMC4zLDYuNyAwLjMsOSAwLjYsMi44IDEuMyw1IDIuNSw3LjMgMC42LDEuMiAzLjEsNS41IDMuMSw2LjUgLTIuMiwtMC41IC03LjEsLTQuNiAtOC42LC02LjEgLTEuNSwtMS41IC01LjUsLTguMyAtNS45LC04LjYgMCw5LjkgNSwyMi44IDkuOCwyNy42IDMuMSwzLjEgNi4zLDYuNCAxMC4xLDguNyAyLjUsMS41IDEwLjUsNC4zIDE0LjMsNC4zIGggMi40IGMgMi45LDAgMTAuOCwtMyAxMi45LC00LjIgMy40LC0xLjkgNi45LC00LjcgOSwtNy45IDQuNCwtNi41IDgsLTE1IDgsLTI1LjcgViA5OS45IGwgLTAuNCwtNS44IGMgLTAuNywwLjQgLTIuMiw0LjQgLTIuNSw1LjIgLTAuNSwxLjMgLTIsMy40IC0yLjgsNC42IC0xLjQsMi4xIC01LjIsNi4zIC03LjksNi45IHYgLTEuMSBjIDAsLTQuNCAyLjgsLTguOCAyLjgsLTEyLjQgdiAtMS45IGwgLTEuMywtMTIuMiAtMC43LDhlLTQgYyAtMC4zLDMuOSAtMS43LDcuOSAtMy40LDEwLjUgLTEuMywyIC01LjMsNS42IC03LjcsNi4yIC0wLjIsLTAuNCAtMC40LC0wLjYgLTAuNCwtMS4zIHYgLTIuNCBjIDAsLTUuMSAzLC04LjkgMywtMTIuOCBWIDgyLjYgYyAwLC0xLjUgLTIuMSwtMy45IC0yLjksLTUuMiAtMC43LC0xLjEgLTIuNCwtNC4zIC0zLjUsLTQuNiB2IDEuMyBjIDAsNi4yIC0xLjQsMTAuNiAtNS42LDEyLjYgLTEuMSwtMS43IC0zLjYsLTMuMSAtMy42LC02LjIgdiAtMS45IGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDk5LjYgMTA1LjkgQyA5My4zIDEwNS45IDg4LjIgMTExIDg4LjIgMTE3LjMgQyA4OC4yIDEyMy42IDkzLjMgMTI4LjcgOTkuNiAxMjguNyBDIDEwNS45IDEyOC43IDExMSAxMjMuNiAxMTEgMTE3LjMgQyAxMTEgMTExIDEwNS45IDEwNS45IDk5LjYgMTA1LjkgeiBNIDEwNSAxMDkuNCBMIDEwNi44IDExMSBMIDEwMS4yIDExNy4xIEwgMTA3LjMgMTIzLjIgTCAxMDUuNiAxMjQuOSBMIDk5LjUgMTE4LjggTCA5My43IDEyNS4zIEwgOTEuOSAxMjMuNiBMIDk3LjggMTE3LjIgTCA5Mi4xIDExMS40IEwgOTMuOCAxMDkuOCBMIDk5LjUgMTE1LjQgTCAxMDUgMTA5LjQgelwifV0saVtcIkFDLklDLlNNT0tFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTkuMyw2OS4yIGMgMC4yLC0yLjYgNC40LC01LjUgNy4yLC02IDQuMiwtMC44IDYuOSwxLjIgOS4xLDMuMyAxLjEsMS4xIDEuOSwyLjcgMi40LDQuMyAwLjYsMi4yIDEuOSwxLjMgNCwyLjUgMi40LDEuNCA0LjksNC40IDUuNiw3LjQgNS4zLDAgMTAuMyw0LjggMTAuMyw5LjkgdiAxLjMgYyAwLDMgLTEuMiw0LjkgLTIuOCw2LjUgLTEuMSwxLjEgLTEuMiwxLjIgLTIuNiwyLjEgLTEuMywwLjggLTIuNSwwLjYgLTIuNywyIC0wLjYsNC42IC00LjIsOSAtOS40LDkgMy4zLDUgMi4zLDguNyAtMC42LDEzIDAsNC44IC0wLjIsNi4yIC0yLjgsOC44IC0yLjQsMi41IC00LjUsMi40IC04LjYsMi40IDAuNywtMSAxLjIsLTEgMiwtMi40IDAuNiwtMS4xIDAuOCwtMS43IDEuNCwtMi45IDEsLTIuMiAxLjgsLTMuNyAxLjgsLTYuOCB2IC0yLjEgYyAwLC0xLjQgLTAuMiwtMi40IC0wLjgsLTMuMiAtMS4yLDUuMiAtMS40LDYuNCAtNS43LDguNiAwLC04LjMgMy44LC02LjggLTEuOSwtMTMuNCAwLDMuOCAtMC4yLDUuNiAtMi43LDYuOSAtMC44LC0wLjUgLTIuMSwtMS43IC0yLjEsLTIuOSB2IC0wLjQgYyAwLC0yIDIuNSwtNS4yIDIuNSwtNi43IHYgLTAuNCBjIDAsLTEuMSAtMC40LC0yLjEgLTEsLTIuNSAwLDIuOSAtMy40LDcuNiAtNC45LDkuMiAtMS42LDEuNyAtMS4xLDIuOCAtMC4yLDUgMC43LDEuNyAxLjEsMy41IDEuMSw1LjggdiAxIGMgLTMuMiwtMC4zIC00LjQsLTYuMiAtNi4xLC04LjIgMCwzLjQgLTAuOCw2LjMgMC40LDkuNCAwLjgsMS45IDIuNCw1LjYgNC40LDYuMSB2IDAuNCBsIC0zLjQsMC42IC0wLjIsLTAuMSBjIC0zLjQsMCAtNi40LC0yLjQgLTcuOCwtNC40IC0wLjgsLTEuMSAtMS41LC0yLjcgLTEuNywtNC40IC0wLjMsLTIuMyAwLjYsLTMuNiAwLjYsLTUgMCwwIC01LjEsLTQuNyAtNC40LC05IGwgMC4yLC0xLjcgYyAtMC40LC0wLjUgLTEuNCwtMS40IC0yLC0yLjIgLTAuNiwtMC44IC0xLjEsLTEuOCAtMS42LC0yLjYgLTEuNCwwIC0yLDAuNiAtMy4yLDAuNiBoIC0wLjYgYyAtNS40LDAgLTEwLjUsLTUuMiAtMTAuNSwtMTAuNSB2IC0wLjggYyAwLC00LjkgNC4xLC05LjIgOSwtOS4yIGggMi4xIGMgMC44LC0zLjIgNS43LC02LjkgMTAuMSwtNS45IC0wLjQsLTEuNSAtMSwtMi43IC0xLC00LjggdiAtMC40IGMgMCwtMy44IDMuMiwtNy44IDYuMSwtOC44IDEuOSwtMC43IDMuOSwtMSA2LjEsLTAuNCAyLjMsMC42IDMuNywyLjIgNC44LDIuNSBsIDAsMCB6IG0gLTAuNCwtMS45IGMgLTEuMywtMC4xIC0yLjksLTIuMSAtNS45LC0yLjEgaCAtMS45IGMgLTUsMCAtMTAuNiw1LjggLTEwLDExLjQgbCAwLjUsMy40IGggLTAuNiBjIC00LjMsMCAtNy4xLDMuMiAtOC42LDYuMSAtMi4zLC0xLjEgLTYuOCwxLjIgLTcuOSwyLjQgLTEuNiwxLjYgLTMuNiw0LjIgLTMuNiw3LjMgdiAxLjUgYyAwLDMuNiAyLjQsNy4zIDQuNSw4LjkgMS44LDEuMyAyLDEuNiA0LjQsMi40IDIuNywwLjkgMy43LDAuMSA1LjksMC4yIGwgMy4xLDMuNyBjIC0wLjYsMS4zIDAuNCw0LjkgMC45LDYgMC41LDEuMiAwLjcsMS40IDEuNCwyLjQgMC4yLDAuNCAxLjcsMiAxLjcsMiAwLDEuMSAtMC40LDEuNCAtMC40LDIuNyB2IDAuMiBjIDAsNi4zIDQuOCwxMiAxMC43LDEyIDIuMSwwIDMuNiwtMC40IDUsLTEgMi42LDEuNCA3LjEsMyA5LjIsLTAuMSBsIDMuNCwwLjUgYyAyLjcsMC40IDYuOCwtMi4yIDcuOSwtMy42IDEsLTEuNCAzLjcsLTYgMi40LC04LjggMS4xLC0wLjcgMi42LC0zLjcgMi43LC01LjUgMC4xLC0xLjcgMC4yLC0xLjggLTAuMSwtMy42IC0wLjIsLTEuNCAtMC45LC0yLjIgLTEsLTMuMiA0LC0wLjMgOC40LC01LjIgOC40LC05LjcgMi41LC0xLjYgMy40LC0xLjIgNS42LC0zLjggMS4zLC0xLjQgMi42LC00LjQgMi42LC03IDAsLTYuMyAtNC43LC0xMiAtMTAuNywtMTIgLTAuOSwtNCAtNC44LC04LjMgLTkuMiwtOC42IC0wLjQsLTQuNCAtNS43LC05LjQgLTEwLjcsLTkuNCAtNC4xLC0wIC04LjksMi43IC05LjYsNS42IGwgMCwwIHogbSAxNS44LDM4LjQgYyAwLjUsMCAxLDAuMSAxLC0wLjQgMCwtMy4xIC00LjEsLTYuNyAtNy42LC02LjcgaCAtMS45IGMgLTAuNiwwIC0xLDAuOCAtMC42LDEgMC40LDAuMiAxLjYsMC4xIDIsMC4xIDEuMiwwIDIuNiwwLjUgMy40LDEgMi4xLDEuNiAyLjgsMi4xIDMuNSw1LjEgeiBtIC0zNC41LC0xMi42IHYgMS43IGMgMCwxLjQgMC42LDIuMiAwLjYsMy4yIDAsMCAtMy42LDMuNCAtMy44LDUuNCBsIDAuNiwwLjIgYyAxLC0wLjYgMS42LC0yLjYgMywtNCAxLC0wLjkgMy4xLC0yLjIgNC44LC0yLjIgaCAwLjYgYyAxLjMsMCAzLjYsMSAzLjYsLTAuMiAwLC0wLjkgLTIuNiwtMSAtMy42LC0xIGggLTAuMiBjIC0xLjYsMCAtMywwLjYgLTQsMS4zIC0wLjEsLTEgLTAuNiwtMS45IC0wLjYsLTMuMiAwLC00LjYgMy43LC04LjYgOC40LC04LjYgaCAxIGMgMSwwIDEuNSwwLjIgMi4zLDAuNCAwLjEsLTAuMiAwLjQsLTAuNiAwLjQsLTAuNyAwLC0wLjcgLTEuOCwtMSAtMi41LC0xIGggLTEuNSBjIC00LjUsLThlLTQgLTkuMiw0LjQgLTkuMiw4LjYgeiBtIDE5LjEsLTE1LjggMC42LDAuNiBjIDEuNiwtMC45IDMuNCwtMi4zIDUuOSwtMi4zIGggMSBjIDUuNSwwIDEwLjEsNC40IDEwLjEsOS43IHYgMC42IGMgLTEuNSwtMCAtMi42LC0wLjggLTQuNiwtMC44IGggLTEgYyAtMS41LDAgLTQuMSwwLjMgLTQuMiwxLjcgMC42LDAuMSAwLjQsMC4yIDAuOCwwLjIgMC45LDAgMS40LC0wLjYgMywtMC42IGggMi4zIGMgMi4yLDAgNS42LDEuOCA2LjYsMy4xIDIsMi42IDEuOCwzLjcgMi42LDcuMiAwLjUsMCAxLDAuMSAxLC0wLjQgMCwtNCAtMi42LC04LjEgLTUuMiwtOS40IDAsLTYuOSAtNC41LC0xMi40IC0xMS4xLC0xMi40IGggLTEuMyBjIC0yLjMsMCAtNS42LDEuNiAtNi41LDIuOSB6XCJ9XSxpW1wiQUMuSUMuU1BFQ0lBTCBORUVEUyBGSVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzUuMywxMzMuOSBoIDQ5LjQgdiAtMjguOSBjIC0wLjYsMC40IC0yLjQsMS4yIC0yLjQsMiB2IDI0LjggSCA3Ny40IHYgLTMwIGggLTIuMiB2IDMyLjEgbCAwLDAgeiBNIDkzLDEyOS4xIGggMiBjIDQuMiwwIDcuNiwtMi40IDkuMywtNSBsIC0xLjMsLTMuNSBjIC0xLjIsMC4zIC0yLjEsNS4yIC04LjYsNS4yIGggLTAuOCBjIC0zLjQsMCAtNi4zLC0zLjMgLTcuMiwtNiAtMC42LC0xLjcgLTAuNiwtMy42IDAsLTUuNCAwLjgsLTIuNSAxLjYsLTIuNCAyLjYsLTQgbCAtMC40LC0zLjQgYyAtMy4yLDAuOCAtNy4xLDggLTUuNywxMi44IDEuMiw0LjEgNS40LDkuMiAxMC4yLDkuMiB6IE0gODguOSw5Ny45IHYgMC40IGMgMCwwLjggMC41LDEuNCAwLjgsMiBsIDEuNCwxNC43IDExLjMsMCA0LjMsMTAuMiA2LjIsLTIgLTEsLTMgLTMuNSwxIEMgMTA4LDExOS45IDEwNC44LDExMS43IDEwNCwxMTEuNyBIIDk0LjEgQyA5NCwxMTEgOTMuOCwxMTAuOSA5My44LDExMC4xIHYgLTEuMSBoIDcuNiB2IC0yLjQgaCAtOCBsIC0wLjIsLTMuNyB2IC0yLjIgYyAzLjQsLTAuOCAyLjcsLTYuMiAtMS4xLC02LjIgLTEuOCwwIC0zLjIsMS40IC0zLjIsMy4yIHogbSAxOS45LC03LjQgdiAxIGwgLTAuNCwwLjMgQyAxMDUuMSw4OS43IDEwMSw4Ni4xIDEwMSw4MC44IDk5LjYsODEuNyA5OC44LDg0LjggOTguOCw4Ny4xIHYgMS4xIGMgMCw0LjUgMywxMC43IDUsMTMuMyAyLjgsMy43IDcuNCw0LjggMTEuNiw3IDEuNiwtMC44IDkuMywtNS40IDEwLC02LjMgMS4zLC0xLjcgNC4yLC05LjggNC4yLC0xMi40IDAsLTEuOSAtMC4zLC04LjIgLTEuMywtOC44IC0wLjcsMi43IC0wLjgsNC43IC0yLjMsNi44IC0xLDEuNCAtMy4zLDMuNSAtNSw0IGwgLTAuMiwtMi40IHYgLTAuMiBjIDAsLTMgMiwtNS40IDIsLTguOCAwLC0xIC0zLjQsLTYuMSAtNC4xLC02LjIgMCwxLjggLTAuMiw0LjEgLTAuNiw1LjQgLTAuMywxIC0xLjksMy40IC0yLjksMy40IGggLTAuNiBjIC0wLjQsLTEuNCAtMS45LC0xLjcgLTEuOSwtNC44IFYgNzYuOSBjIDAsLTIuMyAyLjYsLTUuNSAyLjYsLTcuOCBsIDAsLTAuNiAtMC4zLC0yLjQgYyAtMSwwLjIgLTEsMS45IC0xLjQsMi45IC0wLjQsMSAtMSwyIC0xLjYsMi45IC0xLjMsMS43IC0yLjYsMy40IC0zLjksNS4xIC0yLDIuOCAtMi4xLDIuNyAtMSw2LjEgMC42LDIgMS43LDQuOCAxLjcsNy40IHogbSAyNC4zLDEwLjIgLTMuMywtMiAtMS4yLDEuOSAzLjUsMiB6IG0gLTY2LjIsMCAxLDEuOSBjIDUsLTIuNyAxMSwtNi45IDE2LC0xMC4xIDIuNywtMS43IDUuMiwtMy40IDcuOCwtNS4xIDEuNCwtMC45IDIuNiwtMS42IDMuOSwtMi42IDEuOCwtMS4yIDEuOSwtMS45IDIuNCwtNC4zIGwgLTMxLjIsMjAuMiB6XCJ9XSxpW1wiQUMuSUMuV0lMRCBGSVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTEwLjgsMTM5LjUgYyAwLjIsLTAuNSA2LjUsLTYuMiA3LjQsLTcgMi42LC0yLjYgNS42LC01LjIgNy44LC04LjEgMy45LC01LjIgOCwtMTUgOCwtMjQgdiAtNi45IGMgMCwtMSAwLC0yLjIgLTAuOCwtMi40IC0wLjgsMy40IC0zLjMsNy43IC01LjEsMTAuMSAtMC41LDAuNiAtNy45LDguNyAtNy45LDYuMiAwLC00LjcgMi41LC04LjQgMi45LC0xMy40IDAuMiwtMi45IC0wLjgsLTExLjQgLTEuNCwtMTQuMyAtMC45LDAuNyAtMS4yLDQuMiAtMS43LDUuNyAtMC42LDEuNyAtMS4yLDMuNiAtMi4xLDUgLTAuNywxLjEgLTYuMSw3LjIgLTcsNy4yIC0wLjcsMCAtMS42LC0yLjkgLTEuNiwtNC4xIDAsLTQuNyAzLjMsLTkuNyAzLjMsLTEzLjQgdiAtMC42IGMgMCwtMi40IC0xLjksLTMuNiAtMywtNS42IC0wLjYsLTEgLTIuNywtNC43IC0zLjcsLTQuOCB2IDIuOSBjIDAsMi4yIC0wLjUsNS42IC0xLjMsNy4xIC0wLjQsMC44IC0zLjIsNC4xIC00LDQuMSAtMSwwIC0zLjksLTMuOSAtMy45LC01LjcgdiAtMy41IGMgMCwtNC4xIDQuMSwtOC42IDQuMSwtMTIuNiB2IC0wLjIgYyAwLC0xLjUgLTAsLTQgLTEuNCwtNC4xIC0wLjcsOCAtMTIuNiwxOC43IC0xMi42LDIxLjggMCw0LjQgMy45LDkuMiAzLjksMTUuOSB2IDIuMiBjIDAsMC43IC0wLjIsMC44IC0wLjIsMS40IC0wLjgsLTAuMiAtMS40LC0xLjMgLTEuOSwtMiAtMC43LC0wLjggLTEuNCwtMS4xIC0yLjIsLTEuNyAtMS41LC0xIC0yLjcsLTIuMyAtMy44LC0zLjcgLTEuOSwtMi41IC00LjEsLTYuNyAtNC4xLC0xMC45IC0xLjgsMC41IC0zLjMsNi4zIC0zLjMsOC44IHYgMy41IGMgMCw4LjMgNS45LDE1LjEgNS45LDE4LjEgLTMuMiwtMS43IC02LC0zLjkgLTguNSwtNi40IC0xLjIsLTEuMiAtNS41LC04LjUgLTYuMiwtOC43IDAsNS43IDEuNywxMC4zIDIuNiwxNS4xIDAuNSwyLjMgMS4yLDUuMSAxLjksNy4xIDEsMi43IDEuOSwzLjMgMy40LDUuMyAzLDQgNC45LDYgOC4zLDkuNCAxLjUsMS41IDIuOSwyLjkgNC40LDQuNCBsIDQuNywzLjQgNS45LDIuOCBWIDEyOS45IGggLTEzIGwgOS45LC0xMS41IC03LjQsLTAuMSA5LjgsLTExLjEgLTYuNiwtMC4xIDEwLjksLTE3LjMgMC4xLC0wLjIgMTEuMiwxNy41IC02LjEsLTAgOS40LDExIC03LjYsMCAxMC4xLDExLjcgLTEzLjEsMC4xIHYgMTMgbCA2LC0zLjQgelwifV0saVtcIkFDLklDLkhBWkFSRE9VUyBNQVRFUklBTFMgSU5DSURFTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2MC43LDEwMC42IDc4LjUsLTAgLTM5LjMsMzkuMiAtMzkuMiwtMzkuMiB6IE0gMTI3LjYsODcuOCBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDg3LjggeiBNIDExNS4zLDc1LjUgYyAwLjYsMC40IDYuMSw1LjkgNi4xLDYuMiBWIDEwMCBoIC02LjEgViA3NS41IHogTSA5MC44LDY5LjUgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViAxMDAgSCA5MC44IFYgNjkuNSB6IG0gLTEyLjIsMTIuMiBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDEwMCBIIDc4LjYgViA4MS43IHogbSAtNi4zLDYgMCwxMi4yIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSAzMC44LC0yNC41IDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjEgLTAuMSwwLjQgViAxMDAgaCAtNi4xIFYgNjMuMyB6IE0gNTYuNywxMDAgMTAwLDE0My4zIDE0My4zLDEwMCAxMDAsNTYuNyA1Ni43LDEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDMuMSw2My4zIDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjEgLTAuMSwwLjQgViAxMDAgaCAtNi4xIFYgNjMuMyB6IG0gLTMwLjgsMjQuNSAwLDEyLjIgSCA2Ni40IFYgOTQuMiBjIDAsLTAuMyAtMCwtMC4zIC0wLjEsLTAuNCBsIDYsLTYgeiBtIDYuMywtNiBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDEwMCBIIDc4LjYgViA4MS43IHogbSAxMi4yLC0xMi4yIGMgMCwtMC40IDUuNSwtNS44IDYuMSwtNi4yIFYgMTAwIEggOTAuOCBWIDY5LjUgeiBtIDI0LjUsNiBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDc1LjUgeiBtIDEyLjMsMTIuMyBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDg3LjggeiBtIC02Ni45LDEyLjggNzguNSwtMCAtMzkuMywzOS4yIC0zOS4yLC0zOS4yIHpcIn1dLGlbXCJBQy5JQy5DSEVNSUNBTCBBR0VOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMC43LDEwNy43IGMgLTMuMiwyZS01IC01LjgsMSAtNy42LDMgLTEuOSwyIC0yLjgsNC43IC0yLjgsOC4xIC0yZS02LDMuNCAwLjksNi4xIDIuOCw4LjEgMS45LDIgNC40LDMgNy42LDMgMS4zLDAgMi40LC0wLjIgMy42LC0wLjUgMS4xLC0wLjMgMi4yLC0wLjkgMy4yLC0xLjUgbCAwLjEsLTAuMSAwLC0wLjEgMCwtMyAwLC0wLjUgLTAuMywwLjMgYyAtMC45LDAuOSAtMS45LDEuNSAtMywxLjkgLTEuMSwwLjQgLTIuMiwwLjcgLTMuNCwwLjcgLTIuNCwwIC00LjEsLTAuNyAtNS4zLC0yLjEgLTEuMiwtMS40IC0xLjksLTMuNSAtMS45LC02LjIgLTRlLTYsLTIuNyAwLjYsLTQuOCAxLjksLTYuMiAxLjIsLTEuNCAzLC0yLjEgNS4zLC0yLjEgMS4yLDJlLTUgMi4zLDAuMiAzLjQsMC42IDEuMSwwLjQgMi4xLDEuMSAzLDEuOSBsIDAuMywwLjMgMCwtMC41IDAsLTMgLTAuMiwwIDAuMSwtMC4yIGMgLTEsLTAuNyAtMi4xLC0xLjIgLTMuMiwtMS41IC0xLjEsLTAuMyAtMi4zLC0wLjUgLTMuNiwtMC41IHogTSA5Mi43LDY0LjIgaCAxNC43IHYgMzMgYyAwLDguMiAxMi45LDkuNiAxMi40LDIxLjggLTAuMyw2LjggLTcsMTguNiAtMTQuMywxOC42IGggLTExIGMgLTYuOCwwIC0xNC42LC0xMy4xIC0xNC4zLC0yMCAwLjYsLTEwLjYgMTIuNCwtMTIuOCAxMi40LC0yMC40IHYgLTMzIHogbSAtMTQuNyw1NSBjIDAsNi44IDcuOSwyMC4yIDE0LjcsMjAuMiBoIDE0LjcgYyA4LjEsMCAxNC43LC0xMyAxNC43LC0yMiAwLC0xMS44IC0xMi44LC0xMy42IC0xMi44LC0yMiBWIDYwLjYgSCA5MC44IFYgOTUuNCBjIDAsNy44IC0xMi44LDguNyAtMTIuOCwyMy45IGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6RS5maWxsQ29sb3IuVW5rbm93bixkOlwibSA5Mi43LDY0LjIgMCwzMyBjIDAsNy42IC0xMS45LDkuOCAtMTIuNCwyMC40IEMgNzkuOSwxMjQuNSA4Ny43LDEzNy42IDk0LjUsMTM3LjYgbCAxMSwwIGMgNy4yLDAgMTQsLTExLjggMTQuMywtMTguNiAwLjUsLTEyLjIgLTEyLjQsLTEzLjYgLTEyLjQsLTIxLjggbCAwLC0zMyAtMTQuNywwIHogTSAxMDAuNywxMDcuNyBjIDEuMywyZS01IDIuNSwwLjIgMy42LDAuNSAxLjEsMC4zIDIuMiwwLjggMy4yLDEuNSBsIC0wLjEsMC4yIDAuMiwwIDAsMyAwLDAuNSAtMC4zLC0wLjMgYyAtMC45LC0wLjkgLTEuOSwtMS41IC0zLC0xLjkgLTEuMSwtMC40IC0yLjIsLTAuNiAtMy40LC0wLjYgLTIuNCwyZS01IC00LjEsMC43IC01LjMsMi4xIC0xLjIsMS40IC0xLjksMy41IC0xLjksNi4yIC00ZS02LDIuNyAwLjYsNC44IDEuOSw2LjIgMS4yLDEuNCAzLDIuMSA1LjMsMi4xIDEuMiwwIDIuMywtMC4yIDMuNCwtMC43IDEuMSwtMC40IDIuMSwtMS4xIDMsLTEuOSBsIDAuMywtMC4zIDAsMC41IDAsMyAwLDAuMSAtMC4xLDAuMSBjIC0xLDAuNyAtMi4xLDEuMiAtMy4yLDEuNSAtMS4xLDAuMyAtMi4zLDAuNSAtMy42LDAuNSAtMy4yLDAgLTUuOCwtMSAtNy42LC0zIC0xLjksLTIgLTIuOCwtNC43IC0yLjgsLTguMSAtMmUtNiwtMy40IDAuOSwtNi4xIDIuOCwtOC4xIDEuOSwtMiA0LjQsLTMgNy42LC0zIHpcIn1dLGlbXCJBQy5JQy5DT1JST1NJVkUgTUFURVJJQUxcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDIuOSwxMzUuNCBjIDAuOCwwIDEuNCwtMC44IDEuNCwtMS41IDAsLTAuNyAtMC42LC0xLjUgLTEuMiwtMS41IEggMTAyLjMgYyAtMC41LDAgLTEuMiwwLjcgLTEuMiwxLjQgdiAwLjMgYyAwLDAuOCAwLjYsMS40IDEuNCwxLjQgSCAxMDIuOSB6IE0gOTYuOSwxMzIuNSBjIDAsMC43IDAuNiwxLjUgMS4yLDEuNSBoIDAuNiBjIDAuOCwwIDEuNCwtMC44IDEuNCwtMS41IHYgLTAuMiBjIDAsLTAuNyAtMC42LC0xLjUgLTEuMiwtMS41IEggOTguMSBjIC0wLjYsMCAtMS4yLDAuOSAtMS4yLDEuNSB2IDAuMiB6IG0gOC41LC0wLjkgYyAxLjMsMCAyLjIsLTEuOCAxLjEsLTIuOCAtMSwtMSAtMi44LC0wLjIgLTIuOCwxLjEgMCwwLjggMC45LDEuNyAxLjcsMS43IHogbSAtNi4yLC00LjQgYyAwLDAuNiAwLjYsMS41IDEuMiwxLjUgaCAwLjYgYyAwLjgsMCAxLjQsLTAuNiAxLjQsLTEuNCB2IC0wLjYgYyAwLC0wLjUgLTAuNywtMS4yIC0xLjQsLTEuMiBoIC0wLjMgYyAtMC44LDAgLTEuNSwwLjggLTEuNSwxLjYgeiBtIC0wLjYsLTQuMSBjIDAuNiwwIDEuMiwtMC44IDEuMiwtMS41IDAsLTEgLTAuNywtMS43IC0xLjcsLTEuNyAtMC42LDAgLTEuNSwwLjYgLTEuNSwxLjIgdiAwLjYgYyAwLDAuNyAwLjcsMS40IDEuMiwxLjQgaCAwLjggViAxMjMuMSB6IG0gMi40LC0yLjcgYyAwLDAuNiAwLjcsMS41IDEuMiwxLjUgaCAwLjggYyAwLjQsMCAxLjIsLTAuOCAxLjIsLTEuMiB2IC0wLjggYyAwLC0wLjYgLTAuOCwtMS4yIC0xLjUsLTEuMiBoIC0wLjEgYyAtMC44LDAgLTEuNSwwLjggLTEuNSwxLjUgdiAwLjEgeiBtIC0yLjcsLTMuNSBjIDAuNiwwIDEuNCwtMC44IDEuNCwtMS41IHYgLTAuMiBjIDAsLTIuMiAtMy4yLC0xLjggLTMuMiwtMC4zIHYgMC44IGMgMCwwLjcgMS4xLDEuMiAxLjgsMS4yIHogbSA0LjEsLTMuNiBjIDAsMiAzLjMsMS45IDMuMiwtMC4xIC0wLjEsLTIuMyAtMy4yLC0xLjggLTMuMiwtMC4zIHYgMC40IHogbSA0LjcsLTE2LjIgMCwyLjkgLTMsLTAuMiAwLjksMi44IC0xLjEsMC4xIC0xLjYsLTAuOSAtMC40LDMgLTEsLTEuNSAtMy4zLDEgLTAuNiwtMy4yIC0yLDEuMyAtMC42LC0xLjYgLTIuNSwwLjQgMS41LC0yLjcgLTAuNiwtMS41IC0yMi4yLDAgMCwxMi40IDU5LjIsMCAwLC0xMi40IHogTSA5NC4zLDg1LjIgdiAxLjQgYyAwLDQuNCAyLjEsOC43IDUuNyw5LjQgMy43LDAuOCA3LC00LjUgNywtOCB2IC0xLjUgYyAwLC0zIC0yLjEsLTguNiAtMywtMTEuMyAtMC41LC0xLjQgLTMuMSwtMTAuNiAtMy45LC0xMC42IC0wLjgsMCAtMC45LDQuNSAtMS4xLDUuNCAtMC42LDIuMSAtMC45LDMuMiAtMS42LDUuMSAtMC44LDIuMyAtMy4yLDcuNiAtMy4yLDEwLjEgbCAwLDAgelwifV0saVtcIkFDLklDLkhBWkFSRE9VUyBXSEVOIFdFVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYwLjYsMTAwLjUgNzguOCwtMCAtMzkuNCwzOS40IEwgNjAuNiwxMDAuNSB6IE0gMTI3LjYsODcuOCBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIHYgNS44IEggMTI3LjYgViA4Ny44IHogTSAxMTUuMyw3NS41IGMgMC42LDAuNCA2LjEsNS45IDYuMSw2LjIgdiAxOC4xIGggLTYuMSBWIDc1LjUgeiBNIDkwLjgsNjkuNSBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDk5LjggSCA5MC44IFYgNjkuNSB6IE0gNzguNiw4MS43IGMgMCwtMC40IDUuNSwtNS44IDYuMSwtNi4yIFYgOTkuOCBIIDc4LjYgViA4MS43IHogbSAtNi4zLDYgMCwxMi4xIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSAzMC44LC0yNC41IDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjIgLTAuMSwwLjQgdiAzMCBoIC02LjEgViA2My4zIHogTSA1Ni43LDEwMCAxMDAsMTQzLjMgMTQzLjMsMTAwIDEwMCw1Ni43IDU2LjcsMTAwIHogbSA0MS4yLDI1LjMgYyAwLjIsMSAwLjYsMS42IDEuNiwxLjggbCAtMC44LDAuNiBjIC0xLjMsLTAuNiAtMS4zLC0wLjEgLTEuNywtMS45IGwgMC45LC0wLjQgeiBtIC0yLjQsLTEgYyAwLDIuOSAxLjMsNC45IDQuMiw0LjkgaCAwLjkgYyAxLjksMCAzLC0xIDMuNiwtMi4zIDAuOSwtMS44IDAuNiwtMy4xIC0wLjIsLTQuNiAtMC44LC0xLjQgLTEuNiwtMi4zIC0yLjIsLTMuOCAtMC41LC0xLjIgLTAuOCwtMy44IC0xLjcsLTQuNCBDIDk5LjYsMTE4LjEgOTUuNSwxMjIuNSA5NS41LDEyNC4yIHogbSAtMTIuNiwtOS40IGMgMC40LDAuOSAwLjQsMS40IDEuNSwxLjcgbCAtMC42LDAuNiBDIDgyLjIsMTE2LjcgODIuNiwxMTYuNSA4MiwxMTUuMyBsIDAuOSwtMC41IHogbSAxLjYsMy44IEggODYgYyAyLjMsMCAzLjcsLTIuMiAzLjcsLTQuNiAwLC0xLjIgLTEuOSwtMy45IC0yLjYsLTQuOSAtMC45LC0xLjQgLTEuMiwtNC43IC0yLjIsLTUuNCAtMC4yLDMgLTIuMyw1LjkgLTMuNiw4IC0xLjksMi45IC0wLjQsNi45IDMuMSw2LjkgeiBtIDI4LjQsLTMuOCBjIDAuMiwxLjYgMC45LDEuMSAxLjUsMiBsIC0wLjgsMC4zIGMgLTEsLTAuMiAtMS43LC0wLjggLTEuOCwtMS45IEwgMTEyLjksMTE0LjggeiBtIDIsLTExLjEgYyAtMC4zLDMuNiAtMi4yLDUuNiAtMy42LDguMSAtMS43LDMuMSAtMC4zLDYuOCAzLjIsNi44IGggMS4zIGMgMi4yLDAgMy43LC0xLjcgMy43LC0zLjkgdiAtMC45IGMgMCwtMS40IC0xLjksLTMuOCAtMi42LC00LjkgLTAuOSwtMS40IC0wLjcsLTQuNCAtMiwtNS4yIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDExMi45LDExNC44IGMgMC4yLDEuNiAwLjksMS4xIDEuNSwyIGwgLTAuOCwwLjMgYyAtMSwtMC4yIC0xLjcsLTAuOCAtMS44LC0xLjkgTCAxMTIuOSwxMTQuOCB6IG0gLTMwLDAgYyAwLjQsMC45IDAuNCwxLjQgMS41LDEuNyBsIC0wLjYsMC42IEMgODIuMiwxMTYuNyA4Mi42LDExNi41IDgyLDExNS4zIGwgMC45LC0wLjUgeiBtIDE1LDEwLjQgYyAwLjIsMSAwLjYsMS42IDEuNiwxLjggbCAtMC44LDAuNiBjIC0xLjMsLTAuNiAtMS4zLC0wLjEgLTEuNywtMS45IGwgMC45LC0wLjQgeiBtIDUuMiwtNjIgNi4yLDYuMSBjIC0wLjIsMC40IC0wLjEsLTAuMiAtMC4xLDAuNCB2IDMwIGggLTYuMSBWIDYzLjMgeiBtIC0zMC44LDI0LjUgMCwxMi4xIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSA2LjMsLTYgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViA5OS44IEggNzguNiBWIDgxLjcgeiBtIDEyLjIsLTEyLjIgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViA5OS44IEggOTAuOCBWIDY5LjUgeiBtIDI0LjUsNiBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIHYgMTguMSBoIC02LjEgViA3NS41IHogbSAxMi40LDEyLjMgYyAwLjYsMC40IDYuMSw1LjkgNi4xLDYuMiB2IDUuOCBIIDEyNy42IFYgODcuOCB6IG0gMTEuNywxMi42IC03OC44LDAgMzkuNCwzOS40IEwgMTM5LjQsMTAwLjQgeiBNIDg1LDEwMy43IGMgMSwwLjcgMS4zLDQgMi4yLDUuNCAwLjYsMSAyLjYsMy42IDIuNiw0LjkgMCwyLjQgLTEuNCw0LjYgLTMuNyw0LjYgbCAtMS41LDAgYyAtMy41LDAgLTUsLTQgLTMuMSwtNi45IDEuMywtMi4xIDMuNCwtNSAzLjYsLTggeiBtIDI5LjgsMCBjIDEuMywwLjkgMS4yLDMuOCAyLDUuMiAwLjcsMS4xIDIuNiwzLjUgMi42LDQuOSBsIDAsMC45IGMgMCwyLjIgLTEuNiwzLjkgLTMuNywzLjkgbCAtMS4zLDAgYyAtMy41LDAgLTQuOSwtMy43IC0zLjIsLTYuOCAxLjQsLTIuNSAzLjQsLTQuNSAzLjcsLTguMSB6IE0gMTAwLDExNC4xIGMgMC44LDAuNiAxLjIsMy4xIDEuNyw0LjMgMC42LDEuNSAxLjUsMi40IDIuMiwzLjggMC44LDEuNSAxLjIsMi43IDAuMyw0LjYgLTAuNiwxLjMgLTEuNywyLjMgLTMuNiwyLjMgbCAtMC45LDAgYyAtMi44LDAgLTQuMiwtMiAtNC4yLC00LjkgMCwtMS43IDQuMSwtNi4xIDQuNSwtMTAuMSB6XCJ9XSxpW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTYuNSwxMDQuNiAwLDAuMiAtMC4yLDAgMCw0IDAsMC4yIDAuMiwwIDMuMiwwIDAuMiwwIDAsLTAuMiAwLC00IDAsLTAuMiAtMC4yLDAgLTMuMiwwIHogbSAyLjMsLTIwIGMgLTEuMSwyLjRlLTUgLTIuMiwwLjEgLTMuMiwwLjUgLTEsMC4zIC0yLDAuOCAtMywxLjQgbCAtMC4xLDAuMSAwLDAuMSAwLDMgMCwwLjQgMC4zLC0wLjIgYyAxLC0wLjcgMiwtMS4yIDIuOSwtMS42IDAuOSwtMC40IDEuOCwtMC41IDIuNiwtMC41IDEuMSwyLjFlLTUgMiwwLjMgMi42LDAuOCAwLjcsMC41IDEsMS4yIDEsMi4xIC0xMGUtNiwwLjUgLTAuMSwxIC0wLjQsMS40IC0wLjIsMC41IC0wLjcsMSAtMS4zLDEuNSBsIC0wLDAgLTEuNCwxLjQgYyAtMSwwLjkgLTEuNiwxLjcgLTEuOSwyLjUgLTAuMywwLjcgLTAuNSwxLjYgLTAuNSwyLjcgbCAwLDIuNCAwLDAuMiAwLjIsMCAzLDAgMCwtMC4yIDAuMiwwIDAsLTEuOSBjIC04ZS02LC0wLjUgMCwtMSAwLC0xLjMgMCwtMC4zIDAuMSwtMC42IDAuMSwtMC44IDAuMSwtMC4yIDAuMiwtMC41IDAuNCwtMC44IDAuMiwtMC4zIDAuNSwtMC43IDEsLTEuMSBsIDEuNCwtMS40IGMgMSwtMC45IDEuNiwtMS43IDIsLTIuNSAwLjQsLTAuOCAwLjYsLTEuNiAwLjYsLTIuNCAtMmUtNSwtMS43IC0wLjYsLTMuMSAtMS44LC00LjIgLTEuMiwtMS4xIC0yLjgsLTEuNiAtNC44LC0xLjYgeiBtIDQuOCwtMzEuMSAtMS41LDQuNSAtNC4zLDEyLjkgLTQuNSwtNyAtMS42LC0yLjUgLTAuMywyLjkgLTEuMywxNC40IC05LjUsLTEwLjcgLTIuOCwtMy4yIDEuMSw0LjEgMy40LDEyLjkgLTEzLjEsLTAuNyAtMC43LC0wIC0wLjMsMC42IC0wLjEsMC4yIC0wLjQsMC44IDAuNywwLjUgMTEuMyw4LjEgLTIwLjEsMS40IC01LjYsMC40IDUuNCwxLjYgMTgsNS4zIC0xMi4zLDcuMSAtMC44LDAuNCAwLjMsMC44IDAuMSwwLjIgMC4zLDAuNyAwLjgsLTAuMSAxNi4xLC0yIC00LjgsOC4zIC0xLjUsMi42IDIuNywtMS4xIDguOCwtMy43IC0zLjQsMTQuNSAtMS4xLDQuNSAyLjgsLTMuNyA4LjksLTExLjYgNSwxOS4yIDAuMiwwLjggMC44LDAgMC40LDAgMC45LDAgMC4xLC0xIDAuOSwtMTguNyA5LjIsMTEuMiAyLjYsMy4yIC0wLjksLTQgLTMuMywtMTUuMiAxMC42LDUuOSA0LjcsMi42IC0zLjQsLTQuMSAtNS41LC02LjYgMTUuNiw0LjQgNCwxLjIgLTMuMSwtMi45IC0xMC43LC05LjkgMTMuNywtMi4xIDQuNiwtMC43IC00LjUsLTEuMiAtMTUuNSwtNC4zIDE4LjksLTkuNiA0LjcsLTIuNCAtNS4yLDAuNSAtMTcuMSwxLjYgNi43LC0xMC44IDIsLTMuMiAtMy4zLDEuOCAtMTQuNiw3LjkgNS4yLC0xNi41IDEuNywtNS41IC0zLjUsNC41IC0xMC42LDE0IC0xLjcsLTE4LjggLTAuNCwtNC44IHogbSAtMS4xLDkuNyAxLjUsMTYuNiAwLjIsMi42IDEuNiwtMiA4LjcsLTExLjUgLTQuMiwxMy40IC0wLjgsMi40IDIuMiwtMS4yIDEzLjQsLTcuMyAtNS44LDkuMyAtMS4xLDEuNyAyLC0wLjIgMTMuOSwtMS4zIC0xNi41LDguNCAtMi4zLDEuMiAyLjUsMC43IDEzLjUsMy43IC0xMS4yLDEuNyAtMiwwLjMgMS41LDEuNCA5LjEsOC40IC0xNC42LC00LjIgLTMuMSwtMC45IDIuMSwyLjUgNC4yLDUgLTcuOCwtNC4zIC0xLjksLTEuMSAwLjUsMi4yIDIuOSwxMy4zIC04LjIsLTEwIC0xLjYsLTIgLTAuMSwyLjYgLTAuOCwxNi4xIC00LjIsLTE2LjMgLTAuNSwtMiAtMS4yLDEuNiAtNy4zLDkuNSAyLjgsLTExLjkgMC40LC0xLjkgLTEuOCwwLjcgLTcuOSwzLjMgNC4zLC03LjQgMSwtMS43IC0yLDAuMiAtMTMuOSwxLjcgMTAuMywtNiAwLjUsLTAuMyAwLC0wLjYgMCwtMC4zIDAsLTAuOCAtMC43LC0wLjIgLTE0LjUsLTQuMiAxNy4zLC0xLjIgMi44LC0wLjIgLTIuMywtMS42IC0xMSwtOCAxMS41LDAuNiAxLjQsMC4xIC0wLjMsLTEuMyAtMi43LC0xMC4xIDguMiw5LjMgMS41LDEuOCAwLjIsLTIuMyAxLjMsLTEzLjggNCw2LjMgMS4xLDEuOCAwLjcsLTIgMy40LC0xMC4zIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDEwMi41IDYzLjIgTCA5OSA3My41IEwgOTguNCA3NS41IEwgOTcuMyA3My43IEwgOTMuMiA2Ny40IEwgOTEuOSA4MS4zIEwgOTEuNyA4My42IEwgOTAuMiA4MS44IEwgODIgNzIuNSBMIDg0LjcgODIuNyBMIDg1LjEgODQgTCA4My43IDgzLjkgTCA3Mi4yIDgzLjQgTCA4My4yIDkxLjMgTCA4NS41IDkzIEwgODIuNyA5My4yIEwgNjUuNCA5NC4zIEwgNzkuOSA5OC41IEwgODAuNyA5OC44IEwgODAuNyA5OS41IEwgODAuNyA5OS44IEwgODAuNyAxMDAuMyBMIDgwLjIgMTAwLjcgTCA2OS44IDEwNi42IEwgODMuOCAxMDQuOSBMIDg1LjggMTA0LjcgTCA4NC44IDEwNi40IEwgODAuNCAxMTMuOCBMIDg4LjMgMTEwLjYgTCA5MC4xIDEwOS44IEwgODkuNyAxMTEuNyBMIDg2LjkgMTIzLjYgTCA5NC4yIDExNC4xIEwgOTUuNSAxMTIuNSBMIDk2IDExNC40IEwgMTAwLjIgMTMwLjggTCAxMDEgMTE0LjYgTCAxMDEuMiAxMTIgTCAxMDIuOCAxMTQgTCAxMTEgMTI0IEwgMTA4LjEgMTEwLjcgTCAxMDcuNiAxMDguNSBMIDEwOS42IDEwOS42IEwgMTE3LjMgMTEzLjkgTCAxMTMuMiAxMDguOSBMIDExMS4xIDEwNi40IEwgMTE0LjMgMTA3LjMgTCAxMjguOSAxMTEuNSBMIDExOS43IDEwMy4xIEwgMTE4LjIgMTAxLjcgTCAxMjAuMyAxMDEuMyBMIDEzMS40IDk5LjYgTCAxMTcuOSA5NS45IEwgMTE1LjQgOTUuMiBMIDExNy44IDk0IEwgMTM0LjMgODUuNiBMIDEyMC4zIDg2LjkgTCAxMTguMyA4Ny4xIEwgMTE5LjQgODUuNCBMIDEyNS4yIDc2LjEgTCAxMTEuOCA4My4zIEwgMTA5LjYgODQuNSBMIDExMC4zIDgyLjIgTCAxMTQuNSA2OC44IEwgMTA1LjggODAuMyBMIDEwNC4zIDgyLjMgTCAxMDQgNzkuOCBMIDEwMi41IDYzLjIgeiBNIDk4LjggODQuNSBDIDEwMC44IDg0LjUgMTAyLjQgODUuMSAxMDMuNiA4Ni4xIEMgMTA0LjggODcuMiAxMDUuNSA4OC42IDEwNS41IDkwLjMgQyAxMDUuNSA5MS4yIDEwNS4zIDkyIDEwNC45IDkyLjcgQyAxMDQuNSA5My41IDEwMy44IDk0LjMgMTAyLjggOTUuMiBMIDEwMS41IDk2LjYgQyAxMDEgOTcuMSAxMDAuNiA5Ny40IDEwMC40IDk3LjcgQyAxMDAuMiA5OCAxMDAuMSA5OC4yIDEwMCA5OC41IEMgMTAwIDk4LjcgOTkuOSA5OC45IDk5LjkgOTkuMiBDIDk5LjggOTkuNSA5OS44IDEwMCA5OS44IDEwMC41IEwgOTkuOCAxMDIuNCBMIDk5LjcgMTAyLjQgTCA5OS43IDEwMi43IEwgOTYuNiAxMDIuNyBMIDk2LjQgMTAyLjcgTCA5Ni40IDEwMi40IEwgOTYuNCAxMDAgQyA5Ni40IDk4LjkgOTYuNiA5OCA5Ni45IDk3LjMgQyA5Ny4yIDk2LjYgOTcuOSA5NS44IDk4LjggOTQuOCBMIDEwMC4yIDkzLjQgQyAxMDAuOCA5Mi45IDEwMS4yIDkyLjQgMTAxLjUgOTEuOSBDIDEwMS43IDkxLjQgMTAxLjkgOTEgMTAxLjkgOTAuNSBDIDEwMS45IDg5LjYgMTAxLjUgODguOSAxMDAuOSA4OC4zIEMgMTAwLjIgODcuOCA5OS40IDg3LjUgOTguMyA4Ny41IEMgOTcuNSA4Ny41IDk2LjYgODcuNyA5NS43IDg4LjEgQyA5NC44IDg4LjUgOTMuOCA4OSA5Mi44IDg5LjcgTCA5Mi41IDg5LjkgTCA5Mi41IDg5LjUgTCA5Mi41IDg2LjUgTCA5Mi41IDg2LjQgTCA5Mi42IDg2LjMgQyA5My42IDg1LjcgOTQuNiA4NS4zIDk1LjYgODUgQyA5Ni43IDg0LjcgOTcuNyA4NC41IDk4LjggODQuNSB6IE0gOTYuNSAxMDQuNiBMIDk5LjggMTA0LjYgTCA5OS45IDEwNC42IEwgOTkuOSAxMDQuOCBMIDk5LjkgMTA4LjggTCA5OS45IDEwOSBMIDk5LjggMTA5IEwgOTYuNSAxMDkgTCA5Ni4zIDEwOSBMIDk2LjMgMTA4LjggTCA5Ni4zIDEwNC44IEwgOTYuNSAxMDQuOCBMIDk2LjUgMTA0LjYgelwifV0saVtcIkFDLklDLkZMQU1NQUJMRSBHQVNcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5My4zLDgyLjUgYyAwLC00LjMgMTMuOCwtNC4zIDEzLjgsMCB2IDU1LjYgYyAwLDEuMyAtNC40LDEuMiAtNS45LDEuMiBoIC0yIGMgLTEuNSwwIC01LjksMC4xIC01LjksLTEuMiBWIDgyLjUgbCA0ZS00LDAgeiBtIDUuMywtMjAuNiBoIC02LjUgdiAyLjkgaCA2LjMgdiAzLjIgaCAtMy43IHYgMiBoIDMuNyB2IDUuMyBoIC00LjYgdiA0LjUgYyAtMS4xLDAuMyAtMiwxLjYgLTIsMyB2IDU0LjggYyAwLDMuMyAzLjcsMy4yIDcuMSwzLjIgaCAyLjQgYyAzLjQsMCA3LjEsMC4yIDcuMSwtMy4yIFYgODMuMSBjIDAsLTIuOCAtMS44LC0yLjggLTEuOCwtMy43IHYgLTQuMSBoIC00LjcgdiAtMTAuNCBoIDYuMyB2IC0zIGggLTYuNyB2IC0yLjUgaCAtMi45IHYgMi41IGwgMCwwIHogbSAyMS44LDMyLjMgdiAwLjYgYyAwLDIuMiAyLjMsNS4xIDEuNiw4LjEgLTEuMywtMC4zIC0zLjEsLTIgLTMuOCwtMyAtMC4zLC0wLjQgLTAuOSwtMS43IC0xLjIsLTIuMiAtMC40LC0wLjkgLTAuNCwtMi4zIC0wLjcsLTIuOCAtMS4xLDAuOCAtMS42LDMuNSAtMS42LDUuNSB2IDAuMiBjIDAsMy4yIDIuNCw3LjUgMy44LDkuNiAyLDMgNi4zLDMuMyA4LjQsNS4xIDEuNiwtMC45IDYuOSwtMy43IDcuNywtNC45IDAuOSwtMS4yIDMuMiwtNy40IDMsLTkuNiBsIC0wLjcsLTUuOSBoIC0wLjQgYyAtMCwzLjIgLTIuNyw3LjYgLTUuNSw3LjkgdiAtMiBjIDAsLTEuNyAxLjQsLTQgMS40LC02LjEgdiAtMC4yIGMgMCwtMC45IC0yLjQsLTQuNCAtMy4yLC00LjcgMCwzLjQgLTAuMyw1LjUgLTIuNSw2LjcgLTAuOCwtMC43IC0xLjgsLTEuNiAtMS44LC0zLjEgdiAtMS4yIGMgMCwtMi4xIDIsLTQuMSAyLC02LjEgMCwtMC45IC0wLjEsLTEuNiAtMC42LC0yIC0wLjksMy44IC01LjksOC45IC01LjksMTAuMiB6IG0gLTUyLjcsMCB2IDAuNCBjIDAsMS4yIDEuOCw0LjMgMS44LDYuMSB2IDIuMiBjIC0yLjQsLTAuMiAtNS43LC01IC01LjcsLTguMSAtMS43LDEuMSAtMS41LDQuMyAtMS40LDYuNyAwLjEsMi40IDEuMyw0LjcgMi4yLDYuMyAxLjMsMi42IDEuNiwyLjkgNCw0LjUgMC42LDAuNCA1LjMsMi44IDUuOSwyLjggMS4yLDAgNi44LC0zLjkgNy41LC00LjcgMC45LC0xIDMuMywtNy4zIDMuMSwtOS4xIGwgLTAuNiwtNi41IGggLTAuNCBjIC0wLjUsMi4zIC0wLjMsMy4zIC0xLjYsNSAtMC42LDAuOCAtMi43LDIuNyAtMy44LDIuOCAwLC0wLjkgLTAuMiwtMC43IC0wLjIsLTEuNCAwLC0xLjggMS40LC00LjMgMS43LC02LjYgMC4xLC0xIC0yLjYsLTQuNiAtMy4zLC01IDAuNCwyIC0wLjgsNi41IC0yLjQsNi41IGggLTAuMiBjIC0wLjksMCAtMS44LC0yLjIgLTEuOCwtMy40IDAsLTMuOSAyLjYsLTQuNSAxLjYsLTguOCAtMCwwIC0yLjIsNC41IC0yLjksNS40IC0wLjYsMC42IC0zLjUsNC4zIC0zLjUsNC45IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDkzLjMsODIuNSBjIDAsLTQuMyAxMy44LC00LjMgMTMuOCwwIHYgNTUuNiBjIDAsMS4zIC00LjQsMS4yIC01LjksMS4yIGggLTIgYyAtMS41LDAgLTUuOSwwLjEgLTUuOSwtMS4yIFYgODIuNSBsIDRlLTQsMCB6XCJ9XSxpW1wiQUMuSUMuRkxBTU1BQkxFIExJUVVJRFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMC4xLDEzNS40IGMgLTcuNCwwIC0xMS4zLC01LjQgLTEzLjEsLTExLjEgLTIuMSwtNi43IC0yLjQsLTE0LjQgMC44LC0yMC4yIDUuOSwtMTAuNiAxMC43LC0yMS42IDExLjksLTM2LjcgNCw0LjYgMy42LDE3LjQgNi4zLDIzLjkgMi42LDYuNSA4LjksMTMuNCA4LjksMjEgdiAxLjcgYyAwLDEwIC00LjUsMjEuMyAtMTQuMiwyMS4zIGggLTAuNyB2IDAgeiBtIC0wLjYsMS43IGggMS45IGMgMTAuMSwwIDE1LjQsLTExLjcgMTUuNCwtMjEuOSB2IC0zIGMgMCwtOS41IC03LjcsLTE1LjggLTkuOSwtMjQuMSAtMi40LC04LjkgLTEuNywtMjEuMiAtOS4xLC0yNS4xIDAsOC42IC0xLjMsMTYgLTMuNiwyMi40IC0xLjIsMy4zIC0yLjQsNi4yIC0zLjYsOS41IC0xLjIsMi43IC0zLjEsNS44IC00LjUsOC42IC0xLjQsMi43IC0zLDYuMSAtMi42LDEwLjUgMC40LDQuNCAwLjYsNy42IDEuOCwxMS4zIDIsNS45IDYuNywxMS45IDE0LjMsMTEuOSB6IE0gMTIyLDg3IHYgMC4yIGMgMCwyLjMgMi40LDUuNSAxLjcsOC42IC0xLjMsLTAuMSAtMy41LC0yLjIgLTQuMSwtMy4yIC0wLjUsLTAuOSAtMC45LC0xLjMgLTEuMiwtMi40IC0wLjMsLTAuNyAtMC42LC0yLjYgLTAuOCwtMyAtMS4yLDAuOSAtMS43LDQgLTEuNyw2LjEgMCwzLjIgMi42LDguNCA0LDEwLjQgMSwxLjMgMi41LDIuMyA0LjEsMy4xIDAuNiwwLjMgNC44LDIuNCA1LDIuNCAwLjksMCA3LjYsLTQuNCA4LjIsLTUuMSAwLjksLTEuMSAzLjUsLTggMy4zLC0xMC4xIGwgLTAuNywtNi44IGggLTAuNCBjIC0wLjEsMy41IC0yLjgsOC4yIC01LjksOC40IDAsMCAwLjMsLTMuNSAwLjUsLTQuNCAwLjMsLTEuMyAxLC0yLjkgMSwtNC4zIFYgODYuOCBjIDAsLTEgLTIuNywtNC42IC0zLjQsLTUuMSAwLDMuNyAtMC4yLDYgLTIuNyw3LjIgLTAuNywtMC42IC0xLjksLTEuNyAtMS45LC0zIHYgLTEuNCBjIDAsLTIuMyAyLjEsLTQuNyAyLjEsLTYuNSBsIDAsLTAuMiAtMC4zLC0xLjkgYyAtMSwwLjIgLTEuMSwyIC0xLjUsMi45IC0wLjUsMC45IC0xLjIsMS45IC0xLjgsMi42IC0wLjksMS4yIC0zLjUsNC4xIC0zLjUsNS43IHogbSAtNTYuNiwwIGMgMCwxLjMgMS45LDQuNyAxLjksNyB2IDEuOSBjIC0yLjYsLTAuMiAtNi4xLC01LjIgLTYuMSwtOC42IC0zLjQsMi40IC0wLjcsMTEuNCAwLjksMTQuMSAxLjUsMi42IDEuOCwzIDQuNCw0LjcgMC40LDAuMyA2LjEsMy4xIDYuMiwzLjEgMS4zLDAgNC4xLC0yLjUgNS4zLC0zLjIgMi41LC0xLjIgMi45LC0xLjcgNC4yLC00LjMgMC40LC0wLjkgMS42LC01LjQgMS45LC02LjYgMC40LC0yLjEgLTAuNSwtNS44IC0wLjUsLTcuOSBoIC0wLjUgYyAtMC4zLDMuNSAtMi45LDguNCAtNS45LDguNCAtMCwtMC45IC0wLjIsLTAuNSAtMC4yLC0xLjIgMCwtMiAxLjUsLTQuOSAxLjgsLTcuMSAwLjIsLTEuMiAtMi43LC01LjIgLTMuNSwtNS40IDEsMi4xIC0xLjEsNi4xIC0yLjcsNyAtMC45LC0wLjYgLTEuOSwtMi4yIC0xLjksLTMuNiB2IC0wLjQgYyAwLC0zLjcgMi43LC00LjYgMS43LC05LjEgLTAuNSwwLjQgLTAuOCwyIC0xLjQsMyAtMC43LDEgLTEsMS43IC0xLjgsMi43IC0wLjgsMSAtMy42LDQuMiAtMy42LDUuNSBsIDAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDAuMSwxMzUuNCBjIC03LjQsMCAtMTEuMywtNS40IC0xMy4xLC0xMS4xIC0yLjEsLTYuNyAtMi40LC0xNC40IDAuOCwtMjAuMiA1LjksLTEwLjYgMTAuNywtMjEuNiAxMS45LC0zNi43IDQsNC42IDMuNiwxNy40IDYuMywyMy45IDIuNiw2LjUgOC45LDEzLjQgOC45LDIxIHYgMS43IGMgMCwxMCAtNC41LDIxLjMgLTE0LjIsMjEuMyBoIC0wLjcgdiAwIHpcIn1dLGlbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2OC42LDEwMiBjIDAsLTIgMS45LC00LjIgMS45LC02LjMgdiAtMS41IGMgMCwtMC42IC0wLjEsLTAuNCAtMC40LC0wLjcgLTAuOCwzLjcgLTYuMSw5LjEgLTYuMSwxMC40IDAsMS42IDEuOSw0LjYgMS45LDguMiAtMi42LC0wLjIgLTUuOSwtNC45IC01LjksLTggLTAuOCwwLjkgLTEuNSwyLjYgLTEuNSw0LjMgMCw0LjQgMS43LDguMSAzLjUsMTAuNiAwLjgsMS4yIDcsNS4yIDguNyw1LjIgMS4xLDAgNi43LC0zLjcgNy4zLC00LjQgMC45LC0xLjIgMy4yLC02LjggMy4yLC04LjYgMCwtMS42IC0wLC02LjYgLTAuOSwtNy4yIC0xLjEsNC44IC0xLjUsNS45IC01LjQsOC4xIDAsLTQuMyAxLjMsLTUuNyAxLjMsLTguMiB2IC0wLjQgYyAwLC0wLjEgLTIuOCwtNC40IC0zLC00LjYgMCwyLjQgLTAuNyw2LjcgLTIuNiw2LjcgLTEsOGUtNCAtMiwtMi40IC0yLC0zLjcgeiBtIDYwLjMsLTAuNCBjIDAsLTEuNyAyLjIsLTQuNSAyLjIsLTYuMyAwLC0wLjcgLTAuMiwtMS42IC0wLjcsLTEuOSAtMC45LDMuNyAtNS45LDguOSAtNS45LDEwLjIgdiAwLjQgYyAwLDEuOSAxLjUsMy43IDEuNSw2LjEgdiAyLjIgYyAtMi4zLC0wLjYgLTUuNiwtNC45IC01LjcsLTggLTEsMC43IC0xLjUsMyAtMS41LDQuOCB2IDEuMSBjIDAsMi44IDIuNSw3LjcgMy44LDkuNSAyLDIuNyA2LjQsMy4xIDguNCw0LjggMi4xLC0xLjEgMy4xLC0xLjggNS4xLC0yLjkgMi42LC0xLjYgMi4yLC0xLjUgMy41LC00LjMgMC43LC0xLjQgMS43LC00LjUgMS44LC02LjIgMC4xLC0xLjUgLTAuMSwtNi40IC0wLjksLTcgLTAuOCwzLjUgLTIuMSw3LjEgLTUuNCw4IC0wLC0wLjcgLTAuMiwtMC43IC0wLjIsLTEuNSB2IC0wLjIgYyAwLC0xLjggMS43LC00LjkgMS41LC02LjQgLTAuMSwtMC44IC0yLjUsLTQuOCAtMywtNS4xIDAsMi44IC0wLjUsNi43IC0zLDYuNyAtMC40LC0xLjMgLTEuNSwtMSAtMS41LC0zLjkgeiBtIC0zNS42LDEuOSB2IC0yMCBsIDIwLC0wLjQgdiAxOS40IGwgLTIwLDEgeiBtIC0xMy45LC03LjYgMCwtMTYuOCAxMC44LDQgdiAxOS44IGMgLTEuMiwtMC43IC0xMC45LC02LjIgLTEwLjksLTcgeiBtIDEuNSwtMTguNCBjIDUuNywwIDExLjQsMCAxNy4yLDAgMi4xLDAgMTIuMSwzLjEgMTMuMiwzLjkgbCAtMy43LDAuMyBIIDkyLjYgYyAtMC45LDAgLTExLjEsLTMuNyAtMTEuNywtNC4xIHogbSAtMy41LC0xLjUgMCwxNC43IC0wLjMsNi43IGMgMi4yLDEuMiA1LjMsMyA3LjUsNC41IDEuOSwxLjIgNS41LDQgOC4xLDQgNy42LDAgMTUuMywtMS4xIDIzLjEsLTEuMSBsIC0wLC0yMy42IGMgLTEsLTAuNSAtMTQuOCwtNS40IC0xNS4yLC01LjQgbCAtMy45LC0wLjEgLTE5LjMsMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDgwLjksNzcuNSBjIDUuNywwIDExLjQsMCAxNy4yLDAgMi4xLDAgMTIuMSwzLjEgMTMuMiwzLjkgbCAtMy43LDAuMyBIIDkyLjYgYyAtMC45LDAgLTExLjEsLTMuNyAtMTEuNywtNC4xIHogbSAtMS41LDE4LjQgMCwtMTYuOCAxMC44LDQgdiAxOS44IGMgLTEuMiwtMC43IC0xMC45LC02LjIgLTEwLjksLTcgeiBtIDEzLjksNy42IHYgLTIwIGwgMjAsLTAuNCB2IDE5LjQgbCAtMjAsMSB6XCJ9XSxpW1wiQUMuSUMuTk9OLUZMQU1NQUJMRSBHQVNcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5Mi43LDgxLjMgYyAwLC00LjYgMTQuNywtNC42IDE0LjcsMCB2IDU5LjQgYyAwLDEuNCAtNC43LDEuMyAtNi4zLDEuMyBoIC0yLjEgYyAtMS42LDAgLTYuMywwLjEgLTYuMywtMS4zIFYgODEuMyB6IG0gNS43LC0yMiBoIC03IHYgMy4yIGggNi43IHYgMy4zIGggLTQgdiAyLjEgaCA0IHYgNS43IGggLTQuOCB2IDQuOCBjIC0xLjEsMC4zIC0yLjEsMS43IC0yLjEsMy4xIHYgNTguNiBjIDAsMy41IDQsMy4zIDcuNiwzLjMgaCAyLjUgYyAzLjYsMCA3LjYsMC4yIDcuNiwtMy4zIFYgODEuOSBjIDAsLTMgLTEuOSwtMyAtMS45LC00IHYgLTQuNCBoIC01IHYgLTExLjEgaCA2LjcgdiAtMy4xIGggLTcuMiB2IC0yLjcgaCAtMy4xIHYgMi43IGwgLTRlLTQsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSA5Mi43LDgxLjMgYyAwLC00LjYgMTQuNywtNC42IDE0LjcsMCB2IDU5LjQgYyAwLDEuNCAtNC43LDEuMyAtNi4zLDEuMyBoIC0yLjEgYyAtMS42LDAgLTYuMywwLjEgLTYuMywtMS4zIFYgODEuMyB6XCJ9XSxpW1wiQUMuSUMuT1JHQU5JQyBQRVJPWElERVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMi4xLDEyOC4yIHYgNi4yIGwgLTM2LjYsMi4yIHYgLTYuNyBsIDAuNiwwLjEgMzYsLTEuNyB6IG0gLTYzLjgsLTExLjEgYyAyLjYsMS43IDI2LjEsMTIuMSAyNi4xLDEzLjIgdiA1LjkgbCAtMC4xLDAuMiAtMjYsLTE0LjcgdiAtNC42IHogbSA2MS4xLDEwIGMgLTQuNywwIC0zMywyLjEgLTM0LjYsMS41IC0xLjgsLTAuNyAtMjMuOCwtMTEuNCAtMjQuNCwtMTIgMy44LDAgNy41LDAgMTEuMywwIDIuOSwwIDguOCwtMC44IDEwLDEuMSBsIC05LDAuNiAyLjEsMC43IHYgMC40IGggLTEuMiBsIC0xLjgsMC4yIGMgMiwxLjMgMTguMyw1LjIgMjIuNCw1LjIgaCAxLjkgYyA0LjgsMCA5LjIsLTEuMyAxMywtMS40IDAuNywwIDkuOSwzLjMgMTAuNCwzLjcgeiBtIC0yNS40LC0yMy4yIDEuMSw5LjQgNS40LC02LjggLTIuNSw4LjIgNy43LC00LjMgLTMuNyw1LjkgOC40LC0wLjggLTkuMiw0LjcgOC4xLDIuNiAtMTQuNCwxLjcgYyAtMy4zLDAuMiAtMTksLTMuNyAtMjAuNSwtNC44IGwgMTAuMywtMC42IC02LjIsLTQuNSA2LjgsMC4xIC0xLjcsLTUuOSA1LjEsNS4yIDAuNywtNy41IDIuNiwzLjkgMi4xLC02LjYgeiBtIDAuNywtMi4yIC0wLjEsLTAuNiBoIC0wLjMgbCAtMS44LDYuMiAtMC40LC0wIC0yLjQsLTMuNyAtMCwyLjEgLTAuNywtMS4xIC0wLjYsNi4yIC00LjksLTUuNCAwLjYsMi42IC0xLjUsLTEuMiAxLjgsNi4yIC0yLjUsMCAtNCwtMC4yIDEuNSwxLjEgLTIuNCwtMC4xIDEuNSwxLjQgaCAtMjEuMyBjIC0wLjEsMC41IC0wLjIsMC41IC0wLjIsMS4xIHYgNSBjIDAsMS42IDQuOCwzLjcgNi4yLDQuNCAyLjMsMS4zIDQuNiwyLjQgNi45LDMuOCA0LjQsMi43IDkuMiw1IDEzLjcsNy42IDEuOCwxLjEgNi44LDAuNSA5LjYsMC4yIDIuOCwtMC4zIDcuMiwtMC4yIDkuOSwtMC43IDIuOCwtMC41IDcsLTAuNCA5LjksLTAuNyAyLjcsLTAuNCA3LjQsLTAuNiAxMCwtMC43IHYgLTcuOSBjIDAsLTAuOSAtNS4zLC0yLjQgLTYuNCwtMi44IC0xLjYsLTAuNSAtNS43LC0xLjkgLTYuOCwtMi42IGwgMi45LC0wLjMgLTguNCwtMi4yIDAsLTAuNCA5LjIsLTQuNyAtMS41LDAuMiAxLjcsLTEuMSAtMTAsMSAzLjksLTYuNiAtOC4xLDQuNyAyLjksLTEwIC02LjQsOC40IC0xLjEsLTExLjEgLTAuNiwxLjkgeiBtIDEuMSwtNi4yIGMgLTUuNiwwIC05LjYsLTMuNCAtOS42LC05IHYgLTEuMSBjIDAsLTQuOCA5LC0xMi41IDksLTIxLjEgMi44LDMuMiAyLjIsNy42IDQuMywxMSAxLjIsMS45IDUuMyw3LjggNS4zLDkuOSB2IDEuMSBjIDAsNS4zIC0zLjcsOS4yIC05LDkuMiB6IG0gLTEwLjksLTEwIHYgMS4xIGMgMCwxMy43IDIxLjEsMTMuMiAyMS4xLDAuOCB2IC0yLjEgYyAwLC0zLjUgLTQuNSwtOC4zIC01LjksLTExLjcgLTIuMiwtNS4xIC0xLjEsLTguOCAtNi4yLC0xMS42IDAsMTEuMiAtOSwxNy42IC05LDIzLjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTA1LjcsOTUuNSBjIC01LjYsMCAtOS42LC0zLjQgLTkuNiwtOSB2IC0xLjEgYyAwLC00LjggOSwtMTIuNSA5LC0yMS4xIDIuOCwzLjIgMi4yLDcuNiA0LjMsMTEgMS4yLDEuOSA1LjMsNy44IDUuMyw5LjkgdiAxLjEgYyAwLDUuMyAtMy43LDkuMiAtOSw5LjIgeiBtIC0xLjgsOC40IDEuMSw5LjQgNS40LC02LjggLTIuNSw4LjIgNy43LC00LjMgLTMuNyw1LjkgOC40LC0wLjggLTkuMiw0LjcgOC4xLDIuNiAtMTQuNCwxLjcgYyAtMy4zLDAuMiAtMTksLTMuNyAtMjAuNSwtNC44IGwgMTAuMywtMC42IC02LjIsLTQuNSA2LjgsMC4xIC0xLjcsLTUuOSA1LjEsNS4yIDAuNywtNy41IDIuNiwzLjkgMi4xLC02LjYgeiBtIC0zNS42LDEzLjIgYyAyLjYsMS43IDI2LjEsMTIuMSAyNi4xLDEzLjIgdiA1LjkgbCAtMC4xLDAuMiAtMjYsLTE0LjcgdiAtNC42IHogbSA2My44LDExLjEgdiA2LjIgbCAtMzYuNiwyLjIgdiAtNi43IGwgMC42LDAuMSAzNiwtMS43IHogbSAtMi43LC0xLjEgYyAtNC43LDAgLTMzLDIuMSAtMzQuNiwxLjUgLTEuOCwtMC43IC0yMy44LC0xMS40IC0yNC40LC0xMiAzLjgsMCA3LjUsMCAxMS4zLDAgMi45LDAgOC44LC0wLjggMTAsMS4xIGwgLTksMC42IDIuMSwwLjcgdiAwLjQgaCAtMS4yIGwgLTEuOCwwLjIgYyAyLDEuMyAxOC4zLDUuMiAyMi40LDUuMiBoIDEuOSBjIDQuOCwwIDkuMiwtMS4zIDEzLC0xLjQgMC43LDAgOS45LDMuMyAxMC40LDMuNyB6XCJ9XSxpW1wiQUMuSUMuT1hJRElaRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4MC45LDEzNS4zIDAsMC4yIDAsNC4yIDAsMC4yIDAuMiwwIDQwLjcsMCAwLjIsMCAwLC0wLjIgMCwtNC4yIDAsLTAuMiAtMC4yLDAgLTQwLjcsMCAtMC4yLDAgeiBtIDYuNSwtMjAuNyBjIDAsLTcuNCA2LjEsLTE0IDEzLjQsLTE0IGggMS4xIGMgNy41LDAgMTMuNiw2LjYgMTMuNiwxNCAwLDcuMSAtNi4yLDEzLjkgLTEzLjIsMTMuOSBoIC0xLjkgYyAtNi44LC0wIC0xMywtNi44IC0xMywtMTMuOSB6IG0gMTIuOCwtMzUuOSBjIC0wLjcsMCAtMi4xLC0yLjEgLTIuMywtMi45IC0wLjMsLTEuMiAtMC40LC0zIDAsLTQuNCAwLjUsLTIuMSAyLjgsLTUuOSAyLjgsLTcuNSAwLC0xLjEgLTAuMSwtMyAtMS4zLC0zLjEgLTEsNC40IC0yLjEsNC45IC00LjEsOCAtMSwxLjUgLTQuNyw1LjggLTQuNyw3LjMgdiAwLjQgYyAwLDIuNCAzLjEsOC4xIDIuNywxMC41IGwgLTAuMiwxLjcgYyAtMy41LC0wLjggLTguMSwtNy4zIC04LjEsLTEyIC0xLjQsMC4xIC0yLjUsNC40IC0yLjUsNi4xIHYgMi45IGMgMCw1LjcgMy4zLDguMyA0LjIsMTIgLTIuNywtMS40IC00LC0yLjIgLTUuOSwtNC40IC0xLjEsLTEuMiAtMy43LC01LjYgLTQuMSwtNS45IC0xLjEsMi40IDEuNywxMC4zIDIuNCwxMi4xIDAuNywxLjcgMS40LDMuNSAyLjMsNSAxLjEsMS44IDIuMiwyLjYgMy4yLDQuMSAwLDEuNyAtMC41LDIuNCAtMC42LDQuNyAtMCwxLjggLTAsMi42IDAuMiw0LjYgMC4yLDIuMSAyLjEsNi4xIDMuMiw3LjMgMi40LDIuNiAyLjQsMi44IDUuNiw0LjggMiwxLjMgNC45LDIuMiA4LjEsMi4yIGggMC42IGMgNi40LDAgMTEuNCwtMy41IDE0LjIsLTcuMiAzLjgsLTUuMiAzLjgsLTkuOSAyLjIsLTE2LjcgMy41LC02LjYgNS45LC05LjMgNS45LC0xOS43IHYgLTAuNCBsIC0wLjQsLTQgYyAtMC4xLDAgLTMuMyw2LjIgLTMuOCw3IC0xLDEuNSAtMy43LDQuOCAtNS43LDUgMC4xLC0zLjIgMi4xLC02LjIgMi4xLC05LjQgdiAtMi4yIGwgLTEuMSwtOCBjIC0xLDAuNyAtMS41LDUuOSAtMyw3LjcgLTAuNCwwLjUgLTUuNiw1LjUgLTUuNiwzLjYgdiAtMS43IGMgMCwtMy4xIDIuMSwtNi4zIDIuMSwtOSB2IC0xLjMgYyAwLC0wLjggLTMuOSwtNi41IC00LjYsLTYuOSAwLDIuMyAtMC4yLDQuNCAtMC43LDYuMiAtMC4zLDEuMSAtMiwzLjcgLTMsMy43IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg3LjQsMTE0LjUgYyAwLC03LjQgNi4xLC0xNCAxMy40LC0xNCBoIDEuMSBjIDcuNSwwIDEzLjYsNi42IDEzLjYsMTQgMCw3LjEgLTYuMiwxMy45IC0xMy4yLDEzLjkgaCAtMS45IGMgLTYuOCwtMCAtMTMsLTYuOCAtMTMsLTEzLjkgelwifV0saVtcIkFDLklDLlJBRElPQUNUSVZFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODMuNywxMzAuNCBjIC0xMC4xLC01LjYgLTE2LjYsLTE3IC0xNi40LC0yOC41IGwgMTcuOCwtMCBjIC0wLjIsNSAzLjEsMTAuNyA3LjUsMTMuMSBsIC05LDE1LjQgeiBtIDQ5LjEsLTI4LjIgYyAwLjIsMTEuNSAtNi40LDIyLjkgLTE2LjQsMjguNSBsIC05LC0xNS40IGMgNC40LC0yLjQgNy43LC04LjEgNy42LC0xMy4xIGwgMTcuOCwwIHogTSA4My41LDczLjggYyA5LjksLTUuOSAyMywtNS45IDMyLjksMCBsIC04LjksMTUuNSBjIC00LjMsLTIuNiAtMTAuOSwtMi42IC0xNS4xLDAgbCAtOC45LC0xNS41IHogbSAyNi41LDI4LjUgYyAwLDUuNSAtNC40LDkuOSAtOS45LDkuOSAtNS41LDAgLTkuOSwtNC40IC05LjksLTkuOSAwLC01LjUgNC40LC05LjkgOS45LC05LjkgNS41LDAgOS45LDQuNCA5LjksOS45IHpcIn1dLGlbXCJBQy5JQy5TUE9OVEFORU9VU0xZIENPTUJVU1RJQkxFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjIsMTI4LjQgLTIuMSwwIDAsMTIuNiAyLjEsMCB6IG0gMjYuNSwwLjYgLTguNywtOC42IC0xLjIsMS4yIDguNyw4LjcgeiBtIC00NSwtNy41IC0xLjMsLTEuMyAtOC44LDguOCAxLjMsMS40IHogbSA1NS41LC0xOS43IC0xMi4yLDAgMCwxLjkgMTIuMiwwIHogbSAtNjMuMywwIC0xMy4xLDAgMCwxLjkgMTIuOCwwIHogbSA1Mi44LC0yNS4zIC0xLjMsLTEuMiAtOSw4LjcgMS41LDEuNSB6IG0gLTQ2LjEsOS4xIDEuNCwtMS41IC05LjMsLTkuMiAtMCwwLjIgLTEuMiwxLjMgeiBtIDE5LjUsLTI2LjUgLTIuMSwwIDAsOS43IDIuMSwwIHogTSA5MS43LDg4IHYgMC42IGMgMCwwLjUgMS40LDQuMyAxLjcsNS4xIDAuNywyLjIgMC43LDMuNCAwLjcsNS43IC0xLjIsLTAuMSAtNC40LC0zIC01LjEsLTQgLTEuNywtMi41IC0xLjcsLTMuNCAtMi41LC02LjcgLTAuOSwwLjcgLTEuOSwzLjggLTEuOSw1LjUgdiAyLjMgYyAwLDUuNiAzLjYsOC40IDMuOCwxMS4xIC0wLjksLTAuMiAtNC44LC0zLjIgLTUuNCwtMy44IC0wLjcsLTAuOCAtMy4zLC01LjMgLTMuOCwtNS40IDAsMy45IDEuMSw2LjkgMi4xLDkuNyAwLjYsMS41IDEuMiwyLjkgMS43LDQuMiAwLjgsMi4yIDEuNCwyIDIuNiwzLjUgMi45LDMuNiA5LjQsOC4zIDE1LjcsOC4zIGggMC44IGMgMi4yLDAgNi40LC0xLjcgNy45LC0yLjYgMi40LC0xLjMgNC41LC0yLjcgNiwtNC44IDIuOCwtMy44IDUuMywtOS4zIDUuMywtMTYgdiAtMi43IGwgLTAuMiwtMi4zIGggLTAuNCBjIC0xLjEsNC43IC00LjIsOC40IC04LDEwLjUgMCwtMy42IDEuMywtNS4zIDEuOSwtOC40IDAuNCwtMi40IC0xLC02LjkgLTEsLTkuMiAtMC40LDAuMyAtMS4yLDUuNCAtMi41LDcgLTAuMywwLjQgLTUuMSw1LjIgLTUuMSwzLjEgdiAtMi4xIGMgMCwtMyAxLjksLTQuOCAxLjksLTguMiAwLC0wLjggLTMuNSwtNiAtNC4xLC02LjMgbCAwLjEsMC45IGMgMCwxLjIgLTAuNCw0LjEgLTAuNyw1IC0wLjIsMC41IC0yLjMsMyAtMi42LDMgLTEuMiwwIC0yLjUsLTIuOSAtMi41LC00LjQgdiAtMS4xIGMgMCwtMi45IDIuOCwtNi4xIDIuNiwtOCBsIC0wLjUsLTIuOSBjIC0wLjUsMC40IC0xLjIsMyAtMS42LDMuOSAtMC42LDEuMyAtMS40LDIuMiAtMi4yLDMuMiBDIDk1LjQsODIuNCA5MS43LDg3LjEgOTEuNyw4OCB6XCJ9XSxpW1wiQUMuSUMuVU5FWFBMT0RFRCBPUkROQU5DRVwiXT1hKFwiVVhPXCIpLGlbXCJBQy5JQy5UT1hJQyBJTkZFQ1RJT1VTIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjYsMTE2LjIgYyAwLC0zLjYgMC45LC00LjYgMS41LC03LjMgbCAtMi41LC0xLjIgYyAtMi40LDIuMSAtNC40LDEuNiAtNi44LDAgbCAtMi41LDEuNCBjIDAuMiwyLjYgMiwzLjkgMS41LDguNyAtMC40LDMuMSAtMS4xLDUuOCAtMi42LDcuOCAtMi45LDMuOSAtNyw3LjQgLTEzLjcsNy40IGggLTEgYyAtNC43LDAgLTEwLjIsLTMuMiAtMTIsLTYgbCAtMS4yLDAuNiBjIDMuMyw0LjkgMTEuNCwxMCAxOS44LDEwIGggMC4yIGMgNi40LDAgMTAuOSwtMi43IDE0LjgsLTUuMyAzLjcsMi41IDcuNiw1IDEzLjgsNSBoIDMgYyAzLjgsMCA4LjIsLTEuNiAxMC42LC0zLjIgMS44LC0xLjIgNi43LC00LjUgNy4yLC02LjYgLTEuMSwtMC4zIC0wLjUsLTAuNSAtMS4zLC0wLjUgLTAuNSwwIC0xLjcsMS45IC0yLjIsMi4zIC0wLjgsMC42IC0xLjgsMS4xIC0yLjYsMS42IC0xLjQsMC45IC00LjcsMS44IC03LDEuOCBoIC0xLjggYyAtNy45LDAgLTE1LjMsLTcuNyAtMTUuMywtMTUuOCB2IC0wLjggeiBtIDIuMywzLjUgMi41LDQuMyBjIDMuMiwtMC44IDcuNywtNS4yIDkuMywtNy44IDIuMiwtMy43IDMuNSwtNy44IDMuNSwtMTMuOCBoIC01LjUgYyAwLjEsNS4yIC0wLjEsNy4yIC0yLjUsMTAuOCAtMS4yLDEuOCAtMS43LDIuMSAtMy4yLDMuNiAtMSwxIC0zLjYsMi4yIC00LjEsMi45IHogbSAtMjguNiwtMTMuOCBjIDAsNy40IDYuOCwxNi43IDEyLjUsMTggbCAyLjMsLTQuNSBjIC02LjUsLTMuNCAtOS41LC04IC05LjUsLTE3LjEgaCAtNS4zIHYgMy41IHogbSAtMi41LC0xNyB2IDEgYyAwLDAuNSAtNSwzLjIgLTUuOCwzLjggLTEuNiwxLjEgLTMuNSwzLjIgLTQuNyw0LjggLTIuOCwzLjYgLTQuOCw4LjEgLTQuOCwxNC4yIDAsNC40IDEsNiAxLjgsOS40IGwgMS4yLC0wLjYgYyAtMC4xLC0xLjUgLTAuOCwtMi4zIC0wLjgsLTQgdiAtMiBjIDAsLTcuOCA3LjksLTE1LjYgMTYsLTE1LjYgaCAxLjggYyAyLjYsMCA1LjksMS4zIDcuNSwyLjIgMi4yLDEuMyAzLjYsMy42IDUuMyw0LjggbCAyLjMsLTEgdiAtMS44IGMgMCwtMiAxLjYsLTMuOSAzLjMsLTQuMyB2IC0zIGMgLTcuNiwtMC4yIC0xNS4zLC03LjggLTE1LjMsLTE1LjUgdiAtMS41IGMgMCwtNC4xIDIuMSwtOC42IDQuMiwtMTAuNiAxLjMsLTEuMiAyLjUsLTIuMyA0LC0zLjIgMC44LC0wLjUgNS4xLC0xLjUgNS4xLC0yLjUgdiAtMSBjIC02LjYsMS42IC0xMS43LDMuOCAtMTUuNCw4LjUgLTQuMyw1LjUgLTUuNyw5IC01LjcsMTcuOSBsIDAsMCB6IG0gMjcuNiwtMjUuNCBjIDAsMC42IDQuMiwyLjEgNSwyLjUgMS4yLDAuNiAzLjUsMi40IDQuMiwzLjUgMi4xLDIuOSA0LjMsNiA0LjMsMTEgMCw4LjIgLTcuNCwxNi4zIC0xNS42LDE2LjMgdiAzIGMgMi4zLDAuMiA0LjQsMy40IDMuMyw1LjggMC42LDAuMiAyLjUsMS4yIDIuNSwxLjIgMC43LDAgNSwtNyAxNC4zLC03IGggMC4yIGMgNC41LDAgOSwyLjYgMTEuMSw1IDEuNywxLjkgNS4zLDcuNiA0LjgsMTEuNCBsIC0wLjgsNS41IDEuMiwwLjYgYyAwLjEsLTAuOSAwLjgsLTIuMyAxLjEsLTMuNiAwLjMsLTEuMiAwLjQsLTMgMC40LC00LjQgdiAtMy4zIGMgMCwtOC40IC04LjMsLTE4LjggLTE1LC0yMC4zIDAsLTUgMC40LC02LjQgLTAuOSwtMTAuOSAtMC45LC0yLjggLTIuNiwtNi40IC00LjMsLTguMyAtNS4xLC01LjMgLTcuNSwtNyAtMTUuOSwtOSB2IDEgbCAtNGUtNCwwIHogbSAtMTUuOCwyMi42IDIuOCw0LjggYyAzLC0xLjYgNC44LC0zLjMgOS41LC0zLjMgaCAwLjUgYyA1LjgsMCA2LjksMi42IDkuNywzLjIgbCAyLjYsLTQuNyBjIC05LjUsLTUgLTE1LjcsLTUgLTI1LjEsMCB6XCJ9XSxpW1wiQUMuSUMuVE9YSUMgR0FTXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTAuMiwxMDIuMyBjIDAuNiwtMS45IDUuNywtMS45IDExLjMsLTAgNS42LDEuOSA5LjYsNC45IDksNi44IC0wLjYsMS45IC01LjcsMS45IC0xMS4zLDAgLTUuNiwtMS45IC05LjYsLTQuOSAtOSwtNi44IHogbSA3LjcsLTIyLjIgYyAxMGUtNywzLjcgLTEuNyw2LjcgLTMuOCw2LjcgLTIuMSwtMmUtNiAtMy44LC0zIC0zLjgsLTYuNyAyZS02LC0zLjcgMS43LC02LjcgMy44LC02LjcgMi4xLDAgMy44LDMgMy44LDYuNyB6IG0gMTcsMi4yIGMgMCw0LjEgLTIuOCw3LjMgLTYuMyw3LjMgLTMuNSwyZS02IC02LjMsLTMuMyAtNi4zLC03LjMgMCwtNC4xIDIuOCwtNy4zIDYuMywtNy4zIDMuNSwwIDYuMywzLjMgNi4zLDcuMyB6IG0gLTcuOSw0OS42IGMgLTEsMi45IC04LjUsMi45IC0xNi42LDAgLTguMiwtMi45IC0xMy45LC03LjYgLTEyLjksLTEwLjUgMSwtMi45IDguNSwtMi45IDE2LjYsLTAgOC4yLDIuOSAxMy45LDcuNiAxMi45LDEwLjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTA3LjUgNjQuMyBDIDEwMi4yIDY0LjIgOTYuOSA2Ny4xIDkyLjggNzEuNiBDIDkwLjYgNzMuNiA4OS4yIDc2LjggODkuMiA4MC40IEMgODkuMiA4MyA5MCA4NS40IDkxLjIgODcuMyBDIDkyLjEgODkuOSA5Mi43IDkxLjggOTIuNyA5NC41IEwgOTIuNCA5Ni43IEwgOTAuNyAxMDEuNiBDIDkyLjMgMTAwLjUgOTYuNyAxMDAuNyAxMDEuNSAxMDIuMyBDIDEwNi42IDEwNCAxMTAuNCAxMDYuNyAxMTAuNSAxMDguNiBMIDExMiAxMDQuMiBDIDExNS45IDEwNCAxMjAuNSA5Ni45IDEyMi43IDg3LjYgQyAxMjQuOSA3Ny45IDEyMy41IDY5LjMgMTE5LjggNjcuOSBDIDExOC40IDY2LjYgMTE2LjEgNjUuNSAxMTIuOCA2NS4zIEMgMTExLjEgNjQuNiAxMDkuMyA2NC4zIDEwNy41IDY0LjMgeiBNIDk0LjEgNzMuNCBDIDk0LjQgNzMuNCA5NC42IDczLjQgOTQuOCA3My41IEMgOTUuMSA3My42IDk1LjMgNzMuOCA5NS42IDczLjkgQyA5Ni4yIDc0LjQgOTYuOCA3NS4zIDk3LjIgNzYuMyBDIDk3LjUgNzcuMSA5Ny43IDc3LjkgOTcuOCA3OC43IEMgOTcuOSA3OS4yIDk3LjkgNzkuNiA5Ny45IDgwLjEgQyA5Ny45IDgwLjUgOTcuOSA4MSA5Ny44IDgxLjQgQyA5Ny43IDgyLjMgOTcuNSA4My4xIDk3LjIgODMuOCBDIDk2LjkgODQuNyA5Ni40IDg1LjQgOTUuOSA4NS45IEMgOTUuNiA4Ni4yIDk1LjIgODYuNSA5NC44IDg2LjYgQyA5NC43IDg2LjYgOTQuNiA4Ni43IDk0LjUgODYuNyBDIDk0LjMgODYuNyA5NC4yIDg2LjcgOTQuMSA4Ni43IEMgOTMuOCA4Ni43IDkzLjYgODYuNyA5My4zIDg2LjYgQyA5MyA4Ni41IDkyLjYgODYuMiA5Mi4zIDg1LjkgQyA5Mi4yIDg1LjggOTIuMSA4NS43IDkyIDg1LjYgQyA5MS42IDg1LjEgOTEuMiA4NC41IDkxIDgzLjggQyA5MC44IDgzLjQgOTAuNyA4My4xIDkwLjYgODIuNyBDIDkwLjQgODEuOSA5MC4zIDgxIDkwLjMgODAuMSBDIDkwLjMgNzkuMSA5MC40IDc4LjMgOTAuNiA3Ny41IEMgOTAuNyA3Ny4xIDkwLjggNzYuNyA5MSA3Ni4zIEMgOTEuMiA3NS42IDkxLjYgNzUgOTIgNzQuNSBDIDkyLjIgNzQuMyA5Mi40IDc0LjEgOTIuNiA3My45IEMgOTIuOSA3My44IDkzLjEgNzMuNiA5My4zIDczLjUgQyA5My42IDczLjQgOTMuOCA3My40IDk0LjEgNzMuNCB6IE0gMTA4LjYgNzUgQyAxMTAuNCA3NSAxMTIuMSA3NS45IDExMy4zIDc3LjMgQyAxMTMuMyA3Ny40IDExMy40IDc3LjUgMTEzLjUgNzcuNiBDIDExMy41IDc3LjYgMTEzLjUgNzcuNiAxMTMuNSA3Ny43IEMgMTEzLjYgNzcuOCAxMTMuNyA3OCAxMTMuOCA3OC4yIEMgMTEzLjggNzguMyAxMTMuOSA3OC4zIDExMy45IDc4LjQgQyAxMTQgNzguNSAxMTQgNzguNSAxMTQgNzguNiBDIDExNC4xIDc4LjcgMTE0LjIgNzguOCAxMTQuMiA3OSBDIDExNC4zIDc5LjEgMTE0LjMgNzkuMyAxMTQuNCA3OS40IEMgMTE0LjQgNzkuNSAxMTQuNSA3OS41IDExNC41IDc5LjYgQyAxMTQuNSA3OS43IDExNC42IDc5LjkgMTE0LjYgODAgQyAxMTQuNiA4MC4xIDExNC42IDgwLjIgMTE0LjcgODAuMyBDIDExNC43IDgwLjQgMTE0LjcgODAuNiAxMTQuOCA4MC44IEMgMTE0LjkgODEuMyAxMTQuOSA4MS44IDExNC45IDgyLjMgQyAxMTQuOSA4NC42IDExNCA4Ni42IDExMi42IDg4IEMgMTEyIDg4LjYgMTExLjMgODkgMTEwLjUgODkuMyBDIDExMC4zIDg5LjQgMTEwLjEgODkuNSAxMDkuOSA4OS41IEMgMTA5LjUgODkuNiAxMDkgODkuNyAxMDguNiA4OS43IEMgMTA4LjIgODkuNyAxMDcuNyA4OS42IDEwNy4zIDg5LjUgQyAxMDcuMyA4OS41IDEwNy4zIDg5LjUgMTA3LjMgODkuNSBDIDEwNy4xIDg5LjUgMTA2LjkgODkuNCAxMDYuNyA4OS4zIEMgMTA1LjkgODkgMTA1LjIgODguNiAxMDQuNiA4OCBDIDEwNCA4Ny40IDEwMy41IDg2LjYgMTAzLjEgODUuOCBDIDEwMi45IDg1LjQgMTAyLjcgODUgMTAyLjYgODQuNSBDIDEwMi41IDg0LjMgMTAyLjUgODQgMTAyLjQgODMuOCBDIDEwMi40IDgzLjUgMTAyLjQgODMuMyAxMDIuMyA4My4xIEMgMTAyLjMgODIuOCAxMDIuMyA4Mi42IDEwMi4zIDgyLjMgQyAxMDIuMyA4MiAxMDIuMyA4MS44IDEwMi4zIDgxLjUgQyAxMDIuMyA4MS41IDEwMi40IDgxLjUgMTAyLjQgODEuNCBDIDEwMi40IDgxIDEwMi41IDgwLjUgMTAyLjYgODAuMSBDIDEwMi42IDgwLjEgMTAyLjYgODAuMSAxMDIuNiA4MCBDIDEwMy40IDc3LjEgMTA1LjggNzUgMTA4LjYgNzUgeiBNIDg4LjggMTA0IEMgODYuNiAxMDQgODQuOCAxMDQuNCA4My45IDEwNS4yIEwgODMuOCAxMDUuMiBMIDgzLjcgMTA1LjMgQyA4My40IDEwNS42IDgzLjIgMTA1LjkgODMuMSAxMDYuMiBDIDgzIDEwNi41IDgzIDEwNi44IDgzIDEwNy4yIEwgNzguMSAxMjAuNSBDIDgwLjIgMTE4LjUgODYuOSAxMTguNyA5NC4yIDEyMS4zIEMgMTAxLjIgMTIzLjggMTA2LjQgMTI3LjcgMTA3LjEgMTMwLjYgTCAxMTEuOCAxMTcuOCBDIDExMi4yIDExNy41IDExMi41IDExNy4yIDExMi43IDExNi44IEMgMTEzLjcgMTEzLjggMTA3LjkgMTA5LjEgOTkuOCAxMDYuMiBDIDk1LjcgMTA0LjggOTEuOCAxMDQgODguOCAxMDQgeiBNIDgyIDEyMC44IEMgNzkgMTIwLjggNzYuOSAxMjEuNSA3Ni40IDEyMyBDIDc1LjQgMTI1LjkgODEuMSAxMzAuNyA4OS4zIDEzMy42IEMgOTcuNCAxMzYuNSAxMDQuOSAxMzYuNSAxMDUuOSAxMzMuNiBDIDEwNyAxMzAuNiAxMDEuMiAxMjUuOSA5MyAxMjMgQyA4OSAxMjEuNSA4NSAxMjAuOCA4MiAxMjAuOCB6IE0gODYuMSAxMjUuNiBDIDg3LjQgMTI1LjUgODkuNCAxMjUuOSA5MS41IDEyNi42IEMgOTQuOCAxMjcuOCA5Ny4yIDEyOS42IDk2LjkgMTMwLjYgQyA5Ni41IDEzMS42IDkzLjUgMTMxLjUgOTAuMSAxMzAuMyBDIDg2LjggMTI5LjEgODQuNCAxMjcuMyA4NC43IDEyNi4zIEMgODQuOSAxMjUuOSA4NS40IDEyNS43IDg2LjEgMTI1LjYgeiBcIn1dLGlbXCJBQy5JQy5BRlRFUlNIT0NLXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTksNjIuNSAtMCwwIC0wLDAgLTAuOSwwIC0wLDAgLTAsMCAtMC45LDAuMSAtMCwwIC0wLDAgLTAuOSwwLjEgLTAsMCAtMCwwIC0wLjksMC4xIC0wLDAgLTAsMCAtMC45LDAuMSAtMCwwIC0wLDAgLTAuOSwwLjEgLTAsMCAtMCwwIC0wLjksMC4yIC0wLDAgLTAsMCAtMC43LDAuMSAwLjYsMi43IDAuNywtMC4xIDAsLTAgMC44LC0wLjEgMCwtMCAwLjgsLTAuMSAwLDAgMC44LC0wLjEgMCwwIDAuOSwtMC4xIDAsMCAwLjksLTAuMSAwLDAgMC45LC0wLjEgMCwwIDAuOSwtMCAwLDAgMC45LC0wIDAsMCAwLDAgMC45LDAgMCwwIDAuOSwwIDAsMCAwLjEsMCAwLjIsLTIuOCAtMC4xLC0wIC0wLDAgLTAsMCAtMC45LC0wIC0wLDAgLTAsMCAtMSwtMCAtMCwwIC0wLDAgeiBtIDguOCwzLjYgMC4yLDAgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjMgMCwwIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC40IDAsMCAwLDAgMC43LDAuNCAwLDAgMC4xLDAgMS4zLC0yLjUgLTAuMSwtMC4xIC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLDAgLTAsLTAgLTAuOCwtMC40IC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLDAgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIC0wLDAgLTAsLTAgLTAuOSwtMC4zIC0wLDAgLTAsMCAtMC45LC0wLjMgLTAsMCAtMCwwIC0wLjksLTAuMiAtMCwwIC0wLC0wIC0wLjksLTAuMiAtMCwwIC0wLDAgLTAuMiwtMC4xIHogbSAtMjIuNywtMC43IC0wLDAgLTAsMCAtMC44LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMCwwIC0wLjgsMC40IC0wLDAgLTAsMCAtMC44LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMCwwIC0wLjgsMC41IC0wLDAgLTAsMCAtMC44LDAuNSAtMCwwIC0wLDAgLTAuNywwLjUgLTAsMCAtMCwwIC0wLjcsMC41IC0wLDAgLTAsMCAtMC43LDAuNSAtMCwwIC0wLDAgLTAuNywwLjUgLTAsMCAtMCwwIC0wLjEsMC4xIDEuNywyLjIgMC4xLC0wLjEgMCwtMCAwLjcsLTAuNSAwLC0wIDAuNywtMC41IDAsLTAgMC43LC0wLjUgMCwtMCAwLjcsLTAuNSAwLC0wIDAuNywtMC40IDAsLTAgMC43LC0wLjQgMCwtMCAwLjcsLTAuNCAwLC0wIDAuNywtMC40IDAsLTAgMCwwIDAuOCwtMC40IDAsLTAgMC44LC0wLjMgMCwtMCAwLjgsLTAuMyAwLC0wIDAuMywtMC4xIC0xLC0yLjYgeiBtIDM2LjksNy4zIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjYgMCwwIDAsMCAwLjYsMC42IDAsMCAwLjYsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjQsMC41IDIuMywtMS43IC0wLjQsLTAuNiAtMCwtMCAwLC0wIC0wLjYsLTAuNyAtMCwtMCAwLC0wIC0wLjYsLTAuNyAtMCwtMCAtMCwtMCAtMC42LC0wLjcgLTAsLTAgLTAsLTAgLTAuNiwtMC43IC0wLC0wIC0wLC0wIC0wLjYsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjYgLTAsLTAgLTAsLTAgLTAuNiwtMC42IC0wLC0wIC0wLDAgLTAuNywtMC42IC0wLC0wIC0wLDAgLTAuNywtMC42IC0wLC0wIC0wLC0wIC0wLjcsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjUgeiBtIC01MSwyLjcgLTAsMCAtMCwwIC0wLjYsMC43IC0wLDAgLTAsMCAtMC42LDAuNyAwLDAgLTAsMCAtMC42LDAuNyAwLDAgLTAsMCAtMC41LDAuNyAtMCwwIC0wLDAgLTAuNSwwLjcgLTAsMCAtMCwwIC0wLjUsMC43IC0wLDAgMCwwIC0wLjUsMC43IC0wLDAgMCwwIC0wLjUsMC44IDAsMCAtMCwwIC0wLjQsMC44IC0wLDAgMCwwIC0wLjQsMC44IDAsMCAtMCwwIC0wLjMsMC42IDIuNSwxLjMgMC4zLC0wLjYgMCwtMCAwLjQsLTAuNyAwLC0wIDAuNCwtMC43IDAsLTAgMC40LC0wLjcgMCwtMCAwLjQsLTAuNyAwLC0wIDAuNSwtMC43IDAsLTAgMC41LC0wLjcgMCwtMCAwLjUsLTAuNyAwLC0wIDAuNSwtMC42IDAsLTAgMC41LC0wLjYgMCwtMCAwLjUsLTAuNiAwLC0wIDAuNSwtMC41IC0yLjEsLTEuOSB6IG0gNjAuOSw5LjQgMC4xLDAuMSAwLDAgMCwwIDAuMywwLjcgMCwwIDAuMywwLjcgMCwwIDAuMywwLjggMCwwIDAuMywwLjggMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLDAuMiAyLjgsLTAuNSAtMCwtMC4zIC0wLC0wIDAsLTAgLTAuMiwtMC45IDAsLTAgMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgLTAsLTAgLTAuNCwtMC44IC0wLC0wIDAsLTAgLTAuMSwtMC4yIHogbSAtNjguOCw0LjkgLTAsMCAwLDAgLTAuMiwwLjkgLTAsMCAwLDAgLTAuMiwwLjkgLTAsMCAwLDAgLTAuMiwwLjkgMCwwIDAsMCAtMC4yLDAuOSAwLDAgLTAsMCAtMC4xLDAuOSAwLDAgMCwwIC0wLjEsMC45IC0wLDAgMCwwIC0wLjEsMC45IDAsMCAtMCwwIC0wLjEsMC45IDAsMCAwLDAgLTAuMSwwLjkgMCwwIDAsMCAtMCwwLjkgMCwwIDAsMCAtMCwwLjkgMCwwIDAsMCAwLDAgMS40LC0wIDAuMywwIDEuMSwwIDAsLTAgMCwtMC45IDAsLTAgMCwtMC45IC0wLDAgMC4xLC0wLjggMCwtMCAwLjEsLTAuOSAtMCwwIDAuMSwtMC45IDAuMSwtMC45IC0wLDAgMC4xLC0wLjggMCwtMCAwLjIsLTAuOCAwLC0wIDAuMiwtMC44IDAsLTAgMC4yLC0wLjggMCwtMCAwLjIsLTAuOCAwLC0wIDAuMSwtMC4yIC0yLjcsLTAuOCB6IG0gNzMsMTAuMyAtMC42LDAgMCwwIDAsMCAtMCwwLjkgMCwwIC0wLDAuOSAwLDAgLTAuMSwwLjggMCwwIC0wLjEsMC45IDAsMCAtMC4xLDAuOSAtMC4xLDAuOSAwLDAgLTAuMSwwLjggMCwwIC0wLjIsMC44IC0wLDAgLTAuMiwwLjggLTAsMCAtMC4yLDAuOCAwLDAgLTAuMiwwLjggLTAsMCAtMC4xLDAuMiAyLjcsMC44IDAuMSwtMC4yIDAsLTAgMCwtMCAwLjIsLTAuOSAwLC0wIDAsLTAgMC4yLC0wLjkgMCwtMCAwLC0wIDAuMiwtMC45IDAsLTAgMCwtMCAwLjIsLTAuOSAwLC0wIDAsLTAgMC4xLC0wLjkgMCwtMCAwLC0wIDAuMSwtMC45IDAsLTAgMCwtMCAwLjEsLTAuOSAwLC0wIDAsLTAgMC4xLC0wLjkgMCwtMCAwLC0wIDAuMSwtMC45IDAsLTAgMCwtMCAwLC0wLjkgMCwtMCAwLC0wIDAsLTAuOSAtMS40LC0wIDEuNCwtMCAwLC0wIHogbSAtNzMuOSw2LjQgMCwwLjMgMCwwIDAsMCAwLjIsMC45IDAsMCAwLDAgMC4yLDAuOSAwLDAgMCwwIDAuMiwwLjkgMCwwIDAsMCAwLjIsMC45IDAsMCAwLDAgMC4zLDAuOCAwLDAgMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLDAgMC4zLDAuOCAwLDAgMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLDAgMC40LDAuOCAwLDAgMCwwIDAuMSwwLjIgMi41LC0xLjMgLTAuMSwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMCAtMC4zLC0wLjcgLTAsLTAgLTAuMywtMC44IC0wLC0wIC0wLjMsLTAuOCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggLTAsLTAgLTAuMiwtMC44IC0wLC0wIC0wLjIsLTAuOCAwLC0wIC0wLjIsLTAuOCAtMCwtMCAtMC4yLC0wLjggLTAsLTAgLTAuMiwtMC44IDAsLTAgLTAsLTAuMiB6IG0gNjkuNCw5LjQgLTAsMCAtMC40LDAuNyAtMCwwIC0wLjQsMC43IC0wLDAgLTAuNCwwLjcgLTAsMCAtMC40LDAuNyAtMCwwIC0wLjUsMC43IC0wLDAgLTAuNSwwLjcgLTAsMCAtMC41LDAuNyAtMCwwIC0wLjUsMC42IC0wLDAgLTAuNSwwLjYgLTAsMCAtMC41LDAuNiAtMCwwIC0wLjUsMC42IDIuMSwxLjkgMC41LC0wLjYgMCwtMCAwLC0wIDAuNiwtMC43IDAsLTAgMCwtMCAwLjYsLTAuNyAwLC0wIDAsLTAgMC42LC0wLjcgMCwtMCAwLC0wIDAuNSwtMC43IDAsLTAgMCwtMCAwLjUsLTAuNyAwLC0wIDAsLTAgMC41LC0wLjcgMCwtMCAwLC0wIDAuNSwtMC43IDAsLTAgMCwtMCAwLjUsLTAuOCAwLC0wIDAsLTAgMC40LC0wLjggMCwtMCAwLC0wIDAuNCwtMC44IDAsLTAgMCwtMCAwLjMsLTAuNiAtMi41LC0xLjMgeiBtIC02Mi44LDYuMSAwLjQsMC42IDAsMCAwLDAgMC42LDAuNyAwLDAgMCwwIDAuNiwwLjcgMCwwIDAsMCAwLjYsMC43IDAsMCAwLDAgMC42LDAuNyAwLDAgMCwwIDAuNiwwLjYgMCwwIDAsMCAwLjYsMC42IDAsMCAwLDAgMC42LDAuNiAwLDAgMCwwIDAuNywwLjYgMCwwIDAsMCAwLjcsMC42IDAsMCAwLDAgMC43LDAuNiAwLDAgMCwwIDAuNiwwLjUgMS43LC0yLjIgLTAuNiwtMC41IC0wLC0wIC0wLjYsLTAuNSAtMCwtMCAtMC42LC0wLjUgLTAsLTAgLTAuNiwtMC41IC0wLC0wIC0wLjYsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjYgLTAsLTAgLTAuNiwtMC42IC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMC41LC0wLjYgLTAsLTAgLTAuNSwtMC42IC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMC40LC0wLjUgeiBtIDUzLjEsNS40IC0wLDAgLTAuNywwLjUgLTAsMCAtMC43LDAuNSAtMCwwIC0wLjcsMC41IC0wLDAgLTAuNywwLjUgLTAsMCAtMC43LDAuNCAtMCwwIC0wLjcsMC40IC0wLDAgLTAuNywwLjQgLTAsMCAtMC43LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMC44LDAuMyAtMCwwIC0wLjgsMC4zIC0wLDAgLTAuMywwLjEgMSwyLjYgMC40LC0wLjEgMCwtMCAwLDAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwtMCAwLDAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwtMCAwLDAgMC44LC0wLjUgMCwwIDAsLTAgMC44LC0wLjUgMCwtMCAwLDAgMC43LC0wLjUgMCwwIDAsLTAgMC43LC0wLjUgMCwtMCAwLDAgMC43LC0wLjUgMCwtMCAwLC0wIDAuNywtMC41IDAsLTAgMCwtMCAwLjEsLTAuMSAtMS43LC0yLjIgeiBtIC00MC40LDUuNiAwLjEsMC4xIDAsMCAwLDAgMC44LDAuNCAwLDAgMCwwIDAuOCwwLjQgMCwwIDAsMCAwLjgsMC40IDAsMCAwLDAgMC44LDAuNCAwLDAgMCwwIDAuOCwwLjMgMCwwIDAsMCAwLjgsMC4zIDAsMCAwLDAgMC44LDAuMyAwLDAgMCwwIDAuOSwwLjMgMCwwIDAsMCAwLjksMC4zIDAsMCAwLDAgMC45LDAuMiAwLDAgMCwwIDAuOSwwLjIgMCwwIDAsMCAwLjIsMC4xIDAuNiwtMi43IC0wLjIsLTAgLTAsLTAgLTAuOCwtMC4yIC0wLC0wIC0wLjgsLTAuMiAtMCwtMCAtMC44LC0wLjIgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIDAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLjgsLTAuMyAtMCwtMCAtMC44LC0wLjMgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLjgsLTAuNCAtMCwwIC0wLC0wIC0wLjcsLTAuNCAtMCwtMCAtMC4xLC0wIHogbSAyNS42LDEuMSAtMCwwIC0wLjgsMC4xIC0wLDAgLTAuOCwwLjEgLTAsMCAtMC44LDAuMSAwLC0wIC0wLjksMC4xIDAsLTAgLTAuOSwwLjEgLTAsMCAtMC45LDAuMSAtMCwwIC0wLjksMCAtMCwwIC0wLjksMCAtMCwwIC0wLDAgLTAuOSwtMCAtMCwwIC0wLjksLTAgLTAsMCAtMC4xLDAgLTAuMiwyLjggMC4xLDAgMCwwIDAsMCAwLjksMCAwLDAgMCwwIDEsMCAwLDAgMCwwIDEsLTAgMCwwIDAsMCAwLjksLTAgMCwwIDAsMCAwLjksLTAuMSAwLDAgMCwwIDAuOSwtMC4xIDAsLTAgMCwwIDAuOSwtMC4xIDAsMCAwLDAgMC45LC0wLjEgMCwtMCAwLDAgMC45LC0wLjEgMCwwIDAsMCAwLjksLTAuMiAwLDAgMCwwIDAuNywtMC4xIC0wLjYsLTIuNyB6IG0gLTcuMiwtNTguOSAtMCwxLjIgMC4xLDAgMCwwIDEuMywwIDAsLTAgMS4zLDAuMSAxLjEsMC4xIDAuMSwwIDAsMCAxLjEsMC4yIDAuMSwwIDAuNywwLjEgMC43LC0zLjEgLTAuNywtMC4yIC0wLDAgLTAsLTAgLTEuMywtMC4yIC0wLDAgLTAsLTAgLTEuMywtMC4yIC0wLDAgLTAsMCAtMS4zLC0wLjEgLTAsMCAtMC4xLDAgLTEuMywtMCAtMCwwIC0wLDAgLTAsMCB6IG0gLTUuNSwtMS40IC0wLDAgLTAsMCAtMS4zLDAuMyAtMCwwIC0wLDAgLTEuMiwwLjMgLTAsMCAtMCwwIC0xLjIsMC40IC0wLDAgLTAsMCAtMC45LDAuMyAxLjEsMyAwLjgsLTAuMyAwLjEsLTAgMCwwIDEuMSwtMC40IDAsLTAgMS4xLC0wLjMgMS4yLC0wLjMgMC4xLC0wIDEuMSwtMC4yIC0wLjYsLTMuMSB6IG0gMTQuOCw0LjQgMC4yLDAuMSAwLjEsMCAxLjEsMC41IDEsMC41IDAuMSwwIDEsMC41IDAsMCAwLDAgMC45LDAuNiAwLjEsMCAwLjUsMC40IDEuOCwtMi42IC0wLjYsLTAuNCAtMCwtMCAtMCwtMCAtMS4xLC0wLjcgLTAsLTAgLTAsLTAgLTEuMSwtMC42IC0wLC0wIC0wLC0wIC0xLjEsLTAuNiAtMCwtMCAtMCwtMCAtMS4xLC0wLjUgLTAsLTAgLTAsLTAgLTAuMywtMC4xIHogbSAtMjMuNiwtMS4xIC0wLDAgLTAsMCAtMS4xLDAuNyAtMCwwIC0wLDAgLTEsMC43IC0wLDAgLTAsMCAtMSwwLjggLTAsMCAtMCwwIC0wLjksMC44IC0wLDAgLTAsMCAtMC44LDAuNyAyLjIsMi40IDAuNywtMC43IDAuMSwtMC4xIDAuOCwtMC43IDAsLTAgMCwtMCAwLjksLTAuNyAwLjEsLTAgMC45LC0wLjYgMC4xLC0wIDAuOSwtMC42IDAsLTAgMCwtMCAtMC40LC0wLjYgLTEuMiwtMi4yIHogbSAzMS41LDYuMiAwLjEsMC4xIDAsMCAwLDAgMC44LDAuOCAwLjEsMC4xIDAuNywwLjggMC4xLDAuMSAwLjcsMC44IDAsMCAwLDAuMSAwLjYsMC45IDAsMC4xIDAsMCAwLjUsMC43IDIuNywtMS44IC0wLjUsLTAuOCAtMCwtMCAtMCwtMCAtMC43LC0xIC0wLC0wIC0wLC0wIC0wLjgsLTAuOSAtMCwtMCAtMCwtMCAtMC44LC0wLjkgLTAsLTAgLTAsLTAgLTAuOSwtMC45IC0wLC0wIC0wLC0wIC0wLjEsLTAuMSB6IG0gLTQwLjEsMS44IC0wLDAgLTAsMCAtMC43LDEgLTAsMCAtMCwwIC0wLjYsMS4xIC0wLDAgLTAsMCAtMC42LDEuMSAtMCwwIC0wLDAgLTAuNSwxLjEgLTAsMCAtMCwwIC0wLDAuMSAyLjQsMSAwLjUsMC4zIDAsLTAgMC41LC0xIDAsLTAuMSAwLC0wIDAuNSwtMC45IDAsLTAuMSAwLjYsLTAuOSAwLjYsLTEgMCwtMCAwLC0wLjEgMC42LC0wLjggLTIuNiwtMS45IHogbSA0NS40LDUuOSAwLjQsMS4xIDAsMC4xIDAuMywxIDAsMC4xIDAuMywxLjEgMC4zLDEuMSAwLjIsMSAzLjEsLTAuNiAtMC4yLC0xLjEgMCwtMCAtMCwtMCAtMC4zLC0xLjIgLTAsLTAgLTAsLTAuMSAtMC4zLC0xLjIgLTAsLTAgLTAsLTAgLTAuNCwtMS4yIC0wLC0wIC0wLC0wIC0wLjUsLTEuMSB6IG0gLTQ5LjYsMy44IC0wLDAgMCwwIC0wLjIsMS4zIDAsMCAtMCwwIC0wLjIsMS4zIC0wLDAgMCwwIC0wLjEsMS4zIDAsMCAwLDAuMSAtMCwxLjMgMCwwIDAsMCAwLDAgMS45LC0wIDEuMywwIDAsLTAuMSAwLC0wIDAsLTEuMiAwLjEsLTEuMSAwLDAgMC4xLC0xLjIgMCwtMC4xIDAsLTAgMC4yLC0xLjEgMC4yLC0wLjkgLTMuMSwtMC43IHogbSA1Mi44LDUuNSAtMS4yLC0wIDAsMC4xIDAsMCAtMCwxLjIgLTAuMSwxLjEgLTAsMCAtMC4xLDEuMiAwLDAgLTAsMC4xIC0wLjIsMS4xIC0wLjIsMC45IDMuMSwwLjggMC4yLC0wLjkgMCwtMCAwLC0wIDAuMiwtMS4zIDAsLTAgMCwtMCAwLjIsLTEuMyAwLC0wIDAsLTAgMC4xLC0xLjMgMCwtMCAwLC0wLjEgMCwtMS4zIC0xLjYsLTAgMS42LC0wIDAsLTAgeiBtIC01Myw0LjMgMC4yLDEuMSAwLDAgMCwwIDAuMywxLjIgMCwwIDAsMC4xIDAuMywxLjIgMCwwIDAsMCAwLjQsMS4yIDAsMCAwLDAgMC41LDEuMSAzLC0xLjIgLTAuNCwtMSAtMCwtMC4xIC0wLjMsLTEgLTAsLTAuMSAtMC4zLC0xLjEgLTAuMywtMS4xIC0wLjIsLTEgeiBtIDQ5LjksNC45IC0wLjUsMSAtMCwwLjEgLTAsMCAtMC41LDEgLTAsMC4xIC0wLjYsMC45IC0wLjYsMSAtMCwwIC0wLDAuMSAtMC42LDAuOCAyLjYsMS45IDAuNiwtMC45IDAsLTAgMCwtMCAwLjcsLTEgMCwtMCAwLC0wIDAuNiwtMS4xIDAsLTAgMCwtMCAwLjYsLTEuMSAwLC0wIDAsLTAgMC41LC0xLjEgMCwtMCAwLC0wIDAsLTAgLTIuMiwtMC45IC0wLjgsLTAuMyB6IG0gLTQ2LDUgMC41LDAuOCAwLDAgMCwwIDAuNywxIDAsMCAwLDAgMC44LDAuOSAwLDAgMCwwIDAuOCwwLjkgMCwwIDAsMCAwLjksMC45IDAsMCAwLDAgMC4xLDAuMSAyLjIsLTIuMyAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAuOCwtMC44IC0wLjEsLTAuMSAtMC43LC0wLjggLTAuMSwtMC4xIC0wLjcsLTAuOCAtMCwtMCAtMCwtMC4xIC0wLjYsLTAuOSAtMC4xLC0wLjEgLTAuNSwtMC43IHogbSA0MCwzLjMgLTAuMSwwLjEgLTAuOCwwLjcgLTAsMCAtMCwwIC0wLjksMC43IC0wLjEsMCAtMC45LDAuNiAtMC4xLDAgLTAuOSwwLjYgMCwtMCAtMC4xLDAgMCwwIC0wLDAgMC4zLDAuNCAxLjMsMi40IDAsLTAgMCwtMCAwLC0wIDEuMSwtMC43IDAsLTAgMCwtMCAxLC0wLjcgMCwtMCAwLC0wIDEsLTAuOCAwLC0wIDAsLTAgMC45LC0wLjggMCwtMCAwLC0wIDAuOCwtMC43IC0yLjIsLTIuNCB6IG0gLTMyLjYsNC40IDAuNiwwLjQgMCwwIDAsMCAxLjEsMC43IDAsMCAwLDAgMS4xLDAuNiAwLDAgMCwwIDEuMSwwLjYgMCwwIDAsMCAxLjEsMC41IDAsMCAwLDAgMC4zLDAuMSAxLjEsLTMgLTAuMiwtMC4xIC0wLjEsLTAgLTEuMSwtMC41IC0xLC0wLjUgLTAuMSwtMCAtMSwtMC42IDAsMCAtMC45LC0wLjYgLTAuMSwtMCAtMC41LC0wLjQgeiBtIDI0LjUsMC4zIC0wLjEsMCAtMS4xLDAuMyAtMC4xLDAgLTEuMSwwLjMgLTEuMiwwLjMgLTAuMSwwIC0xLjEsMC4yIDAuNiwzLjEgMS4yLC0wLjIgMCwwIDAsLTAgMS4zLC0wLjMgMCwwIDAsLTAgMS4yLC0wLjMgMCwtMCAwLC0wIDEuMiwtMC40IDAsLTAgMCwtMCAwLjksLTAuMyAtMS4xLC0zIHogbSAtMTQuOCwzLjkgMC43LDAuMiAwLDAgMCwwIDEuMywwLjIgMCwwIDAsMCAxLjMsMC4yIDAsMCAwLDAgMS4zLDAuMSAwLDAgMC4xLDAgMS4zLDAgMCwwIDAsMCAwLDAgLTAuMSwtMS42IDAsLTAuMSAwLC0xLjUgLTAuMSwwIC0xLjMsLTAgMCwwIC0xLjMsLTAuMSAtMS4xLC0wLjEgLTAuMSwtMCAtMCwwIC0xLjEsLTAuMiAtMC4xLC0wIC0wLjcsLTAuMSB6IG0gNi4zLC00My4xIC0wLjQsMCAwLjEsNCAwLjMsLTAgMC4xLDAgMC4xLDAgMC42LDAgMC4xLDAgMC42LDAgMC4xLDAgMC42LDAuMSAwLjEsMCAwLjYsMC4xIDAuNywwLjEgMC4xLDAgMC4xLDAgMC42LDAuMiAwLjUsMC4yIDAuMSwwIDAuNSwwLjIgMC4xLDAgMCwwIDAuNSwwLjIgMC4xLDAgMC40LDAuMiAxLjgsLTMuNiAtMC41LC0wLjMgLTAsLTAgLTAuMSwtMCAtMC43LC0wLjMgLTAuMSwtMCAtMC4xLC0wIC0wLjcsLTAuMyAtMCwtMCAtMC4xLC0wIC0wLjcsLTAuMiAtMC4xLC0wIC0wLC0wIC0wLjcsLTAuMiAtMC4xLC0wIC0wLjEsLTAgLTAuNywtMC4yIC0wLjEsLTAgLTAuMSwtMCAtMC44LC0wLjEgLTAsLTAgLTAuMSwtMCAtMC44LC0wLjEgLTAuMSwtMCAtMC4xLDAgLTAuOCwtMC4xIC0wLjEsMCAtMC4xLDAgLTAuOCwtMCAtMC4xLC0wIHogbSAtNS4xLDAuNyAtMC4xLDAgLTAsMCAtMC43LDAuMiAtMC4xLDAgLTAuMSwwIC0wLjcsMC4zIC0wLDAgLTAuMSwwIC0wLjcsMC4zIC0wLjEsMCAtMCwwIC0wLjcsMC4zIC0wLDAgLTAsMCAtMC43LDAuNCAtMCwwIC0wLjEsMCAtMC42LDAuNCAtMCwwIC0wLDAgLTAuNiwwLjQgLTAsMCAtMCwwIC0wLjYsMC40IC0wLDAgLTAsMCAtMC42LDAuNSAtMCwwIC0wLDAgLTAuNSwwLjUgLTAsMCAtMCwwIC0wLjIsMC4yIDIuOSwyLjggMC4xLC0wLjEgMC4xLC0wLjEgMC40LC0wLjQgMC4xLC0wLjEgMC40LC0wLjMgMCwtMCAwLjEsLTAuMSAwLjQsLTAuMyAwLjUsLTAuNCAwLjEsLTAuMSAwLjYsLTAuMyAwLC0wIDAuNSwtMC4zIDAuMSwtMCAwLjUsLTAuMyAwLjEsLTAgMC41LC0wLjIgMCwwIDAuMSwtMCAwLjYsLTAuMiAwLC0wIDAuNSwtMC4yIDAuMSwtMCAwLjEsLTAgLTEuMSwtMy45IHogbSAxNC4yLDYuNyAwLjQsMC4zIDAuNSwwLjUgMC4xLDAuMSAwLjMsMC40IDAuMSwwLjEgMC4zLDAuNCAwLjEsMC4xIDAuMywwLjQgMCwwIDAsMC4xIDAuMywwLjQgMC4xLDAuMSAwLjMsMC41IDAsMCAwLDAuMSAwLjMsMC41IDAsMC4xIDAuMiwwLjUgMCwwLjEgMC4yLDAuNSAwLDAuMSAwLDAgMC4yLDAuNiAzLjgsLTEuMyAtMC4yLC0wLjcgLTAsLTAuMSAtMCwtMC4xIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjQsLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjQsLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjQsLTAuNiAtMCwtMC4xIC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMCwtMCAtMC41LC0wLjUgLTAsLTAgLTAsLTAgLTAuNSwtMC41IC0wLC0wIC0wLC0wIC0wLjUsLTAuNCB6IG0gLTI0LjQsMS40IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAuMSAtMCwwLjEgLTAuMiwwLjcgLTAsMC4xIC0wLDAuMSAtMC4yLDAuNyAtMCwwLjEgMCwwLjEgLTAuMiwwLjcgLTAsMC4xIC0wLDAuMSAtMC4xLDAuNyAtMCwwLjEgMCwwLjEgLTAuMSwwLjggMCwwLjEgLTAsMC4xIC0wLjEsMC44IDAsMC4xIDAsMC4xIC0wLDAuOCAwLDAuMSAwLDAuMSAwLDAuMyA0LC0wLjEgLTAsLTAuMiAwLC0wLjEgMCwtMCAwLC0wLjcgMCwtMC42IDAsLTAuMSAwLC0wIDAuMSwtMC41IDAuMSwtMC42IDAsLTAuMSAwLjEsLTAuNSAwLC0wIDAsLTAuMSAwLjEsLTAuNSAwLjIsLTAuNiAwLC0wLjEgMCwtMCAwLjIsLTAuNSAwLjMsLTAuNiAwLjEsLTAuMSAwLjMsLTAuNSAwLC0wLjEgMCwtMCAwLC0wIC0zLjUsLTIgeiBtIDI4LjcsNy42IDAsMC41IDAsMC4xIDAsMCAtMCwwLjYgLTAuMSwwLjcgLTAsMC4xIDAsMC4xIC0wLjEsMC42IC0wLjEsMC41IC0wLDAuMSAtMC4xLDAuNSAwLDAgLTAsMC4xIC0wLjEsMC41IC0wLDAuMSAtMC4yLDAuNSAtMCwwIC0wLDAuMSAtMC4yLDAuNSAtMCwwIC0wLDAuMSAtMC4yLDAuNSAtMCwwLjEgLTAuMywwLjUgLTAsMC4xIC0wLDAgLTAuMiwwLjMgMy41LDIgMC4yLC0wLjQgMCwtMC4xIDAsLTAgMC4zLC0wLjcgMCwtMCAwLC0wLjEgMC4zLC0wLjcgMCwtMCAwLC0wLjEgMC4zLC0wLjcgMCwtMC4xIDAsLTAuMSAwLjIsLTAuNyAwLC0wIDAsLTAuMSAwLjIsLTAuNyAwLC0wLjEgMCwtMC4xIDAuMiwtMC43IDAsLTAuMSAwLC0wLjEgMC4xLC0wLjcgMCwtMC4xIDAsLTAuMSAwLjEsLTAuOCAwLC0wLjEgMCwtMC4xIDAuMSwtMC44IDAsLTAuMSAwLC0wLjEgMCwtMC44IC0yLC0wLjEgMiwtMC4xIC0wLC0wLjYgeiBtIC0zMC4xLDUuMyAwLjEsMC4zIDAsMC4xIDAsMCAwLjIsMC43IDAsMC4xIDAsMC4xIDAuMywwLjcgMCwwLjEgMCwwIDAuMywwLjcgMCwwLjEgMCwwIDAuMywwLjcgMCwwIDAsMC4xIDAuNCwwLjYgMCwwIDAsMC4xIDAuNCwwLjYgMCwwIDAsMCAwLjQsMC42IDAsMCAwLDAgMC41LDAuNiAwLDAgMCwwIDAuNSwwLjUgMCwwIDAsMCAwLjUsMC41IDAsMCAwLDAgMC4yLDAuMiAyLjcsLTIuOSAtMC4yLC0wLjEgLTAuMSwtMC4xIC0wLC0wIC0wLjQsLTAuNCAtMC4xLC0wLjEgLTAuNCwtMC40IC0wLC0wLjEgLTAsLTAgLTAuMywtMC40IC0wLjEsLTAuMSAtMC40LC0wLjUgLTAuMywtMC40IC0wLjEsLTAuMSAtMC4zLC0wLjUgLTAsLTAgLTAsLTAuMSAtMC4zLC0wLjUgLTAuMSwtMC4xIC0wLjIsLTAuNSAtMCwtMC4xIC0wLC0wIC0wLjIsLTAuNSAtMCwtMC4xIC0wLC0wLjEgLTAuMiwtMC42IC0wLC0wLjEgeiBtIDI1LjgsNC44IC0wLjEsMC4xIC0wLjQsMC4zIC0wLDAgLTAuMSwwLjEgLTAuNCwwLjMgLTAuMSwwLjEgLTAuNSwwLjMgLTAsMCAtMC4xLDAgLTAuNSwwLjMgLTAuMSwwIC0wLDAgLTAuNiwwLjMgLTAuNSwwLjMgLTAuMSwwIC0wLjUsMC4yIC0wLDAgLTAuMSwwIC0wLjUsMC4yIC0wLjEsMCAtMC41LDAuMiAtMC41LDAuMSAxLjEsMy45IDAuNSwtMC4xIDAsLTAgMC4xLC0wIDAuNywtMC4yIDAuMSwtMCAwLC0wIDAuNywtMC4zIDAuMSwtMCAwLjEsLTAgMC43LC0wLjMgMC4xLC0wIDAsLTAgMC43LC0wLjMgMC4xLC0wIDAsLTAgMC43LC0wLjQgMCwtMCAwLC0wIDAuNiwtMC40IDAsLTAgMC4xLC0wIDAuNiwtMC40IDAsLTAgMCwtMCAwLjYsLTAuNSAwLC0wIDAsLTAgMC42LC0wLjUgMCwtMCAwLC0wIDAuNSwtMC41IC0yLjcsLTIuOSB6IG0gLTE1LjUsMS44IC0xLjksMy41IDAuMSwwLjEgMCwwIDAsMCAwLjcsMC4zIDAsMCAwLjEsMCAwLjcsMC4zIDAuMSwwIDAsMCAwLjcsMC4zIDAuMSwwIDAuMSwwIDAuNywwLjIgMCwwIDAuMSwwIDAuNywwLjIgMCwwIDAuMSwwIDAuOCwwLjIgMC4xLDAgMC4xLDAgMC44LDAuMSAwLjEsMCAwLjEsMCAwLjgsMC4xIDAuMSwwIDAuMSwwIDAuOCwwLjEgMC4xLDAgMC4xLDAgMC44LDAgMC4xLDAgMC4xLDAgMC4xLDAgLTAuMSwtNCAtMC4xLDAgLTAuMSwwIC0wLjYsLTAgLTAuMSwwIC0wLjYsLTAgMCwtMCAtMC43LC0wLjEgLTAsMCAtMC4xLC0wIC0wLjYsLTAuMSAtMC4xLC0wIC0wLjYsLTAuMSAwLC0wIC0wLjcsLTAuMiAtMC41LC0wLjIgMCwtMCAtMC42LC0wLjIgLTAuMSwtMCAtMCwwIC0wLjUsLTAuMiAtMC4xLC0wIC0wLjUsLTAuMyAtMC4xLC0wLjEgeiBNIDEwMCw5My4yIGMgLTMuNSwtNGUtNCAtNi43LDIuOSAtNi43LDYuNSBsIDAsMC40IGMgMCwzLjUgMyw2LjUgNi41LDYuNSBsIDAuNCwwIGMgMy40LDAgNi41LC0zIDYuNSwtNi4zIGwgMCwtMC45IGMgMCwtMy40IC0zLjMsLTYuMyAtNi44LC02LjMgelwifV0saVtcIkFDLklDLkFWQUxBTkNIRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDExNS43LDg3LjMgLTMuNiwwLjkgMTEsMzggLTQuNiwxLjUgOS42LDkuMiAzLjEsLTEzIC00LjYsMS40IHogbSAzLDQ2LjQgLTguNSwtMTAgNC4zLC0xLjIgLTExLjIsLTQwLjYgLTM0LjUsNTEuOSB6IG0gLTEyLjEsLTU5LjggMCw4LjQgMS42LDAgMCwtOC4zIDcuMSw0LjMgMC44LC0xLjMgLTcuNCwtNC4xIDcuNSwtNC40IC0xLC0xLjIgLTcsNCAwLC04LjIgLTEuNiwwIDAsOC4yIC03LjQsLTQgLTAuNiwxLjEgNy4yLDQuNCAtNy4yLDQuMSAwLjYsMS40IHpcIn1dLGlbXCJBQy5JQy5FQVJUSFFVQUtFIEVQSUNFTlRFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYyLjgsOTkuOCBjIDAsLTEwLjggNC45LC0yMC4yIDEwLjMsLTI1LjcgNS4xLC01LjEgMTQuOCwtMTEuMyAyNC43LC0xMS4zIGggNC4xIGMgNC45LDAgMTAuNSwxLjkgMTMuOSwzLjYgNSwyLjUgNi40LDQgMTAuNCw3IDQuNiwzLjYgMTEuMSwxNS40IDExLjEsMjMuOCB2IDUuMyBjIDAsMTcuNCAtMTcuNSwzNC42IC0zNS4xLDM0LjYgaCAtNC42IGMgLTEwLjMsMCAtMTkuNCwtNi4yIC0yNC42LC0xMS40IC01LjUsLTUuNCAtMTAuMywtMTUgLTEwLjMsLTI1LjggeiBtIDM5LjQsMzguNSBjIDEwLjcsMCAyMCwtNi4zIDI1LjUsLTExLjggNi43LC02LjcgOS45LC0xMy45IDEwLjcsLTI2LjUgMS4zLC0xOS4yIC0xNy43LC0zOC4xIC0zNi4yLC0zOC4xIGggLTQuOCBjIC0xMC4zLDAgLTIwLjEsNi42IC0yNS4yLDEyLjEgLTMsMy4yIC01LjYsNi43IC03LjUsMTEuMSAtMS4xLDIuOCAtMy41LDExLjMgLTMsMTUuMyAwLjcsNi40IDAuOSwxMC40IDMuNCwxNS4zIDIuMiw0LjQgNCw3LjYgNy4zLDExIDUsNS4zIDE1LjIsMTEuNyAyNS4zLDExLjcgaCA0LjYgeiBtIC0zLjksLTExLjYgYyAtMTMuNiwwIC0yNC43LC0xMy4xIC0yNS4yLC0yNi44IC0wLjUsLTEzLjIgMTIuNSwtMjYuNCAyNS40LC0yNi40IGggMi45IGMgMTIuOCwwIDI1LjIsMTIuNCAyNS4yLDI1LjIgdiAyLjQgYyAwLDEyLjggLTEyLjQsMjUuNyAtMjUuMiwyNS43IGggLTMuMSB2IC0wIHogbSAtMjcuMSwtMjYuOSBjIDAsOC44IDMuNywxNiA4LjEsMjAuNSAyLjMsMi40IDUuMiw0LjQgOC4zLDUuOSA0LjIsMi4yIDYuMywxLjkgMTEuNSwyLjggMi45LDAuNSAxMCwtMS4zIDEyLC0yLjIgNC42LC0yLjIgNSwtMi45IDguNiwtNS42IDQuMywtMy4xIDkuMSwtMTIuMyA5LjEsLTE5LjcgdiAtMy40IGMgMCwtMTMuNyAtMTMuNiwtMjYuOCAtMjcuMywtMjYuOCBoIC0zLjIgYyAtMTQuNSwtNGUtNCAtMjcuMSwxMy42IC0yNy4xLDI4LjUgeiBtIDI4LjUsMTQuOCBjIC04LjQsMCAtMTMuNSwtNi41IC0xNC40LC0xNC40IC0wLjcsLTcuMyA2LjgsLTE0LjYgMTMuOSwtMTQuNiBoIDEuNyBjIDcuMywwIDEzLjYsNi45IDEzLjYsMTQuNSAwLDcuNyAtNi4yLDE0LjUgLTEzLjgsMTQuNSBoIC0xIHogbSAtMTguNiwtMTQuOCBjIDAsMTEuNSA4LDE4LjEgMTguNCwxOS4zIDYuMiwwLjggMTAuMywtMi45IDEzLjYsLTUuMyAyLjgsLTIgNS44LC04LjMgNS44LC0xMy4zIFYgOTkuOCBjIDAsLTEwLjQgLTguMywtMTguNiAtMTguNiwtMTguNiBoIC0wLjcgYyAtOS45LDAgLTE4LjQsOC42IC0xOC40LDE4LjYgeiBtIDEwLjksMCB2IDAuMiBjIDAsMy43IDMuNSw3LjcgNyw3LjcgaCAxLjcgYyAzLjksMCA3LjMsLTMuOSA3LjMsLTcuNyAwLC00IC0zLjUsLTggLTcsLTggaCAtMS43IGMgLTMuNSwwIC03LjMsNCAtNy4zLDcuNyB6XCJ9XSxpW1wiQUMuSUMuTEFORFNMSURFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTI5LjQsMTEwLjggYyAtMi43LDAgLTYuMiw0LjEgLTQuMyw1LjEgLTEsMS41IC0zLjYsMiAtMy42LDQgMCwxLjggMi42LDQuNyAzLjQsNi4yIDEuMSwyIDMuMiwzLjIgNi4yLDMuMiBoIDEuOCBjIDIuNywwIDQuNiwtMi42IDQuNiwtNS4zIHYgLTEgYyAwLC0zLjQgLTEsLTUgLTIuMSwtNy41IC0xLC0yLjQgLTEuNiwtNC42IC00LjksLTQuNiBoIC0xIHogbSAtMjIuMiwtMzUgLTUuMywtNS4yIC0zOS4zLDU4LjMgNTUuOCwwLjEgdiAtMS4yIGMgMCwtMC43IC0xLC0xLjUgLTEuNSwtMS44IDAsLTIgLTAuNiwtMS42IC0wLjksLTIuOSAtMC4yLC0wLjkgLTAuMSwtMi43IC0wLjEsLTMuNyAwLC0yLjggLTAuMSwtNC4zIC0xLjcsLTUuNiAtMi4yLC0xLjkgLTEuMywtMS41IC00LjMsLTMuMSAtMiwtMSAtMS41LC0yLjEgLTUuMiwtMi4yIHYgLTEuNSBjIDAsLTEuOSAtMiwtMy42IC0yLjgsLTQuOCAwLC0yLjMgLTAuNSwtNC43IC0wLjUsLTYuOCAwLC0xLjYgLTAuMiwtMiAtMC4yLC0zLjMgLTAuMSwtMS43IC0wLjgsLTEuNSAtMC44LC0yLjggdiAtMC4yIGMgMCwtMyAwLjUsLTQuNSAyLjEsLTYgMi4yLC0yLjEgMC45LC0yLjIgMy44LC0zLjkgbCAwLjgsLTMuMyAwLDAgeiBtIDkuNywzNCBjIDAsMy42IDYuMSwyLjggNi4xLC0wLjggMCwtNC4yIC02LjEsLTEuOSAtNi4xLDAuOCB6IG0gMi44LC0xNi40IGMgLTIuMiwwIC03LDYuNCAtNCw4LjYgMS43LDEuMiAyLjYsMS42IDUuMywwLjYgMiwtMC44IDIuOCwtMS42IDIuOCwtNC4zIDRlLTQsLTIuNCAtMiwtNC44IC00LC00LjggeiBtIC04LjQsNS4zIGMgMC44LDAgMSwtMC43IDEuMywtMS4zIC0wLjYsLTEuNCAtMC41LC0yLjUgLTIuNiwtMi41IGggLTAuMiBjIC0xLDAgLTIsMC42IC0yLDEuNSAwLDAuNyAxLjYsMi4zIDIuOCwyLjMgaCAwLjggeiBtIC0zLjMsLTEzLjcgYyAtMC4xLDEgLTAuMywwLjYgLTAuMywxLjUgMCwxIDAuOCwzIDEuOCwzIGggMC4yIGMgMy4xLDAgMy4xLC0wLjIgNC44LC0xLjUgLTEsLTIuMyAtMC40LC0zLjYgLTQuMiwtMy42IC0xLjEsMCAtMS40LDAuMyAtMi4zLDAuNSB6XCJ9XSxpW1wiQUMuSUMuU1VCU0lERU5DRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU2LjgsNzUuNiAwLDIgMTQuNCwwIDMuOCw3LjkgYyAtMC4xLDAuMyAtMC4zLDAuNyAtMC4zLDEuNiBsIDAsMC42IGMgMCwwLjcgMC4zLDEuMSAwLjcsMS41IDAuMywwLjQgMC43LDAuOCAxLjEsMS4zIDAuNywwLjggMS41LDEuNSAxLjgsMiBsIC0wLjMsNC4xIGMgLTAuMSwxIDAuNCwyIDEsMi42IDAuNiwwLjYgMS4zLDEuMSAyLDEuNSAwLjcsMC40IDEuMywwLjggMS43LDEuMiAwLjQsMC40IDAuNiwwLjYgMC42LDEgMCwxLjMgLTAuNSwyLjIgLTAuNSw0LjIgMCwwLjkgMC41LDEuNyAxLjEsMi4xIDAuNiwwLjQgMS4yLDAuNyAxLjgsMC45IDAuNiwwLjIgMS4xLDAuNCAxLjQsMC42IDAuMywwLjIgMC4zLDAuMiAwLjMsMC4zIDAsMC42IC0wLjEsMC44IC0wLjMsMS4yIC0wLjIsMC4zIC0wLjUsMC43IC0wLjUsMS41IGwgMCwwLjYgYyAwLDEuOCAxLDIuOSAxLjksMy41IDAuOCwwLjYgMS4zLDAuOCAxLjUsMS4zIDAsMCAwLDAgMCwwIDAuMiwwLjggMC4zLDIgMC43LDMuMSAwLjIsMC42IDAuNSwxLjIgMSwxLjYgMC41LDAuNSAxLjIsMC43IDIsMC43IGwgMC4zLDAgYyAxLjEsMCAxLjksLTAgMi42LC0wLjIgMC43LC0wLjEgMS4zLC0wLjQgMS43LC0wLjkgMC40LC0wLjUgMC41LC0xLjEgMC43LC0xLjcgMC4xLC0wLjYgMC4yLC0xLjMgMC4zLC0yLjEgNy42ZS00LC0wIC03LjZlLTQsLTAgMCwtMCAwLjIsLTEuNCAwLjcsLTIuMSAxLjMsLTIuOCAwLjUsLTAuNyAxLjIsLTEuNyAxLjIsLTMuMSAwLC0wLjYgLTAuMiwtMSAtMC41LC0xLjMgLTAuMiwtMC4zIC0wLjUsLTAuNyAtMC43LC0xIC0wLjUsLTAuNyAtMC44LC0xLjUgLTAuOCwtMi40IGwgMCwtMC45IGMgMCwtMCAtMCwtMCAwLjEsLTAuMiAwLjIsLTAuMiAwLjUsLTAuNCAwLjgsLTAuNiAwLjQsLTAuMyAwLjgsLTAuNSAxLjEsLTEgMC40LC0wLjQgMC43LC0xLjEgMC43LC0xLjggMCwtMS4yIC0wLjUsLTIuNCAtMC45LC0zLjUgLTAuNCwtMS4xIC0wLjgsLTIuMiAtMC44LC0yLjUgMCwtMC41IDAuMiwtMSAwLjYsLTEuNiAwLjQsLTAuNiAxLC0xLjMgMS41LC0yLjIgMC41LC0wLjggMC45LC0xLjggMC45LC0zIC0wLC0xLjEgLTAuNSwtMi40IC0xLjYsLTMuNiBsIC0wLC0wIC0wLDAgYyAtMC4zLC0wLjMgLTAuNywtMS4zIC0wLjgsLTIuMiAtMC4xLC0wLjkgMC4xLC0xLjkgMC40LC0yLjMgMC4zLC0wLjUgMC45LC0wLjkgMS43LC0xLjQgMC43LC0wLjYgMS41LC0xLjYgMS41LC0zIGwgMCwtMS40IDM4LjEsMCAwLC0yIC00MC4xLDAgLTMwLjYsMCAtMC42LDAgLTE1LDAgelwifV0saVtcIkFDLklDLlZPTENBTklDIEVSVVBUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTIyLjIsNjYgLTEwLjQsMTcuOSAxLjcsMSAxMC40LC0xNy45IC0xLjcsLTEgeiBtIC0yMy4yLDAuNSAwLDE3LjkgMiwwIDAsLTE3LjkgLTIsMCB6IG0gLTE5LjUsLTAuNCAtMS44LDAuOCA4LDE3LjkgMS44LC0wLjggLTgsLTE3LjkgeiBNIDk5LjMsMTIwLjggYyAtMS43LC0wIC0zLjMsMC44IC00LjUsMiAtMS4yLDEuMiAtMiwyLjkgLTIsNC41IGwgMCwxLjkgYyAwLDEuNyAwLjgsMy4zIDIsNC41IDEuMiwxLjIgMi44LDIgNC41LDIgbCAxLjMsMCBjIDEuNywwIDMuMywtMC44IDQuNSwtMiAxLjIsLTEuMiAyLC0yLjggMiwtNC41IGwgMCwtMS45IGMgMCwtMS43IC0wLjgsLTMuMyAtMiwtNC41IC0xLjIsLTEuMiAtMi44LC0yIC00LjUsLTIgbCAtMS4yLDAgLTAsMCB6IE0gODAuMyw4Ni41IGMgLTAuNSwwIC0wLjksMC4zIC0xLjQsMC44IC0wLjQsMC41IC0wLjgsMS4yIC0xLjMsMiAtMC44LDEuNyAtMS42LDMuOSAtMi40LDYuMyAtMS41LDQuNyAtMi44LDkuOCAtMy40LDExLjQgbCAtMCwwIGMgLTIsNyAtNS44LDE1LjIgLTcsMjEuNiBsIC0wLjEsMC4yIDAuMiwwIDIwLjksMC42IDAuMiwwIDAsLTAuMiAwLC0xLjkgMCwtMC4yIC0wLjIsLTAgLTE3LjYsLTAuNyBMIDgwLjUsODkuNCBsIDM5LjEsMCAxMS45LDM3LjEgLTE3LjUsMC43IC0wLjIsMCAwLDAuMiAwLDEuOSAwLDAuMiAwLjIsLTAgMjAuOSwtMC42IDAuMiwwIC0wLjEsLTAuMiBjIC0xLjMsLTYuNCAtNS4xLC0xNC43IC03LC0yMS42IEwgMTI4LjEsMTA3IGMgLTAuNiwtMS42IC0xLjksLTYuNyAtMy40LC0xMS40IC0wLjgsLTIuMyAtMS42LC00LjYgLTIuNCwtNi4zIC0wLjQsLTAuOCAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOSwtMC44IC0xLjQsLTAuOCBsIC0zOS40LDAgelwifV0saVtcIkFDLklDLlZPTENBTklDIFRIUkVBVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLjMsODUuNiBjIC0wLjUsMCAtMC45LDAuMyAtMS40LDAuOCAtMC40LDAuNSAtMC44LDEuMiAtMS4zLDIgLTAuOCwxLjcgLTEuNiwzLjkgLTIuNCw2LjMgLTEuNSw0LjcgLTIuOCw5LjggLTMuNCwxMS4zIGwgMCwwIC0wLDAgYyAtMiw3IC01LjgsMTUuMiAtNywyMS42IGwgLTAuMSwwLjIgMC4yLDAgMjAuOSwwLjYgMC4yLDAgMCwtMC4yIDAsLTEuOSAwLC0wLjIgLTAuMiwtMCAtMTcuNiwtMC43IDEyLC0zNy4xIDM5LjEsMCAxMS45LDM3LjEgLTE3LjUsMC43IC0wLjIsMCAwLDAuMiAwLDEuOSAwLDAuMiAwLjIsMCAyMC45LC0wLjYgMC4yLC0wIC0wLjEsLTAuMiBjIC0xLjMsLTYuNCAtNS4xLC0xNC43IC03LC0yMS42IGwgLTAsMCAwLC0wIGMgLTAuNiwtMS42IC0xLjksLTYuNyAtMy40LC0xMS4zIC0wLjgsLTIuMyAtMS42LC00LjYgLTIuNCwtNi4zIC0wLjQsLTAuOCAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOSwtMC44IC0xLjQsLTAuOCBsIC0zOS40LDAgeiBNIDk5LjMsMTIwIGMgLTEuNywtMCAtMy4zLDAuOCAtNC41LDIgLTEuMiwxLjIgLTIsMi45IC0yLDQuNSBsIDAsMS45IGMgMCwxLjcgMC44LDMuMyAyLDQuNSAxLjIsMS4yIDIuOCwyIDQuNSwyIGwgMS4zLDAgYyAxLjcsMCAzLjMsLTAuOCA0LjUsLTIgMS4yLC0xLjIgMiwtMi44IDIsLTQuNSBsIDAsLTEuOSBjIDAsLTEuNyAtMC44LC0zLjMgLTIsLTQuNSAtMS4yLC0xLjIgLTIuOCwtMiAtNC41LC0yIGwgLTEuMiwwIC0wLDAgeiBtIC0yLjcsLTQyLjEgMCwwLjIgLTAuMiwwIDAsNC4yIDAsMC4yIDAuMiwwIDMuMywwIDAuMiwwIDAsLTAuMiAwLC00LjIgMCwtMC4yIC0wLjIsMCAtMy4zLDAgeiBNIDk5LDU3LjEgYyAtMS4xLDIuNWUtNSAtMi4zLDAuMiAtMy4zLDAuNSAtMS4xLDAuMyAtMi4xLDAuOCAtMy4yLDEuNCBsIC0wLjEsMC4xIDAsMC4xIDAsMy4xIDAsMC40IDAuMywtMC4yIGMgMS4xLC0wLjcgMiwtMS4zIDMsLTEuNiAxLC0wLjQgMS45LC0wLjYgMi43LC0wLjYgMS4xLDIuMmUtNSAyLDAuMyAyLjcsMC44IDAuNywwLjYgMSwxLjMgMSwyLjIgLTFlLTUsMC41IC0wLjEsMSAtMC40LDEuNSAtMC4zLDAuNSAtMC43LDEgLTEuMywxLjYgbCAwLDAgLTEuNSwxLjUgYyAtMSwwLjkgLTEuNywxLjggLTIsMi41IC0wLjMsMC43IC0wLjUsMS43IC0wLjUsMi44IGwgMCwyLjUgMCwwLjIgMC4yLDAgMy4xLDAgMCwtMC4yIDAuMiwwIDAsLTIgYyAtMTBlLTYsLTAuNiAwLC0xIDAuMSwtMS4zIDAsLTAuMyAwLjEsLTAuNiAwLjEsLTAuOCAwLjEsLTAuMiAwLjIsLTAuNSAwLjQsLTAuOCAwLjIsLTAuMyAwLjYsLTAuNyAxLjEsLTEuMiBsIDEuNCwtMS40IGMgMSwtMC45IDEuNywtMS44IDIuMSwtMi42IGwgMCwtMCBjIDAuNCwtMC44IDAuNiwtMS42IDAuNiwtMi41IC0yZS01LC0xLjggLTAuNiwtMy4zIC0xLjksLTQuMyAtMS4zLC0xLjEgLTIuOSwtMS42IC01LC0xLjYgelwifV0saVtcIkFDLklDLkNBVkUgRU5UUkFOQ0VcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTUsMTAwIDU1LDAgMzAsLTIwIDAsNDAgLTMwLC0yMFwifV0saVtcIkFDLklDLkRST1VHSFRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4Ny42LDEyNy40IGMgMS4zLDAuNiA0LjUsMCA2LjEsMCBoIDQuMiBsIC0yLC01LjkgLTQuOSwtMC4zIGMgLTUuNywxMC44IC0yLjQsNC4zIC0zLjQsNi4yIHogbSAtMjQuMSwtNyBjIC0wLjYsMS45IDE3LjYsNi45IDIwLjUsNy40IDIuNywtMS44IDQuNSwtMi40IDQuOCwtNi43IC00LDAgLTExLjQsLTAuOCAtMTQuOCwtMS43IC0yLjIsLTAuNiAtNC4yLC0xLjIgLTYuNCwtMS43IC0zLjUsLTAuOSAtNC4yLC0xLjUgLTQuMiwyLjYgeiBtIDM1LjksNi4xIDYuNywtMC4zIDE4LjYsLTEuNyBjIDEuNSwtMC40IDQuNSwtMC40IDYsLTEuNCAtMS4zLC0yLjYgLTIuNCwtNC4xIC0zLjcsLTYuNiAtMS40LC0yLjYgLTEuOSwtNC45IC0zLC03LjIgLTMuNywwLjggLTQuNywzLjUgLTYuMyw0IC0zLjUsMS4xIC00LjgsMC40IC02LjcsMy44IC0xLjcsMyAtMi41LDMuMyAtNS4zLDUuMiAtMi40LDEuNyAtMy42LDIuOCAtNi4zLDQuMiB6IG0gLTIuOCwtOSBjIDAsMy43IDAuNSw0LjIgMi4yLDcuMyBsIDguNSwtNy4xIC0wLjIsLTAuMiBjIC0xLjcsLTAuNCAtMi40LC0xLjUgLTQuOCwtMi4yIC0xLjYsLTAuNCAtNC4xLC0xLjMgLTUuOCwtMS40IHYgMy42IGggMC4xIHogbSAzNy42LDAuNSBjIC0wLjksMCAtMSwtMC4yIC0xLjksLTAuMiBsIDEsMi40IDIuNywtMi44IGMgLTAuOSwwLjIgLTAuOCwwLjUgLTEuOCwwLjUgeiBtIC01MS4zLC0wLjMgYyAtMC4xLDEuOSA3LjcsMS41IDkuMywxLjUgaCAyLjggYyAwLC0xLjcgLTAuNywtMi44IC0wLjgsLTQuNCAtMC4xLC0yLjUgLTAuNCwtMS44IC0zLjEsLTIuMSAtNCwtMC40IC00LjYsLTIgLTcuNywtMi44IGwgLTAuNiw3LjcgeiBtIC0yNS41LC0xMi42IDMsMTIuMSBjIDAuNywtMyAyLjIsLTQuNSAyLjgsLTcuMyAwLjMsLTEuOCAwLjEsLTIuNiAwLjksLTQgMC40LC0wLjcgMS4zLC0yLjggMS41LC0zLjYgLTEuNCwtMC4zIC02LjksLTEuNiAtOC42LC0xLjYgbCAwLjQsNC40IHogbSA2OS45LC0yLjIgYyAtMSw0LjEgLTAuNywzLjUgMSw3IDEuMiwyLjQgMiw0LjQgMy4xLDYuNiA1LjgsLTAuNSA2LjIsLTAuNSA5LjQsLTMuNiAxLjYsLTEuNiAxLC02LjggMiwtOC4zIC0yLjUsLTEuMiAtMS43LC0wLjYgLTQuNiwtMS4zIC00LjUsLTEgLTYuNiwtMC40IC0xMC45LC0wLjMgeiBtIC0zMC45LDEuMSB2IDAuOCBjIDAsMi4yIC0wLjEsMy4zIDAsNS40IDAuMSwzLjMgLTAuMywyLjUgMy4xLDIuOCAxLjIsMC4xIDMuNSwxIDQuNSwxLjQgMC43LDAuNCAxLjUsMC41IDIsMC44IDAuOCwwLjQgMC4zLDAuNiAxLjcsMS40IGwgLTAuMiwtMC4yIDUuNiwtNC43IGMgMy4xLDAgNC4yLDAuNCA1LjgsLTEuMyAyLjQsLTIuNSAwLjgsLTEuNCA0LC0zLjEgbCAwLjYsLTMuMSBjIC0yLjUsMC42IC01LjUsMi4yIC04LjIsMS4xIC0yLjYsLTEuMSAtMy44LC0yLjggLTcuNCwtMi44IGwgLTEuNiwtMC4zIC05LjksMS44IHogbSAtMzIuMSwxMS4yIGMgMS4zLDAgNS44LDAuNyA2LjksMSAxLjQsMC40IDQuNywyLjMgNS42LDIuMyBoIDIuOCBjIDEsMCAwLjksLTAuMyAxLjcsLTAuNSBsIDEuNywtOC4zIC01LjIsLTQuNSAtOSwtMiBjIC0wLjQsMS43IC0yLjQsMyAtMy4xLDUuMSAtMC4zLDAuNyAtMS41LDYuMyAtMS41LDcgeiBtIDQxLC0zNS4xIGMgMSwxLjIgMS40LDIuOCAyLjIsNC4yIDAuNCwwLjYgMi45LDMuMyAyLjksMy41IDAsMC44IC0wLjksMi4zIC0xLjMsMi4zIC0yLjcsMCAtMy44LC02LjcgLTMuOCwtMTAgeiBtIC0xLjgsLTEuMiBjIC0wLjMsMSAtMS45LDQuNSAtMi41LDUuNiAtMC45LDEuOCAtMS45LDMuNSAtNC40LDMuNSAtMC41LDAgLTEsLTAuNCAtMSwtMC44IDAsLTMuMSAzLjgsLTUuOCA1LjIsLTcuNiBsIDIuOCwtMC44IHogbSA5LjUsOC42IGggLTAuOCBjIC0yLjMsMCAtNi45LC04IC02LjksLTkuNyAwLC0wLjEgMC4zLC0wLjUgMC4zLC0wLjUgMS43LDAuNSA3LjksNiA3LjksOC43IC00ZS00LDAuNSAtMC40LDAuOCAtMC41LDEuNSB6IG0gMC42LC02IGMgLTAuNywtMC4zIC0xLjcsLTEgLTIuNCwtMS4zIC0xLjQsLTAuOCAtMy41LC0yLjkgLTQuNywtMy4zIGwgMS4xLC0xLjMgYyAzLjEsMS41IDEwLjEsMS4zIDEwLjEsNS43IDAsMC4zIC0wLjgsMC44IC0xLDEgLTAuOCwtMC4zIC0yLC0wLjQgLTMuMSwtMC44IHogbSAtMjQuOSwxLjMgaCAtMSBjIDEsLTIgLTIuMiwtNi43IC00LjQsLTcuMiAtMi4yLDEuMiAtNC4yLDAuNiAtNS41LDMuMyAtMC40LDEgLTAuNywyLjIgLTEuNSwyLjggLTAuOCwwLjYgLTIuNCwwLjggLTIuNCwxLjkgMCwxLjUgNC4zLDAuNCA0LjksLTAuMiAxLjIsLTEuMSAyLjQsLTIuMSA0LjUsLTIuMSAyLDAgMi45LDUuOCAzLjEsOC4yIDAuMiwzLjIgLTIuMyw3LjcgLTIuMiw5LjUgbCAwLjksNi44IC00LjQsLTAuMyBjIDIuMSwzLjEgOC41LDYgMTMuNCw2LjQgbCAtMC40LC03LjcgLTUuNiwxLjMgYyAwLC00LjQgLTIsLTUuNSAtMC41LC05LjUgMC42LC0xLjcgMSwtMi4yIDEsLTQuNyAwLC0xLjEgMC4yLC00LjYgMC42LC01LjMgMS41LC0yLjUgMS45LC01LjYgMy4xLC04LjQgMS4yLC0yLjggNSwtMi42IDguMywtMy41IGwgMS4yLDEuMyAtMSwwLjMgMC44LDEuOCBjIC0xLjcsMiAtMi45LDIuOSAtNC41LDUgLTAuOCwxIC0zLjgsNi4zIC0wLjYsNi4zIGggMSBjIDMuOSwwIDUuMSwtNy4xIDYuOSwtOS4yIDAuNCw0LjQgMS4yLDkuNSA0LjQsMTEuMiAxLjcsLTAuNCAyLjIsLTEuMSAyLjYsLTIuOCAwLjcsMC4yIDAuNSwwLjMgMSwwLjMgMS4zLDAgMiwtMS4xIDIsLTIuMyBWIDg1LjggYyAwLC0yLjEgLTEuMiwtMi40IC0xLjUsLTMuOCAwLjgsMC40IDIuMiwxIDMuMywxIGggMC41IGMgMS4yLDAgMS4zLC0wLjYgMS44LC0xLjMgLTAuMiwtMi41IC0xLjUsLTMuOSAtMy41LC00LjYgLTEuMywtMC40IC01LjIsLTEuNyAtNi43LC0xLjcgbCAwLjUsLTEgaCAtMC43IGwgMC44LC0xLjYgLTQuOSwxIGMgLTAuOSwtMC42IC0xLjIsLTEuNSAtMi42LC0xLjUgaCAtMS44IEMgOTIuMyw3Mi4yIDg4LjcsNzUuOCA4OC43LDgyLjkgbCAwLDAgelwifV0saVtcIkFDLklDLkZMT09EXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk03Ny4yLDkyLjlMNzcuMyw5Mi44TDk5LjMsNzIuNUw5OS43LDcyLjFMMTAwLDcyLjFMMTAwLjQsNzIuNUwxMjIuNCw5Mi44TDEyMy41LDkzLjlMMTIyLjQsOTMuOUwxMjIuNCwxMTUuOTAyQzEyMy4wMjMsMTE1LjEwNiAxMjMuNjU3LDExNC41IDEyNC40LDExNC41QzEyNS40NTQsMTE0LjE5OSAxMjQuODU3LDExNi43MTIgMTI1LjUsMTE3LjZDMTI1Ljk4OCwxMTguMjczIDEyNi44MDUsMTE4LjcyMSAxMjcuNjA5LDExOC45MjhDMTMwLjE0NiwxMTkuNTggMTMyLjc0NywxMTcuMzAzIDEzNC41LDExNi4yQzEzNS4wNDMsMTE1Ljg1OSAxMzYuMzU2LDExNS4yNiAxMzYuNCwxMTUuOUMxMzYuNjUyLDExOS41NTggMTM2LjUyNiwxMjMuMjM1IDEzNi40LDEyNi45TDYzLjcsMTI2LjlMNjMuNywxMTQuOUM2NC44MTksMTE3Ljk0MyA2Ni44MzUsMTIwLjk0OCA3MC42MzcsMTE5LjA1QzcyLjM1NywxMTguMTkyIDczLjIwOSwxMTUuNzQ1IDc1LjEsMTE1LjRDNzUuNDY0LDExNS4zMzQgNzYuMjY2LDExNi4zMzUgNzcuMSwxMTcuMjc4TDc3LjEsOTMuOUw3Ni4yLDkzLjlMNzcuMSw5M0w3Ny4xLDkyLjlMNzcuMiw5Mi45Wk0xMjEuMiwxMTcuNTQ0TDEyMS4yLDk0LjFMNzguMyw5NC4xTDc4LjMsMTE4LjQ5Qzc4LjUyMSwxMTguNjY3IDc4LjcyNywxMTguNzk1IDc4LjkxMSwxMTguODQ1QzgzLjQwNywxMjAuMDg0IDgyLjM0NSwxMTYuMDA5IDg2LjksMTE1LjVDODcuNTg4LDExNS40MjMgOTAuNTQ5LDExOS4xMTQgOTEuNTgzLDExOS41MzZDOTUuNjk0LDEyMS4yMTUgOTUuODI2LDExNi42OTQgOTguOSwxMTUuOUMxMDAuMDc0LDExNS41OTcgMTAwLjUzOCwxMTguMjM3IDEwMC45LDExOC41QzEwMS44NiwxMTkuMTk4IDEwMy4wMjgsMTE5LjY1MSAxMDQuMiwxMTkuODM3QzEwOS4zMywxMjAuNjU1IDEwOC42ODUsMTE3LjIxNiAxMTEuOSwxMTQuOUMxMTIuODQ4LDExNC4yMTcgMTEzLjU1NiwxMTYuNjAyIDExMy41NjMsMTE2LjYxM0MxMTUuMSwxMTkuMjI5IDExNS4wOTIsMTIwLjI3MyAxMTguNjU5LDExOS42MDZDMTE5LjY2NiwxMTkuNDE4IDEyMC40NjUsMTE4LjUyOSAxMjEuMiwxMTcuNTQ0Wk05OS43NSw3My44NDZMOTkuOCw3My44TDk5LjcsNzMuOEw5OS43NSw3My44NDZMNzkuMyw5Mi43TDEyMC4yLDkyLjdMOTkuNzUsNzMuODQ2WlwifV0saVtcIkFDLklDLklOVkVSU0lPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDY5LjUsODcuOSBDIDY5LjUsODYuNyA3My42LDgzLjkgNzUuNSw4My45IGggMC4zIGMgMy4zLDAgOSw5LjEgMTUuMiw5LjEgaCAxLjggYyA1LjQsMCAxMS4zLC05LjEgMTQuOSwtOS4xIDMuNSwwIDguOCw5LjEgMTUuMiw5LjEgaCAwLjkgYyA4LjUsMCAxMC41LC00LjQgMTUuNSwtNyBsIC01LjMsLTYuNCBjIC0zLjQsMS44IC00LjEsNC42IC05LjUsNS4zIC0yLjIsMC4zIC02LjYsLTMuOSAtOC4zLC01LjUgLTgsLTYuOCAtMTMsLTMgLTE5LjQsMiAtMy45LDMuMSAtMy45LDUuMyAtOC41LDEuMyAtMi4yLC0xLjggLTUuNiwtNC44IC04LjIsLTYgLTMuOCwtMS44IC04LjYsLTAuNyAtMTEuNCwxLjIgLTEuNiwxIC03LjMsNS4yIC03LjMsNi45IHYgNTIuMiBoIDguMiBWIDg3LjkgeiBtIC05LjQsLTE2LjQgNzkuOSwwIDAsLTguNSAtNzkuOSwwIHpcIn1dLGlbXCJBQy5JQy5UU1VOQU1JXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNjMsMTIyIDM5LjUsLTAuMSAzMC44LDAuMyBjIC03LjEsMCAtMTIuOCwtMS43IC0xNi45LC00LjggLTMuNywtMi45IC03LjcsLTggLTcuNywtMTQuNCAwLC05LjEgNi45LC0xNi41IDE1LjgsLTE2LjUgaCAwLjcgYyA2LjUsMCA4LjIsMi44IDExLjgsNS4zIC0yLC04LjYgLTEwLjYsLTE0LjIgLTIxLjQsLTE0LjIgaCAtMC4yIGMgLTE4LjIsMCAtNDQuOSwzMyAtNTIuNCw0NC4zIGwgMCwwIDAsMCB6XCJ9XSxpW1wiQUMuSUMuQklSRFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgxLjYsOTIuNSAtMTguNCwyLjkgdiAwLjMgbCA2LjYsMC41IGMgLTAuNywwLjUgLTMuMywxLjEgLTQuNSwxLjUgLTIuNiwwLjkgLTIsMC4zIC0zLjUsMi40IGwgMy40LDAuMSAtMSwxIGMgMS44LDAgMy4zLDAuMSA0LjgsMC4yIDEuNCwwLjEgMS45LC0xLjMgMy41LC0xLjQgMywtMC4yIDUuNywwLjIgOS4zLDAuMyBsIC0wLjgsMC41IGMgMC42LDAuMSAwLjcsMC4yIDEuNCwwLjIgaCAxLjYgbCAwLjEsMC45IDIuOSwxLjIgMS42LC0wLjEgYyAxLjYsMS4xIDEuOSwyLjMgNS4yLDIuNCAwLjIsMi43IDAuNiwzLjggMyw0LjQgdiAwLjggYyAwLDIuMiAwLjIsNC44IDIuMSw1IGwgMS4yLDUuMyBoIC0wLjQgdiAwLjQgYyAtMC4zLC0wLjMgLTEuNCwtMS4yIC0xLjgsLTEuMiBoIC0wLjIgYyAtMC41LDAgLTAuNSwwLjEgLTEsMC4yIDAuNiwwLjggMi43LDEuNyAzLjEsMi43IDAuNSwxLjYgMC4xLDMuOCAwLjIsNS4zIGwgMC45LDAuNiAwLjgsLTAuMSAwLjEsLTAuOCAtMC4xLC0yLjcgYyAwLjcsMC41IDIuNywzIDMuMywzIGggMSBjIC0wLjUsLTIgLTEuOCwtMi40IC0yLjcsLTMuOSBsIDMuNywxLjEgYyAtMSwtMS41IC0wLjksLTEuOCAtMi45LC0yLjMgLTMuMSwtMC44IC0xLjgsLTEuOSAtMy4xLC0yLjIgbCAtMSwtNS40IGMgMSwtMC4yIDEuNCwtMSAxLjQsLTIuMiBsIDAuMSwtMS42IC0wLjMsLTIuNiBoIDEgYyAwLjcsMCAwLjcsLTAuMiAxLjQsLTAuNCAwLjEsMS42IDEuMiwzLjMgMi43LDMuNCBsIDMuMSw2LjMgYyAtMC4zLDAuMyAtMC40LDAuMyAtMC40LDAuOCB2IDAuNyBsIC00LjQsLTAuOSB2IDAuMiBjIDAuOCwwLjcgMy43LDEuNyA1LjEsMi44IDEuMSwwLjggMS4yLDAuNiAyLDEuOSAwLjMsMC41IDEuMywyLjIgMS45LDIuMiBoIDAuOCBsIDAuMiwtMC4xIC0xLjcsLTMuMiA0LjMsMS45IGMgLTAuMSwtMi4xIC0yLjEsLTEuNSAtMy42LC0yLjggaCAzIGMgLTEuMywtMS4xIC0xLjYsLTAuOSAtMy41LC0xLjIgLTEuNiwtMC4yIC0xLjcsLTEuMiAtMi43LC0yLjEgLTEuMSwtMS4yIC0yLC00LjkgLTIuOSwtNi42IDEuMiwtMS44IDEsLTEuNCAxLC00LjQgNC44LC0yLjMgNS42LC0yLjEgOS4zLC01LjkgMi43LC0yLjcgMy45LC02LjEgNS44LC05LjcgMC45LC0xLjggMS41LC0zLjMgMi4yLC01LjIgMC43LC0xLjggMC43LC00LjcgMS40LC02LjMgMi4zLC00LjYgOSwtMy4yIDEwLjMsLTUuMiBsIC00LjQsMC4yIHYgLTAuMiBsIDUsLTAuNiBjIC0yLjIsLTEuOSAtNC44LC0xLjQgLTguMywtMS44IC0yLjEsLTAuMyAtMi45LDAuNyAtNC40LC0wLjMgLTEuNCwtMSAtMS42LC0xLjIgLTMuNywtMS41IC0zLjEsLTAuNSAtNS42LDEuMiAtNy40LDIuNSAtMS43LDEuMyAtMy4yLDUuMiAtNC4yLDYuMSAtMC4zLDAuMiAtNi4xLDIuNyAtNy4xLDMuMiAtMi45LDEuNSAtMy41LDIuNSAtNy4zLDMuMSAtNi4zLDEgLTkuOSwzLjQgLTE0LjIsNi4zIGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5JTlNFQ1RcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3Ny40LDg4LjggMC4xLC0wLjMgNi4xLDQuOSAtMC4xLDAuMiBjIC0yLjIsMS41IC03LjcsOSAtMTAsOSBsIC0xLjYsLTAuMSA1LjYsLTEzLjcgeiBtIDcuMSwzLjMgYyAtMC40LC0xLjcgLTUsLTYuNCAtNi43LC03LjIgLTAuNCwwLjMgLTEuOCwxIC0xLjgsMS42IDAsMC44IDAuMywxIDAuNSwxLjUgbCAtNS42LDE0LjcgaCAtMSBjIDAuMiwwLjkgMC41LDAuNyAwLjUsMSAwLDAuMyAtMyw3LjggLTMuMyw4LjcgLTAuNiwxLjQgLTEsMi43IC0xLjYsNC4yIC0wLjMsMC44IC0wLjYsMS42IC0wLjksMi4yIC0wLjUsMS4xIC0wLjYsMC4zIC0xLjQsMS43IGwgLTEuMywwLjMgYyAwLjMsMC41IDEuOCwwLjUgMi41LDAuNCAxLjIsLTAuMiAwLjQsLTEgMC44LC0yLjIgMC43LC0xLjggMS40LC0zLjUgMi4xLC01LjQgMC41LC0xLjIgMy43LC0xMC4zIDQuNiwtMTAuMyBoIDEuMyBjIDAuOCwwIDEsMC4zIDEuNSwwLjUgbCAyLjMsLTIuOCBjIDIuNywxLjggOC41LDQuNiAxMi44LDQuNiBoIDAuNyBsIDAuMiwtMC4xIC0zLjUsLTUgLTkuOSwtMC4xIDYuNSwtNi4zIGMgNC4zLDIuOSAxMS43LDE2LjkgMTQuOSwxNi45IGggMC4zIGMgMS40LDAgMS4zLC0wLjYgMS44LC0xLjYgLTAuOSwtMy43IC00LjgsLTYuMyAtNy4zLC04LjUgLTIuNCwtMiAtNi4xLC02LjUgLTguMywtNy45IDEuMiwtMS43IDEwLjMsLTEwLjggMTIuMiwtMTEuMyBsIDAuOSw3LjcgMC4xLDIuOSAtMS4yLDcuNCBoIC0xLjggbCA1LjIsNC40IDcuMiwtMy45IGMgLTAuNSwyLjEgLTAuMywyLjUgLTIuMiwzLjQgLTAuNiwwLjMgLTMuNywxLjkgLTMuNywyLjMgMCwwLjUgMC43LDEuNyAwLjcsMy4xIDAsMi45IC0zLjEsNC40IC01LjgsMy4zIC0yLjEsLTEgLTQuOSwtNS4xIC01LjUsLTUuMSBoIC0xIGMgLTQuNiwwIC02LjcsMS42IC0xMC41LDEuNiBoIC0wLjUgYyAtMS45LDAgLTIuNSwtMC43IC00LjEsLTAuNyBoIC0wLjUgYyAtMC42LDAgLTEsMC40IC0xLDEgMCwzLjIgMTIuMyw0LjcgMTYuOSw0LjYgbCAxMy4xLC0wLjMgdiAwLjMgYyAtMC45LDEuMyAtNS44LDQuOCAtOCw0LjggLTAuMSwwLjIgLTAuNSwwLjcgLTAuNSwwLjggMCwwLjcgMC4xLDAuNyAwLjMsMS4zIDAuNywwLjEgMC41LDAuMyAxLDAuMyAwLjUsMCAwLjUsLTAuMiAxLC0wLjUgdiAtMS4zIGwgNy43LC01LjQgLTEuNiw2LjEgYyAtMC45LDAuMSAtMS4zLDAuNCAtMS4zLDEuMyAwLDAuOSAwLjUsMC43IDEuNCwxLjIgbCAxLjIsLTEuNCBjIDAsLTAuMiAtMC43LC0xLjMgLTAuNywtMS40IDAsLTEuMyAyLjQsLTcuNiAyLjgsLTkuNSBsIDE1LjYsLTAuNSAxLjIsOC40IC0wLjQsMC4xIGMgMC4zLDAuNSAwLjMsMSAxLDEgMSwwIDEuMSwtMC4zIDEuNiwtMC43IC0wLjUsLTEgLTAuNSwtMS45IC0xLjcsLTEuMyBsIC0wLjgsLTYuNyA0LjgsNS41IC0wLjcsMC44IDEuNCwxLjIgYyAwLjUsLTAuMyAxLC0wLjIgMSwtMSB2IC0wLjUgYyAwLC0wLjkgLTAuOSwtMSAtMS42LC0xLjIgbCAtNC41LC01IDAuMywtMSBoIC04LjUgYyAwLC01IDIsLTguMiAyLjMsLTEyLjQgbCAtOS4yLDAuNCAtMC44LDIuNSBoIC00LjYgYyAtMS44LDAgLTIuOCwtOCAtMi45LC0xMC4zIDAsLTIuNCAtMC4zLC00LjEgLTAuMiwtNi40IDAuMSwtMS40IDEsLTUuMSAtMSwtNS4xIGggLTAuNyBjIC0xLDAgLTEuMywxIC0xLjYsMS44IC0wLjMsMSAtMSwxLjQgLTEuNiwyIC0xLjIsMS4zIC0yLjMsMi40IC0zLjUsMy42IC0xLjIsMS4yIC02LjIsNi43IC03LjQsNyBsIDAsMCB6IG0gMzcuOSw4IGMgMCwtMC4zIDAuMywtMC41IDAuNywtMC41IGggMC43IGwgMC4xLDAuNSAtMC4zLDEgaCAtMSBjIC0wLjEsLTAuNyAtMC4zLC0wLjQgLTAuMywtMSB6IG0gMy42LC0xLjggYyAtMC4yLDAgLTEuNiwtMS44IC0zLjMsLTEuOCBoIC0wLjUgYyAtMiwwIC0yLDIuMiAtMi41LDMuOSAtMC41LDEuNCAtMS40LDMuNyAtMS40LDUuNCAwLDAuNiAwLjQsMSAxLDEgMi40LDAgNi40LC01LjIgNi45LC03LjQgMy45LDAgMTEuMSwtMS4xIDExLjgsLTMuOSAtMi42LDAuNyAtMi45LDIuNCAtOCwyLjggMS44LC0xLjYgNS42LC00LjMgNS45LC03LjIgaCAtMC41IGMgLTAuOCwzLjEgLTUuNiw3LjIgLTkuNSw3LjIgelwifV0saVtcIkFDLklDLk1JQ1JPQklBTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgzLjksOTMuMyBjIC0zLjMsMCAtNiwyLjcgLTYsNiAwLDMuMyAyLjcsNiA2LDYgMy4zLDAgNiwtMi43IDYsLTYgMCwtMy4zIC0yLjcsLTYgLTYsLTYgeiBNIDEwMCw4NS41IGMgLTExLjEsMCAtMjEuMiwxLjUgLTI4LjYsNC4xIC0zLjcsMS4zIC02LjcsMi44IC04LjgsNC41IC0yLjEsMS43IC0zLjQsMy43IC0zLjQsNS45IDAsMi4yIDEuMyw0LjIgMy40LDUuOSAyLjEsMS43IDUuMSwzLjIgOC44LDQuNSA3LjQsMi41IDE3LjUsNC4xIDI4LjYsNC4xIDExLjEsMCAyMS4yLC0xLjUgMjguNiwtNC4xIDMuNywtMS4zIDYuNywtMi44IDguOCwtNC41IDIuMSwtMS43IDMuNCwtMy43IDMuNCwtNS45IDAsLTIuMiAtMS4zLC00LjIgLTMuNCwtNS45IC0yLjEsLTEuNyAtNS4xLC0zLjIgLTguOCwtNC41IEMgMTIxLjIsODcuMSAxMTEuMSw4NS41IDEwMCw4NS41IHogbSAwLDEuNCBjIDExLDAgMjEsMS41IDI4LjIsNCAzLjYsMS4yIDYuNSwyLjcgOC40LDQuMyAxLjksMS42IDIuOSwzLjIgMi45LDQuOCAwLDEuNiAtMSwzLjMgLTIuOSw0LjggLTEuOSwxLjYgLTQuOCwzIC04LjQsNC4zIC03LjIsMi41IC0xNy4xLDQgLTI4LjIsNCAtMTEsMCAtMjEsLTEuNSAtMjguMiwtNCAtMy42LC0xLjIgLTYuNSwtMi43IC04LjQsLTQuMyAtMS45LC0xLjYgLTIuOSwtMy4yIC0yLjksLTQuOCAwLC0xLjYgMSwtMy4zIDIuOSwtNC44IDEuOSwtMS42IDQuOCwtMyA4LjQsLTQuMyA3LjIsLTIuNSAxNy4xLC00IDI4LjIsLTQgelwifV0saVtcIkFDLklDLlJFUFRJTEVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5My41LDgyLjMgYyAwLC0yIDEuOCwtMi43IDEuOCwtNC4zIDAsLTEgLTAuNiwtMS41IC0xLjIsLTIgLTIuOCwwLjMgLTYuNSwwLjYgLTcuNCwyLjcgLTAuNSwxLjIgLTAuNSwyLjQgLTEuMiwzLjkgLTAuNSwxIC0xLjIsMi40IC0xLjIsMy44IDAsMC44IDAuNCwwLjcgMC40LDEuNiB2IDAuOCBjIDAsMi4yIC0yLjQsMy41IC0wLjYsNi4xIC0wLjIsMC4zIC0yLDEuNSAtMi40LDEuNyAtMS43LDEgLTEuOCwtMC42IC0yLjYsLTAuNiBoIC0wLjggbCAtMC4zLC0xLjIgYyAtMC41LC0wLjMgLTEsLTAuOCAtMS43LC0wLjggLTAuOCwwIC0wLjgsMC41IC0wLjYsMSBsIC0yLjEsMC40IC0wLjgsMi4zIGggMSBjIDAuOSwwIDEuNCwwLjQgMS42LDEuMiBsIC0xLjUsMS4yIC0wLjEsMC40IGMgMi44LDAuMyA0LjYsLTAuNiA3LjIsLTEuMiAxLjUsLTAuNCA2LjgsLTAuNiA3LjMsLTEgbCAwLjEsLTIuMiBjIDEsMC4zIDIsMS4zIDMuMSwxLjcgMS4yLDAuNCAxLjcsMC44IDMuMSwxLjIgMi40LDAuNiA0LjUsMS4yIDcuNywxLjIgaCAwLjYgbCA2LjEsLTAuNiBjIDAsMi42IDIuMywyLjUgMi44LDQuNSAtMS4zLC0wLjMgLTIuMywtMiAtMy41LC0yIC0wLjEsMCAtMC40LDAuMSAtMC42LDAuMiBsIDAuMywxLjIgLTEuNiwwLjMgdiAwLjggbCAwLjYsMC40IC0wLjksMC42IDEsMSBjIC0wLjIsMC44IC0wLjcsMC42IC0wLjcsMS4zIDAsMC40IDAuMSwwLjYgMC42LDAuNiAwLjYsMCAxLjYsLTEgMi44LC0xIDEuOSwwIDguMywwLjggOC4zLC0wLjggdiAtMC4yIGMgMCwtMS41IC0zLjUsLTEuNiAtMy4zLC01LjUgNSwyLjYgOS4zLDcuNCA0LjUsMTMuNiAtMS41LDIgLTQuMSwzLjYgLTYuNyw0LjUgLTEuNCwwLjUgLTcuNCwxLjkgLTkuMywxLjUgLTQuMiwtMC44IC01LjQsLTAuOCAtOC44LC0yLjQgLTIuNiwtMS4yIC00LjcsLTIuNSAtNywtNCAtMy45LC0yLjQgLTEwLC02LjEgLTE2LjEsLTYuMSAtNSwwIC0xMS40LDMuMSAtMTEuNCw3LjkgMS4yLC0wLjYgMS4zLC0xLjMgMi4xLC0yLjIgMC41LC0wLjYgMS43LC0xLjMgMi40LC0xLjcgMS41LC0xIDMuOSwtMS44IDYuNSwtMS44IGggMSBjIDQuNCwwIDExLjYsNC43IDE0LjUsNi43IDQuNSwzLjEgOC4xLDUuNSAxNC43LDYuNyA3LDEuMiAxMi43LC0wLjEgMTcuNCwtMi44IDEuOSwtMS4xIDQuMywtMy4zIDUuNSwtNS4xIDEsLTEuNiAyLjksLTUuNCAyLjcsLTggbCAtMC4zLC0yLjYgYyAwLjMsMC4xIDIuOCwzLjcgMy42LDQuNSAwLjgsMC44IDMuOCwyLjUgNS4zLDIuNSAxLDAgNC40LC0yLjIgNC43LC0yLjkgbCAtMS4zLC0wLjYgMS4yLC0xIGMgLTEuNSwtMSAtMC44LC0wLjYgLTIuNCwtMC42IGggLTEgYyAwLC0xLjQgLTAuMywtMS44IC0xLjMsLTEuNiBsIDAuMiwwLjEgLTEuNywzLjQgYyAtMS40LDAgLTIuOSwtMC45IC0zLjYsLTEuOCAwLC0wLjEgLTEuMywtMy44IC0xLjMsLTMuOSAtMC42LC0yIC0wLjYsLTIuMiAtMS44LC0zLjYgLTEuMiwtMS4zIC0xLjksLTEuMiAtMy40LC0xLjkgbCAtMC4xLDAuNiBjIC0wLjYsLTEuOCAtNi4yLC02LjUgLTguMSwtNy40IC0yLjIsLTEuMiAtMy4yLC0xLjIgLTYsLTEuNyAtMi4xLC0wLjMgLTUuNCwwLjMgLTcsLTAuNSAwLjQsLTEuNSAxLjYsLTAuNiAxLjYsLTIuMiAwLC0wLjUgLTAuNywtMC40IC0xLjIsLTAuNCAwLjYsLTEuMiAtMC4zLC0xIC0xLjMsLTEgMC4xLC0wLjMgMC40LC0wLjYgMC40LC0xIDAsLTAuMyAtMC4zLC0wLjQgLTAuNiwtMC40IC0wLjQsMCAwLDAuNiAtMS4zLDAuNiAtMC4zLC0xIC0wLjMsLTEuMyAtMS41LC0xLjQgdiAxLjYgaCAtMS4zIHYgMC42IGMgMCwwLjggMC42LDEuNSAxLDIuMiAtMC40LDAuNyAtMC4zLDIgLTEuNCwyIC0wLjYsMCAtMS44LC0xLjUgLTMuMSwtMS45IC0xLjMsLTAuNCAtMywwLjUgLTMsLTEuNSAtMCwtMC45IDIuMSwtMi41IDIuOCwtMy41IGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5ST0RFTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTcuMiw4MC4zIGMgMC42LDEuMiAwLjYsMS43IDEuNSwyLjYgMC42LDAuNyAxLjgsMS4yIDEuOSwyLjIgLTIsLTAuMSAtNC4yLC0zLjMgLTQuNCwtNS4zIC0yLjEsLTAuNSAtOC40LC0zLjYgLTEwLjksLTQuNyAtMy4xLC0xLjMgLTguMywtMi43IC0xMi43LC0yLjcgaCAtMi4yIGMgLTQsMCAtOSwyLjUgLTExLjMsNC4yIC0zLDIuMiAtNS4yLDUuMiAtNS4yLDEwLjQgdiAwLjcgYyAtNC42LDEuMSAtMTEuNyw4LjQgLTExLjcsMTMuOSB2IDIuNCBjIDAsNi4yIDcuNywxMCAxMS44LDEyLjcgMi41LDEuNyA0LjcsMy4zIDcsNS4xIDIuMiwxLjcgNC43LDQuMiA2LjcsNS41IC0yLjEsLTkgLTIyLjQsLTEyLjcgLTIyLjQsLTI1LjEgMCwtNC41IDQuOSwtOS4zIDguNSwtMTAuMiAtMC4xLDAuNiAtMC4zLDAuNiAtMC4zLDEuMyB2IDAuNSBjIDAsNC41IDcuOCw0LjEgMTEuNSwzIDUuMSwtMS41IDguMSwtMi4yIDEzLjYsLTEuMiA1LjQsMS4xIDguMywxLjUgMTIuNywzLjYgMy43LDEuOSAyLDEuMiA0LjIsMy44IDEuMSwxLjMgMSwxLjEgMi45LDEuMyAwLjgsMC4xIDEuOCwxIDIuNCwxLjUgaCAxLjcgYyAtMS4zLC0yLjYgLTQuOSwtMi45IC01LjYsLTUuOCAwLjgsLTEuNSAxLjcsLTEuNyAzLjksLTEuNyAwLjgsMCAxLDAuMiAxLjcsMC4zIC0wLjMsLTAuNiAtMC42LC0xLjcgMC41LC0xLjcgaCAxLjkgYyA0LjUsMCA5LDIuNSAxMi43LDAgMCwtMyAwLjQsLTIuMiAtMC45LC00LjkgLTAuNSwtMC44IC0yLjEsLTIuNyAtMi44LC0zLjQgLTEuNiwtMS41IC01LjcsLTQuMSAtNi43LC01LjUgMCwtMi44IC0wLjQsLTMuNCAtMi43LC0zLjkgbCAtMC41LDEgMC41LDIuNyAtMSwwLjMgdiAwLjkgaCAtMC44IGMgLTAuMiwtMi40IC0xLjIsLTUuOCAtMy42LC01LjggaCAtMC4yIGMgLTEuOCwtNGUtNCAtMS41LDEgLTIsMS45IHogbSA5LjUsMjQuNiBoIDEuMiBjIC0wLjIsLTIuNiAtNS4xLC0yLjggLTUuNCwtNS40IGwgLTIuMiwwLjMgYyAwLjIsMS41IDEuMSwyLjkgMi40LDMuNSAwLjksMC4zIDEuNSwwIDIuMywwLjYgMC40LDAuMyAxLjEsMSAxLjcsMSB6IG0gLTQ1LjEsLTYuMSBjIDEuMiwxLjggNS45LDQuMiA4LjgsNC4yIDEsMCAxLjYsLTAuOCAxLjksLTEuNSAtMC45LC0xLjMgLTIuOSwtMi44IC00LjcsLTMuMSAtMy43LC0wLjggLTIuOSwwLjEgLTYsMC40IGwgMCwwIHogbSA5LjUsLTEuOSBjIDEuMywyIDUsMi45IDguMywyLjkgMC44LDAgMS40LC0wLjQgMS45LC0wLjcgLTIsLTIuOSAtNi4xLC0yLjYgLTEwLjIsLTIuMiB6XCJ9XSxpW1wiQUMuSUMuUEhBUk1BQ1lcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4My4zLDc0LjUgaCAxMy4yIGMgMywwIDYuMiwzLjggNiw3LjMgLTAuMSwzLjYgLTIuOSw2LjYgLTYuNSw2LjYgSCA4My4zIFYgNzQuNSB6IG0gLTguNyw0NS45IGggOC43IFYgOTggaCAyLjQgYyAwLjYsMCAxMy42LDE2LjEgMTMuNiwxNy4yIDAsMC42IC0xMy42LDE2LjYgLTE1LDE5LjMgbCAxMC41LC0wLjEgMTAuMywtMTIuMiA5LjYsMTIuMyAxMC45LC0wIC0xNS4yLC0xOS4zIDE0LjQsLTE3LjggLTEwLjIsLTAuMSAtOS43LDEwLjggLTcuNCwtMTAgYyA4LjUsLTIgMTQuMSwtNi44IDE0LjEsLTE3LjIgMCwtOC4xIC03LC0xNS4zIC0xNSwtMTUuMyBIIDc0LjYgdiA1NC44IHpcIn1dLGlbXCJHUi5JTi5JQy5FRFVDQVRJT05BTCBGQUNJTElUSUVTIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTkuNiwxMDcuMSBoIC0xNC44IHYgMzEuNyBoIDMyIHYgLTMxLjcgaCAtMTQuOCBWIDk1LjIgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBoIC0yLjMgdiAyNC41IHogbSAtMy4xLC00NSAtNS42LDE0LjggMS43LDAgMS4zLC0zLjggMC4xLC0wLjEgMC4xLDAgNi44LDAgMC4xLDAgMC4xLDAuMSAxLjMsMy44IDEuNywwIC01LjYsLTE0LjggLTIuMSwwIHogbSAwLjgsMS44IDAuMiwwLjEgMC4yLC0wLjEgMi44LDcuNSAwLjEsMC4zIC0wLjMsMCAtNS42LDAgLTAuMywwIDAuMSwtMC4zIDIuOCwtNy41IHogbSAtMTQuOCwtMS44IDguMywwIDAsMS4zIC02LjUsMCAtMC4yLDAgMCwwLjIgMCw0LjUgMCwwLjIgMC4yLDAgNS44LDAgMCwxLjMgLTUuOCwwIC0wLjIsMCAwLDAuMiAwLDcgLTEuNiwwIDAsLTE0LjggeiBtIDMwLjMsLTAuMyBjIDAuOSwxLjVlLTUgMS43LDAuMSAyLjUsMC40IGwgMCwwIGMgMC44LDAuMiAxLjQsMC42IDIuMSwxIGwgMCwxLjYgYyAtMC42LC0wLjUgLTEuMywtMC45IC0xLjksLTEuMiAtMC44LC0wLjMgLTEuNywtMC41IC0yLjYsLTAuNSAtMS44LDEuNGUtNSAtMy4yLDAuNiAtNC4xLDEuNyAtMSwxLjEgLTEuNCwyLjcgLTEuNCw0LjcgLTFlLTUsMiAwLjUsMy42IDEuNCw0LjcgMSwxLjEgMi40LDEuNyA0LjEsMS42IDAuOSwyZS02IDEuOCwtMC4yIDIuNiwtMC41IDAuNywtMC4zIDEuMywtMC43IDEuOSwtMS4yIGwgMCwxLjYgYyAtMC43LDAuNCAtMS40LDAuOCAtMi4xLDEgLTAuOCwwLjIgLTEuNiwwLjQgLTIuNSwwLjQgLTIuMywwIC00LC0wLjcgLTUuMywtMiAtMS4zLC0xLjQgLTEuOSwtMy4yIC0xLjksLTUuNiAwLC0yLjQgMC42LC00LjMgMS45LC01LjYgMS4zLC0xLjQgMywtMiA1LjMsLTIgelwifV0saVtcIkFUTU9TUEhFUklDLklDLkRSSVpaTEUuSU5URVJNSVRURU5UIExJR0hUXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDpcInJnYigwLCAxMjgsIDApXCIsZDpcIm0gMTAwLDgyLjcgYyAtNS41LDAgLTEwLDQuNSAtMTAsMTAgMCw1LjUgNC41LDEwIDEwLDEwIDAuMSwwIDAuMSwwIDAuMiwwIGwgLTAuMiwwLjIgYyAwLjksNSAtOC40LDE0LjQgLTguNCwxNC40IDEyLjgsMC4xIDE4LjQsLTEzLjQgMTguMywtMjMuNCBsIC0wLDAgYyAwLC0wLjQgMC4xLC0wLjggMC4xLC0xLjIgMCwtNS41IC00LjUsLTEwIC0xMCwtMTAgelwifV0saVtcIkFUTU9TUEhFUklDLklDLkZPRy5TS1kgT0JTQ1VSRURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDI1NSwgMjQ3LCAwKVwiLGQ6XCJtIDQ5LjYsNTkuNyAwLDggMTAwLjksMCAwLC04IC0xMDAuOSwwIHogbSAwLDcxLjYgMCw4IDEwMC45LDAgMCwtOCAtMTAwLjksMCB6IG0gMCwtMzUuNiAwLDggMTAwLjksMCAwLC04IC0xMDAuOSwwIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5IQUlMLkxJR0hUIE5PVCBBU1NPQ0lBVEVEIFdJVEggVEhVTkRFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6XCJyZ2IoMTk4LCAxNiwgMzMpXCIsZDpcIm0gMTAwLDQ1LjUgLTAuOSwyLjEgLTE2LDM2IC0wLjYsMS40IDEuNSwwIDMyLDAgMS41LDAgLTAuNiwtMS40IC0xNiwtMzYgTCAxMDAsNDUuNSB6IG0gLTIxLjQsNDYuNyAwLjQsMS4zIDIwLDYwIDAuOSwyLjkgMC45LC0yLjkgMjAsLTYwIDAuNCwtMS4zIC0xLjQsMCAtNDAsMCAtMS40LDAgeiBtIDIuOCwyIDM3LjIsMCBMIDEwMCwxNTAgODEuNCw5NC4xIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5SQUlOLklOVEVSTUlUVEVOVCBMSUdIVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6XCJyZ2IoMCwgMTI4LCAwKVwiLGQ6XCJtIDEwMCw3OS44IGMgLTExLjIsMCAtMjAuMiw5IC0yMC4yLDIwLjIgMCwxMS4yIDksMjAuMiAyMC4yLDIwLjIgMTEuMiwwIDIwLjIsLTkgMjAuMiwtMjAuMiAwLC0xMS4yIC05LC0yMC4yIC0yMC4yLC0yMC4yIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5EVVNUIE9SIFNBTkQuTElHSFQgVE8gTU9ERVJBVEVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE3MywgMTA1LCA3NSlcIixkOlwibSAxNDAuNyw4NSAtMiwyIDEzLDEzIC0xMywxMyAyLDIgMTQsLTE0IDEsLTEgLTEsLTEgTCAxNDAuNyw4NSB6IG0gLTkzLjUsMTMuNiAwLDIuOCAxMDYuNSwwIDAsLTIuOCAtMTA2LjUsMCB6IE0gOTguNSw2Mi4zIGMgLTMuMiwwIC02LjQsMC44IC05LjIsMi4yIC0zLjcsMS44IC02LjksNC40IC05LjMsNy4zIC0yLjMsMi45IC0zLjksNi4xIC0zLjksOS4zIDAsNS42IDIuOSw5LjkgNi45LDEzLjIgNCwzLjMgOSw1LjggMTMuOSw4LjMgNC45LDIuNSA5LjcsNC45IDEzLjEsNy43IDMuNCwyLjggNS40LDUuOCA1LjQsMTAuMSAwLDMuNiAtNCw5IC0xMCwxMS42IC02LDIuNiAtMTMuNiwyLjcgLTIwLjksLTMuNCBsIC0yLjcsMy4yIGMgOC40LDcuMSAxOCw3LjIgMjUuMyw0IDcuMiwtMy4xIDEyLjUsLTkuMiAxMi41LC0xNS40IDAsLTUuNiAtMi45LC0xMCAtNi45LC0xMy4zIC00LC0zLjMgLTksLTUuOCAtMTMuOSwtOC4yIC00LjksLTIuNSAtOS43LC00LjkgLTEzLjEsLTcuNyAtMy40LC0yLjggLTUuNCwtNS44IC01LjQsLTEwIDAsLTEuNyAxLC00LjMgMi45LC02LjcgMS45LC0yLjQgNC43LC00LjcgNy44LC02LjIgNi4yLC0zIDEzLjUsLTMuMSAxOS45LDQuNCBsIDMuMiwtMi43IEMgMTA5LjUsNjQuNCAxMDMuOSw2Mi4zIDk4LjUsNjIuMyB6XCJ9XSxpW1wiQVRNT1NQSEVSSUMuSUMuU05PVy5JTlRFUk1JVFRFTlQgTElHSFRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDAsIDEyOCwgMClcIixkOlwibSAxMTEuNSw3OC45IC0yNi40LDQwIDMuMywyLjIgMjYuNCwtNDAgLTMuMywtMi4yIHogbSAtMjMuMSwwIC0zLjMsMi4yIDI2LjQsNDAgMy4zLC0yLjIgLTI2LjQsLTQwIHogTSA4MCw5OCBsIDAsNCA0MCwwIDAsLTQgLTQwLDAgelwifV0saVtcIkFUTU9TUEhFUklDLklDLlNUT1JNUy5USFVOREVSU1RPUk0gTElHSFQgVE8gTU9ERVJBVEUgLSBXSVRIIEhBSUxcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDEwMSA1MS45IEwgOTkuNyA1NC40IEwgODUuOCA4Mi4zIEwgODQuOCA4NC4zIEwgODcgODQuMyBMIDExNC45IDg0LjMgTCAxMTcuMiA4NC4zIEwgMTE2LjIgODIuMyBMIDEwMi4yIDU0LjQgTCAxMDEgNTEuOSB6IE0gMTAxIDU4LjEgTCAxMTIuNyA4MS41IEwgODkuMyA4MS41IEwgMTAxIDU4LjEgeiBNIDc4LjMgODcuNyBMIDc4LjMgOTAuNSBMIDgzLjkgOTAuNSBMIDgzLjkgMTQ1IEwgODYuNyAxNDUgTCA4Ni43IDkwLjUgTCAxMTcuOCA5MC41IEwgMTAyLjggMTE2LjQgTCAxMDIuNCAxMTcuMSBMIDEwMi45IDExNy44IEwgMTE3LjggMTQwLjkgTCAxMTEuMiAxMzYuOCBMIDEwOS44IDEzOS4yIEwgMTIwLjkgMTQ2LjIgTCAxMjMuMyAxNDcuNyBMIDEyMyAxNDQuOSBMIDEyMS43IDEzMC45IEwgMTE4LjkgMTMxLjIgTCAxMTkuNiAxMzguNiBMIDEwNS43IDExNyBMIDEyMS41IDg5LjggTCAxMjIuNyA4Ny43IEwgMTIwLjMgODcuNyBMIDc4LjMgODcuNyB6IFwifV0saVtcIkFUTU9TUEhFUklDLklDLlNUT1JNUy5GVU5ORUwgQ0xPVUQgKFRPUk5BRE8vV0FURVJTUE9VVClcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDEyNS43LDU5LjEgMTEyLjQsNzIuNCAxMTIsNzIuOCBsIDAsMC42IDAsNTMuMyAwLDAuNiAwLjQsMC40IDEzLjMsMTMuMyAxLjksLTEuOSAtMTIuOSwtMTIuOSAwLC01Mi4yIDEyLjksLTEyLjkgLTEuOSwtMS45IHogbSAtNTEuNSwwIC0xLjksMS45IDEyLjksMTIuOSAwLDUyLjIgTCA3Mi40LDEzOS4xIDc0LjMsMTQwLjkgODcuNiwxMjcuNiA4OCwxMjcuMiBsIDAsLTAuNiAwLC01My4zIDAsLTAuNiBMIDg3LjYsNzIuNCA3NC4zLDU5LjEgelwifV0saVtcIkFUTU9TUEhFUklDLklDLlRST1BJQ0FMIFNUT1JNIFNZU1RFTVMuVFJPUElDQUwgU1RPUk1cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDExMi4xIDU1IEMgOTYuOSA1OS45IDc2LjcgODEuOCA4Mi4yIDEwMS40IEMgODIuOSAxMTAuNiA5MC42IDExNy45IDEwMCAxMTcuOSBDIDEwMCAxMTcuOSAxMDAgMTE3LjkgMTAwLjEgMTE3LjkgQyA5OS4zIDEyOC4yIDg3LjkgMTQ1IDg3LjkgMTQ1IEMgMTAzLjEgMTQwLjEgMTIzLjMgMTE4LjIgMTE3LjggOTguNiBDIDExNy4xIDg5LjQgMTA5LjQgODIuMSAxMDAgODIuMSBDIDEwMCA4Mi4xIDEwMCA4Mi4xIDk5LjkgODIuMSBDIDEwMC43IDcxLjggMTEyLjEgNTUgMTEyLjEgNTUgeiBNIDEwMCA4NC41IEMgMTA2LjggODQuNSAxMTIuNSA4OC44IDExNC42IDk0LjggQyAxMTQuOCA5NS4yIDExNC45IDk1LjYgMTE1IDk2IEMgMTE1IDk2LjEgMTE1IDk2LjEgMTE1IDk2LjIgQyAxMTUuMSA5Ni42IDExNS4yIDk2LjkgMTE1LjMgOTcuMyBDIDExNS40IDk4LjEgMTE1LjUgOTkuMSAxMTUuNSAxMDAgQyAxMTUuNSAxMDEuMSAxMTUuNCAxMDIuMSAxMTUuMiAxMDMuMSBDIDExNSAxMDQuMSAxMTQuNyAxMDUgMTE0LjQgMTA1LjggQyAxMTQuNCAxMDUuOSAxMTQuMyAxMDUuOSAxMTQuMyAxMDYgQyAxMTQuMSAxMDYuNCAxMTQgMTA2LjcgMTEzLjggMTA3LjEgQyAxMTMuNyAxMDcuMiAxMTMuNyAxMDcuMyAxMTMuNyAxMDcuMyBDIDExMy42IDEwNy40IDExMy42IDEwNy41IDExMy41IDEwNy42IEMgMTEzLjMgMTA3LjkgMTEzLjEgMTA4LjMgMTEyLjkgMTA4LjYgQyAxMTIuNCAxMDkuMyAxMTEuOSAxMTAgMTExLjMgMTEwLjYgQyAxMTEuMiAxMTAuNyAxMTEuMSAxMTAuOCAxMTEuMSAxMTAuOSBDIDExMC44IDExMS4xIDExMC41IDExMS40IDExMC4zIDExMS42IEMgMTEwLjIgMTExLjcgMTEwLjIgMTExLjcgMTEwLjEgMTExLjggQyAxMDkuOCAxMTIgMTA5LjUgMTEyLjMgMTA5LjIgMTEyLjUgQyAxMDkuMSAxMTIuNSAxMDkuMSAxMTIuNSAxMDkuMSAxMTIuNSBDIDEwOC45IDExMi43IDEwOC42IDExMi45IDEwOC40IDExMyBDIDEwOC4xIDExMy4yIDEwNy44IDExMy40IDEwNy41IDExMy42IEMgMTA3LjQgMTEzLjYgMTA3LjQgMTEzLjYgMTA3LjQgMTEzLjcgQyAxMDYuNiAxMTQuMSAxMDUuNyAxMTQuNCAxMDQuOSAxMTQuNyBDIDEwNC43IDExNC44IDEwNC41IDExNC44IDEwNC4zIDExNC45IEMgMTA0IDExNSAxMDMuNiAxMTUuMSAxMDMuMyAxMTUuMiBDIDEwMy4yIDExNS4yIDEwMy4xIDExNS4yIDEwMy4xIDExNS4yIEMgMTAyLjEgMTE1LjQgMTAxLjEgMTE1LjUgMTAwIDExNS41IEMgOTMuMyAxMTUuNSA4Ny42IDExMS4zIDg1LjQgMTA1LjMgQyA4NS40IDEwNS4zIDg1LjQgMTA1LjIgODUuNCAxMDUuMiBDIDg1LjMgMTA0LjggODUuMiAxMDQuNSA4NS4xIDEwNC4yIEMgODUgMTA0IDg1IDEwMy45IDg1IDEwMy44IEMgODQuOSAxMDMuNSA4NC44IDEwMy4yIDg0LjggMTAyLjkgQyA4NC43IDEwMi41IDg0LjYgMTAyIDg0LjYgMTAxLjYgQyA4NC41IDEwMS4xIDg0LjUgMTAwLjUgODQuNSAxMDAgQyA4NC41IDk5IDg0LjYgOTggODQuOCA5NyBDIDg0LjggOTcgODQuOCA5Ni45IDg0LjggOTYuOSBDIDg0LjkgOTYuNCA4NSA5NiA4NS4yIDk1LjYgQyA4NS4zIDk1LjIgODUuNCA5NC45IDg1LjUgOTQuNSBDIDg1LjYgOTQuMyA4NS42IDk0LjIgODUuNyA5NCBDIDg1LjcgOTMuOSA4NS44IDkzLjggODUuOCA5My44IEMgODYgOTMuNCA4Ni4yIDkzIDg2LjMgOTIuNyBDIDg2LjQgOTIuNiA4Ni40IDkyLjUgODYuNSA5Mi40IEMgODYuNyA5Mi4xIDg2LjkgOTEuNyA4Ny4xIDkxLjQgQyA4Ny4zIDkxLjEgODcuNSA5MC44IDg3LjggOTAuNSBDIDg4IDkwLjIgODguMiA5MCA4OC40IDg5LjcgQyA4OC42IDg5LjUgODguOCA4OS4zIDg4LjkgODkuMSBDIDg5IDg5IDg5LjEgODkgODkuMiA4OC45IEMgODkuNCA4OC43IDg5LjcgODguNCA4OS45IDg4LjIgQyA5MC4yIDg4IDkwLjUgODcuOCA5MC44IDg3LjUgQyA5MC44IDg3LjUgOTAuOSA4Ny41IDkwLjkgODcuNSBDIDkxLjEgODcuMyA5MS40IDg3LjEgOTEuNiA4NyBDIDkxLjkgODYuOCA5Mi4yIDg2LjYgOTIuNSA4Ni40IEMgOTIuNiA4Ni40IDkyLjYgODYuNCA5Mi42IDg2LjMgQyA5My4xIDg2LjEgOTMuNSA4NS45IDk0IDg1LjcgQyA5NC40IDg1LjYgOTQuNyA4NS40IDk1LjEgODUuMyBDIDk1LjMgODUuMiA5NS41IDg1LjIgOTUuNyA4NS4xIEMgOTYgODUgOTYuNCA4NC45IDk2LjggODQuOCBDIDk2LjggODQuOCA5Ni44IDg0LjggOTYuOSA4NC44IEMgOTYuOSA4NC44IDk2LjkgODQuOCA5Ni45IDg0LjggQyA5Ny40IDg0LjcgOTcuOSA4NC42IDk4LjQgODQuNiBDIDk4LjkgODQuNSA5OS41IDg0LjUgMTAwIDg0LjUgeiBcIn1dLGlbXCJBQy5JQy5FTVQgU1RBVElPTiBMT0NBVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEwMCA1NSBMIDcwIDgwIEwgNzUgODAgTCA3NSAxMjUgTCAxMjUgMTI1IEwgMTI1IDgwIEwgMTMwIDgwIEwgMTAwIDU1IHogTSA5NSA4MCBMIDEwNSA4MCBMIDEwNSA5MS4zIEwgMTE0LjggODUuNyBMIDExOS44IDk0LjMgTCAxMTAgMTAwIEwgMTE5LjggMTA1LjcgTCAxMTQuOCAxMTQuMyBMIDEwNSAxMDguNyBMIDEwNSAxMjAgTCA5NSAxMjAgTCA5NSAxMDguNyBMIDg1LjIgMTE0LjMgTCA4MC4yIDEwNS43IEwgOTAgMTAwIEwgODAuMiA5NC4zIEwgODUuMiA4NS43IEwgOTUgOTEuMyBMIDk1IDgwIHogXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwiTSA5NSA4MCBMIDk1IDkxLjMgTCA4NS4yIDg1LjcgTCA4MC4yIDk0LjMgTCA5MCAxMDAgTCA4MC4yIDEwNS43IEwgODUuMiAxMTQuMyBMIDk1IDEwOC43IEwgOTUgMTIwIEwgMTA1IDEyMCBMIDEwNSAxMDguNyBMIDExNC44IDExNC4zIEwgMTE5LjggMTA1LjcgTCAxMTAgMTAwIEwgMTE5LjggOTQuMyBMIDExNC44IDg1LjcgTCAxMDUgOTEuMyBMIDEwNSA4MCBMIDk1IDgwIHogXCJ9XSxpW1wiQUMuSUMuSEVBTFRIIERFUEFSVE1FTlQgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMzEuNCw4My42IDEwMCw2OC40IDY4LjUsODMuNSB6IG0gLTI2LjQsMTQuNiAwLC05LjcgLTEwLjEsMCAwLDkuNyAtOS41LDAgMCwxMC40IDkuNSwwIDAsOS41IDEwLjEsMCAwLC05LjUgOS42LDAgMCwtMTAuNCB6IG0gLTI3LjIsMTkuNSAwLC0yNy44IDEuNCwwIDAsLTMuNyAtNy4zLDAgMCwzLjcgMS4yLDAgMCwyNy44IC0xLjIsMCAwLDMuOCA3LjMsMCAwLC0zLjggeiBtIDQ4LjcsMCAwLC0yNy44IDEuNCwwIDAsLTMuNyAtNy4zLDAgMCwzLjcgMS4yLDAgMCwyNy44IC0xLjIsMCAwLDMuOCA3LjMsMCAwLC0zLjggeiBtIC01Ni40LDUuMSAwLDMgNTkuNCwwIDAsLTMgeiBtIC0xLjgsNi4xIDAsMi44IDYzLjIsMCAwLC0yLjggelwifV0saVtcIkFDLklDLk1FRElDQUwgRkFDSUxJVElFUyBPVVRQQVRJRU5UXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODEuOCw2My42IDI2LjYsOSAwLDYzLjkgLTI2LjYsLTkuMSB2IC02My44IGwgMCwwIHogbSAtMS42LDY1IDI5LjksMTAuNCB2IC0xMC42IGggOS44IFYgNjEgSCA4MC4yIHYgNjcuNiBsIDAsMCB6IG0gMjEuNCwtMTguMSBjIDAsMS4xIDEsMi42IDIuMiwyLjYgMC44LDAgMS4yLC0wLjggMS4yLC0xLjYgdiAtMC40IGMgMCwtMS4yIC0xLjEsLTMgLTIsLTMgLTAuOCwwIC0xLjQsMC44IC0xLjQsMS42IHYgMC44IEggMTAxLjUgeiBNIDg1LjksOTAuOSBjIDAuOSwwLjEgNS4zLDEuOCA1LjMsMi40IHYgNy4xIGwgNS43LDIuMiB2IC03LjUgbCA1LjUsMS45IFYgODkuMSBDIDEwMS41LDg4LjggOTYuOSw4Ny4yIDk2LjksODYuNiBWIDc5LjUgTCA5MS4yLDc3LjYgdiA3LjQgbCAtNS4zLC0yIHYgNy45IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDgxLjggNjMuNiBMIDgxLjggMTI3LjQgTCAxMDguNCAxMzYuNiBMIDEwOC40IDcyLjcgTCA4MS44IDYzLjYgeiBNIDkxLjIgNzcuNiBMIDk2LjkgNzkuNSBMIDk2LjkgODYuNiBDIDk2LjkgODcuMiAxMDEuNSA4OC45IDEwMi4zIDg5LjEgTCAxMDIuMyA5NyBMIDk2LjggOTUuMiBMIDk2LjggMTAyLjYgTCA5MS4xIDEwMC40IEwgOTEuMSA5My4zIEMgOTEuMSA5Mi42IDg2LjggOTEgODUuOSA5MC45IEwgODUuOSA4MyBMIDkxLjIgODUgTCA5MS4yIDc3LjYgeiBNIDEwMi45IDEwOC4xIEMgMTAzLjkgMTA4LjEgMTA1IDEwOS45IDEwNSAxMTEuMiBMIDEwNSAxMTEuNiBDIDEwNSAxMTIuNCAxMDQuNiAxMTMuMiAxMDMuOCAxMTMuMiBDIDEwMi41IDExMy4yIDEwMS41IDExMS42IDEwMS41IDExMC42IEwgMTAxLjUgMTEwLjYgTCAxMDEuNSAxMDkuOCBDIDEwMS41IDEwOC45IDEwMi4xIDEwOC4xIDEwMi45IDEwOC4xIHogXCJ9XSxpW1wiQUMuSUMuT1BFUkFUSU9OL0VNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDczLjcsODkuNyBjIDAuNCw0LjkgMi4zLDExLjMgMy40LDE1LjYgMS40LDUuNyAzLjUsOC43IDYuMSwxMy4xIDIuMiwzLjYgMy40LDkuNiA1LjYsMTMuNCAwLjcsMS4zIDIuOCw1LjMgMy42LDYgMC41LDAuNCA1LjUsNCA1LjYsNCAxLjYsMCA5LjcsLTAuNCAxMC40LC0wLjcgMC4zLC0wLjEgNC4xLC02LjYgNC4xLC03IHYgLTMgaCAtNy44IGMgLTIuNywwIC01LjYsLTEuMyAtOC40LC0xLjMgViAxMTIuNiBjIDAsLTIuNCAxLjMsLTE3LjMgMi4xLC0xOCAwLjgsLTAuNyAxMS40LC04LjIgMTEuOSwtOC4zIGwgLTEsLTguNSBjIC0wLjUsMC4yIC01LjYsMSAtNiwwLjkgLTEsLTAuMiAtNC43LC0xLjQgLTUuNSwtMS44IC0xLjksMS4xIC00LjQsMS44IC02LjUsMi43IC0xLjYsMC43IC0zLjUsMi43IC01LjUsMy43IC0yLjQsMS4yIC0zLjksMS43IC02LjcsMi41IC0xLjYsMC40IC0yLjQsMC40IC0zLjMsMS41IC0wLjcsMC44IC0xLjcsMS44IC0yLjIsMi41IHogbSAyNy44LDM2LjEgYyAwLC04LjEgMiwtMTYuOCAxLjksLTI0LjggMCwtMS4yIDAuMiwtMS45IDAuMiwtMy4yIDAsLTEuNCAwLjQsLTEuNCAxLjIsLTIuMiAxLjIsLTEuMSAyLjQsLTIgMy42LC0zIDIuMSwtMS43IDUsLTQuOCA3LjEsLTYuMSAwLjMsMC4xIDAuMywwLjIgMC45LDAuMiBoIDQuOSBjIDAuMiwwLjggNC45LDYuNCA1LjgsNy40IDIuNiwzLjEgMy44LDMuOSAyLjksOS42IC0wLjUsMy4yIC0wLjcsOC42IC0xLDEyIC0wLjMsNCAtMC45LDguMSAtMC45LDEyLjIgbCAtMjYuNywtMi4yIHogbSAtMS43LDEuMyAyOS44LDIuMiAyLjQsLTMxLjQgLTkuOCwtMTIuNiAtNy4yLC0wLjMgYyAtMC4yLDAgLTYuOSw1LjkgLTcuOCw2LjUgLTEuNCwxLjEgLTIuNSwyLjMgLTMuOSwzLjIgLTEuNywxLjIgLTEuMiwzLjMgLTEuNCw1LjkgLTAuNiw4LjQgLTIuMSwxOC4xIC0yLjEsMjYuNSB6IG0gMTIuOCwtOSAwLjIsMCBjIDIuMywwIDYuNSwyLjggOC4xLDIuOCBoIDMgViAxMTkuNCBIIDEyMS40IGMgLTAuNiwwIC02LjEsLTIuMyAtNy4yLC0yLjcgLTEuNSwtMC42IC02LjYsMC4zIC04LjYsMC4zIHYgMS4zIGwgNy4xLC0wLjMgeiBtIC01LjYsLTcuOSAwLjIsMS41IGMgMy4xLC0wLjcgNS42LC0xLjQgOC43LC0wLjggMS4zLDAuMyAyLjgsMC42IDQuMiwwLjkgMi41LDAuNiAyLjgsMS4yIDMuMywtMSAtMS4zLDAgLTYuOCwtMS4zIC04LjQsLTEuNyAtMi41LC0wLjcgLTUuNSwwLjQgLTguMSwxLjEgeiBtIC0wLjIsLTguMSAwLjUsMS40IDUuNywtMS45IDUsMy43IDgsLTEgLTAuMywtMS43IC03LjMsMSBjIC0wLjgsLTAuNiAtNC43LC0zLjYgLTUuMywtMy42IC0wLjUsMCAtNS42LDEuOSAtNi4yLDIuMiB6IG0gMTAuNywtNy4zIGggMS4xIGMgMS4yLDAgMi41LC0xLjMgMi41LC0yLjUgdiAtMC40IGMgMCwtMS40IC0xLjYsLTIuNSAtMywtMi41IC00LjQsLTAgLTMuNiw1LjUgLTAuNiw1LjUgeiBNIDY3LjksODEuOCBjIDAsMS41IDMuMiw0LjQgNC4yLDUuMSBsIDEuNSwtMS42IC0yLjEsLTQuNyBoIC0yLjIgYyAtMC41LDAgLTEuNSwxLjEgLTEuNSwxLjIgeiBNIDExMC4yLDcwLjUgYyAwLjgsMC40IDIuNCwwLjggMi40LDEuOSAwLDAuOSAtMC41LDEuNCAtMC42LDIuMSBsIC0yLjYsLTAuNCBjIC0xLC0wLjEgLTQuMiwwLjYgLTUuOCwwLjYgdiAxLjEgYyAwLDEuMSA0LDAgNS42LDAgaCAwLjQgYyAxLjcsMCA1LjQsMS4yIDYuMiwxLjkgMC41LDAuNSAxLjQsNS4yIDEuOSw2LjIgMS44LC0wLjkgMS4zLC0wLjUgMC42LC0zLjIgLTAuMywtMC45IC0xLjEsLTMuMSAtMS4xLC00IGwgLTMuOSwtMS42IDEuMiwtMi4zIGMgLTEuMSwtMi4xIC0wLjgsLTMuNiAtNCwtMy42IGwgLTAuMywxLjIgeiBtIC0zNi41LDYuNiBjIDAsMC45IDIsNC42IDIuMiw2IDAuMywwLjEgMS4xLDAuNCAxLjEsMC40IDAuMywwIDIuMSwtMC45IDIuOCwtMS4xIC0wLjcsLTMuMSAtMS43LC02LjYgLTQuMywtNy45IC0wLjIsMC43IC0xLjcsMi4zIC0xLjcsMi41IHogbSA1LjksLTMuNiBjIDEuOSw0LjEgMC40LDMuNyA0LjIsNyBsIDIuNCwtMS4yIHYgLTMuOCBjIDAsLTEuNSAtMS4yLC0zLjYgLTEuMywtNS4zIGwgLTEuOSwtMC4yIGggLTEuNyBsIC0xLjYsMy43IHogbSA3LjYsLTIuOCAyLjUsNSAzLjksLTAuOCBjIDAsLTEgMC42LC0yLjUgMC42LC0zLjQgMCwtMi4yIC0xLjEsLTQuNyAtMS4xLC02LjkgSCA4OC41IGwgLTEuMyw2IHogTSA5Ny44LDYyLjggYyAwLDAuNiAwLjIsNy4yIDAuMyw3LjQgMC4zLDEgMy43LDIuNiA1LjUsMi40IDAuOSwtMC4xIDIuNSwtMC4zIDMuNSwtMC40IDEuOCwtMC4yIDEuMiwtMC42IDEuNSwtMi42IDAuMiwtMS45IDAuNiwtNC45IDEuMSwtNi44IC0wLjQsLTAuOCAtMi40LC00LjcgLTMuMiwtNC43IGggLTUuMSBjIC0wLjcsMCAtMyw0IC0zLjUsNC43IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDExNS42IDg2LjYgQyAxMTMuNSA4OCAxMTAuNiA5MSAxMDguNSA5Mi43IEMgMTA3LjMgOTMuNyAxMDYgOTQuNiAxMDQuOCA5NS43IEMgMTA0IDk2LjQgMTAzLjYgOTYuNSAxMDMuNiA5Ny44IEMgMTAzLjYgOTkuMiAxMDMuNCA5OS45IDEwMy40IDEwMS4xIEMgMTAzLjUgMTA5LjEgMTAxLjUgMTE3LjggMTAxLjUgMTI1LjkgTCAxMjguMiAxMjggQyAxMjguMiAxMjQgMTI4LjggMTE5LjkgMTI5LjEgMTE1LjggQyAxMjkuMyAxMTIuNCAxMjkuNiAxMDcuMSAxMzAuMSAxMDMuOCBDIDEzMSA5OC4xIDEyOS44IDk3LjMgMTI3LjIgOTQuMiBDIDEyNi4zIDkzLjEgMTIxLjYgODcuNiAxMjEuNCA4Ni44IEwgMTE2LjUgODYuOCBDIDExNS45IDg2LjggMTE1LjkgODYuNyAxMTUuNiA4Ni42IHogTSAxMTguMiA4OS4zIEMgMTE5LjUgODkuMyAxMjEuMSA5MC40IDEyMS4xIDkxLjkgTCAxMjEuMSA5Mi4zIEMgMTIxLjEgOTMuNiAxMTkuOCA5NC45IDExOC42IDk0LjkgTCAxMTcuNSA5NC45IEMgMTE0LjUgOTQuOSAxMTMuOCA4OS4zIDExOC4yIDg5LjMgeiBNIDExMy4xIDEwMCBDIDExMy43IDEwMCAxMTcuNiAxMDMuMSAxMTguNCAxMDMuNyBMIDEyNS43IDEwMi42IEwgMTI2IDEwNC4zIEwgMTE4IDEwNS4zIEwgMTEzIDEwMS42IEwgMTA3LjMgMTAzLjYgTCAxMDYuOSAxMDIuMiBDIDEwNy41IDEwMS45IDExMi41IDEwMCAxMTMuMSAxMDAgeiBNIDExMy4yIDEwOSBDIDExMy45IDEwOSAxMTQuNSAxMDkuMSAxMTUuMiAxMDkuMiBDIDExNi43IDEwOS42IDEyMi4yIDExMC45IDEyMy41IDExMC45IEMgMTIzIDExMyAxMjIuNyAxMTIuNCAxMjAuMiAxMTEuOCBDIDExOC44IDExMS41IDExNy4zIDExMS4yIDExNiAxMTAuOSBDIDExMi44IDExMC4zIDExMC40IDExMSAxMDcuMyAxMTEuOCBMIDEwNy4xIDExMC4zIEMgMTA5IDEwOS44IDExMS4yIDEwOS4xIDExMy4yIDEwOSB6IE0gMTEyLjUgMTE2LjUgQyAxMTMuMiAxMTYuNSAxMTMuOCAxMTYuNiAxMTQuMiAxMTYuOCBDIDExNS4yIDExNy4xIDEyMC44IDExOS40IDEyMS40IDExOS40IEwgMTIzLjkgMTE5LjQgTCAxMjMuOSAxMjEgTCAxMjEgMTIxIEMgMTE5LjQgMTIxIDExNS4xIDExOC4yIDExMi45IDExOC4yIEwgMTEyLjYgMTE4LjIgTCAxMDUuNiAxMTguNCBMIDEwNS42IDExNy4xIEMgMTA3LjEgMTE3LjEgMTEwLjQgMTE2LjUgMTEyLjUgMTE2LjUgelwifV0saVtcIkFDLklDLlRSSUFHRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDkxLjYgNjkgQyA4Ny4zIDY5IDgzLjYgNzEuNSA4My42IDc1LjMgTCA4My42IDgzLjMgTCA4MC41IDgzLjMgQyA3NCA4My4zIDczLjYgODguMSA3MS4yIDkxLjUgQyA2OS4zIDk0LjMgNjMgOTQuNCA2MyAxMDAuOSBMIDYzIDEzMSBMIDEzNyAxMzEgTCAxMzcgMTAyLjYgQyAxMzcgOTkuNSAxMzYuMiA5Ny4zIDEzNC43IDk1LjYgQyAxMzMuMiA5NCAxMzAuOCA5My42IDEyOS4xIDkyIEMgMTI2IDg4LjggMTI2LjkgODMuMyAxMTkuMSA4My4zIEwgMTE2LjIgODMuMyBMIDExNi4yIDc1LjUgQyAxMTYuMiA3MS4zIDExMi45IDY5IDEwOC40IDY5IEwgOTEuNiA2OSB6IE0gODkuOSA3NiBMIDExMC4xIDc2IEwgMTEwLjEgODMuMyBMIDg5LjkgODMuMyBMIDg5LjkgNzYgeiBNIDk1LjMgOTAuNCBMIDEwNC40IDkwLjQgTCAxMDQuNCA5OS40IEwgMTEyLjIgOTQuOSBMIDExNi44IDEwMi44IEwgMTA5LjEgMTA3LjMgTCAxMTYuOCAxMTEuOSBMIDExMi4xIDExOS44IEwgMTA0LjQgMTE1LjMgTCAxMDQuNCAxMjQuMSBMIDk1LjMgMTI0LjEgTCA5NS4zIDExNS4zIEwgODcuNiAxMTkuNyBMIDgzIDExMS44IEwgOTAuNyAxMDcuMyBMIDgzIDEwMi44IEwgODcuNiA5NC45IEwgOTUuMyA5OS4zIEwgOTUuMyA5MC40IHogXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTIuMSwxMTkuOCA0LjYsLTcuOSAtNy42LC00LjYgNy43LC00LjUgLTQuNiwtNy45IC03LjcsNC40IC0wLC04LjkgLTkuMSwwIDAsOC45IC03LjcsLTQuNCAtNC41LDcuOSA3LjYsNC41IC03LjYsNC41IDQuNSw3LjkgNy43LC00LjQgMCw4LjggOS4xLDAgMCwtOC44IHpcIn1dLGlbXCJBQy5JQy5FTUVSR0VOQ1kgUFVCTElDIElORk9STUFUSU9OIENFTlRFUlwiXT1baVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0sYShcImlcIildLGlbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4MCwxMzEuMyB2IC0xIGMgMS4zLDAuMSA1LjcsMS44IDcuNywyLjIgMi44LDAuNiA1LjgsMSA5LjEsMSBoIDYuNSBjIDMuNCwwIDYuMSwtMC40IDguOSwtMSAyLC0wLjQgNi41LC0yLjEgNy43LC0yLjIgdiAxIGMgMCwyLjkgLTEyLjUsNC41IC0xNi42LDQuNSBoIC02LjQgYyAtNC4xLDAgLTE2LjksLTEuNiAtMTYuOSwtNC41IGwgMCwwIHogbSAxNy45LC00My40IDQuNSwwLjEgMTIuNCwwLjQgdiA4LjMgaCA2LjMgdiAxMS45IGggLTYuMyB2IDE3LjQgbCA0LjUsMS4zIGMgLTEuMiwxLjYgLTEyLjIsMy4zIC0xNS44LDMuMyBoIC02LjQgYyAtMy41LDAgLTE1LC0xLjggLTE2LC0zLjIgbCA0LjYsLTEuNiAwLjEsLTE3LjIgaCAtNi4zIFYgOTYuNyBoIDYuMyB2IC04LjMgbCAxMi40LC0wLjQgMCwwIHogbSAyNS43LDUuOSBoIDMgdiA2LjcgaCAzLjIgdiAzLjkgaCAtMy4yIHYgNi43IGggLTMgViA5My44IHogbSAtNTAsMCBoIDIuOSB2IDE3LjIgaCAtMi45IHYgLTYuNyBoIC0zLjUgdiAtMy45IGggMy40IFYgOTMuOCBoIDAuMSB6IG0gMjYuMSwtOC4zIGMgLTUuMiwwIC05LjcsMC4yIC0xNC44LDAuMiAtNC40LDAgLTMuNSwtMi42IC0xLjgsLTIuOCAyLjEsLTAuMyA0LjksLTAuMSA2LjksLTAuNCA1LjMsLTAuOCAyMy42LC0wLjMgMjguMSwwLjggMC4yLDEuOCAwLjQsMS41IC0xLDIuNCBsIC0xNS44LC0wLjIgLTEuNiwwLjEgeiBtIC0xLC0yMS4xIGggMi45IHYgMy44IGggMiB2IDEuOCBjIDMuMiwwLjcgNS4zLDEuMSA3LjQsMy4xIDEuMywxLjMgMy41LDQuMyAzLjcsNi43IGwgLTEwLjQsLTAuMyAtOS45LDAuMSAwLjIsLTAuMSAtOS4xLDAuNSBjIDAuNCwtNC43IDUuMiwtOS43IDEwLjQsLTkuNyBoIDAuOCB2IC0yIGggMiB2IC0zLjggeiBtIC0yLjYsMS4yIGggLTIgdiAyLjIgYyAtNS43LDAuNSAtMTAuNiw2LjYgLTExLjEsMTIuNSAtMi4yLDAuMiAtMi4zLDEuMyAtMy40LDIuMSBsIC0wLjIsMS42IGMgLTAuMywyLjIgMiwzLjkgMy42LDQuMyB2IDUuNSBoIC0zLjYgdiAtMi40IGggLTguMyB2IDYuNyBoIC0zLjIgViAxMDcgaCAzLjIgdiA2LjMgaCA4LjMgdiAtMi40IGggMy42IFYgMTIzLjggYyAtMi4zLDAuNiAtNS41LDIgLTUuNSw0LjkgdiAyIGMgMCw2LjMgMTIuOSw3LjcgMTkuOCw3LjcgaCA1LjkgYyA2LjksMCAxOS40LC0xLjIgMTkuNCwtNy43IHYgLTIgYyAwLC0yLjggLTMsLTQuMyAtNS4zLC00LjkgdiAtMTIuOSBoIDMuNiB2IDIuNCBoIDguMSBWIDEwNyBoIDMuMiB2IC05LjEgaCAtMy4yIHYgLTYuNCBoIC04LjEgdiAyLjQgaCAtMy42IHYgLTUuNSBjIDEuNiwtMC4zIDMuNiwtMS44IDMuNiwtMy44IDAsLTIuMiAtMS42LC0zLjkgLTMuNiwtNCAtMC41LC01LjkgLTUuNywtMTIuMSAtMTEuNCwtMTIuNiB2IC0yLjIgaCAtMiBWIDYxLjYgaCAtNy45IHYgNCB6IG0gMi45LDQ3LjIgYyAtNCwwIC04LjMsLTUgLTguMSwtOS4zIDAuMiwtNC40IDQuMiwtOSA4LjMsLTkgaCAyIGMgNC4yLDAgOC4zLDQuNyA4LjMsOS4xIDAsNC4zIC00LDkuMSAtOC4xLDkuMSBoIC0yLjQgbCAwLDAgeiBtIC0xMC41LC05LjkgdiAxLjggYyAwLDUuMiA1LjQsMTAuOCAxMC41LDEwLjggaCAyLjQgYyA1LjYsMCAxMC44LC01LjggMTAuOCwtMTEuOCAwLC02IC01LjMsLTExLjggLTEwLjksLTExLjggaCAtMi4xIEMgOTMuNyw5MiA4OC40LDk3LjUgODguNCwxMDMgbCAwLDAgeiBtIDkuNSwwLjggYyAwLjMsLTAuNiAwLjgsLTEuOCAxLjQsLTEuOCBoIDEuNCBjIDAuNywwIDEuNCwxLjMgMS40LDIgMCwwLjEgLTAuOSwxLjYgLTEuNCwxLjYgaCAtMS40IGMgLTAuNiwwLjEgLTEuMSwtMS4yIC0xLjQsLTEuOCB6IG0gLTIuOSwwIDIuMiw0LjMgaCA1IGMgMC43LDAgMi40LC0zLjYgMi45LC00LjMgbCAtMi40LC00LjUgaCAtNC45IGMgLTAuOCwwLjEgLTIuNSwzLjcgLTIuOSw0LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTcuOSwxMDMuOCBjIDAuMywtMC42IDAuOCwtMS44IDEuNCwtMS44IGggMS40IGMgMC43LDAgMS40LDEuMyAxLjQsMiAwLDAuMSAtMC45LDEuNiAtMS40LDEuNiBoIC0xLjQgYyAtMC42LDAuMSAtMS4xLC0xLjIgLTEuNCwtMS44IHogbSAxLjIsLTkuMSBjIC00LjEsMCAtOC4xLDQuNiAtOC4zLDkgLTAuMiw0LjMgNC4xLDkuMyA4LjEsOS4zIGwgMi40LDAgYyA0LDAgOC4xLC00LjkgOC4xLC05LjEgMCwtNC40IC00LjEsLTkuMSAtOC4zLC05LjEgbCAtMiwwIHogbSAtMS4yLDQuNyA0LjksMCAyLjQsNC41IGMgLTAuNCwwLjcgLTIuMSw0LjMgLTIuOSw0LjMgbCAtNSwwIC0yLjMsLTQuMyBjIDAuNCwtMC44IDIuMSwtNC40IDIuOSwtNC41IHogTSA5OC43LDY0LjUgaCAyLjkgdiAzLjggaCAyIHYgMS44IGMgMy4yLDAuNyA1LjMsMS4xIDcuNCwzLjEgMS4zLDEuMyAzLjUsNC4zIDMuNyw2LjcgbCAtMTAuNCwtMC4zIC05LjksMC4xIDAuMiwtMC4xIC05LjEsMC41IGMgMC40LC00LjcgNS4yLC05LjcgMTAuNCwtOS43IGggMC44IHYgLTIgaCAyIHYgLTMuOCB6IG0gMSwyMS4xIGMgLTUuMiwwIC05LjcsMC4yIC0xNC44LDAuMiAtNC40LDAgLTMuNSwtMi42IC0xLjgsLTIuOCAyLjEsLTAuMyA0LjksLTAuMSA2LjksLTAuNCA1LjMsLTAuOCAyMy42LC0wLjMgMjguMSwwLjggMC4yLDEuOCAwLjQsMS41IC0xLDIuNCBsIC0xNS44LC0wLjIgLTEuNiwwLjEgeiBtIC0yNi4xLDguMyBoIDIuOSB2IDE3LjIgaCAtMi45IHYgLTYuNyBoIC0zLjUgdiAtMy45IGggMy40IFYgOTMuOCBoIDAuMSB6IG0gNTAsMCBoIDMgdiA2LjcgaCAzLjIgdiAzLjkgaCAtMy4yIHYgNi43IGggLTMgViA5My44IHogbSAtMjUuNywtNS45IC0xMi40LDAuNCAwLDguMyAtNi4zLDAgMCwxMS45IDYuMywwIC0wLjEsMTcuMyAtNC42LDEuNiBjIDEuMSwxLjUgMTIuNSwzLjMgMTYsMy4zIGwgNi40LDAgYyAzLjYsMCAxNC43LC0xLjcgMTUuOCwtMy4zIGwgLTQuNSwtMS4zIDAsLTE3LjQgNi4zLDAgMCwtMTEuOSAtNi4zLDAgMCwtOC4zIC0xMi40LC0wLjQgLTQuNSwtMC4xIHogbSAxLjIsNC4yIDIuMSwwIGMgNS43LDAgMTAuOSw1LjggMTAuOSwxMS44IDAsNS45IC01LjIsMTEuOCAtMTAuOCwxMS44IGwgLTIuNCwwIGMgLTUuMiwwIC0xMC41LC01LjYgLTEwLjUsLTEwLjggbCAwLC0xLjggYyAwLC01LjUgNS4zLC0xMSAxMC43LC0xMC45IHogTSA4MCwxMzEuMyB2IC0xIGMgMS4zLDAuMSA1LjcsMS44IDcuNywyLjIgMi44LDAuNiA1LjgsMSA5LjEsMSBoIDYuNSBjIDMuNCwwIDYuMSwtMC40IDguOSwtMSAyLC0wLjQgNi41LC0yLjEgNy43LC0yLjIgdiAxIGMgMCwyLjkgLTEyLjUsNC41IC0xNi42LDQuNSBoIC02LjQgYyAtNC4xLDAgLTE2LjksLTEuNiAtMTYuOSwtNC41IGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5PVEhFUiBXQVRFUiBTVVBQTFkgTE9DQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTMuMiwxMTYuNSBjIDAsLTIuOSA0LjQsLTkuMyA1LjgsLTExLjggMi44LC01IDMuMSwtNi44IDQuNiwtMTMgMi4xLDEuNCAyLjIsNC4zIDMsNy4xIDAuOCwyLjggMS42LDQuOCAyLjksNyAyLjIsMy44IDYuNyw4IDUsMTQuMSAtMS42LDUuOCAtNS4yLDcuOCAtMTIuMiw3LjUgLTUuOCwtMC4yIC05LjEsLTQuOSAtOS4xLC0xMSB6IG0gLTEuMiwtMC40IHYgMC42IGMgMCw3LjUgNC42LDEyLjIgMTIsMTIuMiA2LjgsMCAxMiwtNC42IDEyLC0xMSB2IC0xLjMgYyAwLC01IC00LjcsLTEwIC02LjYsLTEzLjggLTEuMSwtMi4yIC0xLjYsLTUuNSAtMi4zLC04LjEgLTAuOSwtMy4zIC0yLjQsLTQgLTQuOCwtNS42IDAsMTMuNiAtMTAuMywyMCAtMTAuMywyNi44IHogbSA0LjgsMy42IGMgMCwyLjQgMS44LDQuNCAzLjgsNC40IDAuNywwIDEuNSwtMC42IDEuNywtMS4zIC0xLjYsLTAuNCAtMy4yLC0yLjUgLTMuNCwtNC40IGwgLTIuMSwxLjMgeiBNIDg5LjIsNzMgdiAxNS44IGggLTIuMSB2IC0xNS44IGwgMC42LC0wLjEgMS41LDAuMSB6IG0gLTEwLjQsMi4zIGggNi42IHYgMTEgSCA3OC44IHYgLTExIHogbSAzNy4yLDEuMSBjIDAsLTAuNSAwLjIsLTAuNiAwLjYsLTAuNiBoIDEuNSBjIDAuNSwwIDAuNiwwLjIgMC42LDAuNiB2IDkuMSBoIC0yLjggdiAtOS4xIHogbSAtMjQuOSwtMS4zIDIyLjgsMi40IHYgNi41IGwgLTIyLjgsMS45IHYgLTEwLjcgeiBtIC0yNywxMS44IGggMTIuOSB2IDEgbCA4LjMsMC4xIDEuMiwyLjQgMS42LDAuMyBjIDAuNiwwLjEgMSwtMC4yIDEuOCwtMC4zIGwgMC45LC0wLjYgMC4yLC0yLjQgMjIuOCwtMS42IGMgMS4yLDIuNSA0LjIsMS42IDYuNiwxIDAsLTAuNyAwLjIsLTAuOCAwLjIsLTEuNSB2IC05LjUgYyAwLC0xLjUgLTAuOCwtMi4xIC0yLjMsLTIuMSBoIC0yLjEgYyAtMy44LDAgMC4yLDIuNSAtNSwxLjYgLTIuMSwtMC40IC00LjYsLTAuNCAtNi43LC0wLjcgLTMuMywtMC41IC0xMC40LC0xLjMgLTEzLjUsLTEuMyAtMC4xLC0zLjEgLTUuNiwtMy4zIC01LjcsMC40IGggLTguNCB2IDAuNiBoIC0xMyBsIDAuMSwxMi40IDAsMCB6IG0gMTUuNiwtNC44IDAsMS45IDQuNiwwIDAsLTEuOSB6IG0gMCwtNC4yIDAsMS43IDQuNiwwIDAsLTEuNyB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSA5MSw3NS4xIDIyLjgsMi40IHYgNi41IGwgLTIyLjgsMS45IHYgLTEwLjcgeiBtIDI0LjksMS4zIGMgMCwtMC41IDAuMiwtMC42IDAuNiwtMC42IGggMS41IGMgMC41LDAgMC42LDAuMiAwLjYsMC42IHYgOS4xIGggLTIuOCB2IC05LjEgeiBNIDc4LjgsNzUuMyBsIDAsMTEgNi42LDAgMCwtMTEgLTYuNiwwIHogbSAwLjgsMi42IDQuNywwIDAsMS43IC00LjcsMCAwLC0xLjcgeiBtIDAsNC4yIDQuNywwIDAsMS45IC00LjcsMCAwLC0xLjkgeiBNIDEyMy41LDkxLjggYyAtMS40LDYuMiAtMS44LDggLTQuNiwxMyAtMS4zLDIuNSAtNS44LDguOSAtNS44LDExLjggMCw2LjEgMy4zLDEwLjggOS4xLDExIDcsMC4yIDEwLjUsLTEuNyAxMi4yLC03LjUgMS43LC02LjEgLTIuOCwtMTAuMyAtNSwtMTQuMSAtMS4zLC0yLjIgLTIsLTQuMyAtMi45LC03IC0wLjgsLTIuOCAtMC45LC01LjcgLTMsLTcuMSB6IG0gLTQuNiwyNi43IGMgMC4yLDEuOSAxLjgsNCAzLjQsNC40IC0wLjIsMC42IC0xLDEuMyAtMS43LDEuMyAtMiwwIC0zLjgsLTIuMSAtMy44LC00LjQgbCAyLjEsLTEuMyB6IE0gODkuMiw3MyB2IDE1LjggaCAtMi4xIHYgLTE1LjggbCAwLjYsLTAuMSAxLjUsMC4xIHpcIn1dLGlbXCJBQy5JQy5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSBJTkZSQVNUUlVDVFVSRVwiXT1hKFwi4oKsJMKjXCIpLGlbXCJHUi5JTi5JQy5QVUJMSUMgVkVOVUVTIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODcuOSw4Ny4zIGMgLTMuMiwwIC01LjgsMi42IC01LjgsNS44IDAsMi44IDIuMSw1LjIgNC44LDUuNyBsIDAsMy4zIC0zLjgsMCAwLDIgMy44LDAgMCw5LjQgMiwwIDAsLTkuNCAzLjgsMCAwLC0yIC0zLjgsMCAwLC0zLjMgYyAyLjcsLTAuNSA0LjgsLTIuOCA0LjgsLTUuNyAwLC0zLjIgLTIuNiwtNS44IC01LjgsLTUuOCB6IG0gMjQsMCBjIC0zLjIsMCAtNS44LDIuNiAtNS44LDUuOCAwLDIuOCAyLjEsNS4yIDQuOCw1LjcgbCAwLDMuMyAtMy44LDAgMCwyIDMuOCwwIDAsOS40IDIsMCAwLC05LjQgMy44LDAgMCwtMiAtMy44LDAgMCwtMy4zIGMgMi43LC0wLjUgNC44LC0yLjggNC44LC01LjcgMCwtMy4yIC0yLjYsLTUuOCAtNS44LC01LjggeiBtIC0yNCwyIGMgMi4xLDAgMy44LDEuNyAzLjgsMy44IDAsMi4xIC0xLjcsMy44IC0zLjgsMy44IC0yLjEsMCAtMy44LC0xLjcgLTMuOCwtMy44IDAsLTIuMSAxLjcsLTMuOCAzLjgsLTMuOCB6IG0gMjQsMCBjIDIuMSwwIDMuOCwxLjcgMy44LDMuOCAwLDIuMSAtMS43LDMuOCAtMy44LDMuOCAtMi4xLDAgLTMuOCwtMS43IC0zLjgsLTMuOCAwLC0yLjEgMS43LC0zLjggMy44LC0zLjggeiBtIDI0LjIsMzcuOCAwLC0zIC03Mi4xLDAgMCwzIHogbSAtMywtNi4yIDAsLTIuOCAtNjYuMiwwIDAsMi44IHogTSA2Ni44LDk4LjIgYyAwLDEuMyAtMC43LDIuNiAtMC43LDQuMyAtMCwxLjggLTAuMiwzLjEgLTAuMiw1IHYgMy4yIGwgMC42LDMuNiBoIDIuNyBsIC0wLjgsLTYuNCB2IC0xLjggYyAwLC04LjEgNSwtMTcuOSA5LjMsLTIxLjUgNS42LC00LjYgMTEuNiwtOS4xIDIxLjcsLTkuMSBoIDAuOSBjIDksMCAxNy4xLDQuNCAyMS42LDguOCAzLjIsMy4yIDQuMSw0LjcgNi40LDguNyAxLjQsMi40IDMuMyw4LjQgMy4zLDEyIHYgNC4zIGMgMCwxLjQgLTAuNywzIC0wLjcsNC40IHYgMC41IGggMi43IGwgMC42LC02LjQgdiAtMy44IGMgMCwtMS42IC0xLC01LjIgLTEuNCwtNi42IC0wLjgsLTIuNSAtMS4zLC0zLjYgLTIuMywtNS43IC0xLjgsLTMuOCAtMy44LC02LjQgLTYuNywtOS4zIC00LjYsLTQuNiAtMTMuNiwtOS42IC0yMi42LC05LjYgaCAtMi41IGMgLTcuOCwwIC0xNi42LDQuMSAtMjAuNiw3LjkgLTIuOCwyLjcgLTQuNCw0LjEgLTYuNyw3LjUgLTEuMSwxLjYgLTEuNSwzIC0yLjUsNC42IC0wLjksMS42IC0xLjIsNCAtMiw1LjIgelwifV0saVtcIkdSLklOLklDLlJFQ1JFQVRJT05BTCBBUkVBXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTYuNCw3OC44IDguMSwtMCBjIDAuOSwwIDIuNCw1LjcgMi40LDYuOSBsIDEuNSw0LjMgYyAwLDAuNCAyLDYuNiAyLDcgdiAwLjYgbCAtMTkuNCwtMCA1LjQsLTE4LjggeiBtIC0xOS45LC0wIDExLjEsMCAtMy41LDExLjIgYyAwLDEuNyAtMS45LDUuNyAtMS45LDYuOSB2IDAuNiBoIC0yMC44IHYgNy4yIGwgMTguNSwwIC0xLjIsMyAtMC4xLDAuOCAtMi42LDguMyAtMy42LDExLjUgYyAxLjEsMCA5LjMsMC4xIDkuNywtMC4xIDAuMiwtMC4xIDIsLTYuOCAyLjMsLTcuNyAwLjUsLTEuMiA0LjUsLTE1IDQuNSwtMTUuMiB2IC0wLjYgbCAyMy41LDAgNi43LDIzLjYgOS44LDAgLTEuNCwtNC44IC0wLjcsLTIuNiAtMi40LC03LjggLTAuOSwtMi44IC0xLjcsLTUuNyBoIDE1LjggdiAtNy4yIGggLTE4LjIgbCAtMi45LC04LjkgLTAuMSwtMC44IC0xLC0zIC0xLjcsLTYuMiBoIDEwLjYgdiAtNy4yIGggLTQ3LjkgdiA3LjIgbCAwLDAgMCwwIHogbSA2Mi4xLDE2LjkgMCwtNi4xIC0xNS4yLDAgMCw2LjEgeiBtIC02Mi4zLDAgMCwtNi4xIC0xNC45LDAgMCw2LjEgelwifV0saVtcIkdSLklOLklDLlNQRUNJQUwgTkVFRFMgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3My4xLDExMS4yIGMgMCwtMy44IDEsLTUuOCAyLjMsLTguNCAxLjQsLTIuOCAzLjMsLTMuOCA0LjYsLTUuOCBsIC0xLjEsLTguMiBjIC0yLjYsMC43IC03LjcsNi41IC05LjIsOSAtMi40LDQuMSAtMy44LDcuOSAtMy44LDE0LjIgdiAzLjMgYyAwLDIuMiAyLjIsOC4xIDMuMSw5LjYgMiwzLjIgMyw0LjUgNS41LDcuMSAzLjYsMy42IDEwLjcsNy4xIDE3LjksNy4xIGggMSBjIDQuOSwwIDkuOSwtMS42IDEzLjEsLTMuNiAxLjcsLTEgOC41LC02LjIgOC41LC03LjggMCwtMS4yIC0zLjEsLTYuNiAtMy41LC04LjQgLTEuMiwxLjUgLTEuNiwzIC0zLDQuOCAtMS4yLDEuNSAtMi4zLDIuNyAtMy44LDMuOCAtMi42LDIgLTYuOCw0IC0xMS4zLDQgaCAtMS4yIGMgLTEwLjIsMCAtMTkuMSwtOSAtMTkuMSwtMTkuMyB2IC0xLjQgbCAwLDAgeiBtIDguOSwtMzcuOSBjIDAuNSwwLjQgMC41LDIuOSAwLjUsNCBMIDg1LDEwNi44IGwgMjUuNCwwIDEwLDIzIGMgMS41LC0wLjEgNS41LC0xLjUgNy4xLC0yLjEgMS4yLC0wLjQgNi41LC0xLjQgNi41LC0yLjYgdiAtMC4yIGMgMCwtMC43IC0xLjksLTQuOCAtMiwtNi4zIGwgLTcuNiwyLjYgLTksLTIxLjYgSCA5MS42IGwgLTAuNCwtNiBoIDE3LjMgdiAtNS40IEggOTAuOCBsIC0xLjEsLTEyLjkgYyAyLjYsLTAuMiA1LjIsLTMuOSA1LjIsLTYuNyB2IC0yLjIgaCAtMC41IHYgLTAuOCBjIDAsLTAuOCAtMi4xLC0zLjEgLTIuNywtMy41IC0xLC0wLjcgLTMuMywtMS42IC00LjgsLTEuMyAtMi4yLDAuNCAtMy4yLDAuOCAtNC40LDIgLTAuNywwLjcgLTIuMiwzLjIgLTIuMiw0LjMgdiAxLjIgYyAwLDIuNCAwLjgsMy42IDEuNyw0LjkgbCAwLDAgeiBtIDAuNSw0IGMgMCwtMS4xIDAsLTMuNiAtMC41LC00IDAsMS4xIC0wLDMuNiAwLjUsNCB6XCJ9XSxpW1wiR1IuSU4uSUMuQURVTFQgREFZIENBUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDcsMTE4LjMgdiAtMC4yIGMgMCwtMTUuNSAyMi40LC0xNC43IDIyLjQsLTAuNiB2IDEuMyBjIDAsNS40IC01LjMsMTAuNCAtMTAuOCwxMC40IGggLTAuNiBjIC01LjksMCAtMTEsLTUuMSAtMTEsLTExIHogbSAtMS42LC0yMi4yIGggNC42IHYgMTAgYyAwLDAgLTMuMiwzLjMgLTMuOCw0LjMgLTAuNSwwLjggLTIuMiw0LjcgLTIuMiw1LjggdiAyLjMgYyAwLDYuOCA2LjYsMTMuNyAxMy4zLDEzLjcgaCAxIGMgNS44LDAgMTAuOCwtNSAxMSwtNSBoIDcuMSB2IC0xLjkgaCAtMy4yIGMgMC4yLC0wLjUgMC44LC0xLjMgMC44LC0xLjkgdiAtMTEgYyAwLC0xLjkgLTEsLTMuMyAtMi4xLC00IGggLTMuMyBsIC0wLjgsLTAuNyBjIDEuMSwtMC4zIDIsLTAuOSAyLC0yLjIgdiAtMC40IGMgMCwtMC41IC0xLC0xLjcgLTEuNiwtMS43IGggLTUgdiAtNS40IGMgMCwtMi43IC0xLjUsLTQuMiAtNC4yLC00LjIgaCAtMi4xIGMgLTUuOSwwIC00LjYsNS44IC00LjYsMTEuNiBsIC0wLjYsMC40IFYgOTQuNyBjIC0wLjQsLTAuMiAtMC40LC0wLjQgLTAuOCwtMC40IGggLTUuNCB2IDEuNyB6IG0gLTIyLjYsMSBjIDAsLTIuMiAzLjMsLTQuOCA0LjUsLTYuNiAxLjQsMSAxLjQsMS44IDMuNCwyLjggMS40LDAuNyAyLjYsMS40IDQsMS45IDIuNCwwLjkgMi4yLC0wLjEgNC4zLDEuOSAwLjksMC45IDEuOCwyLjUgMy41LDIuNSAwLjQsMCAwLjgsLTAuOCAwLjgsLTEuMyB2IC0xLjEgYyAwLC0yLjggLTMuMywtMy42IC01LjMsLTQuNSAtMi4zLC0wLjkgLTUuMywtMS42IC02LjEsLTMuOCAtMC44LC0yLjMgLTIuMiwtNC42IC0yLjksLTYuOSAtMC43LC0yLjEgLTEuOSwtNS4xIC00LjYsLTUuMSBoIC0wLjQgYyAtMywwIC03LjQsNy41IC04LjEsMTAuNCAtMC42LDIuMyAtMS42LDQuNyAtMi4xLDcuMiAtMC41LDIuOCAtMC42LDUuMiAtMS4xLDggLTAuMywxLjggMC4xLDIuMyAtMC42LDQgLTAuNCwxLjIgLTAuOCwyLjMgLTEuMiwzLjQgLTAuOSwyLjMgLTEuNyw0LjYgLTIuNSw2LjggLTAuOCwyLjEgLTQuOSwxMS44IC00LjksMTMuNSAwLDIuNiA2LjIsMS4zIDcuNywxLjEgLTAsLTEuOSAtMi4zLC0xLjYgLTMuMSwtMi43IDIuMSwtMy4xIDMuOCwtNi4zIDUuOCwtOS41IDEsLTEuNyA0LjYsLTkuMiA1LjQsLTkuOCAwLjYsMC40IDMsMy4xIDMuOCwzLjkgMS45LDEuOSAyLDEuOCAyLjgsNC44IDEuMSw0LjIgMS45LDcuNyAxLjksMTMuMSBsIDEuNywwLjIgNC4yLC0wIGMgMS4zLDAgMS44LC0wLjIgMi4zLC0xIC0wLjYsLTEgLTMuMSwtMS43IC00LjYsLTIuMSB2IC0xLjEgYyAwLC0wLjQgLTAuMSwtMC40IC0wLjQsLTAuOCB2IC0xMi4xIGMgLTEuNSwtMi4zIC0yLjksLTQuOSAtNC42LC03LjEgLTEuMSwtMS42IC0zLjgsLTUuMiAtMy44LC03LjYgdiAtMi41IGwgMCwwIHogbSAzMC4zLC05LjcgdiAxLjYgYyAwLDEuNSAyLjMsMy45IDQuMiwzLjkgaCAwLjggYyAyLjEsMCA0LjIsLTIuMyA0LjIsLTQuNSBWIDg3LjYgYyAwLC0yLjIgLTIuMiwtNC4yIC00LjUsLTQuMiBoIC0wLjEgYyAtMi4zLC0wIC00LjYsMiAtNC42LDQgeiBtIC0yOC40LC0xNS42IHYgMS43IGMgMCwwLjYgMSwyLjEgMS40LDIuNSAwLjYsMC42IDEuOCwxLjIgMi45LDEuMiBoIDEgYyAyLDAgNC4yLC0yLjIgNC4yLC00IHYgLTEuNCBjIDAsLTEuNiAtMi41LC0zLjkgLTQuNSwtMy45IGggLTAuNyBjIC0xLjgsMCAtNC4yLDIuMiAtNC4yLDMuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuQUdSSUNVTFRVUkUgQU5EIEZPT0QgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3OS41LDEyNy45IGggLTcuOCB2IC0yMS40IGMgMCwtMSA2LjgsLTEzLjMgNy40LC0xMy42IDEsLTAuNiAxMy45LC03LjEgMTQuMSwtNy4xIDAuNSwwIDEzLjIsNi4zIDE0LjQsNyAwLjQsMC4zIDcuNywxMy4xIDcuNywxMy43IHYgMjEuNCBoIC03LjYgViAxMTAuNCBIIDc5LjUgdiAxNy41IHogbSAzNy40LC0zOS40IGggMTUuNCB2IDM5LjggaCAtMTIuMSB2IC0xOC44IGggMi42IGMgLTAuNSwtMC44IC01LjgsLTkuOCAtNS44LC0xMCBWIDg4LjUgeiBtIDAuMiwtMS45IGMgMCwtNC40IDIuOSwtOC4yIDcuMiwtOC4yIGggMC40IGMgNC41LDAgNy42LDMuNyA3LjYsOC4yIGggLTE1LjIgdiAwIHogTSAxMDUuMiw4Mi4xIGggOC45IGMgLTAuMiwxLjYgLTAuOSwyLjUgLTAuOSw1IDAsMiAwLDMuOSAwLDUuOCAtMS40LC0xIC0wLjksLTIuOCAtMy4yLC00IC0xLjIsLTAuNiAtMy44LC0yIC00LjgsLTIuMyB2IC00LjYgeiBtIDAsLTIuOCBjIDAsLTIuOCAzLjgsLTcuNCA2LjksLTcuNCBoIDAuNiBjIDMuMSwwIDUuNSwxLjggNi43LDMuNyAtMC4yLDAuMiAtNC44LDQuMyAtNC44LDQuMyBoIC05LjUgdiAtMC42IHogbSAtMTEuOSwxLjUgYyAtMy4yLDEuNyAtNi42LDMuMiAtOS45LDQuOCAtMS43LDAuOSAtMy4zLDEuNSAtNSwyLjQgLTIuOCwxLjQgLTIuMywwLjcgLTQsMy4xIC0wLjksMS4zIC0xLjgsMy4yIC0yLjcsNC43IC0wLjksMS42IC0xLjksMyAtMi44LDQuNiAtMS42LDIuOSAtMy42LDYuNSAtNS40LDkuMSBoIDIuOCB2IDIyLjUgSCA4NCBWIDExNC43IGggMTkgdiAxNy4zIGggMzMuMyBWIDg3LjUgYyAwLC03LjUgLTQuMiwtMTMgLTExLjcsLTEzIGggLTEuNyBjIC0wLjgsLTIuOSAtNS45LC02LjUgLTEwLC02LjUgaCAtMC40IGMgLTYuNCwwIC0xMSw1LjkgLTExLDEyLjEgdiA0LjYgbCAtOC4yLC0zLjkgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDc5LjUsMTEwLjQgaCAyOC4xIHYgMTcuNSBoIDcuNiB2IC0yMS40IGMgMCwtMC42IC03LjIsLTEzLjQgLTcuNywtMTMuNyAtMS4xLC0wLjggLTEzLjgsLTcuMSAtMTQuNCwtNy4xIC0wLjEsMCAtMTMsNi41IC0xNC4xLDcuMSAtMC42LDAuNCAtNy4zLDEyLjYgLTcuMywxMy42IHYgMjEuNCBoIDcuOCB2IC0xNy41IHogbSAzNy40LC0xMC44IGMgMCwwLjEgNS4zLDkuMiA1LjgsMTAgaCAtMi42IHYgMTguOCBoIDEyLjEgdiAtMzkuOCBoIC0xNS40IHYgMTEgeiBtIDAuMiwtMTMgaCAxNS4xIGMgMCwtNC42IC0zLC04LjIgLTcuNiwtOC4yIGggLTAuNCBjIC00LjIsLTAgLTcuMiwzLjggLTcuMiw4LjIgeiBtIC0xMS45LDAgYyAxLjEsMC4yIDMuNiwxLjcgNC44LDIuMyAyLjIsMS4xIDEuNywzIDMuMiwzLjkgMCwtMiAwLC0zLjkgMCwtNS44IDAsLTIuNSAwLjcsLTMuNCAwLjksLTUgaCAtOC45IHYgNC42IHogbSAwLC03LjQgdiAwLjYgaCA5LjUgYyAwLDAgNC42LC00LjEgNC44LC00LjMgLTEuMiwtMS44IC0zLjYsLTMuNyAtNi43LC0zLjcgaCAtMC42IGMgLTMuMSwwIC02LjksNC42IC02LjksNy40IHpcIn1dLGlbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSQUwgTEFCT1JBVE9SWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjQsNzcuOSAtMC4xLDAuMyAyLjYsMC42IDAsLTAuMyB6IG0gMi4xLDcuMyAwLjQsLTMuMiAtMC4zLC0wLjEgLTAuNCwzLjIgeiBtIC0zLjgsLTE2LjggMC4xLC0wLjIgLTEuNCwtMC4zIDEsLTIuNiAtMC40LC0wLjMgLTEuNyw1LjcgMC4xLDAgMC4zLC0wLjEgMC43LC0yLjQgeiBtIC0xLDUuMyBjIDAuOCwwIDAuNSwtMS43IDAuOCwtMi4zIGwgLTAuNCwtMC4xIC0wLjQsMi40IHogbSAxLjQsLTUuNSAwLjYsLTIuNiAtMC40LC0wLjEgLTAuNiwyLjcgeiBtIDAuMiwtMi43IDAuMSwtMC4zIC0xLC0wLjIgLTAuMSwwLjIgeiBtIDExLjgsNjUuNiAwLDUuNiAzLjMsMCBjIDEuMSwwIDEuOSwtMC4yIDIuNCwtMC43IDAuNSwtMC41IDAuOCwtMS4yIDAuOCwtMi4xIC0xMGUtNiwtMC45IC0wLjMsLTEuNiAtMC44LC0yLjEgLTAuNSwtMC41IC0xLjMsLTAuNyAtMi40LC0wLjcgbCAtMy4zLDAgbSAwLC02LjIgMCw0LjYgMywwIGMgMSwwIDEuNywtMC4yIDIuMiwtMC42IDAuNSwtMC40IDAuNywtMSAwLjcsLTEuNyAtMTBlLTYsLTAuOCAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjYgLTIuMiwtMC42IGwgLTMsMCBtIC0yLjEsLTEuNyA1LjIsMCBjIDEuNiwxZS01IDIuOCwwLjMgMy42LDEgMC44LDAuNyAxLjMsMS42IDEuMywyLjggLTJlLTUsMC45IC0wLjIsMS43IC0wLjcsMi4yIC0wLjQsMC41IC0xLjEsMC45IC0xLjksMSAxLDAuMiAxLjgsMC43IDIuMywxLjQgMC42LDAuNyAwLjgsMS41IDAuOCwyLjYgLTFlLTUsMS40IC0wLjUsMi40IC0xLjQsMy4xIC0wLjksMC43IC0yLjIsMS4xIC0zLjksMS4xIGwgLTUuNCwwIDAsLTE1LjIgbSAtOS4yLDIgLTIuOCw3LjUgNS42LDAgLTIuOCwtNy41IG0gLTEuMiwtMiAyLjMsMCA1LjgsMTUuMiAtMi4xLDAgLTEuNCwtMy45IC02LjgsMCAtMS40LDMuOSAtMi4yLDAgNS44LC0xNS4yIG0gLTE2LDAgMi4xLDAgMCwxMy40IDcuNCwwIDAsMS43IC05LjQsMCAwLC0xNS4yIE0gOTguNiw5Mi41IGMgMC45LC0wLjIgMC44LC0xLjggMS4xLC0yLjYgbCAwLjksMC40IC0xLjQsNC4yIC0wLjYsLTIgeiBtIC0wLjIsLTAuNCAwLjEsMC4yIGMgLTAuNSwtMC4xIC0wLjgsLTEuMyAtMC44LC0xLjkgbCAwLjQsMC42IC0wLjMsLTIuMiAxLjYsMC44IGMgLTAsMC43IC0wLjQsMi4zIC0wLjksMi40IHogbSAtMC45LC0yLjMgLTAuNiwtMS40IGMgMC40LDAuMSAwLjYsMC4zIDAuNiwwLjkgdiAwLjUgeiBtIDIuNiwtNC40IC0wLjYsMy45IC0xLjcsLTAuOCB2IC0zLjQgLTAuMyBsIDIuMywwLjYgeiBtIC0yLjYsLTEuMSAwLjQsMC4xIHYgMC40IGggLTAuNCB2IDMuNSBsIC0wLjgsLTAuNCAwLjEsMC40IGggLTAuMiBjIDAsLTAuOSAtMS4yLC0yLjggLTEuNiwtMy41IDAuMSwtMC4xIDAuMSwtMC4xIDAuMSwtMC40IHYgLTAuNCBsIDIuNCwwLjYgMCwtMC40IHogbSA2LjEsLTEuNyAyLjUsMC42IHYgMC40IGMgMCwwLjIgMCwwLjIgMC4xLDAuMyAtMS4yLDAgLTEuOSwwLjQgLTIuOCwwLjggbCAwLjIsLTIgeiBtIC02LjEsMS43IC0yLjQsLTAuOCAwLjEsLTEuOCB2IC0xIGwgMi40LDAuNSAtMC4yLDMgeiBtIDguNiwtMS42IGMgLTAuMywwIC0yLjMsLTAuNCAtMi40LC0wLjYgMCwwIDAuMiwtMi4zIDAuMiwtMi43IGwgMi4yLDAuNCAwLjEsMS42IC0wLDEuMiB6IG0gLTEyLjcsLTIuNCBjIDAuNCwwIDAuNywwLjIgMS4xLDAuMiAwLjgsMC4yIDAuNCwwLjEgMC40LDAuNyB2IDIuMSBjIC0wLjMsLTAgLTAuNywtMC4yIC0xLC0wLjMgLTAuNywtMC4yIC0wLjUsMC4xIC0wLjUsLTAuNCB2IC0yLjQgeiBtIDEwLjcsLTQuMiAxLjcsMC40IDAuMywzIC0yLjIsLTAuNCAwLjIsLTMgeiBtIC02LjQsNS4yIHYgLTAuNCBsIC0yLjQsLTAuNSAwLjMsLTIuOCAyLjQsMC41IC0wLjIsMi45IGggMC4zIHYgMC40IGggLTAuMyB6IG0gLTQsLTQuMiAxLjYsMC40IC0wLjMsMi45IC0xLjUsLTAuNCAwLjIsLTIuOSB6IG0gNy42LDEuNCAwLjMsLTMuMSAyLjQsMC42IC0wLjMsMyAtMi40LC0wLjUgeiBtIC0wLjQsLTAuMSAwLjQsMC4xIHYgMC40IGMgMC40LDAgMi4zLDAuNCAyLjQsMC42IDAsMC4xIC0wLjIsMi4zIC0wLjIsMi42IC0wLjgsMCAtMS42LC0wLjQgLTIuMywtMC40IC0wLjIsMCAtMC4yLDAuMiAtMC4yLDAuNCBsIDIuNCwwLjUgLTAuMiwyLjIgaCAwLjIgYyAtMC41LDAuNyAtMS4xLDEuNiAtMS40LDIuNCAtMC4zLDAuOCAtMC43LDIuMSAtMS4xLDIuOCBsIC0wLjksLTAuNCAwLjYsLTQgaCAtMC4yIGwgLTAuMiwtMC4xIHYgLTAuNCBsIC0yLjMsLTAuNyAwLjIsLTMgMi41LDAuNSB2IC0wLjMgaCAwLjQgbCAwLjIsLTIuOCBoIC0wLjMgbCAtMC4zLDIuNyAtMi40LC0wLjQgMC4yLC0yLjkgYyAtMC4zLC0wLjEgLTAuMiwwIC0wLjMsLTAuNCBoIDAuMiBsIDAuMiwwLjEgMC40LC0zLjIgMi40LDAuNiAtMC4zLDMuMSB6IG0gMy4yLC01LjQgdiAtMC4zIGwgMC4zLDAuMSB2IDAuMyBjIDEsMC4xIDEuMSwwLjEgMS4yLDEgMCwwLjMgMC4yLDEuOCAwLjMsMS45IGwgLTEuNywtMC4zIHYgMC40IGggLTAuMyB2IC0wLjUgbCAtMi40LC0wLjYgMC4zLC0yLjUgMi4zLDAuNCB6IG0gMC4yLC0wLjIgMC4yLC0yLjkgYyAwLjYsMC4xIDAuNywyLjQgMC44LDMuMSBsIC0xLC0wLjIgeiBtIC01LjEsLTAuOSAyLjQsMC41IC0wLjMsMi42IC0yLjQsLTAuNiAwLjQsLTIuNSB6IG0gNC45LDAuOCBjIC0zLjMsLTAuOCAtMiwwIC0yLC0zLjMgbCAyLjIsMC40IC0wLjIsMi45IHogbSAtNC40LC0zLjggYyAzLjIsMC44IDEuOSwtMC4yIDEuOSwzLjIgbCAtMi4zLC0wLjUgMC40LC0yLjcgeiBtIC0yLjUsLTAuNCAyLjEsMC40IC0wLjQsMi43IC0yLjIsLTAuNCAwLjQsLTIuNiB6IG0gNy4xLDEuMyB2IC0wLjQgbCAtMi4yLC0wLjQgMC4yLC0yLjYgYyAwLjMsMCAwLjcsMC4xIDEuMSwwLjIgMC42LDAuMSAwLjUsMCAwLjcsMC42IDAuMywxIDAuMywwLjkgMC4zLDIuMiBsIDAuMywwLjQgLTAuNCwwLjEgeiBtIC00LjEsLTMuOSAxLjgsMC40IC0wLjIsMi42IC0yLjEsLTAuNCAwLjQsLTIuNiB6IG0gMi4zLC0yLjIgMS40LDIuNiAtMS41LC0wLjIgMC4xLC0yLjQgeiBtIC0xLjYsLTEuNiAwLC0wLjEgMS4yLDEuMiAtMC4xLDAgYyAwLjMsLTAuMSAwLjMsLTAuMSAwLjQsMC4zIGwgLTAuMiwtMC4yIC0wLjIsMi42IC0xLjgsLTAuNCAwLjcsLTMuNSB6IG0gLTIuOSwzIGMgMC41LC0xLjEgMC4zLC0zLjQgMS45LC0zLjQgMC4zLDAgMC4yLDAgMC41LDAuMSBsIC0wLjYsMy43IC0xLjgsLTAuNCB6IG0gLTAuNCwtMC4xIDAuNCwwLjEgdiAwLjMgbCAxLjgsMC40IC0wLjQsMi42IC0yLjEsLTAuNCB2IDAuMiBsIC0wLjEsMC4yIC0wLjIsLTAuMSBoIC0wLjIgbCAtMC41LDIuNiAtMS42LC0wLjMgdiAwLjMgYyAwLjUsMCAxLDAuMyAxLjQsMC4zIDAuMiwwIDAsLTAuMiAwLjUsLTAuMiB2IDAuNCBsIDIuMiwwLjQgLTAuMywyLjQgLTIuNCwtMC42IHYgMC40IGwgMi4zLDAuNiAtMC4zLDMuMSAtMi40LC0wLjYgMC40LC0zLjIgaCAtMC40IGMgLTAsMC44IC0wLjMsMS43IC0wLjMsMi40IC0wLDAuOCAtMCwwLjcgLTAuNywwLjUgLTAuMiwtMCAtMC45LC0wLjEgLTAuOSwtMC4zIC0wLC0wLjMgMC4yLC0yIDAuMywtMi40IDAuMiwtMS4yIDAuNSwtMC40IDEuNywtMC4zIGwgMC4xLC0wLjMgYyAtMC4yLC0wLjEgLTEuNiwtMC4zIC0xLjYsLTAuNSAwLC0wLjggMC40LC0xLjUgMC40LC0yLjMgLTAuNiwwLjEgLTAuNywyLjMgLTAuOCwzIC0wLjEsMC44IC0wLjQsMi42IC0wLjQsMy4zIDAsMC44IC0wLjIsMi40IC0wLjIsMy41IDAsMS4zIC0wLjEsMi40IC0wLjEsMy44IGggMC4zIHYgLTAuOSBsIDEuNSwwLjQgdiAxIGwgLTMuNCwtMC41IGggLTAuMSBjIC01LDAgLTguOCw5LjcgLTguOCwxNS40IDAsMi4zIDAuOCw1LjQgMiw2LjIgMC43LC0xLjQgMS4zLC0zLjEgMiwtNC42IDAuOCwtMS41IDEuNCwtMy4xIDIuMSwtNC42IDAuMywtMC43IDAuNywtMS41IDEsLTIuMiAwLjQsLTAuOCAwLjgsLTEuNSAxLjgsLTEuMiAwLjksMC4zIDEuOSwzLjIgMi4xLDQuNiAwLjUsMy44IDAsOSAwLjYsMTIuNiAwLjcsNCAyLjMsNi40IDUuNCw4IDEsLTAuNCAyLjUsLTAuNiAzLjQsLTEuMiAwLjksLTAuNiAxLjgsLTEuMiAyLjQsLTIuMiAxLjIsLTEuOCAyLC00LjEgMiwtNy4yIGwgMCwtMC42IC0wLjMsLTUuNiB2IC0wLjMgYyAwLC0yLjcgMC41LC04LjMgMi44LC04LjMgaCAwLjEgYyAxLjQsMCAyLDAuNiAyLjYsMS40IDAuNiwwLjggMS4yLDEuNCAxLjgsMi4yIDEuMiwxLjUgMi42LDIuOSAyLjYsNS41IHYgMC42IGwgMC40LDAuMSBjIDAuNCwtMS42IDEuOCwtMi44IDEuOCwtNS4yIHYgLTEuNSBjIDAsLTMuNSAtMS40LC02LjIgLTMsLTguMyAtMC44LC0xLjEgLTEuOCwtMiAtMi44LC0yLjggLTAuNywtMC41IC0yLjcsLTEuOSAtMy44LC0xLjkgbCAtMC44LC0wIC0yLjMsMC40IGMgLTAuMiwtMC44IDAuMSwtMiAtMC4xLC0zLjEgLTAuMSwtMC44IC0wLjIsLTIuNSAtMC4yLC0zLjMgLTAuMiwtMi4xIC0wLjUsLTQuMiAtMC45LC02LjEgLTAuNiwtMy4zIC0yLC04LjIgLTQuNiwtOS40IHYgMC4zIGwgLTAuNCwtMC4xIDAuMSwtMC4zIC0wLjgsLTAuMSBjIC0wLjksLTAuMSAtMS45LDAuOCAtMi4zLDEuMyAtMC4yLDAuMyAtMS43LDIgLTAuOCwyIDAuMiwtMC42IDEuMywtMi4yIDEuOCwtMi40IGwgLTAuOCwyLjcgeiBtIDMsMjAuNCAxLjYsMC41IDAuMiwtMCBjIC0wLjEsLTAuNSAtMS40LC0wLjYgLTEuOCwtMC44IHYgMC40IHogbSAzLjYsLTkuOCAwLjIsLTIuNiAtMC4yLC0wLjEgLTAuMiwyLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTguNiw5Mi41IDAuNiwyIDEuNCwtNC4yIC0wLjksLTAuNCBjIC0wLjMsMC43IC0wLjIsMi4zIC0xLjEsMi42IHogbSAtMC42LC0xLjQgLTAuMywtMC42IGMgMCwwLjYgMC40LDEuOCAwLjgsMS45IGwgLTAuMSwtMC4yIGMgMC42LC0wLjIgMC45LC0xLjggMSwtMi40IGwgLTEuNiwtMC44IDAuMiwyLjIgeiBtIDIuNCwtNS45IGMgMC40LDAuMiAxLjcsMC4zIDEuOCwwLjggbCAtMC4yLDAgLTEuNiwtMC41IC0wLjYsNCAwLjksMC41IGMgMC40LC0wLjcgMC44LC0yIDEuMSwtMi44IDAuNCwtMC44IDEsLTEuNyAxLjQsLTIuNCBoIC0wLjIgbCAwLjIsLTIuMyAtMi40LC0wLjUgLTAuNCwzLjIgeiBtIC0xLDQuMSAwLjYsLTMuOSAtMi4zLC0wLjYgMCwwLjIgMCwzLjQgeiBtIDAuNiwtNC4yIDAuNCwtMy4yIC0yLjUsLTAuNSAtMC4yLDMgeiBtIDAuNywtNi42IDAuMywtMy4xIC0yLjQsLTAuNiAtMC40LDMuMiB6IG0gLTUuMSwtNC44IC0wLjEsMC4zIGMgLTEuMiwtMCAtMS41LC0wLjkgLTEuNywwLjMgLTAuMSwwLjQgLTAuMywyLjEgLTAuMywyLjQgMCwwLjIgMC43LDAuMiAxLDAuMyAwLjcsMC4yIDAuNywwLjIgMC43LC0wLjUgMCwtMC44IDAuMywtMS43IDAuNCwtMi40IGggMC40IGwgLTAuNCwzLjIgMi40LDAuNiAwLjQsLTMuMiAtMi4zLC0wLjUgdiAtMC40IGwgMi4zLDAuNiAwLjMsLTIuNCAtMi4yLC0wLjQgYyAtMC4zLDAuNiAwLDIuMyAtMC44LDIuMyB6IG0gOC4zLC0xIDAuMiwtMi45IC0yLjIsLTAuNCBjIDAsMy40IC0xLjMsMi42IDIsMy4zIHogbSAtNi4yLDExLjcgLTAuNCwtMC4xIHYgMC40IGwgLTIuNCwtMC42IHYgMC40IGMgMCwwLjIgLTAsMC4yIC0wLjEsMC40IDAuNCwwLjcgMS42LDIuNiAxLjYsMy41IGggMC4yIGwgLTAuMSwtMC40IDAuOCwwLjQgdiAtMy41IGggMC40IGwgLTAsLTAuNCAwLDAgeiBtIC0wLjMsNS40IDAsLTAuNiBjIDAsLTAuNSAtMC4yLC0wLjggLTAuNiwtMC45IGwgMC42LDEuNCB6IG0gMi42LC00LjggMCwwLjQgMC4yLDAuMSAwLjIsMCAwLC0wLjMgeiBtIDMuMywtMC40IGMgMC44LC0wLjQgMS41LC0wLjggMi44LC0wLjggLTAuMSwtMC4xIC0wLjEsLTAuMSAtMC4xLC0wLjIgdiAtMC40IGwgLTIuNSwtMC42IC0wLjIsMiB6IG0gLTguMywtMS4xIDIuNCwwLjggMC4yLC0zIC0yLjUsLTAuNSAwLDEgeiBtIC0xLjgsLTAuOCBjIDAsMC41IC0wLjIsMC4yIDAuNSwwLjQgMC4zLDAuMSAwLjYsMC4yIDEsMC4zIHYgLTIuMSBjIDAsLTAuNyAwLjQsLTAuNiAtMC40LC0wLjcgLTAuNCwtMC4xIC0wLjcsLTAuMiAtMS4xLC0wLjIgdiAyLjQgeiBtIDcuNSwtNCBoIDAuMyBsIC0wLjIsMi44IGggLTAuNCB2IDAuNCBsIDAuMywwLjEgYyAwLC0wLjIgMCwtMC40IDAuMiwtMC40IDAuNywwIDEuNiwwLjQgMi4zLDAuNCAwLC0wLjMgMC4zLC0yLjUgMC4yLC0yLjYgLTAsLTAuMiAtMiwtMC42IC0yLjMsLTAuNiB2IC0wLjQgbCAtMC40LC0wLjEgdiAwLjMgeiBtIDMuMywtOC45IDAuNCwtMCAtMC4zLC0wLjQgYyAwLC0xLjMgLTAsLTEuMiAtMC4zLC0yLjIgLTAuMiwtMC42IC0wLC0wLjUgLTAuNywtMC42IC0wLjQsLTAuMSAtMC44LC0wLjIgLTEuMSwtMC4yIGwgLTAuMiwyLjYgMi4yLDAuNCB2IDAuNCB6IG0gLTIuNCwtMC45IDAuMiwtMi42IC0xLjgsLTAuNCAtMC40LDIuNiB6IG0gNC40LDEzLjggMCwtMS4yIC0wLjEsLTEuNiAtMi4yLC0wLjQgYyAwLDAuNCAtMC4yLDIuNyAtMC4yLDIuNyAwLjEsMC4yIDIuMiwwLjYgMi40LDAuNiB6IG0gLTcuOCwtNC42IC0wLjIsMi45IDIuNCwwLjQgMC4zLC0yLjcgeiBtIC0wLjIsMy4yIDAsLTAuNCAtMC4zLDAgMC4yLC0yLjkgLTIuMywtMC41IC0wLjMsMi44IDIuNCwwLjUgMCwwLjQgeiBtIC0zLjEsLTEgMC4zLC0yLjkgLTEuNiwtMC40IC0wLjIsMi45IHogbSAxMS4xLC0wLjggLTAuMywtMyAtMS43LC0wLjQgLTAuMiwzIHogbSAtMiwtNi42IC0yLjMsLTAuNCAtMC4zLDIuNSAyLjQsMC42IHogbSAtMC40LDYgMC4yLC0zIC0yLjQsLTAuNiAtMC4yLDMuMSB6IG0gLTIuNCwtNCAwLjMsLTIuNiAtMi4zLC0wLjUgLTAuMywyLjUgeiBtIC0yLjksMy4yIDAuMSwtMC4zIC0wLjIsLTAuMSBoIC0wLjIgYyAwLDAuNCAtMC4xLDAuMyAwLjIsMC40IHogbSA1LjgsLTIuNCAxLjcsMC4zIGMgLTAuMSwtMC4yIC0wLjIsLTEuNiAtMC4zLC0xLjkgLTAuMSwtMSAtMC4yLC0xIC0xLjIsLTEgbCAtMC4yLDIuNiB6IG0gMCwwLjMgMCwtMC4zIC0wLjMsLTAuMSAwLDAuNCB6IG0gMC4yLC0zIDAsLTAuMyAtMC4yLC0wLjEgMCwwLjMgeiBtIDAsLTAuMyAxLDAuMiBjIC0wLjEsLTAuNiAtMC4yLC0zIC0wLjgsLTMgbCAtMC4yLDIuOSB6IG0gLTUuMSwtMS4xIDIuMywwLjUgYyAwLC0zLjQgMS4zLC0yLjUgLTEuOSwtMy4yIGwgLTAuNCwyLjcgeiBtIC0yLjUsLTAuNiAyLjIsMC40IDAuNCwtMi43IC0yLjEsLTAuNCB6IG0gMS4xLC01LjYgLTAuNiwyLjYgMi4xLDAuNCAwLjQsLTIuNiAtMS44LC0wLjQgMCwtMC4zIC0wLjQsLTAuMSAtMC4xLDAuMyB6IG0gLTAuNiwyLjggMCwtMC4yIC0wLjQsMCAtMC4xLDAuMiAwLjIsMCAwLjIsMC4xIHogbSAwLjIsLTIuOSAtMSwtMC4yIC0xLDIuNiAxLjQsMC4zIHogbSA0LjgsMC43IDEuNSwwLjIgLTEuNCwtMi42IHogbSAtMi4xLC0wLjQgMS44LDAuNCAwLjIsLTIuNiAwLjIsMC4yIGMgLTAsLTAuNCAtMCwtMC4zIC0wLjQsLTAuMyBsIDAuMSwtMC4xIC0xLjIsLTEuMSAtMC4xLDAuMSAtMC43LDMuNSB6IG0gLTIuMiwtMC40IDEuOCwwLjQgMC42LC0zLjcgYyAtMC40LC0wIC0wLjIsLTAuMSAtMC42LC0wLjEgLTEuNiwwIC0xLjQsMi4zIC0xLjksMy40IHpcIn1dLGlbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS42LDEwNy4xIC0wLjQsLTIuMyAtMC4yLC0yIGggMTYuMyBsIC0xLjcsMTMuMiBoIC0xMyB2IC0wLjYgbCAtMSwtOC4yIHogbSAxNi4xLDQuMyAwLjQsLTIuMyAwLjksLTYuMiAtMC4xLC0xLjYgaCAtMTkuNiBsIDEuNCwxMC43IDAuMywwLjYgMC41LDQuMyAtMC4xLDAuNiBoIDE1LjcgdiAtMS42IGwgMC42LC00LjYgeiBNIDEyMyw4Mi42IGMgLTMuMywtMC44IC00LjYsMC40IC02LjgsMS45IGggLTEuNCBjIC0wLjMsMC40IC0wLjYsMS4yIC0xLjIsMS4yIGggLTEgYyAtMi4yLDAgLTMuOSwtMS44IC01LjgsLTEuOCBoIC0wLjYgYyAtMC45LDAgLTIuMSwwLjggLTMuOSwwLjggLTUuMSwwIC0zLjksMC4yIC04LDEuNSAtMiwwLjYgLTYuMiwwLjggLTguOSwwLjggaCAtNS4yIGMgLTIuOCwwIC01LC0wLjYgLTcuMiwtMC42IC0yLjYsMCAtNC43LDAuMiAtNy40LDAuMiAtMC41LDAgLTAuNSwtMC4xIC0wLjgsLTAuMiAtMi40LDEuMiAtMy4xLDQuMiAtMy4xLDcuOCAwLDMuNiAtMC42LDYuMyAtMC42LDEwLjEgdiAwLjIgYyAwLDAuNiAwLjEsMC42IDAuMiwxIGwgMSwtMC4zIDAsLTAuNSBoIDAuNCBsIDAuMiwtMTIuMiBoIDAuMiBjIDAsMiAwLjEsNC41IDAuNiw2IDAuNCwxLjIgMS43LDMuOCAxLjcsNC45IHYgMC4yIGwgLTEuNiwxMy4yIGggMy43IGMgMCwtMS40IC0wLjQsLTEuMSAtMC40LC0yLjEgdiAtMi4xIGMgMCwtMS40IDEsLTQuMiAyLjMsLTQuMyAwLjQsMS41IDMuMywzLjcgMy4zLDYuOCB2IDAuNiBjIDAsMC42IC0wLjEsMC42IC0wLjIsMSAwLjQsLTAuMSAwLjUsLTAuMiAxLC0wLjIgMS4yLDAgMy41LDAuNyAzLjUsLTAuNCAwLC0wLjMgLTEuOSwtMy4yIC0yLjIsLTMuNSAtMC40LC0wLjUgLTEuMywtMy42IC0xLjMsLTQuMyB2IC0wLjIgYyAwLC0wLjIgMS4yLC0yLjMgMS4yLC00LjggNCwyLjIgMy41LDIuNyA5LjksMi43IDIuMiwwIDQuMiwwLjUgNiwwLjQgMSwtMCAzLjMsLTEuNCA0LjMsLTEuOSAwLDEuMiAwLjQsMi40IDAuMiwzLjMgbCAtMS4yLDggYyAxLDAuMyAxLjYsMC42IDIuOCwwLjYgaCAwLjYgLTAuMiBsIDAuNywtMTEuMyBjIDAuNiwwLjQgMi44LDcuMSAyLjYsOC40IGwgLTAuMywyLjMgYyAwLjgsMC40IDEuNSwwLjYgMi42LDAuNiBoIDEgbCAtMS4yLC03LjQgLTAuMSwtMC44IGMgMCwtMC45IDEuNiwtMC43IDIuNSwtMS4yIDAuNiwtMC4zIDEuNCwtMS4yIDEuOCwtMS43IDEuMSwtMS41IDIsLTIuNyAzLC00LjIgMy45LC01LjQgMy41LC0yLjQgMTAuMiwtNCB2IC0wLjYgaCAxLjYgYyAxLDAgMS44LC0wLjggMS44LC0xLjggdiAtMC40IGMgMCwtMi40IC0yLjUsLTIuNSAtMi41LC01LjYgbCAtMy4zLC0zLjQgNS40LC0yLjkgeiBtIDE0LjYsMjguOSBjIDAuNCwtMC40IDAuNCwtMS41IDAuNCwtMi4zIGwgLTAuNCwyLjMgeiBtIC0xNi4xLC00LjMgYyAwLC0wLjggMCwtMS45IC0wLjQsLTIuMyBsIDAuNCwyLjMgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTIxLjIsMTA0LjkgYyAwLjQsMC40IDAuNCwxLjUgMC40LDIuMyBsIDEsOC4yIHYgMC42IGggMTMgbCAxLjcsLTEzLjIgaCAtMTYuMyBsIDAuMiwyLjEgelwifV0saVtcIkdSLkkuRkYuU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6IU4mJk8sZmlsbDohIU4mJk8sZDpcIm0gMTE1LDcwIDIwLDAgMCw1NSAtMjAsMCB6IG0gLTI1LDUgMjAsMCAwLDQ1IC0yMCwwIHogbSAtMjUsLTUgMjAsMCAwLDU1IC0yMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMTAsMTAwIDUsMCBtIC0zMCwwIDUsMCBtIDEwLDI3IDAsLTcgbSAtMjAsMTUgYyAxMCwtMTAgMzAsLTEwIDQwLDBcIn1dLGlbXCJHUi5JTi5JQy5GQVJNL1JBTkNIXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE5LjksMTE5IHYgLTAuMiBjIDAsLTIgMS41LC0zLjcgMy41LC0zLjcgaCAwLjQgYyAyLjIsMCAzLjcsMS42IDMuNyw0IHYgMC42IGMgMCwxLjIgLTIuMSwyLjggLTMuNywyLjggaCAtMC40IGMgLTEuOSwwIC0zLjUsLTEuNiAtMy41LC0zLjUgeiBtIC01MiwtMTAuNyBjIDEuMywtMiAxLjEsLTIuNyAzLjIsLTQuNCAxLjMsLTEgMy4zLC0xLjkgNS41LC0xLjkgaCAwLjYgYyA0LjcsMCA5LDQuMSA5LDguOCB2IDEuMSBjIDAsNSAtNCw5LjIgLTguOCw5LjIgSCA3Ni45IGMgLTUuNCwwIC05LjQsLTQuMiAtOS40LC05LjYgMCwtMS40IDAuNCwtMS42IDAuNCwtMyBsIDAsMCB6IG0gNy45LC0yMC4yIGMgLTAuOCwwIC0xLjUsLTQuNCAtMS44LC01LjMgLTAuMiwtMSAtMS4zLC00LjYgLTEuMywtNS41IGggMjQuMSBjIDAuNSwwIDEuMywtMC44IDEuMywtMS4zIHYgLTIuMiBjIDAsLTAuNyAtMC44LC0xLjEgLTEuNSwtMS4xIGggLTMxLjggYyAtMC43LDAgLTEuNSwwLjQgLTEuNSwxLjEgdiAyLjIgYyAwLDAuNSAwLjgsMS4zIDEuMywxLjMgaCAzLjUgbCAyLjYsMTYgLTYuOCwyLjUgMi44LDMuNCBjIC0xLDEuMyAtMi4zLDIuMSAtMy42LDQuMiAtMC40LDAuOCAtMS45LDQuNCAtMS45LDUuNSB2IDIuMiBjIDAsNS40IDEuNiw4LjggNC4zLDExLjUgMi4zLDIuMyA2LjUsNC44IDExLDQuOCBoIDAuNCBjIDguOCwwIDE1LjgsLTcuNCAxNS44LC0xNiBoIDEzLjQgYyAwLjYsMCAxLjksMS40IDIuNCwxLjggaCA4LjYgYyAtMS4xLDEuNiAtMi4yLDIuOSAtMi4yLDUuNyAwLDQuNiAzLjksOC42IDguNiw4LjYgNC40LDAgOC44LC0zLjggOC44LC03LjkgdiAtMiBjIDAsLTEuMiAtMS41LC0zLjQgLTIsLTQuNCBoIDcuMiBsIDEsLTQuNiBoIC03LjIgdiAtMC42IGwgMS4yLC04LjEgLTAuMSwtMy4zIGMgMCwtMC42IC0xLjcsLTIuMSAtMi4yLC0yLjQgbCAtMTYsLTAuNSBWIDc4LjIgYyAwLC0wLjUgLTAuNCwtMC45IC0wLjksLTAuOSAtMC41LDAgLTAuOSwwLjQgLTAuOSwwLjkgdiAxNS40IGMgLTIuMiwtMC4yIC02LC0wLjQgLTguMSwtMC40IC0xLjMsMCAtMi45LDAuMSAtNC4yLDAgLTIuMSwtMC4xIC0yLC0xLjMgLTIuOSwtMS4zIGggLTQuNiBsIDIsMTIuMyBIIDkxLjEgViA5OC42IEMgOTEuMSw5Ny44IDg3LjEsOTQuNCA4Ni4xLDk0LjQgSCA3OC43IFYgODkuOCBMIDc3LjUsODguMSA3NS44LDg4IHogTSA4OC4xLDkyIGMgMCwwLjUgMC4xLDAuMiAwLjIsMC45IGggMC42IGMgMC45LDAgOC41LC02LjQgMTAuMSwtNi44IFYgODUuNCBjIDAsLTAuNSAtMC4yLC0wLjYgLTAuNiwtMC42IGggLTAuNCBDIDk3LjUsODQuNyA4OC4xLDkxLjYgODguMSw5MiB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTkuOSwxMTkgYyAwLDEuOSAxLjYsMy41IDMuNSwzLjUgaCAwLjQgYyAxLjYsMCAzLjcsLTEuNiAzLjcsLTIuOCB2IC0wLjcgYyAwLC0yLjMgLTEuNSwtNCAtMy43LC00IGggLTAuNCBjIC0yLDAgLTMuNSwxLjcgLTMuNSwzLjcgdiAwLjIgeiBtIC01MiwtMTAuNyBjIDAsMS40IC0wLjQsMS43IC0wLjQsMy4xIDAsNS40IDQuMSw5LjYgOS40LDkuNiBoIDAuNiBjIDQuOCwwIDguOCwtNC4zIDguOCwtOS4yIHYgLTEuMSBjIDAsLTQuNyAtNC4zLC04LjggLTksLTguOCBoIC0wLjYgYyAtMi4yLDAgLTQuMywwLjkgLTUuNSwxLjkgLTIuMiwxLjcgLTEuOSwyLjQgLTMuMiw0LjQgelwifV0saVtcIkdSLklOLklDLkdSQUlOIFNUT1JBR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuOCw2OS42IGMgMC40LDAuMSAwLjksMC41IDEuMywxIDAuNCwwLjUgMC44LDEuMiAxLjMsMiBsIDIuMSw0LjEgLTIuMiwwIC0xLjksLTMuOSBjIC0wLjUsLTEgLTEsLTEuNyAtMS41LC0yIC0wLjUsLTAuMyAtMS4xLC0wLjUgLTEuOSwtMC41IGwgLTIuMiwwIDAsNi40IC0yLjEsMCAwLC0xNS4yIDQuNiwwIGMgMS43LDEuNWUtNSAzLDAuNCAzLjksMS4xIDAuOSwwLjcgMS4zLDEuOCAxLjMsMy4zIC0xZS01LDEgLTAuMiwxLjcgLTAuNywyLjQgLTAuNCwwLjYgLTEuMSwxLjEgLTEuOSwxLjMgbSAtNS4xLC02LjQgMCw1LjQgMi42LDAgYyAxLDhlLTYgMS43LC0wLjIgMi4yLC0wLjcgMC41LC0wLjUgMC44LC0xLjEgMC44LC0yIC0xZS01LC0wLjkgLTAuMywtMS42IC0wLjgsLTIgLTAuNSwtMC41IC0xLjIsLTAuNyAtMi4yLC0wLjcgbCAtMi42LDAgbSAtMTIuMywtMC4zIGMgLTEuNSwxLjRlLTUgLTIuNywwLjYgLTMuNiwxLjcgLTAuOSwxLjEgLTEuMywyLjYgLTEuMyw0LjUgMCwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxZS02IDIuNywtMC42IDMuNSwtMS43IDAuOSwtMS4xIDEuMywtMi42IDEuMywtNC41IC0yZS01LC0xLjkgLTAuNCwtMy40IC0xLjMsLTQuNSAtMC45LC0xLjEgLTIsLTEuNyAtMy41LC0xLjcgbSAwLC0xLjcgYyAyLjEsMS42ZS01IDMuOCwwLjcgNS4xLDIuMSAxLjMsMS40IDEuOSwzLjMgMS45LDUuNyAtMmUtNSwyLjQgLTAuNiw0LjMgLTEuOSw1LjcgLTEuMywxLjQgLTMsMi4xIC01LjEsMi4xIC0yLjEsMCAtMy44LC0wLjcgLTUuMSwtMi4xIC0xLjMsLTEuNCAtMS45LC0zLjMgLTEuOSwtNS43IC0xMGUtNywtMi40IDAuNiwtNC4zIDEuOSwtNS43IDEuMywtMS40IDMsLTIuMSA1LjEsLTIuMSBtIC0yMSwwLjMgMTIuOCwwIDAsMS43IC01LjQsMCAwLDEzLjQgLTIuMSwwIDAsLTEzLjQgLTUuNCwwIDAsLTEuNyBtIC0yLDAuNSAwLDIgYyAtMC44LC0wLjQgLTEuNSwtMC42IC0yLjIsLTAuOCAtMC43LC0wLjIgLTEuNCwtMC4zIC0yLC0wLjMgLTEuMSwxLjRlLTUgLTIsMC4yIC0yLjYsMC43IC0wLjYsMC40IC0wLjksMSAtMC45LDEuOCAtNGUtNiwwLjcgMC4yLDEuMiAwLjYsMS41IDAuNCwwLjMgMS4yLDAuNiAyLjMsMC44IGwgMS4yLDAuMyBjIDEuNSwwLjMgMi43LDAuOCAzLjQsMS41IDAuNywwLjcgMS4xLDEuNyAxLjEsMi45IC0xLjJlLTUsMS41IC0wLjUsMi42IC0xLjUsMy4zIC0xLDAuOCAtMi40LDEuMSAtNC4zLDEuMSAtMC43LDAgLTEuNSwtMC4xIC0yLjMsLTAuMiAtMC44LC0wLjIgLTEuNiwtMC40IC0yLjUsLTAuNyBsIDAsLTIuMSBjIDAuOCwwLjUgMS42LDAuOCAyLjQsMS4xIDAuOCwwLjIgMS42LDAuNCAyLjQsMC40IDEuMiwxZS02IDIuMSwtMC4yIDIuNywtMC43IDAuNiwtMC41IDEsLTEuMSAxLC0yIC0xMGUtNiwtMC43IC0wLjIsLTEuMyAtMC43LC0xLjcgLTAuNSwtMC40IC0xLjIsLTAuNyAtMi4yLC0wLjkgbCAtMS4yLC0wLjIgYyAtMS41LC0wLjMgLTIuNiwtMC44IC0zLjMsLTEuNCAtMC43LC0wLjYgLTEsLTEuNiAtMSwtMi43IC0xMGUtNywtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjZlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IG0gMjQuNCw0OC4xIC0wLjIsMi40IGggMC40IGwgLTEuNywzIC0xLC0xLjcgLTAuMSwyIDAuNSwwLjYgLTEuMiwzIC0xLjUsLTMgMC40LDMuNiAwLjgsMC4yIC0zLjEsOS43IC0wLjUsLTQuMiAwLjEsLTEuOCBjIDAsLTEuNSAwLjgsLTQuNyAxLC02LjMgMC4zLC0xLjcgMS4zLC00LjUgMS40LC02IDAuNiwwLjEgMC40LDAuMiAwLjgsMC4yIDAuNCwwIDIuMywtMS41IDIuNiwtMS44IGwgLTMsMC42IDAuOCwtMi43IGMgMC42LDAuMSAwLjQsMC4yIDAuOCwwLjIgMC40LDAgMi42LC0xLjcgMi44LC0yIGwgLTMsMC44IDAuNywtMi40IGMgMS4zLDAgMi4xLC0wLjggMi44LC0xLjQgbCAtMi40LDAuNCAwLjgsLTIgYyAxLjEsLTAgMS41LC0wLjkgMS44LC0xLjggbCAtMS4zLDAuNyAyLjMsLTYuMSAtMC44LC0wLjEgLTIuMSw1LjkgLTAuMywwIC0wLjUsLTIuMSAtMC4xLC0wIGMgMCwxLjUgLTAuNCwxLjYgLTAuNCwyLjQgMCwwLjUgMC4yLDAuNSAwLjYsMC42IGwgLTAuOSwyLjEgLTEsLTEuNCBjIC0wLjEsMS42IC0wLjQsMS45IDAuNywyLjQgbCAtMC44LDIuNCAtMS43LC0yLjIgMC40LDIuOCAwLjYsMC41IC0wLjUsMi43IC0xLjUsLTEuOSAwLjIsMi40IDAuOSwwLjUgYyAwLDAuNCAtMSw0LjYgLTEuMiw2IC0wLjQsMi4zIC0wLjksMy41IC0wLjksNi4zIGwgLTEuMiwtMy42IDAuNiwtMC44IC0wLC0yIC0xLjIsMS4yIC0wLjgsLTIuOCAwLjYsLTAuOCAtMCwtMiAtMS4xLDEuMiAtMC43LC0xLjcgYyAxLC0wLjUgMSwtMS42IDEsLTMuMiBsIC0xLjMsMi4xIGMgLTAuNywtMC4yIC0xLjEsLTEuNCAtMS4zLC0yLjMgMC4zLC0wLjQgMC42LC0wLjUgMC42LC0xIHYgLTEuNiBoIC0wLjQgbCAtMC43LDEuOCBjIC0wLjIsLTAuMiAtMC43LC0wLjcgLTAuNywtMS4yIDAsLTAuNCAwLjYsLTAuMyAwLjYsLTEgdiAtMC4yIGMgMCwtMS4xIC0wLjQsLTEuMSAtMC40LC0yLjQgbCAtMC43LDIuMyAtMC4zLDAgLTIuOCwtNS45IC0wLjQsMC4yIDIuNSw1LjcgLTEuMywtMC43IDEsMS45IDEsMCAwLjYsMSAtMi42LC0wLjQgYyAwLjQsMC40IDEuNywxLjQgMi40LDEuNCAwLjEsMCAwLjQsLTAuMSAwLjYsLTAuMiBsIDEsMi4yIC0zLjIsLTAuNiBjIDEuMSwxIDIsMS43IDMuNiwxLjYgbCAxLjEsMi43IC0yLjksLTAuNCBjIDAuNywxIDEuNywxLjMgMywxLjUgMC40LDAuMSAxLjEsMi44IDEuMiwzLjUgbCAtMywtMC42IDIuMiwxLjYgaCAxIGMgMS4yLDIuMyAyLjQsMTEuOSAyLjQsMTUuOCBoIDEuNCBsIC0wLjIsLTIuMiAwLC0xIGMgMCwtNCAyLjksLTkuMyAzLjIsLTEyLjMgMC44LDAuMSAwLjUsMC4yIDEsMC4yIDAuMiwwIDIuOSwtMS4yIDMuMiwtMS40IGwgLTMuNiwwLjMgMS4yLC0zLjEgMC44LDAuNCAzLC0xLjMgLTMuMiwwLjIgMS40LC0yLjggYyAwLjQsMC4xIDAuNCwwLjIgMSwwLjIgMC4zLDAgMi4xLC0xIDIuNCwtMS4yIGwgLTIuOCwwLjIgMS40LC0yIGMgMS41LDAuMSAxLjUsLTAuNCAyLjQsLTEuNiBsIC0xLjQsMC40IGMgMC41LC0xLjEgMS4yLC0yLjIgMS44LC0zLjIgMC40LC0wLjYgMiwtMi43IDAuOCwtMyBsIDAuMiwwLjEgLTMuNCw1LjggLTAuNCwtMi4zIGggLTAuMiBjIDAsMS40IC0wLjYsMS43IC0wLjYsMi4yIDAsMC4zIDAuMywwLjcgMC40LDEgbCAtMS41LDIgLTAuNywtMS45IHogbSAtMjUuNCwxMy41IGMgMCwtMy43IDAuMSwtOS4xIDAuNywtMTIuNCAwLjQsLTIgMC4xLC00IDAuNiwtNiAwLjQsLTEuNyAwLjQsLTQuMiAwLjgsLTUuOCAyLjgsLTEwLjEgMSwtMTEuOCAxNC4zLC0xMS44IGggNC40IGMgMTEuNiwwIDEyLjYsMS4yIDE0LjIsMTEuMyAxLjIsNy42IDIsMTQuNiAyLDIzLjYgdiA4LjMgbCAtMC40LDMuNiBjIC0xLjEsMS42IC0yLjEsMy40IC00LjksMy40IEggODYuNyBjIC01LjQsMCAtNS4zLC02LjQgLTUuMywtMTEuOSB2IC0yLjQgeiBtIC01LjgsLTMyLjUgYyAyLjEsLTAuNiAwLjQsLTEuMyA0LjQsLTEgMi40LDAuMiAzLDAuMyA1LDAuOCAtMC43LDEuMSAtNC42LDMgLTYuNSwzIGggLTAuNCBjIC0wLjksMCAtMi40LC0xLjIgLTIuNCwtMiB2IC0wLjggaCAtMCB6IG0gNDMuMiwtMS41IGMgMi4yLC0wLjIgNC44LDAuOSA0LjgsMy4xIHYgMC42IGMgMCwwLjYgLTAuNiwwLjggLTEuMiwwLjggaCAtMC42IGMgLTEuOCwwIC02LjIsLTIuNyAtNi45LC0zLjkgbCA0LC0wLjYgeiBtIC0zNi42LC02LjcgYyAwLC0xIDEsLTIuMiAxLjgsLTIuMiBoIDAuNiBjIDAuNiwwIDEuNCwxLjYgMS40LDIuMiB2IDQuMiBjIDAsMS4zIC0wLjQsMS41IC0wLjQsMi44IC0xLC0wLjMgLTMuNCwtNC4zIC0zLjQsLTUuNSB2IC0xLjQgaCAtMCB6IG0gMzEuNywyLjggYyAwLC0yLjggLTAsLTUuMiAyLjgsLTUuMiBoIDAuNiBjIDAuNiwwIDEsMC43IDEsMS40IDAsMiAtMyw2LjggLTQuNCw3LjMgdiAtMy42IGggLTAgeiBtIDEuNCwzLjggYyAwLjUsLTEuOCAzLjgsLTUgMy44LC03LjEgdiAtMS40IGMgLTAuNiwtMC4zIC0wLjcsLTEuMiAtMS42LC0xLjIgaCAtMC42IGMgLTIuNiwwIC0zLjgsMiAtMy44LDQuNSB2IDQuMiBjIC0yLC0wLjUgLTIuMywtMSAtNS4yLC0xLjIgLTIsLTAuMiAtMy43LC0wLjQgLTYsLTAuNCBoIC0zLjYgYyAtNC44LDAgLTguOSwwLjMgLTEyLjEsMiAwLjIsLTAuNyAwLjQsLTAuOSAwLjQsLTEuOCB2IC0zLjQgYyAwLC0xLjQgLTEsLTMuOCAtMi4yLC0zLjggaCAtMC44IGMgLTAuOCwwIC0yLjYsMS45IC0yLjYsMyAwLDIgMi4xLDUuNSAzLDYuOCBsIC01LjcsLTAuNSBjIC0xLjIsMCAtMy40LDEuMSAtMy40LDIuMSB2IDAuNiBjIDAsMS4zIDEuNywyLjggMywyLjggaCAwLjIgYyAyLjksMCA0LjUsLTIgNi4zLC0yLjQgLTEuOSwzLjUgLTMuOCwyMiAtMy44LDI4LjEgdiA2IGMgMCw1LjkgMC4zLDEyLjMgNi4xLDEyLjMgaCAyNi4xIGMgNC4xLDAgNi4xLC0zLjggNi4xLC03LjkgdiAtMTAuNSBjIDAsLTIuMyAtMC4yLC01LjUgLTAuNCwtNy43IC0wLjIsLTEuOCAtMC44LC01LjcgLTAuOCwtNy40IDAsLTIuNiAtMC43LC00LjcgLTEsLTcuMSAtMC4yLC0yLjEgLTEuMywtNC4zIC0xLjgsLTYuMiAxLjIsMC42IDQuOSwzIDYuMSwzIGggMS4yIGMgMSwwIDEuOCwtMC44IDEuOCwtMS44IHYgLTAuMiBjIDAsLTIuMiAtMS41LC0zLjggLTMuOCwtMy44IGggLTIuNiBsIC0yLjgsMC40IHogbSAtMjguMSwwLjYgYyAwLjUsMS45IDguOSwzLjIgMTEuOSwzLjIgaCAxIGMgMy4xLDAgMTIuNSwtMS40IDEyLjcsLTMuNiAtNC4xLC0xIC02LjUsLTEuOCAtMTEuOSwtMS44IGggLTEuNCBjIC0yLjQsMCAtNC40LDAuNCAtNi41LDAuNiAtMi45LDAuNCAtMy44LDEuMSAtNS44LDEuNiB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDUuMywxMTAuMSBjIC0wLjMsMC4zIC0yLjIsMS44IC0yLjYsMS44IC0wLjQsMCAtMC4yLC0wLjEgLTAuOCwtMC4yIDAsMS41IC0xLjEsNC4zIC0xLjMsNiAtMC4zLDEuNiAtMSw0LjggLTEsNi4zIGwgLTAuMSwxLjggMC41LDQuMiAzLjEsLTkuNyAtMC44LC0wLjIgLTAuNCwtMy42IDEuNSwzIDEuMiwtMyAtMC41LC0wLjYgMC4xLC0yIDEsMS43IDEuNywtMyBoIC0wLjQgbCAwLjIsLTIuNCAtMC4zLC0xLjIgLTEuMiwxLjIgeiBtIDAsMCAxLjIsLTEuMiAwLjMsMS4yIDAuNywxLjkgMS41LC0yIGMgLTAuMSwtMC4zIC0wLjQsLTAuNyAtMC40LC0xIDAsLTAuNSAwLjYsLTAuOCAwLjYsLTIuMiBoIDAuMiBsIDAuNCwyLjMgMy40LC01LjcgLTAuMiwtMC4xIGMgMS4zLDAuNCAtMC40LDIuNCAtMC44LDMgLTAuNiwxIC0xLjMsMi4xIC0xLjgsMy4yIGwgMS40LC0wLjQgYyAtMC44LDEuMiAtMC45LDEuNyAtMi40LDEuNiBsIC0xLjQsMiAyLjgsLTAuMiBjIC0wLjMsMC4yIC0yLDEuMiAtMi40LDEuMiAtMC41LDAgLTAuNSwtMC4xIC0xLC0wLjIgbCAtMS40LDIuOCAzLjIsLTAuMiAtMywxLjMgLTAuOCwtMC40IC0xLjIsMy4xIDMuNiwtMC40IGMgLTAuMywwLjIgLTIuOSwxLjQgLTMuMiwxLjQgLTAuNSwwIC0wLjIsLTAuMSAtMSwtMC4yIC0wLjMsMi45IC0zLjIsOC4yIC0zLjIsMTIuMyBsIC0wLjEsMSAwLjMsMi4yIGggLTEuNCBjIDAsLTQgLTEuMiwtMTMuNiAtMi40LC0xNS44IGggLTEgbCAtMi4yLC0xLjYgMywwLjYgYyAwLC0wLjcgLTAuOCwtMy40IC0xLjIsLTMuNSAtMS4zLC0wLjIgLTIuMywtMC41IC0zLC0xLjUgbCAyLjksMC40IC0xLjEsLTIuOCBjIC0xLjUsMC4xIC0yLjUsLTAuNiAtMy42LC0xLjYgbCAzLjIsMC42IC0xLjEsLTIuMiBjIC0wLjIsMC4xIC0wLjUsMC4yIC0wLjYsMC4yIC0wLjcsMCAtMiwtMSAtMi40LC0xLjQgbCAyLjYsMC40IC0wLjYsLTEgaCAtMSBsIC0xLC0xLjkgMS4zLDAuNyAtMi41LC01LjcgMC40LC0wLjIgMi44LDUuOSAwLjMsLTAgMC43LC0yLjQgYyAwLDEuMyAwLjQsMS4yIDAuNCwyLjQgdiAwLjIgYyAwLDAuNyAtMC42LDAuNiAtMC42LDEgMCwwLjQgMC41LDEgMC43LDEuMiBsIDAuNywtMS44IGggMC40IHYgMS42IGMgMCwwLjUgLTAuMywwLjYgLTAuNiwxIDAuMiwwLjkgMC41LDIuMSAxLjMsMi4zIGwgMS4zLC0yLjEgYyAwLDEuNSAwLDIuNiAtMSwzLjIgbCAwLjcsMS43IDEuMSwtMS4yIDAsMiAtMC42LDAuOCAwLjgsMi44IDEuMiwtMS4yIDAsMiAtMC42LDAuNyAxLjIsMy42IGMgMCwtMi44IDAuNCwtNCAwLjksLTYuMiAwLjMsLTEuMyAxLjMsLTUuNiAxLjIsLTYgbCAtMC45LC0wLjUgLTAuMiwtMi41IDEuNSwxLjkgMC41LC0yLjcgLTAuNiwtMC41IC0wLjQsLTIuOCAxLjcsMi4yIDAuOCwtMi40IGMgLTEsLTAuNSAtMC44LC0wLjggLTAuNywtMi40IGwgMSwxLjQgMC45LC0yLjEgYyAtMC40LC0wLjEgLTAuNiwtMCAtMC42LC0wLjYgMCwtMC44IDAuNCwtMC45IDAuNCwtMi40IGwgMC4xLDAgMC41LDIuMSAwLjMsLTAgMi4xLC01LjkgMC44LDAuMSAtMi4zLDYuMSAxLjMsLTAuNyBjIC0wLjIsMC45IC0wLjYsMS44IC0xLjgsMS44IGwgLTAuOCwyIDIuNCwtMC40IGMgLTAuNywwLjYgLTEuNSwxLjQgLTIuOCwxLjQgbCAtMC43LDIuNCAzLC0wLjggYyAtMC4yLDAuMyAtMi40LDIgLTIuOCwyIC0wLjQsMCAtMC4yLC0wLjEgLTAuOCwtMC4yIGwgLTAuOCwyLjcgMywtMC41IHogTSA4Ny4xLDkwLjEgYyAyLC0wLjUgMi45LC0xLjIgNS44LC0xLjYgMi4xLC0wLjMgNC4xLC0wLjYgNi41LC0wLjYgaCAxLjQgYyA1LjQsMCA3LjgsMC44IDExLjksMS44IC0wLjIsMi4yIC05LjYsMy42IC0xMi43LDMuNiBoIC0xIGMgLTMsMCAtMTEuNCwtMS4zIC0xMS45LC0zLjIgeiBtIC01LjgsMzMuNSB2IDIuNCBjIDAsNS41IC0wLjEsMTEuOSA1LjMsMTEuOSBoIDI2LjQgYyAyLjgsMCAzLjgsLTEuNyA0LjksLTMuNCBsIDAuNCwtMy42IHYgLTguMyBjIDAsLTkgLTAuOCwtMTUuOSAtMiwtMjMuNiAtMS42LC0xMC4xIC0yLjYsLTExLjMgLTE0LjIsLTExLjMgaCAtNC40IGMgLTEzLjMsMCAtMTEuNiwxLjcgLTE0LjMsMTEuOCAtMC40LDEuNiAtMC40LDQgLTAuOCw1LjggLTAuNSwyIC0wLjIsMy45IC0wLjYsNiAtMC42LDMuMyAtMC43LDguNiAtMC43LDEyLjQgeiBNIDExNC44LDkwLjIgYyAwLjcsMS4yIDUuMiwzLjkgNi45LDMuOSBoIDAuNiBjIDAuNiwwIDEuMiwtMC4yIDEuMiwtMC44IHYgLTAuNiBjIDAsLTIuMiAtMi42LC0zLjMgLTQuOCwtMy4xIGwgLTQsMC42IDAsMCB6IG0gLTM5LjIsMC45IHYgMC44IGMgMCwwLjggMS40LDIgMi40LDIgaCAwLjQgYyAyLDAgNS44LC0xLjkgNi41LC0zIC0yLC0wLjQgLTIuNiwtMC42IC01LC0wLjggLTMuOCwtMC4zIC0yLjEsMC40IC00LjMsMSB6IG0gMzguMywtNS4zIHYgMy42IGMgMS4zLC0wLjUgNC40LC01LjMgNC40LC03LjMgMCwtMC43IC0wLjQsLTEuNCAtMSwtMS40IGggLTAuNiBjIC0yLjgsLTAgLTIuOCwyLjQgLTIuOCw1LjEgeiBtIC0zMS43LC0yLjggdiAxLjQgYyAwLDEuMyAyLjQsNS4zIDMuNCw1LjUgMCwtMS4zIDAuNCwtMS41IDAuNCwtMi44IHYgLTQuMiBjIDAsLTAuNiAtMC44LC0yLjIgLTEuNCwtMi4yIGggLTAuNiBjIC0wLjgsMCAtMS44LDEuMyAtMS44LDIuMiB6XCJ9XSxpW1wiR1IuSU4uSUMuQVRNXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzMuNiwxMTYuMyBjIDUuMSwtMC4xIDE1LjgsLTYuNiAxNywtNi42IDAuNCwwIDcuNCwzLjggOC45LDQuMiAtMC40LDAuNiAtNS4xLDQuNiAtNi4yLDUuNyAtMS4yLDEuMiAtNC43LDUuOCAtNS41LDYuNCAtMS42LC0wLjggLTE0LC04LjkgLTE0LjIsLTkuNiB6IG0gLTE1LjEsLTYuMiAxMS45LC0yLjUgMTEuMSw1LjYgLTkuNiwzIDE2LjIsMTAuNyAtMCwtMC4yIDYuNCwtNy41IDI2LjksMTIuNyAyMC4zLC00Ni44IC01MC4yLC0xNy4yIGMgLTAuNiwyLjIgLTUuMiw5LjEgLTYuNSwxMS44IC0wLjgsMS44IC0yLjMsNC40IC0zLjMsNiAtMS4yLDEuOCAtMi4yLDQuMSAtMy4zLDYgLTEuMiwyIC0yLjEsMy44IC0zLjMsNS44IC0xLjIsMS45IC0yLjEsNC4yIC0zLjMsNiAtMi40LDMuNiAtMC4yLDIuNyAtNS41LDMuNyAtMi42LDAuNSAtNS4yLDEgLTcuNywxLjYgbSA2MiwyMS41IC0yNS4yLC0xMS44IDQuOCwtNCA3LjMsMy41IDEuMiwtMi40IC0yMy45LC0xMS43IHYgMC4yIGwgLTEsMi4yIDYsMi45IC02LjIsMy40IC0xMS44LC01LjggLTAuMiwwIDIwLjcsLTM3IDAuMiwwLjEgNDcuNCwxNi4xIGggMC4yIGwgLTE5LjQsNDQuMiB6IG0gNy44LC0zMS4zIDEuMSwtMiAtNS44LC0yLjMgLTAuOCwyLjMgeiBtIC0yLjcsNS4yIDEuMiwtMS45IC01LjYsLTIuMyAtMC44LDIuMiB6IG0gLTIyLC03LjMgYyAwLjYsMC40IDIuMSwxLjQgMi4xLDIuMSB2IDIuNCBjIDAsMC44IC0xLjcsMS41IC0yLjYsMS41IGggLTAuMiBjIC0wLjgsMCAtMSwtMC4yIC0xLjcsLTAuNCBsIDIuNCwtNS43IHogbSAtMy40LC02LjQgYyAwLC0yLjIgMS4xLC0yLjggMy4yLC0yLjggaCAwLjIgYyAwLjcsMCAxLDAuMiAxLjUsMC40IGwgLTIuMiw1LjEgYyAtMC45LC0wIC0yLjgsLTEuMiAtMi44LC0yLjQgdiAtMC4yIHogbSA1LjYsLTQuMiBjIC0wLjMsLTAuMSAtMS4yLC0wLjUgLTEuNiwtMC41IGggLTEuOSBjIC0wLjcsMCAtMi41LDAuNiAtMi45LDAuOSAtMC4zLDAuMiAtMS40LDIuMSAtMS40LDIuNSB2IDEuNyBjIDAsMi4xIDMuOCw0LjIgMy44LDQuOSAwLDAuNCAtMi4yLDQuNiAtMi40LDUuNyAtMC42LC0wLjMgLTIuNSwtMS44IC0yLjUsLTIuNiB2IC0wLjYgYyAwLC0wLjggMC42LC0xLjQgMC44LC0yLjEgLTAuOSwtMC4yIC0yLC0xLjEgLTIuNCwtMS4yIC0wLjQsLTAuMSAtMSwxLjcgLTEsMi4zIHYgMC40IGMgMCwyLjcgNC4yLDUuNCA0LjIsNS43IDAsMC42IC0wLjQsMS40IC0wLjUsMiBsIDEuNywwLjggMC42LC0xLjcgYyAxLjQsMCAyLDAuOCAzLjYsMC44IGggMC42IGMgMS40LDAgMi42LC0wLjUgMy4yLC0xLjMgMC4zLC0wLjQgMS41LC0yLjQgMS41LC0zIHYgLTAuNCBjIDAsLTIuNiAtMi44LC00LjggLTQuNCwtNS45IGwgMi41LC01LjYgaCAwLjQgYyAwLjQsMS4yIDEuNSwwLjYgMS41LDMuNiBsIDIuOCwxLjIgdiAtMS43IGMgMCwtMiAtMiwtNC4xIC0zLjgsLTQuNiBsIDAuOCwtMi4xIC0yLjEsLTAuNSAtMC44LDEuNSB6IG0gMTMsMTguNCAtMC45LDIgNS40LDIuMiAtMCwtMC4yIDEuMiwtMS44IHogbSAtMjIuNCwtMjUuMiAyNi4xLDkuNSAtMTEsMjQuMSAtMjYuNywtMTIuOCAxMS42LC0yMC44IHogbSAtMTIuNSwyMS4yIDI3LjgsMTMuNCAxMS43LC0yNS43IGMgLTEsLTAuMSAtMTEuOCwtNC4yIC0xMy40LC00LjggLTEuMiwtMC41IC0xMy4zLC01IC0xMy41LC01IC0wLjksMCAtNS40LDkuNSAtNi40LDEwLjggLTAuOCwxLjMgLTUuOSwxMC4zIC02LjEsMTEuMiB6IG0gMzEuNywxMS4yIDUuNCwyLjIgLTAuMSwtMC4yIDEuMywtMS44IGMgLTEuMSwtMC4yIC01LC0yLjIgLTUuNSwtMi4yIC0wLjQsMCAtMS4xLDEuNiAtMS4yLDIuMSB6IG0gLTI1LjgsMC42IDQuMywyLjkgLTYsNS44IC02LC00LjEgNy43LC00LjYgeiBtIC05LjEsNC41IDcuNCw0LjkgNy4xLC02LjYgYyAtMC41LC0wLjQgLTUuMywtMy42IC01LjQsLTMuNiAtMSwwIC03LjYsNC45IC05LjEsNS4zIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDExNS43LDExMS44IGMgMCwtMC41IDAuOCwtMi4xIDEuMiwtMi4xIDAuNSwwIDQuNCwyIDUuNSwyLjMgbCAtMS4zLDEuOCAwLjEsMC4yIC01LjQsLTIuMiB6IG0gMy4yLC03LjEgNS43LDIuMiAtMS4yLDEuOCAwLDAuMiAtNS40LC0yLjIgMC45LC0yIHogbSAyLjQsLTQuOCA1LjYsMi4zIC0xLjIsMS45IC01LjIsLTIgMC44LC0yLjIgeiBtIDIuNSwtNS4zIDUuOCwyLjMgLTEuMSwyIC01LjUsLTIgMC44LC0yLjMgeiBtIC0zOS43LDYgYyAwLjIsLTEgNS4zLC0xMCA2LjEsLTExLjIgMC45LC0xLjQgNS40LC0xMC44IDYuNCwtMTAuOCAwLjIsMCAxMi4zLDQuNSAxMy41LDUgMS43LDAuNyAxMi41LDQuOCAxMy41LDQuOCBsIC0xMS43LDI1LjcgLTI3LjgsLTEzLjQgeiBtIDU1LjksLTE0LjYgaCAtMC4yIGwgLTQ3LjQsLTE2LjEgLTAuMiwtMC4xIC0yMC43LDM3IDAuMiwtMCAxMS44LDUuOCA2LjMsLTMuNCAtNiwtMi45IDEsLTIuMiB2IC0wLjIgbCAyMy45LDExLjcgLTEuMiwyLjQgLTcuMywtMy41IC00LjgsNCAyNS4yLDExLjggMTkuNCwtNDQuMiAwLDAgeiBtIC01OS4xLDMwLjkgYyAxLjUsLTAuNCA4LC01LjMgOS4xLC01LjMgMC4yLDAgNC45LDMuMiA1LjUsMy42IGwgLTcuMiw2LjYgLTcuNCwtNC45IHogbSAtNy4yLC0wLjYgYyAwLjIsMC44IDEyLjYsOC44IDE0LjIsOS42IDAuOCwtMC42IDQuMywtNS4yIDUuNSwtNi40IDEuMSwtMS4xIDUuOCwtNS4xIDYuMiwtNS43IC0xLjYsLTAuMyAtOC41LC00LjEgLTguOSwtNC4xIC0xLjIsMCAtMTEuOSw2LjUgLTE3LDYuNiB6IG0gMjYuNiwtMjUuOSB2IDAuMiBjIDAsMS4yIDEuOCwyLjQgMi43LDIuNCBsIDIuMiwtNSBjIC0wLjQsLTAuMiAtMC44LC0wLjQgLTEuNSwtMC40IGggLTAuMiBjIC0yLjEsMCAtMy4yLDAuNyAtMy4yLDIuOCB6IG0gMC45LDEyLjEgYyAwLjcsMC4yIDAuOSwwLjQgMS43LDAuNCBoIDAuMiBjIDEsMCAyLjYsLTAuNyAyLjYsLTEuNSB2IC0yLjQgYyAwLC0wLjcgLTEuNiwtMS43IC0yLjEsLTIuMSBsIC0yLjQsNS42IHogbSA1LjUsLTE3LjcgMi4xLDAuNSAtMC44LDIuMSBjIDEuOCwwLjQgMy44LDIuNSAzLjgsNC42IHYgMS43IGwgLTIuOCwtMS4xIGMgMCwtMyAtMS4xLC0yLjQgLTEuNSwtMy42IGggLTAuNCBsIC0yLjUsNS42IGMgMS42LDEuMSA0LjQsMy4zIDQuNCw1LjkgdiAwLjQgYyAwLDAuNiAtMS4yLDIuNiAtMS41LDMgLTAuNiwwLjggLTEuOCwxLjMgLTMuMiwxLjMgaCAtMC42IGMgLTEuNiwwIC0yLjIsLTAuNyAtMy42LC0wLjggbCAtMC42LDEuNyAtMS43LC0wLjggYyAwLjEsLTAuNiAwLjUsLTEuNCAwLjUsLTIgMCwtMC4zIC00LjIsLTIuOSAtNC4yLC01LjcgdiAtMC40IGMgMCwtMC42IDAuNiwtMi40IDEsLTIuNCAwLjQsMC4xIDEuNCwxIDIuNCwxLjIgLTAuMiwwLjcgLTAuNywxLjMgLTAuNywyLjEgdiAwLjYgYyAwLDAuOCAxLjgsMi4zIDIuNCwyLjYgMC4yLC0xIDIuNCwtNS4zIDIuNCwtNS43IDAsLTAuNyAtMy44LC0yLjggLTMuOCwtNC45IFYgODkuMSBjIDAsLTAuNCAxLjEsLTIuMyAxLjQsLTIuNSAwLjQsLTAuMyAyLjIsLTAuOSAyLjksLTAuOSBoIDEuOSBjIDAuNCwwIDEuNCwwLjQgMS42LDAuNSBsIDAuOCwtMS40IHogbSAtMjEuOCwxNS40IDI2LjYsMTIuOSAxMSwtMjQuMSAtMjYsLTkuNSAtMTEuNiwyMC44IHogbSA1LDEyLjEgLTcuNyw0LjYgNiw0LjEgNiwtNS44IHpcIn1dLGlbXCJHUi5JTi5JQy5CQU5LXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLjgsMTEwLjYgYyAyLjQsMCA1LjMsMS45IDUuMyw0LjQgdiAwLjcgYyAwLDMuMSAtMi4xLDQuOSAtNS4zLDQuOSB2IC05LjkgeiBtIC02LjYsLTguOCBjIDAsLTIuMyAxLjcsLTQuNCA0LC00LjQgaCAwLjcgdiA5IGMgLTEuOSwtMC40IC00LjYsLTEuNiAtNC42LC0zLjcgdiAtMC45IHogbSA2LjYsLTQuNCBjIDIuMiwwIDQuNiwxLjYgNC42LDMuNSB2IDAuOSBoIDMuNSBjIDAsLTUuMyAtMy43LC02LjcgLTguMSwtNy43IHYgLTIuNCBoIC0yIHYgMi40IGMgLTMuOSwwIC04LjIsMy41IC04LjIsNyB2IDIuNiBjIDAsMS4zIDIsMy42IDMsNC4yIDEsMC42IDMuOCwxLjggNS4xLDEuOSB2IDEwLjYgYyAtMy40LC0wLjEgLTUuMiwtMi42IC01LjIsLTYuMSBoIC0zLjMgbCAwLjIsMy41IGMgMS4xLDEuNyAwLjksMi44IDIuOSw0LjEgMS4zLDAuOCAzLjQsMS42IDUuNSwxLjYgdiA0IGggMiB2IC0zLjkgYyA0LjksMCA5LC0zLjQgOSwtOC4xIHYgLTEuOCBjIDAsLTQuMiAtNS40LC02IC05LC02LjggdiAtOS40IHogbSAtMjUuMywxNS4yIHYgLTIuNCBjIDAsLTIuMiAyLjYsLTcuNCAzLjEsLTkuNCAwLjcsLTIuNyAzLjEsLTUuOSA0LjcsLTggMy41LC00LjYgOC41LC04LjkgMTYuNSwtOC45IGggNC40IGMgMy40LDAgOC44LDQuMyAxMC40LDYuNSAxLjMsMS43IDIuMiwzLjEgMy40LDUgMC41LDAuNyAyLjcsNS4yIDIuNyw1LjkgdiAwLjcgaCAwLjQgdiAwLjcgYyAwLDAuNCAwLjksMS41IDAuOCwzLjEgbCAwLjUsMC43IGMgMCwyIDEuMSw2LjggMS4zLDkgMC40LDMuMiAxLjMsNS42IC0wLjcsOC41IDAsMi40IC01LjIsOC43IC02LjIsOC44IGwgLTkuMiwtMS41IGMgLTEuOCwtMC4zIC02LjgsMiAtOS4yLDIgLTIsMCAtNS42LC0xLjcgLTcuNSwtMS43IC0xLjYsMCAtMy4yLDEuMyAtNS41LDEuMyBoIC0wLjYgYyAtMS45LDAgLTUuOSwtNi4xIC03LC03LjcgLTEuOCwtMi42IC0yLjQsLTggLTIuNCwtMTIuMyB6IG0gMzAuNywtMzEgLTYuMSwtMS4xIGMgLTAuOCwtMC4xIC01LjIsMS4xIC01LjgsMS4zIGwgLTYuMywtMTEuNSAxLjcsMC41IHYgLTIuOSBsIDguOSwzLjQgMC4zLC0zLjUgMy4yLDIuNSA1LjcsLTIuNiB2IDIuNiBsIDcuNSwtMS40IC05LjMsMTMgMCwwIHogbSAxMS44LC0xNC41IC05LjEsMS42IHYgLTIuOCBjIC0wLjksMC41IC01LjcsMi45IC02LjYsMi45IC0wLjEsMCAtMy40LC0yLjYgLTQsLTIuOSBsIC0wLjcsNCAtOC44LC0zLjYgdiAyLjkgbCAtMy4xLC0xIDguMSwxNS4xIC0wLjIsMC4xIGMgLTQuNiwxLjEgLTEwLjMsNi44IC0xMi43LDEwLjQgLTAuOCwxLjEgLTEuMywyLjYgLTIsMy43IC0xLjQsMS44IC0wLjksMi41IC0xLjcsNCAtMC42LDEuMSAtMi45LDcuMiAtMi45LDguNiB2IDMuNyBjIDAsMSAwLjcsNS44IDEsNi43IDAuNCwxLjQgMC40LDIgMC44LDMuMiAwLjMsMC45IDAuOSwxLjYgMS40LDIuMyAxLjMsMiA0LjgsNy41IDcuNiw3LjUgMi41LDAgNC4zLC0xLjMgNS43LC0xLjMgMi4zLDAgNS4yLDEuNyA3LjMsMS43IGggMC43IGMgMiwwIDUuNywtMS40IDgsLTEuOSAxLjgsLTAuMyA1LjksMSA4LjUsMSBoIDEuNyBjIDEuNywwIDQuOCwtNC4yIDUuOCwtNS41IDEuMSwtMS40IDEuMywtMi4yIDEuNywtNCAwLjEsLTAuNCAxLjEsLTQuMyAxLjEsLTQuNCAwLC0zIC0wLjksLTQuMSAtMS4xLC01LjkgLTAuMiwtMi40IC0wLjQsLTQgLTAuNywtNi4xIC0wLjIsLTEuNyAtMi44LC04LjYgLTMuNiwtMTAuMyAtMi40LC00LjkgLTcuNywtMTMuMiAtMTQsLTEzLjcgbCAxMS43LC0xNi4yIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwMC44LDEyMC40IGMgMy4yLDAgNS4zLC0xLjcgNS4zLC00LjkgdiAtMC42IGMgMCwtMi41IC0yLjksLTQuMyAtNS4zLC00LjQgdiA5LjggeiBtIC02LjYsLTE4LjcgdiAwLjkgYyAwLDIuMiAyLjgsMy4zIDQuNiwzLjcgdiAtOSBoIC0wLjcgYyAtMi4zLDAgLTQsMiAtNCw0LjQgeiBtIDYuNiw1IGMgMy42LDAuOCA5LDIuNiA5LDYuOCB2IDEuNyBjIDAsNC43IC00LjEsOC4xIC05LDguMSB2IDQgaCAtMiB2IC0zLjkgYyAtMiwwIC00LjIsLTAuNyAtNS41LC0xLjYgLTIsLTEuMyAtMS43LC0yLjUgLTIuOSwtNC4yIGwgLTAuMiwtMy41IGggMy4zIGMgMCwzLjUgMS44LDYuMSA1LjMsNi4yIHYgLTEwLjYgYyAtMS4zLC0wLjEgLTQuMSwtMS4zIC01LjEsLTIgLTEsLTAuNiAtMywtMyAtMywtNC4yIHYgLTIuNiBjIDAsLTMuNSA0LjIsLTcgOC4xLC03IHYgLTIuNCBoIDIgdiAyLjQgYyA0LjQsMSA4LjEsMi4zIDguMSw3LjcgaCAtMy41IHYgLTAuOSBjIDAsLTEuOSAtMi41LC0zLjUgLTQuNiwtMy41IHYgOS41IGwgMCwwIHogbSAtMjUuMyw1LjggYyAwLDQuMyAwLjYsOS44IDIuNCwxMi4zIDEuMSwxLjYgNS4xLDcuNyA3LDcuNyBoIDAuNyBjIDIuMywwIDMuOSwtMS4zIDUuNSwtMS4zIDEuOSwwIDUuNSwxLjcgNy41LDEuNyAyLjUsMCA3LjQsLTIuMyA5LjIsLTIgbCA5LjEsMS41IGMgMSwwIDYuMiwtNi40IDYuMiwtOC44IDIsLTIuOSAxLC01LjMgMC43LC04LjYgLTAuMiwtMi4yIC0xLjMsLTYuOSAtMS4zLC05IGwgLTAuNSwtMC42IGMgMC4xLC0xLjYgLTAuOCwtMi43IC0wLjgsLTMuMSB2IC0wLjcgaCAtMC40IHYgLTAuNyBjIDAsLTAuNyAtMi4yLC01LjIgLTIuNywtNS45IC0xLjEsLTEuOSAtMi4xLC0zLjIgLTMuNCwtNSAtMS42LC0yLjIgLTcsLTYuNSAtMTAuNCwtNi41IGggLTQuNCBjIC04LDAgLTEzLDQuNCAtMTYuNSw4LjkgLTEuNiwyLjEgLTQsNS4zIC00LjcsOCAtMC41LDIgLTMuMSw3LjIgLTMuMSw5LjQgdiAyLjQgeiBtIDQwLC00NCAtNy40LDEuNSB2IC0yLjYgbCAtNS44LDIuNiAtMy4yLC0yLjQgLTAuMywzLjUgLTguOSwtMy40IHYgMi45IGwgLTEuNywtMC41IDYuMywxMS41IGMgMC41LC0wLjIgNSwtMS40IDUuOCwtMS4zIGwgNi4xLDEuMSA5LjMsLTEzIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuQlVMTElPTiBTVE9SQUdFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTIzLjEsNzcuOSBjIDAuNCwwLjEgMC45LDAuNSAxLjMsMSAwLjQsMC41IDAuOCwxLjIgMS4zLDIgbCAyLjEsNC4xIC0yLjIsMCAtMS45LC0zLjkgYyAtMC41LC0xIC0xLC0xLjcgLTEuNSwtMiAtMC41LC0wLjMgLTEuMSwtMC41IC0xLjksLTAuNSBsIC0yLjIsMCAwLDYuNCAtMi4xLDAgMCwtMTUuMiA0LjYsMCBjIDEuNywxLjVlLTUgMywwLjQgMy45LDEuMSAwLjksMC43IDEuMywxLjggMS4zLDMuMyAtMWUtNSwxIC0wLjIsMS43IC0wLjcsMi40IC0wLjQsMC42IC0xLjEsMS4xIC0xLjksMS4zIG0gLTUuMSwtNi40IDAsNS40IDIuNiwwIGMgMSw4ZS02IDEuNywtMC4yIDIuMiwtMC43IDAuNSwtMC41IDAuOCwtMS4xIDAuOCwtMiAtMWUtNSwtMC45IC0wLjMsLTEuNiAtMC44LC0yIC0wLjUsLTAuNSAtMS4yLC0wLjcgLTIuMiwtMC43IGwgLTIuNiwwIG0gLTEyLjMsLTAuMyBjIC0xLjUsMS40ZS01IC0yLjcsMC42IC0zLjYsMS43IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0xMGUtNiwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxMGUtNyAyLjcsLTAuNiAzLjUsLTEuNyAwLjksLTEuMSAxLjMsLTIuNiAxLjMsLTQuNSAtMWUtNSwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTFlLTUsMi40IC0wLjYsNC4zIC0xLjksNS43IC0xLjMsMS40IC0zLDIuMSAtNS4xLDIuMSAtMi4xLDAgLTMuOCwtMC43IC01LjEsLTIuMSAtMS4zLC0xLjQgLTEuOSwtMy4zIC0xLjksLTUuNyAtMTBlLTcsLTIuNCAwLjYsLTQuMyAxLjksLTUuNyAxLjMsLTEuNCAzLC0yLjEgNS4xLC0yLjEgbSAtMjEsMC4zIDEyLjgsMCAwLDEuNyAtNS40LDAgMCwxMy40IC0yLjEsMCAwLC0xMy40IC01LjQsMCAwLC0xLjcgbSAtMiwwLjUgMCwyIGMgLTAuOCwtMC40IC0xLjUsLTAuNiAtMi4yLC0wLjggLTAuNywtMC4yIC0xLjQsLTAuMyAtMiwtMC4zIC0xLjEsMS40ZS01IC0yLDAuMiAtMi42LDAuNyAtMC42LDAuNCAtMC45LDEgLTAuOSwxLjggLTNlLTYsMC43IDAuMiwxLjIgMC42LDEuNSAwLjQsMC4zIDEuMiwwLjYgMi4zLDAuOCBsIDEuMiwwLjMgYyAxLjUsMC4zIDIuNywwLjggMy40LDEuNSAwLjcsMC43IDEuMSwxLjcgMS4xLDIuOSAtMS4yZS01LDEuNSAtMC41LDIuNiAtMS41LDMuMyAtMSwwLjggLTIuNCwxLjEgLTQuMywxLjEgLTAuNywwIC0xLjUsLTAuMSAtMi4zLC0wLjIgLTAuOCwtMC4yIC0xLjYsLTAuNCAtMi41LC0wLjcgbCAwLC0yLjEgYyAwLjgsMC41IDEuNiwwLjggMi40LDEuMSAwLjgsMC4yIDEuNiwwLjQgMi40LDAuNCAxLjIsMTBlLTcgMi4xLC0wLjIgMi43LC0wLjcgMC42LC0wLjUgMSwtMS4xIDEsLTIgLTFlLTUsLTAuNyAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMiwtMC45IGwgLTEuMiwtMC4yIGMgLTEuNSwtMC4zIC0yLjYsLTAuOCAtMy4zLC0xLjQgLTAuNywtMC42IC0xLC0xLjYgLTEsLTIuNyAtMmUtNiwtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjVlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IE0gMTAzLjYsMTE5LjMgaCA5LjYgYyAwLjQsMCA5LDkuMiA5LjYsMTAuMSBIIDk1LjYgYyAwLjIsLTEgNy40LC0xMC4xIDgsLTEwLjEgeiBtIC0yOS4yLDAgaCA5LjkgYyAwLjYsMCA4LjIsOSA4LjksMTAuMSBIIDY1LjkgYyAwLjMsLTEgNy44LC0xMC4xIDguNCwtMTAuMSBsIDAsMCB6IG0gMTEuNSwwIGggMTUuNCBsIC02LjksOS45IC04LjUsLTkuOSB6IG0gLTUuNSwtMSBjIDAuNywtMS4xIDcuNiwtOS40IDguNCwtOS40IGggOS4yIGMgMC43LDAgOC45LDguNSA5LjIsOS40IEggODAuNCB6IG0gNDMuNywxMC44IC05LjUsLTEwLjQgMTAuNCwtMTQuMyA5LjcsOC41IC0xMC43LDE2LjEgMCwwIHogbSAtNC44LC0yNC44IDQuOCwtMCAtMTAuNSwxNC4xIC00LjEsLTAuMSA5LjgsLTEzLjkgeiBtIC0zMS4xLC0wLjIgMi44LDAuMSBjIC0xLjEsMS42IC00LjYsNC45IC02LjIsNi44IC0xLjcsMi4xIC00LjIsNS4xIC01LjYsNy4yIGwgLTQuMiwtMC4xIDEzLjIsLTE0LjEgeiBtIDIxLjEsLTguNiBjIDAuOSwwLjYgOSw4LjIgOSw4LjUgMCwwLjEgLTkuMywxMy42IC05LjksMTQgbCAtOC45LC05LjkgOS44LC0xMi42IHogTSA4OS4xLDEwOCBjIDAuOSwtMS4zIDExLjQsLTEyLjYgMTIuMSwtMTIuNiBoIDYuOCBsIC05LjUsMTIuNSAtOS40LDAgeiBtIDIuOSwtNC42IGggLTQuNiBjIC0xLjIsMS44IC00LjMsNC45IC02LDYuNiAtMi4xLDIuMSAtMy45LDQuNCAtNiw2LjUgLTEuMywxLjMgLTExLjIsMTIuOCAtMTEuNCwxMy43IDAuNSwwLjEgMC41LDAuMiAxLjIsMC4yIGwgNTkuMywtMCAxMS42LC0xNy41IC0wLjMsMC4xIC0xMC41LC05LjYgaCAtNS44IGMgLTEuNSwtMSAtOS42LC04LjkgLTEwLjQsLTguOSBoIC04LjIgYyAtMC45LDAgLTcuNiw4IC05LDguOSBsIDAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDMuNiwxMTkuMyBjIC0wLjUsMCAtNy43LDkuMiAtOCwxMC4xIGggMjcuMyBjIC0wLjYsLTEgLTkuMiwtMTAuMSAtOS42LC0xMC4xIGggLTkuNiB6IG0gLTI5LjIsMCBjIC0wLjYsMCAtOC4yLDkuMSAtOC40LDEwLjEgaCAyNy4zIGMgLTAuNywtMS4xIC04LjMsLTEwLjEgLTguOSwtMTAuMSBIIDc0LjMgbCAwLDAgeiBtIDUwLjcsLTE0LjcgLTEwLjQsMTQuMyA5LjUsMTAuNCAxMC43LC0xNi4xIHogbSAtMzAuNywyNC43IDYuOSwtOS45IC0xNS40LDAgeiBtIDUuMSwtMjEuMSA4LjksOS45IGMgMC42LC0wLjQgOS45LC0xMy45IDkuOSwtMTQgMCwtMC4zIC04LjEsLTcuOSAtOSwtOC41IGwgLTkuOSwxMi42IHogbSAtMTkuMSwxMC4yIGggMjYuOCBjIC0wLjIsLTAuOSAtOC41LC05LjQgLTkuMiwtOS40IGggLTkuMiBjIC0wLjksMCAtNy43LDguMyAtOC40LDkuNCB6IG0gMzMuMiwwLjEgMTAuNSwtMTQuMSAtNC44LDAgLTkuOCwxMy45IHogbSAtMzguNiwtMC4yIDQuMiwwLjEgYyAxLjQsLTIuMSAzLjksLTUuMSA1LjYsLTcuMiAxLjYsLTEuOSA1LjEsLTUuMiA2LjIsLTYuOCBsIC0yLjgsLTAuMSAtMTMuMiwxNC4xIHogbSAxNC4xLC0xMC4zIDkuNCwtMCA5LjUsLTEyLjUgaCAtNi43IGMgLTAuNywwIC0xMS4yLDExLjIgLTEyLjEsMTIuNiB6XCJ9XSxpW1wiR1IuSU4uSUMuRkVERVJBTCBSRVNFUlZFIEJBTktcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2NS42LDEyNS40IGggNjguOCB2IDQuNCBIIDY1LjYgdiAtNC40IHogbSA1OC4xLC0zMS4zIGggNS4zIHYgMjkuOSBoIC01LjMgdiAtMjkuOSB6IG0gLTEwLjYsMCBoIDUuMSB2IDI5LjkgaCAtNS4xIHYgLTI5LjkgeiBtIC0zMS4zLDAgaCA1LjMgdiAyOS45IEggODEuOCB2IC0yOS45IHogbSAtMTAuNiwwIGggNS4xIHYgMjkuOSBoIC01LjEgdiAtMjkuOSB6IG0gMjcuNywxLjUgaCAyIHYgMS40IGggMC41IGMgMi45LDAgNiwyLjMgNiw1LjMgbCAtMi45LDAuNCBjIC0wLjIsLTAgLTEsLTEuOSAtMS40LC0yLjQgLTAuNCwtMC41IC0xLjUsLTEuMSAtMi4zLC0xLjIgdiA3LjggYyAzLDAuMyA3LjMsMi4zIDcuMyw1LjMgdiAxLjEgYyAwLDQgLTMuNCw2LjcgLTcuMyw2LjcgdiAyLjUgaCAtMiB2IC0yLjUgYyAtMS43LC0wIC00LjEsLTAuOCAtNS4xLC0xLjcgLTAuOCwtMC43IC0yLjQsLTIuOCAtMi40LC00LjEgdiAtMC45IGwgMy4xLC0wLjUgYyAwLDIuMyAyLDQuOSA0LjQsNC45IHYgLTguNiBjIC0yLjMsLTAgLTYuOSwtMi41IC02LjksLTUuMSB2IC0xLjggYyAwLC0zIDMuMiwtNS4zIDYuMiwtNS4zIGggMC43IHYgLTEuNCB6IG0gLTMzLjMsLTcuNSBoIDY4LjggdiA0LjYgSCA2NS42IHYgLTQuNiB6IE0gMTAwLDcwLjMgYyAwLjcsMC42IDYuNSwzLjQgNy45LDQuMSAyLjcsMS40IDUuMiwyLjcgNy45LDQuMSAyLjcsMS4zIDUuMywyLjcgNy45LDQuMSAxLjEsMC42IDcuNywzLjYgOC4xLDQgSCA2OC41IGwgMzEuNSwtMTYuMSAwLDAgeiBtIC0zNS45LDE3LjEgdiA2IGMgMCwwLjQgMC4zLDAuNyAwLjcsMC43IGggNC45IHYgMjkuOSBoIC01LjYgdiA3LjQgaCA3MS43IHYgLTcuNCBoIC01LjUgdiAtMjkuOSBoIDQuOSBjIDAuNCwwIDAuNSwtMC4xIDAuNSwtMC41IHYgLTYuNyBjIC0yLC0wLjcgLTYuNywtMy40IC04LjksLTQuNiAtMywtMS41IC01LjksLTMgLTguOSwtNC42IC0xLjcsLTAuOCAtMTcuOCwtOS4xIC0xNy45LC05LjEgLTAuNCwwIC0xNi4zLDguMiAtMTguMSw5LjIgLTEuOSwxIC0xNy44LDguNyAtMTcuOCw5LjYgbCAwLDAgMCwwIHogbSAzNi43LDMwLjQgYyAxLjcsMCA0LC0yIDQsLTMuNSB2IC0xLjQgYyAwLC0yLjEgLTIuMywtMi43IC00LC0zLjEgdiA4IHogbSAtNS42LC0xNCBjIDAsMS42IDIuMiwyLjYgMy42LDIuNyB2IC03LjQgYyAtMS4zLDAuMyAtMy42LDEuNCAtMy42LDIuNyB2IDIgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTM0LjQsMTI5LjggMCwtNC40IC02OC44LDAgMCw0LjQgeiBtIC01LjUsLTUuOCAwLC0yOS45IC01LjMsMCAwLDI5LjkgeiBtIC0xMC44LDAgMCwtMjkuOSAtNS4xLDAgMCwyOS45IHogbSAtMzEuMSwwIDAsLTI5LjkgLTUuMywwIDAsMjkuOSB6IG0gLTEwLjcsMCAwLC0yOS45IC01LjEsMCAwLDI5LjkgeiBtIC03LjksLTM3LjUgNjMuMywwIGMgLTAuNCwtMC4zIC02LjksLTMuNCAtOC4xLC00IC0yLjcsLTEuMyAtNS4yLC0yLjcgLTcuOSwtNC4xIC0yLjcsLTEuMyAtNS4yLC0yLjcgLTcuOSwtNC4xIC0xLjQsLTAuNyAtNy4yLC0zLjUgLTcuOSwtNC4xIGwgLTMxLjUsMTYuMSAwLDAgeiBtIDY1LjksNi4yIDAsLTQuNiAtNjguOCwwIDAsNC42IHogbSAtMzMuNSwyNS4xIHYgLTggYyAxLjcsMC40IDQsMSA0LDMuMSB2IDEuNSBjIDAsMS40IC0yLjIsMy41IC00LDMuNSB6IG0gLTUuNiwtMTQgdiAtMiBjIDAsLTEuMyAyLjQsLTIuNCAzLjYsLTIuNyB2IDcuNCBjIC0xLjUsLTAuMSAtMy42LC0xLjEgLTMuNiwtMi43IHogbSAzLjYsLTYuNyBoIC0wLjggYyAtMywwIC02LjIsMi4zIC02LjIsNS4zIHYgMS44IGMgMCwyLjUgNC42LDUuMSA2LjksNS4xIHYgOC42IGMgLTIuNCwwIC00LjQsLTIuNSAtNC40LC00LjkgbCAtMy4xLDAuNSB2IDAuOSBjIDAsMS4zIDEuNiwzLjUgMi40LDQuMSAxLDAuOCAzLjMsMS42IDUuMSwxLjcgdiAyLjUgaCAyIHYgLTIuNSBjIDMuOSwwIDcuMywtMi43IDcuMywtNi43IHYgLTEuMSBjIDAsLTMgLTQuMywtNSAtNy4zLC01LjMgdiAtNy44IGMgMC44LDAuMSAxLjksMC42IDIuMywxLjIgMC4zLDAuNSAxLjEsMi4zIDEuNCwyLjQgbCAyLjksLTAuNCBjIDAsLTMgLTMuMSwtNS4zIC02LC01LjMgaCAtMC42IHYgLTEuNCBoIC0yIHYgMS40IHpcIn1dLGlbXCJHUi5JTi5JQy5GSU5BTkNJQUwgRVhDSEFOR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzMuNywxMjQuNiAwLC0xLjQgLTY2LjgsMCAwLjMsMCAwLC00NyAtMSwwIDAsNDguNCB6IG0gLTI5LjUsLTguNiAtOS44LC0yMC44IC01LjksMTQuNCAtNS4zLC02LjUgLTEzLjMsMTIuNCAwLjksMSB2IDAuMiBsIDEyLjQsLTExLjMgNS41LDcgaCAwLjMgYyAwLC0xIDIuMywtNS42IDIuOCwtNyAwLjMsLTEgMS4xLC0yLjQgMS41LC0zLjQgMC4zLC0wLjggMC45LC0zLjEgMS41LC0zLjIgbCA5LjQsMjAuMyAwLjEsMC4yIDE3LjQsLTI3LjQgMC4yLDAuMSA4LDE1LjYgMS40LC0wLjUgLTkuNCwtMTggYyAtMC4xLDAuNSAtNy43LDEyLjEgLTguNywxMy42IC0xLDEuNiAtOC4yLDEzLjIgLTguOSwxMy40IHogbSAyLjgsLTE5LjQgViA4OS4yIGMgMi4xLDAgNC4xLDEuNCA0LjEsMy42IHYgMC4yIGMgMCwyLjEgLTEuOSwzLjYgLTQuMSwzLjYgeiBtIC00LjcsLTEzLjYgYyAwLC0yIDEsLTMuNCAzLC0zLjQgaCAwLjUgdiA2LjYgYyAtMS44LC0wLjEgLTMuNCwtMS4zIC0zLjQsLTMuMiB6IG0gMy41LC01LjYgaCAtMSBjIC0yLjYsMCAtNS4yLDIuOSAtNS4yLDUuNiB2IDEgYyAwLDEuMSAxLjMsMi44IDIuMSwzLjQgMS4xLDAuOCAyLjUsMS4yIDQsMS41IHYgNy44IGMgLTIuNiwtMC42IC00LjEsLTEuNyAtNC4xLC00LjggaCAtMi40IGwgMC4yLDIuNSBjIDAuOSwxLjQgMC42LDIuMSAyLjIsMy4yIDEuMSwwLjcgMi40LDEuMiA0LjEsMS4yIHYgMi44IGggMS4yIHYgLTIuOCBjIDMsMCA2LjQsLTIuMyA2LjQsLTUgdiAtMi41IGMgMCwtMi45IC00LC00LjMgLTYuNCwtNC44IHYgLTYuOSBjIDIsMCAzLjQsMS40IDMuNCwzLjMgaCAyLjcgYyAwLC0zLjIgLTIuOCwtNS41IC02LjEsLTUuNSBWIDc1LjQgaCAtMS4yIHYgMS45IHpcIn1dLGlbXCJHUi5JTi5JQy5GSU5BTkNJQUwgU0VSVklDRVMsIE9USEVSXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAzLjQsMTM4LjIgLTIuNywwIC0wLC04LjIgYyAtMS45LC0wIC0zLjgsLTAuMyAtNS43LC0wLjcgLTEuOSwtMC40IC0zLjgsLTEgLTUuOCwtMS45IGwgMCwtNC45IGMgMS45LDEuMiAzLjcsMi4xIDUuNiwyLjcgMS45LDAuNiAzLjksMC45IDUuOSwwLjkgbCAwLC0xMi41IGMgLTQsLTAuNyAtNywtMS44IC04LjgsLTMuMyAtMS44LC0xLjYgLTIuNywtMy43IC0yLjcsLTYuNSAtNWUtNiwtMyAxLC01LjMgMywtNyAyLC0xLjcgNC44LC0yLjcgOC42LC0zIGwgMCwtNi40IDIuNywwIDAsNi4zIGMgMS43LDAuMSAzLjMsMC4zIDQuOSwwLjUgMS42LDAuMyAzLjEsMC43IDQuNiwxLjEgbCAwLDQuOCBjIC0xLjUsLTAuOCAtMy4xLC0xLjQgLTQuNywtMS44IC0xLjYsLTAuNCAtMy4yLC0wLjcgLTQuOSwtMC43IGwgMCwxMS43IGMgNC4xLDAuNiA3LjIsMS44IDkuMSwzLjQgMiwxLjYgMi45LDMuOSAyLjksNi43IC0zZS01LDMuMSAtMSw1LjUgLTMuMSw3LjMgLTIuMSwxLjggLTUsMi44IC04LjksMy4xIGwgMCw4LjMgbSAtMi43LC0yOS4zIDAsLTExLjIgYyAtMi4xLDAuMiAtMy43LDAuOCAtNC44LDEuOCAtMS4xLDEgLTEuNywyLjMgLTEuNywzLjkgLTFlLTUsMS42IDAuNSwyLjggMS41LDMuNyAxLDAuOSAyLjcsMS41IDUsMS45IG0gMi43LDUuMyAwLDExLjggYyAyLjMsLTAuMyA0LjEsLTEgNS4yLC0yIDEuMiwtMSAxLjgsLTIuMyAxLjgsLTQgLTNlLTUsLTEuNiAtMC42LC0yLjkgLTEuNywtMy44IC0xLjEsLTAuOSAtMi45LC0xLjYgLTUuMywtMi4xIG0gNS44LC01Mi4yIDIuMSwwIDAsNi4yIDcuNSwwIDAsLTYuMiAyLjEsMCAwLDE1LjIgLTIuMSwwIDAsLTcuMiAtNy41LDAgMCw3LjIgLTIuMSwwIDAsLTE1LjIgbSAtMTQuOCwwIDEyLjgsMCAwLDEuNyAtNS40LDAgMCwxMy40IC0yLjEsMCAwLC0xMy40IC01LjQsMCAwLC0xLjcgbSAtOC4xLDEuNCBjIC0xLjUsMS4zZS01IC0yLjcsMC42IC0zLjYsMS43IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0zZS02LDEuOSAwLjQsMy40IDEuMyw0LjUgMC45LDEuMSAyLjEsMS43IDMuNiwxLjcgMS41LDFlLTYgMi43LC0wLjYgMy41LC0xLjcgMC45LC0xLjEgMS4zLC0yLjYgMS4zLC00LjUgLTEuM2UtNSwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTEuNWUtNSwyLjQgLTAuNiw0LjMgLTEuOSw1LjcgLTEuMywxLjQgLTMsMi4xIC01LjEsMi4xIC0yLjEsLTEwZS03IC0zLjgsLTAuNyAtNS4xLC0yLjEgLTEuMywtMS40IC0xLjksLTMuMyAtMS45LC01LjcgLTFlLTYsLTIuNCAwLjYsLTQuMyAxLjksLTUuNyAxLjMsLTEuNCAzLC0yLjEgNS4xLC0yLjFcIn1dLGlbXCJHUi5JTi5JQy5DT01NRVJDSUFMIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjksMTIzLjMgLTEuNywwIC0wLC01IGMgLTEuMiwtMCAtMi4zLC0wLjIgLTMuNSwtMC40IC0xLjIsLTAuMyAtMi4zLC0wLjYgLTMuNSwtMS4xIGwgMCwtMyBjIDEuMSwwLjcgMi4zLDEuMiAzLjQsMS42IDEuMiwwLjQgMi40LDAuNSAzLjYsMC41IGwgMCwtNy42IGMgLTIuNCwtMC40IC00LjIsLTEuMSAtNS4zLC0yIC0xLjEsLTEgLTEuNywtMi4zIC0xLjcsLTMuOSAtMmUtNiwtMS44IDAuNiwtMy4yIDEuOCwtNC4zIDEuMiwtMSAyLjksLTEuNiA1LjIsLTEuOCBsIDAsLTMuOSAxLjcsMCAwLDMuOSBjIDEsMCAyLDAuMiAzLDAuMyAxLDAuMiAxLjksMC40IDIuOCwwLjcgbCAwLDIuOSBjIC0wLjksLTAuNSAtMS45LC0wLjggLTIuOCwtMS4xIC0xLC0wLjMgLTIsLTAuNCAtMywtMC40IGwgMCw3LjEgYyAyLjUsMC40IDQuNCwxLjEgNS41LDIuMSAxLjIsMSAxLjgsMi40IDEuOCw0LjEgLTJlLTUsMS45IC0wLjYsMy4zIC0xLjksNC40IC0xLjMsMS4xIC0zLjEsMS43IC01LjQsMS45IGwgMCw1IG0gLTEuNywtMTcuOCAwLC02LjggYyAtMS4zLDAuMSAtMi4zLDAuNSAtMi45LDEuMSAtMC43LDAuNiAtMSwxLjQgLTEsMi4zIC02ZS02LDEgMC4zLDEuNyAwLjksMi4yIDAuNiwwLjUgMS42LDAuOSAzLDEuMSBtIDEuNywzLjIgMCw3LjIgYyAxLjQsLTAuMiAyLjUsLTAuNiAzLjIsLTEuMiAwLjcsLTAuNiAxLjEsLTEuNCAxLjEsLTIuNCAtMWUtNSwtMSAtMC4zLC0xLjcgLTEsLTIuMyAtMC43LC0wLjYgLTEuNywtMSAtMy4yLC0xLjMgTSAxMDQuNSw3NC44IGggNC41IHYgMTMuNCBoIDkuOSBWIDc0LjggaCA0LjUgdiAxMy40IGggNi43IHYgMzcgSCA3MCBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgViA4Ni45IEggNjguOCB2IDM5LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTAxLjksMTA4LjcgMCw3LjIgYyAxLjQsLTAuMiAyLjUsLTAuNiAzLjIsLTEuMiAwLjcsLTAuNiAxLjEsLTEuNCAxLjEsLTIuNCAtMWUtNSwtMSAtMC4zLC0xLjcgLTEsLTIuMyAtMC43LC0wLjYgLTEuNywtMSAtMy4yLC0xLjMgbSAtMS43LC0zLjIgMCwtNi44IGMgLTEuMywwLjEgLTIuMywwLjUgLTIuOSwxLjEgLTAuNywwLjYgLTEsMS40IC0xLDIuMyAtNmUtNiwxIDAuMywxLjcgMC45LDIuMiAwLjYsMC41IDEuNiwwLjkgMywxLjEgbSA0LjMsLTMwLjcgMCwxMy40IC0zNC42LDAgMCwzNyA2MC4xLDAgMCwtMzcgLTYuNywwIDAsLTEzLjQgLTQuNSwwIDAsMTMuNCAtOS45LDAgMCwtMTMuNCAtNC41LDAgeiBtIC00LjMsMTcuNiAxLjcsMCAwLDMuOCBjIDEsMCAyLDAuMiAzLDAuMyAxLDAuMiAxLjksMC40IDIuOCwwLjcgbCAwLDIuOSBjIC0wLjksLTAuNSAtMS45LC0wLjggLTIuOCwtMS4xIC0xLC0wLjMgLTIsLTAuNCAtMywtMC41IGwgMCw3LjEgYyAyLjUsMC40IDQuMywxLjEgNS41LDIuMSAxLjIsMSAxLjgsMi40IDEuOCw0LjEgLTJlLTUsMS45IC0wLjYsMy40IC0xLjksNC40IC0xLjMsMS4xIC0zLjEsMS43IC01LjQsMS45IGwgMCw1IC0xLjcsMCAtMCwtNSBjIC0xLjIsLTAgLTIuMywtMC4yIC0zLjUsLTAuNCAtMS4yLC0wLjMgLTIuMywtMC42IC0zLjUsLTEuMSBsIDAsLTMgYyAxLjEsMC43IDIuMywxLjMgMy40LDEuNiAxLjIsMC40IDIuNCwwLjUgMy42LDAuNSBsIDAsLTcuNiBjIC0yLjQsLTAuNCAtNC4yLC0xLjEgLTUuMywtMiAtMS4xLC0xIC0xLjcsLTIuMiAtMS43LC0zLjkgLTJlLTYsLTEuOCAwLjYsLTMuMiAxLjgsLTQuMyAxLjIsLTEgMywtMS42IDUuMiwtMS44IGwgMCwtMy45IHpcIn1dLGlbXCJHUi5JTi5JQy5DSEVNSUNBTCBQTEFOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk0LjQsODkuNiAwLDAuMSBjIC0wLjUsMC4xIC0xLDAuMyAtMS40LDAuNiAtMC41LDAuNSAtMC42LDEuMyAtMC41LDEuOSAwLjIsMC44IDAuOCwxLjUgMS43LDEuOCAtMCwwLjUgLTAuMSwxLjcgMCwzIGwgLTAuMSwwIGMgLTAsMi43IC0yLjMsNS43IC00LjksOC44IC0yLjQsMyAtNSw2LjQgLTUuMywxMC40IGwgLTAuMSwwIGMgMCwwLjEgMCwwLjIgMCwwLjIgLTAsMC4xIC0wLDAuMiAtMCwwLjMgbCAwLjEsMCBjIDAuMiwyLjQgMS43LDQuMiAzLjcsNS4zIDIuMSwxLjIgNC42LDEuNyA2LjgsMS42IGwgMCwtMCA4LjksMCAwLDAuMSBjIDAuMywtMCAwLjUsLTAgMC44LC0wLjEgbCAwLjUsMCAwLC0wLjEgYyAyLjEsLTAuMiA0LjIsLTAuMyA2LC0xIDEuMSwtMC40IDIuMSwtMS4xIDIuOCwtMi4xIDAuNiwtMC45IDAuOSwtMi4xIDEuMSwtMy42IGwgMC4yLDAgYyAwLjIsLTQuNCAtMi4xLC03LjUgLTQuNSwtMTAuMyAtMi4zLC0yLjggLTQuNywtNS41IC01LjQsLTkuNiAwLC0xLjMgMC4xLC0zIDAuMSwtMy4zIDAuMiwtMC4xIDAuNCwtMC4yIDAuNiwtMC4zIDAuNSwtMC40IDAuOSwtMSAwLjksLTEuNyAtMCwtMC43IC0wLjUsLTEuMyAtMS4xLC0xLjYgLTAuNCwtMC4yIC0wLjksLTAuMyAtMS41LC0wLjQgbCAwLC0wLjEgYyAtMC4yLDAgLTAuNCwtMCAtMC42LDAgLTIuNSwwIC03LjIsMCAtOC4xLDAgLTAuMSwtMi40ZS00IC0wLjcsMCAtMC43LDAgeiBtIDAuNywyIGMgMC44LDAgNS41LDAgOC4xLDAgMC42LDAgMC45LDAuMSAxLjEsMC4yIC0wLjIsMC4xIC0wLjUsMC4zIC0wLjksMC40IGwgLTguMSwwIGMgLTAuNCwtMC4xIC0wLjcsLTAuMyAtMC43LC0wLjQgLTAsLTAuMSAtMCwtMC4xIC0wLC0wLjEgMCwtMCAwLjEsLTAuMSAwLjYsLTAuMSB6IG0gMS4yLDIuNiA2LjcsMCBjIC0wLDAuNyAtMC4xLDEuOSAtMC4xLDMuMSAtMCwwLjEgLTAsMC4yIC0wLDAuMyBsIDAuMSwwIGMgMC45LDQuNSAzLjUsNy42IDUuOCwxMC4zIDIuMiwyLjcgNCw1IDQsOC40IGwgLTAuMSwwIGMgLTAsMS40IC0wLjQsMi40IC0wLjgsMyAtMC40LDAuNyAtMSwxLjEgLTEuOCwxLjQgLTEuNCwwLjYgLTMuNiwwLjcgLTUuOCwwLjkgbCAtMTAuMywwIDAsMCBjIC0xLjYsMCAtMy42LC0wLjQgLTUuMSwtMS4zIC0xLjYsLTAuOSAtMi42LC0yLjIgLTIuNywtMy45IDAuMSwtMy4yIDIuNCwtNi4zIDQuOSwtOS40IDIuNCwtMyA1LjEsLTYuMSA1LjMsLTkuNiBsIDAuMSwtMCBjIC0wLjEsLTEgLTAuMSwtMi43IC0wLC0zLjMgeiBtIC03LDE5LjYgdiAxLjkgYyAwLDMuNSA2LDQuMyA5LjksNC4zIGggMy4yIGMgMi41LDAgOCwtMi4yIDgsLTQuMiB2IC0wLjggYyAwLC0zLjIgLTYuNiwtOS40IC03LjMsLTEyLjQgaCAtNy41IGMgLTAuNiwyLjUgLTYuMiwxMCAtNi4yLDExLjIgeiBtIDE0LjgsLTM5IGggNC41IHYgMTMuNCBoIDkuOSBWIDc0LjggaCA0LjUgdiAxMy40IGggNi43IHYgMzcgSCA2OS42IFYgODguMiBoIDM0LjYgbCA0ZS00LC0xMy40IDAsMCB6IG0gLTM1LjcsNTEuNiBoIDYyLjMgViA4Ni45IGggLTYuNCBWIDczLjUgaCAtNy4yIHYgMTMuNCBoIC03LjIgViA3My41IGggLTcuMiB2IDEzLjQgaCAtMzQuNCB2IDM5LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIk0gMTA0LjEgNzQuOCBMIDEwNC4xIDg4LjIgTCA2OS42IDg4LjIgTCA2OS42IDEyNS4yIEwgMTI5LjYgMTI1LjIgTCAxMjkuNiA4OC4yIEwgMTIyLjkgODguMiBMIDEyMi45IDc0LjggTCAxMTguNSA3NC44IEwgMTE4LjUgODguMiBMIDEwOC42IDg4LjIgTCAxMDguNiA3NC44IEwgMTA0LjEgNzQuOCB6IE0gOTQuNCA4OS42IEMgOTQuNCA4OS42IDk1LjEgODkuNiA5NS4yIDg5LjYgQyA5Ni4xIDg5LjYgMTAwLjggODkuNiAxMDMuMyA4OS42IEMgMTAzLjUgODkuNiAxMDMuOCA4OS42IDEwMy45IDg5LjYgTCAxMDMuOSA4OS43IEMgMTA0LjUgODkuOCAxMDUgODkuOSAxMDUuNCA5MC4xIEMgMTA2IDkwLjQgMTA2LjUgOTEgMTA2LjUgOTEuNyBDIDEwNi41IDkyLjQgMTA2LjEgOTMgMTA1LjYgOTMuNCBDIDEwNS40IDkzLjUgMTA1LjIgOTMuNiAxMDUgOTMuOCBDIDEwNSA5NCAxMDQuOSA5NS43IDEwNC45IDk3LjEgQyAxMDUuNiAxMDEuMSAxMDggMTAzLjggMTEwLjMgMTA2LjcgQyAxMTIuNiAxMDkuNSAxMTQuOSAxMTIuNiAxMTQuNyAxMTcgTCAxMTQuNiAxMTYuOSBDIDExNC40IDExOC40IDExNC4xIDExOS42IDExMy41IDEyMC41IEMgMTEyLjggMTIxLjUgMTExLjggMTIyLjIgMTEwLjggMTIyLjcgQyAxMDguOSAxMjMuNCAxMDYuOCAxMjMuNSAxMDQuOCAxMjMuNyBMIDEwNC44IDEyMy43IEwgMTA0LjMgMTIzLjcgQyAxMDQuMSAxMjMuNyAxMDMuOCAxMjMuOCAxMDMuNSAxMjMuOCBMIDEwMy41IDEyMy43IEwgOTQuNiAxMjMuNyBMIDk0LjYgMTIzLjggQyA5Mi40IDEyMy45IDg5LjkgMTIzLjQgODcuOCAxMjIuMiBDIDg1LjkgMTIxLjEgODQuMyAxMTkuMiA4NC4xIDExNi44IEwgODQuMSAxMTYuOCBDIDg0LjEgMTE2LjcgODQuMSAxMTYuNiA4NC4xIDExNi41IEMgODQuMSAxMTYuNCA4NCAxMTYuNCA4NCAxMTYuMyBMIDg0LjEgMTE2LjMgQyA4NC4zIDExMi4zIDg2LjkgMTA5IDg5LjQgMTA1LjkgQyA5MS45IDEwMi43IDk0LjIgOTkuOCA5NC4zIDk3LjEgTCA5NC4zIDk3LjEgQyA5NC4yIDk1LjcgOTQuMyA5NC42IDk0LjMgOTQgQyA5My41IDkzLjcgOTIuOCA5My4xIDkyLjYgOTIuMyBDIDkyLjQgOTEuNiA5Mi42IDkwLjkgOTMuMSA5MC40IEMgOTMuNCA5MCA5My45IDg5LjggOTQuNCA4OS43IEwgOTQuNCA4OS42IHogTSA5NS4xIDkxLjYgQyA5NC43IDkxLjYgOTQuNSA5MS43IDk0LjUgOTEuOCBDIDk0LjUgOTEuOCA5NC41IDkxLjcgOTQuNiA5MS44IEMgOTQuNiA5MS45IDk0LjggOTIuMiA5NS4zIDkyLjIgTCAxMDMuNCA5Mi4yIEMgMTAzLjggOTIuMSAxMDQuMSA5MiAxMDQuMyA5MS44IEMgMTA0LjEgOTEuOCAxMDMuOCA5MS42IDEwMy4yIDkxLjYgQyAxMDAuNiA5MS42IDk1LjkgOTEuNiA5NS4xIDkxLjYgeiBNIDk2LjMgOTQuMiBDIDk2LjIgOTQuOSA5Ni4yIDk2LjUgOTYuMyA5Ny41IEwgOTYuMiA5Ny42IEMgOTYgMTAxLjEgOTMuNCAxMDQuMiA5MC45IDEwNy4yIEMgODguNSAxMTAuMyA4Ni4yIDExMy4zIDg2LjEgMTE2LjYgQyA4Ni4yIDExOC4zIDg3LjIgMTE5LjUgODguOCAxMjAuNSBDIDkwLjMgMTIxLjMgOTIuMyAxMjEuOCA5My45IDEyMS44IEwgOTMuOSAxMjEuNyBMIDEwNC4yIDEyMS43IEMgMTA2LjUgMTIxLjUgMTA4LjYgMTIxLjQgMTEwIDEyMC44IEMgMTEwLjggMTIwLjUgMTExLjQgMTIwLjEgMTExLjggMTE5LjQgQyAxMTIuMyAxMTguOCAxMTIuNiAxMTcuOCAxMTIuNyAxMTYuNCBMIDExMi43IDExNi40IEMgMTEyLjcgMTEzIDExMC45IDExMC42IDEwOC43IDEwNy45IEMgMTA2LjUgMTA1LjIgMTAzLjggMTAyLjEgMTAzIDk3LjYgTCAxMDIuOCA5Ny42IEMgMTAyLjggOTcuNSAxMDIuOSA5Ny40IDEwMi45IDk3LjMgQyAxMDIuOSA5Ni4xIDEwMi45IDk0LjkgMTAzIDk0LjIgTCA5Ni4zIDk0LjIgeiBNIDk1LjUgMTAyLjYgTCAxMDMgMTAyLjYgQyAxMDMuOCAxMDUuNyAxMTAuMyAxMTEuOSAxMTAuMyAxMTUuMSBMIDExMC4zIDExNS45IEMgMTEwLjMgMTE3LjkgMTA0LjkgMTIwIDEwMi40IDEyMCBMIDk5LjIgMTIwIEMgOTUuMyAxMjAgODkuMyAxMTkuMiA4OS4zIDExNS43IEwgODkuMyAxMTMuOCBDIDg5LjMgMTEyLjYgOTQuOSAxMDUuMSA5NS41IDEwMi42IHogXCJ9XSxpW1wiR1IuSU4uSUMuRklSRUFSTVMgTUFOVUZBQ1RVUkVSXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjEsNzQuOCBoIDQuNSB2IDEzLjQgaCA5LjkgViA3NC44IGggNC41IHYgMTMuNCBoIDYuNyB2IDM3IEggNjkuNiBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgdiAxMy40IGggLTM0LjQgdiAzOS41IHogbSAyNS44LC0yNi42IGggMTAuOCB2IDUuOCBjIC0xLjYsMCAtNC43LDEgLTUuOCwwLjcgLTEuMiwtMC40IC0zLjgsLTEuNSAtNSwtMS42IHYgLTQuOCB6IG0gLTE5LjIsMCBoIDE2LjYgdiA2IGMgMCwwLjYgMywxLjQgMy43LDEuNyAwLjQsMC4xIDMuOSwxLjQgMy45LDEuNSBsIDcuMiwtMC45IDAuOCwyLjcgMS4xLDMuNyBjIDAuMywwLjQgMSwyLjQgMSwzLjEgdiAwLjIgYyAwLDEuMSAtMC42LDEuOSAtMC42LDMuNSBsIDEzLjUsLTAgLTAuOSwtMyAtMC42LC0xLjcgLTMsLTEwIGMgLTAuMiwtMC40IC0wLjUsLTAuNyAtMC41LC0xLjMgMCwtMS4zIDMuOSwtNC4xIDQuNywtNS4zIGwgLTIuNywtOC40IGggLTQzLjkgdiA4LjQgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTQuMiw5OS45IGggMTAuOCB2IDUuOCBjIC0xLjYsMCAtNC43LDEgLTUuOCwwLjcgLTEuMiwtMC40IC0zLjgsLTEuNSAtNSwtMS42IHYgLTQuOCB6IG0gOS45LC0yNS4xIDAsMTMuNCAtMzQuNiwwIDAsMzcgNjAuMSwwIDAsLTM3IC02LjcsMCAwLC0xMy40IC00LjUsMCAwLDEzLjQgLTkuOSwwIDAsLTEzLjQgLTQuNSwwIHogbSAtMjkuMSwxNi43IDQzLjksMCAyLjcsOC40IGMgLTAuOCwxLjIgLTQuNyw0LjEgLTQuNyw1LjMgMCwwLjYgMC4yLDAuOSAwLjUsMS4zIGwgMy4xLDEwIDAuNiwxLjggMC45LDMgLTEzLjUsMCBjIDAsLTEuNiAwLjcsLTIuNCAwLjcsLTMuNiBsIDAsLTAuMiBjIDAsLTAuNyAtMC43LC0yLjcgLTEsLTMuMSBMIDEwNy4yLDExMC44IDEwNi40LDEwOC4xIDk5LjIsMTA5IGMgLTAsLTAuMSAtMy42LC0xLjQgLTMuOSwtMS41IC0wLjcsLTAuMyAtMy43LC0xLjEgLTMuNywtMS43IGwgMCwtNS45IC0xNi42LDAgMCwtOC40IHpcIn1dLGlbXCJHUi5JTi5JQy5GSVJFQVJNUyBSRVRBSUxFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDg1LjEsMTIzIC0xLjEsMCAtMCwtMy4yIGMgLTAuOCwtMCAtMS41LC0wLjEgLTIuMywtMC4zIC0wLjgsLTAuMiAtMS41LC0wLjQgLTIuMywtMC43IGwgMCwtMS45IGMgMC43LDAuNSAxLjUsMC44IDIuMiwxIDAuOCwwLjIgMS41LDAuMyAyLjMsMC40IGwgMCwtNC45IGMgLTEuNiwtMC4zIC0yLjcsLTAuNyAtMy41LC0xLjMgLTAuNywtMC42IC0xLjEsLTEuNSAtMS4xLC0yLjUgLTJlLTYsLTEuMiAwLjQsLTIuMSAxLjIsLTIuOCAwLjgsLTAuNyAxLjksLTEuMSAzLjQsLTEuMiBsIDAsLTIuNSAxLjEsMCAwLDIuNSBjIDAuNywwIDEuMywwLjEgMS45LDAuMiAwLjYsMC4xIDEuMiwwLjMgMS44LDAuNSBsIDAsMS45IGMgLTAuNiwtMC4zIC0xLjIsLTAuNSAtMS44LC0wLjcgLTAuNiwtMC4yIC0xLjMsLTAuMyAtMS45LC0wLjMgbCAwLDQuNiBjIDEuNiwwLjMgMi44LDAuNyAzLjYsMS4zIDAuOCwwLjYgMS4xLDEuNSAxLjEsMi42IC0xLjJlLTUsMS4yIC0wLjQsMi4yIC0xLjIsMi45IC0wLjgsMC43IC0yLDEuMSAtMy41LDEuMiBsIDAsMy4zIG0gLTEuMSwtMTEuNSAwLC00LjQgYyAtMC44LDAuMSAtMS41LDAuMyAtMS45LDAuNyAtMC40LDAuNCAtMC43LDAuOSAtMC43LDEuNSAtNGUtNiwwLjYgMC4yLDEuMSAwLjYsMS40IDAuNCwwLjMgMS4xLDAuNiAyLDAuNyBtIDEuMSwyLjEgMCw0LjcgYyAwLjksLTAuMSAxLjYsLTAuNCAyLjEsLTAuOCAwLjUsLTAuNCAwLjcsLTAuOSAwLjcsLTEuNiAtMWUtNSwtMC42IC0wLjIsLTEuMSAtMC43LC0xLjUgLTAuNCwtMC40IC0xLjEsLTAuNiAtMi4xLC0wLjggbSAyMi42LC0yMS45IC04LDIwLjggMC44LDAuMyA4LC0yMC44IC0wLjgsLTAuMyB6IG0gLTQzLDYuNSAwLDAuOCAwLjMsMjYgMCwwLjggMC44LDAgMzIuMiwtMC4yIDAuNCwwIDAuMiwtMC4zIDcuMywtOC43IDAuMiwtMC4yIC0wLC0wLjMgLTAuMiwtMTAuMSAwLC0wLjQgLTAuMywtMC4yIC04LjQsLTYuNiAtMC4yLC0wLjIgLTAuMywwIC0zMS4zLC0wLjQgLTAuOCwwIHogbSAxLjYsMS42IDMwLjIsMC4zIDcuOSw2LjIgMC4yLDkuNCAtNi45LDguMiAtMzEsMC4yIC0wLjMsLTI0LjMgeiBNIDk3LjMsODUuNCBoIDE0LjQgdiA3LjcgYyAtMi4xLDAgLTYuMiwxLjQgLTcuOCwwLjkgLTEuNiwtMC41IC01LC0yLjEgLTYuNiwtMi4yIHYgLTYuNCB6IG0gLTI1LjUsMCBoIDIyLjEgdiA3LjkgYyAwLDAuOCA0LDEuOSA0LjgsMi4yIDAuNSwwLjIgNS4yLDEuOSA1LjIsMiBsIDkuNiwtMS4yIDEsMy42IDEuNCw0LjkgYyAwLjMsMC41IDEuMywzLjIgMS4zLDQuMSB2IDAuMiBjIDAsMS41IC0wLjksMi41IC0wLjksNC43IGggMTggbCAtMS4xLC0zLjkgLTAuOCwtMi40IC00LC0xMy40IGMgLTAuMywtMC41IC0wLjYsLTAuOSAtMC42LC0xLjcgMCwtMS43IDUuMiwtNS41IDYuMiwtNy4xIGwgLTMuNiwtMTEuMSBIIDcxLjggdiAxMS4xIGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg1LjEsMTEzLjYgMCw0LjcgYyAwLjksLTAuMSAxLjYsLTAuNCAyLjEsLTAuOCAwLjUsLTAuNCAwLjcsLTAuOSAwLjcsLTEuNiAtMWUtNSwtMC42IC0wLjIsLTEuMSAtMC43LC0xLjUgLTAuNCwtMC40IC0xLjEsLTAuNiAtMi4xLC0wLjggbSAtMS4xLC0yLjEgMCwtNC40IGMgLTAuOCwwLjEgLTEuNSwwLjMgLTEuOSwwLjcgLTAuNCwwLjQgLTAuNywwLjkgLTAuNywxLjUgLTRlLTYsMC42IDAuMiwxLjEgMC42LDEuNCAwLjQsMC4zIDEuMSwwLjYgMiwwLjcgTSA2Ni40LDk5LjggbCAwLjMsMjQuMyAzMSwtMC4yIDYuOSwtOC4yIC0wLjIsLTkuNCAtNy45LC02LjIgLTMwLjIsLTAuMyB6IG0gMTcuNywzLjMgMS4xLDAgMCwyLjUgYyAwLjcsMCAxLjMsMC4xIDEuOSwwLjIgMC42LDAuMSAxLjIsMC4yIDEuOCwwLjQgbCAwLDEuOSBjIC0wLjYsLTAuMyAtMS4yLC0wLjUgLTEuOCwtMC43IC0wLjYsLTAuMiAtMS4zLC0wLjMgLTEuOSwtMC4zIGwgMCw0LjYgYyAxLjYsMC4zIDIuOCwwLjcgMy42LDEuMyAwLjgsMC42IDEuMiwxLjUgMS4yLDIuNyAtMS4yZS01LDEuMiAtMC40LDIuMiAtMS4yLDIuOSAtMC44LDAuNyAtMiwxLjEgLTMuNSwxLjIgbCAwLDMuMyAtMS4xLDAgMCwtMy4yIGMgLTAuOCwtMCAtMS41LC0wLjEgLTIuMywtMC4zIC0wLjgsLTAuMiAtMS41LC0wLjQgLTIuMywtMC44IGwgMCwtMS45IGMgMC43LDAuNSAxLjUsMC44IDIuMiwxLjEgMC44LDAuMiAxLjUsMC4zIDIuMywwLjMgbCAwLC00LjkgYyAtMS42LC0wLjMgLTIuNywtMC43IC0zLjUsLTEuMyAtMC43LC0wLjYgLTEuMSwtMS41IC0xLjEsLTIuNSAtMmUtNiwtMS4yIDAuNCwtMi4xIDEuMiwtMi44IDAuOCwtMC43IDEuOSwtMS4xIDMuNCwtMS4yIGwgMCwtMi41IHpcIn1dLGlbXCJHUi5JTi5JQy5IQVpBUkRPVVMgTUFURVJJQUwgUFJPRFVDVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwNC43LDcxLjggaCA1IHYgMTUgaCAxMS4xIHYgLTE1IGggNSB2IDE1IGggNy41IHYgNDEuNCBoIC02Ny40IFYgODYuOCBoIDM4LjggdiAtMTUgeiBtIC00MCw1Ny45IGggNjkuOCBWIDg1LjUgaCAtNy4xIHYgLTE1LjIgaCAtOCB2IDE1LjIgaCAtOCB2IC0xNS4yIGggLTggdiAxNS4yIGggLTM4LjYgdiA0NC4xIGwgMCwwIHogbSAxNS41LC0yMS44IGggMzguNiBsIC0xOS4zLDE4LjYgLTE5LjMsLTE4LjYgeiBtIDIxLjgsLTE2LjggYyAwLjUsMC40IDQuMywzLjggNC4zLDQuMyB2IDEyIGggLTQuMyBWIDkxLjEgeiBtIC01LC0wIDAsMTYuMyBoIC00LjMgbCAwLjEsLTEyLjIgNC4xLC00LjEgMCwwIHogbSAtMTIuMSwxMiBjIDAsLTAuNCAzLjEsLTMuMiAzLjYsLTMuNiB2IDcuOCBoIC0zLjYgdiAtNC4zIHogbSAyNS43LC0zLjYgMy43LDMuNCBjIC0wLjIsMC40IC0wLjIsLTAuMiAtMC4yLDAuNSB2IDQgaCAtMy42IHYgLTcuOSB6IG0gOS40LDguMiAtMjAuNSwtMjAgLTIwLjQsMjAgMjAuNCwxOS45IDIwLjUsLTE5LjkgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTkuNSwxMjYuNSAxOS4zLC0xOC42IC0zOC42LDAgeiBtIDAsMSAtMjAuNCwtMTkuOSAyMC40LC0yMCAyMC41LDIwIC0yMC41LDE5LjggeiBtIDUuMiwtNDAuOCBoIC0zOC44IHYgNDEuNCBoIDY3LjQgViA4Ni44IGggLTcuNSB2IC0xNSBoIC01IHYgMTUgaCAtMTEuMSB2IC0xNSBoIC01IHYgMTUgeiBtIDUuOSwyMC42IGggMy42IHYgLTQgYyAwLC0wLjcgLTAsLTAuMSAwLjIsLTAuNSBsIC0zLjcsLTMuNCB2IDcuOSB6IG0gLTguNiwwIGggNC4zIHYgLTEyIGMgMCwtMC40IC0zLjgsLTMuOSAtNC4zLC00LjMgdiAxNi4zIHogbSAtOS4zLDAgNC4zLDAgLTAsLTE2LjMgLTQuMSw0LjEgeiBtIC03LjgsLTQuMyB2IDQuMyBoIDMuNiB2IC03LjkgYyAtMC41LDAuMyAtMy42LDMuMiAtMy42LDMuNiB6XCJ9XSxpW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuNCw2OC44IGMgMC40LDAuMSAwLjksMC41IDEuMywxIDAuNCwwLjUgMC44LDEuMiAxLjMsMiBsIDIuMSw0LjEgLTIuMiwwIC0xLjksLTMuOSBjIC0wLjUsLTEgLTEsLTEuNyAtMS41LC0yIC0wLjUsLTAuMyAtMS4xLC0wLjUgLTEuOSwtMC41IGwgLTIuMiwwIDAsNi40IC0yLjEsMCAwLC0xNS4yIDQuNiwwIGMgMS43LDEuNWUtNSAzLDAuNCAzLjksMS4xIDAuOSwwLjcgMS4zLDEuOCAxLjMsMy4zIC0xMGUtNiwxIC0wLjIsMS43IC0wLjcsMi40IC0wLjQsMC42IC0xLjEsMS4xIC0xLjksMS4zIG0gLTUuMSwtNi40IDAsNS40IDIuNiwwIGMgMSw4ZS02IDEuNywtMC4yIDIuMiwtMC43IDAuNSwtMC41IDAuOCwtMS4xIDAuOCwtMiAtMTBlLTYsLTAuOSAtMC4zLC0xLjYgLTAuOCwtMiAtMC41LC0wLjUgLTEuMiwtMC43IC0yLjIsLTAuNyBsIC0yLjYsMCBtIC0xMi4zLC0wLjMgYyAtMS41LDEuNGUtNSAtMi43LDAuNiAtMy42LDEuNyAtMC45LDEuMSAtMS4zLDIuNiAtMS4zLDQuNSAtMWUtNSwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxZS02IDIuNywtMC42IDMuNSwtMS43IDAuOSwtMS4xIDEuMywtMi42IDEuMywtNC41IC0xMGUtNiwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTEwZS02LDIuNCAtMC42LDQuMyAtMS45LDUuNyAtMS4zLDEuNCAtMywyLjEgLTUuMSwyLjEgLTIuMSwtMTBlLTcgLTMuOCwtMC43IC01LjEsLTIuMSAtMS4zLC0xLjQgLTEuOSwtMy4zIC0xLjksLTUuNyAtMmUtNiwtMi40IDAuNiwtNC4zIDEuOSwtNS43IDEuMywtMS40IDMsLTIuMSA1LjEsLTIuMSBtIC0yMSwwLjMgMTIuOCwwIDAsMS43IC01LjQsMCAwLDEzLjQgLTIuMSwwIDAsLTEzLjQgLTUuNCwwIDAsLTEuNyBtIC0yLDAuNSAwLDIgYyAtMC44LC0wLjQgLTEuNSwtMC42IC0yLjIsLTAuOCAtMC43LC0wLjIgLTEuNCwtMC4zIC0yLC0wLjMgLTEuMSwxLjRlLTUgLTIsMC4yIC0yLjYsMC43IC0wLjYsMC40IC0wLjksMSAtMC45LDEuOCAtM2UtNiwwLjcgMC4yLDEuMiAwLjYsMS41IDAuNCwwLjMgMS4yLDAuNiAyLjMsMC44IGwgMS4yLDAuMyBjIDEuNSwwLjMgMi43LDAuOCAzLjQsMS41IDAuNywwLjcgMS4xLDEuNyAxLjEsMi45IC0xLjJlLTUsMS41IC0wLjUsMi42IC0xLjUsMy4zIC0xLDAuOCAtMi40LDEuMSAtNC4zLDEuMSAtMC43LC0xMGUtNyAtMS41LC0wLjEgLTIuMywtMC4yIC0wLjgsLTAuMiAtMS42LC0wLjQgLTIuNSwtMC43IGwgMCwtMi4xIGMgMC44LDAuNSAxLjYsMC44IDIuNCwxLjEgMC44LDAuMiAxLjYsMC40IDIuNCwwLjQgMS4yLDFlLTYgMi4xLC0wLjIgMi43LC0wLjcgMC42LC0wLjUgMSwtMS4xIDEsLTIgLTFlLTUsLTAuNyAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMiwtMC45IGwgLTEuMiwtMC4yIGMgLTEuNSwtMC4zIC0yLjYsLTAuOCAtMy4zLC0xLjQgLTAuNywtMC42IC0xLC0xLjYgLTEsLTIuNyAtMmUtNiwtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjVlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IE0gNzAuNiwxMTAgaCA1Ny45IGwgLTI5LDI3LjkgLTI4LjksLTI3LjkgeiBtIDMyLjgsLTI1LjIgYyAwLjgsMC41IDYuNCw1LjggNi40LDYuNCB2IDE3LjkgaCAtNi40IFYgODQuOCB6IG0gLTcuNiwtMC4xIDAuMSwyNC40IGggLTYuNSBsIDAuMiwtMTguMyA2LjIsLTYuMSAwLDAgeiBtIC0xOC4yLDE4IGMgMCwtMC43IDQuNywtNC45IDUuMywtNS4zIHYgMTEuOCBoIC01LjMgdiAtNi41IHogbSAzOC42LC01LjMgNS42LDUuMiBjIC0wLjMsMC43IC0wLjIsLTAuMyAtMC4yLDAuNyB2IDUuOSBoIC01LjMgViA5Ny40IHogbSAxNC4yLDEyLjMgLTMwLjcsLTMwLjEgLTMwLjcsMzAgMzAuNywyOS45IDMwLjgsLTI5LjggelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTkuNSwxMzcuOSAyOSwtMjcuOSAtNTcuOSwwIHogbSAxNi43LC0yOC43IGggNS4zIHYgLTUuOSBjIDAsLTEgLTAuMSwtMC4xIDAuMiwtMC43IGwgLTUuNiwtNS4yIHYgMTEuOCB6IG0gLTEyLjgsMCBoIDYuNCBWIDkxLjIgYyAwLC0wLjcgLTUuNiwtNS45IC02LjQsLTYuNCB2IDI0LjQgeiBtIC0xNCwtMTBlLTYgNi41LDAgLTAuMSwtMjQuNCAtNi4yLDYuMSB6IG0gLTExLjgsLTYuNCB2IDYuNCBoIDUuMyBWIDk3LjQgYyAtMC43LDAuNSAtNS4zLDQuNyAtNS4zLDUuMyB6XCJ9XSxpW1wiR1IuSU4uSUMuSU5EVVNUUklBTCBTSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjEsNzQuOCBoIDQuNSB2IDEzLjQgaCA5LjkgViA3NC44IGggNC41IHYgMTMuNCBoIDYuNyB2IDM3IEggNjkuNiBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgdiAxMy40IGggLTM0LjQgdiAzOS41IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwNC4xLDc0LjggaCA0LjUgdiAxMy40IGggOS45IFYgNzQuOCBoIDQuNSB2IDEzLjQgaCA2LjcgdiAzNyBIIDY5LjYgViA4OC4yIGggMzQuNiBsIDRlLTQsLTEzLjQgMCwwIHpcIn1dLGlbXCJHUi5JTi5JQy5MQU5ERklMTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyNC4xLDExNS44IGMgMCwyLjUgMS42LDIuNyAzLDMuNiBoIC0yMi44IGMgMS4yLC0wLjcgMi44LC0xLjIgMi44LC0zLjMgdiAtMS4yIGMgMCwtMS4zIC0xLjksLTIuOCAtMy42LC0yLjggLTEsMCAtMS44LDAuNCAtMi4zLDAuOSAtMC40LDAuNCAtMS4xLDEuNiAtMS4xLDIuMSB2IDEuMyBjIDAsMC4yIDAuOSwxLjcgMSwxLjkgMC42LDAuNyAxLjIsMC42IDEuOCwxIGggLTguNiBjIDAuNiwtMC40IDEuMywtMC41IDEuOCwtMS4xIDAuNCwtMC40IDAuNiwtMS40IDEsLTEuNiB2IC0xLjcgYyAwLC0wLjQgLTAuOSwtMS44IC0xLjIsLTIuMSAtMC42LC0wLjYgLTEuMywtMC45IC0yLjQsLTAuOSBoIC0wLjEgYyAtMS43LDAgLTMuNSwxLjUgLTMuNSwzLjEgdiAxLjMgYyAwLDEuNSAyLDIuMiAyLjgsMi44IGggLTguNyBjIC0wLjEsLTMuMiAtMi41LC0xLjggLTMuMSwtMyAtMS4xLC0xLjkgMC45LC0yLjIgLTIuOCwtMy4xIC0zLjEsLTAuOCAtMiwtMC4zIC0zLjksLTIuMiAtMC42LC0wLjcgLTMsLTEuOCAtNC4yLC0xLjggaCAtMC4xIGMgLTEsMCAtMS45LDEuMiAtMi43LDEuNSAtMS4xLDAuNSAtMi4zLDAuNCAtMy4yLDEuMSAtMS4xLDAuOCAtMi4zLDQuNCAtMi4zLDYuMiB2IDAuNiBoIC0wLjQgdiAyLjIgaCA3Mi4xIDQuOSB2IC0xLjUgaCAtOS41IGMgMC44LC0wLjUgMC45LC0wLjIgMS44LC0xIDAuNCwtMC40IDAuOSwtMS41IDEuMiwtMS42IHYgLTEuNiBjIDAsLTAuNSAtMC45LC0xLjkgLTEuMywtMi4yIC0wLjcsLTAuNSAtMS40LC0wLjggLTIuNSwtMC44IC0xLjksMCAtMy42LDEuNSAtMy42LDMuNSB2IDAuMiBoIDAgeiBtIC0xLC0xNy42IGggMy41IGMgMC41LDAgNC4yLDQuOCA0LjYsNS40IGggLTguMSB2IC01LjQgeiBtIC00LjEsLTE3LjggLTAuNywtMS4zIC03LDMuOSAxLjQsMy41IC0zMiwxNC41IGMgMC44LDAuNCAyLjEsNC4zIDIuNiw1LjMgMC4yLDAuNCAyLjMsNSAyLjMsNS4xIDAsMC41IC0wLjksMC4yIC0wLjgsMC42IGwgMC41LDMuMSBoIDMuNCBjIDAsLTIuNCAyLC00LjggNC4zLC00LjggaCAxIGMgMi40LDAgNC4zLDIuMyA0LjMsNC44IGggMC42IGMgMCwtMi40IDAuNiwtMi4zIDEuNSwtMy42IGwgLTIuMSwtNS42IDkuNSwtNC4zIDQuMiw5LjkgLTUuMSwwIGMgMC45LDEuMyAxLjYsMS4zIDEuNiwzLjYgaCAxNC40IHYgLTAuNSBjIDAsLTIuMSAyLjUsLTQuMyA0LjgsLTQuMyBoIDAuNSBjIDIuNiwwIDQuNiwyLjIgNC42LDQuOCBoIDIuNiB2IC0zLjEgaCAtMS4yIHYgLTcuNCBjIDAsLTEuMiAtNS44LC02LjggLTYuMSwtOC4xIGggLTYuNCB2IDE1IGggLTQuMSBsIC01LjMsLTEyLjEgNS41LC0yLjMgLTQuMywtOS41IDUuNiwtNy40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyMy4xLDEwMy42IGggOC4xIGMgLTAuNSwtMC42IC00LjIsLTUuNCAtNC42LC01LjQgaCAtMy41IHYgNS40IHpcIn1dLGlbXCJHUi5JTi5JQy5QSEFSTUFDRVVUSUNBTCBNQU5VRkFDVFVSRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDUuMiw3MS4zIGggNS4xIFYgODYuNSBIIDEyMS41IFYgNzEuMyBoIDUuMSB2IDE1LjIgaCA3LjYgdiA0Mi4xIEggNjUuOCBWIDg2LjYgaCAzOS40IFYgNzEuMyB6IE0gNjQuNSwxMzAuMSBoIDcxIFYgODUuMyBoIC03LjMgViA2OS45IGggLTguMiBWIDg1LjMgaCAtOC4yIFYgNjkuOSBIIDEwMy43IFYgODUuMyBIIDY0LjUgdiA0NC44IHogTSA5MC4zLDkzLjEgaCA3LjYgYyAxLjIsMCAzLjQsMS44IDMuNCwyLjcgdiAyLjYgYyAwLDEuMyAtMi40LDIuOSAtMy42LDIuOSBoIC03LjQgdiAtOC4yIHogbSAtNC45LDI2LjUgaCA0LjkgdiAtMTMuMSBsIDEuNywwLjEgNy42LDEwIC04LjgsMTEgNS45LDAuMSA1LjksLTcgYyAxLjIsMC4zIDQuMiw1LjkgNS42LDYuOSBoIDYuMiBjIC0wLjksLTEuNyAtOC40LC0xMC40IC04LjQsLTExIDAsLTAuMyA3LjQsLTkuNyA4LjIsLTEwLjQgbCAtNiwtMC4xIC01LjYsNi4yIC00LjMsLTUuNyBjIDUuMiwtMS4yIDguNCwtMy4zIDguNCwtOS44IHYgLTAuNiBjIDAsLTIgLTEuNywtNC43IC0yLjgsLTUuOCAtMSwtMSAtNC4xLC0yLjQgLTYuMiwtMi40IEggODUuNCB2IDMxLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gODUuNCw4OCBoIDEyLjQgYyAyLjEsMCA1LjEsMS40IDYuMSwyLjQgMS4xLDEuMSAyLjgsMy44IDIuOCw1LjggdiAwLjYgYyAwLDYuNSAtMy4xLDguNiAtOC40LDkuOCBsIDQuMyw1LjcgNS42LC02LjIgNi4xLDAuMSBjIC0wLjgsMC42IC04LjIsMTAgLTguMiwxMC40IDAsMC43IDcuNCw5LjQgOC40LDExLjEgaCAtNi4yIGMgLTEuNSwtMSAtNC40LC02LjYgLTUuNiwtNi45IGwgLTUuOSw2LjkgLTUuOSwtMC4xIDguOCwtMTEgLTcuNiwtOS45IC0xLjgsLTAuMSB2IDEzLjEgaCAtNC45IHYgLTMxLjYgeiBtIDE5LjgsLTEuNCBoIC0zOS40IHYgNDIuMSBoIDY4LjQgViA4Ni42IGggLTcuNiBWIDcxLjMgSCAxMjEuNSBWIDg2LjUgSCAxMTAuMyBWIDcxLjMgaCAtNS4xIHYgMTUuMyB6IG0gLTE0LjksMTQuNyBoIDcuNCBjIDEuMiwwIDMuNiwtMS42IDMuNiwtMi45IHYgLTIuNSBjIDAsLTEgLTIuMiwtMi43IC0zLjQsLTIuNyBoIC03LjYgdiA4LjIgelwifV0saVtcIkdSLklOLklDLkNPTlRBTUlOQVRFRCBIQVpBUkRPVVMgV0FTVEUgU0lURVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMy43LDcxLjUgYyAtMC4zLDAgLTAuNywwLjEgLTAuOSwwLjIgbCAtNDkuNSwwIC0wLjcsMCAwLDAuMSBjIC0wLjcsMC4zIC0xLjMsMC45IC0xLjgsMS43IC0wLjYsMSAtMS4yLDIuNSAtMS42LDQuMiAtMC45LDMuNSAtMS40LDguMiAtMS40LDEzLjQgMCw0LjggMC41LDkuMiAxLjIsMTIuNiAtMSwwLjEgLTIuMSwwLjUgLTMsMC4zIC0xLjIsLTAuMSAtMi41LC0wLjEgLTMuOCwtMC4xIC0xLjMsMCAtNi41LC0wLjkgLTYuNSwwLjcgMCwxLjggNiwzLjQgNy41LDYuMSAtMC44LDEuNSAtNS45LDEuNCAtOC4xLDEuOCAtMS41LDAuMiAtMywwLjIgLTMuOCwxLjEgLTEsMSAwLjIsMi4zIDEuMSwyLjcgMS43LDAuOSA2LDEgOC4yLDEuNSAxLjMsMC4zIDIuNiwwLjcgMy4xLDEuOSAwLjQsMS4xIDAuNiwyLjYgMi4yLDIuNiBsIDAuMSwwIGMgMi4xLDAgNS4xLC0xLjcgNy45LC0xLjcgbCAxLjEsMCBjIDYuMiwwIDYuOCw3LjQgMTIuMyw3LjcgMy41LDAuMiA1LjMsLTAuOCA3LjgsLTEuOSAxLjYsLTAuNyA1LjUsLTIuOCA3LjMsLTIuOCBsIDAuMywwIGMgMS44LDAgMy4zLDEuMSA0LjgsMS41IDEuNiwwLjUgMy4zLDEgNS40LDEgbCAwLjUsMCBjIDEuMiwwIDIuMywtMC4yIDMuMiwtMC41IDEuMiwtMC40IDEuMSwtMSAxLjEsLTIuNCAtMC4xLC0xLjkgLTIuMiwtMy4zIC0zLjUsLTQgLTEuNCwtMC45IC0zLjQsLTEuOCAtNC45LC0yLjYgLTAuOCwtMC40IC0xLjUsLTAuOSAtMi4zLC0xLjQgLTEuMywtMSAtMSwtMC42IC0xLjcsLTIuMSAxLjIsLTEuOCA2LjksMC4yIDYuOSwtMS45IDAsLTAuMiAtMC4zLC0wLjUgLTAuNywtMC43IGwgMTIuMiwwIDAuNywwIDAsLTAuNCBjIDAuNywtMC4zIDEuMywtMC45IDEuOCwtMS43IDAuNiwtMSAxLjIsLTIuNSAxLjYsLTQuMiAwLjksLTMuNSAxLjQsLTguMiAxLjQsLTEzLjQgMCwtNS4yIC0wLjUsLTkuOSAtMS40LC0xMy40IC0wLjQsLTEuNyAtMSwtMy4yIC0xLjYsLTQuMiAtMC42LC0xIC0xLjQsLTEuOCAtMi41LC0xLjggeiBtIDAuMywxLjQgYyAwLjMsMCAwLjcsMC4zIDEuMywxLjEgMC41LDAuOCAxLDIuMiAxLjQsMy44IDAuOCwzLjMgMS40LDcuOSAxLjQsMTMuMSAwLDUuMSAtMC41LDkuOCAtMS40LDEzLjEgLTAuNCwxLjcgLTAuOSwzIC0xLjQsMy44IC0wLjUsMC44IC0xLDEuMSAtMS4zLDEuMSAtMC4yLDAgLTAuNCwtMC4xIC0wLjcsLTAuNCBsIDAsMC43IC00Ny45LDAgYyAwLjIsLTAuMiAwLjQsLTAuNCAwLjYsLTAuOCAwLjYsLTEgMS4xLC0yLjMgMS41LC00IDAuOSwtMy40IDEuNCwtOC4xIDEuNCwtMTMuMiAwLC01LjIgLTAuNSwtOS44IC0xLjQsLTEzLjIgLTAuNCwtMS43IC0wLjksLTMuMSAtMS41LC00IC0wLjIsLTAuMyAtMC40LC0wLjUgLTAuNiwtMC43IGwgNDcuOSwwIDAsMC4yIGMgMC4zLC0wLjMgMC41LC0wLjQgMC43LC0wLjQgeiBtIC01MC43LDAuMiBjIDAuMywwIDAuNywwLjMgMS4zLDEuMSAwLjUsMC44IDEsMi4yIDEuNCwzLjggMC44LDMuMyAxLjQsNy45IDEuNCwxMy4xIDAsNS4xIC0wLjUsOS44IC0xLjQsMTMuMSAtMC40LDEuNyAtMC45LDMgLTEuNCwzLjggLTAuNSwwLjggLTEsMS4xIC0xLjMsMS4xIC0wLjMsMCAtMC43LC0wLjMgLTEuMywtMS4xIC0wLjMsLTAuNSAtMC42LC0xLjEgLTAuOCwtMS44IDAuNCwxLjcgMSwzIDEuNywzLjUgbCA4LjMsLTAuMiA3LjEsMC4xIDIwLjMsLTAuMSBjIDAuNSwwIDEuNSwwLjUgMi4zLDEgbCAwLDAgYyAwLjUsMC4zIDAuOCwwLjYgMSwwLjcgLTAuMSwwLjIgLTAuNCwwLjMgLTAuNiwwLjQgLTAuMiwwLjEgLTAuNSwwLjIgLTAuOCwwLjIgLTAuNCwwLjEgLTAuOSwwLjEgLTEuMywwLjEgLTAuMiwtMCAtMC41LC0wIC0wLjcsLTAgLTAuNCwtMCAtMC45LC0wIC0xLjIsLTAgbCAtMC4zLDAgYyAtMC45LDAgLTEuNywwLjUgLTEuNywxLjQgbCAwLDAuMSAwLDAuMSBjIDAsMC4xIDAsMC4yIDAsMC4zIDAuNywzIDExLjMsNS44IDExLjksOS4yIDAsMC4xIDAsMC4yIDAsMC4zIC0wLDAuMSAtMCwwLjEgLTAsMC4xIC0wLjIsMS42IC0yLjksMi4yIC01LjIsMi4yIC0wLjcsMCAtMS4zLDAgLTEuOCwtMC4xIC0yLjYsLTAuNCAtNS40LC0yLjMgLTcuMywtMi4zIC01LjMsMCAtOS41LDUuNSAtMTUuMiw0LjggLTQuNCwtMC42IC01LjUsLTcuOSAtMTIuMywtNy45IGwgLTEuMywwIGMgLTMsMCAtNS42LDEuNyAtOC40LDEuNyAtMC41LDAgLTAuNywtMC4zIC0wLjksLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjEsLTAuMSAtMC4yLC0wLjUgLTAuMywtMS4xIC0wLjYsLTEuNiAtMCwtMCAwLC0wIDAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIC0wLC0wIC0wLC0wLjEgLTAuMSwtMC4xIC0wLC0wLjEgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMC4xLC0wLjIgLTAuMywtMC4zIC0wLjQsLTAuNCAtMS4yLC0wLjkgLTIuMywtMS4xIC00LC0xLjQgLTEuOSwtMC4zIC01LjgsLTAuMyAtNy4zLC0xLjUgLTAsLTAgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMCwtMCAtMCwtMCAtMC4xLC0wLjEgLTAsLTAgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMCwtMCAtMCwtMCAtMCwtMC4xIC0wLC0wIC0wLC0wIC0wLC0wIC0wLjIsLTAuMyAtMC40LC0wLjYgLTAuNCwtMC45IGwgMCwtMC4zIGMgMCwtMi4xIDEzLjIsLTAuOSAxMy4yLC0zLjIgMCwtMC4zIC0wLjEsLTAuNiAtMC4zLC0wLjggLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIC0wLC0wIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjIsLTAuMiAtMCwtMCAtMCwtMCAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjMsLTAuMyAtMC41LC0wLjQgLTEuNywtMS4zIC00LjgsLTIuNyAtNi4zLC0zLjkgLTAuMSwtMC4xIC0wLjMsLTAuMiAtMC40LC0wLjMgLTAsLTAgLTAsLTAgLTAuMSwtMC4xIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAuMSwtMC4xIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjIsLTAuMiAtMC4yLC0wLjQgMC4zLC0wLjEgMC42LC0wLjMgMS4xLC0wLjMgbCAyLjksMCA2LjMsMC4zIDIuNiwtMC4zIGMgOS40ZS00LDAgLTkuNGUtNCwwIDAsMCBsIDAuNywtMC4xIDAuOCwwLjEgYyAtMCwtMCAtMCwtMCAtMCwtMCAtMC44LC0zLjMgLTEuNCwtNy45IC0xLjQsLTEzLjEgMCwtNS4xIDAuNSwtOS43IDEuNCwtMTMuMSAwLjQsLTEuNyAwLjksLTMgMS40LC0zLjggMC41LC0wLjggMSwtMS4xIDEuMywtMS4xIHogbSAyNy43LDEuMSAtMTcuNCwxNyAxNy40LDE2LjkgMTcuNCwtMTYuOSAtMTcuNCwtMTcgeiBtIC0yLjIsMi45IDAsMTMuOCAtMy42LDAgMC4xLC0xMC40IDMuNSwtMy41IHogbSA0LjMsMCBjIDAuNCwwLjMgMy42LDMuMyAzLjYsMy43IGwgMCwxMC4yIC0zLjYsMCAwLC0xMy44IHogbSA3LjMsNy4yIDMuMiwyLjkgYyAtMC4xLDAuMSAtMC4xLDAuMSAtMC4xLDAuMSAtMCwtMCAwLDAgMCwwLjMgbCAwLDMuMyAtMy4xLDAgMCwtNi43IHogbSAtMTguOCwwIDAsNi43IC0zLDAgMCwtMy43IGMgMCwtMC40IDIuNywtMi44IDMsLTMgeiBtIC03LDcuMSAzMi44LDAgLTE2LjQsMTUuOCAtMTYuNCwtMTUuOCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMzQsNzIuOSBjIC0wLjIsMCAtMC40LDAuMSAtMC43LDAuNCBsIDAsLTAuMiAtNDcuOSwwIGMgMC4yLDAuMiAwLjQsMC40IDAuNiwwLjcgMC42LDEgMS4xLDIuMyAxLjUsNCAwLjksMy40IDEuNCw4LjEgMS40LDEzLjIgMCw1LjIgLTAuNSw5LjggLTEuNCwxMy4yIC0wLjQsMS43IC0wLjksMy4xIC0xLjUsNCAtMC4yLDAuMyAtMC40LDAuNSAtMC42LDAuOCBsIDQ3LjksMCAwLC0wLjcgYyAwLjMsMC4zIDAuNSwwLjQgMC43LDAuNCAwLjMsMCAwLjcsLTAuMyAxLjMsLTEuMSAwLjUsLTAuOCAxLC0yLjIgMS40LC0zLjggMC44LC0zLjMgMS40LC03LjkgMS40LC0xMy4xIDAsLTUuMSAtMC41LC05LjggLTEuNCwtMTMuMSAtMC40LC0xLjcgLTAuOSwtMyAtMS40LC0zLjggLTAuNSwtMC44IC0xLC0xLjEgLTEuMywtMS4xIHogbSAtNTAuNywwLjIgYyAtMC4zLDAgLTAuNywwLjMgLTEuMywxLjEgLTAuNSwwLjggLTEsMi4yIC0xLjQsMy44IC0wLjgsMy4zIC0xLjQsNy45IC0xLjQsMTMuMSAwLDUuMSAwLjUsOS44IDEuNCwxMy4xIDAsMCAwLDAgMCwwIGwgLTAuOCwtMC4xIC0zLjMsMC40IC02LjIsLTAuMyAtMi45LDAgYyAtMC41LDAgLTAuOCwwLjEgLTEuMSwwLjMgMC40LDEuNiA4LjQsNC4zIDguNCw2LjUgMCwyLjMgLTEzLjIsMS4xIC0xMy4yLDMuMiBsIDAsMC4zIGMgMCwyLjQgNS42LDIuMyA4LDIuNyAxLjcsMC4zIDIuOCwwLjUgNCwxLjQgMS4zLDEgMC44LDMuMyAyLjIsMy4zIDIuOCwwIDUuNCwtMS43IDguNCwtMS43IGwgMS4zLDAgYyA2LjgsMCA3LjksNy4zIDEyLjMsNy45IDUuNywwLjcgOS45LC00LjggMTUuMiwtNC44IDEuOCwwIDQuNywxLjkgNy4zLDIuMyAyLjMsMC4yIDcsLTAuMiA3LC0yLjQgMCwtMy42IC0xMiwtNi41IC0xMiwtOS44IGwgMCwtMC4xIGMgMCwtMC45IDAuOSwtMS40IDEuNywtMS40IGwgMC4zLDAgYyAxLjQsMCAzLjksMC4zIDQuNywtMC43IC0wLjMsLTAuNCAtMi41LC0xLjcgLTMuMiwtMS43IGwgLTIwLjMsMC4xIC03LjEsLTAuMSAtOC4zLDAuMiBjIC0wLjcsLTAuNSAtMS4zLC0xLjggLTEuNywtMy41IDAuMywwLjcgMC41LDEuMyAwLjgsMS44IDAuNSwwLjggMSwxLjEgMS4zLDEuMSAwLjMsMCAwLjcsLTAuMyAxLjMsLTEuMSAwLjUsLTAuOCAxLC0yLjIgMS40LC0zLjggMC44LC0zLjMgMS40LC03LjkgMS40LC0xMy4xIDAsLTUuMSAtMC41LC05LjcgLTEuNCwtMTMuMSAtMC40LC0xLjcgLTAuOSwtMyAtMS40LC0zLjggLTAuNSwtMC44IC0xLC0xLjEgLTEuMywtMS4xIHogbSAyNy43LDEuMSAxNy40LDE3IC0xNy40LDE2LjkgLTE3LjQsLTE2LjkgMTcuNCwtMTcgeiBtIC0yLjIsMi45IC0zLjUsMy41IC0wLjEsMTAuNCAzLjYsMCAtMCwtMTMuOCB6IG0gNC4zLDAgMCwxMy44IDMuNiwwIDAsLTEwLjIgYyAwLC0wLjQgLTMuMiwtMy40IC0zLjYsLTMuNyB6IG0gNy4zLDcuMiAwLDYuNyAzLjEsMCAwLC0zLjMgYyAwLC0wLjMgLTAsLTAuMyAtMCwtMC4zIDAsMCAwLDAgMC4xLC0wLjEgbCAtMy4yLC0yLjkgeiBtIC0xOC44LDAgYyAtMC40LDAuMyAtMywyLjcgLTMsMyBsIDAsMy43IDMsMCAwLC02LjcgeiBtIC03LDcuMSAxNi40LDE1LjggMTYuNCwtMTUuOCAtMzIuOCwwIHpcIn1dLGlbXCJHUi5JTi5JQy5UT1hJQyBSRUxFQVNFIElOVkVOVE9SWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgxLjgsNjEgMCwxNS4yIDIsMCAwLC02LjQgMi4yLDAgYyAwLjgsNmUtNiAxLjUsMC4yIDEuOSwwLjUgMC41LDAuMyAxLDEgMS41LDIgbCAxLjksMy45IDIuMiwwIC0yLjEsLTQuMiBjIC0wLjQsLTAuOSAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOCwtMC44IC0xLjMsLTAuOSAwLjgsLTAuMiAxLjUsLTAuNyAxLjksLTEuMyAwLjQsLTAuNiAwLjcsLTEuNCAwLjcsLTIuNCAtMmUtNSwtMS41IC0wLjQsLTIuNiAtMS4zLC0zLjMgLTAuOSwtMC43IC0yLjEsLTEuMSAtMy45LC0xLjEgbCAtNC42LDAgeiBtIDE0LjUsMCAwLDE1LjIgOS44LDAgMCwtMS43IC03LjcsMCAwLC01LjUgNy4yLDAgMCwtMS43IC03LjIsMCAwLC00LjUgNy41LDAgMCwtMS43IC05LjYsMCB6IG0gMTMuMiwwIDAsMTUuMiA5LjQsMCAwLC0xLjcgLTcuNCwwIDAsLTEzLjQgLTIsMCB6IG0gLTI1LjYsMS43IDIuNiwwIGMgMSwxLjRlLTUgMS43LDAuMiAyLjIsMC43IDAuNSwwLjQgMC44LDEuMSAwLjgsMiAtMTBlLTYsMC45IC0wLjMsMS42IC0wLjgsMiAtMC41LDAuNSAtMS4yLDAuNyAtMi4yLDAuNyBsIC0yLjYsMCAwLC01LjQgeiBtIDE2LDE0LjcgYyAtNC4zLDEuMWUtNSAtOC4zLDAuNCAtMTEuMiwxLjIgLTEuNCwwLjQgLTIuNiwwLjggLTMuNSwxLjMgLTAuNywwLjQgLTEuMiwwLjkgLTEuNCwxLjUgbCAtMC4xLDAgMCwwLjYgYyAtMy4xZS01LDAgMCwwIDAsMCBsIDAsMzEuMSAtMC4yLC0wLjcgYyAtMC4xLDAgLTEuMSwwLjEgLTIuNCwwIC0xLjIsLTAuMSAtMi43LC0wLjIgLTQuMiwtMC4zIC0xLjUsLTAuMSAtMi45LC0wLjIgLTQsLTAuMSAtMC42LDAgLTEuMSwwIC0xLjUsMC4xIC0wLjIsMCAtMC40LDAuMSAtMC42LDAuMiAtMC4yLDAuMSAtMC40LDAuMiAtMC42LDAuNSAtMC4zLDAuNCAtMC40LDAuOSAtMC4zLDEuNCAwLjEsMC41IDAuMywwLjggMC41LDEuMiAwLjUsMC43IDEuMiwxLjIgMS45LDEuNyAwLjcsMC41IDEuNCwxIDEuOSwxLjUgMC41LDAuNSAwLjcsMC45IDAuNiwxLjIgLTAsMC4xIC0wLDAuMiAtMC4yLDAuMyAtMC4yLDAuMiAtMC42LDAuMyAtMSwwLjUgLTAuOSwwLjMgLTIuMiwwLjUgLTMuNSwwLjcgLTEuMywwLjIgLTIuNywwLjMgLTMuNywwLjUgLTAuNSwwLjEgLTEsMC4yIC0xLjQsMC40IC0wLjIsMC4xIC0wLjQsMC4yIC0wLjYsMC4zIC0wLjIsMC4yIC0wLjQsMC40IC0wLjQsMC43IC0wLjEsMC45IDAuMywxLjcgMSwyLjMgMC43LDAuNiAxLjUsMS4xIDIuNiwxLjYgMi4xLDAuOSA0LjksMS43IDcuOSwyLjQgMi45LDAuNyA1LjksMS4yIDguMywxLjcgMi40LDAuNCA0LjQsMC44IDQuOCwwLjkgMiwwLjYgMy4zLDEuOCA0LjksMy4yIDEuNSwxLjMgMy4yLDIuOCA1LjgsMy41IDMsMC44IDYuMiwtMC42IDkuNCwtMiAzLjIsLTEuNCA2LjQsLTIuOCA5LjEsLTIuNSAwLjEsMCAxLDAuMiAxLjksMC41IDEsMC4zIDIuMiwwLjYgMy40LDAuOCAxLjIsMC4zIDIuNCwwLjUgMy41LDAuNiAxLjEsMC4xIDIsMC4yIDIuNywtMC41IDAuOCwtMC43IDEuMywtMS40IDEuNCwtMi4xIDAuMiwtMC44IC0wLC0xLjUgLTAuNCwtMi4yIC0wLjgsLTEuMyAtMi4yLC0yLjMgLTMuOSwtMy4yIC0xLjYsLTAuOSAtMy41LC0xLjggLTUsLTIuNiAtMS41LC0wLjggLTIuNywtMS42IC0zLC0xLjkgLTAuMiwtMC4zIC0wLjIsLTAuMiAtMC4xLC0wLjQgMC4xLC0wLjEgMC4zLC0wLjQgMC43LC0wLjcgMC44LC0wLjUgMi4yLC0xIDMuMiwtMS41IDAuNSwtMC4zIDEsLTAuNSAxLjMsLTEgMC4yLC0wLjMgMC4zLC0wLjcgMC4yLC0xIC0wLjEsLTAuNCAtMC4zLC0wLjYgLTAuNiwtMC44IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMywtMS4xIC0xLjEsLTAuMyAtMi42LC0wLjcgLTQuNiwtMS4xIGwgLTAuMywxLjMgMCwtMzUuNCAwLC0wLjYgLTAuMSwwIGMgLTAuMiwtMC42IC0wLjcsLTEuMSAtMS40LC0xLjUgLTAuOSwtMC41IC0yLjEsLTEgLTMuNSwtMS4zIC0yLjksLTAuNyAtNi44LC0xLjIgLTExLjIsLTEuMiB6IG0gMCwxLjIgYyA0LjMsLTEuMWUtNSA4LjEsMC40IDEwLjksMS4xIDEuNCwwLjQgMi41LDAuOCAzLjIsMS4yIDAuMywwLjIgMC40LDAuMyAwLjYsMC41IDAuMSwwLjEgMC4yLDAuMiAwLjMsMC4zIDAsMCAwLDAgMCwwLjEgMCwwIDAsMC4xIDAsMC4xIDAsMCAwLDAuMSAwLDAuMSAwLDAgLTAsMC4xIC0wLDAuMSAtMCwwIC0wLDAgLTAsMCAtMCwwIC0wLDAgLTAsMC4xIC0wLDAgLTAsMCAtMCwwLjEgLTAsMCAtMCwwIC0wLDAuMSAtMCwwIC0wLDAuMSAtMC4xLDAuMSAtMCwwLjEgLTAuMSwwLjEgLTAuMSwwLjIgLTAsMCAtMCwwIC0wLDAgLTAuMSwwLjEgLTAuMywwLjMgLTAuNiwwLjUgLTAuNywwLjQgLTEuOCwwLjggLTMuMiwxLjIgLTIuOCwwLjcgLTYuNiwxLjIgLTEwLjksMS4yIC00LjMsMS4xZS01IC04LjEsLTAuNCAtMTAuOSwtMS4xIC0xLjQsLTAuNCAtMi41LC0wLjggLTMuMiwtMS4yIC0wLjMsLTAuMiAtMC41LC0wLjMgLTAuNiwtMC41IC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIDAsLTAgMCwtMC4xIDAsLTAuMSAwLjEsLTAuMiAwLjMsLTAuNiAwLjksLTAuOSAwLjcsLTAuNCAxLjgsLTAuOCAzLjIsLTEuMiAyLjgsLTAuNyA2LjYsLTEuMSAxMC45LC0xLjEgeiBtIDE1LDUuMyAwLDM0LjEgMCwwIDAsNS42IGMgMC4xLDAuMiAwLjIsMC4zIDAuMiwwLjQgMCwwLjIgLTAuMiwwLjYgLTAuOSwxLjEgLTAuNywwLjQgLTEuOCwwLjggLTMuMiwxLjIgLTIuOCwwLjcgLTYuNiwxLjEgLTEwLjksMS4xIC00LjMsMWUtNSAtOC4xLC0wLjQgLTEwLjksLTEuMSAtMS40LC0wLjQgLTIuNSwtMC44IC0zLjIsLTEuMiAtMC42LC0wLjQgLTAuOSwtMC43IC0wLjksLTEgbCAtMCwwIDAsLTAuMSAwLC0xLjkgYyAtMC4xLDAuMSAtMC4xLDAuMSAtMC4yLDAuMSBsIDAsLTM4LjQgYyAwLjEsMC4xIDAuMiwwLjEgMC4zLDAuMiAwLjksMC41IDIuMSwxIDMuNSwxLjMgMi45LDAuNyA2LjgsMS4yIDExLjIsMS4yIDQuMywtMS4yZS01IDguMywtMC41IDExLjIsLTEuMiAxLjQsLTAuNCAyLjYsLTAuOCAzLjUsLTEuMyAwLjEsLTAuMSAwLjIsLTAuMSAwLjMsLTAuMiB6IG0gLTE1LjIsNi4xIC0xNC42LDE0LjIgMTQuMiwxMy44IDAuOCwwIDE0LjIsLTEzLjggLTE0LjYsLTE0LjMgeiBtIC0xLjgsMi40IDAsMTEuNiAtMy4xLDAgMC4xLC04LjcgMywtMi45IHogbSAzLjYsMCBjIDAuNCwwLjMgMywyLjcgMywzIGwgMCw4LjUgLTMsMCAwLC0xMS42IHogbSAtOS43LDYgMCw1LjYgLTIuNSwwIDAsLTMuMSBjIDAsLTAuMyAyLjIsLTIuMyAyLjUsLTIuNSB6IG0gMTUuOCwwIDIuNiwyLjUgYyAtMC4xLDAuMyAtMC4xLC0wLjEgLTAuMSwwLjMgbCAwLDIuOCAtMi41LDAgMCwtNS42IHogbSAtMjEuNyw2IDI3LjUsMCAtMTMuOCwxMy4zIC0xMy43LC0xMy4zIHogbSAtMTIuOCw5LjMgYyAxLjEsLTAgMi41LDAgMy45LDAuMSAxLjQsMC4xIDIuOSwwLjIgNC4yLDAuMyAxLjEsMC4xIDEuOSwwLjEgMi42LC0wIGwgMCwxMCAwLDAuNiAwLjMsMCBjIDAuMiwwLjYgMC43LDEuMSAxLjQsMS41IDAuOSwwLjUgMi4xLDEgMy41LDEuMyAyLjksMC43IDYuOCwxLjIgMTEuMiwxLjIgNC4zLC0xZS01IDguMywtMC40IDExLjIsLTEuMiAxLjQsLTAuNCAyLjYsLTAuOCAzLjUsLTEuMyAwLjksLTAuNSAxLjUsLTEuMiAxLjUsLTIuMSAwLC0wLjMgLTAuMSwtMC41IC0wLjIsLTAuOCBsIDAsLTUuNiBjIDEuOSwwLjQgMy40LDAuOCA0LjQsMS4xIDAuOSwwLjMgMS4zLDAuNSAxLjYsMC43IC0wLjEsMC4xIC0wLjEsMC4xIC0wLjQsMC4zIC0wLjgsMC40IC0yLjIsMC45IC0zLjMsMS42IC0wLjUsMC4zIC0xLDAuNyAtMS4zLDEuMyAtMC4zLDAuNiAtMC4yLDEuNCAwLjIsMiAwLjcsMSAyLDEuNiAzLjUsMi40IDEuNiwwLjggMy40LDEuNiA0LjksMi41IDEuNSwwLjkgMi44LDEuOSAzLjMsMi43IDAuMiwwLjQgMC4zLDAuNyAwLjIsMSAtMC4xLDAuMyAtMC4zLDAuOCAtMC45LDEuMyAwLC0wIC0wLjYsMC4yIC0xLjUsMC4xIC0wLjksLTAuMSAtMi4xLC0wLjMgLTMuMywtMC42IC0xLjIsLTAuMyAtMi40LC0wLjYgLTMuMywtMC44IC0xLC0wLjMgLTEuNywtMC41IC0yLjIsLTAuNSAtMy4zLC0wLjMgLTYuNywxLjMgLTkuOSwyLjcgLTMuMiwxLjQgLTYuMSwyLjUgLTguNCwxLjkgLTIuMywtMC42IC0zLjcsLTEuOCAtNS4yLC0zLjIgLTEuNSwtMS4zIC0zLjEsLTIuOCAtNS41LC0zLjUgLTAuOCwtMC4yIC0yLjUsLTAuNSAtNSwtMC45IC0yLjQsLTAuNCAtNS40LC0xIC04LjMsLTEuNiAtMi45LC0wLjcgLTUuNiwtMS41IC03LjYsLTIuMyAtMSwtMC40IC0xLjcsLTAuOSAtMi4yLC0xLjMgLTAuMywtMC4zIC0wLjQsLTAuNSAtMC41LC0wLjcgMC4yLC0wLjEgMC42LC0wLjIgMS4xLC0wLjMgMSwtMC4yIDIuMywtMC4zIDMuNiwtMC41IDEuNCwtMC4yIDIuNywtMC40IDMuOSwtMC44IDAuNiwtMC4yIDEuMSwtMC40IDEuNSwtMC44IDAuNCwtMC4zIDAuOCwtMC44IDAuOCwtMS40IDAuMSwtMSAtMC40LC0xLjggLTEuMSwtMi41IC0wLjYsLTAuNyAtMS40LC0xLjIgLTIuMSwtMS43IC0wLjcsLTAuNSAtMS4zLC0xIC0xLjYsLTEuNCAtMC4xLC0wLjIgLTAuMiwtMC4zIC0wLjIsLTAuNCAtMCwtMC4xIDAsLTAuMSAwLjEsLTAuMiAwLC0wIDAuMSwtMCAwLjEsLTAgMC4zLC0wIDAuNywtMC4xIDEuMiwtMC4xIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg1LjgsMTA0LjQgMTMuNywxMy4zIDEzLjgsLTEzLjMgeiBtIDIxLjcsLTAuNCBoIDIuNSB2IC0yLjggYyAwLC0wLjUgLTAsLTAuMSAwLjEsLTAuNCBsIC0yLjcsLTIuNCB2IDUuNiB6IG0gLTYuMSwwIGggMy4xIHYgLTguNSBjIDAsLTAuMyAtMi43LC0yLjggLTMuMSwtMy4xIHYgMTEuNiB6IG0gLTYuNiwtOC43IC0wLjEsOC43IDMuMSwwIC0wLC0xMS42IHogbSAtNS43LDUuNiB2IDMuMSBoIDIuNSB2IC01LjYgYyAtMC4zLDAuMiAtMi41LDIuMiAtMi41LDIuNSB6IE0gOTkuOCw4NS40IGMgLTQuMywxLjJlLTUgLTguMSwtMC40IC0xMC45LC0xLjEgLTEuNCwtMC40IC0yLjUsLTAuOCAtMy4yLC0xLjIgLTAuNywtMC40IC0wLjksLTAuOCAtMC45LC0xIDAsLTAuMiAwLjIsLTAuNiAwLjksLTEgMC43LC0wLjQgMS44LC0wLjggMy4yLC0xLjIgMi44LC0wLjcgNi42LC0xLjIgMTAuOSwtMS4yIDQuMywtMS4xZS01IDguMSwwLjQgMTAuOSwxLjEgMS40LDAuNCAyLjUsMC44IDMuMiwxLjIgMC43LDAuNCAwLjksMC44IDAuOSwxIDAsMC4yIC0wLjIsMC42IC0wLjksMSAtMC43LDAuNCAtMS44LDAuOCAtMy4yLDEuMiAtMi44LDAuNyAtNi42LDEuMiAtMTAuOSwxLjIgeiBtIC0xNSwtMS41IDAsMzguNCBjIDAuMSwtMC4xIDAuMSwtMC4xIDAuMiwtMC4xIGwgMCwxLjggMCwwLjEgMCwwIGMgMCwwLjIgMC4zLDAuNiAwLjksMC45IDAuNywwLjQgMS44LDAuOSAzLjIsMS4yIDIuOCwwLjcgNi42LDEuMiAxMC45LDEuMiA0LjMsLTFlLTUgOC4yLC0wLjUgMTAuOSwtMS4yIDEuNCwtMC40IDIuNCwtMC44IDMuMiwtMS4yIDAuNywtMC40IDAuOSwtMC44IDAuOSwtMSAwLC0wLjEgLTAsLTAuMiAtMC4yLC0wLjQgbCAwLC01LjYgLTAsMCAwLC0zNC4xIGMgLTAuMSwwLjEgLTAuMiwwLjEgLTAuMywwLjIgLTAuOSwwLjUgLTIuMSwxIC0zLjUsMS4zIC0yLjksMC43IC02LjgsMS4yIC0xMS4yLDEuMiAtNC4zLDEuMWUtNSAtOC4zLC0wLjQgLTExLjIsLTEuMiAtMS40LC0wLjQgLTIuNiwtMC44IC0zLjUsLTEuMyAtMC4xLC0wLjEgLTAuMiwtMC4xIC0wLjMsLTAuMiB6IG0gMTQuOCw2LjEgMTQuNiwxNC4zIC0xNC4yLDEzLjggLTAuOCwwIEwgODUsMTA0LjIgOTkuNiw5MCB6IG0gLTI2LjcsMjMuNyBjIDEuMSwtMCAyLjUsMCAzLjksMC4xIDEuNCwwLjEgMi45LDAuMiA0LjIsMC4zIDEuMSwwLjEgMS45LDAuMSAyLjYsLTAgbCAwLDEwIDAsMC42IDAuMywwIGMgMC4yLDAuNiAwLjcsMS4xIDEuNCwxLjUgMC45LDAuNSAyLjEsMSAzLjUsMS4zIDIuOSwwLjcgNi44LDEuMiAxMS4yLDEuMiA0LjMsLTFlLTUgOC4zLC0wLjQgMTEuMiwtMS4yIDEuNCwtMC40IDIuNiwtMC44IDMuNSwtMS4zIDAuOSwtMC41IDEuNSwtMS4yIDEuNSwtMi4xIDAsLTAuMyAtMC4xLC0wLjUgLTAuMiwtMC44IGwgMCwtNS42IGMgMS45LDAuNCAzLjQsMC44IDQuNCwxLjEgMC45LDAuMyAxLjMsMC41IDEuNiwwLjcgLTAuMSwwLjEgLTAuMSwwLjEgLTAuNCwwLjMgLTAuOCwwLjQgLTIuMiwwLjkgLTMuMywxLjYgLTAuNSwwLjMgLTEsMC43IC0xLjMsMS4zIC0wLjMsMC42IC0wLjIsMS40IDAuMiwyIDAuNywxIDIsMS42IDMuNSwyLjQgMS42LDAuOCAzLjQsMS42IDQuOSwyLjUgMS41LDAuOSAyLjgsMS45IDMuMywyLjcgMC4yLDAuNCAwLjMsMC43IDAuMiwxIC0wLjEsMC4zIC0wLjMsMC44IC0wLjksMS4zIDAsLTAgLTAuNiwwLjIgLTEuNSwwLjEgLTAuOSwtMC4xIC0yLjEsLTAuMyAtMy4zLC0wLjYgLTEuMiwtMC4zIC0yLjQsLTAuNiAtMy4zLC0wLjggLTEsLTAuMyAtMS43LC0wLjUgLTIuMiwtMC41IC0zLjMsLTAuMyAtNi43LDEuMyAtOS45LDIuNyAtMy4yLDEuNCAtNi4xLDIuNSAtOC40LDEuOSAtMi4zLC0wLjYgLTMuNywtMS44IC01LjIsLTMuMiAtMS41LC0xLjMgLTMuMSwtMi44IC01LjUsLTMuNSAtMC44LC0wLjIgLTIuNSwtMC41IC01LC0wLjkgLTIuNCwtMC40IC01LjQsLTEgLTguMywtMS42IC0yLjksLTAuNyAtNS42LC0xLjUgLTcuNiwtMi4zIC0xLC0wLjQgLTEuNywtMC45IC0yLjIsLTEuMyAtMC4zLC0wLjMgLTAuNCwtMC41IC0wLjUsLTAuNyAwLjIsLTAuMSAwLjYsLTAuMiAxLjEsLTAuMyAxLC0wLjIgMi4zLC0wLjMgMy42LC0wLjUgMS40LC0wLjIgMi43LC0wLjQgMy45LC0wLjggMC42LC0wLjIgMS4xLC0wLjQgMS41LC0wLjggMC40LC0wLjMgMC44LC0wLjggMC44LC0xLjQgMC4xLC0xIC0wLjQsLTEuOCAtMS4xLC0yLjUgLTAuNiwtMC43IC0xLjQsLTEuMiAtMi4xLC0xLjcgLTAuNywtMC41IC0xLjMsLTEgLTEuNiwtMS40IC0wLjEsLTAuMiAtMC4yLC0wLjMgLTAuMiwtMC40IC0wLC0wLjEgMCwtMC4xIDAuMSwtMC4yIDAsLTAgMC4xLC0wIDAuMSwtMCAwLjMsLTAgMC43LC0wLjEgMS4yLC0wLjEgelwifV0saVtcIkdSLklOLklDLkNPTExFR0UvVU5JVkVSU0lUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk3LjQsMTA2LjkgaCAtMTQuOCB2IDMxLjcgaCAzMiB2IC0zMS43IEggOTkuOCBWIDk1LjEgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBoIC0yLjMgdiAyNC41IHogbSAyMy4zLC0zMC4xIC05LjYsMCAwLC0xNS4xIDIsMCAwLDEzLjMgNy42LDAgMCwxLjggTSAxMDYsNjMuNSBjIDAuNiwwLjcgMS4xLDEuNSAxLjQsMi41IDAuMywxIDAuNSwyLjEgMC41LDMuMyAtMWUtNSwxLjIgLTAuMiwyLjQgLTAuNSwzLjQgLTAuMywxIC0wLjgsMS44IC0xLjQsMi41IC0wLjYsMC43IC0xLjQsMS4yIC0yLjIsMS41IC0wLjgsMC4zIC0xLjgsMC41IC0yLjksMC41IC0xLjEsMCAtMiwtMC4yIC0yLjksLTAuNSAtMC45LC0wLjQgLTEuNiwtMC45IC0yLjIsLTEuNSAtMC42LC0wLjcgLTEuMSwtMS41IC0xLjQsLTIuNSAtMC4zLC0xIC0wLjUsLTIuMSAtMC41LC0zLjMgLTEwZS03LC0xLjIgMC4yLC0yLjMgMC41LC0zLjMgMC4zLC0xIDAuOCwtMS44IDEuNCwtMi41IDAuNiwtMC43IDEuMywtMS4yIDIuMiwtMS41IDAuOSwtMC40IDEuOSwtMC41IDIuOSwtMC41IDEuMSwxLjVlLTUgMi4xLDAuMiAyLjksMC41IDAuOSwwLjQgMS42LDAuOSAyLjIsMS41IG0gLTAuMiw1LjggYyAtMmUtNSwtMiAtMC40LC0zLjUgLTEuMywtNC41IC0wLjksLTEuMSAtMi4xLC0xLjYgLTMuNiwtMS42IC0xLjUsMS40ZS01IC0yLjcsMC41IC0zLjYsMS42IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0zZS02LDIgMC40LDMuNSAxLjMsNC42IDAuOSwxIDIuMSwxLjYgMy42LDEuNiAxLjUsMmUtNiAyLjcsLTAuNSAzLjYsLTEuNiAwLjksLTEuMSAxLjMsLTIuNiAxLjMsLTQuNiBtIC0xNCw2LjUgYyAtMC40LDAuMiAtMC43LDAuMyAtMSwwLjUgLTAuMywwLjEgLTAuNywwLjMgLTEuMiwwLjQgLTAuNCwwLjEgLTAuOSwwLjIgLTEuNCwwLjMgLTAuNSwwLjEgLTEsMC4xIC0xLjYsMC4xIC0xLjEsMCAtMi4xLC0wLjIgLTMsLTAuNSAtMC45LC0wLjMgLTEuNywtMC44IC0yLjMsLTEuNSAtMC43LC0wLjYgLTEuMiwtMS41IC0xLjUsLTIuNCAtMC40LC0xIC0wLjUsLTIuMSAtMC41LC0zLjUgLTEwZS03LC0xLjIgMC4yLC0yLjQgMC41LC0zLjMgMC40LC0xIDAuOSwtMS44IDEuNSwtMi41IDAuNiwtMC43IDEuNCwtMS4yIDIuMywtMS41IDAuOSwtMC4zIDEuOSwtMC41IDMsLTAuNSAwLjgsMS41ZS01IDEuNiwwLjEgMi40LDAuMyAwLjgsMC4yIDEuNywwLjUgMi43LDEgbCAwLDIuNCAtMC4yLDAgYyAtMC44LC0wLjcgLTEuNywtMS4yIC0yLjUsLTEuNSAtMC44LC0wLjMgLTEuNywtMC41IC0yLjYsLTAuNSAtMC44LDEuNGUtNSAtMS41LDAuMSAtMi4xLDAuNCAtMC42LDAuMiAtMS4yLDAuNiAtMS42LDEuMSAtMC41LDAuNSAtMC44LDEuMiAtMS4xLDEuOSAtMC4zLDAuOCAtMC40LDEuNyAtMC40LDIuNyAtM2UtNiwxLjEgMC4xLDIgMC40LDIuNyAwLjMsMC44IDAuNywxLjQgMS4xLDEuOSAwLjUsMC41IDEsMC45IDEuNywxLjEgMC42LDAuMiAxLjMsMC40IDIsMC40IDEsMmUtNiAxLjksLTAuMiAyLjcsLTAuNSAwLjgsLTAuMyAxLjYsLTAuOCAyLjQsLTEuNSBsIDAuMSwwIDAsMi40XCJ9XSxpW1wiR1IuSU4uSUMuU0NIT09MXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gOTguNCw5Ni40IEggODMuNyB2IDMxLjcgaCAzMiBWIDk2LjQgSCAxMDAuOSBWIDg0LjYgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBIIDk4LjQgViA5Ni40IHpcIn1dLGlbXCJHUi5JTi5JQy5SRVNUIFNUT1BcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDguNCw4OS42IHYgLTAuNCBsIDAuNiwtMC42IC0wLjQsMS40IC0zLjgsMTMuNCAtMC4yLDAuOCAtMC40LDAuNiAwLDAuOSAtMiw2LjcgNy4yLDAgdiAxOS43IGggNS4yIHYgLTE5LjcgaCAyLjcgdiAxOS43IGggNS4yIHYgLTE5LjcgaCA3LjEgbCAtMS4zLC01LjMgLTAuMiwtMC44IC00LjgsLTE2LjQgLTAuNSwtMS40IDAuNiwwLjcgMC4xLDAuNCBjIDIuMSwyLjQgNS40LDE0LjIgOC42LDE0LjIgaCAwLjQgYyAxLjIsMCAyLjEsLTEuMSAyLjEsLTIuMyB2IC0wLjYgYyAwLC0wLjUgLTQuOCwtMTAgLTUuMywtMTEuNiAtMC43LC0yIC0xLjcsLTQuMiAtMi42LC02IC0xLC0yLjEgLTEuMiwtMy44IC00LjYsLTMuOCBoIC0xMi40IGMgLTMuNCwwIC0zLjYsMS44IC00LjcsMy45IC0wLjksMS43IC0xLjksNCAtMi41LDUuOSAtMC42LDEuNiAtNS4yLDExLjEgLTUuMiwxMS42IHYgMC42IGMgMCwxLjMgMC42LDIuMyAxLjksMi4zIGggMC44IGMgMi40LDAgNi40LC0xMi4yIDguMiwtMTQuMiB6IG0gMC4yLDAuNCAwLjQsLTEuNSAtMC42LDAuNiAwLDAuNCB6IG0gMTUuMSwtMC40IC0wLjEsLTAuNCAtMC42LC0wLjYgMC41LDEuNCB6IE0gNjkuNiw4OC44IGggMi4zIHYgNDMuNiBoIDYuMSB2IC0yNS42IGggMi43IHYgMjUuNiBoIDUuOSB2IC00My42IGggMi4zIHYgMTYuNCBoIDQuNiBWIDg2LjMgbCAtMC4zLC0yLjMgaCAtMC40IGMgMCwtMi4zIC0xLjcsLTQuNCAtNCwtNC40IEggNjkuNiBjIC0zLDAgLTQuNCwzLjQgLTQuNCw2LjUgdiAxOS4xIGggNC40IFYgODguOCB6IE0gMTEwLjcsNzIuOCBjIDAsMi43IDIuNCw1LjQgNSw1LjQgaCAwLjIgYyAxLjYsMCAyLjgsLTAuNiAzLjYsLTEuNCAwLjUsLTAuNCAxLjgsLTIuNCAxLjgsLTMgdiAtMS42IGMgMCwtMi40IC0yLjgsLTQuNiAtNS40LC00LjYgLTMsLTAgLTUuMiwyLjQgLTUuMiw1LjIgeiBtIC0zNi43LDEuMSBjIDAsMiAyLjgsNC40IDUsNC40IGggMC4yIGMgNC4yLDAgNC4zLC0zLjQgNS4yLC0zLjggViA3MS42IGMgMCwtMS44IC0yLjgsLTQgLTUuMiwtNCAtMi4zLDAgLTUuMiwyLjIgLTUuMiw0IHYgMi4zIHpcIn1dLGlbXCJHUi5JTi5JQy5DT05UUk9MIFZBTFZFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE0LDExNC41IGggMTUuNyB2IDQgaCA5LjEgdiAtMjMuNiBoIC05LjEgViA5OC44IEggMTE0LjQgYyAtMC40LDAgLTIuNiwtMi42IC0yLjYsLTMuNCB2IC01LjYgaCAtOS45IHYgLTguMiBoIDEyLjMgdiAtMy42IGggLTI4LjIgdiAzLjYgaCAxMi4xIHYgOC4zIEggODkuMiB2IDYuNiBsIC0wLjIsLTAuMiAtMS44LDIuNCAtMTcuMiwwLjEgViA5NSBIIDYxLjIgdiAyMy42IGggOC45IHYgLTQgSCA4NyBjIDAuNCwwIDIsMi40IDIuNCwyLjggMC41LDAuNiAyLjIsMS45IDIuOSwyLjQgMS45LDEuMiA0LjcsMi40IDcuOCwyLjQgaCAwLjYgYyAzLjUsMCA1LjgsLTEgOC4xLC0yLjQgMS40LC0wLjggNC44LC0zLjggNS4yLC01LjMgelwifV0saVtcIkdSLklOLklDLkRBTVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDY4LjMsODkuMSBjIDIuMywwIDMuMiwtMS43IDQuNiwtMi42IDEuMSwwLjggMi4yLDIuNiA0LjQsMi42IGggMC4yIGMgMi42LDAgMy4zLC0xLjcgNC43LC0yLjYgMS40LDAuOSAyLjIsMi42IDQuNywyLjYgMi40LDAgMy4zLC0xLjggNC42LC0yLjYgMC42LDAuNCAxLjEsMS4xIDEuOSwxLjYgMC40LDAuMiAyLjIsMC45IDIuMiwxLjMgdiA2LjggQyA5NC4xLDk1LjggOTEuOCw5My44IDkxLjUsOTIuNiBoIC0wLjMgYyAtMC4zLDEuMSAtMywzLjYgLTQuNSwzLjYgLTEuNSwwIC00LjEsLTIuNiAtNC40LC0zLjggLTEsMC42IC0yLjYsMy44IC00LjYsMy44IGggLTAuNCBjIC0xLjIsMCAtNCwtMi43IC00LjIsLTMuNyAtMC44LDAuMiAtMi42LDMuNyAtNC43LDMuNyBoIC0wLjMgYyAtMS4xLDAgLTEuNywtMC43IC0yLjQsLTEuMiBsIC0xLDEuMiBjIDEsMC43IDEuNiwxLjggMy4yLDEuOCBoIDAuNCBjIDIuMywwIDMuMSwtMS44IDQuNiwtMi44IDAuNywxLjEgMi44LDIuOCA0LjcsMi44IDIuMywwIDMuMywtMiA0LjYsLTIuOCAxLjIsMC44IDIuNiwyLjggNC43LDIuOCAyLjEsMCAzLjQsLTIuMSA0LjcsLTIuOCAwLjcsMSAyLjYsMi40IDQsMi43IHYgNyBjIC0xLjQsLTAuMSAtMy40LC0yLjQgLTQsLTMuNSAtMS4xLDAuNyAtMi41LDMuNiAtNC43LDMuNiBoIC0wLjEgYyAtMi4zLDAgLTQuMSwtMy41IC00LjcsLTMuNyAtMC4zLDEgLTMsMy43IC00LjEsMy43IGggLTAuNCBjIC0yLjIsMCAtMy42LC0yLjkgLTQuNywtMy43IC0wLjYsMSAtMi44LDMuNyAtNC4xLDMuNyBIIDY3LjcgYyAtMC43LDAgLTEuNywtMSAtMi4yLC0xLjMgbCAtMC45LDEuNSBjIDEuMSwwLjcgMS43LDEuNiAzLjYsMS42IDIuNywwIDMuMSwtMS44IDQuNywtMi42IDEuNCwwLjkgMiwyLjYgNC43LDIuNiAyLjIsMCAzLjQsLTEuOCA0LjYsLTIuNiAxLjQsMSAyLjUsMi42IDQuOCwyLjYgMS44LDAgMy40LC0yIDQuNCwtMi42IDAuOSwwLjUgMSwxIDIsMS42IDAuNCwwLjMgMi4yLDAuNyAyLjIsMS4yIHYgNi44IGMgLTEuNCwtMC4zIC0zLjYsLTIuMiAtNCwtMy41IC0xLjEsMC43IC0yLjUsMy44IC00LjgsMy44IC0xLjQsMCAtNC4xLC0yLjYgLTQuNCwtMy44IC0xLjIsMC44IC0yLjYsMy44IC00LjgsMy44IC0yLDAgLTMuNywtMy4yIC00LjcsLTMuOCAtMC4zLDEgLTMsMy44IC00LjMsMy44IGggLTAuNiBjIC0wLjgsMCAtMS44LC0xIC0yLjQsLTEuMyBsIC0wLjksMS4zIGMgMS4xLDAuNyAxLjgsMS44IDMuNiwxLjggMi4yLDAgMy4zLC0xLjggNC43LC0yLjggMS4yLDAuOCAyLjYsMi45IDQuNywyLjggMi4zLC0wLjEgMy4zLC0xLjkgNC42LC0yLjggMS4yLDAuOCAyLjcsMi44IDQuNywyLjggMS45LDAgMy40LC0yIDQuNiwtMi44IDEuNiwxIDEuOCwyIDQuMSwyLjUgdiA1IGggMTcgbCAtMS40LC01LjIgYyAwLjgsMC4yIDEsMC42IDIuMiwwLjYgMiwwIDMuMywtMS45IDQuNiwtMi44IDEuMywwLjkgMi40LDIuOCA0LjcsMi44IDEuNiwwIDMuOCwtMS44IDQuNCwtMi44IDEuMywwLjMgMi41LDIuOCA1LjEsMi44IDEuMiwwIDIuNiwtMS40IDMuNCwtMS44IGwgLTEsLTEuMyBjIC0wLjcsMC40IC0xLjUsMS4zIC0yLjYsMS4zIC0yLjEsMCAtMy43LC0zLjEgLTQuNywtMy44IC0wLjcsMS40IC0yLjcsMy44IC00LjcsMy44IC0xLjMsMCAtNC4zLC0yLjYgLTQuNCwtMy44IC0xLDAuNyAtMi42LDMuOCAtNC43LDMuOCBoIC0wLjIgYyAtMS4xLDAgLTIuMiwtMC45IC0yLjcsLTEuNSAtMC40LC0wLjQgLTAuOCwtMi41IC0xLjEsLTMuMiAtMC40LC0xIC0xLjgsLTUuNiAtMS44LC02LjYgbCAtMC4zLC0wLjQgMCwtMC42IC0wLjMsLTAuNCB2IC0wLjYgbCAtMC4zLC0wLjQgLTUuMywtMTguNiAwLjIsLTAgLTAuMywtMC40IDAsLTAuNiBjIC0wLjIsLTAuMyAtMC4zLC0wLjMgLTAuMywtMC42IHYgLTAuNCBoIC01LjYgdiA3LjggYyAtMS40LC0wLjcgLTEuMiwtMC41IC0yLjQsLTEuNiAtMC4xLC0wLjEgLTEsLTAuOSAtMSwtMSAtMC40LC0wLjUgLTAuMSwtMC45IC0wLjgsLTEuMSAtMC4xLDEuMiAtMy4xLDMuOCAtNC4zLDMuOCBoIC0wLjIgYyAtMi41LDAgLTQuMiwtMy42IC00LjgsLTMuOCAtMC4zLDEuMSAtMywzLjggLTQuMiwzLjggaCAtMC40IGMgLTEuMiwwIC00LjIsLTIuNyAtNC4yLC0zLjggLTAuNSwwLjEgLTIuOCwzLjggLTQuNCwzLjggSCA2Ny43IGMgLTAuNywwIC0xLjcsLTEgLTIuMiwtMS4zIGwgLTAuOSwxLjMgYyAxLDAuNyAxLjYsMS42IDMuNCwxLjYgaCAwLjMgdiAwIHpcIn1dLGlbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYzLjIsMTExLjQgdiAxMy40IGggNzMuNiBWIDExMS43IGwgLTMuMSwwLjUgLTEuMSwtMC4xIGMgLTIuMiwwIC0zLjYsLTAuNyAtNC45LC0xLjYgLTAuNiwtMC40IC0xLjEsLTEuMSAtMS41LC0xLjggLTAuNCwtMC42IC0wLjIsLTIuMSAtMSwtMi4xIGggLTAuNCBjIC0wLjgsMCAtMC43LDEuNiAtMS4yLDIuMiAtMC40LDAuNiAtMC45LDEuMiAtMS42LDEuNyAtMS4zLDEgLTMsMS42IC01LjEsMS42IGggLTAuOSBjIC0zLjIsMCAtNi44LC0yLjEgLTYuOCwtNS4xIC0wLjMsLTAuMiAtMC40LC0wLjQgLTAuOCwtMC40IGggLTAuMyBjIC0wLjcsMCAtMC44LDEuNSAtMS4xLDIuMSAtMC40LDAuNiAtMSwxLjQgLTEuNSwxLjggLTEuMiwxIC0yLjcsMS42IC00LjgsMS42IGggLTAuOSBjIC0zLjUsMCAtNy4zLC0yLjEgLTcuMywtNS40IC0wLjQsLTAuMSAtMC40LC0wLjIgLTAuOCwtMC4yIGggLTAuMyBjIC0wLjYsMCAtMC42LDEuNSAtMS4xLDIuMiAtMC41LDAuOCAtMC43LDEuMSAtMS41LDEuNyAtMS4zLDEgLTIuNywxLjYgLTQuOCwxLjYgSCA4Mi45IGMgLTMuNSwwIC02LjcsLTIuMiAtNywtNS40IC0wLjMsLTAuMSAtMC40LC0wLjIgLTAuOCwtMC4yIGggLTAuMSBjIC0wLjcsMCAtMC44LDEuNSAtMS4yLDIuMiAtMC40LDAuNiAtMC45LDEuMiAtMS42LDEuNyAtMS40LDEgLTIuNywxLjYgLTUsMS42IGggLTEgYyAtMS4yLDAgLTIuMiwtMC40IC0zLC0wLjggbCAwLDAgeiBtIDAsLTIxLjYgMTkuNSwwIDAsMS4yIDIuNywwIDAsLTE1LjggLTIuNywwIDAsMS4yIC0xOS41LDAgeiBNIDg5LjcsODAuOSB2IDAuMSBjIDguMSwwIDE2LjIsMS4yIDIwLjYsNC45IDIuOCwyLjQgMy4xLDQuNSAzLjEsOS42IDAsNC4xIDAuNSw4LjMgNC41LDguMyBoIDAuOCBjIDEuNywwIDIuOCwtMi42IDIuOCwtNC4zIHYgLTAuOSBjIDAsLTUuMSAtMy4zLC0xMC43IC01LjksLTEzLjMgLTEuNiwtMS42IC0zLjYsLTMgLTYuMSwtMy42IC0yLjIsLTAuNSAtNiwtMS4xIC04LjYsLTEuMSBsIC0xLjgsLTAuMSAtOS40LDAuNCB6XCJ9XSxpW1wiR1IuSU4uSUMuR1JPVU5EIFdBVEVSIFdFTExcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTTg2LDY0TDg2LDcwTDc1LDExMEw4MSwxMTBMOTIsNzBMOTksNzBMOTksMTMwTDg2LDEzMEw4NiwxNDBMMTIwLDE0MEwxMjAsMTMwTDExMCwxMzBMMTEwLDg5TDEyMCw4OUwxMjAsOTNMMTMwLDkzTDEzMCw4N0MxMzAsODIuNjMxIDEyNS41NTEsODMgMTI1LjU1MSw4M0wxMTAsODNMMTEwLDcwTDExMy43NzQsNzBMMTEzLjc3NCw2NEw4Niw2NFpcIn1dLGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlMgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDkuNywxMTYuNiA0LjEsMTMuNCAtMC4yLDAuMSAtMTIuMiwtOC40IDguMywtNS4yIHogbSAtMTkuNywwIDgsNS4xIC0xMi4xLDguNCA0LjEsLTEzLjYgeiBtIDkuOCwtOS44IDguOCw4LjIgYyAtMS43LDAuNSAtOC4xLDUuNiAtOC44LDUuNiAtMC4yLDAgLTguMiwtNS40IC04LjYsLTUuOCBsIDguNSwtOC4xIHogbSA1LjMsLTQuOCAzLjEsOS44IC02LjksLTYuNCAzLjcsLTMuNCB6IG0gLTEwLjUsMC4xIDMuOCwzLjMgLTYuOSw2LjQgMy4xLC05LjcgeiBtIDIuMSwtMSA2LjQsLTAgLTMuMiwzLjIgLTMuMiwtMy4yIHogTSA5OS4yLDg0LjggQyA5OS4xLDg1LjQgOTksODUuNSA5OSw4Ni4xIHYgMiBoIC0zIGMgLTAuNSwwIC0wLjgsMC4zIC0wLjgsMC44IDAsMC41IDAuMSwwLjUgMC4yLDEgMC40LDAuMSAwLjQsMC4yIDEsMC4yIGggMi42IHYgMi44IGggLTQuNSBjIC0wLjYsMCAtMS4yLDAuMiAtMS4yLDAuOCAwLDAuNSAwLjMsMC44IDAuOCwwLjggaCA0LjkgdiA0LjkgaCAtNC41IGMgLTAuNSwwIC0wLjUsMC4xIC0wLjksMC4yIGwgLTIuNSw3LjkgLTEsMy4yIC00LjEsMTMuMyAtMS4xLDMuMSBjIDAsMiAtMS40LDMuNSAtMS40LDUuNSAwLDAuNCAwLjEsMC4yIDAuMiwwLjggaCAwLjUgYyAwLjYsMCAxNS4xLC0xMC4zIDE1LjQsLTEwLjMgMC42LDAgMTQuMiw5LjQgMTUuOCwxMC41IDAuNCwtMC4yIDEsLTAuNCAxLC0xIHYgLTAuNiBjIDAsLTAgLTEuNSwtNC40IC0xLjcsLTUgLTAuNCwtMS4xIC0xLjQsLTQuMyAtMS41LC01LjIgbCAtMSwtMy4yIC00LjEsLTEzLjIgLTAuOSwtMy40IGMgLTEsLTAuNCAtMC4zLC0yLjYgLTEuNiwtMi42IGggLTQuOCB2IC01IGggNC44IGMgMC41LDAgMC44LC0wLjMgMC44LC0wLjggMCwtMC41IC0wLjMsLTAuOCAtMC44LC0wLjggSCAxMDAuOCBWIDkwLjEgaCAyLjQgYyAwLjcsMCAxLjQsLTAuNCAxLjQsLTEgdiAtMC4yIGMgMCwtMC41IC0wLjMsLTAuOCAtMC44LC0wLjggaCAtMi45IHYgLTIuNiBjIDAsLTAuNCAtMC42LC0xIC0wLjgsLTEgLTAsLTAgLTAuNywwLjEgLTAuOCwwLjIgeiBtIDYuNywtMTUuNyBjIDcsMS42IDEwLjksNC42IDE1LjEsOC45IDMsMyA3LjMsMTEgNy4zLDE2LjkgdiA0IGMgMCwyLjEgLTEuNSw3LjcgLTIuMiw5IC0wLjcsMS4xIC0xLjIsMi40IC0xLjksMy42IC0wLjMsMC40IC0yLjQsMy4zIC0yLjQsMy40IDAsMC43IDEsMS42IDEuMiwyLjYgMS43LC0wLjQgNC44LC02LjMgNS43LC04LjIgMS4yLC0yLjUgMi43LC03LjggMi43LC0xMS40IFYgOTQuMyBjIDAsLTAuMSAtMC45LC00LjkgLTEsLTUuNSAtMC4zLC0wLjkgLTEuNCwtMy43IC0xLjgsLTQuOCAtMC45LC0yLjIgLTMuNywtNi40IC01LjIsLTggLTMuNiwtMy42IC0xMC42LC05LjIgLTE2LjksLTkuNyBsIC0wLjQsMi44IHogbSAtMS42LDEwLjcgYyA2LDAuNSAxMy4zLDkuMiAxMy4zLDE2LjEgdiAyLjIgYyAwLDEuNSAtMS40LDUuNSAtMS40LDUuNSAwLDAuMiAxLjIsMi45IDEuNCwzLjIgbCAwLjIsMC4xIDEuNiwtMy40IDAuMSwtMC42IDAuNywtNS45IDAuMiwtMC40IC0xLC01LjkgYyAtMC43LC0wLjMgLTAuNiwtMS40IC0xLjEsLTIuMiAtMC40LC0wLjggLTAuOCwtMS42IC0xLjMsLTIuMyAtMS4xLC0xLjYgLTEuOCwtMi42IC0zLjIsLTMuOSAtMi4yLC0yLjIgLTUuOCwtNC4yIC05LjIsLTUgbCAtMC4zLDIuOCB6IE0gNjguNyw5NS4yIHYgNS4xIGMgMCw0LjIgNS40LDE2LjMgNy45LDE3IDAuMSwtMC41IDEsLTIuMiAxLC0yLjYgMCwwIC0yLjEsLTIuOSAtMi4zLC0zLjQgLTAuNywtMS4zIC0xLjMsLTIuNCAtMS45LC0zLjggLTEsLTIuNiAtMS44LC02IC0xLjgsLTkuNiB2IC0yLjQgYyAwLC04IDMuMywtMTIuOSA2LjksLTE3LjUgMS40LC0xLjggNC43LC00LjQgNi43LC01LjYgMS40LC0wLjggMi41LC0xLjQgNC4xLC0yLjEgMC41LC0wLjIgNC41LC0xLjMgNC41LC0xLjYgbCAtMC4yLC0yLjYgYyAtMi40LDAuMSAtOCwyLjYgLTkuNiwzLjcgLTMuMiwxLjkgLTQuOCwzLjYgLTcuMyw2LjEgLTMuNiwzLjYgLTcuOCwxMiAtNy44LDE5LjEgbCAwLDAgeiBtIDEwLjcsMCB2IDIuOSBjIDAsMS45IDAuMiwzLjEgMC44LDQuNSAwLjIsMC40IDEuNSw0IDEuNSw0IGwgMC40LC0wIDEuNSwtMi45IGMgLTAuOSwtMS4yIC0xLjQsLTQgLTEuNCwtNi4yIHYgLTEuOCBjIDAsLTMuNyAyLjMsLTguMyA0LjIsLTEwLjMgMS44LC0xLjggNS45LC01LjUgOS4xLC01LjYgTCA5NSw3Ny4xIEMgODgsNzcuNiA3OS40LDg3LjMgNzkuNCw5NS4yIHpcIn1dLGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlMgVE9XRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDIuNSwxMTkuMiAxMiwtOCAyLjgsOS4yIDEuMyw0IDIuMSw2LjkgLTE4LjIsLTEyIHogbSAtMjMsMTIgMy40LC0xMS43IDIsLTUuOSAwLjgsLTIuNiAxMS45LDguMiAtMTgsMTIgeiBtIDIwLjQsLTM0LjYgMTMsMTIuMiBjIC0xLjUsMSAtMTIuMyw4LjUgLTEzLjEsOC41IC0wLjEsMCAtMTEuNiwtNy43IC0xMi43LC04LjUgTCA5OS45LDk2LjYgeiBtIDcuNywtNy4xIDAuMiwwLjIgMS44LDUuNyAyLjUsOC43IC0xMC4xLC05LjMgNS42LC01LjIgMCwwIHogbSAtMTUuNSwwLjYgdiAtMC42IGwgMC40LDAuMiA1LjQsNSAtMTAsOS40IDIuNiwtOSAxLjYsLTUgeiBtIDIuOSwtMS43IDkuOCwtMCAtNSw0LjQgLTQuOCwtNC40IHogbSAzLjYsLTIzLjEgdiAzLjYgaCAtNC40IGMgLTAuNSwwIC0xLDAuNiAtMSwxIHYgMC42IGMgMCwwLjcgMC44LDEgMS41LDEgaCA0IHYgNC4yIGggLTcuMiBjIC0wLjUsMCAtMSwwLjYgLTEsMSB2IDAuMiBjIDAsMSAwLjUsMS41IDEuNSwxLjUgaCA2LjggdiA3IGggLTYuOCBjIC0wLjgsMCAtMSwwLjMgLTEuMywwLjcgbCAtMC42LDIgLTQuOSwxNS42IC0zLDkuNiAtMy4xLDkuNCAtMC4xLDAuOCAtMi45LDguNyAtMC4xLDAuOCAtMC41LDIuMiBjIDEsMC4yIDAuNSwwLjYgMS4zLDAuNiBoIDAuMiBjIDAuOCwwIDIwLjEsLTEzLjcgMjMuMSwtMTUuMiAyLjUsMS43IDIyLjQsMTUuMiAyMy41LDE1LjIgMC42LDAgMSwtMC43IDEsLTEuMyAwLC0wLjEgLTEuNCwtNCAtMS41LC00LjIgbCAtMC4xLC0wLjggLTMuMSwtOS43IC0yLjksLTkuMyAtNC43LC0xNS43IGMgLTAuNiwtMC44IC0xLjQsLTMuOCAtMS44LC01IC0wLjYsLTEuOCAtMC41LC00LjMgLTIuNSwtNC4zIGggLTYuOCB2IC03IGggNy4yIGMgMC41LDAgMSwtMC42IDEsLTEgdiAtMC40IGMgMCwtMC42IC0wLjIsLTEuMyAtMC44LC0xLjMgaCAtNy40IHYgLTQuMiBoIDQgYyAwLjcsMCAxLjUsLTAuNCAxLjUsLTEgdiAtMC42IGMgMCwtMC43IC0wLjgsLTEgLTEuNSwtMSBoIC00IHYgLTQgYyAwLC0wLjYgLTAuNywtMSAtMS4zLC0xIC0wLjgsLTAgLTEuMywwLjYgLTEuMywxLjQgbCAwLDAgeiBtIC02LjYsMjQuOCAwLjQsLTAuNCAtMC40LC0wLjIgelwifV0saVtcIkdSLklOLklDLkFJUiBUUkFGRklDIENPTlRST0wgRkFDSUxJVFlcIl09YShcIkFUQ1wiKSxpW1wiR1IuSU4uSUMuUFJPUEFORSBGQUNJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjcsNzMuMSB2IDAuMiBjIDAsMSAwLjUsMS41IDEuNSwxLjUgMC41LDAgMS4xLC0wLjYgMS4xLC0xLjEgMCwtMC44IC0wLjIsLTAuOCAtMC4yLC0xLjUgLTAuNSwtMC4xIC0wLjUsLTAuMiAtMS4xLC0wLjIgaCAtMC4yIGMgLTAuNSwwIC0xLjEsMC42IC0xLjEsMS4xIHogbSAtMTIuNiw1OC41IGggMjguNCB2IDMuMyBoIC0yOC40IHYgLTMuMyB6IE0gNzUuOCwxMTkgaCA0OC41IHYgMy4zIGMgMCwyIC04LjgsNy44IC05LjgsNy44IEggODUuOCBjIC0xLDAgLTEwLC01LjggLTEwLC03LjYgdiAtMy41IGwgMCwwIHogbSAwLC0yNy41IGMgMCwtMS4xIDcuMiwtNS44IDguNSwtNi42IDIuNiwtMS41IDcuNCwtMy43IDExLjQsLTMuNyBoIDguNSBjIDQuMSwwIDkuMSwyIDExLjYsMy43IDEuMywwLjkgOC41LDUuNCA4LjUsNi42IHYgNC4yIEggNzUuOCBWIDkxLjUgbCAwLDAgeiBNIDk4LjIsNzcuMSBjIDAuNywwIDAuOCwwLjIgMS41LDAuMiBoIDAuNCBjIDAuOCwwIDAuOCwtMC4yIDEuNSwtMC4yIHYgMS44IGwgMS4yLDAuOCAtNS41LDAgYyAwLjMsLTAuNSAwLjksLTAuOCAwLjksLTEuMyBsIC0wLC0xLjMgMCwwIHogbSAtMS4xLC00IGMgMCwtMS40IDEuNCwtMi40IDIuOCwtMi40IDEuMywwIDIuOCwwLjkgMi44LDIgdiAxLjEgYyAwLDEuNCAtMS42LDIuNCAtMywyLjQgLTEsMCAtMi42LC0xLjIgLTIuNiwtMi40IHYgLTAuNyBoIC0wIHogbSAxMi4yLC04LjEgaCAzLjUgdiAzLjUgaCAtMS44IHYgNi44IGMgMC43LDAgMi40LDAuNiAyLjQsMS4zIHYgMy43IEggMTA5LjQgViA2NS4xIHogbSAtMjIuNywwIGggNC4yIFYgODAuMyBIIDg1LjggdiAtNC4xIGMgMC44LC0wLjIgMy4xLC0wLjggMy4xLC0xLjUgdiAtNi4xIGggLTIuMiB2IC0zLjUgeiBtIDUuNywwIGggMTUuNSB2IDE1LjMgYyAtMS42LC0wLjQgLTQuOCwtMC45IC00LjgsLTIuNiB2IC0wLjkgYyAwLC0xLjUgMC45LC0yLjEgMC45LC0yLjYgdiAtMS4xIGMgMCwtMy4yIC0zLC0zLjIgLTMuMywtNC40IGggNC4yIHYgLTEuNSBoIC05LjYgdiAxLjUgaCA0LjIgdiAwLjYgYyAtMS45LDAuMSAtMy4xLDEuOSAtMy4xLDQgdiAwLjYgYyAwLDEgMC45LDIgMC45LDIuNCB2IDEuMyBjIDAsMS40IC0zLjQsMi4zIC00LjgsMi42IFYgNjUuMSBsIDAsMCB6IG0gLTcuMiw0LjggaCAyLjIgdiA0IGMgMCwwLjggLTIuMSwxLjIgLTIuOCwxLjMgdiA2LjggaCAzIGMgLTAuNiwwLjQgLTIuNywxLjIgLTMuNiwxLjggLTEuMiwwLjcgLTIuMiwxLjQgLTMuNCwyLjEgLTAuOSwwLjYgLTYuMSw0LjcgLTYuMyw0LjggdiAzMS42IGMgMCwxLjkgMy4yLDQuNCA0LjUsNS4zIDEsMC42IDUuOCwzLjMgNS44LDQuMSB2IDQuOCBoIDMxLjIgdiAtNC44IGMgMCwtMS42IDEwLC00LjYgMTAsLTEwIFYgOTEuMSBjIDAsLTAuOSAtNSwtNC40IC02LC01LjEgLTEuMiwtMC44IC0yLjEsLTEuNCAtMy4zLC0yLjEgLTAuOSwtMC42IC0zLjIsLTEuNCAtMy43LC0xLjkgaCAyLjQgdiAtNi44IGMgLTAuNywtMC4yIC0yLjYsLTAuNSAtMi42LC0xLjMgdiAtNCBoIDIgViA2My41IEggODUuMiB2IDYuMyB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTQuNCwxMzQuOSAwLC0zLjMgLTI4LjQsMCAwLDMuMyB6IE0gNzUuOCwxMjIuNSBjIDAsMS45IDksNy42IDEwLDcuNiBoIDI4LjYgYyAxLDAgOS44LC01LjkgOS44LC03LjggdiAtMy4zIEggNzUuOCB2IDMuNSBsIDAsMCB6IG0gMCwtMzEgdiA0LjIgaCA0OC41IFYgOTEuNSBjIDAsLTEuMiAtNy4yLC01LjcgLTguNSwtNi42IC0yLjUsLTEuNyAtNy41LC0zLjcgLTExLjYsLTMuNyBoIC04LjUgYyAtMy45LDAgLTguOCwyLjIgLTExLjQsMy43IC0xLjMsMC44IC04LjUsNS40IC04LjUsNi42IGwgMCwwIHogTSAxMDkuNCw4MC4zIGggNC4yIHYgLTMuNyBjIDAsLTAuOCAtMS43LC0xLjIgLTIuNCwtMS4zIHYgLTYuOCBoIDEuOCBWIDY1LjEgSCAxMDkuNCBWIDgwLjMgeiBNIDg2LjcsNjguNiBoIDIuMiB2IDYuMSBjIDAsMC44IC0yLjMsMS40IC0zLDEuNSB2IDQuMiBoIDUgViA2NS4xIGggLTQuMiB2IDMuNSB6IG0gMTEuNiw5LjggYyAwLDAuNiAtMC42LDAuOCAtMC45LDEuMyBsIDUuNSwtMC4xIC0xLjEsLTAuOCBWIDc3LjEgYyAtMC43LDAgLTAuOCwwLjIgLTEuNSwwLjIgSCA5OS44IGMgLTAuOCwwIC0wLjgsLTAuMiAtMS41LC0wLjIgbCAtMCwxLjMgMCwwIHogbSAyLjgsLTYuMSBjIDAuMSwwLjcgMC4yLDAuOCAwLjIsMS42IDAsMC41IC0wLjYsMS4xIC0xLjEsMS4xIC0xLDAgLTEuNSwtMC41IC0xLjUsLTEuNSB2IC0wLjIgYyAwLC0wLjUgMC42LC0xLjEgMS4xLC0xLjEgaCAwLjIgYyAwLjYsMCAwLjYsMC4xIDEuMSwwLjIgeiBtIC0zLjksMC45IHYgMC43IGMgMCwxLjIgMS42LDIuNCAyLjYsMi40IDEuNCwwIDMsLTEgMywtMi40IFYgNzIuNyBjIDAsLTEgLTEuNiwtMiAtMi44LC0yIC0xLjQsMCAtMi44LDEgLTIuOCwyLjQgelwifV0saVtcIkdSLklOLklDLkdPVkVSTk1FTlQgU0lURSBJTkZSQVNUUlVDVFVSRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEwMCw2Ny4zIEMgOTAuMTEyMiw3Mi4xMDM3IDc5LjMzMzYsNzcuMzk5MiA3MCw4MiBjIC0xLjIsMC42IC0zLjgsMS4zIC0zLjgsMi44IGwgLTAuMSwwIDAsMC40IGMgMCwwLjYgMC4xLDAuNiAwLjIsMS4xIDAuNSwwLjEgMC41LDAuMiAxLjEsMC4yIGwgNjUsMCBjIDAuNywwIDEuNywtMC42IDEuNywtMS4xIDAsLTIuMiAtMS43LC0yLjQgLTMuMiwtMyBDIDExOS4zOTEsNzYuNzU3NSAxMDkuMTcsNzEuNzk0MSAxMDAsNjcuMyBaIG0gLTAuMSwzLjQgYyAwLjIsMCAyNC41LDEyIDI1LjksMTMgbCAtNTEuNiwwIDAsLTAuMSBDIDc1LDgzIDk5LjcsNzAuNyA5OS45LDcwLjcgWiBtIDMxLjYsNTUuNiAwLC0zIC02My4zLDAgMCwzIHogbSAyLjMsNi40IDAsLTMgLTY3LjcsMCAwLDMgeiBtIC02LjIsLTQwLjcgMi40LDAgMCwtMy4yIC03LjksMCAwLDMuMiAyLjEsMCAtMC42LDI1LjUgLTEuNSwwIDAsMy44IDcuOSwwIDAsLTMuOCAtMS41LDAgeiBtIC0xNC42LC0zLjIgLTcuNiwwIDAsMy4yIDIuMiwwIC0wLjksMjUuNCAtMS4zLDAgMCwzLjggNy42LDAgMCwtMy44IC0xLjQsMCAtMC43LC0yNS41IDIuMSwwIHogbSAtMjAuOCwzLjEgMi4zLDAgMCwtMy4yIC03LjgsMCAwLDMuMiAyLjMsMCAtMC44LDI1LjQgLTEuNSwwIDAsMy44IDcuOCwwIDAsLTMuOCAtMS43LDAgeiBtIC0yMi41LDI1LjUgMCwzLjggOCwwIDAsLTMuOCAtMS41LDAgLTAuOCwtMjUuNSAyLjMsMCAwLC0zLjIgLTgsMCAwLDMuMiAyLjQsMCAtMC45LDI1LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzQuMSw4My42IGggNTEuNiBDIDEyNC4zLDgyLjcgMTAwLDcwLjcgOTkuOCw3MC43IDk5LjYsNzAuNyA3NC45LDgzIDc0LjEsODMuNiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2NS4yLDkzLjEgYyAwLC0wLjUgMTUuNiwtMTEuNSAxNy4zLC0xMi44IDEuNSwtMS4yIDE3LjMsLTEyLjYgMTcuNCwtMTIuNiAwLjYsMCAxNS45LDExLjIgMTcuNiwxMi41IDEuNywxLjMgMTcuMywxMi40IDE3LjMsMTIuOSAwLDAgLTYuMSwxOC42IC02LjcsMjAuMyAtMS4yLDMuNCAtMi4yLDYuOCAtMy40LDEwLjMgLTEsMyAtMi43LDcuMiAtMy4zLDEwIEggNzguNCBjIC0wLjEsLTEuNyAtNS42LC0xOCAtNi41LC0yMC40IC0wLjYsLTEuNCAtNi42LC0yMC4xIC02LjYsLTIwLjEgeiBtIDguNCwzOC41IDIsNi4xIDQ5LDAgOC40LC0yNi40IDYuNiwtMjAuNSAtMzkuNywtMjguNyAtMzkuNiwyOC44IDEzLjMsNDAuNiAwLDAgeiBNIDEwMCw3Ni4yIGMgMi43LDIuNCAyNi42LDE4LjcgMjYuNiwxOS42IDAsMC44IC00LjEsMTIuNyAtNC41LDEzLjQgbCAtNS42LDE3LjQgLTMyLjUsMCBjIC0wLjksMCAtMywtNy40IC0zLjUsLTguNyAtMC42LC0xLjggLTIuOSwtNy44IC0yLjksLTkuNCBMIDc0LjMsOTguOSA3My41LDk1LjUgMTAwLDc2LjIgeiBtIDMwLjUsMTggYyAtMy4xLC0yLjEgLTMwLC0yMi4yIC0zMC43LC0yMi4yIC0wLjEsMCAtMTMuOCwxMC4xIC0xNS4yLDExLjEgLTIsMS40IC0xNC4zLDEwLjcgLTE1LjIsMTAuOSB2IDAuNyBjIDAsMSAyLjksNyAyLjksOS4zIGwgOC43LDI2LjMgMzcuNywwIDUsLTE1LjcgNi42LC0yMC40IHogbSAtNTAuNCwzLjIgYyAwLjgsLTAuMiA4LjYsLTYuMSAxMCwtNyAxLjIsLTAuOCA5LjUsLTcuMSAxMCwtNy4xIDAsMCA5LDYuNSAxMCw3LjIgMS4yLDAuOCA5LjcsNi41IDkuNyw3LjMgMCwxLjIgLTAuNCwyIC0wLjksMi43IDAsMS42IC0yLjYsOC43IC0zLjMsMTAuNiAtMC41LDEuNCAtMi44LDEwLjEgLTMuNywxMC4xIEggODguMSBjIC0wLjcsMCAtMS44LC00IC0yLC00LjggLTAuNiwtMS43IC0xLjIsLTMuMyAtMS43LC01LjEgLTAuNiwtMi4xIC0zLjEsLTguNyAtMy4xLC0xMC4zIGwgLTAuMywwLjEgLTAuOSwtMy43IHogbSAtMy4yLC0wLjcgOC44LDI3IDI4LjIsLTAgOC43LC0yNy4yIGMgLTMuMiwtMS43IC0yMS43LC0xNi4zIC0yMi45LC0xNi4zIC0wLjMsMCAtMjAuNiwxNSAtMjIuOSwxNi42IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDc3LDk2LjggYyAyLjMsLTEuNSAyMi42LC0xNi42IDIyLjksLTE2LjYgMS4yLDAgMTkuNywxNC42IDIyLjksMTYuMyBsIC04LjcsMjcuMiAtMjguMywwIC04LjgsLTI3IHogbSAtMy42LC0xLjMgMC45LDMuNCAzLjQsOS43IGMgMCwxLjUgMi4zLDcuNiAyLjksOS40IDAuNCwxLjMgMi41LDguNyAzLjUsOC43IGwgMzIuNSwtMCA1LjUsLTE3LjQgYyAwLjQsLTAuNiA0LjUsLTEyLjYgNC41LC0xMy40IDAsLTEgLTIzLjksLTE3LjIgLTI2LjYsLTE5LjYgTCA3My41LDk1LjUgeiBtIDYuNywyIDAuOSwzLjcgMC4zLC0wLjEgYyAwLDEuNiAyLjQsOC4yIDMuMSwxMC4zIDAuNSwxLjggMS4xLDMuNCAxLjcsNS4xIDAuMiwwLjggMS4zLDQuOCAyLDQuOCBoIDIzLjggYyAxLDAgMy4zLC04LjYgMy43LC0xMC4xIDAuNiwtMS45IDMuMywtOSAzLjMsLTEwLjYgMC41LC0wLjcgMSwtMS41IDEsLTIuNyAwLC0wLjggLTguNSwtNi41IC05LjcsLTcuMyAtMSwtMC43IC05LjksLTcuMiAtMTAsLTcuMiAtMC41LDAgLTguOCw2LjIgLTEwLDcgLTEuMywxIC05LjIsNi44IC0xMCw3LjEgeiBtIDQzLjgsMTcuMSAtNSwxNS43IC0zNy43LC0wIC04LjcsLTI2LjMgYyAwLC0yLjMgLTIuOSwtOC4zIC0yLjksLTkuMyB2IC0wLjcgYyAxLC0wLjIgMTMuMiwtOS41IDE1LjIsLTEwLjkgMS40LC0xIDE1LjEsLTExLjEgMTUuMiwtMTEuMSAwLjcsMCAyNy42LDIwIDMwLjcsMjIuMiBsIC02LjYsMjAuNCB6IE0gNjUuMiw5My4xIGMgMCwwIDYsMTguNyA2LjYsMjAuMSAxLDIuNCA2LjQsMTguNyA2LjUsMjAuNCBoIDQzLjEgYyAwLjYsLTIuOCAyLjMsLTcgMy4zLC0xMCAxLjIsLTMuNSAyLjEsLTYuOCAzLjQsLTEwLjMgMC42LC0xLjcgNi43LC0yMC4yIDYuNywtMjAuMyAwLC0wLjUgLTE1LjYsLTExLjUgLTE3LjMsLTEyLjkgQyAxMTUuOCw3OSAxMDAuNSw2Ny43IDk5LjksNjcuNyA5OS44LDY3LjcgODQuMSw3OS4yIDgyLjUsODAuMyA4MC44LDgxLjYgNjUuMiw5Mi43IDY1LjIsOTMuMSB6XCJ9XSxpW1wiR1IuSU4uSUMuUE9TVEFMIFNFUlZJQ0UgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSA2NC4zLDg2LjYgOTkuOSwxMDIuMSAxMzUuNyw4Ni42IHYgMzEuOCBIIDY0LjMgdiAtMzEuOCBsIDAsMCB6IG0gNjIuNSwxLjkgYyAtMy4xLDEuMiAtNS45LDIuNiAtOSwzLjkgLTIuMiwwLjkgLTE3LjEsNy43IC0xOCw3LjcgLTAuNSwwIC0xNS44LC03IC0xNy44LC03LjggLTMsLTEuMiAtNS45LC0yLjggLTguOCwtMy45IC0yLjMsLTAuOSAtNi44LC0zLjQgLTguOCwtMy44IHYgLTMuMiBoIDcxLjUgdiAzLjIgYyAtMi4xLDAuNCAtNi42LDIuOSAtOSwzLjkgeiBtIC02NC4xLDMxLjcgaCA3NC43IFYgNzkuOCBIIDYyLjcgdiA0MC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDY0LjMsODYuNiAwLDMxLjggNzEuNSwwIDAsLTMxLjggLTM1LjgsMTUuNSB6IG0gMCwtMiBjIDIsMC41IDYuNSwzIDguOCwzLjggMi45LDEuMSA1LjgsMi43IDguOCwzLjkgMiwwLjggMTcuMyw3LjggMTcuOCw3LjggMC45LDAgMTUuOSwtNi44IDE4LC03LjcgMy4xLC0xLjMgNS45LC0yLjYgOSwtMy45IDIuNCwtMSA2LjksLTMuNCA5LC0zLjkgViA4MS40IEggNjQuMyB2IDMuMiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuUE9TVEFMIERJU1RSSUJVVElPTiBDRU5URVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSA2NC4zLDk0LjYgOTkuOSwxMTAuMSAxMzUuNyw5NC42IFYgMTI2LjQgSCA2NC4zIGwgNGUtNCwtMzEuOCAwLDAgeiBtIDYyLjUsMS45IGMgLTMuMSwxLjIgLTUuOSwyLjYgLTksMy45IC0yLjIsMC45IC0xNy4xLDcuNyAtMTguMSw3LjcgLTAuNSwwIC0xNS43LC02LjkgLTE3LjgsLTcuOCAtMywtMS4yIC01LjksLTIuOCAtOC44LC0zLjkgLTIuMywtMC45IC02LjgsLTMuNCAtOC44LC0zLjkgdiAtMy4yIGggNzEuNSB2IDMuMiBjIC0yLjEsMC41IC02LjYsMi45IC05LDMuOSB6IE0gNjIuNywxMjguMiBoIDc0LjcgViA4Ny44IEggNjIuNyB2IDQwLjUgeiBtIDY2LjEsLTU0LjQgLTUuNCwwIDAsMTMuMyAtMiwwIDAsLTEzLjMgLTUuNCwwIDAsLTEuOCAxMi44LDAgMCwxLjggbSAtMTQsOSBjIC0xZS01LDAuNiAtMC4xLDEuMiAtMC40LDEuNyAtMC4zLDAuNiAtMC43LDEuMSAtMS4xLDEuNSAtMC41LDAuNCAtMS4yLDAuOCAtMS45LDEgLTAuNywwLjIgLTEuNiwwLjQgLTIuNiwwLjQgLTEuMSwwIC0yLjEsLTAuMSAtMi45LC0wLjMgLTAuOSwtMC4yIC0xLjgsLTAuNSAtMi43LC0wLjkgbCAwLC0yLjUgMC4xLDAgYyAwLjgsMC42IDEuNiwxLjEgMi43LDEuNSAxLDAuMyAxLjksMC41IDIuOCwwLjUgMS4yLDEwZS03IDIuMiwtMC4yIDIuOSwtMC43IDAuNywtMC41IDEsLTEuMSAxLC0xLjkgLTFlLTUsLTAuNyAtMC4yLC0xLjIgLTAuNSwtMS41IC0wLjMsLTAuMyAtMC44LC0wLjYgLTEuNSwtMC43IC0wLjUsLTAuMSAtMS4xLC0wLjIgLTEuNywtMC4zIC0wLjYsLTAuMSAtMS4yLC0wLjIgLTEuOSwtMC4zIC0xLjMsLTAuMyAtMi4zLC0wLjggLTMsLTEuNSAtMC42LC0wLjcgLTEsLTEuNiAtMSwtMi43IDAsLTEuMyAwLjUsLTIuMyAxLjYsLTMuMSAxLjEsLTAuOCAyLjQsLTEuMiA0LjEsLTEuMiAxLjEsMS42ZS01IDIsMC4xIDIuOSwwLjMgMC45LDAuMiAxLjcsMC41IDIuNCwwLjggbCAwLDIuNCAtMC4xLDAgYyAtMC42LC0wLjUgLTEuMywtMC45IC0yLjMsLTEuMiAtMC45LC0wLjMgLTEuOSwtMC41IC0yLjksLTAuNSAtMS4xLDEuM2UtNSAtMS45LDAuMiAtMi42LDAuNyAtMC43LDAuNCAtMSwxIC0xLDEuNyAtMWUtNSwwLjYgMC4yLDEuMSAwLjUsMS41IDAuMywwLjQgMC45LDAuNiAxLjcsMC44IDAuNCwwLjEgMSwwLjIgMS44LDAuMyAwLjgsMC4xIDEuNSwwLjMgMiwwLjQgMS4xLDAuMyAyLDAuNyAyLjUsMS40IDAuNiwwLjYgMC45LDEuNCAwLjksMi41IG0gLTE0LjQsNC4zIC02LDAgMCwtMS41IDIsMCAwLC0xMiAtMiwwIDAsLTEuNSA2LDAgMCwxLjUgLTIsMCAwLDEyIDIsMCAwLDEuNSBtIC04LjYsLTcuNSBjIC0xLjVlLTUsMS40IC0wLjMsMi42IC0wLjksMy43IC0wLjYsMS4xIC0xLjQsMiAtMi40LDIuNiAtMC43LDAuNCAtMS41LDAuNyAtMi4zLDAuOSAtMC44LDAuMiAtMiwwLjMgLTMuNCwwLjMgbCAtMy44LDAgMCwtMTUuMSAzLjgsMCBjIDEuNSwxLjVlLTUgMi42LDAuMSAzLjUsMC4zIDAuOSwwLjIgMS42LDAuNSAyLjIsMC45IDEsMC42IDEuOCwxLjUgMi40LDIuNiAwLjYsMS4xIDAuOSwyLjMgMC45LDMuOCBtIC0yLjEsLTAgYyAtMS4yZS01LC0xLjIgLTAuMiwtMi4yIC0wLjYsLTMgLTAuNCwtMC44IC0xLC0xLjUgLTEuOCwtMS45IC0wLjYsLTAuMyAtMS4yLC0wLjYgLTEuOSwtMC43IC0wLjcsLTAuMSAtMS41LC0wLjIgLTIuNCwtMC4yIGwgLTEuOSwwIDAsMTEuNyAxLjksMCBjIDEsMmUtNiAxLjgsLTAuMSAyLjUsLTAuMiAwLjcsLTAuMSAxLjQsLTAuNCAyLC0wLjggMC44LC0wLjUgMS4zLC0xLjEgMS43LC0xLjkgMC40LC0wLjggMC42LC0xLjggMC42LC0yLjlcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyNi44LDk2LjUgYyAtMy4xLDEuMiAtNS45LDIuNiAtOSwzLjkgLTIuMiwwLjkgLTE3LjEsNy43IC0xOC4xLDcuNyAtMC41LDAgLTE1LjcsLTYuOSAtMTcuOCwtNy44IC0zLC0xLjIgLTUuOSwtMi44IC04LjgsLTMuOSAtMi4zLC0wLjkgLTYuOCwtMy40IC04LjgsLTMuOSB2IC0zLjIgaCA3MS41IHYgMy4yIGMgLTIuMSwwLjUgLTYuNiwyLjkgLTksMy45IHogbSAtNjIuNSwtMS45IDM1LjYsMTUuNSAzNS44LC0xNS41IFYgMTI2LjQgSCA2NC4zIGwgNGUtNCwtMzEuOCAwLDAgelwifV0saVtcIkdSLklOLklDLlBPU1QgT0ZGSUNFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzQuNyw5Mi44IDI0LjksMTAuOCBMIDEyNC43LDkyLjggViAxMTUuMSBIIDc0LjcgViA5Mi44IGwgMCwwIHogbSA0My43LDEuMyBjIC0yLjIsMC45IC00LjEsMS44IC02LjMsMi43IC0xLjUsMC42IC0xMiw1LjQgLTEyLjYsNS40IC0wLjQsMCAtMTEsLTQuOSAtMTIuNSwtNS40IC0yLjEsLTAuOCAtNC4xLC0xLjkgLTYuMiwtMi43IC0xLjYsLTAuNiAtNC44LC0yLjQgLTYuMiwtMi43IHYgLTIuMiBoIDUwIHYgMi4zIGMgLTEuNSwwLjMgLTQuNiwyIC02LjMsMi43IHogTSA3My42LDExNi40IEggMTI1LjggViA4OC4xIEggNzMuNiBWIDExNi40IHogTSA5OS44LDY0LjMgYyAwLjIsMCAzNS41LDE5LjggMzcuMSwyMS4yIGggLTQuOCB2IDM4LjYgaCAtNjMuOSB2IC0zOC42IGggLTQuOSBjIDEuNiwtMS40IDYuOSwtNC4xIDkuMSwtNS4zIDMuMSwtMS44IDYsLTMuNCA5LjEsLTUuMyAxLjYsLTEgMTguMywtMTAuNiAxOC40LC0xMC42IHogbSAtNDMuMywyMy4xIDkuOSwtMC4yIHYgMzguNCBoIDY3LjQgdiAtMzguNCBsIDkuOSwwLjIgYyAtMC41LC0wLjYgLTQzLjYsLTI1IC00My45LC0yNSAtMCwwIC0xOS41LDExLjQgLTIxLjcsMTIuNSAtMy41LDEuOCAtNy40LDQuMiAtMTAuOSw2LjIgLTIuNywxLjYgLTguOCw0LjYgLTEwLjgsNi4zIGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDk5LjgsNjQuMyBDIDk5LjgsNjQuMyA4My4xLDczLjkgODEuNSw3NC45IGMgLTMsMS44IC02LDMuNSAtOS4xLDUuMyAtMi4yLDEuMiAtNy41LDQgLTkuMSw1LjMgbCA0LjksMCAwLDM4LjYgNjMuOSwwIDAsLTM4LjcgNC44LDAgYyAtMS42LC0xLjQgLTM2LjksLTIxLjIgLTM3LjEsLTIxLjIgeiBNIDczLjYsODguMSBsIDUyLjMsMCAwLDI4LjMgLTUyLjMsMCAwLC0yOC4zIHogbSA0NC45LDYuMSBjIC0yLjIsMC45IC00LjEsMS44IC02LjMsMi43IC0xLjUsMC42IC0xMiw1LjQgLTEyLjYsNS40IC0wLjQsMCAtMTEsLTQuOSAtMTIuNSwtNS40IC0yLjEsLTAuOCAtNC4xLC0xLjkgLTYuMiwtMi43IC0xLjYsLTAuNiAtNC44LC0yLjQgLTYuMiwtMi43IHYgLTIuMiBoIDUwIHYgMi4zIGMgLTEuNSwwLjMgLTQuNiwyIC02LjMsMi43IHogTSA3NC43LDkyLjggOTkuNiwxMDMuNyAxMjQuNyw5Mi44IFYgMTE1LjEgSCA3NC43IFYgOTIuOCBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuRU5DTE9TRUQgRkFDSVRMSVRZIChQVUJMSUMgVkVOVUUpXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE0LjksMTIxLjMgMCwtMS4yIC0zMC43LDAgMCwxLjIgeiBtIC0zMS45LC0yLjUgLTEwLjQsLTE2LjcgLTEsMC40IDEwLjYsMTYuNiB6IG0gMTMsLTEzLjggaCA3IGMgMC42LDAgNC40LC02IDUsLTYuOCBIIDkxIGMgMC42LDAuOSA0LjQsNi44IDUsNi44IHogbSAxNS4zLDEyIDAsLTEgLTIzLjUsMCAwLDEgeiBtIDIuNCwtMS42IDguNiwtMTMuNiAtMC44LC0wLjQgLTguNSwxMy4zIHogTSA3Ni44LDEwMS45IGMgMCwwLjMgMy43LDUuOSA0LjIsNi43IDAuNCwwLjYgNC4yLDYuNyA0LjMsNi43IDAuNCwwIDAuNSwtMC4yIDAuNywtMC41IGwgLTguNSwtMTMuNCBjIC0wLjIsMC4xIC0wLjcsMC4yIC0wLjcsMC41IHogbSAzMSwxMC44IDAsLTEgLTE2LjUsMCAwLDEgeiBtIC0xOS4zLC0xLjIgMC43LC0wLjQgLTYuNywtMTAuNSAtMC43LDAuNCB6IG0gMjIuMywtMCA2LjQsLTEwLjUgLTAuOCwtMC4zIC02LjYsMTAuNSB6IG0gLTYuNCwtMyAwLC0xIC05LjcsMCAwLDEgeiBtIDIuOCwtMS44IGMgMCwwLjYgMC4zLDAuNiAwLjcsMC42IGwgNC4yLC02LjkgLTAuNiwtMC40IGMgLTAuMiwwLjIgLTQuMyw2LjYgLTQuMyw2LjcgeiBtIC0yMC4zLC02LjMgNC4xLDcgYyAwLjMsLTAuMSAwLjgsLTAuMiAwLjgsLTAuNSAwLC0wLjYgLTMuNywtNS42IC00LC02LjkgbCAtMSwwLjQgeiBtIC0xOS43LDE4IDAuMywtMi44IGMgMC4xLC0zLjkgMiwtMTEuNCAzLC0xNC42IDEuNiwtNC43IDMuMiwtOC4zIDUuNiwtMTIgNC40LC02LjUgMTIsLTEyLjQgMjIuOCwtMTIuNCBoIDEuMSBjIDkuNiwwIDE3LDQuOCAyMS4zLDEwLjIgMS4yLDEuNSAyLjMsMi44IDMuMiw0LjYgMC41LDAuOSAxLDEuNiAxLjQsMi42IDAuNCwwLjkgMC43LDEuOSAxLjEsMi43IDAuOCwxLjQgMy42LDEwLjMgMy42LDEyLjEgdiAwLjYgaCAwLjMgdiAxIGwgMS4yLDEwLjggLTAuMSwyLjIgSCA2NyBsIDAuMiwtNSAwLDAgeiBtIC0yLjMsLTQgLTAuMywyLjQgLTAuNCw1LjYgdiAzLjggaCA3MC45IHYgLTEgYyAwLC0yIDAuMSwtNi40IC0wLjIsLTguMSAtMC40LC0yLjQgLTAuNSwtNS4yIC0xLC03LjUgLTAuNCwtMiAtMi45LC0xMi43IC0zLjksLTEzLjEgMCwtMS42IC0zLjUsLTcuNiAtNC4zLC04LjggLTEuOCwtMi42IC0zLjgsLTUgLTYuMiwtNyAtNC45LC0zLjkgLTEwLjUsLTcgLTE5LjMsLTcgaCAtMSBjIC0xMS44LDAgLTE5LjYsNS45IC0yNC42LDEyLjggLTEuNCwxLjkgLTIuNCwzLjggLTMuNSw1LjkgLTEuMiwyLjMgLTEuNyw0LjIgLTIuNiw2LjcgLTEuMiwzIC0zLjQsMTEuNCAtMy41LDE1LjMgbCAwLDAgeiBtIDUyLjIsNC43IGMgMC40LC0xLjMgNC4yLC02LjYgNS4yLC04LjMgMC42LC0xIDUuMSwtNy45IDUuMSwtOC4yIDAsLTAuMyAtMC42LC0wLjQgLTAuOCwtMC41IGwgLTEwLjYsMTYuNiAxLjEsMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg0LjIsMTIwLjEgaCAzMC43IHYgMS4yIEggODQuMiB2IC0xLjIgeiBtIDMuNiwtNC4yIGggMjMuNSB2IDEgSCA4Ny44IHYgLTEgeiBtIDMuNSwtNC4yIGggMTYuNSB2IDEgSCA5MS40IHYgLTEgeiBtIDMuMywtNC4yIGggOS43IHYgMSBoIC05LjcgdiAtMSB6IG0gMjIuNCwxMS41IC0xLjEsLTAuNCAxMC42LC0xNi42IGMgMC4zLDAuMSAwLjgsMC4yIDAuOCwwLjUgMCwwLjMgLTQuNiw3LjIgLTUuMSw4LjIgLTEsMS44IC00LjksNyAtNS4yLDguMyB6IG0gLTQ1LjQsLTE2LjYgMSwtMC40IDEwLjQsMTYuNyAtMC44LDAuNCAtMTAuNiwtMTYuNiB6IG0gMTMuNywxMi44IGMgLTAuMiwwIC00LC02IC00LjMsLTYuNyAtMC41LC0wLjggLTQuMiwtNi4zIC00LjIsLTYuNiAwLC0wLjMgMC40LC0wLjQgMC43LC0wLjUgbCA4LjUsMTMuMyBjIC0wLjIsMC4zIC0wLjIsMC41IC0wLjcsMC41IHogbSAzNi4yLC0xMy44IDAuOCwwLjQgLTguNiwxMy42IC0wLjgsLTAuNiA4LjYsLTEzLjQgeiBtIC01LjEsLTAuNiAwLjgsMC4zIC02LjQsMTAuNSAtMSwtMC4zIDYuNiwtMTAuNSB6IG0gLTMzLjksLTAgNi43LDEwLjUgLTAuNywwLjQgLTYuNywtMTAuNSAwLjcsLTAuNCB6IG0gMjQuNyw2IGMgMCwtMC4xIDQuMSwtNi41IDQuMywtNi43IGwgMC42LDAuNCAtNC4yLDYuOSBjIC0wLjQsMCAtMC43LC0wLjEgLTAuNywtMC42IHogbSAtMTkuNCwtNi43IGMgMC4zLDEuMyA0LDYuMyA0LDYuOSAwLDAuMyAtMC42LDAuNCAtMC44LDAuNSBsIC00LjEsLTcgMSwtMC40IHogbSA4LjIsNC45IGMgLTAuNiwwIC00LjQsLTYgLTUsLTYuOCBoIDE3IGMgLTAuNiwwLjggLTQuNCw2LjggLTUsNi44IGggLTcgeiBtIC0yOC41LDEwLjcgYyAwLDAuNSAtMCwyLjggLTAuMywyLjggbCAtMC4yLDUgaCA2NS4yIGwgMC4xLC0yLjIgLTEuMiwtMTAuOCB2IC0xIGggLTAuMyB2IC0wLjYgYyAwLC0xLjggLTIuOCwtMTAuNiAtMy42LC0xMi4xIC0wLjQsLTAuOCAtMC43LC0xLjggLTEuMSwtMi43IC0wLjUsLTEgLTEsLTEuNiAtMS41LC0yLjYgLTAuOSwtMS44IC0yLC0zLjEgLTMuMiwtNC42IC00LjIsLTUuNCAtMTEuNiwtMTAuMiAtMjEuMywtMTAuMiBoIC0xIGMgLTEwLjgsMCAtMTguNSw1LjggLTIyLjgsMTIuNCAtMi41LDMuOCAtNC4xLDcuNCAtNS43LDEyIC0xLjEsMy4yIC0zLDEwLjcgLTMsMTQuNiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuT1BFTiBGQUNJTElUWSAoT1BFTiBWRU5VRSlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuNCwxMTcuMSAwLC0xLjUgLTQ1LjEsMCAwLDEuNSB6IE0gNzQuNSwxMTQgNzUuNiwxMTMuNCA1OS44LDg4LjggNTguOCw4OS40IHogbSA0OS42LC0wLjYgYyAwLjIsMC4xIDEsMC41IDEuMywwLjUgMC4yLDAgMTQuNCwtMjIuNCAxNS45LC0yNC42IGwgLTEuNSwtMC41IC0xNS43LDI0LjYgeiBtIC02LjYsLTIuNiAwLC0xLjcgLTM1LDAgMCwxLjcgeiBtIDIuNCwtMy4yIGMgMCwwLjIgMSwwLjggMS4xLDAuOSBsIDEyLjgsLTIwIGggMC4yIGwgLTEuNiwtMC44IGMgLTEuMywyLjQgLTEyLjYsMTkuMyAtMTIuNiwyMCB6IG0gLTQxLjEsMC45IDEuNCwtMC44IC0xMi43LC0yMC4xIC0xLjMsMC44IHogbSAzMy4zLC0zLjkgMCwtMS42IC0yNC40LDAgMCwxLjYgeiBtIDMuNCwtMi44IGMgMCwwLjYgMC42LDAuNyAxLjEsMC45IGwgOS42LC0xNS40IC0xLjIsLTAuNiBjIC0wLjYsMiAtOS40LDE0LjUgLTkuNCwxNS4yIHogbSAtMzIuMiwxIDEuNCwtMC42IC05LjcsLTE1LjUgLTEuMywwLjggeiBtIDIzLjQsLTQuNSAwLC0xLjcgLTEzLjgsMCAwLDEuNyB6IG0gNS42LC0xLjcgNi40LC0xMC4zIC0xLjIsLTAuNSAtNi42LDEwLjIgeiBtIC0yNC42LDAuMSAxLjEsLTAuOCAtNi41LC0xMC4yIC0xLjMsMC42IHogbSA2LjYsLTQgMTEsMC4xIGMgMC42LDAgNi40LC04LjkgNywtMTAgSCA4Ny4zIGwgNi45LDkuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuUkVMSUdJT1VTIElOU1RJVFVUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjIsNjguMSBjIDcuOSwwIDE4LDMuOCAyMS43LDggNSw1LjcgNywxMi4zIDcsMjIuOCBWIDEzMS45IEggMTAxLjIgViA2OC4xIHogTSA3MC4xLDk2LjMgYyAwLC04LjQgMy40LC0xNi40IDcuNywtMjAuNyAzLjksLTMuOSAxMy4yLC03LjUgMjAuOSwtNy41IHYgNjMuOSBIIDcwLjEgViA5Ni4zIHogbSAtMi42LDM4LjMgaCA2NSBWIDk5LjMgYyAwLC0xMC44IC0yLjUsLTE5LjcgLTguMSwtMjUuMiAtNC44LC00LjggLTE1LC04LjcgLTI0LjYsLTguNyAtOC4zLDAgLTE5LjQsMy43IC0yMy42LDcuOSAtMy4yLDMuMyAtNC4zLDUgLTYuMiw5LjUgLTEsMi40IC0yLjUsMTAgLTIuNSwxMy4yIHYgMzguNSBsIDAsMCB6IE0gMTA1LjEsOTcuNiB2IDEyLjUgYyAwLDAuNSAwLjYsMS4xIDEuMSwxLjEgaCAwLjQgYyAwLjcsMCAxLjEsLTAuOCAxLjEsLTEuNSBWIDk3LjggYyAwLC0wLjUgLTAuNiwtMS4xIC0xLjEsLTEuMSBIIDEwNiBjIC0wLjUsMCAtMC45LDAuNCAtMC45LDAuOSB6IG0gLTExLjIsMTMuNiBjIDAuOCwwIDAuOSwtMSAwLjksLTEuNyBWIDk3LjYgYyAwLC0wLjUgLTAuNCwtMC45IC0wLjksLTAuOSBoIC0wLjYgYyAtMC41LDAgLTAuOSwwLjQgLTAuOSwwLjkgdiAxMi41IGMgMCwwLjUgMC42LDEuMSAxLjEsMS4xIGggMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwNS4xLDk3LjYgYyAwLC0wLjUgMC40LC0wLjkgMC45LC0wLjkgaCAwLjcgYyAwLjUsMCAxLjEsMC42IDEuMSwxLjEgdiAxMS44IGMgMCwwLjcgLTAuNCwxLjUgLTEuMSwxLjUgaCAtMC41IGMgLTAuNSwwIC0xLjEsLTAuNiAtMS4xLC0xLjEgViA5Ny42IGggMCB6IG0gLTMuOSwzNC40IGggMjguNyBWIDk4LjkgYyAwLC0xMC41IC0yLC0xNy4xIC03LC0yMi44IEMgMTE5LjIsNzEuOSAxMDkuMSw2OC4xIDEwMS4yLDY4LjEgdiA2My45IHogTSA5NCwxMTEuMiBIIDkzLjUgYyAtMC41LDAgLTEuMSwtMC42IC0xLjEsLTEuMSBWIDk3LjYgYyAwLC0wLjUgMC40LC0wLjkgMC45LC0wLjkgaCAwLjcgYyAwLjUsMCAwLjksMC40IDAuOSwwLjkgdiAxMS44IGMgMCwwLjggLTAuMSwxLjggLTAuOSwxLjggeiBNIDcwLjEsOTYuMyB2IDM1LjcgSCA5OC44IFYgNjguMSBjIC03LjcsMCAtMTcsMy42IC0yMC45LDcuNSAtNC4zLDQuMyAtNy43LDEyLjMgLTcuNywyMC43IHpcIn1dLGlbXCJHUi5JTi5JQy5DSElMRCBEQVkgQ0FSRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDc2LjYsMTAwLjMgYyAwLDEuOCAxLjEsMy40IDMsMy40IGggMC42IGMgMS40LDAgMi40LC0xLjUgMi40LC0zIDAsLTQuMyAtNiwtNC4yIC02LC0wLjQgeiBtIDI2LjUsLTExLjkgdiAwLjQgYyAwLDEuNSAxLjQsMy4yIDIuOCwzLjIgaCAwLjQgYyAxLjYsMCAzLC0xLjIgMywtMi44IFYgODcuOCBjIDAsLTEgLTEuNiwtMiAtMi44LC0yIGggLTAuMiBjIC0xLjUsLTAgLTMuMiwxLjQgLTMuMiwyLjYgeiBtIC0zLjIsLTE2LjggMzUuNCwyMS43IGMgLTEuMywwLjIgLTQuNiwtMC4zIC00LjYsMC45IHYgMzQuOSBIIDY5LjMgViA5NC4xIGMgMCwtMS4yIC0zLjMsLTAuOCAtNC42LC0wLjkgbCAzNS4yLC0yMS43IDAsMCB6IG0gLTM5LjgsMjIuNCBjIDAuMiwwLjggMC4zLDEuMyAxLjMsMS4zIGggNi4yIHYgMzQuNiBjIDAsMC41IDAuMSwwLjUgMC4yLDAuOSBoIDY0IGMgMC40LDAgMC44LC0wLjMgMC44LC0wLjggViA5NS4yIGggNiBjIDAuOCwwIDEuMywtMC40IDEuMywtMS4xIDAsLTAuNiAtMTcuOCwtMTEuMiAtMTkuOCwtMTIuNSAtMS42LC0xIC0yMCwtMTIuMyAtMjAsLTEyLjMgLTAuMiwwIC0zNi43LDIyLjUgLTQwLDI0LjcgbCAwLDAgeiBtIDIwLjksMTQuMiA1LjksNC4zIC0wLjEsMC4xIC00LjgsMi4yIGMgLTAuMiwtMC44IC0xLC0xLjkgLTEsLTIuNSB2IC00LjEgeiBtIDI4LjQsLTguOCBjIDAuNSwtMC44IDAuNiwtMi45IDEsLTMuMSAwLjQsLTAuMiAyLjQsMC44IDIuOSwwLjkgdiAzLjYgbCAtNC40LDEuNyB2IC0wLjYgYyAtMCwtMC45IDAuNSwtMSAwLjUsLTIuNCB6IG0gLTMsMiBjIDAsMC45IDAsMS4xIC0wLjQsMS43IFYgMTA0IGMgLTIuNCwwLjIgLTE1LjQsNy41IC0xNyw3LjUgLTAuNSwwIC02LjUsLTYuNyAtNy4zLC02LjcgaCAtNC4zIGMgLTAuNSwwIC0yLjgsNS4yIC0yLjgsNS42IHYgNC43IGMgMCwwLjkgMS44LDEuNCAyLDIuNCBsIC00LjEsMS43IDEuMywyLjYgNi4yLC0yLjggYyAxLjUsMC44IDkuMyw1LjYgMTAuNSw1LjYgaCAwLjYgYyAwLjgsMCAxLjksLTAuOCAxLjksLTEuNSB2IC0wLjQgYyAwLC0wLjkgLTcuMywtNC44IC04LjQsLTUuOCBsIDE0LC02LjMgdiA4LjQgaCAtMyB2IDYuNyBoIDguNCB2IC02LjcgaCAtMi44IHYgLTkuOSBsIDEzLjIsLTUuOCBjIDAsMS42IDAuMiwzLjcgMC40LDUuMSAwLjIsMS44IC0wLjYsMy45IDEuNSwzLjkgMi4xLDAgMS4zLC0yLjUgMS4zLC00LjMgMCwtMS45IC0wLjIsLTMuNSAtMC4yLC01LjYgdiAtMC42IGwgOS4xLC00IC0xLC0yLjkgLTYuMiwyLjggYyAwLjMsLTAuNiAwLjcsLTAuOCAxLC0xLjQgMC4yLC0wLjcgMC40LC0xLjIgMC43LC0xLjggMC41LC0xIDAuOSwtMi42IDEuNCwtMy40IGwgLTExLjQsLTEuNiBjIC0wLjYsMC41IC0zLjIsMy4zIC0zLjIsNC4yIHYgMC42IGggLTAuNCBsIC0xLjEsNy4xIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDgxLDExMi4yIGMgMCwwLjYgMC44LDEuNyAxLDIuNSBsIDQuOCwtMi4yIDAuMiwtMC4xIC02LC00LjMgdiA0LjEgeiBtIDI4LjQsLTEyLjkgYyAwLDEuNCAtMC42LDEuNiAtMC42LDIuNCB2IDAuNiBsIDQuNSwtMS43IHYgLTMuNiBjIC0wLjUsLTAuMSAtMi42LC0xIC0yLjksLTAuOSAtMC40LDAuMiAtMC41LDIuNCAtMSwzLjEgeiBtIC0zMi45LDAuOSBjIDAsLTMuOSA2LC00IDYsMC40IDAsMS40IC0xLjEsMyAtMi40LDMgaCAtMC41IGMgLTEuOCwwIC0zLC0xLjYgLTMsLTMuNCB6IG0gMjkuNSwyLjggMC40LC0xLjcgMS4xLC03LjEgaCAwLjQgdiAtMC42IGMgMCwtMC44IDIuNiwtMy43IDMuMiwtNC4yIGwgMTEuNCwxLjYgYyAtMC41LDAuOCAtMC45LDIuNCAtMS40LDMuNCAtMC4zLDAuNiAtMC40LDEuMSAtMC43LDEuOCAtMC4zLDAuNyAtMC43LDAuOCAtMSwxLjQgbCA2LjIsLTIuOCAxLDIuOSAtOS4xLDQgdiAwLjYgYyAwLDIuMSAwLjIsMy43IDAuMiw1LjYgMCwxLjggMC44LDQuMyAtMS4zLDQuMyAtMi4xLDAgLTEuMywtMi4yIC0xLjUsLTMuOSAtMC4yLC0xLjQgLTAuNCwtMy41IC0wLjQsLTUuMSBsIC0xMy4yLDUuOCB2IDkuOSBoIDIuOCB2IDYuNyBoIC04LjQgdiAtNi43IGggMyB2IC04LjQgbCAtMTQsNi4zIGMgMS4xLDAuOSA4LjQsNC45IDguNCw1LjggdiAwLjQgYyAwLDAuNyAtMSwxLjUgLTEuOSwxLjUgSCA5MC42IGMgLTEuMiwwIC04LjksLTQuOCAtMTAuNSwtNS42IGwgLTYuMiwyLjggLTEuMywtMi42IDQuMSwtMS43IGMgLTAuMywtMSAtMiwtMS41IC0yLC0yLjQgdiAtNC42IGMgMCwtMC40IDIuMywtNS42IDIuOCwtNS42IGggNC4zIGMgMC44LDAgNi44LDYuNyA3LjMsNi43IDEuNSwwIDE0LjYsLTcuMyAxNywtNy41IHYgLTAuOSB6IG0gLTMsLTE0LjggYyAwLC0xLjIgMS43LC0yLjYgMy4yLC0yLjYgaCAwLjIgYyAxLjIsMCAyLjgsMS4xIDIuOCwyIHYgMS4zIGMgMCwxLjYgLTEuNCwyLjggLTMsMi44IGggLTAuNCBjIC0xLjQsMCAtMi44LC0xLjcgLTIuOCwtMy4yIHYgLTAuNCB6IG0gLTM4LjQsNC45IGMgMS4zLDAuMSA0LjYsLTAuMyA0LjYsMC44IHYgMzQuOSBoIDYxLjQgViA5NC4xIGMgMCwtMS4yIDMuMywtMC44IDQuNiwtMC45IGwgLTM1LjQsLTIxLjcgLTM1LjIsMjEuOCAwLDAgelwifV0saVtcIkdSLklOLklDLkhFTElDT1BURVIgTEFORElORyBTSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6byxkOlwiTTgwLDcwIGwxMCwxMCBNMTIwLDExMCBsLTEwLC0xMCBNODAsMTEwIGwxMCwtMTAgTTEyMCw3MCBsLTEwLDEwIE0xMDAsMTE1IGwwLDIwIE05NSwxMzUgbDEwLDBcIixmaWxsOiExfSx7dHlwZTpcInBhdGhcIixzdHJva2U6byxmaWxsOiEhUiYmRyxkOlwibSAxMTMsOTAgYyAtMC4zLDguOCAtMS45LDIwLjMgLTEwLjgsMjQuNiAtNy43LDIgLTEyLjMsLTcuMSAtMTMuOCwtMTMuMyAtMi42LC0xMS41IC0yLjMsLTI2IDYuOSwtMzQuNiA2LjAsLTQuOSAxMy4xLDEuOSAxNC45LDcuOCAyLDQuOSAyLjgsMTAuMiAyLjgsMTUuNSB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NDB9XSxpW1wiR1IuSU4uSUMuVFJBTlNQT1JUQVRJT04gSU5GUkFTVFJVQ1RVUkUgTE9DS1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw3MCA2NSwzMCAtNjUsMzBcIn1dLGlbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBTSElQIEFOQ0hPUkFHRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6XCJyZ2IoMjU1LCAwLCAyNTUpXCIsZDpcIm0gNzMuNiwxMTIuOCBjIDAuOCw4IDI2LjQsMTEuMiAyNi40LDExLjIgMCwwIDI1LjYsLTMuMiAyNi40LC0xMS4yIE0gODAsODggbCA0MCwwIG0gLTIwLC0xMiAwLDQ4XCJ9XSxpW1wiR1IuSU4uSUMuTkFUVVJBTCBHQVMgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDYwLjUgYyAtMTYuNCwwIC0yOS42LDEzLjIgLTI5LjYsMjkuNiAwLDEyLjggOC4zLDIzLjkgMTkuNywyNy44IGwgMCwxOS43IGMgMy4yLDEuMiA2LjMsMS44IDkuOSwxLjggMy42LDAgNi43LC0wLjYgOS45LC0xLjggbCAwLC0xOS44IGMgMTEuNSwtMy45IDE5LjgsLTE1IDE5LjcsLTI3LjggMCwtMTYuNCAtMTMuMiwtMjkuNiAtMjkuNiwtMjkuNiB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMyxmb250c2l6ZTozNSx0ZXh0OlwiTkdcIn1dLGlbXCJHUi5JTi5JQy5UT0xMIEZBQ0lMSVRZXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNjkuMSwxMTIuMyBjIDAsLTAuNyAwLjgsLTEuNyAxLjQsLTEuNyBoIDAuNSBjIDAuOCwwIDEuNSwwLjggMS41LDEuNSB2IDEuMiBjIDAsMC41IC0wLjksMS4yIC0xLjUsMS4yIGggLTAuMiBjIC0wLjgsMCAtMS43LC0wLjggLTEuNywtMS40IHYgLTAuOSBsIDAsMCB6IG0gLTEuMSwwLjUgdiAwLjMgYyAwLDEuMiAxLjUsMi42IDIuOSwyLjYgMS4zLDAgMi44LC0xLjUgMi44LC0yLjUgdiAtMSBjIDAsLTEuMiAtMS40LC0yLjYgLTIuOCwtMi42IC0xLjcsMCAtMi45LDEuNiAtMi45LDMuMiB6IG0gMjcuNiwtMTEuNiAtMiwtMi44IC0yLjMsMCA0LjMsMi44IHogbSAtMjkuNSwxNy44IGMgMCwtMC41IDAuOCwtMC45IDEuNCwtMC45IEggOTkuMSBjIDAuOCwwIDEuMywwLjYgMS40LDEuNCAtMC42LDAuMSAtMSwwLjMgLTEuNywwLjMgSCA2OCBjIC0wLjYsMCAtMS44LDAgLTEuOCwtMC42IHYgLTAuMiB6IG0gOS40LC0xMC4yIDE1LjEsMCA4LjIsMC4yIGMgMC41LDAuOSAyLDMgMS44LDQuMyBsIC0wLjIsMi42IGMgLTAuNSwwLjIgLTAuNSwwLjMgLTEsMC4zIEggNjcuMSBjIC0wLjYsMCAtMC41LC0wLjIgLTEuMSwtMC4zIC0wLjEsLTAuNyAtMC4zLC0xIC0wLjMsLTEuOCB2IC0wLjYgYyAwLC0xLjEgMS41LC0zLjUgMiwtNC40IGwgNy44LC0wLjIgeiBtIC01LjgsLTIgYyAwLjEsLTEuMSAzLjUsLTcuMSA0LjMsLTcuMSBoIDE4LjQgYyAxLDAgNCw1LjggNC4zLDcuMSBIIDY5LjcgeiBtIDIxLjcsLTguNCAyLjMsLTAgMiwyLjggLTQuMywtMi44IHogbSA0NC4zLDI3LjggViA3My44IGMgLTEsMC4yIC0xMC4zLDYgLTExLjksNyAtMS4zLDAuOCAtMTEuNiw2LjUgLTExLjYsNy4yIDAsMCAxLjMsMi4xIDEuNCwyLjMgbCA0LjksLTIuOCB2IDE5LjIgbCAtMC40LDAuMyBjIC0yLjksLTIgLTMzLjQsLTIyIC0zMy42LC0yMiAtMC4xLDAgLTMuOSw1LjYgLTQsNi4yIGwgMTAuOCw3IC0xOC4zLDAgYyAtMC45LDEuNCAtMS45LDIuNCAtMi44LDMuOCAtMC4yLDAuMyAtMiw0LjQgLTIsNC42IHYgMC44IGggLTEuMiBjIC0wLjEsMC45IC0yLjYsNC42IC0yLjYsNS40IHYgMC44IGMgMCwxLjUgMC40LDIuOSAxLjQsMy40IC0wLjIsMC4zIC0xLDEuMSAtMSwxLjYgdiAwLjkgYyAwLDEuMSAxLjUsMS41IDIuNiwxLjUgdiAyLjMgbCAwLjIsMiBjIDAuNSwwLjIgMC4zLDAuNSAxLjIsMC42IDAuNiwwLjEgMSwwLjIgMS43LDAuMiBoIDEuMSBsIDEuNywtMC4yIDAuMywtMC4zIDAuMiwtMiAwLC0yLjUgaCAxOS4xIHYgMy4xIGMgMCwwLjggMC4zLDEuMiAwLjYsMS43IGwgMS40LDAuMiAxLjIsLTAgYyAxLjcsMCAzLjEsLTAuMSAzLjEsLTEuOCB2IC0zLjEgYyAwLjgsLTAuMiAyLjYsLTAuNSAyLjYsLTEuNCB2IC0xLjcgYyAwLC0wLjUgLTAuNSwtMC43IC0wLjksLTAuOCAwLjEsLTAuNSAxLjIsLTEuMSAxLjIsLTIuNSB2IC0yIGMgMCwtMS41IC0yLjEsLTQuMSAtMi41LC01LjQgaCAtMS4yIHYgLTAuNCBjIDAsLTEuMSAtMi4yLC00LjggLTIuNSwtNS44IGwgMTksMTIuNSBjIC0wLjQsMS42IC0yLDQgLTIsNS4yIHYgNy4yIGggMjIuOSBsIDAsMCB6IE0gOTUuOSwxMTQuNiBIIDk1LjcgYyAtMS4xLDAgLTEuOCwtMC43IC0xLjgsLTEuNyB2IC0wLjUgYyAwLC0xIDAuNiwtMS44IDEuNSwtMS44IGggMC41IGMgMSwwIDEuNSwxLjEgMS41LDIgMCwxLjEgLTAuNSwyIC0xLjUsMiB6IG0gLTMuMSwtMi41IHYgMS4xIGMgMCwxIDEuNiwyLjUgMi45LDIuNSAxLjQsMCAyLjYsLTEuMyAyLjYsLTIuOCB2IC0wLjggYyAwLC0xLjIgLTEuMywtMi42IC0yLjUsLTIuNiBIIDk1LjcgYyAtMS40LDAgLTIuOSwxLjQgLTIuOSwyLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTE0LjUsMTA3LjkgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBtIC0xMS4yLC03LjIgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBtIC01LjUsLTMuNyBjIDAsMC45IC0wLjgsMS42IC0xLjgsMS42IC0xLDAgLTEuOCwtMC43IC0xLjgsLTEuNiAwLC0wLjkgMC44LC0xLjYgMS44LC0xLjYgMSwwIDEuOCwwLjcgMS44LDEuNiB6IE0gMTA4LjksMTA0LjUgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBNIDkyLjMsOTMuNSBjIDAsMC45IC0wLjgsMS42IC0xLjgsMS42IC0xLDAgLTEuOCwtMC43IC0xLjgsLTEuNiAwLC0wLjkgMC44LC0xLjYgMS44LC0xLjYgMSwwIDEuOCwwLjcgMS44LDEuNiB6IE0gODYuNSw4OS44IGMgMCwwLjkgLTAuOCwxLjYgLTEuOCwxLjYgLTEsMCAtMS44LC0wLjcgLTEuOCwtMS42IDAsLTAuOSAwLjgsLTEuNiAxLjgsLTEuNiAxLDAgMS44LDAuNyAxLjgsMS42IHogbSAzNS42LDIuNiAxMC44LDAgMCwxNi4xIC0xMC44LDAgeiBtIC01NS45LDI2LjQgdiAwLjIgYyAwLDAuNiAxLjIsMC42IDEuOCwwLjYgaCAzMC44IGMgMC43LDAgMS4xLC0wLjIgMS43LC0wLjMgLTAuMSwtMC44IC0wLjYsLTEuNCAtMS40LC0xLjQgSCA2Ny41IGMgLTAuNSwwIC0xLjQsMC40IC0xLjQsMC45IHogbSAyNi42LC02LjggYyAwLC0xLjIgMS41LC0yLjYgMi45LC0yLjYgaCAwLjIgYyAxLjIsMCAyLjUsMS40IDIuNSwyLjYgdiAwLjggYyAwLDEuNCAtMS4yLDIuOCAtMi42LDIuOCAtMS40LDAgLTIuOSwtMS40IC0yLjksLTIuNSB2IC0xIGggLTAgeiBtIC0yNC44LDAuNiBjIDAsLTEuNiAxLjIsLTMuMiAyLjksLTMuMiAxLjMsMCAyLjgsMS41IDIuOCwyLjYgdiAxLjEgYyAwLDAuOSAtMS40LDIuNSAtMi44LDIuNSAtMS40LDAgLTIuOSwtMS40IC0yLjksLTIuNiB2IC0wLjMgeiBtIC0wLjMsLTMuOCBjIC0wLjUsMSAtMiwzLjQgLTIsNC40IHYgMC42IGMgMCwwLjkgMC4yLDEuMSAwLjMsMS44IDAuNSwwLjEgMC41LDAuMyAxLjEsMC4zIGggMzIuMyBjIDAuNiwwIDAuNSwtMC4yIDEsLTAuMyBsIDAuMiwtMi42IGMgMC4xLC0xLjIgLTEuNCwtMy40IC0xLjgsLTQuMyBsIC04LjIsLTAuMiAtMTUuMSwtMCAtNy44LDAuMiB6IG0gMiwtMi4yIGggMjcuMSBjIC0wLjQsLTEuMyAtMy4zLC03LjEgLTQuMywtNy4xIEggNzQgYyAtMC44LDAgLTQuMiw2IC00LjMsNy4xIHogbSAyNi4yLDcuOCBjIDEuMSwwIDEuNSwtMC45IDEuNSwtMiAwLC0wLjkgLTAuNiwtMiAtMS41LC0yIGggLTAuNSBjIC0xLDAgLTEuNSwwLjggLTEuNSwxLjggdiAwLjUgYyAwLDEgMC44LDEuNyAxLjgsMS43IGggMC4yIGwgMCwwIHogTSA2OS4xLDExMi4zIHYgMC45IGMgMCwwLjYgMSwxLjQgMS43LDEuNCBoIDAuMiBjIDAuNiwwIDEuNSwtMC44IDEuNSwtMS4yIHYgLTEuMiBjIDAsLTAuOCAtMC44LC0xLjUgLTEuNSwtMS41IGggLTAuNSBjIC0wLjYsMCAtMS40LDEgLTEuNCwxLjcgelwifV0saVtcIkdSLklOLklDLlRSQUZGSUMgSU5TUEVDVElPTiBGQUNJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS40LDgxLjcgaCAxLjEgdiAwLjYgYyAwLDAuNiAwLjgsMi4xIDEuMiwyLjQgMC41LDAuNCAxLjksMC45IDIuNywwLjkgMi42LDAgMy45LC0xLjkgMy45LC00LjUgdiAtMC41IGggLTcuNCBjIC0wLjUsMCAtMS4yLDAuOCAtMS40LDEuMSB6IG0gLTIyLjYsMjMuNSBjIDAsLTEuNyAxLjcsLTMgMy40LC0zIDEuNywwIDMuMSwxLjQgMy4xLDMuMSB2IDAuNiBjIDAsMS4zIC0xLjcsMi42IC0zLjEsMi42IC0xLjcsMCAtMy40LC0xLjMgLTMuNCwtMyB2IC0wLjUgeiBtIC0yOS43LDAgYyAwLC0xLjggMS4zLC0zIDMuMSwtMyAxLjcsMCAzLjMsMS40IDMuMywzLjEgdiAwLjMgYyAwLDEuNiAtMS42LDMgLTMuNCwzIC0xLjUsMCAtMywtMS4yIC0zLC0yLjYgdiAtMC44IHogbSAzLjcsLTcgYyAwLC0wLjQgMS42LC00LjIgMS45LC01IDAuNiwtMS43IDAuOSwtMy42IDMuMywtMy42IEggOTYuNSBjIDIuOCwwIDIuMiwxLjggMy4yLDMuNiAwLjIsMC40IDEuOCw0LjUgMS44LDQuOSBIIDcyLjggeiBtIC0zLjcsMSBjIC0yLjEsMCAtMy43LDEuNSAtMy43LDMuNiB2IDkuMiBjIDAsMSAxLjcsMi4zIDMuMSwyLjMgdiA1LjMgYyAwLDEuOCAxLjMsMy4zIDMuMywzLjMgMS40LDAgMy4xLC0xLjYgMy4xLC0yLjYgdiAtNS45IGggMjQuOCB2IDYuMiBjIDAsMSAxLjcsMi4zIDMsMi4zIGggMC4yIGMgMS40LDAgMy4xLC0xLjMgMy4xLC0yLjYgdiAtNS45IGMgMS45LDAgMy4zLC0xLjQgMy4zLC0zLjMgdiAtOC4xIGMgMCwtMiAtMS40LC0zLjMgLTMuMiwtMy43IC0xLjQsLTAuMiAtMS4xLC0wLjggLTEuNiwtMS45IC0wLjQsLTAuOCAtMC43LC0xLjYgLTEsLTIuNCAtMS4yLC0yLjYgLTIuMiwtOC4yIC01LjYsLTguMiBoIC0yMS4yIGMgLTIuOSwwIC0zLjUsMy4zIC00LjUsNS41IC0wLjYsMS40IC0yLjcsNS44IC0zLDcgeiBtIDU2LjUsMjAuMiAwLjMsLTMuMyAwLjUsLTYuMiBoIDEuNyBsIDAuOCwxMi45IGggNS44IFYgODguOSBjIDAsLTAuNiAtMS4yLC0xLjkgLTIsLTEuOSBsIC0wLjYsMC4xIC05LjksMTQuNiBoIDguNCB2IDMuNiBoIC0xMS4yIHYgMTcuNiBoIDYuMSBsIC0wLC0wLjggMC4yLC0yLjYgeiBtIC0xNi44LC0zMC44IGMgMC4yLC0wLjkgMSwtMS41IDIsLTEuNiB2IDIuMiBoIC0yIGMgMCwxLjQgMC44LDIuMiAyLjIsMi4yIHYgLTIgaCAyIGMgLTAsMS4zIC0wLjgsMS40IC0xLjQsMiBoIDcuOCBsIDAsMTAuMiAxMCwtMTQuMyAtMTAuMSwtMC4yIGggLTYuNCB2IC03LjYgYyAwLC0xLjIgLTAuOCwtMi4yIC0xLjksLTIuMiBoIC0wLjQgYyAtMi4yLDAgLTIsMi40IC0yLDQuNyAwLDEuMyAtMC40LDUuOCAwLjIsNi42IHogbSAwLDAgdiAwLjYgaCAyIHYgLTIuMiBjIC0xLjEsMCAtMS44LDAuNyAtMiwxLjYgeiBtIDIuMiwyLjggaCAwLjYgYyAwLjYsLTAuNiAxLjQsLTAuNyAxLjQsLTIgaCAtMiB2IDIgeiBtIDE5LjMsLTEyIDAsLTIgLTguOCwtMCAxLDIgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTMwLjMsNzkuNCAtNy45LC0wIDAuNCwxLjMgNy41LDAgeiBtIC04LjEsMjIuMiA5LjksLTE0LjYgMC42LC0wLjEgLTMuMSwwLjIgLTEwLDE0LjMgLTAuMSwzLjcgMTEuMiwwIDAsLTMuNiB6IG0gLTIzLjMsMy42IHYgMC41IGMgMCwxLjcgMS43LDMgMy40LDMgMS40LDAgMy4xLC0xLjQgMy4xLC0yLjYgdiAtMC42IGMgMCwtMS43IC0xLjQsLTMuMSAtMy4xLC0zLjEgLTEuOCwwIC0zLjQsMS4zIC0zLjQsMyB6IG0gLTI5LjcsMCB2IDAuOCBjIDAsMS40IDEuNSwyLjYgMywyLjYgMS44LDAgMy40LC0xLjMgMy40LC0zIHYgLTAuMyBjIDAsLTEuNiAtMS42LC0zLjEgLTMuMywtMy4xIC0xLjgsMCAtMy4xLDEuMiAtMy4xLDMgeiBtIDMuNywtNyBoIDI4LjYgYyAwLC0wLjUgLTEuNSwtNC41IC0xLjgsLTQuOSAtMSwtMS44IC0wLjQsLTMuNiAtMy4yLC0zLjYgSCA3Ny45IGMgLTIuNCwwIC0yLjYsMS45IC0zLjMsMy42IC0wLjIsMC44IC0xLjgsNC42IC0xLjgsNSB6XCJ9XSxpW1wiR1IuSU4uSUMuVFVOTkVMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTQuNCwxMTYuOCBjIDAsLTMuNSAyLjYsLTcuMiA1LjksLTcuMiAzLjIsMCA1LjYsNCA1LjYsNy4xIHYgMC44IEggOTQuNCB2IC0wLjcgeiBtIDI3LjIsLTQuNyA5LC00LjIgYyAwLjIsMS43IDAuOCwzLjIgMSw1LjIgMC4zLDEuOCAwLjYsMy4zIDAuNiw1LjYgdiAwLjUgaCAtMTAgbCAtMC43LC03LjEgeiBtIC00My41LDQuOSAwLjEsMi4yIEggNjggYyAwLC0xLjYgMC4zLC0zLjggMC42LC01LjQgMC4xLC0wLjcgMC4yLC0xLjggMC41LC0yLjQgMC4xLC0wLjIgMC43LC0yLjIgMC43LC0yLjQgbCA5LjIsMy4xIC0wLjgsNC45IHogbSAzOSwtMTYuOCA2LjIsLTYuMiBjIDAuNiwxIDEuMiwxLjggMS45LDIuOCAwLjgsMS4xIDEuMiwyIDEuOCwzLjEgMC42LDEgMi44LDUuNiAyLjgsNi45IGwgLTguNyw0LjIgYyAtMC4xLC0yLjUgLTMsLTkgLTQsLTEwLjYgeiBtIC0zNy45LDEwLjQgLTkuMSwtMyBjIDAuMSwtMS4yIDIuNCwtNS45IDMsLTcgMS4yLC0yLjEgMywtNC4yIDQsLTYgbCA3LjYsNC40IGMgLTAuMiwwLjUgLTIuNiw0LjMgLTMsNS40IC0wLjgsMS43IC0xLjYsNC45IC0yLjQsNi4yIHogTSAxMTEuMiw4My4yIGMgMi44LDAuNyA5LjgsNy4xIDExLjMsOS40IGwgLTYuMyw2LjIgYyAtMC41LC0xLjggLTYsLTYuOSAtOC4yLC03LjQgbCAzLjIsLTguMiB6IE0gNzguMSw5My40IEMgNzkuNyw5MSA4OCw4My44IDkxLDgzLjEgTCA5NC45LDkxIGMgLTIuNiwwLjYgLTcuOSw1IC05LjIsNi45IGwgLTcuNiwtNC41IHogTSA5Mi42LDgyLjQgYyAyLjYsLTAuNiA0LjEsLTEuOCA3LjgsLTEuOCBoIDEuNCBjIDQsMCA1LjMsMS4yIDguMSwxLjggLTAsMSAtMS45LDUuMiAtMi4zLDYuMyAtMC42LDEuNCAtMC40LDIgLTIuMiwxLjUgLTEuMSwtMC4zIC0yLjQsLTAuNiAtMy42LC0wLjYgaCAtMSBMIDk2LjEsOTAuMyA5Mi42LDgyLjQgeiBNIDY2LjUsMTE5LjggSCA2MC40IGMgLTAuNCwwIC0wLjUsMC4xIC0wLjUsMC41IHYgMC4yIGMgMCwwLjQgMC4xLDAuNSAwLjUsMC41IGggNzkgYyAwLjMsMCAwLjcsLTAuMyAwLjcsLTAuNSAwLC0wLjQgLTAuMywtMC43IC0wLjcsLTAuNyBoIC01LjcgdiAtMS41IGMgMCwtMTAuMSAtNC45LC0yMC40IC05LjUsLTI1LjkgQyAxMTkuOCw4NyAxMTEuNiw3OSAxMDIuMiw3OSBoIC0yIGMgLTkuNywwIC0xOC44LDguNCAtMjMuNiwxMy43IC01LDUuNiAtMTAuMSwxNi42IC0xMC4xLDI3LjEgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzksMTEyIC05LjMsLTMuMSBjIC0wLDAuMiAtMC42LDIuMiAtMC43LDIuNCAtMC4yLDAuNiAtMC40LDEuNyAtMC41LDIuNCAtMC4yLDEuNSAtMC41LDMuOCAtMC41LDUuNCBoIDEwLjMgbCAtMC4xLC0yLjIgMC44LC00LjkgeiBtIDE1LjUsNS40IGggMTEuNCB2IC0wLjggYyAwLC0zLjEgLTIuNCwtNy4xIC01LjYsLTcuMSAtMy4zLDAgLTUuOSwzLjggLTUuOSw3LjIgdiAwLjcgeiBtIDI3LjksMS43IGggMTAgdiAtMC41IGMgMCwtMi4zIC0wLjQsLTMuOCAtMC42LC01LjYgLTAuMywtMiAtMC45LC0zLjUgLTEsLTUuMiBsIC05LDQuMiAwLjcsNy4xIHogbSAtNS4yLC0xOSBjIDEuMSwxLjYgNCw4LjEgNCwxMC42IGwgOC43LC00LjIgYyAwLC0xLjIgLTIuMSwtNS44IC0yLjgsLTYuOCAtMC43LC0xLjEgLTEuMSwtMiAtMS44LC0zLjEgLTAuNywtMSAtMS4zLC0xLjggLTEuOSwtMi44IGwgLTYuMiw2LjIgeiBtIC0zNy45LDEwLjQgYyAwLjcsLTEuNCAxLjYsLTQuNSAyLjQsLTYuMiAwLjUsLTEuMSAyLjksLTQuOSAzLC01LjQgbCAtNy42LC00LjQgYyAtMSwxLjggLTIuOCw0IC00LDYgLTAuNiwxLjEgLTIuOSw1LjggLTMsNyBsIDkuMSwzIHogbSAyOC44LC0xOS4xIGMgMi4xLDAuNSA3LjYsNS42IDguMiw3LjQgbCA2LjMsLTYuMSBjIC0xLjUsLTIuMyAtOC41LC04LjggLTExLjMsLTkuNSBsIC0zLjIsOC4yIHogbSAtMzAsMiA3LjYsNC42IEMgODcsOTYgOTIuMyw5MS42IDk0LjksOTEgbCAtMy44LC03LjkgYyAtMy4xLDAuNyAtMTEuNCw3LjkgLTEzLDEwLjMgeiBNIDkyLjYsODIuNCBsIDMuNSw3LjkgNC42LC0wLjYgaCAxIGMgMS4zLDAgMi42LDAuMyAzLjYsMC42IDEuNywwLjQgMS42LC0wLjEgMi4yLC0xLjUgMC40LC0xLjEgMi4zLC01LjMgMi4zLC02LjMgLTIuOCwtMC42IC00LC0xLjkgLTguMSwtMS45IGggLTEuNCBjIC0zLjYsMCAtNS4yLDEuMyAtNy43LDEuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuUFVNUElORyBTVEFUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODMuMiw4My44IDAsMS4yIDAsNS42IC0xMS4zLDAgMCwtMCBjIC0wLjIsMCAtMC4zLDAgLTAuNSwwIC0wLjEsNi42ZS00IC0wLjEsLTkuNmUtNCAtMC4yLDAgLTIuNywwIC00LjksMC4zIC02LjUsMS43IC0xLjQsMS4yIC0yLDMuMyAtMi4xLDUuOSBsIC0wLjEsMCAwLDEuMiBjIDhlLTYsMC4xIC0wLDAuMiAtMCwwLjMgbCAwLDAgMCwxNC4xIC0yLjgsMCAwLDIuNCA4MC44LDAgMCwtMi40IC0yLjgsMCAwLC0xNCAwLC0xLjYgLTAuMSwwIGMgLTAuMSwtMi42IC0wLjUsLTQuNiAtMS44LC01LjkgLTEuNSwtMS40IC0zLjgsLTEuNyAtNi44LC0xLjcgbCAwLC0wIC0wLjMsMCBjIC0wLjIsLTUuNmUtNCAtMC4zLC0wIC0wLjQsLTAgbCAwLDAgLTExLjMsMCAwLC01LjYgMCwtMS4yIC0xLjIsMCAtMzEuMiwwIC0xLjIsMCB6IG0gMi40LDIuNCAyOC44LDAgMCwyNy4yIC0yOC44LDAgMCwtMjcuMiB6IE0gNzEuMiw5MyBjIDAuMSwtMCAwLjEsMCAwLjIsMCBsIDExLjgsMCAwLDguNCAtNy41LDAgYyAtMC44LC0wLjEgLTEuNCwtMC4xIC0yLC0wIC0wLDAgLTAsMCAtMC4xLDAgLTAsMCAtMCwtMCAtMCwwIGwgMCwwIGMgLTAuNSwwLjEgLTEuMiwwLjMgLTEuNSwwLjggLTAuNCwwLjUgLTAuNCwxLjEgLTAuNCwxLjYgLTAsMC40IC0wLDAuOCAwLDEuMiBsIC0wLDAgMCw4LjggLTYuOCwwIDAsLTE0LjUgYyAwLC0zIDAuNSwtNC41IDEuNCwtNS4zIEMgNjcuMSw5My4zIDY4LjcsOTMuMSA3MS4yLDkzIHogbSA0NS42LDAgMTEuOCwwIGMgMC4xLDkuN2UtNCAwLjEsLTAgMC4yLDAgMi44LDAuMSA0LjUsMC40IDUuMiwxLjEgMC44LDAuNyAxLjIsMi4zIDEuMiw1LjIgbCAwLDE0LjUgLTYuOCwwIDAsLTggMCwwIGMgLTAsLTAuMSAtMCwtMC4zIC0wLC0wLjQgMCwtMC45IDAuMiwtMS42IC0wLjEsLTIuNSAtMC4xLC0wLjUgLTAuNiwtMS4yIC0xLjIsLTEuNCAtMC4yLC0wLjEgLTAuNSwtMCAtMC43LC0wIGwgMCwtMC4xIC05LjYsMCAwLC04LjQgeiBNIDc0LDEwMy44IGwgOS4yLDAgMCwxMCAtOS4yLDAgMCwtOC41IDAsMCBjIDAsLTAuNiAtMCwtMS4xIC0wLC0xLjQgMCwtMC4xIC0wLC0wIDAsLTAuMSB6IG0gNDIuOCwwIDkuMiwwIGMgMCwwLjIgMCwwLjggMCwxLjYgbCAtMCwwIDAsOC40IC05LjIsMCAwLC0xMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTYuOCw5MyAxMS44LDAgYyAwLjEsOS43ZS00IDAuMSwtMCAwLjIsMCAyLjgsMC4xIDQuNSwwLjQgNS4yLDEuMSAwLjgsMC43IDEuMiwyLjMgMS4yLDUuMiBsIDAsMTQuNSAtNi44LDAgMCwtOCAwLDAgYyAtMCwtMC4xIC0wLC0wLjMgLTAsLTAuNCAwLC0wLjkgMC4yLC0xLjYgLTAuMSwtMi41IC0wLjEsLTAuNSAtMC42LC0xLjIgLTEuMiwtMS40IC0wLjIsLTAuMSAtMC41LC0wIC0wLjcsLTAgbCAwLC0wLjEgLTkuNiwwIDAsLTguNCB6IG0gLTQ1LjYsMCBjIDAuMSwtMCAwLjEsMCAwLjIsMCBsIDExLjgsMCAwLDguNCAtNy41LDAgYyAtMC44LC0wLjEgLTEuNCwtMC4xIC0yLC0wIC0wLDAgLTAsMCAtMC4xLDAgLTAsMCAtMCwtMCAtMCwwIGwgMCwwIGMgLTAuNSwwLjEgLTEuMiwwLjMgLTEuNSwwLjggLTAuNCwwLjUgLTAuNCwxLjEgLTAuNCwxLjYgLTAsMC40IC0wLDAuOCAwLDEuMiBsIC0wLDAgMCw4LjggLTYuOCwwIDAsLTE0LjUgYyAwLC0zIDAuNSwtNC41IDEuNCwtNS4zIEMgNjcuMSw5My4zIDY4LjcsOTMuMSA3MS4yLDkzIHogbSAxNC40LC02LjggMjguOCwwIDAsMjcuMiAtMjguOCwwIDAsLTI3LjIgelwifV0saVtcIkdSLklOLklDLlJFU0VSVk9JUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEyNy4zIDY5LjEgQyAxMjcgNjkuMSAxMjYuNyA2OS4yIDEyNi40IDY5LjIgQyAxMjMuNCA2OS41IDEyMC44IDcxLjkgMTE4LjQgNzQuNSBDIDExNS45IDc3IDExMy41IDc5LjcgMTExLjUgODAuOSBDIDEwOC45IDgyLjQgMTA1LjUgODIuNSAxMDEuOSA4Mi42IEMgOTguMyA4Mi43IDk0LjcgODIuOSA5MS44IDg0LjkgQyA4OS43IDg2LjUgODguNiA4OC41IDg3LjUgOTAuMyBDIDg2LjQgOTIgODUuMiA5My40IDgyLjcgOTQuMiBDIDc5LjQgOTUuMyA3MiA5Ni40IDY2LjkgOTguOCBDIDY0LjMgMTAwLjEgNjIuMSAxMDEuNyA2MS41IDEwNCBDIDYwLjggMTA2LjMgNjEuNyAxMDkuMSA2NC43IDExMi4zIEwgNjUuMSAxMTEuOSBMIDY1LjEgMTIwLjEgTCA4NC4zIDEyMC4xIEwgODQuMyAxMjkuNyBMIDg2LjcgMTI5LjcgTCA4Ni43IDEyMC4xIEwgOTcuOSAxMjAuMSBMIDk3LjkgMTI5LjcgTCAxMDAuMyAxMjkuNyBMIDEwMC4zIDEyMC4xIEwgMTE3LjEgMTIwLjEgTCAxMTcuMSAxMTIuNSBDIDExNy40IDExMi4yIDExNy43IDExMS45IDExOCAxMTEuNSBDIDExOSAxMTAuMSAxMTkuMyAxMDguNSAxMTkuNSAxMDYuOSBDIDExOS44IDEwMy43IDExOS41IDEwMC41IDEyMS43IDk3LjcgQyAxMjMuMSA5NS45IDEyNiA5NS40IDEyOS4xIDk0LjcgQyAxMzIuMSA5NC4xIDEzNS40IDkzLjMgMTM3LjIgOTAuNCBDIDEzOS40IDg2LjcgMTM5LjEgODEuMyAxMzcuMiA3Ni44IEMgMTM2LjMgNzQuNSAxMzQuOSA3Mi41IDEzMyA3MS4xIEMgMTMxLjQgNjkuOSAxMjkuNSA2OS4xIDEyNy4zIDY5LjEgeiBNIDEyNy40IDcwLjcgQyAxMjkuMiA3MC43IDEzMC43IDcxLjMgMTMyLjEgNzIuMyBDIDEzMy42IDczLjUgMTM0LjkgNzUuNCAxMzUuOCA3Ny40IEMgMTM3LjUgODEuNSAxMzcuNiA4Ni42IDEzNS44IDg5LjYgQyAxMzQuNSA5MS44IDEzMS43IDkyLjUgMTI4LjcgOTMuMiBDIDEyNS43IDkzLjggMTIyLjQgOTQuMyAxMjAuNSA5Ni43IEMgMTE3LjggMTAwIDExOC4yIDEwMy43IDExNy45IDEwNi43IEMgMTE3LjggMTA4LjIgMTE3LjUgMTA5LjUgMTE2LjcgMTEwLjYgQyAxMTYuNSAxMTAuOCAxMTYuMyAxMTEuMSAxMTYuMSAxMTEuMyBMIDY1LjggMTExLjMgTCA2NS45IDExMS4zIEMgNjMuMSAxMDguMiA2Mi42IDEwNi4xIDYzIDEwNC40IEMgNjMuNSAxMDIuOCA2NS4yIDEwMS40IDY3LjYgMTAwLjMgQyA3Mi4zIDk4IDc5LjUgOTYuOSA4My4xIDk1LjggQyA4Ni4xIDk0LjggODcuNyA5Mi45IDg4LjggOTEuMSBDIDkwIDg5LjMgOTAuOSA4Ny41IDkyLjggODYuMiBDIDk1LjEgODQuNSA5OC40IDg0LjMgMTAyIDg0LjIgQyAxMDUuNSA4NC4xIDEwOS4yIDg0LjEgMTEyLjMgODIuMyBDIDExNC43IDgwLjggMTE3LjEgNzguMSAxMTkuNSA3NS42IEMgMTIxLjkgNzMuMSAxMjQuNCA3MSAxMjYuNiA3MC44IEMgMTI2LjkgNzAuOCAxMjcuMSA3MC43IDEyNy40IDcwLjcgeiBcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyNy40LDcwLjcgYyAxLjgsLTAgMy4zLDAuNiA0LjcsMS42IDEuNSwxLjIgMi44LDMgMy43LDUuMSAxLjcsNC4xIDEuOSw5LjIgMC4xLDEyLjIgLTEuMywyLjIgLTQuMSwzIC03LjEsMy42IC0zLDAuNiAtNi4zLDEuMSAtOC4zLDMuNSAtMi42LDMuMyAtMi4zLDcuMSAtMi42LDEwIC0wLjEsMS41IC0wLjQsMi44IC0xLjIsMy44IC0wLjIsMC4yIC0wLjQsMC41IC0wLjYsMC43IGwgLTUwLjIsMCAwLC0wIGMgLTIuOCwtMyAtMy4zLC01LjIgLTIuOCwtNi44IDAuNSwtMS42IDIuMSwtMyA0LjUsLTQuMiA0LjgsLTIuMyAxMS45LC0zLjQgMTUuNiwtNC41IDMsLTEgNC41LC0yLjggNS43LC00LjYgMS4yLC0xLjggMi4xLC0zLjYgMy45LC00LjkgMi4zLC0xLjcgNS43LC0xLjkgOS4yLC0yIDMuNSwtMC4xIDcuMywtMC4xIDEwLjMsLTEuOSAyLjUsLTEuNCA0LjgsLTQuMiA3LjIsLTYuNyAyLjQsLTIuNSA0LjksLTQuNiA3LjEsLTQuOCAwLjMsLTAgMC41LC0wLjEgMC44LC0wLjEgeiBtIC00MS45LDQ5IDEzLjYsMCAwLDEwIC0xMy42LDAgelwifV0saVtcIkdSLklOLklDLlNUT1JBR0UgVE9XRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTguMywxMjEgMC40LDUuMyAwLjcsMTIuOCBoIDIuOSBjIDAsLTYuMSAtMS4xLC0xMi42IC0xLjEsLTE4LjYgMCwtMy40IC0wLjQsLTYuMiAtMC40LC05LjYgLTAuMSwtNS4zIDAuMiwtMyAyLjYsLTYuNiBsIC0wLjMsLTMuMSAwLC0xLjEgaCAtNC4yIFYgODQgYyAtMi41LDAuNiAtNS4yLDEuOCAtOC4zLDIuNiAtMi42LDAuNiAtNi40LDEuNCAtOS40LDEuNCBoIC0yLjQgYyAtNy42LDAgLTEyLjIsLTIuNiAtMTgsLTQgdiAxNi4yIGggLTQuMiB2IDAuNyBsIC0wLjMsMy43IDMuMiwzLjcgLTIsMzAuOCBoIDMuMSB2IC0zLjMgbCAxLjQsLTIxLjcgYyAwLjUsMC40IDIuMSwyLjcgMywzLjYgMC45LDAuOSAyLjQsMi4yIDMuNSwyLjkgMi4yLDEuNSA1LjYsMy44IDguNyw0LjEgdiAxNC40IGggNS42IHYgLTE0LjQgYyAzLjcsLTAuOSA2LjIsLTIuMiA4LjgsLTQuMyAxLjQsLTEuMSAyLjIsLTEuOCAzLjQsLTMgMC43LC0wLjcgMi41LC0zLjIgMywtMy40IHYgMy4xIGwgMC4yLDMuOCB6IE0gOTkuNyw4NS4yIGMgNy40LDAgMjMsLTQuNCAyNS43LC04LjQgLTIuOCwtMS41IC0yNS4xLC0xNiAtMjUuMywtMTYgLTAuNCwwIC0yNC45LDE1LjQgLTI1LjUsMTYuMiAyLjYsMy41IDE2LjYsOC4yIDIzLjMsOC4yIGggMS44IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDk3LjksODUuMiBjIC00LjMsMCAtMTEuNywtMiAtMTcsLTQuMyBsIC0wLDMuMiBjIDUuOCwxLjQgMTAuNCw0IDE4LDQgaCAyLjQgYyAzLDAgNi45LC0wLjggOS40LC0xLjQgMywtMC44IDUuOCwtMiA4LjMsLTIuNiBWIDgwLjggYyAtNiwyLjQgLTE0LjQsNC40IC0xOS4zLDQuNCBIIDk3LjkgelwifV0saVtcIkdSLklOLklDLlNVUkZBQ0UgV0FURVIgSU5UQUtFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gNjMuNCA3NS41IEwgNjMuNCA3Ni4zIEwgNjMuNCA5MC43IEwgNjMuNCA5MS41IEwgNjQuMiA5MS41IEwgNzUuNyA5MS41IEMgNzYuNSA5Ni42IDc5LjggOTkuMSA4My4zIDEwMSBDIDg3LjEgMTAyLjkgOTEuMyAxMDQuMyA5My44IDEwNy41IEMgOTQuOCAxMDguOSA5NC45IDExMC43IDk1LjIgMTEyLjYgQyA5NS40IDExMy42IDk1LjYgMTE0LjUgOTYuMiAxMTUuNCBDIDk2LjcgMTE2LjIgOTcuNSAxMTcgOTguOCAxMTcuNSBDIDEwMS4yIDExOC42IDEwOC43IDEyMC43IDExNS45IDEyMi40IEMgMTE5LjYgMTIzLjIgMTIzLjEgMTIzLjkgMTI2IDEyNC4zIEMgMTI3LjUgMTI0LjQgMTI4LjcgMTI0LjUgMTI5LjggMTI0LjUgQyAxMzAuOCAxMjQuNCAxMzEuNiAxMjQuMyAxMzIuMiAxMjMuOCBDIDEzNC44IDEyMS43IDEzNi4xIDExOS45IDEzNi41IDExOC4zIEMgMTM2LjggMTE2LjggMTM2LjEgMTE1LjQgMTM1IDExNC40IEMgMTMzLjkgMTEzLjQgMTMyLjQgMTEyLjUgMTMxIDExMS43IEMgMTI5LjcgMTEwLjggMTI4LjQgMTA5LjkgMTI3LjcgMTA4LjggQyAxMjQuMiAxMDMuNiAxMjEgOTUuNSAxMTMuNCA5MS41IEwgMTE5IDkxLjUgTCAxMTkuOCA5MS41IEwgMTE5LjggOTAuNyBMIDExOS44IDc2LjMgTCAxMTkuOCA3NS41IEwgMTE5IDc1LjUgTCA2NC4yIDc1LjUgTCA2My40IDc1LjUgeiBNIDY1IDc3LjEgTCAxMTguMiA3Ny4xIEwgMTE4LjIgODkuOSBMIDEwOS40IDg5LjkgTCAxMDkuNCA4MS4xIEwgNzMuOCA4MS4xIEwgNzMuOCA4OS45IEwgNjUgODkuOSBMIDY1IDc3LjEgeiBNIDc2LjkgOTEuNSBMIDExMC41IDkxLjUgQyAxMTkuNCA5NC44IDEyMi43IDEwMy41IDEyNi43IDEwOS41IEMgMTI3LjYgMTEwLjggMTI5IDExMS44IDEzMC40IDExMi43IEMgMTMxLjggMTEzLjYgMTMzLjIgMTE0LjQgMTM0LjIgMTE1LjMgQyAxMzUuMSAxMTYuMiAxMzUuNiAxMTcgMTM1LjMgMTE4LjEgQyAxMzUuMSAxMTkuMiAxMzQgMTIwLjggMTMxLjQgMTIyLjkgQyAxMzEuMyAxMjMgMTMwLjYgMTIzLjIgMTI5LjcgMTIzLjMgQyAxMjguOCAxMjMuMyAxMjcuNiAxMjMuMyAxMjYuMiAxMjMuMSBDIDEyMy4zIDEyMi44IDExOS44IDEyMi4xIDExNi4yIDEyMS4zIEMgMTA5IDExOS42IDEwMS41IDExNy4zIDk5LjMgMTE2LjQgQyA5OC4yIDExNiA5Ny42IDExNS40IDk3LjIgMTE0LjggQyA5Ni44IDExNC4xIDk2LjYgMTEzLjMgOTYuNCAxMTIuNCBDIDk2LjEgMTEwLjYgOTYgMTA4LjUgOTQuNyAxMDYuOCBDIDkxLjkgMTAzLjIgODcuNiAxMDEuOCA4My45IDk5LjkgQyA4MC41IDk4LjEgNzcuNyA5Ni4xIDc2LjkgOTEuNSB6IFwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzYuOSw5MS41IDMzLjYsMCBjIDguOSwzLjMgMTIuMiwxMiAxNi4yLDE4IDAuOSwxLjMgMi4zLDIuMyAzLjcsMy4yIDEuNCwwLjkgMi44LDEuNyAzLjgsMi42IDAuOSwwLjkgMS40LDEuNyAxLjIsMi44IC0wLjIsMS4xIC0xLjMsMi43IC0zLjksNC44IC0wLjIsMC4xIC0wLjgsMC4zIC0xLjcsMC40IC0wLjksMCAtMi4yLC0wIC0zLjYsLTAuMiAtMi44LC0wLjMgLTYuNCwtMSAtMTAsLTEuOCAtNy4yLC0xLjcgLTE0LjcsLTMuOSAtMTYuOSwtNC44IC0xLjEsLTAuNCAtMS42LC0xIC0yLjEsLTEuNyAtMC40LC0wLjcgLTAuNiwtMS41IC0wLjgsLTIuMyAtMC4zLC0xLjggLTAuNCwtMy45IC0xLjcsLTUuNiAtMi44LC0zLjYgLTcuMSwtNSAtMTAuOCwtNi45IEMgODAuNSw5OC4xIDc3LjcsOTYuMSA3Ni45LDkxLjUgeiBtIC0xMS45LC0xNC40IDUzLjIsMCAwLDEyLjggLTguOCwwIDAsLTguOCAtMzUuNiwwIDAsOC44IC04LjgsMCAwLC0xMi44IHpcIn1dLGlbXCJHUi5JTi5JQy5XQVJFSE9VU0UvU1RPUkFHRSBGQUNJTElUWVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEzLGZvbnRzaXplOjIzLHRleHQ6XCJTVE9SXCJ9XSxpW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDcuMiwxMTQuOCBjIDEuOSwwIDMuOSwtMSA0LjMsLTIuNCAxLjUsMSAxLjcsMi40IDQuNiwyLjQgaCAwLjQgYyAxLjgsMCAzLjgsLTEuMSA0LjEsLTIuNCBoIDAuNCBjIDAuNCwxLjQgMi41LDIuNCA0LjUsMi40IGggMC40IGMgMi43LDAgMywtMS41IDQuNSwtMi40IDAuNCwxLjQgMi42LDIuNCA0LjUsMi40IHYgLTEuNSBjIC0yLjIsMCAtMy41LC0xLjYgLTMuOSwtMy40IGggLTEuNSBjIC0wLDEuOCAtMS43LDMuNCAtMy42LDMuNCBoIC0wLjQgYyAtMi4yLDAgLTMuNiwtMS40IC0zLjgsLTMuNCBoIC0xLjcgbCAtMC4yLDEuMyBjIC0xLDAuNyAtMS4xLDIgLTMuMywyIGggLTAuNCBjIC0zLjMsMCAtMy4yLC0zLjQgLTQuMSwtMy40IGggLTEuMyBjIC0wLjIsMiAtMS40LDMuNCAtMy42LDMuNCB2IDEuNSB6IG0gLTIuMiwtMzMuMyBoIDMyIHYgMzcgaCAtMzIgViA4MS41IHogTSA2NS4xLDExNC44IHYgLTEuNSBjIDIsMCAzLjcsLTEuNiAzLjgsLTMuNCBoIDEuOSBjIDAsMS44IDEuNSwzLjQgMy40LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS45IGMgMCwyIDEuNywzLjQgMy44LDMuNCBoIDAuMiBjIDIuMiwwIDMuMiwtMS42IDMuNiwtMy40IGggMS43IGMgMCwyIDEuNywzLjQgMy44LDMuNCB2IDEuNSBjIC0yLDAgLTQuMSwtMSAtNC41LC0yLjQgLTEuNCwwLjkgLTEuNywyLjUgLTQuNiwyLjUgaCAtMC42IGMgLTIuOSwwIC0zLjEsLTEuNSAtNC41LC0yLjQgLTAuNCwxLjMgLTIuNCwyLjQgLTQuMSwyLjQgSCA3NC4xIGMgLTIuNCwwIC0zLjQsLTEuMiAtNC41LC0yLjQgLTAuNCwxLjQgLTIuNiwyLjQgLTQuNSwyLjQgbCAwLDAgeiBNIDk2LjUsOTMuNCBoIDYuNyB2IDEzLjMgSCA5Ni41IFYgOTMuNCB6IG0gLTMxLjQsNy45IGMgMiwwIDMuNiwtMS41IDMuOCwtMy40IGggMS45IGMgMC4yLDEuOCAxLjQsMy40IDMuNCwzLjQgaCAwLjQgYyAxLjgsMCAzLjUsLTEuNyAzLjYsLTMuNCBoIDEuOSBjIDAsMiAxLjcsMy40IDMuOCwzLjQgaCAwLjIgYyAxLjUsMCAzLjQsLTEuNSAzLjQsLTIuNiB2IC0wLjggaCAxLjkgYyAwLDEuOSAxLjgsMy40IDMuOCwzLjQgdiAxLjUgYyAtMy42LDAgLTMuOCwtMiAtNC45LC0yLjIgLTAuNCwxLjMgLTIuNSwyLjIgLTQuMiwyLjIgaCAtMC42IGMgLTEuNywwIC0zLjgsLTEgLTQuMSwtMi4yIC0xLDAuMyAtMS40LDIuMiAtNC41LDIuMiBIIDc0LjEgYyAtMi43LDAgLTMsLTEuMyAtNC41LC0yLjIgLTEsMS40IC0yLjIsMi4yIC00LjUsMi4yIHYgLTEuNSBsIDAsMCB6IG0gMCwtMTIgYyAyLDAgMy42LC0xLjUgMy44LC0zLjQgaCAxLjkgYyAwLjEsMS44IDEuNCwzLjQgMy40LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS43IDMuNiwtMy40IGggMS45IGMgMCwyIDEuNywzLjQgMy44LDMuNCBoIDAuMiBjIDEuNSwwIDMuNCwtMS41IDMuNCwtMi42IHYgLTAuOCBoIDEuOSBjIDAsMS45IDEuOCwzLjQgMy44LDMuNCB2IDEuNSBjIC0zLjEsMCAtMywtMSAtNC43LC0yIC0xLjQsMSAtMS43LDIuMSAtNC40LDIuMSBoIC0wLjYgYyAtMi43LDAgLTIuOSwtMS4xIC00LjMsLTIgLTEuNiwxIC0xLjYsMiAtNC41LDIgSCA3My45IGMgLTIuNCwwIC0yLjksLTEuMiAtNC4xLC0yIC0xLjYsMSAtMS43LDIgLTQuNywyIHYgLTEuNSBsIDAsMCB6IG0gMzEuNCwyMS4zIGggNi43IHYgMTAuMSBoIDM1LjYgViA3OS40IEwgMTAzLjMsNzkuMiBWIDg5LjUgSCA5Ni41IFYgNzkuNCBMIDYxLjIsNzkuMiB2IDQxLjYgaCAzNS40IHYgLTEwLjEgeiBtIDE0LjIsLTEyLjIgYyAwLDEuNCAtMS44LDIuOCAtMy42LDIuOCB2IDEuNSBjIDMuNCwwIDMuNSwtMS45IDQuNywtMi4yIDAuNCwxLjMgMi43LDIuMiA0LjUsMi4yIGggMC4yIGMgMi45LDAgMywtMS4zIDQuMywtMi4yIDEuMiwwLjkgMS43LDIuMiA0LjMsMi4yIGggMC44IGMgMi42LDAgMywtMS4zIDQuMywtMi4yIDEuNCwxIDEuNSwyLjIgNC42LDIuMiB2IC0xLjUgYyAtMS43LDAgLTMuOCwtMS42IC0zLjgsLTIuOCB2IC0wLjYgaCAtMS43IGMgLTAuMSwxLjggLTEuNiwzLjQgLTMuNiwzLjQgaCAtMC42IGMgLTEuNCwwIC0zLjQsLTEuNCAtMy40LC0yLjQgdiAtMC45IGggLTEuOSBjIDAsMS43IC0xLjcsMy40IC0zLjUsMy40IGggLTAuNCBjIC0xLjksMCAtMy41LC0xLjUgLTMuNiwtMy40IGggLTEuOCB2IDAuNiB6IG0gMCwtMTIgYyAwLDEuNCAtMS44LDIuOCAtMy42LDIuOCB2IDEuNSBjIDEuOCwwIDQsLTAuOSA0LjMsLTIuMiAxLjYsMS4xIDEuNywyLjIgNC45LDIuMiBoIDAuNCBjIDIuNiwwIDIuOSwtMS4zIDQuMywtMi4yIDAuMywxLjMgMi40LDIuMyA0LjEsMi4zIGggMC44IGMgMi43LDAgMywtMS4zIDQuNSwtMi4yIDAuNCwxLjMgMi43LDIuMiA0LjUsMi4yIHYgLTEuNSBjIC0xLjcsMCAtMy44LC0xLjYgLTMuOCwtMi44IHYgLTAuNiBoIC0xLjcgYyAtMC4xLDEuOCAtMS42LDMuNCAtMy42LDMuNCBoIC0wLjYgYyAtMS42LDAgLTMuNCwtMS40IC0zLjQsLTIuOCB2IC0wLjYgaCAtMS45IGMgMCwxLjcgLTEuNywzLjQgLTMuNSwzLjQgaCAtMC40IGMgLTEuOSwwIC0zLjUsLTEuNSAtMy42LC0zLjQgaCAtMS44IHYgMC41IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDY1LjEsMTE0LjggYyAxLjksMCA0LjEsLTEgNC41LC0yLjQgMS4xLDEuMiAyLjIsMi40IDQuNSwyLjQgaCAwLjYgYyAxLjgsMCAzLjgsLTEuMSA0LjEsLTIuNCAxLjQsMSAxLjYsMi40IDQuNSwyLjQgaCAwLjYgYyAyLjgsMCAzLjIsLTEuNiA0LjUsLTIuNCAwLjQsMS40IDIuNSwyLjQgNC41LDIuNCB2IC0xLjUgYyAtMi4xLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjYgYyAtMC40LDEuOCAtMS40LDMuNCAtMy42LDMuNCBoIC0wLjIgYyAtMi4xLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjggYyAtMCwxLjggLTEuNywzLjQgLTMuNiwzLjQgSCA3NC4xIGMgLTEuOCwwIC0zLjMsLTEuNiAtMy40LC0zLjQgaCAtMS45IGMgLTAsMS44IC0xLjgsMy40IC0zLjgsMy40IHYgMS41IGwgMCwwIHogbSAwLC0xMy41IHYgMS41IGMgMi4zLDAgMy42LC0wLjkgNC41LC0yLjIgMS40LDEgMS44LDIuMiA0LjUsMi4yIGggMC42IGMgMy4xLDAgMy41LC0yIDQuNSwtMi4yIDAuNCwxLjMgMi40LDIuMiA0LjEsMi4yIGggMC42IGMgMS43LDAgMy44LC0xIDQuMSwtMi4yIDEuMSwwLjMgMS4yLDIuMiA0LjksMi4yIHYgLTEuNSBjIC0yLDAgLTMuOCwtMS40IC0zLjgsLTMuNCBoIC0xLjkgdiAwLjggYyAwLDEuMiAtMS45LDIuNiAtMy40LDIuNiBoIC0wLjIgYyAtMiwwIC0zLjcsLTEuNCAtMy44LC0zLjQgaCAtMS44IGMgLTAsMS42IC0xLjcsMy40IC0zLjYsMy40IEggNzQuMSBjIC0yLDAgLTMuMiwtMS41IC0zLjQsLTMuNCBoIC0xLjkgYyAtMC4yLDEuOCAtMS43LDMuNCAtMy44LDMuNCBsIDAsMCB6IG0gMCwtMTIgdiAxLjUgYyAzLDAgMy4xLC0xIDQuNywtMiAxLjIsMC45IDEuNywyIDQuMSwyIGggMC42IGMgMi45LDAgMi45LC0xIDQuNSwtMiAxLjQsMC45IDEuNiwyIDQuMywyIGggMC42IGMgMi43LDAgMi45LC0xLjEgNC4zLC0yIDEuNiwxLjEgMS42LDIgNC43LDIgdiAtMS41IGMgLTIsMCAtMy44LC0xLjQgLTMuOCwtMy40IGggLTEuOSB2IDAuOCBjIDAsMS4yIC0xLjksMi42IC0zLjQsMi42IGggLTAuMiBjIC0yLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjggYyAtMCwxLjcgLTEuNywzLjQgLTMuNiwzLjQgSCA3NC4xIGMgLTIsMCAtMy4yLC0xLjUgLTMuNCwtMy40IGggLTEuOSBjIC0wLjIsMS44IC0xLjcsMy40IC0zLjgsMy40IGwgMCwwIHogbSA0Mi4xLDI1LjQgdiAtMS41IGMgMi4yLDAgMy40LC0xLjQgMy42LC0zLjQgaCAxLjMgYyAxLDAgMC44LDMuNCA0LjEsMy40IGggMC40IGMgMi4yLDAgMi40LC0xLjQgMy4zLC0yLjEgbCAwLjIsLTEuMyBoIDEuNyBjIDAuMiwyIDEuNiwzLjQgMy44LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS41IGMgMC40LDEuOCAxLjcsMy40IDMuOSwzLjQgdiAxLjUgYyAtMS45LDAgLTQuMSwtMSAtNC41LC0yLjQgLTEuNSwxIC0xLjgsMi41IC00LjUsMi41IGggLTAuNCBjIC0yLDAgLTQuMSwtMSAtNC41LC0yLjQgaCAtMC40IGMgLTAuNCwxLjMgLTIuMywyLjQgLTQuMSwyLjQgaCAtMC40IGMgLTIuOSwwIC0zLjEsLTEuNCAtNC43LC0yLjQgLTAuNCwxLjQgLTIuNCwyLjQgLTQuMywyLjQgeiBtIDMuNiwtMTYuOCBoIDEuOSBjIDAsMS44IDEuNiwzLjQgMy41LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS45IHYgMC45IGMgMCwxIDIsMi40IDMuNCwyLjQgaCAwLjYgYyAxLjksMCAzLjQsLTEuNiAzLjYsLTMuNCBoIDEuNyB2IDAuNiBjIDAsMS4yIDIsMi44IDMuOCwyLjggdiAxLjUgYyAtMy4xLDAgLTMuMiwtMS4yIC00LjcsLTIuMiAtMS4zLDAuOSAtMS43LDIuMiAtNC40LDIuMiBoIC0wLjcgYyAtMi42LDAgLTMsLTEuMyAtNC4zLC0yLjIgLTEuMywxIC0xLjQsMi4yIC00LjMsMi4yIGggLTAuMiBjIC0xLjgsMCAtNC4yLC0xIC00LjUsLTIuMiAtMS4yLDAuMyAtMS4yLDIuMiAtNC43LDIuMiB2IC0xLjUgYyAxLjgsMCAzLjYsLTEuNCAzLjYsLTIuOCB2IC0wLjYgbCAwLDAgeiBtIDAsLTEyIGggMS45IGMgMCwxLjkgMS42LDMuNCAzLjUsMy40IGggMC40IGMgMS44LDAgMy41LC0xLjYgMy42LC0zLjQgaCAxLjkgdiAwLjYgYyAwLDEuNCAxLjgsMi44IDMuNCwyLjggaCAwLjYgYyAxLjksMCAzLjQsLTEuNiAzLjYsLTMuNCBoIDEuNyB2IDAuNiBjIDAsMS4yIDIsMi44IDMuOCwyLjggdiAxLjUgYyAtMS44LDAgLTQuMiwtMSAtNC41LC0yLjIgLTEuNSwxIC0xLjgsMi4yIC00LjYsMi4yIGggLTAuNyBjIC0xLjcsMCAtMy44LC0xIC00LjEsLTIuMiAtMS40LDAuOSAtMS43LDIuMiAtNC4zLDIuMiBoIC0wLjQgYyAtMy4xLDAgLTMuMiwtMS4yIC00LjksLTIuMiAtMC40LDEuMyAtMi41LDIuMiAtNC4zLDIuMiB2IC0xLjUgYyAxLjgsMCAzLjYsLTEuNCAzLjYsLTIuOCB2IC0wLjYgeiBtIC01LjgsMzIuNiBoIDMyIFYgODEuNSBoIC0zMiB2IDM3IHogbSAtMS43LC0xMS44IDAsLTEzLjMgLTYuOCwwIDAsMTMuMyB6XCJ9XSxpW1wiR1IuSU4uSUMuVFJBTlNQT1JUQVRJT04gSU5GUkFTVFJVQ1RVUkUuVFJBRkZJQyBDT05UUk9MIFBPSU5UXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODUuNSw4MS4zIDAuNSwwLjcgMTMuNywxOC4yIDAuMywwLjUgMC4zLC0wLjUgMTMuNywtMTguMiAwLjUsLTAuNyAtMC45LDAgLTI3LjQsMCAtMC45LDAgeiBtIDEuNywwLjkgMjUuNywwIEwgMTAwLDk5LjMgODcuMiw4Mi4yIHogTSAxMDYuNyw1MC43IGMgMCwwLjIgLTAsMC41IC0wLjEsMC43IC0wLjEsMC4yIC0wLjIsMC40IC0wLjQsMC41IC0wLjIsMC4yIC0wLjQsMC4zIC0wLjcsMC40IC0wLjMsMC4xIC0wLjYsMC4xIC0xLDAuMSBsIC0wLjcsMCAwLDIuMSAtMC43LDAgMCwtNS42IDEuNSwwIGMgMC4zLDVlLTYgMC42LDAgMC45LDAuMSAwLjIsMC4xIDAuNCwwLjEgMC42LDAuMyAwLjIsMC4xIDAuNCwwLjMgMC41LDAuNSAwLjEsMC4yIDAuMiwwLjUgMC4yLDAuOCBtIC0wLjgsMCBjIC0xZS01LC0wLjIgLTAsLTAuNCAtMC4xLC0wLjUgLTAuMSwtMC4xIC0wLjIsLTAuMyAtMC4zLC0wLjMgLTAuMSwtMC4xIC0wLjMsLTAuMSAtMC40LC0wLjIgLTAuMiwtMCAtMC4zLC0wLjEgLTAuNiwtMC4xIGwgLTAuNywwIDAsMi4yIDAuNiwwIGMgMC4zLDNlLTYgMC41LC0wIDAuNywtMC4xIDAuMiwtMC4xIDAuMywtMC4xIDAuNSwtMC4zIDAuMSwtMC4xIDAuMiwtMC4yIDAuMiwtMC40IDAuMSwtMC4xIDAuMSwtMC4zIDAuMSwtMC40IG0gLTMuOSwzLjUgYyAtMC4xLDAuMSAtMC4zLDAuMSAtMC40LDAuMiAtMC4xLDAuMSAtMC4zLDAuMSAtMC40LDAuMiAtMC4yLDAgLTAuMywwLjEgLTAuNSwwLjEgLTAuMiwwIC0wLjQsMC4xIC0wLjYsMC4xIC0wLjQsMCAtMC44LC0wLjEgLTEuMSwtMC4yIC0wLjMsLTAuMSAtMC42LC0wLjMgLTAuOSwtMC41IC0wLjIsLTAuMiAtMC40LC0wLjUgLTAuNiwtMC45IC0wLjEsLTAuNCAtMC4yLC0wLjggLTAuMiwtMS4zIDAsLTAuNSAwLjEsLTAuOSAwLjIsLTEuMiAwLjEsLTAuNCAwLjMsLTAuNyAwLjYsLTAuOSAwLjIsLTAuMiAwLjUsLTAuNCAwLjksLTAuNiAwLjMsLTAuMSAwLjcsLTAuMiAxLjEsLTAuMiAwLjMsNmUtNiAwLjYsMCAwLjksMC4xIDAuMywwLjEgMC42LDAuMiAxLDAuNCBsIDAsMC45IC0wLjEsMCBjIC0wLjMsLTAuMyAtMC42LC0wLjQgLTAuOSwtMC42IC0wLjMsLTAuMSAtMC42LC0wLjIgLTEsLTAuMiAtMC4zLDVlLTYgLTAuNSwwIC0wLjgsMC4xIC0wLjIsMC4xIC0wLjQsMC4yIC0wLjYsMC40IC0wLjIsMC4yIC0wLjMsMC40IC0wLjQsMC43IC0wLjEsMC4zIC0wLjEsMC42IC0wLjEsMSAtMTBlLTcsMC40IDAuMSwwLjcgMC4yLDEgMC4xLDAuMyAwLjIsMC41IDAuNCwwLjcgMC4yLDAuMiAwLjQsMC4zIDAuNiwwLjQgMC4yLDAuMSAwLjUsMC4xIDAuNywwLjEgMC40LDEwZS03IDAuNywtMC4xIDEsLTAuMiAwLjMsLTAuMSAwLjYsLTAuMyAwLjksLTAuNiBsIDAuMSwwIDAsMC45IG0gLTUuMSwtNC41IC0yLDAgMCw0LjkgLTAuNywwIDAsLTQuOSAtMiwwIDAsLTAuNyA0LjcsMCAwLDAuNyBNIDg1LjksNDQuNiBsIDAsMC40IDAsMzYuNSAwLDAuNCAwLjQsMCAyNy40LDAgMC40LDAgMCwtMC40IDAsLTM2LjUgMCwtMC40IC0wLjQsMCAtMjcuNCwwIC0wLjQsMCB6IG0gMC45LDAuOSAyNi41LDAgMCwzNS42IC0yNi41LDAgMCwtMzUuNiB6XCJ9XSxpW1wiQUMuTTEuUklPVFwiXT1sKFwiUklPVFwiKSxpW1wiQUMuTTEuVEhSRUFUXCJdPWwoXCI/XCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdPWwoXCJFQ0VQXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgSU5DSURFTlQgQ09NTUFORCBDRU5URVJcIl09bChcIkVJQ0NcIiksaVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXT1sKFwiRU9DXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgU0hFTFRFUlwiXT1sKFwiRVNcIiksaVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl09bChcIlNBXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1lcIl09bChcIkVNRVJcIiksaVtcIkFDLk0xLkNPTU1FUkNJQUxcIl09bChcIkNPTVwiKSxpW1wiQUMuTTEuUFJPRFVDVElPTlwiXT1sKFwiUFJPRFwiKSxpW1wiQUMuTTEuUkVUQUlMXCJdPWwoXCJSVExcIiksaVtcIkFDLk0xLk1JTElUQVJZIEFSTU9SWVwiXT1sKFwiUkVTXCIpLGlbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl09bChcIkdFTlwiKSxpW1wiR1IuSS5GRi5DSVZJTElBTiBST1RBUlkgV0lOR1wiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOm8sZDpcIk04MCw3MCBsMTAsMTAgTTEyMCwxMTAgbC0xMCwtMTAgTTgwLDExMCBsMTAsLTEwIE0xMjAsNzAgbC0xMCwxMCBNMTAwLDExNSBsMCwyMCBNOTUsMTM1IGwxMCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOm8sZmlsbDohIVImJkcsZDpcIm0gMTEzLDkwIGMgLTAuMyw4LjggLTEuOSwyMC4zIC0xMC44LDI0LjYgLTcuNywyIC0xMi4zLC03LjEgLTEzLjgsLTEzLjMgLTIuNiwtMTEuNSAtMi4zLC0yNiA2LjksLTM0LjYgNi4wLC00LjkgMTMuMSwxLjkgMTQuOSw3LjggMiw0LjkgMi44LDEwLjIgMi44LDE1LjUgelwifV0saVtcIkdSLklDLkhPU1BJVEFMIFNISVBcIl09YShcIkFIXCIpLGlbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlQgVkVTU0VMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOlI/RzohQyYmRyxkOlwibSA3NSwxMDAgMCwtMzUgNTAsMCAwLDM1IDIwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMzUsMTAwIC0xNSwzNSAtMTAsMCAxNSwtMzUgelwifV0saVtcIkNZLklDLkNPTUJBVCBNSVNTSU9OIFRFQU1cIl09YShcIkNNVFwiKSxpW1wiQ1kuSUMuTkFUSU9OQUwgTUlTU0lPTiBURUFNXCJdPWEoXCJOTVRcIiksaVtcIkNZLklDLkNZQkVSIFBST1RFQ1RJT04gVEVBTVwiXT1hKFwiQ1BUXCIpLGlbXCJDWS5JQy5OQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdPWEoXCJDVEFcIiksaVtcIkNZLklDLk5PTiBOQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdPWEoXCJDVEFcIiksaVtcIkNZLklDLk5PTiBOQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdLmZpbGw9Unx8Tj9HOiFDJiZHLGlbXCJDWS5JQy5OT04gTkFUSU9OIFNUQVRFIENZQkVSIFRIUkVBVCBBQ1RPUlwiXS5zdHJva2U9byxpW1wiQ1kuSUMuTk9OIE5BVElPTiBTVEFURSBDWUJFUiBUSFJFQVQgQUNUT1JcIl0uc3Ryb2tld2lkdGg9MyxpKWkuaGFzT3duUHJvcGVydHkoTCkmJihJLmhhc093blByb3BlcnR5KEwpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrTCksbi5jYWxsKHRoaXMsaVtMXSxPKSxJW0xdPWlbTF0pfXZhciBoPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbY10saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRy0tLS0tLS1cIl09W10sSVtcIlMtRy1VLS0tLS1cIl09W10sSVtcIlMtRy1VQy0tLS1cIl09W0VbXCJHUi5JQy5DT01CQVRcIl1dLElbXCJTLUctVUNELS0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl1dLElbXCJTLUctVUNEUy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLVVDRFNDLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBDSEFQQVJSQUxcIl1dLElbXCJTLUctVUNEU1MtXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIE1JU1NJTEVcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFNUSU5HRVJcIl1dLElbXCJTLUctVUNEU1YtXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgVlVMQ0FOXCJdXSxJW1wiUy1HLVVDRE0tLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDRE1MLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5NSVNTSUxFLkxJR0hUXCJdXSxJW1wiUy1HLVVDRE1MQVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNETU0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIE1JU1NJTEVcIl0sRVtcIkdSLklDLk1JU1NJTEUuTUVESVVNXCJdXSxJW1wiUy1HLVVDRE1ILVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5NSVNTSUxFLkhFQVZZXCJdXSxJW1wiUy1HLVVDREgtLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBIL01BRFwiXV0sSVtcIlMtRy1VQ0RISC1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgTUlTU0lMRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgSEFXS1wiXV0sSVtcIlMtRy1VQ0RIUC1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgTUlTU0lMRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgUEFUUklPVFwiXV0sSVtcIlMtRy1VQ0RHLS1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgR1VOIFVOSVRcIl1dLElbXCJTLUctVUNEQy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIENPTVBPU0lURVwiXV0sSVtcIlMtRy1VQ0RULS1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgVEFSR0VUSU5HIFVOSVRcIl1dLElbXCJTLUctVUNETy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFRIRUFURVIgTUlTU0lMRSBERUZFTlNFIFVOSVRcIl1dLElbXCJTLUctVUNBLS0tXCJdPVtFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDQVQtLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FUQS1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDQVRXLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVtcIlMtRy1VQ0FUV1JcIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl0sRVtcIkdSLk0yLlJFQ09WRVJZIChNQUlOVEVOQU5DRSlcIl1dLElbXCJTLUctVUNBVEwtXCJdPVtFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ0FUTS1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLk1FRElVTVwiXV0sSVtcIlMtRy1VQ0FUSC1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLkhFQVZZXCJdXSxJW1wiUy1HLVVDQVRSLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sSVtcIlMtRy1VQ0FXLS1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXV0sSVtcIlMtRy1VQ0FXUy1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDQVdBLVwiXT1bRVtcIkdSLklDLkFSTU9SLCBXSEVFTEVEXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0FXVy1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVtcIlMtRy1VQ0FXV1JcIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXSxFW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sSVtcIlMtRy1VQ0FXTC1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNBV00tXCJdPVtFW1wiR1IuSUMuQVJNT1IsIFdIRUVMRURcIl0sRVtcIkdSLk0yLk1FRElVTVwiXV0sSVtcIlMtRy1VQ0FXSC1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNBV1ItXCJdPVtFW1wiR1IuSUMuQVJNT1IsIFdIRUVMRURcIl0sRVtcIkdSLk0yLlJFQ09WRVJZIChNQUlOVEVOQU5DRSlcIl1dLElbXCJTLUctVUNBQS0tXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FBRC1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdXSxJW1wiUy1HLVVDQUFMLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDQUFNLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDQUFTLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0FBVS1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0FBQy1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5NMi5BUkNUSUNcIl1dLElbXCJTLUctVUNBQUEtXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDQUFBVFwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FBQVdcIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLldIRUVMRURcIl1dLElbXCJTLUctVUNBQUFTXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl1dLElbXCJTLUctVUNBQU8tXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVDQUFPU1wiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDVi0tLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdXSxJW1wiUy1HLVVDVkYtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl1dLElbXCJTLUctVUNWRlUtXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gRklYRUQgV0lOR1wiXSxFW1wiR1IuTTEuVVRJTElUWVwiXV0sSVtcIlMtRy1VQ1ZGQS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5BVFRBQ0tcIl1dLElbXCJTLUctVUNWVVRQXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gVEFDVElDQUwgQUlSIENPTlRST0wgUEFSVFlcIl1dLElbXCJTLUctVUNWVUZDXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gRk9SV0FSRCBBSVIgQ09OVFJPTExFUlwiXV0sSVtcIlMtRy1VQ1ZGUi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5SRUNPTlwiXV0sSVtcIlMtRy1VQ1ZSLS1cIl09Uj9bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lORyAyNTI1Q1wiXV06W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1ZSQS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQVRUQUNLXCJdXSxJW1wiUy1HLVVDVlJTLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5SRUNPTlwiXV0sSVtcIlMtRy1VQ1ZSVy1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1HLVVDVlJVLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdXSxJW1wiUy1HLVVDVlJVTFwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ1ZSVU1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuVVRJTElUWVwiXSxFW1wiR1IuTTIuTUVESVVNXCJdXSxJW1wiUy1HLVVDVlJVSFwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdLEVbXCJHUi5NMi5IRUFWWVwiXV0sSVtcIlMtRy1VQ1ZSVUNcIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQ09NTUFORCBBTkQgQ09OVFJPTCBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1ZSVUVcIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTUVERVZBQ1wiXV0sSVtcIlMtRy1VQ1ZSTS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVwiXV0sSVtcIlMtRy1VQ1ZTLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuUEVSU09OTkVMIFJFQ09WRVJZXCJdXSxJW1wiUy1HLVVDVkMtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIENPTVBPU0lURVwiXV0sSVtcIlMtRy1VQ1ZWLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMi5WRVJUSUNBTCBPUiBTSE9SVCBUQUtFLU9GRiBBTkQgTEFORElORyBcIl1dLElbXCJTLUctVUNWVS0tXCJdPVtFW1wiR1IuSUMuVU5NQU5ORUQgU1lTVEVNU1wiXV0sSVtcIlMtRy1VQ1ZVRi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXV0sSVtcIlMtRy1VQ1ZVUi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUctVUNJLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl1dLElbXCJTLUctVUNJTC0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDSU0tLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNJTy0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDSUEtLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0lTLS1cIl09W0VbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDSVotLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNJTi0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLkZGLk5BVkFMXCJdXSxJW1wiUy1HLVVDSUktLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXV0sSVtcIlMtRy1VQ0lDLS1cIl09W0VbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDRS0tLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdXSxJW1wiUy1HLVVDRUMtLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdLEVbXCJHUi5NMS5DT01CQVRcIl1dLElbXCJTLUctVUNFQ1MtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0VDQS1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNFQ0MtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0yLkFSQ1RJQ1wiXV0sSVtcIlMtRy1VQ0VDTC1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTEuQ09NQkFUXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ0VDTS1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTEuQ09NQkFUXCJdLEVbXCJHUi5NMi5NRURJVU1cIl1dLElbXCJTLUctVUNFQ0gtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLkNPTUJBVFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNFQ1QtXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRU5HSU5FRVJcIl0pLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNFQ1ctXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVtcIlMtRy1VQ0VDTy1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTIuTU9VTlRBSU5cIl1dLElbXCJTLUctVUNFQ1ItXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDRU4tLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdLEVbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl1dLElbXCJTLUctVUNFTk4tXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVDRi0tLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXV0sSVtcIlMtRy1VQ0ZILS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl1dLElbXCJTLUctVUNGSEUtXCJdPVtzLl9zY2FsZSguOCxFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdKSxFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDRkhTLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRkhBLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNGSEMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMi5BUkNUSUNcIl1dLElbXCJTLUctVUNGSE8tXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0ZITC1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDRkhNLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuTUVESVVNXCJdXSxJW1wiUy1HLVVDRkhILVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNGSFgtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdXSxJW1wiUy1HLVVDRlItLVwiXT1bRVtcIkdSLklDLkZGLkZJRUxEIEFSVElMTEVSWSBST0NLRVRcIl1dLElbXCJTLUctVUNGUlMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5TSU5HTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJW1wiUy1HLVVDRlJTLVwiXT1bcy5fc2NhbGUoLjgsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sUj9bXTpFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDRlJTU1wiXT1bcy5fc2NhbGUoLjgsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0ZSU1JcIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRlJTVFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuTTIuVE9XRURcIl1dLElbXCJTLUctVUNGUk0tXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sUj9cIlwiOkVbXCJHUi5NMi5DUk9TUy1DT1VOVFJZIFRSVUNLXCJdXSxJW1wiUy1HLVVDRlJNU1wiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNGUk1SXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRlJNVFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXV0sSVtcIlMtRy1VQ0ZULS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0yLlRBUkdFVCBBQ1FVSVNJVElPTlwiXV0sSVtcIlMtRy1VQ0ZUUi1cIl09W3MuX3RyYW5zbGF0ZSgtMzAsMTAscy5fc2NhbGUoLjYsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSkpLEVbXCJHUi5JQy5SQURBUlwiXV0sSVtcIlMtRy1VQ0ZUUy1cIl09W3MuX3RyYW5zbGF0ZSgwLDMwLHMuX3NjYWxlKC43LEVbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0pKSxFW1wiR1IuSUMuRkYuU09VTkRcIl1dLElbXCJTLUctVUNGVEYtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5PUFRJQ0FMXCJdLEVbXCJHUi5NMi5UQVJHRVQgQUNRVUlTSVRJT05cIl1dLElbXCJTLUctVUNGVEMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDRlRDRFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUctVUNGVENNXCJdPVtzLl9zY2FsZSguOCxFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdKSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0ZUQS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTkFWQUxcIl1dLElbXCJTLUctVUNGTS0tXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdXSxJW1wiUy1HLVVDRk1TLVwiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVFJBQ0tFRFwiXV0sSVtcIlMtRy1VQ0ZNVy1cIl09SVtcIlMtRy1VQ0ZNU1dcIl09W0VbXCJHUi5JQy5NT1JUQVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRk1ULVwiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVE9XRURcIl1dLElbXCJTLUctVUNGTVRBXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNGTVRTXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRk1UQ1wiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDRk1UT1wiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVE9XRURcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDRk1MLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTIwLEVbXCJHUi5JQy5NT1JUQVJcIl0pLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdXSxJW1wiUy1HLVVDRlMtLVwiXT1bRVtcIkdSLklDLlNVUlZFWVwiXV0sSVtcIlMtRy1VQ0ZTUy1cIl09W0VbXCJHUi5JQy5TVVJWRVlcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0ZTQS1cIl09W0VbXCJHUi5JQy5TVVJWRVlcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDRlNMLVwiXT1bRVtcIkdSLklDLlNVUlZFWVwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNGU08tXCJdPVtFW1wiR1IuSUMuU1VSVkVZXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0ZPLS1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXV0sSVtcIlMtRy1VQ0ZPUy1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRk9BLVwiXT1bRVtcIkdSLklDLk1FVEVPUk9MT0dJQ0FMXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0ZPTC1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNGT08tXCJdPVtFW1wiR1IuSUMuTUVURU9ST0xPR0lDQUxcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDUi0tLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDUkgtLVwiXT1bRVtcIkdSLklDLkZGLkhPUlNFXCJdXSxJW1wiUy1HLVVDUlYtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLFI/RVtcIkdSLk0yLkNBVkFMUllcIl06W11dLElbXCJTLUctVUNSVkEtXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ1JWTS1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVDUlZHLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDUlZPLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1JDLS1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDUlMtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl1dLElbXCJTLUctVUNSQS0tXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDUk8tLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ1JMLS1cIl09SVtcIlMtRy1VQ1JMTC1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNSUi0tXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbXCJTLUctVUNSUkQtXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl0sUj9FW1wiR1IuTTEuTUFSSU5FIERJVklTSU9OXCJdOltdXSxJW1wiUy1HLVVDUlJGLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdLEVbXCJHUi5NMS5GT1JDRVwiXV0sSVtcIlMtRy1VQ1JSTC1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdXSxJW1wiUy1HLVVDUlgtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLFI/RVtcIkdSLk0yLkxPTkcgUkFOR0UgU1VSVkVJTExBTkNFXCJdOltzLl90cmFuc2xhdGUoMCwtMjAsRVtcIkdSLk0yLk1PVU5UQUlOXCJdKSxFW1wiR1IuTTIuTE9ORyBSQU5HRVwiXV1dLElbXCJTLUctVUNNLS0tXCJdPVtFW1wiR1IuSUMuTUlTU0lMRVwiXV0sSVtcIlMtRy1VQ01ULS1cIl09W0VbXCJHUi5JQy5NSVNTSUxFXCJdLEVbXCJHUi5NMi5UQUNUSUNBTCBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDTVMtLVwiXT1bRVtcIkdSLklDLk1JU1NJTEVcIl0sRVtcIkdSLk0yLlNUUkFURUdJQyBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDUy0tLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdXSxJW1wiUy1HLVVDU1ctLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTIwLEVbXCJHUi5JQy5TRUNVUklUWVwiXSksRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbXCJTLUctVUNTRy0tXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl1dLElbXCJTLUctVUNTR0QtXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl0sRVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJW1wiUy1HLVVDU0dNLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNTR0EtXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ1NNLS1cIl09W0VbXCJHUi5JQy5TRUNVUklUWVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdXSxJW1wiUy1HLVVDU1ItLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VQ1NBLS1cIl09W3MuX3RyYW5zbGF0ZSgwLC0yMCxFW1wiR1IuSUMuU0VDVVJJVFlcIl0pLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1GLVMtLS1cIl09RVtcIkdSLklDLlNVUlZFSUxMQU5DRVwiXSxJW1wiUy1HLVVVLS0tLVwiXT1bRVtcIkdSLklDLkNPTUJBVCBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVQS0tLVwiXT1bRVtcIkdSLklDLkNCUk5cIl1dLElbXCJTLUctVVVBQy0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLElbXCJTLUctVVVBQ0MtXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0UvREVDT05cIl1dLElbXCJTLUctVVVBQ0NLXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0UvREVDT05cIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VVUFDQ01cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5TTU9LRS9ERUNPTlwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVVQUNTLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLlNNT0tFXCJdXSxJW1wiUy1HLVVVQUNTTVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLlNNT0tFXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVVVBQ1NBXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VVUFDUi1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5DSEVNSUNBTFwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUctVVVBQ1JXXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuTTIuV0hFRUxFRFwiXV0sSVtcIlMtRy1VVUFDUlNcIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdLFI/RVtcIkdSLk0xLkNIRU1JQ0FMIFNVUlZFSUxMQU5DRVwiXTpbXV0sSVtcIlMtRy1VVUFOLS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5OVUNMRUFSXCJdXSxJW1wiUy1HLVVVQUItLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLElbXCJTLUctVVVBQlItXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQklPTE9HSUNBTFwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdLEVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVtcIlMtRy1VVUFELS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl1dLElbXCJTLUctVVVBRFQtXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuREVDT05UQU1JTkFUSU9OXCJdLEVbXCJHUi5NMi5UUk9PUFwiXV0sSVtcIlMtRy1VVUFERS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl0sRVtcIkdSLk0yLkVRVUlQTUVOVFwiXV0sSVtcIlMtRy1VVUFERVRcIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl0sRVtcIkdSLk0yLkVRVUlNRU5UL1RST09QXCJdXSxJW1wiUy1HLVVVQUwtLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0yLkxBQk9SQVRPUllcIl1dLElbXCJTLUctVVVNLS0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdXSxJW1wiUy1HLVVVTUEtLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUctVVVNUy0tXCJdPVtzLl90cmFuc2xhdGUoLTI1LDAsRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSksRVtcIkdSLklDLlJBRElPXCJdXSxJW1wiUy1HLVVVTVNFLVwiXT1bRVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXV0sSVtcIlMtRy1VVU1TRUFcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLldIRUVMRURcIl1dLElbXCJTLUctVVVNU0VEXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5ESVJFQ1RJT04gRklORElOR1wiXV0sSVtcIlMtRy1VVU1TRUlcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLklOVEVSQ0VQVFwiXV0sSVtcIlMtRy1VVU1TRUpcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbXCJTLUctVVVNU0VUXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVVNU0VDXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVTUMtLVwiXT1bRVtcIkdSLklDLkNPVU5URVItSU5URUxMSUdFTkNFXCJdXSxJW1wiUy1HLVVVTVItLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXV0sSVtcIlMtRy1VVU1SRy1cIl09W0VbXCJHUi5JQy5NSUxJVEFSWSBJTlRFTExJR0VOQ0VcIl0sRVtcIkdSLk0xLlJBREFSXCJdXSxJW1wiUy1HLVVVTVJTLVwiXT1bcy5fdHJhbnNsYXRlKDAsMzAscy5fc2NhbGUoLjgsRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSkpLEVbXCJHUi5JQy5GRi5TRU5TT1JcIl1dLElbXCJTLUctVVVNUlNTXCJdPVtzLl90cmFuc2xhdGUoMCwzMCxzLl9zY2FsZSguOCxFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdKSksRVtcIkdSLklDLkZGLlNFTlNPUlwiXSxFW1wiR1IuTTEuU0VOU09SIENPTlRST0wgTU9EVUxFXCJdXSxJW1wiUy1HLVVVTVJYLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuR1JPVU5EIFNUQVRJT04gTU9EVUxFXCJdXSxJW1wiUy1HLVVVTU1PLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuTUVURU9ST0xPR0lDQUxcIl1dLElbXCJTLUctVVVNTy0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdLEVbXCJHUi5NMS5PUEVSQVRJT05TXCJdXSxJW1wiUy1HLVVVTVQtLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuVEFDVElDQUwgRVhQTE9JVEFUSU9OXCJdXSxJW1wiUy1HLVVVTVEtLVwiXT1bRVtcIkdSLklDLklOVEVSUk9HQVRJT05cIl1dLElbXCJTLUctVVVNSi0tXCJdPVtFW1wiR1IuSUMuSk9JTlQgSU5URUxMSUdFTkNFIENFTlRSRVwiXV0sSVtcIlMtRy1VVUwtLS1cIl09W0VbXCJHUi5JQy5GRi5NSUxJVEFSWSBQT0xJQ0VcIl0sRVtcIkdSLklDLk1JTElUQVJZIFBPTElDRVwiXV0sSVtcIlMtRy1VVUxTLS1cIl09W0VbXCJHUi5JQy5TSE9SRSBQQVRST0xcIl1dLElbXCJTLUctVVVMTS0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgUE9MSUNFXCJdXSxJW1wiUy1HLVVVTEMtLVwiXT1bRVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVtcIlMtRy1VVUxGLS1cIl09W3MuX3RyYW5zbGF0ZSgwLC0yNSxzLl9zY2FsZSguOCxFW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdKSksRVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl1dLElbXCJTLUctVVVMRC0tXCJdPVtFW1wiR1IuSUMuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sSVtcIlMtRy1VVVMtLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl1dLElbXCJTLUctVVVTQS0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5BUkVBXCJdXSxJW1wiUy1HLVVVU0MtLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXV0sSVtcIlMtRy1VVVNDTC1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkxBUkdFIENPTU1VTklDQVRJT05TIENPTlRJTkdFTkNZIFBBQ0tBR0VcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVVU08tLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuT1BFUkFUSU9OU1wiXV0sSVtcIlMtRy1VVVNGLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkZPUldBUkRcIl1dLElbXCJTLUctVVVTTS0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5NT0JJTEUgU1VCU0NSSUJFUiBFUVVJUE1FTlRcIl1dLElbXCJTLUctVVVTTVMtXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5TTUFMTCBFWFRFTlNJT04gTk9ERVwiXV0sSVtcIlMtRy1VVVNNTC1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkxBUkdFIEVYVEVOU0lPTiBOT0RFXCJdXSxJW1wiUy1HLVVVU01OLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuTk9ERSBDRU5UUkVcIl1dLElbXCJTLUctVVVTUi0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5JQy5SQURJT1wiXV0sSVtcIlMtRy1VVVNSUy1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLkkuRkYuU0FURUxMSVRFXCJdXSxJW1wiUy1HLVVVU1JULVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdXSxJW1wiUy1HLVVVU1JXLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuSUMuUkFESU8gUkVMQVlcIl1dLElbXCJTLUctVVVTUy0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5TSUdOQUwgU1VQUE9SVFwiXV0sSVtcIlMtRy1VVVNXLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLklDLlRFTEVQSE9ORSBTV0lUQ0hcIl1dLElbXCJTLUctVVVTWC0tXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBSQU5HSU5HXCJdXSxJW1wiUy1HLVVVSS0tLVwiXT1bRVtcIkdSLklDLklORk9STUFUSU9OIE9QRVJBVElPTlNcIl1dLElbXCJTLUctVVVQLS0tXCJdPUlbXCJTLUctVVVYLS0tXCJdPVtFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXSxFW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVRS0tLVwiXT1bRVtcIkdSLklDLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXV0sSVtcIlMtRy1VVVQtLS1cIl09W0VbXCJHUi5JQy5UT1BPR1JBUEhJQ1wiXV0sSVtcIlMtRy1VVUQtLS1cIl09W0VbXCJHUi5JQy5EUklMTElOR1wiXV0sSVtcIlMtRy1VUy0tLS1cIl09W0VbXCJHUi5JQy5DT01CQVQgU0VSVklDRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQS0tLVwiXT1bRVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdXSxJW1wiUy1HLVVTQVQtLVwiXT1bRVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBQy0tXCJdPVtFW1wiR1IuSUMuQURNSU5JU1RSQVRJVkVcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBSi0tXCJdPVtFW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXV0sSVtcIlMtRy1VU0FKVC1cIl09W0VbXCJHUi5JQy5KVURHRSBBRFZPQ0FURSBHRU5FUkFMXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBSkMtXCJdPVtFW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FPLS1cIl09W0VbXCJHUi5JQy5QT1NUQUxcIl1dLElbXCJTLUctVVNBT1QtXCJdPVtFW1wiR1IuSUMuUE9TVEFMXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBT0MtXCJdPVtFW1wiR1IuSUMuUE9TVEFMXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQUYtLVwiXT1bRVtcIkdSLklDLkZJTkFOQ0VcIl1dLElbXCJTLUctVVNBRlQtXCJdPVtFW1wiR1IuSUMuRklOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQUZDLVwiXT1bRVtcIkdSLklDLkZJTkFOQ0VcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUy0tXCJdPVtFW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdXSxJW1wiUy1HLVVTQVNULVwiXT1bRVtcIkdSLklDLlBFUlNPTk5FTCBTRVJWSUNFU1wiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVNDLVwiXT1bRVtcIkdSLklDLlBFUlNPTk5FTCBTRVJWSUNFU1wiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FNLS1cIl09W0VbXCJHUi5JQy5NT1JUVUFSWSBBRkZBSVJTXCJdXSxJW1wiUy1HLVVTQU1ULVwiXT1bRVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FNQy1cIl09W0VbXCJHUi5JQy5NT1JUVUFSWSBBRkZBSVJTXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVItLVwiXT1bRVtcIkdSLklDLlJFTElHSU9VUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVJULVwiXT1bRVtcIkdSLklDLlJFTElHSU9VUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUkMtXCJdPVtFW1wiR1IuSUMuUkVMSUdJT1VTIFNVUFBPUlRcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUC0tXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlNcIl1dLElbXCJTLUctVVNBUFQtXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlNcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQQy1cIl09W0VbXCJHUi5JQy5QVUJMSUMgQUZGQUlSU1wiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQQi1cIl09W0VbXCJHUi5JQy5QVUJMSUMgQUZGQUlSUyBCUk9BRENBU1RcIl1dLElbXCJTLUctVVNBUEJUXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUEJDXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVBNLVwiXT1bRVtcIkdSLklDLkpPSU5UIElORk9STUFUSU9OIEJVUkVBVVwiXV0sSVtcIlMtRy1VU0FQTVRcIl09W0VbXCJHUi5JQy5KT0lOVCBJTkZPUk1BVElPTiBCVVJFQVVcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQTUNcIl09W0VbXCJHUi5JQy5KT0lOVCBJTkZPUk1BVElPTiBCVVJFQVVcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBWC0tXCJdPVtFW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdXSxJW1wiUy1HLVVTQVhULVwiXT1bRVtcIkdSLklDLlJFUExBQ0VNRU5UIEhPTERJTkcgVU5JVFwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVhDLVwiXT1bRVtcIkdSLklDLlJFUExBQ0VNRU5UIEhPTERJTkcgVU5JVFwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FMLS1cIl09W0VbXCJHUi5JQy5MQUJPVVJcIl1dLElbXCJTLUctVVNBTFQtXCJdPVtFW1wiR1IuSUMuTEFCT1VSXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBTEMtXCJdPVtFW1wiR1IuSUMuTEFCT1VSXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVctLVwiXT1bRVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl1dLElbXCJTLUctVVNBV1QtXCJdPVtFW1wiR1IuSUMuTU9SQUxFLCBXRUxGQVJFLCBBTkQgUkVDUkVBVElPTlwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVdDLVwiXT1bRVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUS0tXCJdPVtFW1wiR1IuSUMuUVVBUlRFUk1BU1RFUlwiXV0sSVtcIlMtRy1VU0FRVC1cIl09W0VbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUUMtXCJdPVtFW1wiR1IuSUMuUVVBUlRFUk1BU1RFUlwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU00tLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMXCJdXSxJW1wiUy1HLVVTTVQtLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVEhFQVRFUlwiXV0sSVtcIlMtRy1VU01DLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIENPUlBTXCJdXSxJW1wiUy1HLVVTTU0tLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUxcIl0sRVtcIkdSLklDLkZGLk1FRElDQUwgVFJFQVRNRU5UIEZBQ0lMSVRZXCJdXSxJW1wiUy1HLVVTTU1ULVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJTLUctVVNNTUMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJTLUctVVNNVi0tXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTFwiXSxFW1wiR1IuTTIuVkVURVJJTkFSWVwiXV0sSVtcIlMtRy1VU01WVC1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIFRIRUFURVJcIl0sRVtcIkdSLk0yLlZFVEVSSU5BUllcIl1dLElbXCJTLUctVVNNVkMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuTTIuVkVURVJJTkFSWVwiXV0sSVtcIlMtRy1VU01ELS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMXCJdLEVbXCJHUi5NMi5ERU5UQUxcIl1dLElbXCJTLUctVVNNRFQtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBUSEVBVEVSXCJdLEVbXCJHUi5NMi5ERU5UQUxcIl1dLElbXCJTLUctVVNNREMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuTTIuREVOVEFMXCJdXSxJW1wiUy1HLVVTTVAtLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUxcIl0sRVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLElbXCJTLUctVVNNUFQtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBUSEVBVEVSXCJdLEVbXCJHUi5NMi5QU1lDSE9MT0dJQ0FMXCJdXSxJW1wiUy1HLVVTTVBDLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgQ09SUFNcIl0sRVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLElbXCJTLUctVVNTLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdXSxJW1wiUy1HLVVTU1QtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdXSxJW1wiUy1HLVVTU0MtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXV0sSVtcIlMtRy1VU1MxLS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElcIl1dLElbXCJTLUctVVNTMVQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElcIl1dLElbXCJTLUctVVNTMUMtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJXCJdXSxJW1wiUy1HLVVTUzItLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl1dLElbXCJTLUctVVNTMlQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJXCJdXSxJW1wiUy1HLVVTUzJDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl1dLElbXCJTLUctVVNTMy0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJSUlcIl1dLElbXCJTLUctVVNTM1QtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1VU1MzQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1VU1MzQS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXSxzLl90cmFuc2xhdGUoMjUsNSxzLl9zY2FsZSguNSxFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0pKV0sSVtcIlMtRy1VU1MzQVRcIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdLHMuX3RyYW5zbGF0ZSgyNSw1LHMuX3NjYWxlKC41LEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSkpXSxJW1wiUy1HLVVTUzNBQ1wiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdLHMuX3RyYW5zbGF0ZSgyNSw1LHMuX3NjYWxlKC41LEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSkpXSxJW1wiUy1HLVVTUzQtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl1dLElbXCJTLUctVVNTNFQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElWXCJdXSxJW1wiUy1HLVVTUzRDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl1dLElbXCJTLUctVVNTNS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJW1wiUy1HLVVTUzVULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJW1wiUy1HLVVTUzVDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVlwiXV0sSVtcIlMtRy1VU1M2LS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFZJXCJdXSxJW1wiUy1HLVVTUzZULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSVwiXV0sSVtcIlMtRy1VU1M2Qy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFZJXCJdXSxJW1wiUy1HLVVTUzctLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVklJXCJdXSxJW1wiUy1HLVVTUzdULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl1dLElbXCJTLUctVVNTN0MtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl1dLElbXCJTLUctVVNTOC0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdXSxJW1wiUy1HLVVTUzhULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdXSxJW1wiUy1HLVVTUzhDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVklJSVwiXV0sSVtcIlMtRy1VU1M5LS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElYXCJdXSxJW1wiUy1HLVVTUzlULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJWFwiXV0sSVtcIlMtRy1VU1M5Qy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElYXCJdXSxJW1wiUy1HLVVTU1gtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVtcIlMtRy1VU1NYVC1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVtcIlMtRy1VU1NYQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFhcIl1dLElbXCJTLUctVVNTTC0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5MQVVORFJZL0JBVEhcIl1dLElbXCJTLUctVVNTTFQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXV0sSVtcIlMtRy1VU1NMQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXV0sSVtcIlMtRy1VU1NXLS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLVVTU1dULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5XQVRFUlwiXV0sSVtcIlMtRy1VU1NXQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLVVTU1dQLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuV0FURVIgUFVSSUZJQ0FUSU9OXCJdXSxJW1wiUy1HLVVTU1dQVFwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLElbXCJTLUctVVNTV1BDXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLElbXCJTLUctVVNULS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbXCJTLUctVVNUVC0tXCJdPVtFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXV0sSVtcIlMtRy1VU1RDLS1cIl09W0VbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXV0sSVtcIlMtRy1VU1RNLS1cIl09W0VbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl1dLElbXCJTLUctVVNUTVQtXCJdPVtFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl1dLElbXCJTLUctVVNUTUMtXCJdPVtFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1PVkVNRU5UIENPTlRST0wgQ0VOVFJFXCJdXSxJW1wiUy1HLVVTVFItLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1RSVC1cIl09W0VbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1RSQy1cIl09W0VbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuUkFJTFJPQURcIl1dLElbXCJTLUctVVNUUy0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVTVFNULVwiXT1bRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVTVFNDLVwiXT1bRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5OQVZBTFwiXV0sSVtcIlMtRy1VU1RBLS1cIl09W0VbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuSUMuQUlSUE9SVCBPRiBERUJBUktBVElPTlwiXV0sSVtcIlMtRy1VU1RBVC1cIl09W0VbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLVVTVEFDLVwiXT1bRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLVVTVEktLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTVElULVwiXT1bRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1JU1NJTEVcIl1dLElbXCJTLUctVVNUSUMtXCJdPVtFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1JU1NJTEVcIl1dLElbXCJTLUctVVNYLS0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl1dLElbXCJTLUctVVNYVC0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU1hDLS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU1hILS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVVNYSFQtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVVNYSEMtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLk0yLkhFQVZZXCJdXSxJW1wiUy1HLVVTWFItLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1hSVC1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1hSQy1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuTTIuUkFJTFJPQURcIl1dLElbXCJTLUctVVNYTy0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLk0xLkFNTVVOSVRJT05cIl1dLElbXCJTLUctVVNYT1QtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTEuQU1NVU5JVElPTlwiXV0sSVtcIlMtRy1VU1hPQy1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuTTEuQU1NVU5JVElPTlwiXV0sSVtcIlMtRy1VU1hPTS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuTTEuTUlTU0lMRVwiXV0sSVtcIlMtRy1VU1hPTVRcIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTWE9NQ1wiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTWEUtLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMS5FTEVDVFJPLU9QVElDQUxcIl1dLElbXCJTLUctVVNYRVQtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTEuRUxFQ1RSTy1PUFRJQ0FMXCJdXSxJW1wiUy1HLVVTWEVDLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5NMS5FTEVDVFJPLU9QVElDQUxcIl1dLElbXCJTLUctVVNYQkRSXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLk0yLkJBVFRMRSBEQU1BR0UgUkVQQUlSXCJdXSxJW1wiUy1HLVVTWFBNLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMi5QUkVWRU5USVZFIE1BSU5URU5BTkNFXCJdXSxJW1wiUy1HLVVTWFAtLVwiXT1bRVtcIkdSLklDLlBJUEVMSU5FXCJdXSxJW1wiUy1HLVVTWEVQLVwiXT1bRVtcIkdSLklDLkVOVklST05NRU5UQUwgUFJPVEVDVElPTlwiXV0sSVtcIlMtRy1VSC0tLS1cIl09W10sSVtcIlMtRy1VSDEtLS1cIl09W0VbXCJHUi5JQy5GRi5IRUFEUVVBUlRFUlMgT1IgSEVBRFFVQVJURVJTIEVMRU1FTlRcIl1dLElbXCJTLUctVUgyLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5IRUFEUVVBUlRFUlMgT1IgSEVBRFFVQVJURVJTIEVMRU1FTlRcIl1dLElbXCJTLUctVUhHTC0tXCJdPUlbXCJTLUctR0wtLS0tXCJdPVtFW1wiR1IuSUMuTElBSVNPTlwiXV19fSx4PXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbY10saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRy1FLS0tLS1cIl09W10sSVtcIlMtRy1FVy0tLS1cIl09W10sSVtcIlMtRy1FV00tLS1cIl09W0VbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXTUEtLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl1dLElbXCJTLUctRVdNQVMtXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdNQVNSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl0sRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVExBUlwiXV0sSVtcIlMtRy1FV01BU0VcIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEVbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVtcIlMtRy1FV01BSS1cIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbXCJTLUctRVdNQUlSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdLEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl1dLElbXCJTLUctRVdNQUlFXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdLEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdXSxJW1wiUy1HLUVXTUFMLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdNQUxSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJW1wiUy1HLUVXTUFMRVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0sRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEVMQVJcIl1dLElbXCJTLUctRVdNQVQtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjcsRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0pKSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUSEVBVFJFXCJdXSxJW1wiUy1HLUVXTUFUUlwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC43LEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdKSksRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEhFQVRSRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJW1wiUy1HLUVXTUFURVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC43LEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdKSksRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEhFQVRSRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVtcIlMtRy1FV01TLS1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVtcIlMtRy1FV01TUy1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdNU0ktXCJdPVtFW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV01TTC1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV01ULS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXTVRMLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXTVRNLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV01USC1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJW1wiUy1HLUVXUy0tLVwiXT1bRVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl1dLElbXCJTLUctRVdTTC0tXCJdPVtFW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdTTS0tXCJdPVtFW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXU0gtLVwiXT1bRVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdYLS0tXCJdPVtFW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXWEwtLVwiXT1bRVtcIkdSLkVRLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxzLl90cmFuc2xhdGUoMCwxMCxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl0pXSxJW1wiUy1HLUVXWE0tLVwiXT1bRVtcIkdSLkVRLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxzLl90cmFuc2xhdGUoMCwxMCxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdKV0sSVtcIlMtRy1FV1hILS1cIl09W0VbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJW1wiUy1HLUVXVC0tLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVtcIlMtRy1FV1RMLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXVE0tLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXVEgtLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV1ItLS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXV0sSVtcIlMtRy1FV1JSLS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdSTC0tXCJdPVtFW1wiR1IuRVEuUklGTEVcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV1JILS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV1otLS1cIl09W0VbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXWkwtLVwiXT1bRVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdKV0sSVtcIlMtRy1FV1pNLS1cIl09W0VbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0pXSxJW1wiUy1HLUVXWkgtLVwiXT1bRVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJW1wiUy1HLUVXTy0tLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXV0sSVtcIlMtRy1FV09MLS1cIl09W0VbXCJHUi5FUS5NT1JUQVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXT00tLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXT0gtLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV0gtLS1cIl09W0VbXCJHUi5FUS5IT1dJVFpFUlwiXV0sSVtcIlMtRy1FV0hMLS1cIl09W0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdITFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdITS0tXCJdPVtFW1wiR1IuRVEuSE9XSVRaRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV0hNUy1cIl09W3MuX3RyYW5zbGF0ZSgwLC0xNSxzLl9zY2FsZSguOCxbRVtcIkdSLkVRLkhPV0lUWkVSXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdISC0tXCJdPVtFW1wiR1IuRVEuSE9XSVRaRVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdISFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0pKSxFW1wiR1IuRVEuSE9XSVRaRVIgVFJBQ0tFRFwiXV0sSVtcIlMtRy1FV0ctLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl1dLElbXCJTLUctRVdHTC0tXCJdPVtFW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEVbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVtcIlMtRy1FV0dNLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV0dILS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdHUi0tXCJdPVtFW1wiR1IuRVEuUkVDT0lMTEVTUyBHVU5cIl1dLElbXCJTLUctRVdELS0tXCJdPVtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdXSxJW1wiUy1HLUVXREwtLVwiXT1bRVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdETFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSkpLEVbXCJHUi5FUS5IT1dJVFpFUiBUUkFDS0VEXCJdXSxJW1wiUy1HLUVXRE0tLVwiXT1bRVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXRE1TLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC44LFtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdESC0tXCJdPVtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJW1wiUy1HLUVXREhTLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC44LFtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSkpLEVbXCJHUi5FUS5IT1dJVFpFUiBUUkFDS0VEXCJdXSxJW1wiUy1HLUVXQS0tLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXV0sSVtcIlMtRy1FV0FMLS1cIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXQU0tLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXQUgtLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FVi0tLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXV0sSVtcIlMtRy1FVkEtLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxFW1wiR1IuRVEuQVJNT1VSRUQgVkVISUNMRVwiXV0sSVtcIlMtRy1FVkFULS1cIl09W0VbXCJHUi5FUS5UQU5LXCJdXSxJW1wiUy1HLUVWQVRMLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLkxJR0hUIFRBTktcIl1dLElbXCJTLUctRVZBVExSXCJdPUlbXCJTLUctRVZBVFctXCJdPVtFW1wiR1IuRVEuVEFOS1wiXSxFW1wiR1IuRVEuTElHSFQgVEFOS1wiXSxFW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQVRNLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdXSxJW1wiUy1HLUVWQVRNUlwiXT1JW1wiUy1HLUVWQVRYLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdLEVbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbXCJTLUctRVZBVEgtXCJdPVtFW1wiR1IuRVEuVEFOS1wiXSxFW1wiR1IuRVEuSEVBVlkgVEFOS1wiXV0sSVtcIlMtRy1FVkFUSFJcIl09SVtcIlMtRy1FVkFUWS1cIl09W0VbXCJHUi5FUS5UQU5LXCJdLEVbXCJHUi5FUS5IRUFWWSBUQU5LXCJdLEVbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbXCJTLUctRVZBQS0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl1dLElbXCJTLUctRVZBQVItXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVtcIlMtRy1FVkFJLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQUMtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVtcIlMtRy1FVkFTLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUiBDT01CQVQgU0VSVklDRSBTVVBQT1JUIFZFSElDTEVcIl1dLElbXCJTLUctRVZBTC0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgRklHSFRJTkcgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXV0sSVtcIlMtRy1FVlUtLS1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl1dLElbXCJTLUctRVZVQi0tXCJdPVtFW1wiR1IuRVEuQlVTXCJdXSxJW1wiUy1HLUVWVVMtLVwiXT1bRVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXV0sSVtcIlMtRy1FVlVTTC1cIl09W0VbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBMSUdIVFwiXV0sSVtcIlMtRy1FVlVTTS1cIl09W0VbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBNRURJVU1cIl1dLElbXCJTLUctRVZVU0gtXCJdPVtFW1wiR1IuRVEuU0VNSS1UUkFJTEVSIFRSVUNLXCJdLEVbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgSEVBVllcIl1dLElbXCJTLUctRVZVTC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl1dLElbXCJTLUctRVZVWC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJW1wiUy1HLUVWVVItLVwiXT1bRVtcIkdSLkVRLldBVEVSIFZFSElDTEVcIl1dLElbXCJTLUctRVZVVC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLXCJdXSxJW1wiUy1HLUVWVVRMLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDS1wiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5MSUdIVFwiXV0sSVtcIlMtRy1FVlVUSC1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0suSEVBVllcIl1dLElbXCJTLUctRVZVQS0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbXCJTLUctRVZVQUEtXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVtcIlMtRy1FVkUtLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxzLl9zY2FsZSguNyxFW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJW1wiUy1HLUVWRUItLVwiXT1bRVtcIkdSLkVRLkJSSURHRVwiXV0sSVtcIlMtRy1FVkVFLS1cIl09W0VbXCJHUi5FUS5FQVJUSE1PVkVSXCJdXSxJW1wiUy1HLUVWRUMtLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdLHMuX3NjYWxlKC42LEVbXCJHUi5JQy5FTkdJTkVFUlwiXSldLElbXCJTLUctRVZFTS0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5NSU5FIExBWUlORyBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWRU1BLVwiXT1bRVtcIkdSLkVRLk1JTkUgQ0xFQVJJTkcgRVFVSVBNRU5UXCJdLEVbXCJHUi5FUS5UQU5LXCJdXSxJW1wiUy1HLUVWRU1WLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLEVbXCJHUi5FUS5BUk1PUkVEIENBUlJJRVIgV0lUSCBWT0xDQU5PXCJdXSxJW1wiUy1HLUVWRU1ULVwiXT1bRVtcIkdSLkVRLk1JTkUgQ0xFQVJJTkcgRVFVSVBNRU5UXCJdLHMuX3RyYW5zbGF0ZSgwLC0xMCxFW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdKV0sSVtcIlMtRy1FVkVNTC1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSxFW1wiR1IuRVEuQVJNT1JFRCBDQVJSSUVSIFdJVEggVk9MQ0FOT1wiXV0sSVtcIlMtRy1FVkVBLS1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXV0sSVtcIlMtRy1FVkVBQS1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxFW1wiR1IuRVEuVEFOS1wiXV0sSVtcIlMtRy1FVkVBVC1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxzLl90cmFuc2xhdGUoMCwtMTAsRVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSldLElbXCJTLUctRVZFTVNNXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLk1JTkUgU0NBVFRFUkFCTEVcIl1dLElbXCJTLUctRVZFRC0tXCJdPVtFW1wiR1IuRVEuRE9aRVJcIl1dLElbXCJTLUctRVZFREEtXCJdPVtFW1wiR1IuRVEuRE9aRVIgQVJNT1JFRFwiXV0sSVtcIlMtRy1FVkVTLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxzLl9zY2FsZSguNixFW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJW1wiUy1HLUVWRVItLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLHMuX3NjYWxlKC42LEVbXCJHUi5JQy5FTkdJTkVFUlwiXSksRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSIEVOR0lORUVSIFJFQ09OIFZFSElDTEVcIl1dLElbXCJTLUctRVZFSC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBCQUNLSE9FXCJdXSxJW1wiUy1HLUVWRUYtLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIEZFUlJZIFRSQU5TUE9SVEVSXCJdXSxJW1wiUy1HLUVWRC0tLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXSxzLl9zY2FsZSguNyxFW1wiR1IuSUMuRFJJTExJTkdcIl0pXSxJW1wiUy1HLUVWVC0tLVwiXT1bRVtcIkdSLkVRLlRSQUlOIExPQ09NT1RJVkVcIl1dLElbXCJTLUctRVZDLS0tXCJdPVtFW1wiR1IuSS5DSVZJTElBTlwiXV0sSVtcIlMtRy1FVkNBLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl1dLElbXCJTLUctRVZDQUwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJW1wiUy1HLUVWQ0FNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbXCJTLUctRVZDQUgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ08tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl1dLElbXCJTLUctRVZDT0wtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXV0sSVtcIlMtRy1FVkNPTS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNPSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ00tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl1dLElbXCJTLUctRVZDTUwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXV0sSVtcIlMtRy1FVkNNTS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNNSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ1UtLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQ1VMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJW1wiUy1HLUVWQ1VNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNVSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVtcIlMtRy1FVkNKLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQ0pMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSkVFUCBUWVBFIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl1dLElbXCJTLUctRVZDSk0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbXCJTLUctRVZDSkgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVtcIlMtRy1FVkNULS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWQ1RMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDVE0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDVEgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVtcIlMtRy1FVkNGLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDRkwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWQ0ZNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDRkgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWTS0tLVwiXT1bRVtcIkdSLkVRLlBBQ0sgQU5JTUFMXCJdXSxJW1wiUy1HLUVWUy0tLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFNVUFBPUlRcIl1dLElbXCJTLUctRVZTVC0tXCJdPVI/W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxFW1wiR1IuRVEuTUlTU0lMRSBUUkFOU0xPQURFUlwiXV06W0VbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdXSxJW1wiUy1HLUVWU1ItLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFRSQU5TUE9SVEVSXCJdXSxJW1wiUy1HLUVWU0MtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIENSQU5FL0xPQURJTkcgREVWSUNFXCJdXSxJW1wiUy1HLUVWU1AtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFBST1BFTExBTlQgVFJBTlNQT1JURVJcIl1dLElbXCJTLUctRVZTVy0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sRVtcIkdSLkVRLk1JU1NJTEUgV0FSSEVBRCBUUkFOU1BPUlRFUlwiXV0sSVtcIlMtRy1FUy0tLS1cIl09W0VbXCJHUi5FUS5TRU5TT1JcIl1dLElbXCJTLUctRVNSLS0tXCJdPVtFW1wiR1IuRVEuUkFEQVJcIl1dLElbXCJTLUctRVNFLS0tXCJdPVtFW1wiR1IuRVEuU0VOU09SIEVNUExBQ0VEXCJdXSxJW1wiUy1HLUVYSS0tLVwiXT1bRVtcIkdSLkVRLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRVwiXV0sSVtcIlMtRy1FWC0tLS1cIl09W10sSVtcIlMtRy1FWEwtLS1cIl09W0VbXCJHUi5FUS5MQVNFUlwiXV0sSVtcIlMtRy1FWE4tLS1cIl09W0VbXCJHUi5FUS5DQlJOIEVRVUlQTUVOVFwiXV0sSVtcIlMtRy1FWEYtLS1cIl09W0VbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJW1wiUy1HLUVYTS0tLVwiXT1bRVtcIkdSLkVRLkxBTkQgTUlORVNcIl1dLElbXCJTLUctRVhNQy0tXCJdPVtFW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkVcIl1dLElbXCJTLUctRVhNTC0tXCJdPVtFW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkUgTEVTUyBUSEFOIExFVEhBTFwiXV07dmFyIGU9e1wiRS0tLS0tXCI6MCxcIkVXTS0tLVwiOjE0MCxcIkVXTUEtLVwiOjE0MCxcIkVXTUFTLVwiOjE0MCxFV01BU1I6MTQwLEVXTUFTRToxNDAsXCJFV01BSS1cIjoxNDAsRVdNQUlSOjE0MCxFV01BSUU6MTQwLFwiRVdNQUwtXCI6MTQwLEVXTUFMUjoxNDAsRVdNQUxFOjE0MCxcIkVXTUFULVwiOjE1MyxFV01BVFI6MTUzLEVXTUFURToxNTMsXCJFV01TLS1cIjoxNDAsXCJFV01TUy1cIjoxNDAsXCJFV01TSS1cIjoxNDAsXCJFV01TTC1cIjoxNDAsXCJFV01ULS1cIjoxNDAsXCJFV01UTC1cIjoxNDAsXCJFV01UTS1cIjoxNDAsXCJFV01USC1cIjoxNDAsXCJFV1MtLS1cIjoxNDAsXCJFV1NMLS1cIjoxNDAsXCJFV1NNLS1cIjoxNDAsXCJFV1NILS1cIjoxNDAsXCJFV1gtLS1cIjoxNDAsXCJFV1hMLS1cIjoxNDAsXCJFV1hNLS1cIjoxNDAsXCJFV1hILS1cIjoxNDAsXCJFV1QtLS1cIjoxNDAsXCJFV1RMLS1cIjoxNDAsXCJFV1RNLS1cIjoxNDAsXCJFV1RILS1cIjoxNDAsXCJFV1ItLS1cIjoxNDAsXCJFV1JMLS1cIjoxNDAsXCJFV1JNLS1cIjoxNDAsXCJFV1JILS1cIjoxNDAsXCJFV1otLS1cIjoxNDAsXCJFV1pMLS1cIjoxNDAsXCJFV1pNLS1cIjoxNDAsXCJFV1pILS1cIjoxNDAsXCJFV08tLS1cIjoxNDAsXCJFV09MLS1cIjoxNDAsXCJFV09NLS1cIjoxNDAsXCJFV09ILS1cIjoxNDAsXCJFV0gtLS1cIjoxNDAsXCJFV0hMLS1cIjoxNDAsXCJFV0hMUy1cIjoxMzAsXCJFV0hNLS1cIjoxNDAsXCJFV0hNUy1cIjoxMzAsXCJFV0hILS1cIjoxNDAsXCJFV0hIUy1cIjoxMzAsXCJFV0ctLS1cIjoxNDAsXCJFV0dMLS1cIjoxNDAsXCJFV0dNLS1cIjoxNDAsXCJFV0dILS1cIjoxNDAsXCJFV0dSLS1cIjoxNDAsXCJFV0QtLS1cIjoxNDAsXCJFV0RMLS1cIjoxNDAsXCJFV0RMUy1cIjoxMzAsXCJFV0RNLS1cIjoxNDAsXCJFV0RNUy1cIjoxMzAsXCJFV0RILS1cIjoxNDAsXCJFV0RIUy1cIjoxMzAsXCJFV0EtLS1cIjoxNDAsXCJFV0FMLS1cIjoxNDAsXCJFV0FNLS1cIjoxNDAsXCJFV0FILS1cIjoxNDAsXCJFVi0tLS1cIjoxMjksXCJFVkEtLS1cIjoxMjksXCJFVkFULS1cIjoxMzAsXCJFVkFUTC1cIjoxMzAsRVZBVExSOjEzMCxcIkVWQVRNLVwiOjEzMCxFVkFUTVI6MTMwLFwiRVZBVEgtXCI6MTMwLEVWQVRIUjoxMzAsXCJFVkFBLS1cIjoxMzAsXCJFVkFBUi1cIjoxMzAsXCJFVkFJLS1cIjoxMzAsXCJFVkFDLS1cIjoxMzAsXCJFVkFTLS1cIjoxMzAsXCJFVkFMLS1cIjoxNDAsXCJFVlUtLS1cIjoxMzAsXCJFVkFCLS1cIjoxMzAsXCJFVlVTLS1cIjoxNDAsXCJFVlVTTC1cIjoxNDAsXCJFVlVTTS1cIjoxNDAsXCJFVlVTSC1cIjoxNDAsXCJFVlVMLS1cIjoxNDAsXCJFVlVYLS1cIjoxNDAsXCJFVlVSLS1cIjoxMzAsXCJFVlVUTC1cIjoxMzAsXCJFVlVUSC1cIjoxMzAsXCJFVlVBLS1cIjoxMzAsXCJFVlVBQS1cIjoxMzAsXCJFVkUtLS1cIjoxMjksXCJFVkVCLS1cIjoxMzAsXCJFVkVFLS1cIjoxMzAsXCJFVkVDLS1cIjoxNDAsXCJFVkVNLS1cIjoxMzAsXCJFVkVNQS1cIjoxMzAsXCJFVkVNVi1cIjoxMzAsXCJFVkVNVC1cIjoxMzAsXCJFVkVNTC1cIjoxNDAsXCJFVkVBLS1cIjoxMjAsXCJFVkVBQS1cIjoxMzAsXCJFVkVBVC1cIjoxMzAsRVZFTVNNOjEzMCxcIkVWRUQtLVwiOjEzMCxcIkVWRURBLVwiOjEzMCxcIkVWRVMtLVwiOjEzMCxcIkVWRVItLVwiOjEzMCxcIkVWRUgtLVwiOjE0MCxcIkVWRUYtLVwiOjE0MCxcIkVWRC0tLVwiOjE0MCxcIkVWVC0tXCI6MTMwLFwiRVZDLS0tXCI6MTE5LFwiRVZDQS0tXCI6MTMyLjUsXCJFVkNBTC1cIjoxMzIuNSxcIkVWQ0FNLVwiOjEzMi41LFwiRVZDQUgtXCI6MTMyLjUsXCJFVkNPLS1cIjoxMzIuNSxcIkVWQ09MLVwiOjEzMi41LFwiRVZDT00tXCI6MTMyLjUsXCJFVkNPSC1cIjoxMzIuNSxcIkVWQ00tLVwiOjEzMi41LFwiRVZDTUwtXCI6MTMyLjUsXCJFVkNNTS1cIjoxMzIuNSxcIkVWQ01ILVwiOjEzMi41LFwiRVZDVS0tXCI6MTMyLjUsXCJFVkNVTC1cIjoxMzIuNSxcIkVWQ1VNLVwiOjEzMi41LFwiRVZDVUgtXCI6MTMyLjUsXCJFVkNKLS1cIjoxMzIuNSxcIkVWQ0pMLVwiOjEzMi41LFwiRVZDSk0tXCI6MTMyLjUsXCJFVkNKSC1cIjoxMzIuNSxcIkVWQ1QtLVwiOjEzMi41LFwiRVZDVEwtXCI6MTMyLjUsXCJFVkNUTS1cIjoxMzIuNSxcIkVWQ1RILVwiOjEzMi41LFwiRVZDRi0tXCI6MTMyLjUsXCJFVkNGTC1cIjoxMzIuNSxcIkVWQ0ZNLVwiOjEzMi41LFwiRVZDRkgtXCI6MTMyLjUsXCJFVk0tLS1cIjoxMjUsXCJFVlMtLS1cIjoxMjksXCJFVlNULS1cIjoxMjksXCJFVlNSLS1cIjoxMjksXCJFVlNDLS1cIjoxMjksXCJFVlNQLS1cIjoxMjksXCJFVlNXLS1cIjoxMjksXCJFUy0tLS1cIjoxNDAsXCJFU1ItLS1cIjoxMjAsXCJFU0UtLS1cIjoxMzYsXCJFWEktLS1cIjoxMTksXCJFWEwtLS1cIjoxNDUsXCJFWE4tLS1cIjoxNDAsXCJFWEYtLS1cIjoxMzUsXCJFWE0tLS1cIjoxMzAsXCJFWE1DLS1cIjoxMjIsXCJFWE1MLS1cIjoxMjJ9O2Zvcih2YXIgQSBpbiBlKWUuaGFzT3duUHJvcGVydHkoQSkmJih0W1wiUy1HLVwiK0FdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6ZVtBXX0pfX0sVT17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2NdLGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJTLUctSS0tLS0tXCJdPVtdLElbXCJTLUctSVItLS0tXCJdPVtFW1wiR1IuSU4uSUMuUkFXIE1BVEVSSUFMIFBST0RVQ1RJT04vU1RPUkFHRVwiXV0sSVtcIlMtRy1JUk0tLS1cIl09W0VbXCJHUi5JTi5JQy5NSU5FXCJdXSxJW1wiUy1HLUlSUC0tLVwiXT1bRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1JUk4tLS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdXSxJW1wiUy1HLUlSTkItLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLElbXCJTLUctSVJOQy0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLElbXCJTLUctSVJOTi0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuTlVDTEVBUlwiXV0sSVtcIlMtRy1JUC0tLS1cIl09W0VbXCJHUi5JTi5JQy5QUk9DRVNTSU5HIEZBQ0lMSVRZXCJdXSxJW1wiUy1HLUlQRC0tLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sSVtcIlMtRy1JRS0tLS1cIl09W0VbXCJHUi5JQy5FUVVJUE1FTlQgTUFOVUZBQ1RVUkVcIl1dLElbXCJTLUctSVUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuVVRJTElUWSBGQUNJTElUWVwiXV0sSVtcIlMtRy1JVVItLS1cIl09W0VbXCJHUi5JTi5JQy5SRVNFQVJDSFwiXV0sSVtcIlMtRy1JVVQtLS1cIl09W0VbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlNcIl1dLElbXCJTLUctSVVFLS0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl1dLElbXCJTLUctSVVFTi0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl1dLElbXCJTLUctSVVFRC0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIERBTVwiXV0sSVtcIlMtRy1JVUVGLS1cIl09W0VbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSxFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVIgRk9TU0lMXCJdXSxJW1wiUy1HLUlVUC0tLVwiXT1bRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLUlNLS0tLVwiXT1bXSxJW1wiUy1HLUlNRi0tLVwiXT1bRVtcIkdSLklOLklDLkFUT01JQyBFTkVSR1lcIl1dLElbXCJTLUctSU1GQS0tXCJdPVtFW1wiR1IuSU4uSUMuQVRPTUlDIEVORVJHWVwiXSxFW1wiR1IuSU4uTTIuQVRPTUlDIEVORVJHWSBSRUFDVE9SXCJdXSxJW1wiUy1HLUlNRlAtLVwiXT1bRVtcIkdSLklOLklDLkFUT01JQyBFTkVSR1lcIl0sRVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVtcIlMtRy1JTUZQVy1cIl09W0VbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZIFdFQVBPTlMgR1JBREVcIl0sRVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVtcIlMtRy1JTUZTLS1cIl09W0VbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZXCJdLEVbXCJHUi5JTi5NMi5OVUNMRUFSIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbXCJTLUctSU1BLS0tXCJdPVtFW1wiR1IuSU4uSUMuQUlSQ1JBRlQgUFJPRFVDVElPTiAmIEFTU0VNQkxZXCJdXSxJW1wiUy1HLUlNRS0tLVwiXT1bRVtcIkdSLklDLkZGLkNMQVNTIFZcIl1dLElbXCJTLUctSU1HLS0tXCJdPVtFW1wiR1IuRVEuVEFOS1wiXV0sSVtcIlMtRy1JTVYtLS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXV0sSVtcIlMtRy1JTU4tLS1cIl09W0VbXCJHUi5FUS5ET1pFUlwiXV0sSVtcIlMtRy1JTU5CLS1cIl09W0VbXCJHUi5JTi5JQy5CUklER0VcIl1dLElbXCJTLUctSU1DLS0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuSU4uTTIuQ0hFTUlDQUwgJiBCSU9MT0dJQ0FMIFdBUkZBUkVcIl1dLElbXCJTLUctSU1TLS0tXCJdPVtFW1wiR1IuSUMuTkFWQUxcIl0sRVtcIkdSLklOLk0yLlNISVAgQ09OU1RSVUNUSU9OXCJdXSxJW1wiUy1HLUlNTS0tLVwiXT1bRVtcIkdSLklDLk1JU1NJTEVcIl1dLElbXCJTLUctSUctLS0tXCJdPVtFW1wiR1IuSS5HT1ZFUk5NRU5UXCJdXSxJW1wiUy1HLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLkJBU0VcIl1dLElbXCJTLUctSUJBLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl1dLElbXCJTLUctSUJOLS0tXCJdPVtFW1wiR1IuSUMuTkFWQUxcIl1dLElbXCJTLUctSVQtLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbXCJTLUctSVgtLS0tXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTFwiXV0sSVtcIlMtRy1JWEgtLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXV0sSVtcIlMtRy1JUlItLS1cIl09SVtcIlMtRy1JUlNSLS1cIl09W0VbXCJHUi5JTi5JQy5TRUEgU1VSRkFDRSBJTlNUQUxMQVRJT04sIE9JTCBSSUcvUExBVEZPUk1cIl1dfX07ZnVuY3Rpb24gZChJLHQsRSxSLGUsQSl7dmFyIEM9dC5mcmFtZSxUPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsUz10Lm51bWJlclNJREMsTj1FLmljb25Db2xvcltUXSxPPUUuaWNvbkZpbGxDb2xvcltUXSxHPUUuYmxhY2tbVF0sbz1FLndoaXRlW1RdLE09e307Zm9yKHZhciBpIGluIE1bXCJTRS5JQy5NSUxJVEFSWVwiXT1hKFwiTUlMXCIpLE1bXCJTRS5JQy5NQU5VQUwgVFJBQ0tcIl09YShcIk1BTlwiKSxNW1wiU0UuSUMuQ09NQkFUQU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4Ni45LDExMCBjIC0zLjYsMiAtNy4yLDMuOSAtMTAuOCw1LjkgMi4xLDIuOSA2LjcsMy45IDEwLDIuMSAyLjYsLTAuOSA0LjcsLTMuOCAzLjEsLTYuMSAtMC44LC0wLjYgLTEuNSwtMS4zIC0yLjMsLTEuOSB6IG0gMjYuMywwLjEgYyAzLjYsMiA3LjIsMy45IDEwLjgsNS45IC0yLjEsMi45IC02LjcsMy45IC0xMCwyLjEgLTIuNiwtMC45IC00LjcsLTMuOCAtMy4xLC02LjEgMC44LC0wLjYgMS41LC0xLjMgMi4zLC0xLjkgelwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMi45LDExMCBjIC01LjYsLTQgLTExLjMsLTcuOSAtMTYuMSwtMTIuNSAtNC4yLC00LjUgLTcsLTkuOCAtOS4yLC0xNS4xIC0wLjgsNC40IC0wLjksOS4zIDIuNCwxMy4yIDMuNiw0LjUgOC42LDguMSAxMy41LDExLjggMi4zLDEuNyA0LjcsMy4zIDcuMSw0LjggMC44LC0wLjcgMS41LC0xLjUgMi4zLC0yLjIgbSAtMjUuNywwIGMgNS42LC00IDExLjMsLTcuOSAxNi4xLC0xMi41IDQuMiwtNC41IDcsLTkuOCA5LjIsLTE1LjEgMC44LDQuNCAwLjksOS4zIC0yLjQsMTMuMiAtMy42LDQuNSAtOC42LDguMSAtMTMuNSwxMS44IC0yLjMsMS43IC00LjcsMy4zIC03LjEsNC44IC0wLjgsLTAuNyAtMS41LC0xLjUgLTIuMywtMi4yXCIsZmlsbDpvLHN0cm9rZXdpZHRoOjJ9XSxNW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMCwxMjAgLTI1LC0xNyAxNSwyIDAsLTEwIDUsMCAwLC01IC0xNSwwIDAsLTUgMTUsMCAwLC01IDEwLDAgMCw1IDE1LDAgMCw1IC0xNSwwIDAsNSA1LDAgMCwxMCAxNSwtMiB6XCJ9LE1bXCJTRS5JQy5DQVJSSUVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEwMCAyMCwyMCAyMCwtMjAgLTIwLDAgMCwtMjAgLTIwLDAgelwifSxNW1wiU0UuSUMuQkFUVExFU0hJUFwiXT1hKFwiQkJcIiksTVtcIlNFLklDLkNJVklMSUFOXCJdPWEoXCJDSVZcIiksTVtcIlNFLklDLkNJVklMSUFOXCJdLmZpbGw9Unx8Uz9POiFDJiZPLE1bXCJTRS5JQy5DSVZJTElBTlwiXS5zdHJva2U9RyxNW1wiU0UuSUMuQ0lWSUxJQU5cIl0uc3Ryb2tld2lkdGg9MyxNW1wiU0UuSUMuQ1JVSVNFUlwiXT1hKFwiQ0NcIiksTVtcIlNFLklDLkNSVUlTRVIsIEdVSURFRCBNSVNTSUxFXCJdPWEoXCJDR1wiKSxNW1wiU0UuSUMuREVTVFJPWUVSXCJdPWEoXCJERFwiKSxNW1wiU0UuSUMuRlJJR0FURVwiXT1hKFwiRkZcIiksTVtcIlNFLklDLkNPUlZFVFRFXCJdPWEoXCJGU1wiKSxNW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl09YShcIkxMXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIFdBUkZBUkUgU0hJUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTIwIDIwLDAgbSAtMjAsMCAtMjAsLTIwIDEwLDAgMCwtMjAgMjAsMCAwLDIwIDEwLDAgelwifSxNW1wiU0UuSUMuQU1QSElCSU9VUyBGT1JDRSBGTEFHU0hJUFwiXT1hKFwiTENDXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFRcIl09YShcIkxBXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgR0VORVJBTFwiXT1hKFwiTEhBXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgTVVMVEktUFVSUE9TRVwiXT1hKFwiTEhEXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIFRSQU5TUE9SVCwgRE9DS1wiXT1hKFwiTFBEXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgSEVMSUNPUFRFUlwiXT1hKFwiTFBIXCIpLE1bXCJTRS5JQy5MQU5ESU5HIFNISVBcIl09YShcIkxTXCIpLE1bXCJTRS5JQy5MQU5ESU5HIENSQUZUXCJdPWEoXCJMQ1wiKSxNW1wiU0UuSUMuTUlORSBXQVJGQVJFIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OC4zLDgxIDAsNC4xIGMgLTIuNCwwLjMgLTQuNiwxLjQgLTYuNCwyLjkgbCAtMy41LC0zLjUgLTIuNCwyLjQgMy42LDMuNiBjIC0wLjksMS4zIC0xLjUsNC45IC0xLjgsNi41IGwgLTEwLjgsMCAwLDMgMywwIDIwLDIwIDIwLC0yMCAzLDAgMCwtMyAtMTAsMCBjIC0xLC0xLjcgLTIsLTUuMyAtMywtNi43IGwgNCwtMy43IC0yLC0yLjQgLTQsMy42IGMgLTIsLTEuNCAtNCwtMi40IC02LC0yLjcgbCAwLC00LjEgelwifSxNW1wiU0UuSUMuTUlORUxBWUVSXCJdPWEoXCJNTFwiKSxNW1wiU0UuSUMuTUlORVNXRUVQRVJcIl09YShcIk1TXCIpLE1bXCJTRS5JQy5NSU5FU1dFRVBFUiwgRFJPTkVcIl09YShcIk1TRFwiKSxNW1wiU0UuSUMuTUlORUhVTlRFUlwiXT1hKFwiTUhcIiksTVtcIlNFLklDLk1JTkUgQ09VTlRFUiBNRUFTVVJFIFNVUFBPUlQgU0hJUFwiXT1hKFI/XCJNQVwiOlwiTUNTXCIpLE1bXCJTRS5JQy5NSU5FIENPVU5URVJNRUFTVVJFU1wiXT1hKFwiTUNNXCIpLE1bXCJTRS5JQy5TRUEgU1VSRkFDRSBERUNPWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDUsMTEwIDkwLDk1IDEwNSw4MCB6IE0gODUsMTEwIDcwLDk1IDg1LDgwIHogbSA0MCwtMzAgLTE1LDE1IDE1LDE1IHogbSAtNTUsNDAgMCwtNSA1NSwwIDAsNSB6XCJ9LE1bXCJTRS5JQy5QQVRST0xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTAwIDIwLDIwIDIwLC0yMCAtMTAsMCAwLC0yMCAtMjAsMCAwLDIwIHpcIn0sTVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXT1hKFwiUENcIiksTVtcIlNFLklDLlBBVFJPTCBBTlRJIFNVQk1BUklORSBXQVJGQVJFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMjAgLTI1LC0yNSA1LC01IDEwLDEwIDUsMCAwLC0yMCAxMCwwIDAsMjAgNSwwIDEwLC0xMCA1LDUgelwifSxNW1wiU0UuSUMuUEFUUk9MIEFOVElTSElQIE1JU1NJTEVcIl09YShcIlBNXCIpLE1bXCJTRS5JQy5QQVRST0wgVE9SUEVET1wiXT1hKFwiUFRcIiksTVtcIlNFLklDLlBBVFJPTCBHVU5cIl09YShcIlBHXCIpLE1bXCJTRS5JQy5QQVRST0wgU0hJUFwiXT1bXSxNW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FUXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjAsMTIwIC00MCwwIC0xNSwtMjUgMTUsMCA1LC0xNSAxMCwwIC01LDE1IDQ1LDAgelwifSxNW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FULCBSSUdJRC1IVUxMIElORkxBVEFCTEUgQk9BVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDg1IDgwIEwgODAgOTUgTCA2NSA5NSBMIDgwIDEyMCBMIDEyMCAxMjAgTCAxMzUgOTUgTCA5MCA5NSBMIDk1IDgwIEwgODUgODAgeiBNIDg3IDEwMC43IEwgOTMuMSAxMDAuNyBDIDk0LjYgMTAwLjcgOTUuNyAxMDAuOCA5Ni40IDEwMS4xIEMgOTcuMSAxMDEuMyA5Ny43IDEwMS44IDk4LjEgMTAyLjQgQyA5OC41IDEwMy4xIDk4LjcgMTAzLjggOTguNyAxMDQuNyBDIDk4LjcgMTA1LjggOTguNCAxMDYuNyA5Ny44IDEwNy40IEMgOTcuMSAxMDguMSA5Ni4yIDEwOC41IDk0LjkgMTA4LjcgQyA5NS42IDEwOS4xIDk2LjEgMTA5LjQgOTYuNSAxMDkuOSBDIDk2LjkgMTEwLjMgOTcuNCAxMTEuMSA5OC4xIDExMi4yIEwgOTkuOSAxMTUgTCA5Ni40IDExNSBMIDk0LjMgMTExLjkgQyA5My42IDExMC44IDkzLjEgMTEwLjEgOTIuOCAxMDkuOCBDIDkyLjUgMTA5LjUgOTIuMiAxMDkuMyA5MS45IDEwOS4yIEMgOTEuNiAxMDkuMSA5MS4yIDEwOSA5MC41IDEwOSBMIDg5LjkgMTA5IEwgODkuOSAxMTUgTCA4NyAxMTUgTCA4NyAxMDAuNyB6IE0gMTAxLjUgMTAwLjcgTCAxMDcuMiAxMDAuNyBDIDEwOC4zIDEwMC43IDEwOS4yIDEwMC43IDEwOS43IDEwMC44IEMgMTEwLjMgMTAwLjkgMTEwLjggMTAxLjEgMTExLjIgMTAxLjQgQyAxMTEuNyAxMDEuNyAxMTIgMTAyLjEgMTEyLjMgMTAyLjYgQyAxMTIuNiAxMDMuMSAxMTIuNyAxMDMuNyAxMTIuOCAxMDQuMyBDIDExMi43IDEwNSAxMTIuNiAxMDUuNiAxMTIuMiAxMDYuMSBDIDExMS45IDEwNi43IDExMS40IDEwNy4xIDExMC44IDEwNy40IEMgMTExLjYgMTA3LjcgMTEyLjMgMTA4LjEgMTEyLjggMTA4LjcgQyAxMTMuMiAxMDkuMyAxMTMuNSAxMTAgMTEzLjUgMTEwLjggQyAxMTMuNSAxMTEuNSAxMTMuMyAxMTIuMSAxMTMgMTEyLjggQyAxMTIuNyAxMTMuNCAxMTIuMyAxMTMuOCAxMTEuOCAxMTQuMiBDIDExMS4yIDExNC42IDExMC42IDExNC44IDEwOS44IDExNC45IEMgMTA5LjMgMTE1IDEwOC4yIDExNSAxMDYuMyAxMTUgTCAxMDEuNSAxMTUgTCAxMDEuNSAxMDAuNyB6IE0gMTA0LjMgMTAzLjEgTCAxMDQuMyAxMDYuNCBMIDEwNi4zIDEwNi40IEMgMTA3LjQgMTA2LjQgMTA4LjEgMTA2LjMgMTA4LjMgMTA2LjMgQyAxMDguOCAxMDYuMyAxMDkuMiAxMDYuMSAxMDkuNSAxMDUuOCBDIDEwOS44IDEwNS41IDEwOS45IDEwNS4xIDEwOS45IDEwNC43IEMgMTA5LjkgMTA0LjIgMTA5LjggMTAzLjkgMTA5LjYgMTAzLjYgQyAxMDkuMyAxMDMuMyAxMDkgMTAzLjIgMTA4LjUgMTAzLjEgQyAxMDguMiAxMDMuMSAxMDcuNCAxMDMuMSAxMDYgMTAzLjEgTCAxMDQuMyAxMDMuMSB6IE0gODkuOSAxMDMuMSBMIDg5LjkgMTA2LjggTCA5MiAxMDYuOCBDIDkzLjQgMTA2LjggOTQuMyAxMDYuNyA5NC42IDEwNi42IEMgOTUgMTA2LjQgOTUuMiAxMDYuMyA5NS40IDEwNiBDIDk1LjYgMTA1LjcgOTUuNyAxMDUuMyA5NS44IDEwNC45IEMgOTUuNyAxMDQuNCA5NS42IDEwNCA5NS4zIDEwMy43IEMgOTUuMSAxMDMuNCA5NC43IDEwMy4yIDk0LjMgMTAzLjIgQyA5NCAxMDMuMSA5My4zIDEwMy4xIDkyLjIgMTAzLjEgTCA4OS45IDEwMy4xIHogTSAxMDQuMyAxMDguOCBMIDEwNC4zIDExMi42IEwgMTA3IDExMi42IEMgMTA4LjEgMTEyLjYgMTA4LjcgMTEyLjYgMTA5IDExMi41IEMgMTA5LjQgMTEyLjQgMTA5LjggMTEyLjIgMTEwLjEgMTExLjkgQyAxMTAuMyAxMTEuNiAxMTAuNSAxMTEuMiAxMTAuNSAxMTAuNyBDIDExMC41IDExMC4zIDExMC40IDEwOS45IDExMC4yIDEwOS42IEMgMTA5LjkgMTA5LjMgMTA5LjYgMTA5LjEgMTA5LjMgMTA5IEMgMTA4LjkgMTA4LjggMTA4IDEwOC44IDEwNi43IDEwOC44IEwgMTA0LjMgMTA4LjggelwifSx7dHlwZTpcInRleHRcIixmaWxsOlI/TzohQyYmTyxzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MjAsdGV4dDpcIlJCXCJ9XSxNW1wiU0UuSUMuTUlMSVRBUlkgSkVUU0tJXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzUsMTA1IDAsMTUgLTYwLDAgLTEwLC0xNSAyMCwtMjUgMTAsMCAwLDEwIC01LDAgLTUsMTUgelwifSxNW1wiU0UuSUMuVU5NQU5ORUQgU1VSRkFDRSBXQVRFUiBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0sTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDgwIDE1LDE1IDAsMjUgTSA5MCw4MCA3NSw5NSBsIDAsMjVcIixmaWxsOiExfV0sUiYmTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXS5wdXNoKHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4MCAtMTUsMTUgMCwyNSAzMCwwIDAsLTI1IC0xNSwtMTVcIn0pLE1bXCJTRS5JQy5OQVZZIFRBU0sgRk9SQ0VcIl09W01bXCJTRS5JQy5OQVZZIFRBU0sgT1JHQU5JWkFUSU9OIFVOSVRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6Uj8xNTA6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJURlwifV0sTVtcIlNFLklDLk5BVlkgVEFTSyBHUk9VUFwiXT1bTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTpSPzE1MDoxMjAsZm9udHNpemU6MzAsdGV4dDpcIlRHXCJ9XSxNW1wiU0UuSUMuTkFWWSBUQVNLIFVOSVRcIl09W01bXCJTRS5JQy5OQVZZIFRBU0sgT1JHQU5JWkFUSU9OIFVOSVRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6Uj8xNTA6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJUVVwifV0sTVtcIlNFLklDLk5BVlkgVEFTSyBFTEVNRU5UXCJdPVtNW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OlI/MTUwOjEyMCxmb250c2l6ZTozMCx0ZXh0OlwiVEVcIn1dLE1bXCJTRS5JQy5DT05WT1lcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTE1IC0yMCwwIDAsLTM1IDgwLDAgMCwzNSAtMjAsMCAwLC0yMCAtNDAsMCB6XCJ9LE1bXCJTRS5JQy5OT05DT01CQVRBTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTAwIDAsLTIwIDQwLDAgMCwyMCAxNSwwIDAsMjAgLTcwLDAgMCwtMjAgelwifSxNW1wiU0UuSUMuQVVYSUxJQVJZIFNISVBcIl09YShSP1wiQVJcIjpcIkFBXCIpLE1bXCJTRS5JQy5BTU1VTklUSU9OIFNISVBcIl09YShcIkFFXCIpLE1bXCJTRS5JQy5TVE9SRVMgU0hJUFwiXT1hKFwiQUZcIiksTVtcIlNFLklDLkFVWElMSUFSWSBGTEFHIE9SIENPTU1BTkQgU0hJUFwiXT1hKFwiQUdGXCIpLE1bXCJTRS5JQy5JTlRFTExJR0VOQ0UgQ09MTEVDVE9SXCJdPWEoUj9cIkpJXCI6XCJBSVwiKSxNW1wiU0UuSUMuT0NFQU4gUkVTRUFSQ0ggU0hJUFwiXT1hKFwiQUdPXCIpLE1bXCJTRS5JQy5TVVJWRVkgU0hJUFwiXT1hKFwiQUdTXCIpLE1bXCJTRS5JQy5IT1NQSVRBTCBTSElQXCJdPWEoXCJBSFwiKSxNW1wiU0UuSUMuQ0FSR08gU0hJUFwiXT1hKFwiQUtcIiksTVtcIlNFLklDLkNPTUJBVCBTVVBQT1JUIFNISVAsIEZBU1RcIl09YShcIkFPRVwiKSxNW1wiU0UuSUMuT0lMRVIsIFJFUExFTklTSE1FTlRcIl09YShcIkFPXCIpLE1bXCJTRS5JQy5SRVBBSVIgU0hJUFwiXT1hKFwiQVJcIiksTVtcIlNFLklDLlNVQk1BUklORSBURU5ERVJcIl09YShcIkFTXCIpLE1bXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HXCJdPWEoUj9cIkFTXCI6XCJBVFwiKSxNW1wiU0UuSUMuU0VSVklDRSBDUkFGVCwgWUFSRCwgR0VORVJBTFwiXT1hKFI/XCJZWVwiOlwiWVRcIiksTVtcIlNFLklDLkJBUkdFLCBOT1QgU0VMRi1QUk9QRUxMRURcIl09YShcIllCXCIpLE1bXCJTRS5JQy5CQVJHRSwgU0VMRi1QUk9QRUxMRURcIl09YShcIllTXCIpLE1bXCJTRS5JQy5UVUcsIEhBUkJPVVJcIl09YShcIllUXCIpLE1bXCJTRS5JQy5MQVVOQ0hcIl09YShcIllGVFwiKSxNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3NSwxMDAgMCwtMzUgNTAsMCAwLDM1IDIwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwifSxNW1wiU0UuSUMuQ0FSR08sIEdFTkVSQUxcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJDQVwiOlwiQVwifV0sTVtcIlNFLklDLkNPTlRBSU5FUiBTSElQXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLE1bXCJTRS5JQy5EUkVER0VcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiRFwifV0sTVtcIlNFLklDLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzIsOTUgbDMwLC0yNSAwLDI1IDMwLC0yNSBNNzAsNzAgYzAsMzUgMTUsNTAgNTAsNTBcIixmaWxsOiExfSxNW1wiU0UuSUMuUk9MTCBPTi1ST0xMIE9GRlwiXT1bTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIEdFTkVSQUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOlwiMzBcIix0ZXh0OlI/XCJST1wiOlwiRVwifV0sTVtcIlNFLklDLkZFUlJZXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiRkVcIjpcIkZcIn1dLE1bXCJTRS5JQy5IRUFWWSBMSUZUXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkhcIn1dLE1bXCJTRS5JQy5IT1ZFUkNSQUZUXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gNjUsMTAwIDAsLTMwIDUsMTAgNjAsMCA1LC0xMCAwLDMwIDEwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwiOlwibSA5MCw4MCAwLDE1LjYgQyA3OC40LDk2LjkgNzAsMTAwLjYgNzAsMTA1IGMgMCw1LjUgMTMuNCwxMCAzMCwxMCAxNi42LDAgMzAsLTQuNSAzMCwtMTAgMCwtNC40IC04LjQsLTguMSAtMjAsLTkuNCBMIDExMCw4MCA5MCw4MCB6IG0gLTE1LDQwIDUwLDBcIn0sTVtcIlNFLklDLkhPVkVSQ1JBRlQgMjUyNURcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiSlwifV0sTVtcIlNFLklDLkhPVkVSQ1JBRlQgQ0lWSUxJQU5cIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IUMmJk8sZDpSP1wibSA2NSwxMDAgMCwtMzAgNSwxMCA2MCwwIDUsLTEwIDAsMzAgMTAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCI6XCJtIDkwLDgwIDAsMTUuNiBDIDc4LjQsOTYuOSA3MCwxMDAuNiA3MCwxMDUgYyAwLDUuNSAxMy40LDEwIDMwLDEwIDE2LjYsMCAzMCwtNC41IDMwLC0xMCAwLC00LjQgLTguNCwtOC4xIC0yMCwtOS40IEwgMTEwLDgwIDkwLDgwIHogbSAtMTUsNDAgNTAsMFwifSxNW1wiU0UuSUMuSE9WRVJDUkFGVCBOT05DT01CQVRBTlRcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDEwMCAwLC0zMCA1LDEwIDYwLDAgNSwtMTAgMCwzMCAxMCwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIixzdHJva2V3aWR0aDohMX0sUj97dHlwZTpcInRleHRcIixmaWxsOm8sc3Ryb2tlOiExLHg6MTAwLHk6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJOQ1wifTpbXV0sTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIExBU0ggQ0FSUklFUiAoV0lUSCBCQVJHRVMpXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkxcIn1dLE1bXCJTRS5JQy5PSUxFUi9UQU5LRVJcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJPVFwiOlwiT1wifV0sTVtcIlNFLklDLlBBU1NFTkdFUiBTSElQXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiUEFcIjpcIlBcIn1dLE1bXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HIENJVklMSUFOXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiVFVcIjpcIlRcIn1dLE1bXCJTRS5JQy5UT1dcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiVFdcIn1dLE1bXCJTRS5JQy5UUkFOU1BPUlQgU0hJUCwgSEFaQVJET1VTIE1BVEVSSUFMXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkhaXCJ9XSxNW1wiU0UuSUMuSlVOSy9ESE9XXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIlFKXCJ9XSxNW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXT1bTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIEdFTkVSQUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOjMwLHRleHQ6XCJZQlwifV0sTVtcIlNFLklDLkhPU1BJVEFMIFNISVAyXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTUsOTUgMCwtMTUgMTAsMCAwLDE1IDE1LDAgMCwxMCAtMTUsMCAwLDE1IC0xMCwwIDAsLTE1IC0xNSwwIDAsLTEwIHpcIn1dLE1bXCJTRS5JQy5GSVNISU5HIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3NSwxMDAgMCwtMTUgMjAsMCAwLDE1IDUwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgeiBNIDEwNSw1Ny40IDEwNSwxMDAgbSAzMCwtMzUgLTMwLDM1XCJ9LE1bXCJTRS5JQy5EUklGVEVSXCJdPVtNW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJERlwifV0sTVtcIlNFLklDLlRSQVdMRVJcIl09W01bXCJTRS5JQy5GSVNISU5HIFZFU1NFTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlRSXCJ9XSxNW1wiU0UuSUMuRklTSElORyBWRVNTRUwgRFJFREdFXCJdPVtNW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJEUlwifV0sTVtcIlNFLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMDAgLTE1LDM1IC0xMCwwIDE1LC0zNSB6XCJ9XSxNW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFDJiZPLGQ6XCJtIDEwNSw1NSAwLDQwIDM1LDAgeiBtIC01LC01IDAsNTAgbSA0NSwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIn0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3MCw5Ny40IDE1LC0zMCAxMCwwIC0xNSwzMCA2NSwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIn0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgUklHSUQtSFVMTCBJTkZMQVRBQkxFIEJPQVRcIl09W01bXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSQlwifV0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgU1BFRURCT0FUXCJdPVtNW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgTU9UT1JJWkVEXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiU1BcIn1dLE1bXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IUMmJk8sZDpcIm0gODUsNjAgLTMwLDQ1IDEwLDE1IDc1LDAgMCwtMjAgLTYwLDAgMTAsLTMwIDUsMCAwLC0xMCB6XCJ9LE1bXCJTRS5JQy5VTk1BTk5FRCBTVVJGQUNFIFdBVEVSIFZFSElDTEUgKFVTVilcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohKCFSJiYhUykmJk8sc3Ryb2tlOkcsZDpcIm0gNjAsODQgNDAsMjAgNDAsLTIwIDAsOCAtNDAsMjUgLTQwLC0yNSB6XCJ9LE1bXCJTRS5JQy5PV04gU0hJUFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTplP046TyxkOlwibSA1MCwxMDAgMTAwLDAgbSAtNTAsLTUwIDAsMTAwIG0gNTAsLTUwIGMgMCwyNy42IC0yMi40LDUwIC01MCw1MCAtMjcuNiwwIC01MCwtMjIuNCAtNTAsLTUwIDAsLTI3LjYgMjIuNCwtNTAgNTAsLTUwIDI3LjYsMCA1MCwyMi40IDUwLDUwIHpcIn0sTVtcIlNFLklDLkRJVENIRUQgQUlSQ1JBRlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gMTQ1LDEyMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIC03NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gMTAsMTAgMjUsLTMwIC0xMCwtMTAgMTAsLTEwIDIwLDIwIC0xMCwzNSAtMTUsLTE1IC0xNSwxNSB6XCJ9LE1bXCJTRS5JQy5QRVJTT04gSU4gV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gMTA1LDExMCAxMCwtMTAgMCwtMTUgNSwwIDAsMjAgLTEwLDEwIHogbSAtMTAsMCAtMTAsLTEwIDAsLTE1IC01LDAgMCwyMCAxMCwxMCB6IG0gNSwtNSAwLC0xMCAtNSwwIC01LC01IDAsLTEwIDUsLTUgMTAsMCA1LDUgMCwxMCAtNSw1IC01LDAgbSAtMTUsMjUgMTUsLTE1IG0gNDUsMTUgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSAtNzUsMTUgMTUsLTE1IG0gMTUsMTUgLTE1LC0xNSBtIDQ1LDE1IC0xNSwtMTVcIn0sTVtcIlNFLklDLkRJU1RSRVNTRUQgVkVTU0VMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ZT9OOk8sc3Ryb2tlOmU/TjpPLGQ6XCJtIDEyMCw2NSAtMjAsMjAgMjAsLTIwIG0gLTUsNTUgLTM1LC0zNSAwLC0yMCA0NSw0NSB6IG0gLTMwLDAgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSA0NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gLTQ1LDE1IDE1LC0xNVwifSxNW1wiU0UuSUMuU0VBIE1JTkVMSUtFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ZT9OOk8sc3Ryb2tlOmU/TjpPLGQ6XCJtIDExNy43LDc1IGMgMy41LC0zLjUgNy4xLC03LjEgNy4xLC03LjEgbCA3LjEsNy4xIC03LjEsNy4xIG0gLTQ5LjUsMCBjIC0zLjUsLTMuNSAtNy4xLC03LjEgLTcuMSwtNy4xIGwgNy4xLC03LjEgNy4xLDcuMSBNIDk1LDcwIGMgMCwtNSAwLC0xMCAwLC0xMCBsIDEwLDAgMCwxMCBtIDI1LDMwIGMgMCwxNi42IC0xMy40LDMwIC0zMCwzMCAtMTYuNiwwIC0zMCwtMTMuNCAtMzAsLTMwIDAsLTE2LjYgMTMuNCwtMzAgMzAsLTMwIDE2LjYsMCAzMCwxMy40IDMwLDMwIHpcIn0sTVtcIlNFLklDLk5BVklHQVRJT05BTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTplP046XCJyZWRcIixkOlwibSA3NSw5MCAtMTAsMTAgNzAsMCAtMTAsMTBcIn0sTVtcIlNFLklDLklDRUJFUkdcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gNzUsMTAwIDI1LC0zMCAyNSwzMCAtNSwxNSAtNSwtNSAtMTUsMjAgLTE1LC0yMCAtNSw1IHogbSAtMTUsMCA4MCwwXCJ9LE1bXCJTRS5JQy5GVVNFRCBUUkFDS1wiXT1bYShcIj9cIikse3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw2NSAxMCwzNSAtMTAsMzUgNjAsMCAtMTAsLTM1IDEwLC0zNSB6XCJ9XSxNW1wiU0UuTTEuT1dOIFNISVBcIl09bChcIk9XTlwiKSxNW1wiU0UuTTEuQU5USUFJUiBXQVJGQVJFXCJdPWwoXCJBQVdcIiksTVtcIlNFLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFwiQVNXXCIpLE1bXCJTRS5NMS5FU0NPUlRcIl09bChcIkVcIiksTVtcIlNFLk0xLkVMRUNUUk9OSUMgV0FSRkFSRVwiXT1sKFwiRVdcIiksTVtcIlNFLk0xLklOVEVMTElHRU5DRSwgU1VSVkVJTExBTkNFLCBSRUNPTk5BSVNTQU5DRVwiXT1sKFwiSVNSXCIpLE1bXCJTRS5NMS5NSU5FIENPVU5URVIgTUVBU1VSRVNcIl09bChcIk1DTVwiKSxNW1wiU0UuTTEuTUlTU0lMRSBERUZFTlNFXCJdPWwoXCJNRFwiKSxNW1wiU0UuTTEuTUVESUNBTFwiXT1sKFwiTUVcIiksTVtcIlNFLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdPWwoXCJNQ01cIiksTVtcIlNFLk0xLk1JTkUgV0FSRkFSRVwiXT1sKFwiTUlXXCIpLE1bXCJTRS5NMS5SRU1PVEUgTVVMVEktTUlTU0lPTiBWRUhJSExFXCJdPWwoXCJSTVZcIiksTVtcIlNFLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVwiXT1sKFwiU09GXCIpLE1bXCJTRS5NMS5TVVJGQUNFIFdBUkZBUkVcIl09bChcIlNVV1wiKSxNW1wiU0UuTTEuQkFMTElTVElDIE1JU1NJTEVcIl09bChcIkJcIiksTVtcIlNFLk0xLkdVSURFRCBNSVNTSUxFXCJdPWwoXCJHXCIpLE1bXCJTRS5NMS5PVEhFUiBHVUlERUQgTUlTU0lMRVwiXT1sKFwiTVwiKSxNW1wiU0UuTTEuVE9SUEVET1wiXT1sKFwiVFwiKSxNW1wiU0UuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTRS5NMS5ISUpBQ0tFUlwiXT1sKFwiSEpcIiksTVtcIlNFLk0yLkNZQkVSU1BBQ0VcIl09cihcIkNZQlwiKSxNW1wiU0UuTTEuRFJPTkUtRVFVSVBQRURcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLDY1IDIwLDEzIDIwLC0xMyAwLC01IC0yMCwxMCAtMjAsLTEwIHpcIn0sTVtcIlNFLk0xLkhFTElDT1BURVItRVFVSVBQRURcIl09bChcIkhcIiksTVtcIlNFLk0xLkJBTExJU1RJQyBNSVNTSUxFIERFRkVOU0UsIFNIT09URVJcIl09bChcIkJNXCIpLE1bXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRSBERUZFTlNFLCBMT05HLSBSQU5HRSBTVVJWRUlMTEFOQ0UgQU5EIFRSQUNLIChMUlMmVClcIl09bChcIlNUXCIpLE1bXCJTRS5NMS5TRUEtQkFTRSBYLUJBTkRcIl09bChcIlNCWFwiKSxNW1wiU0UuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdPWwoXCJIXCIpLE1bXCJTRS5NMi5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl09cihcIkFTV1wiKSxNW1wiU0UuTTIuTUlORSBXQVJGQVJFXCJdPXIoXCJNSVdcIiksTVtcIlNFLk0yLlNVUkZBQ0UgV0FSRkFSRVwiXT1yKFwiU1VXXCIpLE1bXCJTRS5NMi5OVUNMRUFSIFBPV0VSRURcIl09cihcIk5cIiksTVtcIlNFLk0yLkhFQVZZXCJdPXIoXCJIXCIpLE1bXCJTRS5NMi5MSUdIVFwiXT1yKFwiTFwiKSxNW1wiU0UuTTIuTUVESVVNXCJdPXIoXCJNXCIpLE1bXCJTRS5NMi5ET0NLXCJdPXIoXCJEXCIpLE1bXCJTRS5NMi5MT0dJU1RJQ1NcIl09cihcIkxPR1wiKSxNW1wiU0UuTTIuVEFOS1wiXT1yKFwiVFwiKSxNW1wiU0UuTTIuVkVISUNMRVwiXT1yKFwiVlwiKSxNW1wiU0UuTTIuRkFTVFwiXT1yKFwiRlwiKSxNW1wiU0UuTTIuQUlSLUNVU0hJT05FRFwiXT1yKFwiSlwiKSxNW1wiU0UuTTIuQUlSLUNVU0hJT05FRCAoVVNBIE9OTFkpXCJdPXIoXCJBQ1wiKSxNW1wiU0UuTTIuSFlEUk9GT0lMXCJdPXIoXCJLXCIpLE1bXCJTRS5NMi5BVVRPTk9NT1VTIENPTlRST0xcIl09cihcIkFVVFwiKSxNW1wiU0UuTTIuUkVNT1RFTFkgUElMT1RFRFwiXT1yKFwiUlBcIiksTVtcIlNFLk0yLkVYUEVOREFCTEVcIl09cihcIkVYUFwiKSxNKU0uaGFzT3duUHJvcGVydHkoaSkmJihJLmhhc093blByb3BlcnR5KGkpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIraSksbi5jYWxsKHRoaXMsTVtpXSxOKSxJW2ldPU1baV0pfXZhciBwPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbZF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUy0tLS0tLS1cIl09W10sSVtcIlMtUy1DLS0tLS1cIl09W0VbXCJTRS5JQy5DT01CQVRBTlRcIl1dLElbXCJTLVMtQ0wtLS0tXCJdPVtFW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl1dLElbXCJTLVMtQ0xDVi0tXCJdPVtFW1wiU0UuSUMuQ0FSUklFUlwiXV0sSVtcIlMtUy1DTEJCLS1cIl09W0VbXCJTRS5JQy5CQVRUTEVTSElQXCJdXSxJW1wiUy1TLUNMQ0MtLVwiXT1bRVtcIlNFLklDLkNSVUlTRVJcIl1dLElbXCJTLVMtQ0xERC0tXCJdPVtFW1wiU0UuSUMuREVTVFJPWUVSXCJdXSxJW1wiUy1TLUNMRkYtLVwiXT1bRVtcIlNFLklDLkZSSUdBVEVcIl1dLElbXCJTLVMtQ0xMTC0tXCJdPVtFW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl1dLElbXCJTLVMtQ0xMTEFTXCJdPVtFW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl0sRVtcIlNFLk0yLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtUy1DTExMTUlcIl09W0VbXCJTRS5JQy5MSVRUT1JBTCBDT01CQVRBTlQgU0hJUFwiXSxFW1wiU0UuTTIuTUlORSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNMTExTVVwiXT1bRVtcIlNFLklDLkxJVFRPUkFMIENPTUJBVEFOVCBTSElQXCJdLEVbXCJTRS5NMi5TVVJGQUNFIFdBUkZBUkVcIl1dLElbXCJTLVMtQ0EtLS0tXCJdPVtFW1wiU0UuSUMuQU1QSElCSU9VUyBXQVJGQVJFIFNISVBcIl1dLElbXCJTLVMtQ0FMQS0tXCJdPVtSP0VbXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFRcIl06RVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVCBTSElQLCBHRU5FUkFMXCJdXSxJW1wiUy1TLUNBTFMtLVwiXT1bRVtcIlNFLklDLkxBTkRJTkcgU0hJUFwiXV0sSVtcIlMtUy1DQUxTTS1cIl09W0VbXCJTRS5JQy5MQU5ESU5HIFNISVBcIl0sRVtcIlNFLk0yLk1FRElVTVwiXV0sSVtcIlMtUy1DQUxTVC1cIl09W0VbXCJTRS5JQy5MQU5ESU5HIFNISVBcIl0sRVtcIlNFLk0yLlRBTktcIl1dLElbXCJTLVMtQ0FMQy0tXCJdPVtFW1wiU0UuSUMuTEFORElORyBDUkFGVFwiXV0sSVtcIlMtUy1DTS0tLS1cIl09W0VbXCJTRS5JQy5NSU5FIFdBUkZBUkUgVkVTU0VMXCJdXSxJW1wiUy1TLUNNTUwtLVwiXT1bRVtcIlNFLklDLk1JTkVMQVlFUlwiXV0sSVtcIlMtUy1DTU1TLS1cIl09W0VbXCJTRS5JQy5NSU5FU1dFRVBFUlwiXV0sSVtcIlMtUy1DTU1ILS1cIl09W0VbXCJTRS5JQy5NSU5FSFVOVEVSXCJdXSxJW1wiUy1TLUNNTUEtLVwiXT1bRVtcIlNFLklDLk1JTkUgQ09VTlRFUiBNRUFTVVJFIFNVUFBPUlQgU0hJUFwiXV0sSVtcIlMtUy1DTU1ELS1cIl09W0VbXCJTRS5JQy5NSU5FU1dFRVBFUiwgRFJPTkVcIl1dLElbXCJTLVMtQ1AtLS0tXCJdPVtFW1wiU0UuSUMuUEFUUk9MXCJdXSxJW1wiUy1TLUNQU0ItLVwiXT1bRVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXV0sSVtcIlMtUy1DUFNVLS1cIl09W0VbXCJTRS5JQy5QQVRST0wgQU5USSBTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtUy1DUFNVTS1cIl09W0VbXCJTRS5JQy5QQVRST0wgQU5USVNISVAgTUlTU0lMRVwiXV0sSVtcIlMtUy1DUFNVVC1cIl09W0VbXCJTRS5JQy5QQVRST0wgVE9SUEVET1wiXV0sSVtcIlMtUy1DUFNVRy1cIl09W0VbXCJTRS5JQy5QQVRST0wgR1VOXCJdXSxJW1wiUy1TLUNILS0tLVwiXT1bRVtcIlNFLklDLkhPVkVSQ1JBRlRcIl1dLElbXCJTLVMtRy0tLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdXSxJW1wiUy1TLUdGLS0tLVwiXT1JW1wiUy1TLUdULS0tLVwiXT1bRVtcIlNFLklDLk5BVlkgVEFTSyBGT1JDRVwiXV0sSVtcIlMtUy1HRy0tLS1cIl09W0VbXCJTRS5JQy5OQVZZIFRBU0sgR1JPVVBcIl1dLElbXCJTLVMtR1UtLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIFVOSVRcIl1dLElbXCJTLVMtR0UtLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIEVMRU1FTlRcIl1dLElbXCJTLVMtR0MtLS0tXCJdPVtFW1wiU0UuSUMuQ09OVk9ZXCJdXSxJW1wiUy1TLUNELS0tLVwiXT1bRVtcIlNFLklDLlNFQSBTVVJGQUNFIERFQ09ZXCJdXSxJW1wiUy1TLUNVLS0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXV0sSVtcIlMtUy1DVU0tLS1cIl09W0VbXCJTRS5JQy5VTk1BTk5FRCBTVVJGQUNFIFdBVEVSIFZFSElDTEVcIl0sRVtcIlNFLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJW1wiUy1TLUNVUy0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNVTi0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuU1VSRkFDRSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNVUi0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuUkVNT1RFIE1VTFRJLU1JU1NJT04gVkVISUhMRVwiXV0sSVtcIlMtUy1OLS0tLS1cIl09W0VbXCJTRS5JQy5OT05DT01CQVRBTlRcIl1dLElbXCJTLVMtTlItLS0tXCJdPVtFW1wiU0UuSUMuQVVYSUxJQVJZIFNISVBcIl1dLElbXCJTLVMtTlJBLS0tXCJdPVtFW1wiU0UuSUMuQU1NVU5JVElPTiBTSElQXCJdXSxJW1wiUy1TLU5STy0tLVwiXT1bRVtcIlNFLklDLk9JTEVSLCBSRVBMRU5JU0hNRU5UXCJdXSxJW1wiUy1TLU5GLS0tLVwiXT1JW1wiUy1TLU5GVC0tLVwiXT1bRVtcIlNFLklDLlRVRywgT0NFQU4gR09JTkdcIl1dLElbXCJTLVMtTkktLS0tXCJdPVtFW1wiU0UuSUMuSU5URUxMSUdFTkNFIENPTExFQ1RPUlwiXV0sSVtcIlMtUy1OTS0tLS1cIl09W0VbXCJTRS5JQy5IT1NQSVRBTCBTSElQXCJdXSxJW1wiUy1TLU5TLS0tLVwiXT1bRVtcIlNFLklDLlNFUlZJQ0UgQ1JBRlQsIFlBUkQsIEdFTkVSQUxcIl1dLElbXCJTLVMtTlItLS0tXCJdPVtFW1wiU0UuSUMuUkVQQUlSIFNISVBcIl1dLElbXCJTLVMtTlRTLS0tXCJdPVtFW1wiU0UuSUMuU1VCTUFSSU5FIFRFTkRFUlwiXV0sSVtcIlMtUy1OSC0tLS1cIl09W0VbXCJTRS5JQy5IT1ZFUkNSQUZUIE5PTkNPTUJBVEFOVFwiXV0sSVtcIlMtUy1YLS0tLS1cIl09W10sSVtcIlMtUy1YTS0tLS1cIl09W0VbXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdXSxJW1wiUy1TLVhNQy0tLVwiXT1bRVtcIlNFLklDLkNBUkdPLCBHRU5FUkFMXCJdXSxJW1wiUy1TLVhNRS0tLVwiXT1JW1wiUy1TLVhNUi0tLVwiXT1bRVtcIlNFLklDLlJPTEwgT04tUk9MTCBPRkZcIl1dLElbXCJTLVMtWE1PLS0tXCJdPVtFW1wiU0UuSUMuT0lMRVIvVEFOS0VSXCJdXSxJW1wiUy1TLVhNVC0tLVwiXT1JW1wiUy1TLVhNVFUtLVwiXT1bRVtcIlNFLklDLlRVRywgT0NFQU4gR09JTkcgQ0lWSUxJQU5cIl1dLElbXCJTLVMtWE1GLS0tXCJdPVtFW1wiU0UuSUMuRkVSUllcIl1dLElbXCJTLVMtWE1QLS0tXCJdPVtFW1wiU0UuSUMuUEFTU0VOR0VSIFNISVBcIl1dLElbXCJTLVMtWE1ILS0tXCJdPVtFW1wiU0UuSUMuVFJBTlNQT1JUIFNISVAsIEhBWkFSRE9VUyBNQVRFUklBTFwiXV0sSVtcIlMtUy1YTUQtLS1cIl09W0VbXCJTRS5JQy5EUkVER0VcIl1dLElbXCJTLVMtWE1UTy0tXCJdPVtFW1wiU0UuSUMuVE9XXCJdXSxJW1wiUy1TLVhGLS0tLVwiXT1bRVtcIlNFLklDLkZJU0hJTkcgVkVTU0VMXCJdXSxJW1wiUy1TLVhGREYtLVwiXT1bRVtcIlNFLklDLkRSSUZURVJcIl1dLElbXCJTLVMtWEZUUi0tXCJdPVtFW1wiU0UuSUMuVFJBV0xFUlwiXV0sSVtcIlMtUy1YRkRSLS1cIl09W0VbXCJTRS5JQy5GSVNISU5HIFZFU1NFTCBEUkVER0VcIl1dLElbXCJTLVMtWFItLS0tXCJdPVtFW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdXSxJW1wiUy1TLVhMLS0tLVwiXT1bRVtcIlNFLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl1dLElbXCJTLVMtWEgtLS0tXCJdPVtFW1wiU0UuSUMuSE9WRVJDUkFGVCBDSVZJTElBTlwiXV0sSVtcIlMtUy1YQS0tLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl1dLElbXCJTLVMtWEFSLS0tXCJdPVtFW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgTU9UT1JJWkVELCBSSUdJRC1IVUxMIElORkxBVEFCTEUgQk9BVFwiXV0sSVtcIlMtUy1YQVMtLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRUQsIFNQRUVEQk9BVFwiXV0sSVtcIlMtUy1YUC0tLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl1dLElbXCJTLVMtTy0tLS0tXCJdPVtFW1wiU0UuSUMuT1dOIFNISVBcIl1dLElbXCJTLVMtRS0tLS0tXCJdPVtdLElbXCJTLVMtRUQtLS0tXCJdPVtFW1wiU0UuSUMuRElUQ0hFRCBBSVJDUkFGVFwiXV0sSVtcIlMtUy1FUC0tLS1cIl09W0VbXCJTRS5JQy5QRVJTT04gSU4gV0FURVJcIl1dLElbXCJTLVMtRVYtLS0tXCJdPVtFW1wiU0UuSUMuRElTVFJFU1NFRCBWRVNTRUxcIl1dLElbXCJTLVMtWi0tLS0tXCJdPVtdLElbXCJTLVMtWk0tLS0tXCJdPVtFW1wiU0UuSUMuU0VBIE1JTkVMSUtFXCJdXSxJW1wiUy1TLVpOLS0tLVwiXT1bRVtcIlNFLklDLk5BVklHQVRJT05BTFwiXV0sSVtcIlMtUy1aSS0tLS1cIl09W0VbXCJTRS5JQy5JQ0VCRVJHXCJdXX19O2Z1bmN0aW9uIEQoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD10LmZyYW1lLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbQ10sTz1FLmljb25GaWxsQ29sb3JbQ10sRz1FLndoaXRlW0NdLG89RS5ibGFja1tDXSxNPXt9O2Zvcih2YXIgaSBpbiBNW1wiU1UuSUMuTUlMSVRBUllcIl09YShcIk1JTFwiKSxNW1wiU1UuSUMuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxNW1wiU1UuSUMuQ0lWSUxJQU5cIl0uZmlsbD1SfHxTP086IVQmJk8sTVtcIlNVLklDLkNJVklMSUFOXCJdLnN0cm9rZT1vLE1bXCJTVS5JQy5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLE1bXCJTVS5JQy5NQU5VQUwgVFJBQ0tcIl09YShcIk1BTlwiKSxNW1wiU1UuSUMuU1VCTUFSSU5FXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDg1IDUwLDAgMTUsMTUgLTE1LDE1IC01MCwwIC0xNSwtMTUgelwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDExMCAtMTAsLTEwIDEwLC0xMCAyMCwwIDAsLTEwIDEwLDAgMCwxMCAyMCwwIDEwLDEwIC0xMCwxMCB6XCJ9LE1bXCJTVS5JQy5TVUJNQVJJTkUgQ09OVkVOVElPTkFMIFBST1BVTFNJT04sIFNVUkZBQ0VEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMTAgLTEwLC0xMCAxMCwtMTAgMjAsMCAwLC0xMCAxMCwwIDAsMTAgMjAsMCAxMCwxMCAtMTAsMTAgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDExMCAtMTAsLTEwIDEwLC0xMCAwLC0xMCA1MCwwIDAsMTAgMTAsMTAgLTEwLDEwIHpcIn0sTVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT04sIFNVUkZBQ0VEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMTAgLTEwLC0xMCAxMCwtMTAgMCwtMTAgNTAsMCAwLDEwIDEwLDEwIC0xMCwxMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTIwIDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMFwifV0sTVtcIlNVLklDLlNVQk1BUklORSBBVFRBQ0sgKFNTTilcIl09e3R5cGU6XCJ0ZXh0XCIsZmlsbDpHLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQVwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIE1JU1NJTEUgKFRZUEUgVU5LTk9XTilcIl09e3R5cGU6XCJ0ZXh0XCIsZmlsbDpHLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiTVwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIEdVSURFRCBNSVNTSUxFIChTU0dOKVwiXT17dHlwZTpcInRleHRcIixmaWxsOkcsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJHXCJ9LE1bXCJTVS5JQy5TVUJNQVJJTkUgQkFMTElTVElDIE1JU1NJTEUgKFNTQk4pXCJdPXt0eXBlOlwidGV4dFwiLGZpbGw6RyxzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkJcIn0sTVtcIlNVLklDLlNVQk1BUklORSwgU1VSRkFDRURcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDgwIDUwLDAgMTUsMTUgLTE1LDE1IC01MCwwIC0xNSwtMTUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSw4MCA1MCwwIDE1LDE1IC0xNSwxNSAtNTAsMCAtMTUsLTE1IHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTIwIDAsLTUgNjAsMCAwLDUgelwifV0sTVtcIlNVLklDLlNVQk1BUklORSwgU05PUktFTElOR1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTIwIC0xMCwtMTAgMTAsLTEwIDIwLDAgMCwtMjAgMTAsMCAwLDIwIDIwLDAgMTAsMTAgLTEwLDEwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSw5NSAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw5MCAwLC0xMCAzMCwwIDAsMTAgbSAyMCwxMCBjIDAsNS41IC0xNS43LDEwIC0zNSwxMCAtMTkuMywwIC0zNSwtNC41IC0zNSwtMTAgMCwtNS41IDE1LjcsLTEwIDM1LC0xMCAxOS4zLDAgMzUsNC41IDM1LDEwIHpcIn0sTVtcIlNVLklDLk9USEVSIFNVQk1FUlNJQkxFLCBTVVJGQUNFRFwiXT1bTVtcIlNVLklDLk9USEVSIFNVQk1FUlNJQkxFXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTIwIDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMFwifV0sTVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0sTVtcIlNVLklDLk5PTi1TVUJNQVJJTkVcIl09UiYmIVM/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCJOT05cIn06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMCxmb250c2l6ZToyNSx0ZXh0OlwiTk9OXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyMCxmb250c2l6ZToyNSx0ZXh0OlwiU1VCXCJ9XSxNW1wiU1UuSUMuRElWRVIsIE1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMDAgODAgQyA5My43IDgwIDg4LjMgODIuNyA4NS44IDg4LjMgTCA4NS44IDg4LjMgTCA3Ny44IDg4LjMgTCA3Ny44IDEwNSBMIDg1LjggMTA1IEwgODUuOCAxMDQuOCBDIDg3LjMgMTA4LjIgODguOCAxMTAgOTIgMTExLjcgTCA5Mi4xIDExMS43IEwgODQuMiAxMjAgTCAxMTUuOCAxMjAgTCAxMDcuOSAxMTEuNyBMIDEwOCAxMTEuNyBDIDExMS4xIDExMCAxMTIuOCAxMDguMyAxMTQuMyAxMDUgTCAxMjIuMiAxMDUgTCAxMjIuMiA4OC4zIEwgMTE0LjMgODguMyBMIDExNC4zIDg4LjMgQyAxMTEuNyA4Mi44IDEwNi4zIDgwIDEwMCA4MCB6IE0gMTAwIDg2LjYgQyAxMDUuNCA4Ni42IDEwOS44IDkxLjEgMTA5LjggOTYuNiBDIDEwOS44IDEwMi4xIDEwNS40IDEwNi42IDEwMCAxMDYuNiBDIDk0LjYgMTA2LjYgOTAuMSAxMDIuMSA5MC4xIDk2LjYgQyA5MC4xIDkxLjEgOTQuNiA4Ni42IDEwMCA4Ni42IHogTSAxMDAgODkuNiBDIDk2LjIgODkuNiA5My4xIDkyLjcgOTMuMSA5Ni42IEMgOTMuMSAxMDAuNSA5Ni4yIDEwMy42IDEwMCAxMDMuNiBDIDEwMy44IDEwMy42IDEwNi44IDEwMC41IDEwNi44IDk2LjYgQyAxMDYuOCA5Mi43IDEwMy44IDg5LjYgMTAwIDg5LjYgelwifSxNW1wiU1UuSUMuU1VCTUVSU0lCTEUsIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDg1LDkwIDAsLTEwIDMwLDAgMCwxMCBtIDIwLDEwIGMgMCw1LjUgLTE1LjcsMTAgLTM1LDEwIC0xOS4zLDAgLTM1LC00LjUgLTM1LC0xMCAwLC01LjUgMTUuNywtMTAgMzUsLTEwIDE5LjMsMCAzNSw0LjUgMzUsMTAgelwifSxNW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVViksIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwifSxNW1wiU1UuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTVS5NMS5ISUpBQ0tFUlwiXT1sKFwiSEpcIiksTVtcIlNVLk0yLkNZQkVSU1BBQ0VcIl09cihcIkNZQlwiKSxNW1wiU1UuSUMuRElWRVIsIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6TyxkOlwiTSAxMTQuMyw5NCBDIDExNC4zLDEwMi4zIDEwNy45LDEwOSAxMDAsMTA5IGMgLTcuOSwwIC0xNC4yLC02LjcgLTE0LjIsLTE1IDAsLTguMyA2LjQsLTE1IDE0LjIsLTE1IDcuOSwwIDE0LjMsNi43IDE0LjMsMTUgeiBtIDAsMjcgMTQuMywxNSAtNTcsMCAxNC4zLC0xNSBNIDEyNS43LDc5IGwgMTQuMywwIDAsMzAgLTE0LjMsMCBtIC01MS4zLDAgLTE0LjMsMCAwLC0zMCAxNC4zLDAgbSA1NC4yLDE1IGMgMCwxNi42IC0xMi44LDMwIC0yOC41LDMwIC0xNS43LDAgLTI4LjUsLTEzLjQgLTI4LjUsLTMwIEMgNzEuNSw3Ny40IDg0LjMsNjQgMTAwLDY0IDExNS43LDY0IDEyOC41LDc3LjQgMTI4LjUsOTQgelwifSxNW1wiU1UuSUMuVU5ERVJXQVRFUiBXRUFQT05cIl09YShcIldQTlwiKSxNW1wiU1UuSUMuVE9SUEVET1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA2NSwxMDUgLTUsLTUgNSwtNSA2MCwwIGMgMCwwIDUsNSA1LDUgbCA1LC01IDAsMTAgLTUsLTUgLTUsNSB6XCJ9LE1bXCJTVS5JQy5JTVBST1ZJU0VEIEVYUExPU0lWRSBERVZJQ0UgKElFRClcIl09YShcIklFRFwiKSxNW1wiU1UuSUMuVU5ERVJXQVRFUiBERUNPWVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6byxkOlI/XCJNIDEwNSwxMTAgOTAsOTUgMTA1LDgwIHogTSA4NSwxMTAgNzAsOTUgODUsODAgeiBtIDQwLC0zMCAtMTUsMTUgMTUsMTUgeiBtIC01NSw0MCAwLC01IDU1LDAgMCw1IHpcIjpcIk0gMTA1LDEyMCA5MCwxMDUgMTA1LDkwIHogTSA4NSwxMjAgNzAsMTA1IDg1LDkwIHogbSA0MCwtMzAgLTE1LDE1IDE1LDE1IHogbSAtNTUsLTUgMCwtNSA1NSwwIDAsNSB6XCIsZmlsbDpSP046T30sTVtcIlNVLklDLlVOREVSV0FURVIgREVDT1kgRFN5bWJvbFwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA4NSA4MSBMIDY1IDk4IEwgODUgMTE5IEwgODUgODEgeiBNIDExMCA4MSBMIDkwIDk4IEwgMTEwIDExOSBMIDExMCA4MSB6IE0gMTM1IDgxIEwgMTE1IDk4IEwgMTM1IDExOSBMIDEzNSA4MSB6XCJ9LE1bXCJTVS5JQy5FQ0hPIFRSQUNLRVIgQ0xBU1NJRklFUiAoRVRDKS9QT1NTSUJMRSBDT05UQUNUIChQT1NDT04pXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEzMCxmb250c2l6ZTo2MCx0ZXh0OlwiP1wifSxNW1wiU1UuSUMuRlVTRUQgVFJBQ0tcIl09W2EoXCI/XCIpLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsNjUgMTAsMzUgLTEwLDM1IDYwLDAgLTEwLC0zNSAxMCwtMzVcIn1dLE1bXCJTVS5JQy5TRUEgTUlORVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkUuaWNvbkNvbG9yLkhvc3RpbGUsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIk0gMTE1LjksNzMgMTI2LjUsNjIuNCAxMzcuMSw3MyAxMjYuNSw4My42IG0gLTUzLDAgTCA2Mi45LDczIDczLjUsNjIuNCA4NC4xLDczIG0gOC40LC0zIDAsLTE1IDE1LDAgMCwxNSBtIDIyLjUsMzAgYyAwLDE2LjYgLTEzLjQsMzAgLTMwLDMwIC0xNi42LDAgLTMwLC0xMy40IC0zMCwtMzAgMCwtMTYuNiAxMy40LC0zMCAzMCwtMzAgQyAxMTYuNiw3MCAxMzAsODMuNCAxMzAsMTAwIHpcIn0sTVtcIlNVLklDLlNFQSBNSU5FIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5Ib3N0aWxlLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc0LjgsMTI1LjIgNTAuNCwwIDAsMTIuNiAtNTAuNCwwIHpcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086RS5pY29uQ29sb3IuSG9zdGlsZSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOlMmJkE/XCJcIjohUiYmIVN8fGU/TzpFLmljb25Db2xvci5Ib3N0aWxlLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDEwMCwxMjggLTEwLDE1IDIwLDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIChJTiBPVEhFUiBQT1NJVElPTilcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDEzMCwxMDAgMTUsMCBNIDcwLDEwMCBsIC0xNSwwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBLSU5HRklTSEVSXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCJLXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBTTUFMTCBPQkpFQ1RcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIlNPXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwiTSAxMTUuOSw3MyAxMjYuNSw2Mi40IDEzNy4xLDczIDEyNi41LDgzLjYgbSAtNTMsMCBMIDYyLjksNzMgNzMuNSw2Mi40IDg0LjEsNzMgbSA4LjQsLTMgMCwtMTUgMTUsMCAwLDE1IG0gMjIuNSwzMCBjIDAsMTYuNiAtMTMuNCwzMCAtMzAsMzAgLTE2LjYsMCAtMzAsLTEzLjQgLTMwLC0zMCAwLC0xNi42IDEzLjQsLTMwIDMwLC0zMCBDIDExNi42LDcwIDEzMCw4My40IDEzMCwxMDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIkVYXCJ9LFM/W106e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046byx4OjE1MCx5OjQ2LGZvbnRzaXplOjQwLHRleHQ6XCJYXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NC44LDEyNS4yIDUwLjQsMCAwLDEyLjYgLTUwLjQsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzUsMTQwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkUgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTAwLDEyOCAtMTAsMTUgMjAsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgREVDT1lcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSAxMDYuNiwxMDEuNiAwLDI2LjMgLTEzLjEsLTEzLjEgeiBtIC0xOS43LDAgMCwyNi4zIC0xMy4xLC0xMy4xIHogbSAzOS40LDAgMCwyNi4zIC0xMy4xLC0xMy4xIDEzLjEsLTEzLjEgTSAxMDAsNzUuMyBjIC0xNC41LDAgLTI2LjMsMTEuOCAtMjYuMywyNi4zIGwgNTIuNSwwIEMgMTI2LjMsODcuMSAxMTQuNSw3NS4zIDEwMCw3NS4zIHogbSAtNi42LDAgMCwtMTMuMSAxMy4xLDAgMCwxMy4xIG0gLTI5LjgsMTIuMyAtOS4zLC05LjMgOS4zLC05LjMgOS4zLDkuMyBtIDI3LjksMCA5LjMsLTkuMyA5LjMsOS4zIC05LjMsOS4zXCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBERUNPWSwgQk9UVE9NL0dST1VORFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBNT09SRURcIl09W01bXCJTVS5JQy5TRUEgTUlORSBERUNPWVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigwLCAxMzAsIDI0KVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LDE0MCA1MCwwIE0gMTAwLDEwMCBsIDAsNDBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJNIDExNS45LDczIDEyNi41LDYyLjQgMTM3LjEsNzMgMTI2LjUsODMuNiBtIC01MywwIEwgNjIuOSw3MyA3My41LDYyLjQgODQuMSw3MyBtIDguNCwtMyAwLC0xNSAxNSwwIDAsMTUgbSAyMi41LDMwIGMgMCwxNi42IC0xMy40LDMwIC0zMCwzMCAtMTYuNiwwIC0zMCwtMTMuNCAtMzAsLTMwIDAsLTE2LjYgMTMuNCwtMzAgMzAsLTMwIEMgMTE2LjYsNzAgMTMwLDgzLjQgMTMwLDEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZXdpZHRoOjUsc3Ryb2tlOkE/RzpvLGQ6XCJtIDEzNSw2NSAtNzAsNzAgbSAwLC03MCA3MCw3MFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc0LjgsMTI1LjIgNTAuNCwwIDAsMTIuNiAtNTAuNCwwIHpcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086RS5pY29uQ29sb3IuTmV1dHJhbCxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkUuaWNvbkNvbG9yLk5ldXRyYWwsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTAwLDEyOCAtMTAsMTUgMjAsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKSBORVVUUkFMSVpFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTMwLDEwMCAxNSwwIE0gNzAsMTAwIGwgLTE1LDBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEyLGZvbnRzaXplOjMwLHRleHQ6XCJFXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBCT1RUT01cIl09W01bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigyNTUsMjU1LDApXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUNcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LjUsMTM2LjggNDksMCBNIDEwMCwxMjQuNSBsIDAsMTIuM1wifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LDE0MCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSU5FIEFOQ0hPUlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6ISghUiYmIVN8fGUpJiZvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTA1LGZvbnRzaXplOjE4LHRleHQ6XCJBTkNSXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwxNDEsNDIpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTEzLjgsMTI3LjYgLTI3LjYsMCAtMTMuOCwtMTMuOCAwLC0yNy42IDEzLjgsLTEzLjggMjcuNiwwIDEzLjgsMTMuOCAwLDI3LjYgelwifSxTP1tdOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOiFSJiYhU3x8ZT9OOm8seDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIiNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwxNDEsNDIpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCIxXCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIjJcIn0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOmV8fCghUiYmIVN8fEE/RzpvKSx4OjEwMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiM1wifSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCI0XCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIjVcIn0sTVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT05cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjgsNFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwyNTUsMClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSAxMTMuOCwxMjcuNiAtMjcuNiwwIC0xMy44LC0xMy44IDAsLTI3LjYgMTMuOCwtMTMuOCAyNy42LDAgMTMuOCwxMy44IDAsMjcuNiB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOmV8fCghUiYmIVN8fEE/RzpvKSx4OjEwMCx5OjExMixmb250c2l6ZTozMCx0ZXh0OlwiTlJcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTlwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigyNTUsMjU1LDApXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBNT09SRURcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwyNTUsMClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzUsMTQwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEyLGZvbnRzaXplOjMwLHRleHQ6XCJPQlwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUiBORVVUUkFMSVpFRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlfHxBP0c6byx4OjEwMCx5OjExMixmb250c2l6ZTozMCx0ZXh0OlwiT0JcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tld2lkdGg6NSxzdHJva2U6QT9HOm8sZDpcIm0gMTM1LDY1IC03MCw3MCBtIDAsLTcwIDcwLDcwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTEzLjgsMTI3LjYgLTI3LjYsMCAtMTMuOCwtMTMuOCAwLC0yNy42IDEzLjgsLTEzLjggMjcuNiwwIDEzLjgsMTMuOCAwLDI3LjYgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIk5cIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuVU5FWFBMT0RFRCBFWFBMT1NJVkUgT1JETkFOQ0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjgsNFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLkhvc3RpbGUsZDpcIm0gODUsNjUgMzAsMCAyMCwyMCAwLDMwIC0yMCwyMCAtMzAsMCAtMjAsLTIwIDAsLTMwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046RS5pY29uQ29sb3IuSG9zdGlsZSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiVVhPXCJ9XSxNW1wiU1UuSUMuRU5WSVJPTk1FTlRBTCBSRVBPUlQgTE9DQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLk5ldXRyYWwsZDpcIm0gNzAsNzAgMCw2MCA2MCwwIDAsLTYwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046RS5pY29uQ29sb3IuTmV1dHJhbCx4OjEwMCx5OjEyMixmb250c2l6ZTo2MCx0ZXh0OlwiRVwifV0sTVtcIlNVLklDLkRJVkUgUkVQT1JUIExPQ0FUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpFLmljb25Db2xvci5OZXV0cmFsLGQ6XCJtIDcwLDcwIDAsNjAgNjAsMCAwLC02MCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLk5ldXRyYWwseDoxMDAseToxMjIsZm9udHNpemU6NjAsdGV4dDpcIkRcIn1dLE1bXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OL01BTk1BREVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpPLHN0cm9rZTpvLGQ6XCJtIDE0MCwxMjUgLTgwLDAgMTAsLTMwIDEwLDIwIDIwLC01MCAyMCw1MCAxMCwtMjUgelwifSxNW1wiU1UuSUMuU0VBQkVEIElOU1RBTExBVElPTiwgTUFOLU1BREUsIE1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDgwIDAsNDAgNTAsMCAwLC0xNSAtMTUsMCAwLC0xMCAtMjAsMCAwLC0xNSB6XCJ9LE1bXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTk9OLU1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6TyxkOlwibSA3NSw4MCAwLDQwIDUwLDAgMCwtMTUgLTE1LDAgMCwtMTAgLTIwLDAgMCwtMTUgelwifSxNW1wiU1UuSUMuU0VBQkVEIFJPQ0svU1RPTkUsIE9CU1RBQ0xFLCBPVEhFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxNDAsMTI1IC04MCwwIDEwLC0zMCAxMCwyMCAyMCwtNTAgMjAsNTAgMTAsLTI1IHpcIn0sTVtcIlNVLklDLldSRUNLXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyNSw4NSAwLDMwIG0gLTUwLC0zMCAwLDMwIG0gMjUsLTQwIDAsNDUgbSAtNDAsLTIwIDgwLDBcIn0sTVtcIlNVLklDLk1BUklORSBMSUZFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDEwMCAyMCwtMjAgNDUsMjAgMTUsLTEwIDAsMjAgLTE1LC0xMCAtNDUsMjAgelwifSxNW1wiU1UuSUMuU0VBIEFOT01BTFlcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSwxMDAgMTUsLTIwIDIwLDMwIDIwLC0zMCAxNSwyMCBtIC03MCwxMCAxNSwtMjAgMjAsMzAgMjAsLTMwIDE1LDIwXCJ9LE1bXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl09bChcIkFTV1wiKSxNW1wiU1UuTTEuQVVYSUxJQVJZXCJdPWwoXCJBVVhcIiksTVtcIlNVLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl09bChcIkMyXCIpLE1bXCJTVS5NMS5JTlRFTExJR0VOQ0UsIFNVUlZFSUxMQU5DRSwgUkVDT05OQUlTU0FOQ0VcIl09bChcIklTUlwiKSxNW1wiU1UuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl09bChcIk1DTVwiKSxNW1wiU1UuTTEuTUlORSBXQVJGQVJFXCJdPWwoXCJNSVdcIiksTVtcIlNVLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXT1sKFwiU1VXXCIpLE1bXCJTVS5NMS5BVFRBQ0tcIl09bChcIkFcIiksTVtcIlNVLk0xLkJBTExJU1RJQyBNSVNTSUxFXCJdPWwoXCJCXCIpLE1bXCJTVS5NMS5HVUlERUQgTUlTU0lMRVwiXT1sKFwiR1wiKSxNW1wiU1UuTTEuT1RIRVIgR1VJREVEIE1JU1NJTEVTIChQT0lOVCBERUZFTkNFKVwiXT1sKFwiTVwiKSxNW1wiU1UuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFXCJdPWwoXCJTT0ZcIiksTVtcIlNVLk0xLlBPU1NJQkxFIFNVQk1BUklORSAtIExPVyAxXCJdPWwoXCJQMVwiKSxNW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl09bChcIlAyXCIpLE1bXCJTVS5NMS5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDNcIl09bChcIlAzXCIpLE1bXCJTVS5NMS5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDRcIl09bChcIlA0XCIpLE1bXCJTVS5NMS5QUk9CQUJMRSBTVUJNQVJJTkVcIl09bChcIlBCXCIpLE1bXCJTVS5NMS5DRVJUQUlOIFNVQk1BUklORVwiXT1sKFwiQ1RcIiksTVtcIlNVLk0xLkFOVEktVE9SUEVETyBUT1JQRURPXCJdPWwoXCJBVFRcIiksTVtcIlNVLk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXT1sKFwiSFwiKSxNW1wiU1UuTTIuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDFcIl09cihcIlAxXCIpLE1bXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBMT1cgMlwiXT1yKFwiUDJcIiksTVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggM1wiXT1yKFwiUDNcIiksTVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggNFwiXT1yKFwiUDRcIiksTVtcIlNVLk0yLlBST0JBQkxFIFNVQk1BUklORVwiXT1yKFwiUEJcIiksTVtcIlNVLk0yLkFJUiBJTkRFUEVOREVOVCBQUk9QVUxTSU9OXCJdPXIoXCJBSVwiKSxNW1wiU1UuTTIuQ0VSVFNVQlwiXT1yKFwiQ1RcIiksTVtcIlNVLk0yLkRJRVNFTCBQUk9QVUxTSU9OXCJdPXIoXCJEXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDFcIl09cihcIkQxXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDJcIl09cihcIkQyXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDNcIl09cihcIkQzXCIpLE1bXCJTVS5NMi5OVUNMRUFSIFBPV0VSRURcIl09cihcIk5cIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDFcIl09cihcIk4xXCIpLE1bXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAyXCJdPXIoXCJOMlwiKSxNW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgM1wiXT1yKFwiTjNcIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDRcIl09cihcIk40XCIpLE1bXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSA1XCJdPXIoXCJONVwiKSxNW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgNlwiXT1yKFwiTjZcIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDdcIl09cihcIk43XCIpLE1bXCJTVS5NMi5BVVRPTk9NT1VTIENPTlRST0xcIl09cihcIkFVVFwiKSxNW1wiU1UuTTIuUkVNT1RFTFkgUElMT1RFRFwiXT1yKFwiUlBcIiksTVtcIlNVLk0yLkVYUEVOREFCTEVcIl09cihcIkVYUFwiKSxNKU0uaGFzT3duUHJvcGVydHkoaSkmJihJLmhhc093blByb3BlcnR5KGkpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIraSksbi5jYWxsKHRoaXMsTVtpXSxOKSxJW2ldPU1baV0pfXZhciBtPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbRF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtVS0tLS0tLS1cIl09W10sSVtcIlMtVS1TLS0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkVcIl1dLElbXCJTLVUtU0YtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FLCBTVVJGQUNFRFwiXV0sSVtcIlMtVS1TQi0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdXSxJW1wiUy1VLVNSLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORVwiXSxFW1wiU1UuTTIuQ0VSVFNVQlwiXV0sSVtcIlMtVS1TWC0tLS1cIl09W0VbXCJTVS5JQy5OT04tU1VCTUFSSU5FXCJdXSxJW1wiUy1VLVNOLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl1dLElbXCJTLVUtU05GLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTiwgU1VSRkFDRURcIl1dLElbXCJTLVUtU05BLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIEFUVEFDSyAoU1NOKVwiXV0sSVtcIlMtVS1TTk0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgTUlTU0lMRSAoVFlQRSBVTktOT1dOKVwiXV0sSVtcIlMtVS1TTkctLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgR1VJREVEIE1JU1NJTEUgKFNTR04pXCJdXSxJW1wiUy1VLVNOQi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl0sRVtcIlNVLklDLlNVQk1BUklORSBCQUxMSVNUSUMgTUlTU0lMRSAoU1NCTilcIl1dLElbXCJTLVUtU0MtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdXSxJW1wiUy1VLVNDRi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTiwgU1VSRkFDRURcIl1dLElbXCJTLVUtU0NBLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgQVRUQUNLIChTU04pXCJdXSxJW1wiUy1VLVNDTS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIE1JU1NJTEUgKFRZUEUgVU5LTk9XTilcIl1dLElbXCJTLVUtU0NHLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgR1VJREVEIE1JU1NJTEUgKFNTR04pXCJdXSxJW1wiUy1VLVNDQi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIEJBTExJU1RJQyBNSVNTSUxFIChTU0JOKVwiXV0sSVtcIlMtVS1TTy0tLS1cIl09W0VbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXV0sSVtcIlMtVS1TT0YtLS1cIl09W0VbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRSwgU1VSRkFDRURcIl1dLElbXCJTLVUtU1UtLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl1dLElbXCJTLVUtU1VNLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl0sRVtcIlNVLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJW1wiUy1VLVNVUy0tLVwiXT1bRVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpXCJdLEVbXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbXCJTLVUtU1VOLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl0sRVtcIlNVLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sSVtcIlMtVS1TMS0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkVcIl0sRVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIExPVyAxXCJdXSxJW1wiUy1VLVMyLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORVwiXSxFW1wiU1UuTTIuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl1dLElbXCJTLVUtUzMtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDNcIl1dLElbXCJTLVUtUzQtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDRcIl1dLElbXCJTLVUtU0wtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QUk9CQUJMRSBTVUJNQVJJTkVcIl1dLElbXCJTLVUtU0stLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FLCBTTk9SS0VMSU5HXCJdXSxJW1wiUy1VLVctLS0tLVwiXT1bRVtcIlNVLklDLlVOREVSV0FURVIgV0VBUE9OXCJdXSxJW1wiUy1VLVdULS0tLVwiXT1bRVtcIlNVLklDLlRPUlBFRE9cIl1dLElbXCJTLVUtV00tLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkVcIl1dLElbXCJTLVUtV01ELS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01HLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgLSBCT1RUT01cIl1dLElbXCJTLVUtV01HRC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBCT1RUT01cIl1dLElbXCJTLVUtV01HWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdFLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxFQyAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdDLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdSLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gQk9UVE9NXCJdXSxJW1wiUy1VLVdNR08tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gQk9UVE9NXCJdXSxJW1wiUy1VLVdNTS0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIC0gTU9PUkVEXCJdXSxJW1wiUy1VLVdNTUQtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gTU9PUkVEXCJdXSxJW1wiUy1VLVdNTVgtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkUgLSBNT09SRURcIl1dLElbXCJTLVUtV01NRS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBNT09SRURcIl1dLElbXCJTLVUtV01NQy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl1dLElbXCJTLVUtV01NUi0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTiAtIE1PT1JFRFwiXV0sSVtcIlMtVS1XTU1PLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIE1PT1JFRFwiXV0sSVtcIlMtVS1XTUYtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdXSxJW1wiUy1VLVdNRkQtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEZMT0FUSU5HXCJdXSxJW1wiUy1VLVdNRkUtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GQy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXV0sSVtcIlMtVS1XTUZSLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GTy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1QgLSBGTE9BVElOR1wiXV0sSVtcIlMtVS1XTU8tLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSAoSU4gT1RIRVIgUE9TSVRJT04pXCJdXSxJW1wiUy1VLVdNT0QtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIChJTiBPVEhFUiBQT1NJVElPTikgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01YLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXV0sSVtcIlMtVS1XTUUtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXV0sSVtcIlMtVS1XTUEtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSU5FIEFOQ0hPUlwiXV0sSVtcIlMtVS1XTUMtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxDT1wiXV0sSVtcIlMtVS1XTVItLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdXSxJW1wiUy1VLVdNQi0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUlwiXV0sSVtcIlMtVS1XTUJELS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1IgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01OLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl1dLElbXCJTLVUtV01TLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgLSBSSVNJTkdcIl1dLElbXCJTLVUtV01TWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIFJJU0lOR1wiXV0sSVtcIlMtVS1XTVNELS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIFJJU0lOR1wiXV0sSVtcIlMtVS1XVi0tLS1cIl09W0VbXCJTVS5JQy5BVVRPTk9NT1VTIFVOREVSV0FURVIgVkVISUNMRS8gVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIChBVVYvVVVWKVwiXV0sSVtcIlMtVS1XRC0tLS1cIl09W0VbXCJTVS5JQy5VTkRFUldBVEVSIERFQ09ZXCJdXSxJW1wiUy1VLVdETS0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZXCJdXSxJW1wiUy1VLVdETUctLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBCT1RUT00vR1JPVU5EXCJdXSxJW1wiUy1VLVdETU0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBNT09SRURcIl1dLElbXCJTLVUtTi0tLS0tXCJdPVtFW1wiU1UuSUMuTk9OLVNVQk1BUklORVwiXV0sSVtcIlMtVS1ORC0tLS1cIl09W0VbXCJTVS5JQy5ESVZFUiwgQ0lWSUxJQU5cIl1dLElbXCJTLVUtTkItLS0tXCJdPVtdLElbXCJTLVUtRS0tLS0tXCJdPVtFW1wiU1UuSUMuRU5WSVJPTk1FTlRBTCBSRVBPUlQgTE9DQVRJT05cIl1dLElbXCJTLVUtVi0tLS0tXCJdPVtFW1wiU1UuSUMuRElWRSBSRVBPUlQgTE9DQVRJT05cIl1dLElbXCJTLVUtWC0tLS0tXCJdPVtFW1wiU1UuSUMuVU5FWFBMT0RFRCBFWFBMT1NJVkUgT1JETkFOQ0VcIl1dLElbXCJTLVUtTkJTLS0tXCJdPVtFW1wiU1UuSUMuU0VBQkVEIElOU1RBTExBVElPTi9NQU5NQURFXCJdXSxJW1wiUy1VLU5CUi0tLVwiXT1bRVtcIlNVLklDLlNFQUJFRCBST0NLL1NUT05FLCBPQlNUQUNMRSwgT1RIRVJcIl1dLElbXCJTLVUtTkJXLS0tXCJdPVtFW1wiU1UuSUMuV1JFQ0tcIl1dLElbXCJTLVUtTk0tLS0tXCJdPVtFW1wiU1UuSUMuTUFSSU5FIExJRkVcIl1dLElbXCJTLVUtTkEtLS0tXCJdPVtFW1wiU1UuSUMuU0VBIEFOT01BTFlcIl1dfX0sRj17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2MsUF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRi0tLS0tLS1cIl09W0VbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1GLUEtLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1GLUFGLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtQUZBLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiU09GLk0yLkFUVEFDS1wiXV0sSVtcIlMtRi1BRkstLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuUkVGVUVMXCJdXSxJW1wiUy1GLUFGVS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIlNPRi5NMi5VVElMSVRZXCJdXSxJW1wiUy1GLUFGVUwtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkFJUi5NMi5MSUdIVFwiXV0sSVtcIlMtRi1BRlVNLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTUVESVVNXCJdXSxJW1wiUy1GLUFGVUgtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtRi1BVi0tLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuVlNUT0xcIl1dLElbXCJTLUYtQUgtLS0tXCJdPVI/W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HIDI1MjVDXCJdXTpbRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtRi1BSEgtLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIlNPRi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLElbXCJTLUYtQUhBLS0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuQVRUQUNLXCJdXSxJW1wiUy1GLUFIVS0tLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiU09GLk0yLlVUSUxJVFlcIl1dLElbXCJTLUYtQUhVTC0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUYtQUhVTS0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTUVESVVNXCJdXSxJW1wiUy1GLUFIVUgtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiQUlSLk0yLkhFQVZZXCJdXSxJW1wiUy1GLVNOLS0tLVwiXT1JW1wiUy1GLU4tLS0tLVwiXT1bRVtcIkdSLklDLk5BVkFMXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtRi1TTlMtLS1cIl09SVtcIlMtRi1OUy0tLS1cIl09W0VbXCJHUi5JQy5TRUEtQUlSLUxBTkRcIl1dLElbXCJTLUYtU05VLS0tXCJdPUlbXCJTLUYtTlUtLS0tXCJdPVtFW1wiU09GLklDLlVOREVSV0FURVIgREVNT0xJVElPTiBURUFNXCJdXSxJW1wiUy1GLVNOQi0tLVwiXT1JW1wiUy1GLU5CLS0tLVwiXT1bRVtcIkdSLklDLkNPTUJBVEFOVFwiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtU05OLS0tXCJdPUlbXCJTLUYtTk4tLS0tXCJdPVtFW1wiR1IuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTlwiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtRy0tLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtR1MtLS0tXCJdPVtFW1wiR1IuSUMuU1BFQ0lBTCBGT1JDRVNcIl1dLElbXCJTLUYtR1ItLS0tXCJdPUlbXCJTLUYtR1NSLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUYtR1AtLS0tXCJdPUlbXCJTLUYtR1NQLS0tXCJdPVtFW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXV0sSVtcIlMtRi1HUEEtLS1cIl09SVtcIlMtRi1HU1BBLS1cIl09W0VbXCJHUi5FUS5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlMgRVFVSVBNRU5UXCJdLHMuX3RyYW5zbGF0ZSgwLC0zMCxzLl9zY2FsZSguNyxFW1wiQVIuSS5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdKSldLElbXCJTLUYtR0MtLS0tXCJdPUlbXCJTLUYtR0NBLS0tXCJdPVtFW1wiR1IuSUMuQ0lWSUwgQUZGQUlSU1wiXV0sSVtcIlMtRi1HQi0tLS1cIl09SVtcIlMtRi1CLS0tLS1cIl09W0VbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJHUi5NMi5TVVBQT1JUXCJdXX19O2Z1bmN0aW9uIGYoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1FLmljb25Db2xvcltDXSxTPXtcIlNJLklDLkNPTU1VTklDQVRJT05TXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTMsMTIwIDE0LDAgMCwwIG0gLTcsLTI3IDAsMjcgbSAyLC0yNSA4LDIgLTUsNSAxMywzIG0gLTIwLC0xMCAtOCwyIDUsNSAtMTQsMyBtIDIxLC0xMyA4LC0yIC01LC01IDEzLC0zIG0gLTM3LDAgMTQsMyAtNSw1IDgsMlwiLGZpbGw6ITF9LFwiU0kuSUMuUkFEQVJcIjp7dHlwZTpcInBhdGhcIixkOlwibSAxMTUsOTAgLTE1LDE1IDAsLTE1IC0xNSwxNSBNIDgwLDg1IGMgMCwyNSAxNSwzNSAzNSwzNVwiLGZpbGw6ITF9fTtmb3IodmFyIE4gaW4gU1tcIlNJLkkuSkFNTUVSIC8gRUxFQ1RST05JQyBDT1VOVEVSLU1FQVNVUkVTXCJdPWEoXCJKXCIpLFNbXCJTSS5NMS5BTlRJLUFJUkNSQUZUIEZJUkUgQ09OVFJPTFwiXT1sKFwiQUFcIiksU1tcIlNJLk0xLkFJUkJPUk5FIFNFQVJDSCBBTkQgQk9NQklOR1wiXT1sKFwiQUJcIiksU1tcIlNJLk0xLkFJUkJPUk5FIElOVEVSQ0VQVFwiXT1sKFwiQUlcIiksU1tcIlNJLk0xLkFMVElNRVRFUlwiXT1sKFwiQUxcIiksU1tcIlNJLk0xLkFJUkJPUk5FIFJFQ09OTkFJU1NBTkNFIEFORCBNQVBQSU5HXCJdPWwoXCJBTVwiKSxTW1wiU0kuTTEuQUlSIFRSQUZGSUMgQ09OVFJPTFwiXT1sKFwiQVRcIiksU1tcIlNJLk0xLkJFQUNPTiBUUkFOU1BPTkRFUiAoTk9UIElGRilcIl09bChcIkJOXCIpLFNbXCJTSS5NMS5CQVRUTEVGSUVMRCBTVVJWRUlMTEFOQ0VcIl09bChcIkJTXCIpLFNbXCJTSS5NMS5DT05UUk9MTEVEIEFQUFJPQUNIXCJdPWwoXCJDQVwiKSxTW1wiU0kuTTEuQ09OVFJPTExFRCBJTlRFUkNFUFRcIl09bChcIkNJXCIpLFNbXCJTSS5NMS5DRUxMVUxBUi9NT0JJTEVcIl09bChcIkNNXCIpLFNbXCJTSS5NMS5DT0FTVEFMIFNVUlZFSUxMQU5DRVwiXT1sKFwiQ1NcIiksU1tcIlNJLk0xLkNZQkVSXCJdPWwoXCJDWUJcIiksU1tcIlNJLk0xLkRFQ09ZL01JTUlDXCJdPWwoXCJEQ1wiKSxTW1wiU0kuTTEuREFUQSBUUkFOU01JU1NJT05cIl09bChcIkRUXCIpLFNbXCJTSS5NMS5FQVJUSCBTVVJWRUlMTEFOQ0VcIl09bChcIkVTXCIpLFNbXCJTSS5NMS5FQVJMWSBXQVJOSU5HXCJdPWwoXCJFV1wiKSxTW1wiU0kuTTEuRklSRSBDT05UUk9MXCJdPWwoXCJGQ1wiKSxTW1wiU0kuTTEuR1JPVU5EIE1BUFBJTkdcIl09bChcIkdNXCIpLFNbXCJTSS5NMS5IRUlHSFQgRklORElOR1wiXT1sKFwiSEZcIiksU1tcIlNJLk0xLkhBUkJPUiBTVVJWRUlMTEFOQ0VcIl09bChcIkhTXCIpLFNbXCJTSS5NMS5JREVOVElGSUNBVElPTiwgRlJJRU5EIE9SIEZPRSAoSU5URVJST0dBVE9SKVwiXT1sKFwiSUZcIiksU1tcIlNJLk0xLklOU1RSVU1FTlQgTEFORElORyBTWVNURU1cIl09bChcIklMXCIpLFNbXCJTSS5NMS5JT05PU1BIRVJJQyBTT1VORElOR1wiXT1sKFwiSVNcIiksU1tcIlNJLk0xLklERU5USUZJQ0FUSU9OLCBGUklFTkQgT1IgRk9FIChUUkFOU1BPTkRFUilcIl09bChcIklUXCIpLFNbXCJTSS5NMS5CQVJSQUdFIEpBTU1FUlwiXT1sKFwiSkJcIiksU1tcIlNJLk0xLkNMSUNLIEpBTU1FUlwiXT1sKFwiSkNcIiksU1tcIlNJLk0xLkRFQ0VQVElWRSBKQU1NRVJcIl09bChcIkpEXCIpLFNbXCJTSS5NMS5GUkVRVUVOQ1kgU1dFUFQgSkFNTUVSXCJdPWwoXCJKRlwiKSxTW1wiU0kuTTEuSkFNTUVSIChHRU5FUkFMKVwiXT1sKFwiSkdcIiksU1tcIlNJLk0xLk5PSVNFIEpBTU1FUlwiXT1sKFwiSk5cIiksU1tcIlNJLk0xLlBVTFNFRCBKQU1NRVJcIl09bChcIkpQXCIpLFNbXCJTSS5NMS5SRVBFQVRFUiBKQU1NRVJcIl09bChcIkpSXCIpLFNbXCJTSS5NMS5TUE9UIE5PSVNFIEpBTU1FUlwiXT1sKFwiSlNcIiksU1tcIlNJLk0xLlRSQU5TUE9OREVSIEpBTU1FUlwiXT1sKFwiSlRcIiksU1tcIlNJLk0xLk1JU1NJTEUgQUNRVUlTSVRJT05cIl09bChcIk1BXCIpLFNbXCJTSS5NMS5NSVNTSUxFIENPTlRST0xcIl09bChcIk1DXCIpLFNbXCJTSS5NMS5NSVNTSUxFIERPV05MSU5LXCJdPWwoXCJNRFwiKSxTW1wiU0kuTTEuTUVURU9ST0xPR0lDQUxcIl09bChcIk1FXCIpLFNbXCJTSS5NMS5NVUxUSS1GVU5DVElPTlwiXT1sKFwiTUZcIiksU1tcIlNJLk0xLk1JU1NJTEUgR1VJREFOQ0VcIl09bChcIk1HXCIpLFNbXCJTSS5NMS5NSVNTSUxFIEhPTUlOR1wiXT1sKFwiTUhcIiksU1tcIlNJLk0xLk1JU1NJTEUgVFJBQ0tJTkdcIl09bChcIk1UXCIpLFNbXCJTSS5NMS5OQVZJR0FUSU9OQUwvR0VORVJBTFwiXT1sKFwiTkFcIiksU1tcIlNJLk0xLk5BVklHQVRJT05BTC9ESVNUQU5DRSBNRUFTVVJJTkcgRVFVSVBNRU5UXCJdPWwoXCJORFwiKSxTW1wiU0kuTTEuTkFWSUdBVElPTi9URVJSQUlOIEZPTExPV0lOR1wiXT1sKFwiTlRcIiksU1tcIlNJLk0xLk5BVklHQVRJT05BTC9XRUFUSEVSIEFWT0lEQU5DRVwiXT1sKFwiTldcIiksU1tcIlNJLk0xLk9NTkktTElORSBPRiBTSUdIVCAoTE9TKVwiXT1sKFwiT0xcIiksU1tcIlNJLk0xLlBST1hJTUlUWSBVU0VcIl09bChcIlBGXCIpLFNbXCJTSS5NMS5QT0lOVC1UTy1QT0lOVCBMSU5FIE9GIFNJR0hUIChMT1MpXCJdPWwoXCJQUFwiKSxTW1wiU0kuTTEuSU5TVFJVTUVOVEFUSU9OXCJdPWwoXCJSSVwiKSxTW1wiU0kuTTEuUkFOR0UgT05MWVwiXT1sKFwiUk9cIiksU1tcIlNJLk0xLlNPTk9CVU9ZXCJdPWwoXCJTQlwiKSxTW1wiU0kuTTEuU0FURUxMSVRFIERPV05MSU5LXCJdPWwoXCJTRFwiKSxTW1wiU0kuTTEuU1BBQ0VcIl09bChcIlNQXCIpLFNbXCJTSS5NMS5TVVJGQUNFIFNFQVJDSFwiXT1sKFwiU1NcIiksU1tcIlNJLk0xLlNIRUxMIFRSQUNLSU5HXCJdPWwoXCJTVFwiKSxTW1wiU0kuTTEuU0FURUxMSVRFIFVQTElOS1wiXT1sKFwiU1VcIiksU1tcIlNJLk0xLlRBUkdFVCBBQ1FVSVNJVElPTlwiXT1sKFwiVEFcIiksU1tcIlNJLk0xLlRBUkdFVCBJTExVTUlOQVRJT05cIl09bChcIlRJXCIpLFNbXCJTSS5NMS5UUk9QT1NQSEVSSUMgU0NBVFRFUlwiXT1sKFwiVFNcIiksU1tcIlNJLk0xLlRBUkdFVCBUUkFDS0lOR1wiXT1sKFwiVFRcIiksU1tcIlNJLk0xLlVOS05PV05cIl09bChcIlVOXCIpLFNbXCJTSS5NMS5WSURFTyBSRU1PVElOR1wiXT1sKFwiVlJcIiksU1tcIlNJLk0xLkVYUEVSSU1FTlRBTFwiXT1sKFwiWFBcIiksU1tcIlNJLk0xLkFMUEhBXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBXCJ9LFNbXCJTSS5NMS5CUkFWT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiQlwifSxTW1wiU0kuTTEuQ0hBUkxJRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiQ1wifSxTW1wiU0kuTTEuREVMVEFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkRcIn0sU1tcIlNJLk0xLkVDSE9cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkVcIn0sU1tcIlNJLk0xLkZPWFRST1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkZcIn0sU1tcIlNJLk0xLkhPVEVMXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJIXCJ9LFNbXCJTSS5NMS5JTkRZXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJJXCJ9LFNbXCJTSS5NMS5NSUtFXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJNXCJ9LFNbXCJTSS5NMS5PU0NBUlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiT1wifSxTW1wiU0kuTTEuUEFQQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiUFwifSxTW1wiU0kuTTEuU0lFUlJBXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJTXCJ9LFNbXCJTSS5NMS5UQU5HT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVFwifSxTW1wiU0kuTTEuVU5JRk9STVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVVwifSxTW1wiU0kuTTIuQUxQSEFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBXCJ9LFNbXCJTSS5NMi5CUkFWT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkJcIn0sU1tcIlNJLk0yLkNIQVJMSUVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJDXCJ9LFNbXCJTSS5NMi5DWUJFUlwiXT1yKFwiQ1lCXCIpLFNbXCJTSS5NMi5ERUxUQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkRcIn0sU1tcIlNJLk0yLkVDSE9cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJFXCJ9LFNbXCJTSS5NMi5GT1hUUk9UXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiRlwifSxTW1wiU0kuTTIuR09MRlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkdcIn0sU1tcIlNJLk0yLklORFlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJJXCJ9LFNbXCJTSS5NMi5MSU1BXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiTFwifSxTW1wiU0kuTTIuTUlLRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIk1cIn0sU1tcIlNJLk0yLk5PVkVNQkVSXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiTlwifSxTW1wiU0kuTTIuUEFQQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlBcIn0sU1tcIlNJLk0yLlNJRVJSQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlNcIn0sU1tcIlNJLk0yLlRBTkdPXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVFwifSxTW1wiU0kuTTIuVU5JRk9STVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlVcIn0sU1tcIlNJLk0yLldISVNLRVlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJXXCJ9LFNbXCJTSS5NMy5TUEFDRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3NSxmb250c2l6ZToyNSx0ZXh0OlwiU1wifSxTW1wiU0kuTTMuR1JPVU5EXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5Ojc1LGZvbnRzaXplOjI1LHRleHQ6XCJHXCJ9LFMpUy5oYXNPd25Qcm9wZXJ0eShOKSYmKEkuaGFzT3duUHJvcGVydHkoTikmJmNvbnNvbGUud2FybihcIk92ZXJyaWRlIG9mOiBcIitOKSxuLmNhbGwodGhpcyxTW05dLFQpLElbTl09U1tOXSl9dmFyIHo9e3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltmXSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiSS1QLVMtLS0tLVwiXT1bXSxJW1wiSS1QLVNDLS0tLVwiXT1bXSxJW1wiSS1QLVNDRC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLkRFTFRBXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUi0tLS1cIl09W10sSVtcIkktUC1TUkQtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuREVMVEFcIl0sRVtcIlNJLk0yLlRBTkdPXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuU0lFUlJBXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUkktLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSU5EWVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXSxFW1wiU0kuTTMuU1BBQ0VcIl1dLElbXCJJLVAtU1JNLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSVC0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5UQU5HT1wiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSUy0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlBBUEFcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXSxFW1wiU0kuTTMuU1BBQ0VcIl1dLElbXCJJLUEtUy0tLS0tXCJdPVtdLElbXCJJLUEtU0MtLS0tXCJdPVtdLElbXCJJLUEtU0NDLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLk1JS0VcIl1dLElbXCJJLUEtU0NPLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLk9TQ0FSXCJdLEVbXCJTSS5NMi5MSU1BXCJdXSxJW1wiSS1BLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdXSxJW1wiSS1BLVNDUy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlVOSUZPUk1cIl1dLElbXCJJLUEtU1ItLS0tXCJdPVtdLElbXCJJLUEtU1JBSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5JTkRZXCJdXSxJW1wiSS1BLVNSQVMtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuQlJBVk9cIl1dLElbXCJJLUEtU1JDLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLUEtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktQS1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktQS1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXV0sSVtcIkktQS1TUkktLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSU5EWVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktQS1TUk1BLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl1dLElbXCJJLUEtU1JNRC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkRFTFRBXCJdXSxJW1wiSS1BLVNSTUctLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5HT0xGXCJdXSxJW1wiSS1BLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktQS1TUk1GLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktQS1TUlRJLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLUEtU1JUQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktQS1TUlRULS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLlRBTkdPXCJdXSxJW1wiSS1BLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXV0sSVtcIkktRy1TLS0tLS1cIl09W10sSVtcIkktRy1TQy0tLS1cIl09W10sSVtcIkktRy1TQ0MtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuTUlLRVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDTy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5PU0NBUlwiXSxFW1wiU0kuTTIuTElNQVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU0NTLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLlNJRVJSQVwiXSxFW1wiU0kuTTIuVU5JRk9STVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDVC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5UQU5HT1wiXSxFW1wiU0kuTTIuU0lFUlJBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1ItLS0tXCJdPVtdLElbXCJJLUctU1JBVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSQUEtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkItLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQlJBVk9cIl0sRVtcIlNJLk0yLlNJRVJSQVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSQ1MtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5DSEFSTElFXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkNBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkQtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuREVMVEFcIl0sRVtcIlNJLk0yLlRBTkdPXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JFLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkVDSE9cIl0sRVtcIlNJLk0yLldISVNLRVlcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSSC0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5IT1RFTFwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSSS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5JTkRZXCJdLEVbXCJTSS5NMi5GT1hUUk9UXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JNTS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkVDSE9cIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUk1BLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUk1HLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuR09MRlwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSTUYtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5GT1hUUk9UXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JTLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlNJRVJSQVwiXSxFW1wiU0kuTTIuVEFOR09cIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUlRBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLkFMUEhBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JUSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5JTkRZXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JUVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1TLVMtLS0tLVwiXT1bXSxJW1wiSS1TLVNDLS0tLVwiXT1bXSxJW1wiSS1TLVNDQy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5DSEFSTElFXCJdLEVbXCJTSS5NMi5NSUtFXCJdXSxJW1wiSS1TLVNDTy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5PU0NBUlwiXSxFW1wiU0kuTTIuTElNQVwiXV0sSVtcIkktUy1TQ1AtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuUEFQQVwiXSxFW1wiU0kuTTIuUEFQQVwiXV0sSVtcIkktUy1TQ1MtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5VTklGT1JNXCJdXSxJW1wiSS1TLVNSLS0tLVwiXT1bXSxJW1wiSS1TLVNSQVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuVEFOR09cIl1dLElbXCJJLVMtU1JBQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktUy1TUkNBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl1dLElbXCJJLVMtU1JDSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLVMtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktUy1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXV0sSVtcIkktUy1TUkgtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSE9URUxcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl1dLElbXCJJLVMtU1JJLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLklORFlcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl1dLElbXCJJLVMtU1JNTS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkVDSE9cIl1dLElbXCJJLVMtU1JNQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkFMUEhBXCJdXSxJW1wiSS1TLVNSTUctLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5HT0xGXCJdXSxJW1wiSS1TLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUk1GLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktUy1TUlMtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl1dLElbXCJJLVMtU1JUQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktUy1TUlRJLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLVMtU1JUVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUlUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVU5JRk9STVwiXSxFW1wiU0kuTTIuTk9WRU1CRVJcIl1dLElbXCJJLVUtUy0tLS0tXCJdPVtdLElbXCJJLVUtU0MtLS0tXCJdPVtdLElbXCJJLVUtU0NPLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLk9TQ0FSXCJdLEVbXCJTSS5NMi5MSU1BXCJdXSxJW1wiSS1VLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdXSxJW1wiSS1VLVNDUy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlVOSUZPUk1cIl1dLElbXCJJLVUtU1ItLS0tXCJdPVtdLElbXCJJLVUtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktVS1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktVS1TUk0tLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktVS1TUlMtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl1dLElbXCJJLVUtU1JULS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktVS1TUlUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVU5JRk9STVwiXSxFW1wiU0kuTTIuTk9WRU1CRVJcIl1dfX0sSD17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2NdLGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJPLVYtQS0tLS0tXCJdPVtFW1wiU1QuSUMuQVJTT04vRklSRVwiXV0sSVtcIk8tVi1NLS0tLS1cIl09W0VbXCJTVC5JQy5LSUxMSU5HIFZJQ1RJTVwiXV0sSVtcIk8tVi1NQS0tLS1cIl09W0VbXCJTVC5JQy5LSUxMSU5HIFZJQ1RJTVwiXSxFW1wiU1QuTTEuTVVSREVSXCJdXSxJW1wiTy1WLU1CLS0tLVwiXT1bRVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLEVbXCJTVC5NMS5FWEVDVVRJT04gKFdST05HRlVMIEtJTExJTkcpXCJdXSxJW1wiTy1WLU1DLS0tLVwiXT1bRVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLEVbXCJTVC5NMS5BU1NBU1NJTkFUSU9OXCJdXSxJW1wiTy1WLUItLS0tLVwiXT1bRVtcIlNULklDLkJPTUJcIl1dLElbXCJPLVYtWS0tLS0tXCJdPVtFW1wiU1QuSUMuQk9PQlkgVFJBUFwiXV0sSVtcIk8tVi1ELS0tLS1cIl09W0VbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXV0sSVtcIk8tVi1TLS0tLS1cIl09W0VbXCJTVC5JQy5TTklQSU5HXCJdXSxJW1wiTy1WLVAtLS0tLVwiXT1bRVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVtcIk8tVi1FLS0tLS1cIl09W0VbXCJTVC5JQy5FWFBMT1NJT05cIl1dLElbXCJPLVYtRUktLS0tXCJdPVtFW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEVbXCJTVC5JQy5JRURcIl1dLElbXCJPLUwtQi0tLS0tXCJdPVtFW1wiU1QuSUMuQkxBQ0sgTElTVCBMT0NBVElPTlwiXV0sSVtcIk8tTC1HLS0tLS1cIl09W0VbXCJTVC5JQy5HUkFZIExJU1QgTE9DQVRJT05cIl1dLElbXCJPLUwtVy0tLS0tXCJdPVtFW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXV0sSVtcIk8tTC1NLS0tLS1cIl09W0VbXCJTVC5JQy5NQVNTIEdSQVZFIExPQ0FUSU9OXCJdXSxJW1wiTy1PLVAtLS0tLVwiXT1bRVtcIlNULklDLlBBVFJPTExJTkdcIl1dLElbXCJPLU8tUi0tLS0tXCJdPVtdLElbXCJPLU8tUlctLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuV0lMTElOR1wiXV0sSVtcIk8tTy1SQy0tLS1cIl09W0VbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEVbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXV0sSVtcIk8tTy1ELS0tLS1cIl09W0VbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdXSxJW1wiTy1PLU0tLS0tLVwiXT1bRVtcIlNULklDLk1JTkUgTEFZSU5HXCJdXSxJW1wiTy1PLVktLS0tLVwiXT1bRVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVtcIk8tTy1ZVC0tLS1cIl09W0VbXCJTVC5JQy5SQURJTyBBTkQgVEVMRVZJU0lPTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbXCJPLU8tWVctLS0tXCJdPVtFW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLEVbXCJTVC5NMS5XUklUVEVOIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVtcIk8tTy1ZSC0tLS1cIl09W0VbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sRVtcIlNULk0xLkhPVVNFLVRPLUhPVVNFXCJdXSxJW1wiTy1PLUYtLS0tLVwiXT1bRVtcIlNULklDLlNFQVJDSElOR1wiXV0sSVtcIk8tTy1TLS0tLS1cIl09W0VbXCJTVC5JQy5TUFlcIl1dLElbXCJPLU8tTy0tLS0tXCJdPVtFW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl1dLElbXCJPLU8tRS0tLS0tXCJdPVtFW1wiU1QuSUMuRVhUT1JUSU9OXCJdXSxJW1wiTy1PLUgtLS0tLVwiXT1bXSxJW1wiTy1PLUhULS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJPLU8tSEEtLS0tXCJdPVtFW1wiU1QuSUMuSElKQUNLSU5HIChBSVJQTEFORSlcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIk8tTy1IVi0tLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEJPQVQpXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJPLU8tSy0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sSVtcIk8tTy1LQS0tLS1cIl09W0VbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEVbXCJTVC5NMS5LSUROQVBQSU5HXCJdLEVbXCJTVC5JQy5BVFRFTVBURUQgQ1JJTUlOQUwgQUNUSVZJVFlcIl1dLElbXCJPLU8tQS0tLS0tXCJdPVtFW1wiU1QuSUMuQVJSRVNUXCJdXSxJW1wiTy1PLVUtLS0tLVwiXT1bRVtcIlNULklDLkRSVUcgUkVMQVRFRCBBQ1RJVklUSUVTXCJdXSxJW1wiTy1PLUMtLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdXSxJW1wiTy1PLUNBLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdLEVbXCJTVC5NMS5DT01CQVRcIl1dLElbXCJPLU8tQ0ItLS0tXCJdPVtFW1wiU1QuSUMuQ09NUE9TSVRFIExPU1NcIl0sRVtcIlNULk0xLkFDQ0lERU5UXCJdXSxJW1wiTy1PLUNDLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdLEVbXCJTVC5NMS5PVEhFUlwiXV0sSVtcIk8tSS1SLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tSS1TLS0tLS1cIl09W0VbXCJTVC5JQy5TQUZFIEhPVVNFXCJdXSxJW1wiTy1JLUctLS0tLVwiXT1bRVtcIlNULklDLkdSQUZGSVRJXCJdXSxJW1wiTy1JLVYtLS0tLVwiXT1bRVtcIlNULklDLlZBTkRBTElTTS9MT09UL1JBTlNBQ0svUExVTkRFUi9TQUNLXCJdXSxJW1wiTy1JLUktLS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJW1wiTy1JLUQtLS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5EUlVHXCJdXSxJW1wiTy1JLUYtLS0tLVwiXT1bRVtcIlNULklDLklOVEVSTkFMIFNFQ1VSSVRZIEZPUkNFXCJdXSxJW1wiTy1QLS0tLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl1dLElbXCJPLVAtQS0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuTEVBREVSXCJdXSxJW1wiTy1QLUItLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlRBUkdFVEVEXCJdXSxJW1wiTy1QLUMtLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlRFUlJPUklTVFwiXV0sSVtcIk8tRy0tLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tRy1BLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuRElTUExBQ0VEIFBFUlNPTlMsIFJFRlVHRUVTLCBBTkQgRVZBQ1VFRVNcIl1dLElbXCJPLUctQi0tLS0tXCJdPVtFW1wiU1QuSUMuR1JPVVBcIl0sRVtcIlNULk0xLk5PTkdPVkVSTk1FTlRBTCBPUkdBTklaQVRJT04gKE5HTylcIl1dLElbXCJPLUctQy0tLS0tXCJdPVtFW1wiU1QuSUMuR1JPVVBcIl0sRVtcIlNULk0xLlRFUlJPUklTVFwiXV0sSVtcIk8tRy1ELS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuUkVMSUdJT1VTXCJdXSxJW1wiTy1HLUUtLS0tLVwiXT1bRVtcIlNULklDLkdST1VQXCJdLEVbXCJTVC5NMS5GT1JFSUdOIEZJR0hURVJTXCJdXSxJW1wiTy1HLUYtLS0tLVwiXT1bRVtcIlNULklDLkdST1VQXCJdLEVbXCJTVC5NMS5HQU5HXCJdXSxJW1wiTy1SLS0tLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlJBUEVcIl1dLElbXCJPLVItQS0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuUkFQRVwiXSxFW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdXX19O2Z1bmN0aW9uIFYoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1cIkhvc3RpbGVcIiE9Q3x8ZT9FLmljb25Db2xvcltDXTpcInJnYigyNTUsIDAsIDApXCIsUz1cIkhvc3RpbGVcIiE9Q3x8ZT9FLmZpbGxDb2xvcltDXTpcInJnYigyNTUsIDAsIDApXCIsTj10Lm51bWJlclNJREMsTz1FLndoaXRlW0NdLEc9e307Zm9yKHZhciBvIGluIEdbXCJUUC5ERVNUUk9ZXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMCw0NSA4NSw0Ni43NSBtIDMwLDE2LjUgODUsNDYuNzUgTSAwLDE1NSA4NSwxMDguMjUgTSAxMTUsOTEuNzUgMjAwLDQ1XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkRcIn1dOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDAsMTU1IDIwMCw0NSBNIDAsNDUgMjAwLDE1NVwifSxHW1wiVFAuSU5URVJESUNUXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTk0LjIwMyw2NS42Njc0IDUuNDksLTIwLjQ5MDQgLTIwLjQ5LC01LjQ5MDQgTSAxMTUsOTEuNzUgMjAwLDQ1IE0gMCwxNTUgODUsMTA4LjI1IE0gMTg1LDg1IGwgMTUsMTUgLTE1LDE1IG0gLTcwLC0xNSA4NSwwIG0gLTIwMCwwIDg1LDBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiSVwifV06e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAwLDEwMCAyMDAsMCBNIDAsMTU1IDIwMCw0NS4yIE0gMTg1LDg1IGwgMTUsMTUgLTE1LDE1IG0gOS4yLC00OS4zIDUuNSwtMjAuNSAtMjAuNSwtNS41XCJ9LEdbXCJUUC5ORVVUUkFMSVpFXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTE1LDEwOC4yNSAyMDAsMTU1IE0gMCw0NSA4NSw5MS43NVwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAxMTUsOTEuNzUgMjAwLDQ1IE0gMCwxNTUgODUsMTA4LjI1XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIk5cIn1dOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDAsNDUgMjAwLDE1NVwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAwLDE1NSAyMDAsNDVcIn1dLEdbXCJUUC5TVVBQUkVTU1wiXT1SfHxOP1t7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAxMTUsMTA4LjI1IDIwMCwxNTUgTSAwLDQ1IDg1LDkxLjc1XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDExNSw5MS43NSAyMDAsNDUgTSAwLDE1NSA4NSwxMDguMjVcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifV06W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMCw0NSAyMDAsMTU1XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDAsMTU1IDIwMCw0NVwifV0sR1tcIlRQLkRBVFVNXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLDUwIDAsNTAgNTAsMCBDIDE1MCw3Mi4zODU4IDEyNy42MTQsNTAgMTAwLDUwIFogbSAwLDUwIC01MCwwIGMgMCwyNy42MTQgMjIuMzg1OCw1MCA1MCw1MCB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiVFAuQlJJRUYgQ09OVEFDVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsMCA3MCwwIG0gLTM1LDgwIDAsLTgwIG0gMCwxMDAgLTQ1LC0yMCA5MCwwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4Ojc1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIkJcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEyNSx5OjU1LGZvbnRzaXplOjQ1LHRleHQ6XCJDXCJ9XSxHW1wiVFAuTE9TVCBDT05UQUNUXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSwwIDcwLDAgbSAtMzUsODAgMCwtODAgbSAwLDEwMCAtNDUsLTIwIDkwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6NzUseTo1NSxmb250c2l6ZTo0NSx0ZXh0OlwiTFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTI1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5TSU5LRVJcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDE1IDAsNjUgTSA2MCwxNSA4MCwwIDEwMCwxNSAxMjAsMCAxNDAsMTVcIn0se3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDEwMCA1NSw4MCAxNDUsODAgWlwifV0sR1tcIlRQLlRSSUFMIFRSQUNLXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSwwIDcwLDAgbSAtMzUsODAgMCwtODAgbSAwLDEwMCAtNDUsLTIwIDkwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6NzUseTo1NSxmb250c2l6ZTo0NSx0ZXh0OlwiVFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTI1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIlRcIn1dLEdbXCJUUC5TT05PQlVPWVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMDAsNjAgbCAwLC0zNSAxMCwxMCAwLC00NVwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjQwfV0sR1tcIlRQLlNPTk9CVU9ZIFBBVFRFUk4gQ0VOVEVSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUFwifV0sR1tcIlRQLlNPTk9CVU9ZIERJRkFSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiRFwifV0sR1tcIlRQLlNPTk9CVU9ZIExPRkFSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTFwifV0sR1tcIlRQLlNPTk9CVU9ZIENBU1NcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJDXCJ9XSxHW1wiVFAuU09OT0JVT1kgRElDQVNTXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifV0sR1tcIlRQLlNPTk9CVU9ZIEJUXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiQlwifV0sR1tcIlRQLlNPTk9CVU9ZIEFOTVwiXT1bR1tcIlRQLlNPTk9CVU9ZXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dLEdbXCJUUC5TT05PQlVPWSBWTEFEXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiVlwifV0sR1tcIlRQLlNPTk9CVU9ZIEFUQUNcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJUXCJ9XSxHW1wiVFAuU09OT0JVT1kgQkFSUkFcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJCUlwifV0sR1tcIlRQLlNPTk9CVU9ZIEJBVEhZVEhFUk1PR1JBUEggVFJBTlNNSVRUSU5HIFNPTk9CVU9ZIChCVClcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJCXCJ9XSxHW1wiVFAuU09OT0JVT1kgQ09NTUFORCBBQ1RJVkUgTVVMVElCRUFNIFNPTk9CVU9ZIChDQU1CUylcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJDTVwifV0sR1tcIlRQLlNPTk9CVU9ZIEVYUEVOREFCTEUgUkVMSUFCTEUgQUNPVVNUSUMgUEFUSCBTT05PQlVPWSAoRVJBUFMpXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiRVwifV0sR1tcIlRQLlNPTk9CVU9ZIFJPXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9XSxHW1wiVFAuU09OT0JVT1kgRVhQSVJFRFwiXT1bR1tcIlRQLlNPTk9CVU9ZXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNDAsNjAgbCAxMjAsODAgTSA0MCwxNDAgbCAxMjAsLTgwXCJ9XSxHW1wiVFAuU0VBUkNIXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDgwIDIwLDIwIC0yMCwyMCA0MCwwIC0yMCwtMjAgMjAsLTIwIHogTSA1MCwxNTAgMTUwLDUwIE0gNTAsNTAgMTUwLDE1MFwifSxHW1wiVFAuU0VBUkNIIEFSRUFcIl09W0dbXCJUUC5TRUFSQ0hcIl0sUnx8Tj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjYwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxNDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiU0FcIn1dLEdbXCJUUC5ESVAgUE9TSVRJT05cIl09W0dbXCJUUC5TRUFSQ0hcIl0sUnx8Tj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjYwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJEXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxNDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlBcIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiRElQXCJ9XSxHW1wiVFAuU0VBUkNIIENFTlRFUlwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLDEwMCAtNTAsMTAgMCwtMjAgeiBtIDAsMCAxMCw1MCAtMjAsMCB6IG0gMCwwIDUwLC0xMCAwLDIwIHogbSAwLDAgLTEwLC01MCAyMCwwIHpcIn0sR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNjAsMTYwIDQwLDE2MCA0MCw0MCAxNjAsNDAgWlwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5OQVZJR0FUSU9OQUwgUkVGRVJFTkNFXCJdPSFOJiZSP3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTYwLDE2MCA0MCwxNjAgNDAsNDAgMTYwLDQwIFogTSAxNjAsMTYwIDQwLDQwIE0gNDAsMTYwIDE2MCw0MFwifTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDE2MCwxNjAgNDAsNDAgTSA0MCwxNjAgMTYwLDQwXCJ9LEdbXCJUUC5TUEVDSUFMIFBPSU5UXCJdPVtHW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5BSVJGSUVMRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAzNSwxMjUgMTY1LDYwIG0gLTEzNSw0MCAxNDAsMFwifV0sR1tcIlRQLkRMUlBcIl09W0dbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIkRcIn1dLEdbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJQXCJ9XSxHW1wiVFAuUFJFLUxBTkRGQUxMIFdBWVBPSU5UXCJdPVtHW1wiVFAuUkVGRVJFTkNFIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIlBMXCJ9XSxHW1wiVFAuTUFSU0hBTEwgUE9JTlRcIl09W0dbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1MCxmb250c2l6ZTo0MCx0ZXh0OlwiTVwifV0sR1tcIlRQLlJFRkVSRU5DRSBQT0lOVCBXQVlQT0lOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJXXCJ9XSxHW1wiVFAuQ09SUklET1IgVEFCXCJdPVtHW1wiVFAuUkVGRVJFTkNFIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIkNcIn1dLEdbXCJUUC5FTkVNWSBQT0lOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJFTllcIn1dLEdbXCJUUC5QT0lOVCBPRiBJTlRFUkVTVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk0gMTI5LjAyMSw0MS45NTcgQyAxMjEuNDgsNDkuOTQ1OCAxMTAuOTg2LDU0LjQ4MTYgMTAwLDU0LjUgODkuMDQzMiw1NC40OTI4IDc4LjU2OSw0OS45OTE0IDcxLjAyMzQsNDIuMDQ2OSBMIDEwMCwxMDAgWlwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjE1LHI6NDB9XSxHW1wiUE9JTlQgT0YgSU5URVJFU1Qg4oCTIExBVU5DSCBFVkVOVFwiXT1bR1tcIlRQLlBPSU5UIE9GIElOVEVSRVNUXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTozMCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHQ6XCJMRVwifV0sR1tcIlRQLlNISVAgQVJFQSBPRiBJTlRFUkVTVCAoQUVHSVMgT05MWSlcIl09e3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0sR1tcIlRQLkFDVElWRSBNQU5PRVVWUkUgQVJFQSAoQUVHSVMgT05MWSlcIl09e3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLHN0cm9rZTpcInJnYigyNTQsMjAzLDQ3KVwiLGN4OjEwMCxjeToxMDAscjo2MH0sR1tcIlRQLlBMQU4gU0hJUFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOlMsc3Ryb2tlOlMsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTpTLGN4OjEwMCxjeToxMDAscjo0NSxmaWxsOiExfV0sR1tcIlRQLkFJTSBQT0lOVFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjM1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjQ1LGZpbGw6ITF9XSxHW1wiVFAuREVGRU5ERUQgQVNTRVRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMzUgMCwtMzAgMjAsMCAwLDMwIG0gLTUwLDAgMCwtNTAgLTEwLDAgMCwtMjAgMjAsMCAwLDEwIDIwLDAgMCwtMTAgMjAsMCAwLDEwIDIwLDAgMCwtMTAgMjAsMCAwLDIwIC0xMCwwIDAsNTAgelwifSxHW1wiVFAuQ0hFTUlDQUwgRVZFTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTEwLDYwIEMgMTEwLDQwIDExNSwyNSA4MCwyMCBNIDkwLDYwIEMgOTAsNDAgODUsMjUgMTIwLDIwIG0gLTIwLDgwIC02MCwtMTEwIDEyMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDIwIGMgMTAsMCAxMCwxNSAwLDE1IC0xMCwwIC0xMCwtMTUgMCwtMTUgeiBNIDgwLDM1IGMgMTAsMCAxMCwtMTUgMCwtMTUgLTEwLDAgLTEwLDE1IDAsMTUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLEdbXCJUUC5DSEVNSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMTAsNjAgQyAxMTAsNDAgMTE1LDI1IDgwLDIwIE0gOTAsNjAgQyA5MCw0MCA4NSwyNSAxMjAsMjAgbSAtMjAsODAgLTYwLC0xMTAgMTIwLDAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMjAgYyAxMCwwIDEwLDE1IDAsMTUgLTEwLDAgLTEwLC0xNSAwLC0xNSB6IE0gODAsMzUgYyAxMCwwIDEwLC0xNSAwLC0xNSAtMTAsMCAtMTAsMTUgMCwxNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLEdbXCJUUC5CSU9MT0dJQ0FMIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxHW1wiVFAuQklPTE9HSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMTAsNjAgQyAxMTAsNDAgMTE1LDI1IDgwLDIwIE0gOTAsNjAgQyA5MCw0MCA4NSwyNSAxMjAsMjAgbSAtMjAsODAgLTYwLC0xMTAgMTIwLDAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMjAgYyAxMCwwIDEwLDE1IDAsMTUgLTEwLDAgLTEwLC0xNSAwLC0xNSB6IE0gODAsMzUgYyAxMCwwIDEwLC0xNSAwLC0xNSAtMTAsMCAtMTAsMTUgMCwxNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozMCx0ZXh0OlwiQlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLEdbXCJUUC5OVUNMRUFSIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJOXCJ9XSxHW1wiVFAuUkFESU9MT0dJQ0FMIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxHW1wiVFAuUkFESU9MT0dJQ0FMIOKAkyBUT1hJQyBJTkRVU1RSSUFMIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4NSxmb250c2l6ZTozMCx0ZXh0OlwiVFwifV0sR1tcIlRQLkRST1AgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzAsMTAwIDAsLTQwIG0gLTYwLDQwIDAsLTQwIG0gNjAsNDAgMCwwIGMgMCw4LjI4NCAtNi43MTYsMTUgLTE1LDE1IC04LjI4NCwwIC0xNSwtNi43MTYgLTE1LC0xNSBtIDAsMCAwLDAgYyAwLDguMjg0IC02LjcxNTcsMTUgLTE1LDE1IC04LjI4NDMsMCAtMTUsLTYuNzE2IC0xNSwtMTUgbSAzMCwtNDAgMCw0MFwifSxHW1wiVFAuRU5UUlkgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsMTAwIDAsLTUwIG0gLTM1LDE1IDM1LDM1IDM1LC0zNSBtIC04NSwzNSAxMDAsMFwifSxHW1wiVFAuQUlSIERFVE9OQVRJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTUwIDkwLDAgbSAtMzUsLTk1IDUsMjAgMTUsLTEwIDAsMTUgMTUsNSAtMTUsMTAgMTUsMTAgLTE1LDUgNSwxNSAtMjAsLTUgLTUsMjAgLTEwLC0xNSAtMTAsMjAgLTUsLTI1IC0yMCwxMCA1LC0xNSBMIDU1LDEwNSA3MCw5NSA2MCw4NSA3MCw4MCA3MCw2NSA4NSw3NSA5MCw1NSAxMDAsNzAgWlwiLGZpbGw6ITF9LEdbXCJUUC5HUk9VTkQgWkVST1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTAwIDI4IEMgMTAwIDI4IDY1LjQzOTggMjkuODI2MSA2MS42NTQzIDU1IEMgNjAuMjgyNiA2NC4xMjEzIDc1LjAxMTUgNzAuNDg4NCA4Mi4yMzYzIDcxLjY1NDMgQyA4OS40NjExIDcyLjgyMDEgOTEuNzI3NyA1NS4zNDYyIDk4LjUwOTggNTYuMDM3MSBMIDkzIDkwIEMgOTMgOTAgNzAgOTAgNjcgOTcgQyA2NS4wMzA0IDEwMS41OTYgMTAwIDEwMCAxMDAgMTAwIEMgMTAwIDEwMCAxMzQuOTcgMTAxLjU5NiAxMzMgOTcgQyAxMzAgOTAgMTA3IDkwIDEwNyA5MCBMIDEwMS40OSA1Ni4wMzcxIEMgMTA4LjI3MiA1NS4zNDYyIDExMC41MzkgNzIuODIwMSAxMTcuNzY0IDcxLjY1NDMgQyAxMjQuOTg4IDcwLjQ4ODQgMTM5LjcxOCA2NC4xMjEzIDEzOC4zNDYgNTUgQyAxMzQuNTYgMjkuODI2MSAxMDAgMjggMTAwIDI4IHpcIn0sR1tcIlRQLkxBVU5DSEVEIFRPUlBFRE8gKEFFR0lTIE9OTFkpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDE1MCw5MCAwLDIwIG0gLTEwLC0xMCAxMCwwIG0gLTk3LC0xMCA4NCwwIGMgMS42NjIsMCAzLDEuMzM4IDMsMyBsIDAsMTQgYyAwLDEuNjYyIC0xLjMzOCwzIC0zLDMgbCAtODQsMCBjIC0xLjY2MiwwIC0zLC0xLjMzOCAtMywtMyBsIDAsLTE0IGMgMCwtMS42NjIgMS4zMzgsLTMgMywtMyB6XCJ9LEdbXCJUUC5NU0wgREVURUNUIFBPSU5UXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDk1LDEwMCAwLC01NSAtMTAsMCAxNSwtMTUgMTUsMTUgLTEwLDAgMCw1NSBtIC01NSwwIDEwMCwwXCJ9LEdbXCJUUC5BQ09VU1RJQyBDT1VOVEVSIE1FQVNVUkUgKERFQ09ZKVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDcuNSw1NSA5Mi41NTE4LDcwIDEwNy41LDg1IFogTSA1MCwzMCAxNTAsMzAgbSAtOTAsNzAgMCwtNSA4MCwwIDAsNSB6IG0gNzAsLTQ1IC0xNSwxNSAxNSwxNSB6IE0gODUsNTUgNzAsNzAgODUsODUgWiBtIDE1LC0yNSAwLDMzXCJ9LEdbXCJUUC5FTEVDVFJPTklDIENPVU5URVIgTUVBU1VSRVMgKEVDTSkgREVDT1lcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyMCAtMjAsMTAgMjAsMTAgeiBtIDMwLDAgLTIwLDEwIDIwLDEwIDAsLTIwIHogbSAzMCwwIC0yMCwxMCAyMCwxMCB6IG0gLTI1LC0yMCBjIDAsMTAgLTEwLDE4IC0xOS40LDE0IC05LjQsLTIgLTEzLjgsLTE0LjcgLTgsLTIyLjUgNS4yLC04LjIgMTguNCwtOC43IDI0LjQsLTAuOCAyLDIuNiAzLDUuOSAzLDkuMyB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsNTAgMCwxMDAgMTAwLDAgMCwtMTAwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjgwLGZvbnRzaXplOjMwLHRleHQ6XCJFQ01cIn1dLEdbXCJUUC5JTVBBQ1QgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNTAsMTAwIDQwLC0xMCAxMCwtNDAgMTAsNDAgNDAsMTAgLTQwLDEwIC0xMCw0MCAtMTAsLTQwIC00MCwtMTBcIn0sR1tcIlRQLlBSRURJQ1RFRCBJTVBBQ1QgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCIxMiw1XCIsZDpcIm0gNTAsMTAwIDQwLC0xMCAxMCwtNDAgMTAsNDAgNDAsMTAgLTQwLDEwIC0xMCw0MCAtMTAsLTQwIC00MCwtMTBcIn0sR1tcIlRQLkZPUk1BVElPTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw1MCAwLDEwMCBtIC01MCwtNTAgMTAwLDBcIn0sR1tcIlRQLkhBUkJPUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDgwLDE0MCA1MCw2MCAxNTAsNjAgMTIwLDE0MFwifSxHW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl09W0dbXCJUUC5IQVJCT1JcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUVwifV0sR1tcIlRQLkhBUkJPUiBQT0lOVCBBXCJdPVtHW1wiVFAuSEFSQk9SXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dLEdbXCJUUC5IQVJCT1IgUE9JTlQgWVwiXT1bR1tcIlRQLkhBUkJPUlwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJZXCJ9XSxHW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl09W0dbXCJUUC5IQVJCT1JcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiWFwifV0sR1tcIlRQLlJPVVRFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTM4LjQ4NCw3Ni44MiBjIDAsLTcuNDgyMyA2LjA2NiwtMTMuNTQ3OCAxMy41NDgsLTEzLjU0OCA3LjQ4MywtM2UtNCAxMy41NDksNi4wNjUzIDEzLjU0OSwxMy41NDggbSAtMjcuMDk3LDAgMCwwIGMgMCw2Ljk0ODQgLTUuNjM0LDEyLjU4MDcgLTEyLjU4MiwxMi41OCAtNi45NDgsLTRlLTQgLTEyLjU4LC01LjYzMjQgLTEyLjU4LC0xMi41OCBtIC0yNy4wOTcsMCBjIDJlLTQsLTcuNDgyMyA2LjA2NTcsLTEzLjU0NzggMTMuNTQ4LC0xMy41NDggNy40ODMsLTNlLTQgMTMuNTQ5LDYuMDY1MyAxMy41NDksMTMuNTQ4IG0gLTc5LjM1NTQsMCBjIDJlLTQsLTcuNDgyNCA2LjA2NiwtMTMuNTQ4IDEzLjU0ODQsLTEzLjU0OCA3LjQ4MjQsMCAxMy41NDgyLDYuMDY1NiAxMy41NDg0LDEzLjU0OCBtIDI1LjE2MTYsMCAwLDAgQyA4Ni4yMjQ2LDgzLjc2ODEgODAuNTkxOCw4OS40MDAzIDczLjY0MzcsODkuNCA2Ni42OTYsODkuMzk5OCA2MS4wNjM4LDgzLjc2NzcgNjEuMDYzNCw3Ni44MiBtIDc3LjQyMDYsNDcuMzI4IGMgMCwtNy40ODIgNi4wNjYsLTEzLjU0OCAxMy41NDgsLTEzLjU0OCA3LjQ4MywwIDEzLjU0OSw2LjA2NSAxMy41NDksMTMuNTQ4IG0gLTI3LjA5NywwIDAsMCBjIDAsNi45NDggLTUuNjM0LDEyLjU4MSAtMTIuNTgyLDEyLjU4IC02Ljk0OCwwIC0xMi41OCwtNS42MzIgLTEyLjU4LC0xMi41OCBtIC0yNy4wOTcsMCBjIDJlLTQsLTcuNDgyIDYuMDY1NywtMTMuNTQ4IDEzLjU0OCwtMTMuNTQ4IDcuNDgzLDAgMTMuNTQ5LDYuMDY1IDEzLjU0OSwxMy41NDggbSAtNzkuMzU1NCwwIGMgMmUtNCwtNy40ODIgNi4wNjYsLTEzLjU0OCAxMy41NDg0LC0xMy41NDggNy40ODI0LDAgMTMuNTQ4Miw2LjA2NiAxMy41NDg0LDEzLjU0OCBtIDI1LjE2MTYsMCAwLDAgYyAtNGUtNCw2Ljk0OCAtNS42MzMyLDEyLjU4IC0xMi41ODEzLDEyLjU4IC02Ljk0NzcsMCAtMTIuNTc5OSwtNS42MzIgLTEyLjU4MDMsLTEyLjU4IG0gLTI3LjA5NjgsLTIzLjY2NCAxMzIuNTE4NCwwXCJ9LEdbXCJUUC5ST1VURSBSRU5ERVpWT1VTXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlJPVVRFIERJVkVSU0lPTlNcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJEXCJ9XSxHW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJXXCJ9XSxHW1wiVFAuUk9VVEUgUElNXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifV0sR1tcIlRQLlJPVVRFIFBPSU5UIFJcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJQXCJ9XSxHW1wiVFAuUElDS0VUIFJPVVRFXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUEtcIn1dLEdbXCJUUC5QT0lOVCBSIFJPVVRFXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlJFTkRFWlZPVVMgUk9VVEVcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJSWlwifV0sR1tcIlRQLkFJUiBDT05UUk9MXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTQwLDE2NSAwLC0xMzAgbSAtODAsMCAwLDEzMFwifSxHW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5DT01CQVQgQUlSIFBBVFJPTCAoQ0FQKVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5BSVJCT1JORSBFQVJMWSBXQVJOSU5HIChBRVcpXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiV1wifV0sR1tcIlRQLlRBTktJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9LE58fFI/W106e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XSxHW1wiVFAuRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlI/XCJBU1dcIjpcIkFTXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkZcIn0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XV0sR1tcIlRQLlJPVEFSWSBXSU5HXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTnx8Uj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjMyLHRleHQ6XCJBU1dcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsODAgMCw0MCA3MCwtNDAgMCw0MCAtNzAsLTQwXCIsc3Ryb2tlOiExfV06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkhcIn0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XV0sR1tcIlRQLlNVQ0FQIC0gRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlwiU1VXXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV0sR1tcIlRQLlNVQ0FQIC0gUk9UQVJZIFdJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzIsdGV4dDpcIkFTV1wifSx7dHlwZTpcInBhdGhcIixkOlwibSA2NSw4MCAwLDQwIDcwLC00MCAwLDQwIC03MCwtNDBcIixzdHJva2U6ITF9XSxHW1wiVFAuTUlXIC0gRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlI/XCJNSVdcIjpcIk1XXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV0sR1tcIlRQLk1JVyAtIFJPVEFSWSBXSU5HXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjMyLHRleHQ6Uj9cIk1JV1wiOlwiTVdcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsODAgMCw0MCA3MCwtNDAgMCw0MCAtNzAsLTQwXCIsc3Ryb2tlOiExfV0sR1tcIlRQLlNUUklLRSBJUFwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuQ09SUklET1IgVEFCIFBPSU5UXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiQ1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5BSVIgQ09OVFJPTCBSRU5ERVpWT1VTXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ok58fFI/MTE1OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiUlpcIn1dLEdbXCJUUC5DQVAgU1RBVElPTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5BRVcgU1RBVElPTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIldcIn1dLEdbXCJUUC5UQUNBTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIlRcIn0sTnx8Uj9bXTp7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5SRVBMRU5JU0hNRU5UIFNUQVRJT05cIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJSUFwifV0sR1tcIlRQLlRBTktJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9XSxHW1wiVFAuVE9NQ0FUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTnx8Uj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJUQ1wifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuUkVTQ1VFXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJSU1wifTpSP3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJDXCJ9Olt7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJSXCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV1dLEdbXCJUUC5SRVBMRU5JU0hcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSxOfHxSP3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJQXCJ9Olt7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJGXCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV1dLEdbXCJUUC5NQVJTSEFMTFwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuVU5NQU5ORUQgQUVSSUFMIFNZU1RFTVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3MCw4NSAzMCwxNSAzMCwtMTUgMCwxNSAtMzAsMTUgLTMwLC0xNSB6XCJ9XSxHW1wiVFAuVlRVQVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3MCw5NSAzMCwxNSAzMCwtMTUgMCwzMCAtMzAsLTE1IC0zMCwxNSB6IG0gMCwtMjUgMzAsMTUgMzAsLTE1IDAsMTUgLTMwLDE1IC0zMCwtMTUgelwifV0sR1tcIlRQLk9SQklUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifV0sR1tcIlRQLk9SQklUIC0gRklHVVJFIEVJR0hUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJGOFwifV0sR1tcIlRQLk9SQklUIC0gUkFDRSBUUkFDS1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIk9cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1MCxmb250c2l6ZTo0MCx0ZXh0OlwiUlRcIn1dLEdbXCJUUC5PUkJJVCAtIFJBTkRPTSwgQ0xPU0VEXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJSQ1wifV0sR1tcIlRQLkFDVElPTiBQT0lOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYwLDQ1IDgwLDAgbSAtNDAsNTUgLTQwLC01NSAwLC0xMDUgODAsMCAwLDEwNSB6XCJ9LEdbXCJUUC5BQ1RJT04gQ0hFQ0sgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQ0tQXCJ9XSxHW1wiVFAuQ09OVEFDVCBQT0lOVFwiXT1OP3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNTAsNTAgMTUwLDUwIDE1MCwxNTAgNTAsMTUwelwifTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwxMDAgMCwtMzUgLTQ1LDAgMCwtNzUgOTAsMCAwLDc1IC00NSwwXCJ9LEdbXCJUUC5DRU5UUkUgT0YgTUFJTiBFRkZPUlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTU1LDEwMCAwLC0zNSBNIDQ1LDEwMCA0NSw2NSBtIDg4LDAgMCwzNSBtIC0yMiwtMzUgMCwzNSBtIC0yMiwtMzUgMCwzNSBtIC0yMiwwIDAsLTM1IG0gLTM3LDcwIDAsLTM1IDE0MCwwIDAsNDBcIn1dLEdbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTM1IDcwLC03MCBtIC03MCwwIDcwLDcwXCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiVFAuREVDSVNJT04gUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA5OS45OTk4LDI1LjU4ODYgMTE3LjA2MSw3Ni41MTkyIDE3MC43Nyw3Ny4wMDU0IDEyNy42MDQsMTA4Ljk2OCAxNDMuNzM4LDE2MC4yIDEwMCwxMjkuMDI0IDU2LjI2MjQsMTYwLjIgNzIuMzk2NywxMDguOTY4IDI5LjIzMDYsNzcuMDA1OSA4Mi45NDAzLDc2LjUxOTIgWlwifSxHW1wiVFAuRElTVFJFU1MgQ0FMTFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJTT1NcIn1dLEdbXCJUUC5FTlRSWSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVDXCJ9XSxHW1wiVFAuRkxZLVRPLVBPSU5UIChTT05PQlVPWSlcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiRlRQXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozNSx0ZXh0OlwiU0JZXCJ9XSxHW1wiVFAuRkxZLVRPLVBPSU5UIChXRUFQT04pXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkZUUFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzUsdGV4dDpcIldQTlwifV0sR1tcIlRQLkZMWS1UTy1QT0lOVCAoTk9STUFMKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJGVFBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjM1LHRleHQ6XCJOUk1cIn1dLEdbXCJUUC5BQ1RJT04gTElOS1VQIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkxVXCJ9XSxHW1wiVFAuQUNUSU9OIFBBU1NBR0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUFBcIn1dLEdbXCJUUC5BQ1RJT04gUkFMTFkgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUkxZXCJ9XSxHW1wiVFAuQUNUSU9OIFJFTEVBU0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUlBcIn1dLEdbXCJUUC5BQ1RJT04gU1RBUlQgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiU1BcIn1dLEdbXCJUUC5BQ1RJT04gQU1ORVNUWSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBTU5cIn1dLEdbXCJUUC5XQVlQT0lOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gNjUsMTM1IDcwLC03MCBtIC03MCwwIDcwLDcwXCJ9LEdbXCJUUC5DT01CQVRBTlQgU1RBVElPTlwiXT1bR1tcIlRQLldBWVBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiQ0JUXCJ9XSxHW1wiVFAuUElDS0VUIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIlBLVFwifV0sR1tcIlRQLkFTVyBTSElQIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIkFTV1wifV0sR1tcIlRQLlJFUExFTklTSE1FTlQgQVQgU0VBIChSQVMpIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIlJBU1wifV0sR1tcIlRQLlJFU0NVRSBTVEFUSU9OXCJdPVtHW1wiVFAuV0FZUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4Ojc1LHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJSU0NcIn1dLEdbXCJUUC5TVUJNQVJJTkUgU1RBVElPTlwiXT1bR1tcIlRQLldBWVBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VCXCJ9XSxHW1wiVFAuQVNXIFNVQk1BUklORSBTVEFUSU9OXCJdPVtHW1wiVFAuV0FZUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4Ojc1LHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJBU1cvU1VCXCJ9XSxHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDMwLDYwIDE0MCwwIG0gLTE0MCw4MCAxNDAsMFwifSxHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC4oVVNWKSBDT05UUk9MIFNUQVRJT05cIl09W0dbXCJUUC5TRUEgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsMTE1IDQ1LC0yMCAwLC0xNSAtNDUsMjAgLTQ1LC0yMCAwLDE1IHpcIn1dLEdbXCJUUC4oVVNWKVwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU1LDEwMCA0NSwyMCA0NSwtMjAgMCwxNSAtNDUsMjAgLTQ1LC0yMCB6XCJ9XSxHW1wiVFAuKFJNVikgVVNWIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiUk1WXCJ9XSxHW1wiVFAuVVNWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSBTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC4oVVNWKVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTUsZm9udHNpemU6NDAsdGV4dDpcIk1XXCJ9XSxHW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VXXCJ9XSxHW1wiVFAuVVNWIC0gTUlXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiTUlXXCJ9XSxHW1wiVFAuQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFNVUkZBQ0UgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTVdcIn1dLEdbXCJUUC5OT04tQ09NQkFUQU5UIFNVUkZBQ0UgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTkNcIn1dLEdbXCJUUC5TVVcgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJTVVdcIn1dLEdbXCJUUC5NSVcgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJNSVdcIn1dLEdbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJQS1wifV0sR1tcIlRQLlJFTkRFWlZPVVMgQ09OVFJPTCBQT0lOVFwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlpcIn1dLEdbXCJUUC5SRVBMRU5JU0hNRU5UIEFUIFNFQSBTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC5TRUEgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJBU1wifV0sR1tcIlRQLlJFU0NVRSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJSU1wifV0sR1tcIlRQLlJFUExFTklTSE1FTlQgQ09OVFJPTCBQT0lOVFwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlBcIn1dLEdbXCJUUC5OT05DT01CQVRBTlQgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJOQ1wifV0sR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzAsMTQwIDE0MCwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNFwiLGQ6XCJtIDMwLDYwIDE0MCwwXCJ9XSxHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC4oVVVWKSBDT05UUk9MIFNUQVRJT05cIl09W0dbXCJUUC5TVUIgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsMTE1IDQ1LC0yMCAwLC0xNSAtNDUsMjAgLTQ1LC0yMCAwLDE1IHpcIn1dLEdbXCJUUC4oVVVWKVwiXT1bR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU1LDEwMCA0NSwyMCA0NSwtMjAgMCwxNSAtNDUsMjAgLTQ1LC0yMCB6XCJ9XSxHW1wiVFAuVVVWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSBTVUJTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC4oVVVWKVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTUsZm9udHNpemU6NDAsdGV4dDpcIk1XXCJ9XSxHW1wiVFAuVVVWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VXXCJ9XSxHW1wiVFAuVVVWIC0gTUlXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiTUlXXCJ9XSxHW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzMCxmb250c2l6ZTozNSx0ZXh0OlwiU1NcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsOTUgMCwtMjAgNTAsMCAwLDIwIHogbSAyNSwtMzAgMCw0MFwifV0sR1tcIlRQLkFTVyBTVUJNQVJJTkUgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInBhdGhcIixkOlwibSA2OC43NSwxMDUgLTEyLjUsMTIuNSAxMi41LDEyLjUgNjIuNSwwIDEyLjUsLTEyLjUgLTEyLjUsLTEyLjUgeiBNIDc1LDk1IGwgMCwtMjAgNTAsMCAwLDIwIHogbSAyNSwtMzAgMCw0MFwifV0sR1tcIlRQLkFJUiBDT05UUk9MIFBPSU5UIChBQ1ApXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjUwfSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTAsZm9udHNpemU6MzAsdGV4dDpcIkFDUFwifV0sR1tcIlRQLkNPTU1VTklDQVRJT05TIENIRUNLUE9JTlRcIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5MCxmb250c2l6ZTozMCx0ZXh0OlwiQ0NQXCJ9XSxHW1wiVFAuUFVMTC1VUCBQT0lOVFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJQVVBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSw4MCAwLDQwIDcwLC00MCAwLDQwIHpcIn1dLEdbXCJUUC5ET1dORUQgQUlSQ1JFVyBQSUNLVVAgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6LTM1LHI6MTJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzUsMzUgNTAsMCBtIC0yNSwtNDUgMCw0NSBtIC0zMCwtNzUgMzAsMzAgMzAsLTMwXCJ9XSxHW1wiVFAuRFVNTVkgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEwMCBjIDAsNS41MjMgLTQuNDc3MiwxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjI4LDAgMTAsNC40NzcyIDEwLDEwIHogbSA3MCwwIGMgMCw1LjUyMyAtNC40NzcsMTAgLTEwLDEwIC01LjUyMywwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6IG0gLTM1LDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC03MCwtNDAgMCw4MCAxMjAsMCAwLC04MCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTUsMTBcIixkOlwiTSAxNjAsNjAgMTAwLC01IE0gNDAsNjAgMTAwLC01XCJ9XSxHW1wiVFAuVEFSR0VUIFJFRkVSRU5DRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDUwLDEwMCAxMDAsMCBtIC01MCwtNTAgMCwxMDBcIn0sR1tcIlRQLk9CU0VSVkFUSU9OIFBPU1QvT1VUUE9TVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw0NSA0Ny42LDgyLjUgLTk1LjIsMCB6XCJ9LEdbXCJUUC5DT01CQVQgT1VUUE9TVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDE0MCwxNDAgMCwtMTIuNSBtIC0xNiwxMi41IDAsLTEyLjUgbSAtMTYsMTIuNSAwLC0xMi41IG0gLTQ4LjAwMDEsMTIuNSAzZS00LC0xMi41IG0gMTUuOTk5MywxMi41IDRlLTQsLTEyLjUwMSBtIDE2LDEyLjUwMSAzZS00LC0xMi41IG0gLTQ2LjQzLC0xMi40OTMgMTAuODI1Niw2LjI1IG0gLTIuODI1NiwtMjAuMTA3IDEwLjgyNTYsNi4yNTEgbSAtMi44MjU3LC0yMC4xMDcxIDEwLjgyNTcsNi4yNTA2IG0gMTMuMTc0MywtNDcuODE5OCAxMC44MjU3LDYuMjUwNiBtIC0xOC44MjUzLDcuNjA1NiAxMC44MjU2LDYuMjUwNiBtIC0xOC44MjYsNy42MDYgMTAuODI1Nyw2LjI1MDYgTSAxMTQuNDMsNDUuNzI1IGwgLTEwLjgyNiw2LjI1IG0gMTguODI2LDcuNjA2NCAtMTAuODI2LDYuMjUgbSAxOC44MjYsNy42MDY0IC0xMC44MjYsNi4yNSBtIDM0LjgyNiwzNS4zMTkyIC0xMC44MjYsNi4yNSBtIDIuODI2LC0yMC4xMDYgLTEwLjgyNiw2LjI1IG0gMi44MjYsLTIwLjEwNjggLTEwLjgyNiw2LjI1IE0gOTkuOTk5OCw0NSBsIDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHpcIn0sR1tcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA1Mi4zNjg3LDEyNy41IDEyMy44MTYsODYuMjQ5OSBNIDk5Ljk5OTgsNDUgbCA0Ny42MzEyLDgyLjUgLTk1LjI2MjMsMCB6XCJ9LEdbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdPVtHW1wiVFAuT0JTRVJWQVRJT04gUE9TVC9SRUNPTk5BSVNTQU5DRVwiXSx7dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTAwIGMgMCw4LjI4NCAtNi43MTYsMTUgLTE1LDE1IC04LjI4NDMsMCAtMTUsLTYuNzE2IC0xNSwtMTUgMCwtOC4yODQzIDYuNzE1NywtMTUgMTUsLTE1IDguMjg0LDAgMTUsNi43MTU3IDE1LDE1IHpcIn1dLEdbXCJUUC5TRU5TT1IgT1VUUE9TVFwiXT1OP1t7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDk5Ljk5OTgsNDUgbCA0Ny42MzEyLDgyLjUgLTk1LjI2MjMsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsODAgYyAwLDcuNSAxMi41LDIwIDIwLDIwIC03LjUsMCAtMjAsMTIuNSAtMjAsMjAgMCwtNy41IC0xMi41LC0yMCAtMjAsLTIwIDcuNSwwIDIwLC0xMi41IDIwLC0yMCB6XCJ9XTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYxLjE3MzgsMTEyLjI1IDIzLjY2MDEsMCBtIDMwLjMzMjEsMCAyMy42NiwwIE0gODAsMTA1IGwgMTAsMTUgMjAsMCAxMCwtMTUgeiBtIDE5Ljk5OTgsLTYwIDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHpcIn0sR1tcIlRQLkNCUk4gT0JTRVJWQVRJT04gUE9TVFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5OS45OTk4LDQ1IDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHogTSA4OCwxMTkgYyAyLjE4MjQsLTEzLjI4OCA3LjcxNTcsLTI0LjIyIDIyLC0yOSBtIDEuODI5LDI5IEMgMTA5LjY2NCwxMDUuNzEyIDEwNC4xNzMsOTQuNzggOTAsOTAgTSA1Mi4zNjg3LDEyNy41IDEyMy44MTYsODYuMjQ5OVwifSx7dHlwZTpcInBhdGhcIixkOlwibSA5MSw5MiBjIDAsMi43NjE0IC0yLjIzODYsNSAtNSw1IC0yLjc2MTQsMCAtNSwtMi4yMzg2IC01LC01IDAsLTIuNzYxNCAyLjIzODYsLTUgNSwtNSAyLjc2MTQsMCA1LDIuMjM4NiA1LDUgeiBtIDI4LjAxMSwwIGMgMCwyLjc2NzggLTIuMjQzLDUuMDExNyAtNS4wMTEsNS4wMTIgLTIuNzY4LC0zZS00IC01LjAxMSwtMi4yNDQyIC01LjAxMSwtNS4wMTIgMCwtMi43Njc2IDIuMjQzLC01LjAxMTIgNS4wMTEsLTUuMDExNSAyLjc2OCwzZS00IDUuMDExLDIuMjQzOSA1LjAxMSw1LjAxMTUgelwifV0sR1tcIlRQLlBPSU5UIE9GIERFUEFSVFVSRVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJQRFwifV0sR1tcIlRQLkZJWEVEIEFORCBQUkVGQUJSSUNBVEVEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDEwMCA0MCwtNjUgNDAsNjUgelwifSxHW1wiVFAuVEVUUkFIRURST05TXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjAsMTAwIDQwLC02NSA0MCw2NVwifSxHW1wiVFAuVEVUUkFIRURST05TIE1PVkFCTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2MCwxMDAgNDAsLTY1IDQwLDY1IHpcIn0sR1tcIlRQLkJPT0JZIFRSQVBcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA3Ny4yNDEzLDg3LjkzMTEgMTAwLDUwIDEyMi43ODEsODcuOTY4NyBNIDEzMCwxMDAgYyAwLDEwLjI0IC0xMy40MzEsMTguNTQxIC0zMCwxOC41NDEgLTE2LjU2ODUsMCAtMzAsLTguMzAxIC0zMCwtMTguNTQxIDAsLTEwLjIzOTkgMTMuNDMxNSwtMTguNTQxIDMwLC0xOC41NDEgMTYuNTY5LDAgMzAsOC4zMDExIDMwLDE4LjU0MSB6XCJ9LEdbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTI5LDEwMCBjIDAsMTYuMDE2IC0xMi45ODQsMjkgLTI5LDI5IC0xNi4wMTYzLDAgLTI5LC0xMi45ODQgLTI5LC0yOSAwLC0xNi4wMTYzIDEyLjk4MzcsLTI5IDI5LC0yOSAxNi4wMTYsMCAyOSwxMi45ODM3IDI5LDI5IHpcIn0sR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjksMTAwIGMgMCwxNi4wMTYgLTEyLjk4NCwyOSAtMjksMjkgLTE2LjAxNjMsMCAtMjksLTEyLjk4NCAtMjksLTI5IDAsLTE2LjAxNjMgMTIuOTgzNywtMjkgMjksLTI5IDE2LjAxNiwwIDI5LDEyLjk4MzcgMjksMjkgelwifSxHW1wiVFAuKEFUKSBBTlRJSEFORExJTkcgREVWSUNFXCJdPVtHW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDEzMCAwLDY1IDE1LC0xNVwifV0sR1tcIlRQLihBVCkgRElSRUNUSU9OQUxcIl09W0dbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCI1LDVcIixkOlwibSAxMDAsNzAgMCwtNjBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwyMCAxMCwtMTAgMTAsMTBcIn1dLEdbXCJUUC5BTlRJUEVSU09OTkVMIChBUCkgTUlORVNcIl09W0dbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1MCw1MCAyOS41LDI5LjUgbSA0MSwwIEwgMTUwLDUwXCJ9XSxHW1wiVFAuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUU1wiXT1bR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEzMSwxMDAgMTAsMCBNIDUwLDUwIDc5LjUsNzkuNSBtIDQxLDAgTCAxNTAsNTAgbSAtNCw1MCAxMCwwIG0gNSwwIDEwLDAgbSAtMTAsLTEwIDEwLDEwIC0xMCwxMFwifV0sR1tcIlRQLldJREUgQVJFQSBNSU5FU1wiXT1bR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDUwLDExMCAyNSw0MCAxMiwtMjQgTSAxMTMsMTI2IDEyNSwxNTAgMTUwLDExMFwifV0sR1tcIlRQLlBMQU5ORUQgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjE1LDE1XCIsZDpcIm0gNDAsNjUgMCw3MCAxMjAsMCAwLC03MCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzUsMTAwIGMgMCw1LjUyMyAtNC40NzcyLDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMjgsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIDcwLDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIzLDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NywtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHogbSAtMzUsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6XCJ9XSxHW1wiVFAuTUlORUZJRUxEUyBTVEFUSUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA0MCw2NSAwLDcwIDEyMCwwIDAsLTcwIHogbSA3MCwzNSBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6IG0gMzUsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjMsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3LC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC03MCwwIGMgMCw1LjUyMyAtNC40NzcyLDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMjgsMCAxMCw0LjQ3NzIgMTAsMTAgelwifSxHW1wiVFAuTUlORUZJRUxELCBTVEFUSUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAyNSw2NSAwLDcwIDE1MCwwIDAsLTcwIHpcIn0sdC5ub3RwcmVzZW50JiYoR1tcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdPUdbXCJUUC5QTEFOTkVEIE1JTkVGSUVMRFwiXSksR1tcIlRQLkFOVElUQU5LIChBVCkgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDQwLDY1IDAsNzAgMTIwLDAgMCwtNzAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMDAgYyAwLDUuNTIzIC00LjQ3NzIsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3MiwtMTAgMTAsLTEwIDUuNTIyOCwwIDEwLDQuNDc3MiAxMCwxMCB6IG0gNzAsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjMsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3LC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC0zNSwwIGMgMCw1LjUyMyAtNC40NzcsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3MiwtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHpcIn1dLEdbXCJUUC5TQ0FUVEVSQUJMRSBNSU5FU1wiXT1bR1tcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiU1wifV0sR1tcIlRQLkFOVElQRVJTT05ORUwgKEFQKSBNSU5FRklFTERcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiK1NcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA0MCw2NSAwLDcwIDEyMCwwIDAsLTcwIHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIk0gNzIuMDcwMyw5Mi45Mjk3IDgwLDgyLjM2MjIgbSAtMzAsMCA3LjkyOTcsMTAuNTY3NSBtIDQ5LjE0MDMsMCA3LjkzLC0xMC41Njc1IG0gLTMwLDAgNy45Mjk3LDEwLjU2NzUgbSA0OS4xNDAzLDAgNy45MywtMTAuNTY3NSBtIC0zMCwwIDcuOTMsMTAuNTY3NSBNIDExMCwxMDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIDM1LDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIzLDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NywtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHogbSAtNzAsMCBjIDAsNS41MjMgLTQuNDc3MiwxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjI4LDAgMTAsNC40NzcyIDEwLDEwIHpcIn1dLEdbXCJUUC5TQ0FUVEVSQUJMRSBNSU5FRklFTEQgV0lUSCBTRUxGLURFU1RSVUNUXCJdPVtHW1wiVFAuQU5USVRBTksgKEFUKSBNSU5FRklFTERcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjYwLGZvbnRzaXplOjM1LHRleHQ6XCJTXCJ9XSxHW1wiVFAuVk9MQ0FOTyBNSU5FRklFTERcIl09W0dbXCJUUC5BTlRJVEFOSyAoQVQpIE1JTkVGSUVMRFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NjAsZm9udHNpemU6MzUsdGV4dDpcIlZcIn1dLEdbXCJUUC5UT1dFUiBMT1dcIl09W3t0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeToxMDAscjo3fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gNzUsMTA1IDI1LC02NSAyNSw2NVwifV0sR1tcIlRQLlRPV0VSIEhJR0hcIl09W3t0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeToxMDAscjo3fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gMTAwLDQwIGMgMi4zNTgsMzEuNjc1NCA3LjE2Miw1OS4yNTMxIDI1LDY0Ljk5OSBNIDEwMCw0MCBjIC0yLjM1OCwzMS42NzU0IC03LjE2MjQsNTkuMjUzMSAtMjUsNjVcIn1dLEdbXCJUUC5FTkdJTkVFUiBSRUdVTEFUSU5HIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVSUFwifV0sR1tcIlRQLkVBUlRIV09SSy9GT1JUSUZJQ0FUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDY1IDAsNzAgNzAsMCAwLC03MCAtNzAsMHpcIn0sR1tcIlRQLkZPUlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzUsNjUgMTUsLTE1IG0gLTE1LDg1IDE1LDE1IE0gNjUsMTM1IDUwLDE1MCBtIDE1LC04NSAwLDcwIDcwLDAgMCwtNzAgLTcwLDAgLTE1LC0xNVwifSxHW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMzUgMTUsMCBtIC0xMDAsMCAxNSwwIG0gMCwtNzAgMCw3MCA3MCwwIDAsLTcwIC03MCwwXCJ9LEdbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSw2NSAxNSwwIG0gLTEwMCwwIDE1LDAgbSAwLDcwIDAsLTcwIDcwLDAgMCw3MCAtNzAsMFwifSxHW1wiVFAuTlVDTEVBUiBERVRPTkFUSU9OUyBHUk9VTkQgWkVST1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohZSYmXCJyZ2IoMjU1LDI1NSwwKVwiLGQ6XCJtIDg1LDI1IDAsNzUgMzAsMCAwLC03NSBtIC01MCwwIGMgMCwtNTAgNzAsLTUwIDcwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzUsdGV4dDpcIk5cIn1dLEdbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPIFBMQU5ORURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjUsNVwiLGZpbGw6IWUmJlwicmdiKDI1NSwyNTUsMClcIixkOlwibSA4NSwyNSAwLDc1IDMwLDAgMCwtNzUgbSAtNTAsMCBjIDAsLTUwIDcwLC01MCA3MCwwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjM1LHRleHQ6XCJOXCJ9XSxHW1wiVFAuTlVDTEVBUiBGQUxMT1VUIFBST0RVQ0lOR1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjAsODUgLTE1LDE1IG0gLTI1LDAgNDAsLTM1IE0gODAsODAgMTIwLDQwIE0gODAsNTUgMTE1LDI1IE0gODAsNDAgOTUsMjUgbSAtNDAsMCBjIDAsLTYwIDkwLC02MCA5MCwwIHogbSAyNSwwIDAsNzUgNDAsMCAwLC03NVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzUsdGV4dDpcIk5cIn1dLEdbXCJUUC5SRUxFQVNFIEVWRU5UUyBCSU9MT0dJQ0FMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiFlJiZcInJnYigyNTUsMjU1LDApXCIsZDpcIm0gODUsLTE1IDAsNjAgLTI1LDU1IDgwLDAgLTI1LC01NSAwLC02MCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4NSxmb250c2l6ZTozNSx0ZXh0OlwiQlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiQklPXCJ9XSxHW1wiVFAuUkVMRUFTRSBFVkVOVFMgQ0hFTUlDQUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IWUmJlwicmdiKDI1NSwyNTUsMClcIixkOlwibSA4NSwtMTUgMCw1OS4wNjI1IEMgNzUuNzMxMyw0OS40MTM3IDcwLjAxNTQsNTkuMjk3NSA3MCw3MCBjIDAsMTYuNTY4NSAxMy40MzE1LDMwIDMwLDMwIDE2LjU2OSwwIDMwLC0xMy40MzE1IDMwLC0zMCAtMC4wMSwtMTAuNzA2NyAtNS43MjgsLTIwLjU5NTkgLTE1LC0yNS45NDkyIEwgMTE1LC0xNSBaXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4MCxmb250c2l6ZTozNSx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiQ01MXCJ9XSxHW1wiVFAuREVDT04gU0lURS9QT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn1dLEdbXCJUUC5BTFRFUk5BVEUgREVDT04gU0lURS9QT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjAsZm9udHNpemU6MzUsdGV4dDpcIkFMVFwifV0sR1tcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRST09QUylcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJUXCJ9XSxHW1wiVFAuREVDT04gU0lURS9QT0lOVCAoRVFVSVBNRU5UKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjAsZm9udHNpemU6MzUsdGV4dDpcIkVcIn1dLEdbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJFL1RcIn1dLEdbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChPUEVSQVRJT05BTCBERUNPTlRBTUlOQVRJT04pXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MCxmb250c2l6ZTozNSx0ZXh0OlwiT1wifV0sR1tcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRIT1JPVUdIIERFQ09OVEFNSU5BVElPTilcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJUSFwifV0sR1tcIlRQLk1BSU4gRVFVSVBNRU5UIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzAsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTEwLGZvbnRzaXplOjI1LHRleHQ6XCIoTSlcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzLGZvbnRzaXplOjI1LHRleHQ6XCJFXCJ9XSxHW1wiVFAuRk9SV0FSRCBUUk9PUCBERUNPTlRBTUlOQVRJT04gUE9JTlQvU0lURVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjMwLHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0xMCxmb250c2l6ZToyNSx0ZXh0OlwiKEYpXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMyxmb250c2l6ZToyNSx0ZXh0OlwiVFwifV0sR1tcIlRQLldPVU5ERUQgUEVSU09OTkVMIERFQ09OVEFNSU5BVElPTiBTSVRFXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MCxmb250c2l6ZTozNSx0ZXh0OlwiV1wifV0sR1tcIlRQLkFNQlVMQU5DRSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkFDUFwifV0sR1tcIlRQLkFNQlVMQU5DRSBMT0FEIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkFMUFwifV0sR1tcIlRQLkFNQlVMQU5DRSBSRUxBWSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBUlBcIn1dLEdbXCJUUC5ERUNPTiBQT0lOVCAoTUFJTikgRVFVSVBNRU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsdGV4dDpcIihNKUVcIn1dLEdbXCJUUC5ERUNPTiBQT0lOVCAoRk9SV0FSRCkgVFJPT1BTXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsdGV4dDpcIihGKVRcIn1dLEdbXCJUUC5QT0lOVC9TSU5HTEUgVEFSR0VUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsMTAwIDEwMCwwIG0gLTUwLC01MCAwLDEwMFwifSxHW1wiVFAuS05PV04gUE9JTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsMTAwIDEwMCwwIG0gLTUwLC01MCAwLDEwMFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTAseTo4MCxmb250c2l6ZTozMCx0ZXh0OlwiS05QXCJ9XSxHW1wiVFAuTlVDTEVBUiBUQVJHRVRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMDAgLTQwLDAgbSA1MCwxMCAwLDQwIG0gMTAsLTUwIDQwLDAgbSAtNTAsLTEwIDAsLTQwIG0gMi41LDUwIGMgMCwxLjM4MSAtMS4xMTksMi41IC0yLjUsMi41IC0xLjM4MDcsMCAtMi41LC0xLjExOSAtMi41LC0yLjUgMCwtMS4zODA3IDEuMTE5MywtMi41IDIuNSwtMi41IDEuMzgxLDAgMi41LDEuMTE5MyAyLjUsMi41IHpcIn0sR1tcIlRQLlRBUkdFVFJFQ09SREVEIChBRUdJUyBPTkxZKVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAwLDUwIDAsMTAwIDIwMCwwIDAsLTEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsOTAgLTEwLDEwIDEwLDEwIDEwLC0xMCB6XCJ9XSxHW1wiVFAuRklSRSBTVVBQT1JUIFNUQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNTAsNTAgMTUwLDE1MCBNIDUwLDE1MCAxNTAsNTBcIn0sTj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImxlZnRcIix4OjEyMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiRlNTXCJ9OltdXSxHW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiU0NQXCJ9XSxHW1wiVFAuRklSSU5HIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkZQXCJ9XSxHW1wiVFAuUkVMT0FEIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlJMUFwifV0sR1tcIlRQLkhJREUgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiSFBcIn1dLEdbXCJUUC5MQVVOQ0ggUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiTFBcIn1dLEdbXCJUUC5BTUJVTEFOQ0UgRVhDSEFOR0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQVhQXCJ9XSxHW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkNBTlwifV0sR1tcIlRQLkNBU1VBTFRZIENPTExFQ1RJT04gUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQ0NQXCJ9XSxHW1wiVFAuQ0lWSUxJQU4gQ09MTEVDVElPTiBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJDSVZcIn1dLEdbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRFVFwifV0sR1tcIlRQLkVQVyBDT0xMRUNUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVQV1wifV0sR1tcIlRQLkxPR0lTVElDUyBSRUxFQVNFIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkxSUFwifV0sR1tcIlRQLk1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiTUNQXCJ9XSxHW1wiVFAuTUVESUNBTCBFVkFDVUFUSU9OIChNRURFVkFDKSBQSUNLVVAgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozMCx0ZXh0OlwiTUVQXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5NSwtMjUgMCwxMCAtMTAsMCAwLDEwIDEwLDAgMCwxMCAxMCwwIDAsLTEwIDEwLDAgMCwtMTAgLTEwLDAgMCwtMTAgelwifV0sR1tcIlRQLlJFQVJNLCBSRUZVRUwgQU5EIFJFU1VQUExZIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlIzUFwifV0sR1tcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJST01cIn1dLEdbXCJUUC5UUkFGRklDIENPTlRST0wgUE9TVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJUQ1BcIn1dLEdbXCJUUC5UUkFJTEVSIFRSQU5TRkVSIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlRUUFwifV0sR1tcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjI1LHRleHQ6XCJVTUNQXCJ9XSxHW1wiVFAuU1VQUExZIFBPSU5UXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjAsMzAgODAsMCBtIC04MCwxNSA4MCwwIG0gLTQwLDU1IC00MCwtNTUgMCwtMTA1IDgwLDAgMCwxMDUgelwifSxHW1wiVFAuTkFUTyBDTEFTUyBJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6NDUsdGV4dDpcIklcIn1dLEdbXCJUUC5OQVRPIENMQVNTIElJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6NDUsdGV4dDpcIklJXCJ9XSxHW1wiVFAuTkFUTyBDTEFTUyBJSUlcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTo0NSx0ZXh0OlwiSUlJXCJ9XSxHW1wiVFAuTkFUTyBDTEFTUyBJVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjQ1LHRleHQ6XCJJVlwifV0sR1tcIlRQLk5BVE8gQ0xBU1MgVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLC0xMCA0MCwwIG0gLTMyLDAgMCwtMjYuNyBjIDAsLTE3LjggMjQsLTE3LjggMjQsMCBMIDExMiwtMTBcIn1dLEdbXCJUUC5TUCBDTEFTUyBJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTE1LC01MCBjIC00NSw1IC00NSw2NSAwLDcwIC0yMCwtMjUgLTIwLC01MCAwLC03MCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSUlcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMS4xNDMsMy45MTYwMiBxIDMuNjYyLC0wLjI2MzY4IDQuNzQ2LC0xLjA4Mzk5IDEuMDg0LC0wLjg0OTYxIDEuMDg0LC00LjMzNTk0IGwgMCwtMjYuNjg5NDkgcSAwLC0zLjMxMDUgLTEuMDg0LC00LjI0OCAtMS4wODQsLTAuOTY2OCAtNC43NDYsLTEuMTQyNiBsIDAsLTEuMTEzMyAxNy43NTMsMCAwLDEuMTEzMyBxIC0zLjY2MiwwLjE3NTggLTQuNzQ2LDEuMTQyNiAtMS4wODQsMC45Mzc1IC0xLjA4NCw0LjI0OCBsIDAsMjYuNjg5NDkgcSAwLDMuNDg2MzMgMS4wODQsNC4zMzU5NCAxLjA4NCwwLjgyMDMxIDQuNzQ2LDEuMDgzOTkgbCAwLDEuMDgzOTggLTE3Ljc1MywwIDAsLTEuMDgzOTggeiBtIDguODc3LC0zOC42MTMzMiAwLDAgeiBNIDgxLjEwMzUsMy45MTYwMiBxIDMuNjYyMSwtMC4yNjM2OCA0Ljc0NjEsLTEuMDgzOTkgMS4wODQsLTAuODQ5NjEgMS4wODQsLTQuMzM1OTQgbCAwLC0yNi42ODk0OSBxIDAsLTMuMzEwNSAtMS4wODQsLTQuMjQ4IC0xLjA4NCwtMC45NjY4IC00Ljc0NjEsLTEuMTQyNiBsIDAsLTEuMTEzMyAxNy43NTM5LDAgMCwxLjExMzMgcSAtMy42NjIxLDAuMTc1OCAtNC43NDYxLDEuMTQyNiAtMS4wODQsMC45Mzc1IC0xLjA4NCw0LjI0OCBsIDAsMjYuNjg5NDkgcSAwLDMuNDg2MzMgMS4wODQsNC4zMzU5NCAxLjA4NCwwLjgyMDMxIDQuNzQ2MSwxLjA4Mzk5IGwgMCwxLjA4Mzk4IC0xNy43NTM5LDAgMCwtMS4wODM5OCB6IG0gOC44NzcsLTM4LjYxMzMyIDAsMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSUlJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDIwIDAsLTMwIC0yMCwtNDAgNDAsMCAtMjAsNDBcIn1dLEdbXCJUUC5TUCBDTEFTUyBJVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwtNDAgMCwyMCBtIC0yNSwxMCAwLC0zMCA1MCwwIDAsMzBcIn1dLEdbXCJUUC5TUCBDTEFTUyBWXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODAsMTUgMCwtNTAgYyAwLC0yMCA0MCwtMjAgNDAsMCBsIDAsNTAgbSAtNTAsMCA2MCwwXCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3NSwtMjAgNTAsMCBtIC0yNSwxNSAxNSwyNSBtIC0xNSwtNTAgMCwyNSAtMjAsMjUgbSAzMCwtNjAgYyAwLDUuNTIyOCAtNC40NzcsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3MiAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsLTI1IGMgMTAsLTEwIDIwLC0xMCAzMCwwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyOS42LC0yMCBjIDAsNS4zMDE5IC00LjI5OCw5LjU5OTkgLTkuNiw5LjU5OTggLTUuMzAyLDEwZS01IC05LjYsLTQuMjk3OSAtOS42LC05LjU5OTggMCwtNS4zMDE5IDQuMjk4LC05LjU5OTkgOS42LC05LjU5OTggNS4zMDIsLTFlLTQgOS42LDQuMjk3OSA5LjYsOS41OTk4IHogbSAtNDAuNDg4NiwwIGMgMCw1LjAzMjEgLTQuMDc5Myw5LjExMTQgLTkuMTExNCw5LjExMTQgLTUuMDMyMSwwIC05LjExMTQsLTQuMDc5MyAtOS4xMTE0LC05LjExMTQgMCwtNS4wMzIxIDQuMDc5MywtOS4xMTE0IDkuMTExNCwtOS4xMTE0IDUuMDMyMSwwIDkuMTExNCw0LjA3OTMgOS4xMTE0LDkuMTExNCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklJSVwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYwLC0xNSA4MCwwIG0gLTQwLC00NSAwLDkwXCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSVhcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjEuMjEzLC0zNi4yMTMyIC03LjA4LDcuMDgwMiBNIDg1Ljg2NjksLTAuODY2OTgyIDc4Ljc4NjgsNi4yMTMyIG0gMCwtNDIuNDI2NCA3LjA4MDEsNy4wODAyIG0gMjguMjY2MSwyOC4yNjYwMTggNy4wOCw3LjA4MDE4MiBNIDEwMCwtNDUgbCAwLDEwIG0gMCw0MCAwLDEwIG0gLTMwLC0zMCAxMCwwIG0gNDAsMCAxMCwwIG0gLTEwLDAgYyAwLDExLjA0NTY5IC04Ljk1NCwyMCAtMjAsMjAgLTExLjA0NTcsMCAtMjAsLTguOTU0MzEgLTIwLC0yMCAwLC0xMS4wNDU3IDguOTU0MywtMjAgMjAsLTIwIDExLjA0NiwwIDIwLDguOTU0MyAyMCwyMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgWFwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTEwLGZvbnRzaXplOjQwLHRleHQ6XCJDQVwifV0sR1tcIlRQLk1FRElDQUwgU1VQUExZIFBPSU5UXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLC0yMCAwLC00MCBtIC00MCwyNSA4MCwwXCJ9XSxHW1wiVFAuQU1NVU5JVElPTiBTVVBQTFkgUE9JTlQgKEFTUClcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQVNQXCJ9XSxHW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBVFBcIn1dLEdbXCJUUC5UQVJHRVQgSEFORE9WRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjEwLDVcIixmaWxsOiExLGQ6XCJtIDEwMCw0NSAtMTUsNDAgLTQwLDE1IDQwLDE1IDE1LDQwIDE1LC00MCA0MCwtMTUgLTQwLC0xNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlRIXCJ9XSxHW1wiVFAuS0VZIFRFUlJBSU5cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDE0NSwxMDAgYSA0NSw0NSAwIDAgMSAtNDUsNDUgNDUsNDUgMCAwIDEgLTQ1LC00NSA0NSw0NSAwIDAgMSA0NSwtNDUgNDUsNDUgMCAwIDEgNDUsNDUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6ODAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIktcIixmaWxsOk99XSxHW1wiVFAuQlQgQk9VWSBEUk9QXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDQ1IDAsMTEwIDcwLDAgMCwtMTEwIG0gLTM1LDk1IDAsLTk1IG0gLTM1LDAgNzAsMFwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMDQsMTAwIGMgMCwyIC0zLDIgLTQuOCwyIC0xLjQsMCAtNC4xLC0xIC0yLjcsLTIuOSAxLjksLTEuNCA0LjUsLTEuNCA2LjUsLTAuNCAxLDAuMyAxLDAuNyAxLDEuMyB6IG0gMCw0MCBjIDAsMiAtMywyIC00LjgsMiAtMS40LDAgLTQuMSwtMSAtMi43LC0zIDEuOSwtMSA0LjUsLTEgNi41LDAgMSwwIDEsMCAxLDEgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6ODAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIkJcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEyMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiVFwifV0sR1tcIlRQLlJFUE9SVEVEIEJPVFRPTUVEIFNVQlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDEyOSwxMjIuNCA3MC45LDc4LjggbSAwLDQzLjYgNTguMSwtNDMuNiBtIC04MCwtMTQuNSAwLDQzLjYgMjksMCAwLDI5IDQzLjYsMCAwLC0yOSAyOSwwIDAsLTQzLjZcIn0sR1tcIlRQLk1PVklORyBIQVZFTlwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDguMTQyLDEwMCBBIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDAsMTA4LjE0MiA4LjE0MTY3LDguMTQxNjcgMCAwIDEgOTEuODU4MywxMDAgOC4xNDE2Nyw4LjE0MTY3IDAgMCAxIDEwMCw5MS44NTgzIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDguMTQyLDEwMCBaIE0gNDUsNTUgbCAwLDkwIG0gMTEwLC05MCAwLDkwIG0gLTExMCwtNDUgMTEwLDBcIn0sR1tcIlRQLlNDUkVFTiBDRU5UUkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDU1IDAsOTAgbSA4LjE0MiwtNDUgQSA4LjE0MTY3LDguMTQxNjcgMCAwIDEgMTAwLDEwOC4xNDIgOC4xNDE2Nyw4LjE0MTY3IDAgMCAxIDkxLjg1ODMsMTAwIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDAsOTEuODU4MyA4LjE0MTY3LDguMTQxNjcgMCAwIDEgMTA4LjE0MiwxMDAgWlwifSxHW1wiVFAuU0hPUkUgQ09OVFJPTCBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzAsMTU1IDE0MCwwIG0gLTI3LC0yMCAyLC0xMCAtMTAsNSBtIC03OCw1IC0yLC0xMCAxMCw1IG0gMzUsLTU1IDAsNjggbSA3LjUsLTc2IEEgNy41LDcuNSAwIDAgMSAxMDAsNzQuNSA3LjUsNy41IDAgMCAxIDkyLjUsNjcgNy41LDcuNSAwIDAgMSAxMDAsNTkuNSA3LjUsNy41IDAgMCAxIDEwNy41LDY3IFogbSAtNTIuNSw4IDkwLDAgbSAtOTAsNTAgYyAxNSwyNSA3NSwyNSA5MCwwIE0gNDAsNDUgNTAsNTUgNjAsNDUgNzAsNTUgODAsNDUgbCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn0sR1tcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTQ1LDEyMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIC03NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gMTAsMTAgMjUsLTMwIC0xMCwtMTAgMTAsLTEwIDIwLDIwIC0xMCwzNSAtMTUsLTE1IC0xNSwxNSB6XCJ9LEdbXCJUUC5QRVJTT04gSU4gV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDExMCAxMCwtMTAgMCwtMTUgNSwwIDAsMjAgLTEwLDEwIHogbSAtMTAsMCAtMTAsLTEwIDAsLTE1IC01LDAgMCwyMCAxMCwxMCB6IG0gNSwtNSAwLC0xMCAtNSwwIC01LC01IDAsLTEwIDUsLTUgMTAsMCA1LDUgMCwxMCAtNSw1IC01LDAgbSAtMTUsMjUgMTUsLTE1IG0gNDUsMTUgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSAtNzUsMTUgMTUsLTE1IG0gMTUsMTUgLTE1LC0xNSBtIDQ1LDE1IC0xNSwtMTVcIn0sR1tcIlRQLkNMVVRURVIsIFNUQVRJT05BUlkgT1IgQ0VBU0UgUkVQT1JUSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTM1IGMgMjMuMywtMjMgNDcsLTQ2LjcgNzAsLTcwIG0gLTcwLDAgYyAyMy4zLDIzLjMgNDcsNDcgNzAsNzAgbSAtMzUsLTQgYyAtMTkuNywwIC00Ny44LC04IC01MCwtMzEgMywtMjQuOSAzMy45LC0zMiA1NSwtMzAuNyAxOSwwLjggNDYsMTAuOSA0NSwzMy43IC01LDIxIC0zMSwyOCAtNTAsMjggeiBtIDMxLC0zMSBjIDAsMjAgLTgsNDggLTMxLDUwIEMgNzUuMSwxNDcgNjgsMTE2IDY5LjMsOTUgNzAuMSw3Ni4yIDgwLjIsNDguNiAxMDMsNTAuMiBjIDIxLDQuOSAyOCwzMS4xIDI4LDQ5LjggelwifSxHW1wiVFAuVEVOVEFUSVZFIE9SIFBST1ZJU0lPTkFMIFRSQUNLXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTMwLjkwMiwxMDAgQSAzMC45MDE3LDUwIDAgMCAxIDEwMCwxNTAgMzAuOTAxNyw1MCAwIDAgMSA2OS4wOTgzLDEwMCAzMC45MDE3LDUwIDAgMCAxIDEwMCw1MCAzMC45MDE3LDUwIDAgMCAxIDEzMC45MDIsMTAwIFogTSAxMDAsMTMwLjkwMiBBIDUwLDMwLjkwMTcgMCAwIDEgNTAsMTAwIDUwLDMwLjkwMTcgMCAwIDEgMTAwLDY5LjA5ODMgNTAsMzAuOTAxNyAwIDAgMSAxNTAsMTAwIDUwLDMwLjkwMTcgMCAwIDEgMTAwLDEzMC45MDIgWlwifSxHW1wiVFAuRElTVFJFU1NFRCBWRVNTRUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDY1IC0yMCwyMCAyMCwtMjAgbSAtNSw1NSAtMzUsLTM1IDAsLTIwIDQ1LDQ1IHogbSAtMzAsMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIDQ1LDE1IDE1LC0xNSBtIDE1LDE1IC0xNSwtMTUgbSAtNDUsMTUgMTUsLTE1XCJ9LEdbXCJUUC5TRUEgTUlORUxJS0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gNzUsNzUgNTUsNTUgbSA0NSwtMTUgMCwyNSBtIDI1LDEwIDIwLC0yMCBtIC04MCw2MCAwLC0zMCAyMCwtMjAgMzAsMCAyMCwyMCAwLDMwIC0yMCwyMCAtMzAsMCB6XCJ9LEdbXCJUUC5JQ0VCRVJHXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDEwMCAyNSwtMzAgMjUsMzAgLTUsMTUgLTUsLTUgLTE1LDIwIC0xNSwtMjAgLTUsNSB6IG0gLTE1LDAgODAsMFwifSxHW1wiVFAuT0lMIFJJRy9QTEFURk9STVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTAwIDAsLTUwIG0gNzUsNTAgMCw0MCBtIDIwLC00MCAwLDQwIG0gLTExNSwwIDAsLTQwIDEzMCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTAwIDAsLTE1IDI1LDAgMCwxNSB6XCJ9XSxHW1wiVFAuQk9UVE9NIFJFVFVSTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA1MCwxMDAgMTUsLTM1IDE1LDMwIDIwLC01NSAyMCw1NSAxNSwtMzUgMTUsNDAgelwifSxHW1wiVFAuSU5TVEFMTEFUSU9OL01BTk1BREVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1MCwxMDAgMTUsLTM1IDE1LDMwIDIwLC01NSAyMCw1NSAxNSwtMzUgMTUsNDAgelwifSxHW1wiVFAuV1JFQ0ssIE5PTiBEQU5HRVJPVVNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzUsODUgMCwzMCBtIC04NSwtMTUgMTAwLDAgbSAtODUsLTE1IDAsMzAgbSAzNSwtNDAgMCw1MFwifSxHW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXT1bR1tcIlRQLldSRUNLLCBOT04gREFOR0VST1VTXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjUsNVwiLGZpbGw6ITEsZDpcIm0gMTU2LjU0NywxMDAgYyAwLDE2LjM4MiAtMjUuMTYyLDI5LjY2MiAtNTYuMjAyLDI5LjY2MiAtMzEuMDM5NSwwIC01Ni4yMDE5LC0xMy4yOCAtNTYuMjAxNywtMjkuNjYyIDAsLTE2LjM4MTggMjUuMTYyNCwtMjkuNjYxOCA1Ni4yMDE3LC0yOS42NjE4IDMxLjAzOSwtMWUtNCA1Ni4yMDIsMTMuMjggNTYuMjAyLDI5LjY2MTggelwifV0sR1tcIlRQLk1BUklORSBMSUZFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzIsNzUgMCw1MCA4MywtMzcuNSAwLDI1IEwgMTMyLDc1IG0gLTMyLDI1IDI1LjUsLTI1IDAsNTAgelwifSxHW1wiVFAuU0VBIEFOT01BTFlcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNTAsODAgMTMwLDM1IDEwMCwxMDAgNzAsMzUgNTAsODAgbSAwLDIwIDIwLC00NSAzMCw2NSAzMCwtNjUgMjAsNDVcIn0sR1tcIlRQLkZJWCBBQ09VU1RJQ1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDUwLDE1MCAxNTAsNTAgTSA1MCw1MCAxNTAsMTUwIG0gLTUwLC0xMDAgMCwxMDBcIn0sR1tcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsOTAgMTUsMjAgNSwtMjAgMTUsMjAgNSwtMjAgMjAsMjAgNSwtMjAgMTUsMjAgNSwtMjAgMTUsMjAgTSA1MCwxNTAgMTUwLDUwIE0gNTAsNTAgMTUwLDE1MCBtIC01MCwtMTAwIDAsMTAwXCJ9LEdbXCJUUC5FTEVDVFJPIE1BR05FVElDIC0gTUFHTkVUSUMgQU5PTUFMWSBERVRFQ1RJT04gKE1BRClcIl09W0dbXCJUUC5GSVggRUxFQ1RSTy1NQUdORVRJQ1wiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTgwLGZvbnRzaXplOjM1LHRleHQ6XCJNQURcIn1dLEdbXCJUUC5GSVggRUxFQ1RSTy1PUFRJQ0FMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTUwLDEwMCBjIDAsNi45MDQgLTIyLjM4NiwxMi41IC01MCwxMi41IC0yNy42MTQyLDAgLTUwLC01LjU5NiAtNTAsLTEyLjUgMCwtNi45MDM2IDIyLjM4NTgsLTEyLjUgNTAsLTEyLjUgMjcuNjE0LDAgNTAsNS41OTY0IDUwLDEyLjUgeiBNIDUwLDE1MCAxNTAsNTAgTSA1MCw1MCAxNTAsMTUwIG0gLTUwLC0xMDAgMCwxMDBcIn0sR1tcIlRQLkZJUkVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6RS5pY29uQ29sb3JbQ10sdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjM1LHRleHQ6XCJGSVJFXCJ9LEdbXCJUUC5JTkRJUkVDVCBGSVJFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTpFLmljb25Db2xvcltDXSxmaWxsOiExLGQ6XCJtIDEwMCw2MCAwLDgwIG0gLTQwLC00MCA4MCwwXCJ9LEdbXCJUUC5BTUJVU0hcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOkUuaWNvbkNvbG9yW0NdLGZpbGw6ITEsZDpcIm0gNzcuNSwxMDYgMjAsMCBtIC0yMCwtMTIgMjAsMCBNIDc1LDgyIDk1LDgyIG0gLTIwLDM2IDIwLDAgbSAtMjUsMTIgMjAsMCBNIDcwLDcwIDkwLDcwIE0gODAsNjAgYyAyNSwxNSAyNSw2NSAwLDgwIG0gNDUsLTUwIDEwLDEwIC0xMCwxMCBtIC0yNSwtMTAgMzUsMFwifSxHW1wiVFAuUk9BRCBCTE9DS1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6RS5pY29uQ29sb3JbQ10sZmlsbDohMSxkOlwibSA3MywxMzMgNjAsLTYwIG0gLTY2LDU0IDYwLC02MCBtIC01NCwwIDYwLDYwIG0gLTY2LC01NCA2MCw2MFwifSxHW1wiVFAuUk9BRCBCTE9DSyAoVU5ERVIgQ09OU1RSVUNUSU9OKVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOkUuaWNvbkNvbG9yW0NdLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiNSw1XCIsZDpcIm0gNzMsNjcgNjAsNjAgbSAtNjYsLTU0IDYwLDYwXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTpFLmljb25Db2xvcltDXSxmaWxsOiExLGQ6XCJNIDczLDEzMyAxMzMsNzMgTSA2NywxMjcgMTI3LDY3XCJ9XSxHW1wiVFAuVklUQUwgQVJFQSBDRU5UUkVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNDUsMTAwIDExMCwwIG0gMCwtNDAgMCw4NSBNIDQ1LDYwIGwgMCw4MCBtIDU1LC04MCAwLDgwXCJ9XSxHW1wiVFAuRVNUSU1BVEVEIFBPU0lUSU9OIChFUClcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDE2MCwxNjAgNDAsMTYwIDQwLDQwIDE2MCw0MCBaXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTQwLDEwMCBjIDEsMjYgLTI3LDQ3IC01MS44LDM4IEMgNjMuMSwxMzEgNTEuNSw5OC4zIDY3LDc3LjQgYyAxMy44LC0yMS45IDQ5LC0yMy4yIDY0LC0yLjMgNiw3IDksMTUuOSA5LDI0LjkgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjM1LHRleHQ6XCJFUFwifV0sR1tcIkZPUldBUkQgT0JTRVJWRVIgLyBTUE9UVEVSIFBPU0lUSU9OXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjozfSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDQwLDEzNSA2MCwtNzUgNjAsNzUgelwifV0sR1tcIk1BTiBNQURFIFNQQUNFIERFQlJJUyBTTUFMTFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAsMTEwIDc1LDEwMCA2MCw5MCBtIDUwLDUwIC0xMCwtMTUgLTEwLDE1IG0gNTAsLTUwIC0xNSwxMCAxNSwxMCBNIDkwLDYwIDEwMCw3NSAxMTAsNjBcIn1dLEdbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgTUVESVVNXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxN30se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH1dLEdbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgQklHXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxN30se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCw3NSAxMCwtMTUgMTAsMTUgTSA3NSwxMTAgNjAsMTAwIDc1LDkwIG0gMzUsMzUgLTEwLDE1IC0xMCwtMTUgbSAzNSwtMzUgMTUsMTAgLTE1LDEwXCJ9XSxHW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgU01BTExcIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAsMTEwIDc1LDEwMCA2MCw5MCBtIDUwLDUwIC0xMCwtMTUgLTEwLDE1IG0gNTAsLTUwIC0xNSwxMCAxNSwxMCBNIDkwLDYwIDEwMCw3NSAxMTAsNjBcIn1dLEdbXCJOQVRVUkFMIFNQQUNFIERFQlJJUyBNRURJVU1cIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgQklHXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjE3fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjUwfSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDkwLDc1IDEwLC0xNSAxMCwxNSBNIDc1LDExMCA2MCwxMDAgNzUsOTAgbSAzNSwzNSAtMTAsMTUgLTEwLC0xNSBtIDM1LC0zNSAxNSwxMCAtMTUsMTBcIn1dLEdbXCJUUC5NMS5VTlNQRUNJRklFRFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjU1LGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTQ1LGN5OjEwMCxyOjE1fV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjU1LGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDM1LDc1IDEwLjYsMTMuMyBtIDE4LjgsMCAxMC42LC0xMy4zXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDc1IDEwLjYsMTMuMyBtIDE4LjgsMCAxMC42LC0xMy4zXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTQ1LGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyNSw3NSAxMC42LDEzLjMgbSAxOC44LDAgMTAuNiwtMTMuM1wifV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA2NC40LDg4LjMgNzUsNzUgbSAtNDAsMCAxMC42LDEzLjMgbSAzMi40LDEwIDIsMS43IC0yLDIgeiBtIC04LDEuNyAzLjMsMFwifV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTA5LDg4LjMgMTIwLDc1IG0gLTQwLDAgMTAuNiwxMy4zIG0gMzIuNCwxMCAyLDEuNyAtMiwyIHogbSAtOCwxLjcgMywwXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjE0NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNTQsODguMyAxNjUsNzUgbSAtNDAsMCAxMSwxMy4zIG0gMzIsMTAgMiwxLjcgLTIsMiB6IG0gLTgsMS43IDMsMFwifV0sR1tcIlRQLk0xLkFOVElUQU5LIE1JTkUgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX1dLEdbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV0sR1tcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxNDUsY3k6MTAwLHI6MTV9XSxHW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1NSwxMTUgMCwxMyA2LC02XCJ9XSxHW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDExNSAwLDEzIDYsLTZcIn1dLEdbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAzXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjE0NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDUsMTE1IDAsMTMgNiwtNlwifV0sR1tcIlRQLk0xLldJREUgQVJFQSBBTlRJVEFOSyBNSU5FIDFcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6NTUsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzUsMTE1IDgsMTAgNS41LC0xMSBtIDEzLDAgNS41LDExIDgsLTEwXCJ9XSxHW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODAsMTE1IDgsMTAgNS41LC0xMSBtIDEzLDAgNS41LDExIDgsLTEwXCJ9XSxHW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxNDUsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTI1LDExNSA4LDEwIDUuNSwtMTEgbSAxMywwIDUuNSwxMSA4LC0xMFwifV0sR1tcIlRQLk0xLk1JTkUgQ0xVU1RFUiAxXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjcuNSw1XCIsZDpcIm0gNzMsMTEwIC0zNiwwIGMgMCwtMTAgMywtMjAgMTgsLTIwIDE1LDAgMTgsMTAgMTgsMjAgelwifV0sR1tcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjcuNSw1XCIsZDpcIm0gMTE4LDExMCAtMzYsMCBjIDAsLTEwIDMsLTIwIDE4LC0yMCAxNSwwIDE4LDEwIDE4LDIwIHpcIn1dLEdbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCI3LjUsNVwiLGQ6XCJtIDE2MywxMTAgLTM2LDAgYyAwLC0xMCAzLC0yMCAxOCwtMjAgMTUsMCAxOCwxMCAxOCwyMCB6XCJ9XSxHKUcuaGFzT3duUHJvcGVydHkobykmJihJLmhhc093blByb3BlcnR5KG8pJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrbyksbi5jYWxsKHRoaXMsR1tvXSxUKSxJW29dPUdbb10pfXZhciBrPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbVl0sbGFiZWxzOmZ1bmN0aW9uKEkpe0lbXCJHLVQtRC0tLS0tXCJdPXt9LElbXCJHLVQtSS0tLS0tXCJdPXt9LElbXCJHLVQtTi0tLS0tXCJdPXt9LElbXCJHLUctR1BVVUQtXCJdPXt9LElbXCJHLUctR1BVVUItXCJdPXt9LElbXCJHLUctR1BVVUwtXCJdPXt9LElbXCJHLUctR1BVVVMtXCJdPXt9LElbXCJHLUctR1BVWS0tXCJdPXt9LElbXCJHLUctR1BVWVAtXCJdPXt9LElbXCJHLUctR1BVWUQtXCJdPXt9LElbXCJHLUctR1BVWUwtXCJdPXt9LElbXCJHLUctR1BVWUMtXCJdPXt9LElbXCJHLUctR1BVWVMtXCJdPXt9LElbXCJHLUctR1BVWUItXCJdPXt9LElbXCJHLUctR1BVWUEtXCJdPXt9LElbXCJHLUctR1BVWVYtXCJdPXt9LElbXCJHLUctR1BVWVQtXCJdPXt9LElbXCJHLUctR1BVWVItXCJdPXt9LElbXCJHLUctR1BVWUstXCJdPXt9LElbXCJHLUctR1BVWVgtXCJdPXt9LElbXCJHLUctR1BVUy0tXCJdPXt9LElbXCJHLUctR1BVU0EtXCJdPXt9LElbXCJHLUctR1BVU0QtXCJdPXt9LElbXCJHLUctR1BVU0MtXCJdPXt9LElbXCJHLUctR1BSLS0tXCJdPXt9LElbXCJHLUctR1BSTi0tXCJdPXt9LElbXCJHLUctR1BSUy0tXCJdPXt9LElbXCJHLUctR1BSRC0tXCJdPXt9LElbXCJHLUctR1BSUC0tXCJdPXt9LElbXCJHLUctR1BSTS0tXCJdPXt9LElbXCJHLUctR1BSVy0tXCJdPXt9LElbXCJHLUctR1BSQy0tXCJdPXt9LElbXCJHLUctR1BSSS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjMwLGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQV0EtLVwiXT17fSxJW1wiRy1HLUdQV0QtLVwiXT17fSxJW1wiRy1HLUdQV0UtLVwiXT17fSxJW1wiRy1HLUdQV0ctLVwiXT17fSxJW1wiRy1HLUdQV00tLVwiXT17fSxJW1wiRy1HLUdQV0ktLVwiXT17fSxJW1wiRy1HLUdQV1AtLVwiXT17fSxJW1wiRy1HLUdQRi0tLVwiXT17fSxJW1wiRy1HLUdQSC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQSFEtLVwiXT17fSxJW1wiRy1HLUdQSEEtLVwiXT17fSxJW1wiRy1HLUdQSFktLVwiXT17fSxJW1wiRy1HLUdQSFgtLVwiXT17fSxJW1wiRy1HLUdQTy0tLVwiXT17fSxJW1wiRy1HLUdQT1otLVwiXT17fSxJW1wiRy1HLUdQT0QtLVwiXT17fSxJW1wiRy1HLUdQT1ctLVwiXT17fSxJW1wiRy1HLUdQT1AtLVwiXT17fSxJW1wiRy1HLUdQT1ItLVwiXT17fSxJW1wiRy1HLUdQQS0tLVwiXT17fSxJW1wiRy1HLUdQQVAtLVwiXT17fSxJW1wiRy1HLUdQQVctLVwiXT17fSxJW1wiRy1HLUdQQUstLVwiXT17fSxJW1wiRy1HLUdQQUEtLVwiXT17fSxJW1wiRy1HLUdQQUgtLVwiXT17fSxJW1wiRy1HLUdQQUItLVwiXT17fSxJW1wiRy1HLUdQQUMtLVwiXT17fSxJW1wiRy1HLUdQQUQtLVwiXT17fSxJW1wiRy1HLUdQQUUtLVwiXT17fSxJW1wiRy1HLUdQQVMtLVwiXT17fSxJW1wiRy1HLUdQQVQtLVwiXT17fSxJW1wiRy1HLUdQQU8tLVwiXT17fSxJW1wiRy1HLUdQQVItLVwiXT17fSxJW1wiRy1HLUdQQUwtLVwiXT17fSxJW1wiRy1HLUdQQUYtLVwiXT17fSxJW1wiRy1HLUdQQUctLVwiXT17fSxJW1wiRy1HLUdQQUktLVwiXT17fSxJW1wiRy1HLUdQQUotLVwiXT17fSxJW1wiRy1HLUdQQU0tLVwiXT17fSxJW1wiRy1HLUdQQU4tLVwiXT17fSxJW1wiRy1HLUdQUC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxhZGRpdGlvbmFsSW5mb3JtYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBLLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUEMtLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo0MCxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRy1HUFBPLS1cIl09e30sSVtcIkctRy1HUFBELS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQUEwtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUctR1BQUC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBSLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUEUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUctR1BQUy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBBLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUFctLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyNSxmb250c2l6ZTo3MH19LElbXCJHLUctR1BDLS0tXCJdPXt9LElbXCJHLUctR1BDVS0tXCJdPXt9LElbXCJHLUctR1BDVVItXCJdPXt9LElbXCJHLUctR1BDVUEtXCJdPXt9LElbXCJHLUctR1BDVVMtXCJdPXt9LElbXCJHLUctR1BDVU0tXCJdPXt9LElbXCJHLUctR1BDQS0tXCJdPXt9LElbXCJHLUctR1BDUy0tXCJdPXt9LElbXCJHLUctR1BDTS0tXCJdPXt9LElbXCJHLUctR1BDUC0tXCJdPXt9LElbXCJHLUctR1BDUi0tXCJdPXt9LElbXCJHLUctR1BDQy0tXCJdPXt9LElbXCJHLUctR1BDRS0tXCJdPXt9LElbXCJHLUctR1BDTi0tXCJdPXt9LElbXCJHLUctR1BCLS0tXCJdPXt9LElbXCJHLUctR1BCVS0tXCJdPXt9LElbXCJHLUctR1BCVUEtXCJdPXt9LElbXCJHLUctR1BCVVMtXCJdPXt9LElbXCJHLUctR1BCVU0tXCJdPXt9LElbXCJHLUctR1BCUy0tXCJdPXt9LElbXCJHLUctR1BCU0EtXCJdPXt9LElbXCJHLUctQVBQLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRy1BUEMtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUFQVS0tLVwiXT17fSxJW1wiRy1HLUFQRC0tLVwiXT17fSxJW1wiRy1HLVBOLS0tLVwiXT17fSxJW1wiRy1HLURQVC0tLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExNSx5Ojg1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLURQTy0tLVwiXT17fSxJW1wiRy1HLURQT0MtLVwiXT17fSxJW1wiRy1HLURQT1ItLVwiXT17fSxJW1wiRy1HLURQT0YtLVwiXT17fSxJW1wiRy1HLURQT1MtLVwiXT17fSxJW1wiRy1HLURQT04tLVwiXT17fSxJW1wiRy1HLU9QUC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tT0FPRi0tXCJdPXt9LElbXCJHLU0tT0FPTS0tXCJdPXt9LElbXCJHLU0tT0FPUC0tXCJdPXt9LElbXCJHLU0tT0ItLS0tXCJdPXt9LElbXCJHLU0tT01VLS0tXCJdPXt9LElbXCJHLU0tT01ULS0tXCJdPXt9LElbXCJHLU0tT01ELS0tXCJdPXt9LElbXCJHLU0tT01FLS0tXCJdPXt9LElbXCJHLU0tT01QLS0tXCJdPXt9LElbXCJHLU0tT01XLS0tXCJdPXt9LElbXCJHLU0tT0ZTLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo1NSxmb250c2l6ZTo0MH0saG9zdGlsZTpbe3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDozNSx5OjExMCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSx7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTY1LHk6MTEwLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9XSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNzUsZm9udHNpemU6NDB9fSxJW1wiRy1NLU9IVEwtLVwiXT17YWx0aXR1ZGVEZXB0aDp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6NjAsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLU0tT0hUSC0tXCJdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTUseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctTS1CQ1AtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLVNFLS0tLVwiXT17fSxJW1wiRy1NLVNGLS0tLVwiXT17fSxJW1wiRy1NLVNTLS0tLVwiXT17fSxJW1wiRy1NLVNVLS0tLVwiXT17fSxJW1wiRy1NLU5aLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToyMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToyMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTAwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE0MCxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjUsZm9udHNpemU6MzV9LHR5cGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjYwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORi0tLS1cIl09e30sSVtcIkctTS1ORUItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORUMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORFAtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLU5EQS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tTkRULS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctTS1OREUtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLU5EQi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tTkRPLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctTS1OREQtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1GLVBUUy0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjEyMCx5OjgwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QVE4tLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRi1QQ0YtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjUseToxMTUsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUYtUENTLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QQ0ItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1GLVBDUi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUYtUENILS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QQ0wtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBYLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUEMtLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QWS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBULS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUEQtLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QRS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBMLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUE0tLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QUi0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBVLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUE8tLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QSS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBOLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFMtLS0tXCJdPXt9LElbXCJHLVMtUFNaLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTQS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0ItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNDLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTRC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0UtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNGLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTRy0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0gtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNJLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTSi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QQS0tLS1cIl09e30sSVtcIkctUy1QQVMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBBVC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU8tRUQtLS0tXCJdPXt9LElbXCJHLU8tRVAtLS0tXCJdPXt9LElbXCJHLU8tRVYtLS0tXCJdPXt9LElbXCJHLU8tSE0tLS0tXCJdPXt9LElbXCJHLU8tSEktLS0tXCJdPXt9LElbXCJHLU8tSE8tLS0tXCJdPXt9LElbXCJHLU8tU0ItLS0tXCJdPXt9LElbXCJHLU8tU0JNLS0tXCJdPXt9LElbXCJHLU8tU0JOLS0tXCJdPXt9LElbXCJHLU8tU0JXLS0tXCJdPXt9LElbXCJHLU8tU0JYLS0tXCJdPXt9LElbXCJHLU8tU00tLS0tXCJdPXt9LElbXCJHLU8tU1MtLS0tXCJdPXt9LElbXCJHLU8tRkEtLS0tXCJdPXt9LElbXCJHLU8tRkUtLS0tXCJdPXt9LElbXCJHLU8tRk8tLS0tXCJdPXt9fSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiRy1ULUQtLS0tLVwiXT1FW1wiVFAuREVTVFJPWVwiXSx0W1wiRy1ULUQtLS0tLVwiXT17eDE6MCx4MjoyMDAseTE6NDAseTI6MTYwfSxJW1wiRy1ULUktLS0tLVwiXT1FW1wiVFAuSU5URVJESUNUXCJdLHRbXCJHLVQtSS0tLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLVQtTi0tLS0tXCJdPUVbXCJUUC5ORVVUUkFMSVpFXCJdLHRbXCJHLVQtTi0tLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BVVUQtXCJdPUVbXCJUUC5EQVRVTVwiXSx0W1wiRy1HLUdQVVVELVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVVQi1cIl09RVtcIlRQLkJSSUVGIENPTlRBQ1RcIl0sdFtcIkctRy1HUFVVQi1cIl09e3gxOjUwLHgyOjE1MCx5MTowLHkyOjEwMH0sSVtcIkctRy1HUFVVTC1cIl09RVtcIlRQLkxPU1QgQ09OVEFDVFwiXSx0W1wiRy1HLUdQVVVMLVwiXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJW1wiRy1HLUdQVVVTLVwiXT1FW1wiVFAuU0lOS0VSXCJdLHRbXCJHLUctR1BVVVMtXCJdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbXCJHLUctR1BVWS0tXCJdPUVbXCJUUC5TT05PQlVPWVwiXSx0W1wiRy1HLUdQVVktLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWVAtXCJdPUVbXCJUUC5TT05PQlVPWSBQQVRURVJOIENFTlRFUlwiXSx0W1wiRy1HLUdQVVlQLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUQtXCJdPUVbXCJUUC5TT05PQlVPWSBESUZBUlwiXSx0W1wiRy1HLUdQVVlELVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUwtXCJdPUVbXCJUUC5TT05PQlVPWSBMT0ZBUlwiXSx0W1wiRy1HLUdQVVlMLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUMtXCJdPUVbXCJUUC5TT05PQlVPWSBDQVNTXCJdLHRbXCJHLUctR1BVWUMtXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZUy1cIl09RVtcIlRQLlNPTk9CVU9ZIERJQ0FTU1wiXSx0W1wiRy1HLUdQVVlTLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUItXCJdPUVbXCJUUC5TT05PQlVPWSBCVFwiXSx0W1wiRy1HLUdQVVlCLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUEtXCJdPUVbXCJUUC5TT05PQlVPWSBBTk1cIl0sdFtcIkctRy1HUFVZQS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1HLUdQVVlWLVwiXT1FW1wiVFAuU09OT0JVT1kgVkxBRFwiXSx0W1wiRy1HLUdQVVlWLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWVQtXCJdPUVbXCJUUC5TT05PQlVPWSBBVEFDXCJdLHRbXCJHLUctR1BVWVQtXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZUi1cIl09RVtcIlRQLlNPTk9CVU9ZIFJPXCJdLHRbXCJHLUctR1BVWVItXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZSy1cIl09RVtcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl0sdFtcIkctRy1HUFVZSy1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1HLUdQVVlYLVwiXT1FW1wiVFAuU09OT0JVT1kgRVhQSVJFRFwiXSx0W1wiRy1HLUdQVVlYLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVUy0tXCJdPUVbXCJUUC5TRUFSQ0hcIl0sdFtcIkctRy1HUFVTLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BVU0EtXCJdPUVbXCJUUC5TRUFSQ0ggQVJFQVwiXSx0W1wiRy1HLUdQVVNBLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVTRC1cIl09RVtcIlRQLkRJUCBQT1NJVElPTlwiXSx0W1wiRy1HLUdQVVNELVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVTQy1cIl09RVtcIlRQLlNFQVJDSCBDRU5URVJcIl0sdFtcIkctRy1HUFVTQy1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BSLS0tXCJdPUVbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0sdFtcIkctRy1HUFItLS1cIl09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BSTi0tXCJdPUVbXCJUUC5OQVZJR0FUSU9OQUwgUkVGRVJFTkNFXCJdLHRbXCJHLUctR1BSTi0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUlMtLVwiXT1FW1wiVFAuU1BFQ0lBTCBQT0lOVFwiXSx0W1wiRy1HLUdQUlMtLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUFJELS1cIl09RVtcIlRQLkRMUlBcIl0sdFtcIkctRy1HUFJELS1cIl09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BSUC0tXCJdPUVbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXSx0W1wiRy1HLUdQUlAtLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUFJNLS1cIl09RVtcIlRQLk1BUlNIQUxMIFBPSU5UXCJdLHRbXCJHLUctR1BSTS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUlctLVwiXT1FW1wiVFAuUkVGRVJFTkNFIFBPSU5UIFdBWVBPSU5UXCJdLHRbXCJHLUctR1BSVy0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUkMtLVwiXT1FW1wiVFAuQ09SUklET1IgVEFCXCJdLHRbXCJHLUctR1BSQy0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUkktLVwiXT1FW1wiVFAuUE9JTlQgT0YgSU5URVJFU1RcIl0sdFtcIkctRy1HUFJJLS1cIl09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbXCJHLUctR1BXQS0tXCJdPUVbXCJUUC5BSU0gUE9JTlRcIl0sdFtcIkctRy1HUFdBLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BXRC0tXCJdPUVbXCJUUC5EUk9QIFBPSU5UXCJdLHRbXCJHLUctR1BXRC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTIwfSxJW1wiRy1HLUdQV0UtLVwiXT1FW1wiVFAuRU5UUlkgUE9JTlRcIl0sdFtcIkctRy1HUFdFLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MH0sSVtcIkctRy1HUFdHLS1cIl09RVtcIlRQLkdST1VORCBaRVJPXCJdLHRbXCJHLUctR1BXRy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbXCJHLUctR1BXTS0tXCJdPUVbXCJUUC5NU0wgREVURUNUIFBPSU5UXCJdLHRbXCJHLUctR1BXTS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbXCJHLUctR1BXSS0tXCJdPUVbXCJUUC5JTVBBQ1QgUE9JTlRcIl0sdFtcIkctRy1HUFdJLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BXUC0tXCJdPUVbXCJUUC5QUkVESUNURUQgSU1QQUNUIFBPSU5UXCJdLHRbXCJHLUctR1BXUC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQRi0tLVwiXT1FW1wiVFAuRk9STUFUSU9OXCJdLHRbXCJHLUctR1BGLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSC0tLVwiXT1FW1wiVFAuSEFSQk9SXCJdLHRbXCJHLUctR1BILS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSFEtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sdFtcIkctRy1HUEhRLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BIQS0tXCJdPUVbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSx0W1wiRy1HLUdQSEEtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUEhZLS1cIl09RVtcIlRQLkhBUkJPUiBQT0lOVCBZXCJdLHRbXCJHLUctR1BIWS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSFgtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl0sdFtcIkctRy1HUEhYLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BPLS0tXCJdPUVbXCJUUC5ST1VURVwiXSx0W1wiRy1HLUdQTy0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUE9aLS1cIl09RVtcIlRQLlJPVVRFIFJFTkRFWlZPVVNcIl0sdFtcIkctRy1HUE9aLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPRC0tXCJdPUVbXCJUUC5ST1VURSBESVZFUlNJT05TXCJdLHRbXCJHLUctR1BPRC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1HLUdQT1ctLVwiXT1FW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sdFtcIkctRy1HUE9XLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPUC0tXCJdPUVbXCJUUC5ST1VURSBQSU1cIl0sdFtcIkctRy1HUE9QLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPUi0tXCJdPUVbXCJUUC5ST1VURSBQT0lOVCBSXCJdLHRbXCJHLUctR1BPUi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1HLUdQQS0tLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUEEtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBUC0tXCJdPUVbXCJUUC5DT01CQVQgQUlSIFBBVFJPTCAoQ0FQKVwiXSx0W1wiRy1HLUdQQVAtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFXLS1cIl09RVtcIlRQLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkcgKEFFVylcIl0sdFtcIkctRy1HUEFXLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBSy0tXCJdPUVbXCJUUC5UQU5LSU5HXCJdLHRbXCJHLUctR1BBSy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUEtLVwiXT1FW1wiVFAuRklYRUQgV0lOR1wiXSx0W1wiRy1HLUdQQUEtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFILS1cIl09RVtcIlRQLlJPVEFSWSBXSU5HXCJdLHRbXCJHLUctR1BBSC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUItLVwiXT1FW1wiVFAuU1VDQVAgLSBGSVhFRCBXSU5HXCJdLHRbXCJHLUctR1BBQi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUMtLVwiXT1FW1wiVFAuU1VDQVAgLSBST1RBUlkgV0lOR1wiXSx0W1wiRy1HLUdQQUMtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFELS1cIl09RVtcIlRQLk1JVyAtIEZJWEVEIFdJTkdcIl0sdFtcIkctRy1HUEFELS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBRS0tXCJdPUVbXCJUUC5NSVcgLSBST1RBUlkgV0lOR1wiXSx0W1wiRy1HLUdQQUUtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFTLS1cIl09RVtcIlRQLlNUUklLRSBJUFwiXSx0W1wiRy1HLUdQQVMtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFULS1cIl09RVtcIlRQLlRBQ0FOXCJdLHRbXCJHLUctR1BBVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU8tLVwiXT1FW1wiVFAuVE9NQ0FUXCJdLHRbXCJHLUctR1BBTy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQVItLVwiXT1FW1wiVFAuUkVTQ1VFXCJdLHRbXCJHLUctR1BBUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQUwtLVwiXT1FW1wiVFAuUkVQTEVOSVNIXCJdLHRbXCJHLUctR1BBTC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQUYtLVwiXT1FW1wiVFAuVU5NQU5ORUQgQUVSSUFMIFNZU1RFTVwiXSx0W1wiRy1HLUdQQUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFHLS1cIl09RVtcIlRQLlZUVUFcIl0sdFtcIkctRy1HUEFHLS1cIl09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbXCJHLUctR1BBSS0tXCJdPUVbXCJUUC5PUkJJVFwiXSx0W1wiRy1HLUdQQUktLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFKLS1cIl09RVtcIlRQLk9SQklUIC0gRklHVVJFIEVJR0hUXCJdLHRbXCJHLUctR1BBSi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU0tLVwiXT1FW1wiVFAuT1JCSVQgLSBSQUNFIFRSQUNLXCJdLHRbXCJHLUctR1BBTS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU4tLVwiXT1FW1wiVFAuT1JCSVQgLSBSQU5ET00sIENMT1NFRFwiXSx0W1wiRy1HLUdQQU4tLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUFAtLS1cIl09RVtcIlRQLkFDVElPTiBQT0lOVFwiXSx0W1wiRy1HLUdQUC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBLLS1cIl09RVtcIlRQLkFDVElPTiBDSEVDSyBQT0lOVFwiXSx0W1wiRy1HLUdQUEstLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBDLS1cIl09RVtcIlRQLkNPTlRBQ1QgUE9JTlRcIl0sdFtcIkctRy1HUFBDLS1cIl09e3gxOjU1LHgyOjE0NSx5MTotMTB9LElbXCJHLUctR1BQTy0tXCJdPUVbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl0sdFtcIkctRy1HUFBPLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BQRC0tXCJdPUVbXCJUUC5ERUNJU0lPTiBQT0lOVFwiXSx0W1wiRy1HLUdQUEQtLVwiXT17eDE6MzAseDI6MTcwLHkxOjI1LHkyOjE2MH0sSVtcIkctRy1HUFBMLS1cIl09RVtcIlRQLkFDVElPTiBMSU5LVVAgUE9JTlRcIl0sdFtcIkctRy1HUFBMLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUctR1BQUC0tXCJdPUVbXCJUUC5BQ1RJT04gUEFTU0FHRSBQT0lOVFwiXSx0W1wiRy1HLUdQUFAtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBSLS1cIl09RVtcIlRQLkFDVElPTiBSQUxMWSBQT0lOVFwiXSx0W1wiRy1HLUdQUFItLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBFLS1cIl09RVtcIlRQLkFDVElPTiBSRUxFQVNFIFBPSU5UXCJdLHRbXCJHLUctR1BQRS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1HLUdQUFMtLVwiXT1FW1wiVFAuQUNUSU9OIFNUQVJUIFBPSU5UXCJdLHRbXCJHLUctR1BQUy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1HLUdQUEEtLVwiXT1FW1wiVFAuQUNUSU9OIEFNTkVTVFkgUE9JTlRcIl0sdFtcIkctRy1HUFBBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUctR1BQVy0tXCJdPUVbXCJUUC5XQVlQT0lOVFwiXSx0W1wiRy1HLUdQUFctLVwiXT17eDE6NjAseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEMtLS1cIl09RVtcIlRQLlNFQSBTVVJGQUNFIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQy0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVLS1cIl09RVtcIlRQLihVU1YpIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1UtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVUi1cIl09RVtcIlRQLihSTVYpIFVTViBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENVUi1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDVUEtXCJdPUVbXCJUUC5VU1YgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDVUEtXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1VTLVwiXT1FW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1VTLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVTS1cIl09RVtcIlRQLlVTViAtIE1JVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENVTS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDQS0tXCJdPUVbXCJUUC5BU1cgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDQS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1MtLVwiXT1FW1wiVFAuU1VXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1MtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENNLS1cIl09RVtcIlRQLk1JVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENNLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDUC0tXCJdPUVbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDUC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1ItLVwiXT1FW1wiVFAuUkVOREVaVk9VUyBDT05UUk9MIFBPSU5UXCJdLHRbXCJHLUctR1BDUi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ0MtLVwiXT1FW1wiVFAuUkVTQ1VFIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUENDLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDRS0tXCJdPUVbXCJUUC5SRVBMRU5JU0hNRU5UIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUENFLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDTi0tXCJdPUVbXCJUUC5OT05DT01CQVRBTlQgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDTi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQi0tLVwiXT1FW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCLS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlUtLVwiXT1FW1wiVFAuKFVVVikgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCVS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlVBLVwiXT1FW1wiVFAuVVVWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQlVBLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEJVUy1cIl09RVtcIlRQLlVVViAtIFNVVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUEJVUy1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BCVU0tXCJdPUVbXCJUUC5VVVYgLSBNSVcgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCVU0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlMtLVwiXT1FW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQlMtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEJTQS1cIl09RVtcIlRQLkFTVyBTVUJNQVJJTkUgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCU0EtXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUFQUC0tLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlQgKEFDUClcIl0sdFtcIkctRy1BUFAtLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctQVBDLS0tXCJdPUVbXCJUUC5DT01NVU5JQ0FUSU9OUyBDSEVDS1BPSU5UXCJdLHRbXCJHLUctQVBDLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUFQVS0tLVwiXT1FW1wiVFAuUFVMTC1VUCBQT0lOVFwiXSx0W1wiRy1HLUFQVS0tLVwiXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1BUEQtLS1cIl09RVtcIlRQLkRPV05FRCBBSVJDUkVXIFBJQ0tVUCBQT0lOVFwiXSx0W1wiRy1HLUFQRC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1QTi0tLS1cIl09RVtcIlRQLkRVTU1ZIE1JTkVGSUVMRFwiXSx0W1wiRy1HLVBOLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNDB9LElbXCJHLUctRFBULS0tXCJdPUVbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbXCJHLUctRFBPLS0tXCJdPUVbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sdFtcIkctRy1EUE8tLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPQy0tXCJdPUVbXCJUUC5DT01CQVQgT1VUUE9TVFwiXSx0W1wiRy1HLURQT0MtLVwiXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVtcIkctRy1EUE9SLS1cIl09RVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sdFtcIkctRy1EUE9SLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPRi0tXCJdPUVbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdLHRbXCJHLUctRFBPRi0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJW1wiRy1HLURQT1MtLVwiXT1FW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sdFtcIkctRy1EUE9TLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPTi0tXCJdPUVbXCJUUC5DQlJOIE9CU0VSVkFUSU9OIFBPU1RcIl0sdFtcIkctRy1EUE9OLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctT1BQLS0tXCJdPUVbXCJUUC5QT0lOVCBPRiBERVBBUlRVUkVcIl0sdFtcIkctRy1PUFAtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tT0FPRi0tXCJdPUVbXCJUUC5GSVhFRCBBTkQgUFJFRkFCUklDQVRFRFwiXSx0W1wiRy1NLU9BT0YtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1NLU9BT00tLVwiXT1FW1wiVFAuVEVUUkFIRURST05TXCJdLHRbXCJHLU0tT0FPTS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzB9LElbXCJHLU0tT0FPUC0tXCJdPUVbXCJUUC5URVRSQUhFRFJPTlMgTU9WQUJMRVwiXSx0W1wiRy1NLU9BT1AtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1NLU9CLS0tLVwiXT1FW1wiVFAuQk9PQlkgVFJBUFwiXSxJW1wiRy1NLU9NVS0tLVwiXT1FW1wiVFAuVU5TUEVDSUZJRUQgTUlORVwiXSxJW1wiRy1NLU9NVC0tLVwiXT1FW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLElbXCJHLU0tT01ELS0tXCJdPUVbXCJUUC4oQVQpIEFOVElIQU5ETElORyBERVZJQ0VcIl0sdFtcIkctTS1PTUQtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxOTV9LElbXCJHLU0tT01FLS0tXCJdPUVbXCJUUC4oQVQpIERJUkVDVElPTkFMXCJdLHRbXCJHLU0tT01FLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MTAseTI6MTQwfSxJW1wiRy1NLU9NUC0tLVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbXCJHLU0tT01XLS0tXCJdPUVbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVtcIkctTS1PRlMtLS1cIl09RVtcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdLHRbXCJHLU0tT0ZTLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJW1wiRy1NLU9IVEwtLVwiXT1FW1wiVFAuVE9XRVIgTE9XXCJdLHRbXCJHLU0tT0hUTC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzAseTI6MTIwfSxJW1wiRy1NLU9IVEgtLVwiXT1FW1wiVFAuVE9XRVIgSElHSFwiXSx0W1wiRy1NLU9IVEgtLVwiXT17eDE6NTAseDI6MTUwLHkxOjMwLHkyOjEyMH0sSVtcIkctTS1CQ1AtLS1cIl09RVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sdFtcIkctTS1CQ1AtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tU0UtLS0tXCJdPUVbXCJUUC5FQVJUSFdPUksvRk9SVElGSUNBVElPTlwiXSxJW1wiRy1NLVNGLS0tLVwiXT1FW1wiVFAuRk9SVFwiXSxJW1wiRy1NLVNTLS0tLVwiXT1FW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdLElbXCJHLU0tU1UtLS0tXCJdPUVbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbXCJHLU0tTlotLS0tXCJdPUVbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPXCJdLHRbXCJHLU0tTlotLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5GLS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBGQUxMT1VUIFBST0RVQ0lOR1wiXSx0W1wiRy1NLU5GLS0tLVwiXT17eDE6NTAseDI6MTUwLHkxOi0yMH0sSVtcIkctTS1ORUItLS1cIl09RVtcIlRQLlJFTEVBU0UgRVZFTlRTIEJJT0xPR0lDQUxcIl0sdFtcIkctTS1ORUItLS1cIl09e3gxOi0xMCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5FQy0tLVwiXT1FW1wiVFAuUkVMRUFTRSBFVkVOVFMgQ0hFTUlDQUxcIl0sdFtcIkctTS1ORUMtLS1cIl09e3gxOi0yMCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5EUC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVFwiXSx0W1wiRy1NLU5EUC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTS1OREEtLS1cIl09RVtcIlRQLkFMVEVSTkFURSBERUNPTiBTSVRFL1BPSU5UXCJdLHRbXCJHLU0tTkRBLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1NLU5EVC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoVFJPT1BTKVwiXSx0W1wiRy1NLU5EVC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTS1OREUtLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKEVRVUlQTUVOVClcIl0sdFtcIkctTS1OREUtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tTkRCLS0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl0sdFtcIkctTS1OREItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tTkRPLS0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChPUEVSQVRJT05BTCBERUNPTlRBTUlOQVRJT04pXCJdLHRbXCJHLU0tTkRPLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1NLU5ERC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoVEhPUk9VR0ggREVDT05UQU1JTkFUSU9OKVwiXSx0W1wiRy1NLU5ERC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRi1QVFMtLS1cIl09RVtcIlRQLlBPSU5UL1NJTkdMRSBUQVJHRVRcIl0sSVtcIkctRi1QVE4tLS1cIl09RVtcIlRQLk5VQ0xFQVIgVEFSR0VUXCJdLElbXCJHLUYtUENGLS0tXCJdPUVbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxJW1wiRy1GLVBDUy0tLVwiXT1FW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRi1QQ1MtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENCLS0tXCJdPUVbXCJUUC5GSVJJTkcgUE9JTlRcIl0sdFtcIkctRi1QQ0ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENSLS0tXCJdPUVbXCJUUC5SRUxPQUQgUE9JTlRcIl0sdFtcIkctRi1QQ1ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENILS0tXCJdPUVbXCJUUC5ISURFIFBPSU5UXCJdLHRbXCJHLUYtUENILS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1GLVBDTC0tLVwiXT1FW1wiVFAuTEFVTkNIIFBPSU5UXCJdLHRbXCJHLUYtUENMLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBYLS0tLVwiXT1FW1wiVFAuQU1CVUxBTkNFIEVYQ0hBTkdFIFBPSU5UXCJdLHRbXCJHLVMtUFgtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBDLS0tLVwiXT1FW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdLHRbXCJHLVMtUEMtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBZLS0tLVwiXT1FW1wiVFAuQ0FTVUFMVFkgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1TLVBZLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QVC0tLS1cIl09RVtcIlRQLkNJVklMSUFOIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QVC0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUEQtLS0tXCJdPUVbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLVMtUEQtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBFLS0tLVwiXT1FW1wiVFAuRVBXIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QRS0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUEwtLS0tXCJdPUVbXCJUUC5MT0dJU1RJQ1MgUkVMRUFTRSBQT0lOVFwiXSx0W1wiRy1TLVBMLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTS0tLS1cIl09RVtcIlRQLk1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QTS0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUFItLS0tXCJdPUVbXCJUUC5SRUFSTSwgUkVGVUVMIEFORCBSRVNVUFBMWSBQT0lOVFwiXSx0W1wiRy1TLVBSLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QVS0tLS1cIl09RVtcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXSx0W1wiRy1TLVBVLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTy0tLS1cIl09RVtcIlRQLlRSQUZGSUMgQ09OVFJPTCBQT1NUXCJdLHRbXCJHLVMtUE8tLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBJLS0tLVwiXT1FW1wiVFAuVFJBSUxFUiBUUkFOU0ZFUiBQT0lOVFwiXSx0W1wiRy1TLVBJLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTi0tLS1cIl09RVtcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1TLVBOLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU1otLS1cIl09RVtcIlRQLlNVUFBMWSBQT0lOVFwiXSx0W1wiRy1TLVBTWi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0EtLS1cIl09RVtcIlRQLlNQIENMQVNTIElcIl0sdFtcIkctUy1QU0EtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUFNCLS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJSVwiXSx0W1wiRy1TLVBTQi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0MtLS1cIl09RVtcIlRQLlNQIENMQVNTIElJSVwiXSx0W1wiRy1TLVBTQy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0QtLS1cIl09RVtcIlRQLlNQIENMQVNTIElWXCJdLHRbXCJHLVMtUFNELS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTRS0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVlwiXSx0W1wiRy1TLVBTRS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0YtLS1cIl09RVtcIlRQLlNQIENMQVNTIFZJXCJdLHRbXCJHLVMtUFNGLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTRy0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVklJXCJdLHRbXCJHLVMtUFNHLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTSC0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVklJSVwiXSx0W1wiRy1TLVBTSC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0ktLS1cIl09RVtcIlRQLlNQIENMQVNTIElYXCJdLHRbXCJHLVMtUFNJLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTSi0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgWFwiXSx0W1wiRy1TLVBTSi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QQVMtLS1cIl09RVtcIlRQLkFNTVVOSVRJT04gU1VQUExZIFBPSU5UIChBU1ApXCJdLHRbXCJHLVMtUEFTLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBBVC0tLVwiXT1FW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXSx0W1wiRy1TLVBBVC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTy1FRC0tLS1cIl09RVtcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl0sSVtcIkctTy1FUC0tLS1cIl09RVtcIlRQLlBFUlNPTiBJTiBXQVRFUlwiXSxJW1wiRy1PLUVWLS0tLVwiXT1FW1wiVFAuRElTVFJFU1NFRCBWRVNTRUxcIl0sSVtcIkctTy1ITS0tLS1cIl09RVtcIlRQLlNFQSBNSU5FTElLRVwiXSx0W1wiRy1PLUhNLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE1MH0sSVtcIkctTy1ISS0tLS1cIl09RVtcIlRQLklDRUJFUkdcIl0sdFtcIkctTy1ISS0tLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLU8tSE8tLS0tXCJdPUVbXCJUUC5PSUwgUklHL1BMQVRGT1JNXCJdLHRbXCJHLU8tSE8tLS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1PLVNCLS0tLVwiXT1FW1wiVFAuQk9UVE9NIFJFVFVSTlwiXSx0W1wiRy1PLVNCLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVtcIkctTy1TQk0tLS1cIl09RVtcIlRQLklOU1RBTExBVElPTi9NQU5NQURFXCJdLHRbXCJHLU8tU0JNLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTAwfSxJW1wiRy1PLVNCTi0tLVwiXT1FW1wiVFAuQk9UVE9NIFJFVFVSTlwiXSx0W1wiRy1PLVNCTi0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVtcIkctTy1TQlctLS1cIl09RVtcIlRQLldSRUNLLCBOT04gREFOR0VST1VTXCJdLHRbXCJHLU8tU0JXLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NzAseTI6MTMwfSxJW1wiRy1PLVNCWC0tLVwiXT1FW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXSx0W1wiRy1PLVNCWC0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjcwLHkyOjEzMH0sSVtcIkctTy1TTS0tLS1cIl09RVtcIlRQLk1BUklORSBMSUZFXCJdLHRbXCJHLU8tU00tLS0tXCJdPXt4MToxMDAseDI6MjIwLHkxOjcwLHkyOjEzMH0sSVtcIkctTy1TUy0tLS1cIl09RVtcIlRQLlNFQSBBTk9NQUxZXCJdLHRbXCJHLU8tU1MtLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzAseTI6MTIwfSxJW1wiRy1PLUZBLS0tLVwiXT1FW1wiVFAuRklYIEFDT1VTVElDXCJdLElbXCJHLU8tRkUtLS0tXCJdPUVbXCJUUC5GSVggRUxFQ1RSTy1NQUdORVRJQ1wiXSxJW1wiRy1PLUZPLS0tLVwiXT1FW1wiVFAuRklYIEVMRUNUUk8tT1BUSUNBTFwiXX19O3ZhciBCPVtMLHksaCx4LFUscCxtLEYse3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltWXSxsYWJlbHM6ZnVuY3Rpb24oSSl7SVtcIkctVC1HRC0tLS1cIl09e30sSVtcIkctVC1HSS0tLS1cIl09e30sSVtcIkctVC1HTi0tLS1cIl09e30sSVtcIkctQy1NR1BGRS1cIl09e30sSVtcIkctQy1NR1BGQS1cIl09e30sSVtcIkctQy1NR1BGTy1cIl09e30sSVtcIkctQy1NR1BJLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MzAsZm9udHNpemU6NDUsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtTUFBUC0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1NQUFDLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU1BQVUtLVwiXT17fSxJW1wiRy1DLU1BQUQtLVwiXT17fSxJW1wiRy1DLU1ETi0tLVwiXT17fSxJW1wiRy1DLU1NUFQtLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExNSx5Ojg1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU1NUE8tLVwiXT17fSxJW1wiRy1DLU1NUE9DLVwiXT17fSxJW1wiRy1DLU1NUE9SLVwiXT17fSxJW1wiRy1DLU1NUE9GLVwiXT17fSxJW1wiRy1DLU1NUE9TLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1PUEQtLVwiXT17fSxJW1wiRy1DLUJPQVRELVwiXT17fSxJW1wiRy1DLUJPQUItLVwiXT17fSxJW1wiRy1DLUJPQU1BLVwiXT17fSxJW1wiRy1DLUJPQU1ULVwiXT17fSxJW1wiRy1DLUJPQU1ELVwiXT17fSxJW1wiRy1DLUJPQU1DLVwiXT17fSxJW1wiRy1DLUJPQU1VLVwiXT17fSxJW1wiRy1DLUJPQU1OLVwiXT17fSxJW1wiRy1DLUJPQUlQLVwiXT17fSxJW1wiRy1DLUJPQUlDLVwiXT17fSxJW1wiRy1DLUJPQUlOLVwiXT17fSxJW1wiRy1DLUJPQUlTLVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQUlILVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQUlELVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQVYtLVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJZQ0ctLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQlNFLS0tXCJdPXt9LElbXCJHLUMtQlNGLS0tXCJdPXt9LElbXCJHLUMtQlNILS0tXCJdPXt9LElbXCJHLUMtQlNVLS0tXCJdPXt9LElbXCJHLUMtQldOLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjIwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjIwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTQwLGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yNSxmb250c2l6ZTozNX0sdHlwZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6NjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMDAsZm9udHNpemU6MzV9fSxJW1wiRy1DLUJXRS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToyMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToyMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTAwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE0MCxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjUsZm9udHNpemU6MzV9LHR5cGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjYwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctQy1CV0ktLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx0eXBlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwMCxmb250c2l6ZTozNX19LElbXCJHLUMtQldGLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjIwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjIwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTQwLGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yNSxmb250c2l6ZTozNX0sdHlwZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6NjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMDAsZm9udHNpemU6MzV9fSxJW1wiRy1DLUJXUC0tLVwiXT17fSxJW1wiRy1DLUJXRFAtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldEQS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RULS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUJXREUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldEUy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RPLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUJXREctLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldERU0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RURi1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUZTVFAtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjEyMCx5OjgwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1GU1MtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjUseToxMTUsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtRkFVLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6ODAsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtU1BBLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUEMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQWS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BULS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUEQtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQRS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BMLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUE0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BVLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUE8tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQSS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BOLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFULS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRQS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUItLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFDLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRRC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFGLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRRy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUgtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFJLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRSi0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQTUEtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BNVC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PWC0tLS1cIl09e30sSVtcIkctQy1PWFJOLS1cIl09e30sSVtcIkctQy1PWFJELS1cIl09e30sSVtcIkctQy1PWFVELS1cIl09e30sSVtcIkctQy1PWFVCLS1cIl09e30sSVtcIkctQy1PWFVMLS1cIl09e30sSVtcIkctQy1PWFVTLS1cIl09e30sSVtcIkctQy1PWFdBLS1cIl09e30sSVtcIkctQy1PWFdELS1cIl09e30sSVtcIkctQy1PWFdFLS1cIl09e30sSVtcIkctQy1PWFdHLS1cIl09e30sSVtcIkctQy1PWFdNLS1cIl09e30sSVtcIkctQy1PWFdJLS1cIl09e30sSVtcIkctQy1PWFdQLS1cIl09e30sSVtcIkctQy1PWFktLS1cIl09e30sSVtcIkctQy1PWFlQLS1cIl09e30sSVtcIkctQy1PWFlELS1cIl09e30sSVtcIkctQy1PWFlMLS1cIl09e30sSVtcIkctQy1PWFlDLS1cIl09e30sSVtcIkctQy1PWFlTLS1cIl09e30sSVtcIkctQy1PWFlCLS1cIl09e30sSVtcIkctQy1PWFlBLS1cIl09e30sSVtcIkctQy1PWFlWLS1cIl09e30sSVtcIkctQy1PWFlULS1cIl09e30sSVtcIkctQy1PWFlSLS1cIl09e30sSVtcIkctQy1PWFlLLS1cIl09e30sSVtcIkctQy1PWE4tLS1cIl09e30sSVtcIkctQy1PWEgtLS1cIl09e30sSVtcIkctQy1PWEhRLS1cIl09e30sSVtcIkctQy1PWEhBLS1cIl09e30sSVtcIkctQy1PWEhZLS1cIl09e30sSVtcIkctQy1PWEhYLS1cIl09e30sSVtcIkctQy1PWFItLS1cIl09e30sSVtcIkctQy1PWFJSLS1cIl09e30sSVtcIkctQy1PWFJELS1cIl09e30sSVtcIkctQy1PWFJXLS1cIl09e30sSVtcIkctQy1PWFJQLS1cIl09e30sSVtcIkctQy1PWFJULS1cIl09e30sSVtcIkctQy1PWFNUQy1cIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YU1RDUFwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo5Mixmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseToxMjgsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT1hTVENBXCJdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjkyLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyOCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PWFNUUi1cIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YU1RILVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo5Mixmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseToxMjgsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT1hTVFMtXCJdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjkyLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyOCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PWFNUU0FcIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YUy0tLVwiXT17fSxJW1wiRy1DLU9YU0EtLVwiXT17fSxJW1wiRy1DLU9YU0QtLVwiXT17fSxJW1wiRy1DLU9YU0MtLVwiXT17fSxJW1wiRy1DLU9YQUMtLVwiXT17fSxJW1wiRy1DLU9YQUEtLVwiXT17fSxJW1wiRy1DLU9YQVQtLVwiXT17fSxJW1wiRy1DLU9YQUstLVwiXT17fSxJW1wiRy1DLU9YQUYtLVwiXT17fSxJW1wiRy1DLU9YQUgtLVwiXT17fSxJW1wiRy1DLU9YQU8tLVwiXT17fSxJW1wiRy1DLU9YQVItLVwiXT17fSxJW1wiRy1DLU9YQVAtLVwiXT17fSxJW1wiRy1DLU9YQU0tLVwiXT17fSxJW1wiRy1DLU9YQVMtLVwiXT17fSxJW1wiRy1DLU9YQUQtLVwiXT17fSxJW1wiRy1DLU9HLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dDLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PR1AtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NDAsZm9udHNpemU6NDUsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT0dULS0tXCJdPXt9LElbXCJHLUMtT0dELS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PR0wtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLU9HTi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dSLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PR1MtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLU9HSS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dXLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI1LGZvbnRzaXplOjcwfX0sSVtcIkctTy1WQS0tLS1cIl09e30sSVtcIkctTy1WUi0tLS1cIl09e30sSVtcIkctTy1WRS0tLS1cIl09e30sSVtcIkctTy1WQi0tLS1cIl09e30sSVtcIkctTy1WWS0tLS1cIl09e30sSVtcIkctTy1WRC0tLS1cIl09e30sSVtcIkctTy1WSS0tLS1cIl09e30sSVtcIkctTy1WTS0tLS1cIl09e30sSVtcIkctTy1WSy0tLS1cIl09e30sSVtcIkctTy1WUy0tLS1cIl09e30sSVtcIkctTy1WUC0tLS1cIl09e30sSVtcIkctTy1WVS0tLS1cIl09e30sSVtcIkctTy1WQy0tLS1cIl09e30sSVtcIkctTy1WSC0tLS1cIl09e30sSVtcIkctTy1WRi0tLS1cIl09e30sSVtcIkctTy1WTy0tLS1cIl09e30sSVtcIkctTy1WTC0tLS1cIl09e30sSVtcIkctTy1WWC0tLS1cIl09e30sSVtcIkctTy1WWi0tLS1cIl09e30sSVtcIkctTy1MQi0tLS1cIl09e30sSVtcIkctTy1MRy0tLS1cIl09e30sSVtcIkctTy1MVy0tLS1cIl09e30sSVtcIkctTy1QUi0tLS1cIl09e30sSVtcIkctTy1QUkItLS1cIl09e30sSVtcIkctTy1QVC0tLS1cIl09e30sSVtcIkctTy1QQy0tLS1cIl09e30sSVtcIkctTy1QQ1UtLS1cIl09e30sSVtcIkctTy1QRC0tLS1cIl09e30sSVtcIkctTy1QTS0tLS1cIl09e30sSVtcIkctTy1QSC0tLS1cIl09e30sSVtcIkctTy1QSFktLS1cIl09e30sSVtcIkctTy1QSFctLS1cIl09e30sSVtcIkctTy1QSEctLS1cIl09e30sSVtcIkctTy1QSFQtLS1cIl09e30sSVtcIkctTy1QRy0tLS1cIl09e30sSVtcIkctTy1QUy0tLS1cIl09e30sSVtcIkctTy1QRi0tLS1cIl09e30sSVtcIkctTy1QSS0tLS1cIl09e30sSVtcIkctTy1QRS0tLS1cIl09e30sSVtcIkctTy1QWC0tLS1cIl09e30sSVtcIkctTy1QSlYtLS1cIl09e30sSVtcIkctTy1QSkEtLS1cIl09e30sSVtcIkctTy1QSkItLS1cIl09e30sSVtcIkctTy1QSy0tLS1cIl09e30sSVtcIkctTy1QQS0tLS1cIl09e30sSVtcIkctTy1QTy0tLS1cIl09e30sSVtcIkctTy1JUi0tLS1cIl09e30sSVtcIkctTy1JUy0tLS1cIl09e30sSVtcIkctTy1JRy0tLS1cIl09e30sSVtcIkctTy1JVi0tLS1cIl09e30sSVtcIkctTy1JSy0tLS1cIl09e30sSVtcIkctTy1JRC0tLS1cIl09e30sSVtcIkctTy1JRi0tLS1cIl09e319LGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJHLVQtR0QtLS0tXCJdPUVbXCJUUC5ERVNUUk9ZXCJdLHRbXCJHLVQtR0QtLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLVQtR0ktLS0tXCJdPUVbXCJUUC5JTlRFUkRJQ1RcIl0sdFtcIkctVC1HSS0tLS1cIl09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVtcIkctVC1HTi0tLS1cIl09RVtcIlRQLk5FVVRSQUxJWkVcIl0sdFtcIkctVC1HTi0tLS1cIl09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1NR1BGRS1cIl09RVtcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdLElbXCJHLUMtTUdQRkEtXCJdPUVbXCJUUC5GSVggQUNPVVNUSUNcIl0sSVtcIkctQy1NR1BGTy1cIl09RVtcIlRQLkZJWCBFTEVDVFJPLU9QVElDQUxcIl0sSVtcIkctQy1NR1BJLS1cIl09RVtcIlRQLlBPSU5UIE9GIElOVEVSRVNUXCJdLHRbXCJHLUMtTUdQSS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6LTI1fSxJW1wiRy1DLU1BQVAtLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlQgKEFDUClcIl0sdFtcIkctQy1NQUFQLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtTUFBQy0tXCJdPUVbXCJUUC5DT01NVU5JQ0FUSU9OUyBDSEVDS1BPSU5UXCJdLHRbXCJHLUMtTUFBQy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU1BQVUtLVwiXT1FW1wiVFAuUFVMTC1VUCBQT0lOVFwiXSx0W1wiRy1DLU1BQVUtLVwiXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1NQUFELS1cIl09RVtcIlRQLkRPV05FRCBBSVJDUkVXIFBJQ0tVUCBQT0lOVFwiXSx0W1wiRy1DLU1BQUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1NRE4tLS1cIl09RVtcIlRQLkRVTU1ZIE1JTkVGSUVMRFwiXSx0W1wiRy1DLU1ETi0tLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNDB9LElbXCJHLUMtTU1QVC0tXCJdPUVbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbXCJHLUMtTU1QTy0tXCJdPUVbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sdFtcIkctQy1NTVBPLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT0MtXCJdPUVbXCJUUC5DT01CQVQgT1VUUE9TVFwiXSx0W1wiRy1DLU1NUE9DLVwiXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVtcIkctQy1NTVBPUi1cIl09RVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sdFtcIkctQy1NTVBPUi1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT0YtXCJdPUVbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdLHRbXCJHLUMtTU1QT0YtXCJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJW1wiRy1DLU1NUE9TLVwiXT1FW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sdFtcIkctQy1NTVBPUy1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT04tXCJdPUVbXCJUUC5DQlJOIE9CU0VSVkFUSU9OIFBPU1RcIl0sdFtcIkctQy1NTVBPTi1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU9QRC0tXCJdPUVbXCJUUC5QT0lOVCBPRiBERVBBUlRVUkVcIl0sdFtcIkctQy1NT1BELS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQk9BVEQtXCJdPUVbXCJUUC5GSVhFRCBBTkQgUFJFRkFCUklDQVRFRFwiXSx0W1wiRy1DLUJPQVRELVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1DLUJPQUItLVwiXT1FW1wiVFAuQk9PQlkgVFJBUFwiXSxJW1wiRy1DLUJPQU1BLVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbXCJHLUMtQk9BTVQtXCJdPUVbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0sSVtcIkctQy1CT0FNRC1cIl09RVtcIlRQLihBVCkgQU5USUhBTkRMSU5HIERFVklDRVwiXSx0W1wiRy1DLUJPQU1ELVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE5NX0sSVtcIkctQy1CT0FNQy1cIl09RVtcIlRQLihBVCkgRElSRUNUSU9OQUxcIl0sdFtcIkctQy1CT0FNQy1cIl09e3gxOjYwLHgyOjE0MCx5MToxMCx5MjoxNDB9LElbXCJHLUMtQk9BTVUtXCJdPUVbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdLElbXCJHLUMtQk9BTVctXCJdPUVbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVtcIkctQy1CT0FJUC1cIl09RVtcIlRQLlBMQU5ORUQgTUlORUZJRUxEXCJdLHRbXCJHLUMtQk9BSVAtXCJdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJW1wiRy1DLUJPQUlDLVwiXT1FW1wiVFAuTUlORUZJRUxEUyBTVEFUSUNcIl0sdFtcIkctQy1CT0FJQy1cIl09e3gxOjQwLHgyOjE2MCx5MTo2MCx5MjoxNDB9LElbXCJHLUMtQk9BSU4tXCJdPUVbXCJUUC5BTlRJVEFOSyAoQVQpIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQUlOLVwiXT17eDE6NDAseDI6MTYwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1CT0FJUy1cIl09RVtcIlRQLlNDQVRURVJBQkxFIE1JTkVTXCJdLHRbXCJHLUMtQk9BSVMtXCJdPXt4MTo0MCx4MjoxNjAseTE6MjAseTI6MTQwfSxJW1wiRy1DLUJPQUlILVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQUlILVwiXT17eDE6NDAseDI6MTYwLHkxOjIwLHkyOjE0MH0sSVtcIkctQy1CT0FJRC1cIl09RVtcIlRQLlNDQVRURVJBQkxFIE1JTkVGSUVMRCBXSVRIIFNFTEYtREVTVFJVQ1RcIl0sdFtcIkctQy1CT0FJRC1cIl09e3gxOjQwLHgyOjE2MCx5MToyMCx5MjoxNDB9LElbXCJHLUMtQk9BVi0tXCJdPUVbXCJUUC5WT0xDQU5PIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQVYtLVwiXT17eDE6NDAseDI6MTYwLHkxOjIwLHkyOjE0MH0sSVtcIkctQy1CWUNHLS1cIl09RVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sdFtcIkctQy1CWUNHLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQlNFLS0tXCJdPUVbXCJUUC5FQVJUSFdPUksvRk9SVElGSUNBVElPTlwiXSxJW1wiRy1DLUJTRi0tLVwiXT1FW1wiVFAuRk9SVFwiXSxJW1wiRy1DLUJTSC0tLVwiXT1FW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdLElbXCJHLUMtQlNVLS0tXCJdPUVbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbXCJHLUMtQldOLS0tXCJdPUVbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPXCJdLHRbXCJHLUMtQldOLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTIwfSxJW1wiRy1DLUJXRS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBERVRPTkFUSU9OUyBHUk9VTkQgWkVST1wiXSx0W1wiRy1DLUJXRS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV0ktLS1cIl09RVtcIlRQLk5VQ0xFQVIgREVUT05BVElPTlMgR1JPVU5EIFpFUk8gUExBTk5FRFwiXSx0W1wiRy1DLUJXSS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV0YtLS1cIl09RVtcIlRQLk5VQ0xFQVIgREVUT05BVElPTlMgR1JPVU5EIFpFUk8gUExBTk5FRFwiXSx0W1wiRy1DLUJXRi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV1AtLS1cIl09RVtcIlRQLk5VQ0xFQVIgRkFMTE9VVCBQUk9EVUNJTkdcIl0sdFtcIkctQy1CV1AtLS1cIl09e3gxOjUwLHgyOjE1MCx5MTotMjB9LElbXCJHLUMtQldEUC0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UXCJdLHRbXCJHLUMtQldEUC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREEtLVwiXT1FW1wiVFAuQUxURVJOQVRFIERFQ09OIFNJVEUvUE9JTlRcIl0sdFtcIkctQy1CV0RBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQldEVC0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUUk9PUFMpXCJdLHRbXCJHLUMtQldEVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREUtLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoRVFVSVBNRU5UKVwiXSx0W1wiRy1DLUJXREUtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RTLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKEVRVUlQTUVOVCBBTkQgVFJPT1BTKVwiXSx0W1wiRy1DLUJXRFMtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RPLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKE9QRVJBVElPTkFMIERFQ09OVEFNSU5BVElPTilcIl0sdFtcIkctQy1CV0RPLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQldERy0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUSE9ST1VHSCBERUNPTlRBTUlOQVRJT04pXCJdLHRbXCJHLUMtQldERy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREVNLVwiXT1FW1wiVFAuREVDT04gUE9JTlQgKE1BSU4pIEVRVUlQTUVOVFwiXSx0W1wiRy1DLUJXREVNLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RURi1cIl09RVtcIlRQLkRFQ09OIFBPSU5UIChGT1JXQVJEKSBUUk9PUFNcIl0sdFtcIkctQy1CV0RURi1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtRlNUUC0tXCJdPUVbXCJUUC5QT0lOVC9TSU5HTEUgVEFSR0VUXCJdLElbXCJHLUMtRlNTLS0tXCJdPUVbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxJW1wiRy1DLUZBVS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBUQVJHRVRcIl0sSVtcIkctQy1TUEEtLS1cIl09RVtcIlRQLkFNQlVMQU5DRSBFWENIQU5HRSBQT0lOVFwiXSx0W1wiRy1DLVNQQS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEMtLS1cIl09RVtcIlRQLkNBTk5JQkFMSVpBVElPTiBQT0lOVFwiXSx0W1wiRy1DLVNQQy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFktLS1cIl09RVtcIlRQLkNBU1VBTFRZIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1TUFktLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BULS0tXCJdPUVbXCJUUC5DSVZJTElBTiBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BULS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQRC0tLVwiXT1FW1wiVFAuREVUQUlORUUgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1DLVNQRC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEUtLS1cIl09RVtcIlRQLkVQVyBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BFLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQTC0tLVwiXT1FW1wiVFAuTE9HSVNUSUNTIFJFTEVBU0UgUE9JTlRcIl0sdFtcIkctQy1TUEwtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BNLS0tXCJdPUVbXCJUUC5NQUlOVEVOQU5DRSBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BNLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQUi0tLVwiXT1FW1wiVFAuUkVBUk0sIFJFRlVFTCBBTkQgUkVTVVBQTFkgUE9JTlRcIl0sdFtcIkctQy1TUFItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BVLS0tXCJdPUVbXCJUUC5SRUZVRUwgT04gVEhFIE1PVkUgUE9JTlRcIl0sdFtcIkctQy1TUFUtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BPLS0tXCJdPUVbXCJUUC5UUkFGRklDIENPTlRST0wgUE9TVFwiXSx0W1wiRy1DLVNQTy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEktLS1cIl09RVtcIlRQLlRSQUlMRVIgVFJBTlNGRVIgUE9JTlRcIl0sdFtcIkctQy1TUEktLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BOLS0tXCJdPUVbXCJUUC5VTklUIE1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1TUE4tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRVC0tXCJdPUVbXCJUUC5TVVBQTFkgUE9JTlRcIl0sdFtcIkctQy1TUFFULS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRQS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJXCJdLHRbXCJHLUMtU1BRQS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQUUItLVwiXT1FW1wiVFAuU1AgQ0xBU1MgSUlcIl0sdFtcIkctQy1TUFFCLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRQy0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJSUlcIl0sdFtcIkctQy1TUFFDLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRRC0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJVlwiXSx0W1wiRy1DLVNQUUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFFLS1cIl09RVtcIlRQLlNQIENMQVNTIFZcIl0sdFtcIkctQy1TUFFFLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRRi0tXCJdPUVbXCJUUC5TUCBDTEFTUyBWSVwiXSx0W1wiRy1DLVNQUUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFHLS1cIl09RVtcIlRQLlNQIENMQVNTIFZJSVwiXSx0W1wiRy1DLVNQUUctLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFILS1cIl09RVtcIlRQLlNQIENMQVNTIFZJSUlcIl0sdFtcIkctQy1TUFFILS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRSS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJWFwiXSx0W1wiRy1DLVNQUUktLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFKLS1cIl09RVtcIlRQLlNQIENMQVNTIFhcIl0sdFtcIkctQy1TUFFKLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BNQS0tXCJdPUVbXCJUUC5BTU1VTklUSU9OIFNVUFBMWSBQT0lOVCAoQVNQKVwiXSx0W1wiRy1DLVNQTUEtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUE1ULS1cIl09RVtcIlRQLkFNTVVOSVRJT04gVFJBTlNGRVIgUE9JTlQgKEFUUClcIl0sdFtcIkctQy1TUE1ULS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT1gtLS0tXCJdPUVbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLHRbXCJHLUMtT1gtLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YUk4tLVwiXT1FW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSx0W1wiRy1DLU9YUk4tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1PWFVELS1cIl09RVtcIlRQLkRBVFVNXCJdLHRbXCJHLUMtT1hVRC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YVUItLVwiXT1FW1wiVFAuQlJJRUYgQ09OVEFDVFwiXSx0W1wiRy1DLU9YVUItLVwiXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJW1wiRy1DLU9YVUwtLVwiXT1FW1wiVFAuTE9TVCBDT05UQUNUXCJdLHRbXCJHLUMtT1hVTC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbXCJHLUMtT1hVUy0tXCJdPUVbXCJUUC5TSU5LRVJcIl0sdFtcIkctQy1PWFVTLS1cIl09e3gxOjUwLHgyOjE1MCx5MTowLHkyOjEwMH0sSVtcIkctQy1PWFdBLS1cIl09RVtcIlRQLkFJTSBQT0lOVFwiXSx0W1wiRy1DLU9YV0EtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWFdELS1cIl09RVtcIlRQLkRST1AgUE9JTlRcIl0sdFtcIkctQy1PWFdELS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxMjB9LElbXCJHLUMtT1hXRS0tXCJdPUVbXCJUUC5FTlRSWSBQT0lOVFwiXSx0W1wiRy1DLU9YV0UtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwfSxJW1wiRy1DLU9YV0ctLVwiXT1FW1wiVFAuR1JPVU5EIFpFUk9cIl0sdFtcIkctQy1PWFdHLS1cIl09e3gxOjUwLHgyOjE1MCx5MTozMH0sSVtcIkctQy1PWFdNLS1cIl09RVtcIlRQLk1TTCBERVRFQ1QgUE9JTlRcIl0sdFtcIkctQy1PWFdNLS1cIl09e3gxOjUwLHgyOjE1MCx5MTozMH0sSVtcIkctQy1PWFdJLS1cIl09RVtcIlRQLklNUEFDVCBQT0lOVFwiXSx0W1wiRy1DLU9YV0ktLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWFdQLS1cIl09RVtcIlRQLlBSRURJQ1RFRCBJTVBBQ1QgUE9JTlRcIl0sdFtcIkctQy1PWFdQLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hZLS0tXCJdPUVbXCJUUC5TT05PQlVPWVwiXSx0W1wiRy1DLU9YWS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZUC0tXCJdPUVbXCJUUC5TT05PQlVPWSBQQVRURVJOIENFTlRFUlwiXSx0W1wiRy1DLU9YWVAtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZRC0tXCJdPUVbXCJUUC5TT05PQlVPWSBESUZBUlwiXSx0W1wiRy1DLU9YWUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZTC0tXCJdPUVbXCJUUC5TT05PQlVPWSBMT0ZBUlwiXSx0W1wiRy1DLU9YWUwtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQy0tXCJdPUVbXCJUUC5TT05PQlVPWSBDQVNTXCJdLHRbXCJHLUMtT1hZQy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlTLS1cIl09RVtcIlRQLlNPTk9CVU9ZIERJQ0FTU1wiXSx0W1wiRy1DLU9YWVMtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQi0tXCJdPUVbXCJUUC5TT05PQlVPWSBCVFwiXSx0W1wiRy1DLU9YWUItLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQS0tXCJdPUVbXCJUUC5TT05PQlVPWSBBTk1cIl0sdFtcIkctQy1PWFlBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1DLU9YWVYtLVwiXT1FW1wiVFAuU09OT0JVT1kgVkxBRFwiXSx0W1wiRy1DLU9YWVYtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZVC0tXCJdPUVbXCJUUC5TT05PQlVPWSBBVEFDXCJdLHRbXCJHLUMtT1hZVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlSLS1cIl09RVtcIlRQLlNPTk9CVU9ZIFJPXCJdLHRbXCJHLUMtT1hZUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlLLS1cIl09RVtcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl0sdFtcIkctQy1PWFlLLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1DLU9YTi0tLVwiXT1FW1wiVFAuRk9STUFUSU9OXCJdLHRbXCJHLUMtT1hOLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSC0tLVwiXT1FW1wiVFAuSEFSQk9SXCJdLHRbXCJHLUMtT1hILS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSFEtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sdFtcIkctQy1PWEhRLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hIQS0tXCJdPUVbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSx0W1wiRy1DLU9YSEEtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWEhZLS1cIl09RVtcIlRQLkhBUkJPUiBQT0lOVCBZXCJdLHRbXCJHLUMtT1hIWS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSFgtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl0sdFtcIkctQy1PWEhYLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hSLS0tXCJdPUVbXCJUUC5ST1VURVwiXSx0W1wiRy1DLU9YUi0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFJSLS1cIl09RVtcIlRQLlJPVVRFIFJFTkRFWlZPVVNcIl0sdFtcIkctQy1PWFJSLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSRC0tXCJdPUVbXCJUUC5ST1VURSBESVZFUlNJT05TXCJdLHRbXCJHLUMtT1hSRC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1DLU9YUlctLVwiXT1FW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sdFtcIkctQy1PWFJXLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSUC0tXCJdPUVbXCJUUC5ST1VURSBQSU1cIl0sdFtcIkctQy1PWFJQLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSVC0tXCJdPUVbXCJUUC5ST1VURSBQT0lOVCBSXCJdLHRbXCJHLUMtT1hSVC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1DLU9YU1RDLVwiXT1FW1wiVFAuQ09NQkFUQU5UIFNUQVRJT05cIl0sdFtcIkctQy1PWFNUQy1cIl09e3gxOi0xNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YU1RDUFwiXT1FW1wiVFAuUElDS0VUIFNUQVRJT05cIl0sdFtcIkctQy1PWFNUQ1BcIl09e3gxOi0xNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YU1RDQVwiXT1FW1wiVFAuQVNXIFNISVAgU1RBVElPTlwiXSx0W1wiRy1DLU9YU1RDQVwiXT17eDE6LTE1LHgyOjE0MCx5MTo2MCx5MjoxNDB9LElbXCJHLUMtT1hTVFItXCJdPUVbXCJUUC5SRVBMRU5JU0hNRU5UIEFUIFNFQSAoUkFTKSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVFItXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUSC1cIl09RVtcIlRQLlJFU0NVRSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVEgtXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUUy1cIl09RVtcIlRQLlNVQk1BUklORSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVFMtXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUU0FcIl09RVtcIlRQLkFTVyBTVUJNQVJJTkUgU1RBVElPTlwiXSx0W1wiRy1DLU9YU1RTQVwiXT17eDE6LTExNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YUy0tLVwiXT1FW1wiVFAuU0VBUkNIXCJdLHRbXCJHLUMtT1hTLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YU0EtLVwiXT1FW1wiVFAuU0VBUkNIIEFSRUFcIl0sdFtcIkctQy1PWFNBLS1cIl09e3gxOjIwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hTRC0tXCJdPUVbXCJUUC5ESVAgUE9TSVRJT05cIl0sdFtcIkctQy1PWFNELS1cIl09e3gxOjEwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hTQy0tXCJdPUVbXCJUUC5TRUFSQ0ggQ0VOVEVSXCJdLHRbXCJHLUMtT1hTQy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YQUMtLVwiXT1FW1wiVFAuQ09NQkFUIEFJUiBQQVRST0wgKENBUClcIl0sdFtcIkctQy1PWEFDLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBQS0tXCJdPUVbXCJUUC5BSVJCT1JORSBFQVJMWSBXQVJOSU5HIChBRVcpXCJdLHRbXCJHLUMtT1hBQS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVQtLVwiXT1FW1wiVFAuVEFDQU5cIl0sdFtcIkctQy1PWEFULS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBSy0tXCJdPUVbXCJUUC5UQU5LSU5HXCJdLHRbXCJHLUMtT1hBSy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQUYtLVwiXT1FW1wiVFAuRklYRUQgV0lOR1wiXSx0W1wiRy1DLU9YQUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1PWEFILS1cIl09RVtcIlRQLlJPVEFSWSBXSU5HXCJdLHRbXCJHLUMtT1hBSC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQU8tLVwiXT1FW1wiVFAuVE9NQ0FUXCJdLHRbXCJHLUMtT1hBTy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVItLVwiXT1FW1wiVFAuUkVTQ1VFXCJdLHRbXCJHLUMtT1hBUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVAtLVwiXT1FW1wiVFAuUkVQTEVOSVNIXCJdLHRbXCJHLUMtT1hBUC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQU0tLVwiXT1FW1wiVFAuTUFSU0hBTExcIl0sdFtcIkctQy1PWEFNLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBUy0tXCJdPUVbXCJUUC5TVFJJS0UgSVBcIl0sdFtcIkctQy1PWEFTLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBRC0tXCJdPUVbXCJUUC5DT1JSSURPUiBUQUIgUE9JTlRcIl0sdFtcIkctQy1PWEFELS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT0ctLS0tXCJdPUVbXCJUUC5BQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1PRy0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dDLS0tXCJdPUVbXCJUUC5BQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1PR0MtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dQLS0tXCJdPUVbXCJUUC5DT05UQUNUIFBPSU5UXCJdLHRbXCJHLUMtT0dQLS0tXCJdPXt4MTo1NSx4MjoxNDUseTE6LTEwfSxJW1wiRy1DLU9HVC0tLVwiXT1FW1wiVFAuQ09PUkRJTkFUSU9OIFBPSU5UXCJdLHRbXCJHLUMtT0dULS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9HRC0tLVwiXT1FW1wiVFAuREVDSVNJT04gUE9JTlRcIl0sdFtcIkctQy1PR0QtLS1cIl09e3gxOjMwLHgyOjE3MCx5MToyNSx5MjoxNjB9LElbXCJHLUMtT0dMLS0tXCJdPUVbXCJUUC5BQ1RJT04gTElOS1VQIFBPSU5UXCJdLHRbXCJHLUMtT0dMLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLU9HTi0tLVwiXT1FW1wiVFAuQUNUSU9OIFBBU1NBR0UgUE9JTlRcIl0sdFtcIkctQy1PR04tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dSLS0tXCJdPUVbXCJUUC5BQ1RJT04gUkFMTFkgUE9JTlRcIl0sdFtcIkctQy1PR1ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dTLS0tXCJdPUVbXCJUUC5BQ1RJT04gUkVMRUFTRSBQT0lOVFwiXSx0W1wiRy1DLU9HUy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1PR0ktLS1cIl09RVtcIlRQLkFDVElPTiBTVEFSVCBQT0lOVFwiXSx0W1wiRy1DLU9HSS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1PR1ctLS1cIl09RVtcIlRQLldBWVBPSU5UXCJdLHRbXCJHLUMtT0dXLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1PLVZBLS0tLVwiXT1FW1wiVFAuRklSRVwiXSxJW1wiRy1PLVZSLS0tLVwiXT1FW1wiR1IuRVEuSE9XSVRaRVJcIl0sSVtcIkctTy1WRS0tLS1cIl09RVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLElbXCJHLU8tVkItLS0tXCJdPUVbXCJBSVIuTUlTU0lMRS5JQy5CT01CXCJdLElbXCJHLU8tVlktLS0tXCJdPUVbXCJTVC5JQy5CT09CWSBUUkFQXCJdLElbXCJHLU8tVkQtLS0tXCJdPUVbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXSxJW1wiRy1PLVZJLS0tLVwiXT1FW1wiVFAuSU5ESVJFQ1QgRklSRVwiXSxJW1wiRy1PLVZNLS0tLVwiXT1FW1wiR1IuRVEuTU9SVEFSXCJdLElbXCJHLU8tVkstLS0tXCJdPUVbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sSVtcIkctTy1WUy0tLS1cIl09RVtcIlNULklDLlNOSVBJTkdcIl0sSVtcIkctTy1WUC0tLS1cIl09RVtcIlNULklDLlBPSVNPTklOR1wiXSxJW1wiRy1PLVZVLS0tLVwiXT1FW1wiVFAuQU1CVVNIXCJdLElbXCJHLU8tVkMtLS0tXCJdPUVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdLElbXCJHLU8tVkgtLS0tXCJdPUVbXCJBUi5JLkZGLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdLElbXCJHLU8tVkYtLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVtcIkctTy1WTy0tLS1cIl09RVtcIkdSLklDLkZGLklORkFOVFJZXCJdLElbXCJHLU8tVkwtLS0tXCJdPUVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxJW1wiRy1PLVZYLS0tLVwiXT1FW1wiR1IuSUMuRkYuU0lHTkFMXCJdLElbXCJHLU8tVlotLS0tXCJdPUVbXCJHUi5JQy5GRi5TVVBQTFlcIl0sSVtcIkctTy1MQi0tLS1cIl09RVtcIlNULklDLkJMQUNLIExJU1QgTE9DQVRJT05cIl0sSVtcIkctTy1MRy0tLS1cIl09RVtcIlNULklDLkdSQVkgTElTVCBMT0NBVElPTlwiXSxJW1wiRy1PLUxXLS0tLVwiXT1FW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXSxJW1wiRy1PLVBSLS0tLVwiXT1FW1wiVFAuUk9BRCBCTE9DS1wiXSxJW1wiRy1PLVBSQi0tLVwiXT1FW1wiVFAuUk9BRCBCTE9DSyAoVU5ERVIgQ09OU1RSVUNUSU9OKVwiXSxJW1wiRy1PLVBULS0tLVwiXT1FW1wiU1QuSUMuUEFUUk9MTElOR1wiXSxJW1wiRy1PLVBDLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLldJTExJTkdcIl1dLElbXCJHLU8tUENVLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuQ09FUkNFRC9JTVBSRVNTRURcIl1dLElbXCJHLU8tUEQtLS0tXCJdPUVbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdLElbXCJHLU8tUE0tLS0tXCJdPUVbXCJTVC5JQy5NSU5FIExBWUlOR1wiXSxJW1wiRy1PLVBILS0tLVwiXT1FW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLElbXCJHLU8tUEhZLS0tXCJdPUVbXCJTVC5JQy5SQURJTyBBTkQgVEVMRVZJU0lPTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sSVtcIkctTy1QSFctLS1cIl09W0VbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sRVtcIlNULk0xLldSSVRURU4gUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdXSxJW1wiRy1PLVBIRy0tLVwiXT1bRVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXSxFW1wiU1QuTTEuV1JJVFRFTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbXCJHLU8tUEhULS0tXCJdPVtFW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLEVbXCJTVC5NMS5IT1VTRS1UTy1IT1VTRVwiXV0sSVtcIkctTy1QRy0tLS1cIl09RVtcIlNULklDLlNFQVJDSElOR1wiXSxJW1wiRy1PLVBTLS0tLVwiXT1FW1wiU1QuSUMuU1BZXCJdLElbXCJHLU8tUEYtLS0tXCJdPUVbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxJW1wiRy1PLVBJLS0tLVwiXT1FW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl0sSVtcIkctTy1QRS0tLS1cIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLklOVEVSQ0VQVFwiXV0sSVtcIkctTy1QWC0tLS1cIl09RVtcIlNULklDLkVYVE9SVElPTlwiXSxJW1wiRy1PLVBKVi0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJHLU8tUEpBLS0tXCJdPVtFW1wiU1QuSUMuSElKQUNLSU5HIChBSVJQTEFORSlcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIkctTy1QSkItLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEJPQVQpXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJHLU8tUEstLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sSVtcIkctTy1QQS0tLS1cIl09RVtcIlNULklDLkFSUkVTVFwiXSxJW1wiRy1PLVBPLS0tLVwiXT1FW1wiU1QuSUMuRFJVRyBSRUxBVEVEIEFDVElWSVRJRVNcIl0sSVtcIkctTy1JUi0tLS1cIl09RVtcIlNULklDLkdST1VQXCJdLElbXCJHLU8tSVMtLS0tXCJdPUVbXCJTVC5JQy5TQUZFIEhPVVNFXCJdLElbXCJHLU8tSUctLS0tXCJdPUVbXCJTVC5JQy5HUkFGRklUSVwiXSxJW1wiRy1PLUlWLS0tLVwiXT1FW1wiU1QuSUMuVkFOREFMSVNNL0xPT1QvUkFOU0FDSy9QTFVOREVSL1NBQ0tcIl0sSVtcIkctTy1JSy0tLS1cIl09RVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLElbXCJHLU8tSUQtLS0tXCJdPVtFW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl0sRVtcIlNULk0xLkRSVUdcIl1dLElbXCJHLU8tSUYtLS0tXCJdPUVbXCJTVC5JQy5JTlRFUk5BTCBTRUNVUklUWSBGT1JDRVwiXX19XSxZPVtMLHksaCx4LFUscCxtLEYseixILHt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbZnVuY3Rpb24oSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1FLmljb25Db2xvcltDXSxTPXtcIjI1MjVCLkFTV1NVQlwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDg1IDQwLDAgMCwtMjAgLTQwLDAgeiBtIDIwLC0zMCAwLDQwIG0gLTQwLDE1IDE1LDE1IDUwLDAgMTUsLTE1IC0xNSwtMTUgLTUwLDAgelwifSxcIjI1MjVCLk5DQlRULlNUTlwiOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJOQ1wifV0sXCIyNTI1Qi5TVE4uQVNXU0hQXCI6W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsODUgNjAsMCAwLDMwIC02MCwwIHogbSAzMCwtMTUgMCw2MFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxNDUsZm9udHNpemU6MzAsdGV4dDpcIkFTXCJ9XSxcIjI1MjVCLlNUTi5QS1RcIjpbe3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw4NSA2MCwwIDAsMzAgLTYwLDAgeiBtIDMwLC0xNSAwLDYwXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjE0NSxmb250c2l6ZTozMCx0ZXh0OlwiUEtcIn1dLFwiMjUyNUIuU1ROLlJTQ1wiOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJSU1wifV0sXCIyNTI1Qi5TVE5cIjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IGMgMjAsMCA0MCwwIDYwLDAgMCwxMCAwLDIwIDAsMzAgLTIwLDAgLTQwLDAgLTYwLDAgMCwtMTAgMCwtMjAgMCwtMzAgeiBtIDMwLC0xNSBjIDAsMjAgMCw0MCAwLDYwIG0gMzUsLTUgQyAxMjAsMTQ4IDgyLjcsMTQ5IDY2LjgsMTI2IDQ5LjIsMTA1IDU5LjEsNjkuMiA4NS4yLDYwLjEgMTAzLDUzLjEgMTI0LDU5LjQgMTM1LDc0LjhcIn0sXCIyNTI1Qi5TVUIuU1ROXCI6W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJTU1wifV19O2Zvcih2YXIgTiBpbiBTKVMuaGFzT3duUHJvcGVydHkoTikmJihJLmhhc093blByb3BlcnR5KE4pJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrTiksbi5jYWxsKHRoaXMsU1tOXSxUKSxJW05dPVNbTl0pfV0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUy1TLS0tLS1cIl09RVtcIjI1MjVCLlNUTlwiXSxJW1wiUy1TLVNQLS0tLVwiXT1FW1wiMjUyNUIuU1ROLlBLVFwiXSxJW1wiUy1TLVNBLS0tLVwiXT1FW1wiMjUyNUIuU1ROLkFTV1NIUFwiXSxJW1wiUy1TLU5OLS0tLVwiXT1FW1wiMjUyNUIuTkNCVFQuU1ROXCJdLElbXCJTLVMtTk5SLS0tXCJdPUVbXCIyNTI1Qi5TVE4uUlNDXCJdLElbXCJTLVUtU1MtLS0tXCJdPUVbXCIyNTI1Qi5TVUIuU1ROXCJdLElbXCJTLVUtU1NBLS0tXCJdPUVbXCIyNTI1Qi5BU1dTVUJcIl0sSVtcIkctTy1TQldELS1cIl09RVtcIlRQLldSRUNLLCBEQU5HRVJPVVNcIl0sdFtcIkctTy1TQlhELS1cIl09e3gxOjM1LHgyOjE2NSx5MTo3MCx5MjoxMzB9fX0sa10sVz1bTCx5LGgseCxVLHAsbSxGLHosSCx7dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2MsVl0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIkUtSS1BLS0tLS1cIl09W0VbXCJBQy5JQy5DUklNSU5BTC5DSVZJTCBESVNUVVJCQU5DRVwiXV0sSVtcIkUtSS1BQy0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiQUMuTTEuUklPVFwiXV0sSVtcIkUtSS1CLS0tLS1cIl09W0VbXCJBQy5JQy5DUklNSU5BTC5BQ1RJVklUWS5JTkNJREVOVFwiXV0sSVtcIkUtSS1CQS0tLS1cIl09W0VbXCJTVC5JQy5CT01CXCJdLEVbXCJBQy5NMS5USFJFQVRcIl1dLElbXCJFLUktQkMtLS0tXCJdPVtFW1wiU1QuSUMuRVhQTE9TSU9OXCJdLHMuX3NjYWxlKC42LEVbXCJTVC5JQy5CT01CXCJdKV0sSVtcIkUtSS1CRC0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuTE9PVFwiXV0sSVtcIkUtSS1CRi0tLS1cIl09W0VbXCJBQy5JQy5TSE9PVElOR1wiXV0sSVtcIkUtSS1DLS0tLS1cIl09W0VbXCJBQy5JQy5GSVJFIEVWRU5UXCJdXSxJW1wiRS1JLUNBLS0tLVwiXT1bRVtcIkFDLklDLkhPVCBTUE9UXCJdXSxJW1wiRS1JLUNCLS0tLVwiXT1bRVtcIkFDLklDLk5PTi1SRXNJZEVOVElBTCBGSVJFXCJdXSxJW1wiRS1JLUNDLS0tLVwiXT1bRVtcIkFDLklDLkZJUkUgT1JJR0lOXCJdXSxJW1wiRS1JLUNELS0tLVwiXT1bRVtcIkFDLklDLlJFc0lkRU5USUFMIEZJUkVcIl1dLElbXCJFLUktQ0UtLS0tXCJdPVtFW1wiQUMuSUMuU0NIT09MIEZJUkVcIl1dLElbXCJFLUktQ0YtLS0tXCJdPVtFW1wiQUMuSUMuU01PS0VcIl1dLElbXCJFLUktQ0ctLS0tXCJdPVtFW1wiQUMuSUMuU1BFQ0lBTCBORUVEUyBGSVJFXCJdXSxJW1wiRS1JLUNILS0tLVwiXT1bRVtcIkFDLklDLldJTEQgRklSRVwiXV0sSVtcIkUtSS1ELS0tLS1cIl09W0VbXCJBQy5JQy5IQVpBUkRPVVMgTUFURVJJQUxTIElOQ0lERU5UXCJdXSxJW1wiRS1JLURBLS0tLVwiXT1bRVtcIkFDLklDLkNIRU1JQ0FMIEFHRU5UXCJdXSxJW1wiRS1JLURCLS0tLVwiXT1bRVtcIkFDLklDLkNPUlJPU0lWRSBNQVRFUklBTFwiXV0sSVtcIkUtSS1EQy0tLS1cIl09W0VbXCJBQy5JQy5IQVpBUkRPVVMgV0hFTiBXRVRcIl1dLElbXCJFLUktREQtLS0tXCJdPVtFW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURFLS0tLVwiXT1bRVtcIkFDLklDLkZMQU1NQUJMRSBHQVNcIl1dLElbXCJFLUktREYtLS0tXCJdPVtFW1wiQUMuSUMuRkxBTU1BQkxFIExJUVVJRFwiXV0sSVtcIkUtSS1ERy0tLS1cIl09W0VbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl1dLElbXCJFLUktREgtLS0tXCJdPVtFW1wiQUMuSUMuTk9OLUZMQU1NQUJMRSBHQVNcIl1dLElbXCJFLUktREktLS0tXCJdPVtFW1wiQUMuSUMuT1JHQU5JQyBQRVJPWElERVwiXV0sSVtcIkUtSS1ESi0tLS1cIl09W0VbXCJBQy5JQy5PWElESVpFUlwiXV0sSVtcIkUtSS1ESy0tLS1cIl09W0VbXCJBQy5JQy5SQURJT0FDVElWRSBNQVRFUklBTFwiXV0sSVtcIkUtSS1ETC0tLS1cIl09W0VbXCJBQy5JQy5TUE9OVEFORU9VU0xZIENPTUJVU1RJQkxFIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURNLS0tLVwiXT1bRVtcIkFDLklDLlRPWElDIEdBU1wiXV0sSVtcIkUtSS1ETi0tLS1cIl09W0VbXCJBQy5JQy5UT1hJQyBJTkZFQ1RJT1VTIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURPLS0tLVwiXT1bRVtcIkFDLklDLlVORVhQTE9ERUQgT1JETkFOQ0VcIl1dLElbXCJFLUktRS0tLS0tXCJdPVtFW1wiU1QuTTEuSU5DSURFTlRcIl0sRVtcIlNULklDLkhJSkFDS0lORyAoQUlSUExBTkUpXCJdXSxJW1wiRS1JLUVBLS0tLVwiXT1bRVtcIlNULk0xLkFDQ0lERU5UXCJdLEVbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXV0sSVtcIkUtSS1GLS0tLS1cIl09W0VbXCJTVC5NMS5JTkNJREVOVFwiXSxFW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVtcIkUtSS1GQS0tLS1cIl09W0VbXCJTVC5NMS5BQ0NJREVOVFwiXSxFW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVtcIkUtSS1HLS0tLS1cIl09W0VbXCJTVC5NMS5JTkNJREVOVFwiXSxFW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVtcIkUtSS1HQS0tLS1cIl09W0VbXCJTVC5NMS5BQ0NJREVOVFwiXSxFW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVtcIkUtSS1HQi0tLS1cIl09W0VbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJFLUktSC0tLS0tXCJdPVtFW1wiU1QuTTEuSU5DSURFTlRcIl0sRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJW1wiRS1JLUhBLS0tLVwiXT1bRVtcIlNULk0xLkFDQ0lERU5UXCJdLEVbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXV0sSVtcIkUtTi1BLS0tLS1cIl09W10sSVtcIkUtTi1BQS0tLS1cIl09W0VbXCJBQy5JQy5BRlRFUlNIT0NLXCJdXSxJW1wiRS1OLUFCLS0tLVwiXT1bRVtcIkFDLklDLkFWQUxBTkNIRVwiXV0sSVtcIkUtTi1BQy0tLS1cIl09W0VbXCJBQy5JQy5FQVJUSFFVQUtFIEVQSUNFTlRFUlwiXV0sSVtcIkUtTi1BRC0tLS1cIl09W0VbXCJBQy5JQy5MQU5EU0xJREVcIl1dLElbXCJFLU4tQUUtLS0tXCJdPVtFW1wiQUMuSUMuU1VCU0lERU5DRVwiXV0sSVtcIlctUy1XU1ZFLS1cIl09W0VbXCJBQy5JQy5WT0xDQU5JQyBFUlVQVElPTlwiXV0sSVtcIkUtTi1BRy0tLS1cIl09W0VbXCJBQy5JQy5WT0xDQU5JQyBUSFJFQVRcIl1dLElbXCJXLVMtV1NELUxJXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuRFJJWlpMRS5JTlRFUk1JVFRFTlQgTElHSFRcIl1dLElbXCJFLU4tQi0tLS0tXCJdPVtdLElbXCJFLU4tQkItLS0tXCJdPVtFW1wiQUMuSUMuRFJPVUdIVFwiXV0sSVtcIkUtTi1CQy0tLS1cIl09W0VbXCJBQy5JQy5GTE9PRFwiXV0sSVtcIlctUy1XU0ZHU09cIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5GT0cuU0tZIE9CU0NVUkVEXCJdXSxJW1wiVy1TLVdTR1JMLVwiXT1bRVtcIkFUTU9TUEhFUklDLklDLkhBSUwuTElHSFQgTk9UIEFTU09DSUFURUQgV0lUSCBUSFVOREVSXCJdXSxJW1wiRS1OLUJGLS0tLVwiXT1bRVtcIkFDLklDLklOVkVSU0lPTlwiXV0sSVtcIlctUy1XU1ItTElcIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5SQUlOLklOVEVSTUlUVEVOVCBMSUdIVFwiXV0sSVtcIlctUy1XU0RTTE1cIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5EVVNUIE9SIFNBTkQuTElHSFQgVE8gTU9ERVJBVEVcIl1dLElbXCJXLVMtV1NTLUxJXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuU05PVy5JTlRFUk1JVFRFTlQgTElHSFRcIl1dLElbXCJXLVMtV1NUTUgtXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuU1RPUk1TLlRIVU5ERVJTVE9STSBMSUdIVCBUTyBNT0RFUkFURSAtIFdJVEggSEFJTFwiXV0sSVtcIlctUy1XU1QtRkNcIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5TVE9STVMuRlVOTkVMIENMT1VEIChUT1JOQURPL1dBVEVSU1BPVVQpXCJdXSxJW1wiVy1TLVdTVFNTLVwiXT1bRVtcIkFUTU9TUEhFUklDLklDLlRST1BJQ0FMIFNUT1JNIFNZU1RFTVMuVFJPUElDQUwgU1RPUk1cIl1dLElbXCJFLU4tQk0tLS0tXCJdPVtFW1wiQUMuSUMuVFNVTkFNSVwiXV0sSVtcIkUtTi1DLS0tLS1cIl09W10sSVtcIkUtTi1DQS0tLS1cIl09W0VbXCJBQy5JQy5CSVJEXCJdXSxJW1wiRS1OLUNCLS0tLVwiXT1bRVtcIkFDLklDLklOU0VDVFwiXV0sSVtcIkUtTi1DQy0tLS1cIl09W0VbXCJBQy5JQy5NSUNST0JJQUxcIl1dLElbXCJFLU4tQ0QtLS0tXCJdPVtFW1wiQUMuSUMuUkVQVElMRVwiXV0sSVtcIkUtTi1DRS0tLS1cIl09W0VbXCJBQy5JQy5ST0RFTlRcIl1dLElbXCJFLU8tQS0tLS0tXCJdPUlbXCJFLU8tQUEtLS0tXCJdPUlbXCJFLU8tQUItLS0tXCJdPUlbXCJFLU8tQUMtLS0tXCJdPUlbXCJFLU8tQUQtLS0tXCJdPVtFW1wiR1IuSUMuRU1FUkdFTkNZIE1FRElDQUwgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUFFLS0tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5NMS5NRURFVkFDXCJdXSxJW1wiRS1PLUFGLS0tLVwiXT1bcy5fdHJhbnNsYXRlKDAsMTAscy5fc2NhbGUoLjgsRVtcIkdSLkkuRkYuQ0lWSUxJQU4gUk9UQVJZIFdJTkdcIl0pKSxFW1wiR1IuTTEuTUVERVZBQ1wiXV0sSVtcIkUtTy1BRy0tLS1cIl09W0VbXCJBQy5JQy5IRUFMVEggREVQQVJUTUVOVCBGQUNJTElUWVwiXV0sSVtcIkUtTy1BSi0tLS1cIl09W0VbXCJBQy5JQy5NRURJQ0FMIEZBQ0lMSVRJRVMgT1VUUEFUSUVOVFwiXV0sSVtcIkUtTy1BSy0tLS1cIl09W0VbXCJBQy5JQy5PUEVSQVRJT04vRU1FUkdFTkNZIE1FRElDQUwgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUFMLS0tLVwiXT1bRVtcIkFDLklDLlBIQVJNQUNZXCJdXSxJW1wiRS1PLUFNLS0tLVwiXT1bRVtcIkFDLklDLlRSSUFHRVwiXV0sSVtcIkUtTy1CLS0tLS1cIl09SVtcIkUtTy1CQS0tLS1cIl09SVtcIkUtTy1CQi0tLS1cIl09SVtcIkUtTy1CQy0tLS1cIl09W0VbXCJHUi5JQy5GRi5FTUVSR0VOQ1kgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUJELS0tLVwiXT1bcy5fc2NhbGUoLjcsRVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEVbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdXSxJW1wiRS1PLUJFLS0tLVwiXT1bcy5fc2NhbGUoLjcsRVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEVbXCJBQy5NMS5FTUVSR0VOQ1kgSU5DSURFTlQgQ09NTUFORCBDRU5URVJcIl1dLElbXCJFLU8tQkYtLS0tXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksRVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXV0sSVtcIkUtTy1CRy0tLS1cIl09W0VbXCJBQy5JQy5FTUVSR0VOQ1kgUFVCTElDIElORk9STUFUSU9OIENFTlRFUlwiXV0sSVtcIkUtTy1CSC0tLS1cIl09W3MuX3NjYWxlKC43LEVbXCJHUi5JQy5GRi5FTUVSR0VOQ1kgT1BFUkFUSU9OXCJdKSxFW1wiQUMuTTEuRU1FUkdFTkNZIFNIRUxURVJcIl1dLElbXCJFLU8tQkktLS0tXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksRVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl1dLElbXCJFLU8tQkotLS0tXCJdPVtFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXV0sSVtcIkUtTy1CSy0tLS1cIl09SVtcIlMtRy1VU1NXLS1cIl0sSVtcIkUtTy1CTC0tLS1cIl09W0VbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxFW1wiQUMuTTEuRU1FUkdFTkNZXCJdXSxJW1wiRS1PLUMtLS0tLVwiXT1JW1wiRS1PLUNBLS0tLVwiXT1JW1wiRS1PLUNCLS0tLVwiXT1JW1wiRS1PLUNFLS0tLVwiXT1bRVtcIkdSLklDLkZJUkUgUFJPVEVDVElPTlwiXV0sSVtcIkUtTy1DQy0tLS1cIl09W0VbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl1dLElbXCJFLU8tQ0QtLS0tXCJdPVtFW1wiQUMuSUMuT1RIRVIgV0FURVIgU1VQUExZIExPQ0FUSU9OXCJdXSxJW1wiRS1PLUQtLS0tLVwiXT1JW1wiRS1PLURBLS0tLVwiXT1JW1wiRS1PLURCLS0tLVwiXT1JW1wiRS1PLURDLS0tLVwiXT1bRVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVtcIkUtTy1ERC0tLS1cIl09SVtcIkUtTy1EREEtLS1cIl09SVtcIkUtTy1EREItLS1cIl09SVtcIkUtTy1EREMtLS1cIl09W0VbXCJHUi5JQy5CVVJFQVUgT0YgQUxDT0hPTCwgVE9CQUNDTywgRklSRUFSTVMgQU5EIEVYUExPU0lWRVMgKEFURikgKERFUEFSVE1FTlQgT0YgSlVTVElDRSlcIl1dLElbXCJFLU8tREUtLS0tXCJdPUlbXCJFLU8tREVBLS0tXCJdPUlbXCJFLU8tREVCLS0tXCJdPUlbXCJFLU8tREVDLS0tXCJdPVtFW1wiR1IuSUMuRkYuQk9SREVSIFBBVFJPTFwiXV0sSVtcIkUtTy1ERi0tLS1cIl09SVtcIkUtTy1ERkEtLS1cIl09SVtcIkUtTy1ERkItLS1cIl09SVtcIkUtTy1ERkMtLS1cIl09W0VbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbXCJFLU8tREctLS0tXCJdPUlbXCJFLU8tREdBLS0tXCJdPUlbXCJFLU8tREdCLS0tXCJdPUlbXCJFLU8tREdDLS0tXCJdPVtFW1wiR1IuSUMuRFJVRyBFTkZPUkNFTUVOVCBBR0VOQ1kgKERFQSlcIl1dLElbXCJFLU8tREgtLS0tXCJdPUlbXCJFLU8tREhBLS0tXCJdPUlbXCJFLU8tREhCLS0tXCJdPUlbXCJFLU8tREhDLS0tXCJdPVtFW1wiR1IuSUMuRkYuREVQQVJUTUVOVCBPRiBKVVNUSUNFIChET0opXCJdXSxJW1wiRS1PLURJLS0tLVwiXT1JW1wiRS1PLURJQS0tLVwiXT1JW1wiRS1PLURJQi0tLVwiXT1JW1wiRS1PLURJQy0tLVwiXT1bRVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbXCJFLU8tREotLS0tXCJdPUlbXCJFLU8tREpCLS0tXCJdPUlbXCJFLU8tREpDLS0tXCJdPVtFW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UXCJdXSxJW1wiRS1PLURLLS0tLVwiXT1bRVtcIkdSLklDLkZGLlBSSVNPTlwiXV0sSVtcIkUtTy1ETC0tLS1cIl09SVtcIkUtTy1ETEEtLS1cIl09SVtcIkUtTy1ETEItLS1cIl09SVtcIkUtTy1ETEMtLS1cIl09W0VbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbXCJFLU8tRE0tLS0tXCJdPUlbXCJFLU8tRE1BLS0tXCJdPUlbXCJFLU8tRE1CLS0tXCJdPUlbXCJFLU8tRE1DLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT04gU0VDVVJJVFkgQUdFTkNZIChUU0EpXCJdXSxJW1wiRS1PLUROLS0tLVwiXT1JW1wiRS1PLUROQS0tLVwiXT1JW1wiRS1PLUROQy0tLVwiXT1bRVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl1dLElbXCJFLU8tRE8tLS0tXCJdPUlbXCJFLU8tRE9BLS0tXCJdPUlbXCJFLU8tRE9CLS0tXCJdPUlbXCJFLU8tRE9DLS0tXCJdPVtFW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVtcIkUtTy1FQS0tLS1cIl09W3MuX3NjYWxlKC42LEVbXCJHUi5FUS5TRU5TT1JcIl0pLEVbXCJHUi5NMS5CSU9MT0dJQ0FMXCJdXSxJW1wiRS1PLUVCLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLkNIRU1JQ0FMXCJdXSxJW1wiRS1PLUVDLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLklOVFJVU0lPTlwiXV0sSVtcIkUtTy1FRC0tLS1cIl09W3MuX3NjYWxlKC42LEVbXCJHUi5FUS5TRU5TT1JcIl0pLEVbXCJHUi5NMS5OVUNMRUFSXCJdXSxJW1wiRS1PLUVFLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLlJBRElPTE9HSUNBTFwiXV0sSVtcIkUtRi1BLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSRSBBTkQgRk9PRCBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1BQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSQUwgTEFCT1JBVE9SWVwiXV0sSVtcIkUtRi1BQi0tLS1cIl09W0VbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXV0sSVtcIkUtRi1BQy0tLS1cIl09W0VbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxFW1wiQUMuTTEuQ09NTUVSQ0lBTFwiXV0sSVtcIkUtRi1BRC0tLS1cIl09W0VbXCJHUi5JTi5JQy5GQVJNL1JBTkNIXCJdXSxJW1wiRS1GLUFFLS0tLVwiXT1bRVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdLEVbXCJBQy5NMS5QUk9EVUNUSU9OXCJdXSxJW1wiRS1GLUFGLS0tLVwiXT1bRVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdLEVbXCJBQy5NMS5SRVRBSUxcIl1dLElbXCJFLUYtQUctLS0tXCJdPVtFW1wiR1IuSU4uSUMuR1JBSU4gU1RPUkFHRVwiXV0sSVtcIkUtRi1CLS0tLS1cIl09W0VbXCJBQy5JQy5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1CQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BVE1cIl1dLElbXCJFLUYtQkItLS0tXCJdPVtFW1wiR1IuSU4uSUMuQkFOS1wiXV0sSVtcIkUtRi1CQy0tLS1cIl09W0VbXCJHUi5JTi5JQy5CVUxMSU9OIFNUT1JBR0VcIl1dLElbXCJFLUYtQkQtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRkVERVJBTCBSRVNFUlZFIEJBTktcIl1dLElbXCJFLUYtQkUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRklOQU5DSUFMIEVYQ0hBTkdFXCJdXSxJW1wiRS1GLUJGLS0tLVwiXT1bRVtcIkdSLklOLklDLkZJTkFOQ0lBTCBTRVJWSUNFUywgT1RIRVJcIl1dLElbXCJFLUYtQy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuQ09NTUVSQ0lBTCBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1DQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DSEVNSUNBTCBQTEFOVFwiXV0sSVtcIkUtRi1DQi0tLS1cIl09W0VbXCJHUi5JTi5JQy5GSVJFQVJNUyBNQU5VRkFDVFVSRVJcIl1dLElbXCJFLUYtQ0MtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRklSRUFSTVMgUkVUQUlMRVJcIl1dLElbXCJFLUYtQ0QtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFBST0RVQ1RJT05cIl1dLElbXCJFLUYtQ0UtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbXCJFLUYtQ0YtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSU5EVVNUUklBTCBTSVRFXCJdXSxJW1wiRS1GLUNHLS0tLVwiXT1bRVtcIkdSLklOLklDLkxBTkRGSUxMXCJdXSxJW1wiRS1GLUNILS0tLVwiXT1bRVtcIkdSLklOLklDLlBIQVJNQUNFVVRJQ0FMIE1BTlVGQUNUVVJFUlwiXV0sSVtcIkUtRi1DSS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT05UQU1JTkFURUQgSEFaQVJET1VTIFdBU1RFIFNJVEVcIl1dLElbXCJFLUYtQ0otLS0tXCJdPVtFW1wiR1IuSU4uSUMuVE9YSUMgUkVMRUFTRSBJTlZFTlRPUllcIl1dLElbXCJFLUYtRC0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuRURVQ0FUSU9OQUwgRkFDSUxJVElFUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1EQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT0xMRUdFL1VOSVZFUlNJVFlcIl1dLElbXCJFLUYtREItLS0tXCJdPVtFW1wiR1IuSU4uSUMuU0NIT09MXCJdXSxJW1wiRS1GLUVBLS0tLVwiXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjc1LEVbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSkpLEVbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl1dLElbXCJFLUYtRUItLS0tXCJdPVtFW1wiR1IuSU4uSUMuTkFUVVJBTCBHQVMgRkFDSUxJVFlcIl1dLElbXCJFLUYtRUUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuUFJPUEFORSBGQUNJTElUWVwiXV0sSVtcIkUtRi1GLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5HT1ZFUk5NRU5UIFNJVEUgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtRy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtR0EtLS0tXCJdPVtFW1wiR1IuSU4uSUMuQkFTRVwiXSxFW1wiQUMuTTEuTUlMSVRBUlkgQVJNT1JZXCJdXSxJW1wiRS1GLUgtLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1RBTCBTRVJWSUNFIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUhBLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1RBTCBESVNUUklCVVRJT04gQ0VOVEVSXCJdXSxJW1wiRS1GLUhCLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1QgT0ZGSUNFXCJdXSxJW1wiRS1GLUktLS0tLVwiXT1bRVtcIkdSLklOLklDLlBVQkxJQyBWRU5VRVMgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtSUEtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRU5DTE9TRUQgRkFDSVRMSVRZIChQVUJMSUMgVkVOVUUpXCJdXSxJW1wiRS1GLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLk9QRU4gRkFDSUxJVFkgKE9QRU4gVkVOVUUpXCJdXSxJW1wiRS1GLUlDLS0tLVwiXT1bRVtcIkdSLklOLklDLlJFQ1JFQVRJT05BTCBBUkVBXCJdXSxJW1wiRS1GLUlELS0tLVwiXT1bRVtcIkdSLklOLklDLlJFTElHSU9VUyBJTlNUSVRVVElPTlwiXV0sSVtcIkUtRi1KLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5TUEVDSUFMIE5FRURTIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUpBLS0tLVwiXT1bRVtcIkdSLklOLklDLkFEVUxUIERBWSBDQVJFXCJdXSxJW1wiRS1GLUpCLS0tLVwiXT1bRVtcIkdSLklOLklDLkNISUxEIERBWSBDQVJFXCJdXSxJW1wiRS1GLUpDLS0tLVwiXT1bRVtcIkdSLklOLklDLkVMREVSIENBUkVcIl1dLElbXCJFLUYtSy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuVEVMRUNPTU1VTklDQVRJT05TIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUtCLS0tLVwiXT1bRVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBUT1dFUlwiXV0sSVtcIkUtRi1MQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BSVIgVFJBRkZJQyBDT05UUk9MIEZBQ0lMSVRZXCJdXSxJW1wiRy1NLUJDQi0tLVwiXT1bRVtcIkdSLklOLklDLkJSSURHRVwiXV0sdFtcIkctTS1CQ0ItLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJFLUYtTEQtLS0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXV0sSVtcIkUtRi1MRS0tLS1cIl09W0VbXCJHUi5JQy5GRVJSWVwiXV0sSVtcIkUtRi1MRi0tLS1cIl09W0VbXCJHUi5JTi5JQy5IRUxJQ09QVEVSIExBTkRJTkcgU0lURVwiXV0sSVtcIlctUy1NTC0tLS1cIl09W0VbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBMT0NLXCJdXSxJW1wiRS1GLUxILS0tLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdXSxJW1wiRS1GLUxKLS0tLVwiXT1bRVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJW1wiRS1GLUxLLS0tLVwiXT1bRVtcIkdSLklOLklDLlJFU1QgU1RPUFwiXV0sSVtcIlctUy1IUEJBLS1cIl09W0VbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBTSElQIEFOQ0hPUkFHRVwiXV0sSVtcIkUtRi1MTS0tLS1cIl09W0VbXCJHUi5JTi5JQy5UT0xMIEZBQ0lMSVRZXCJdXSxJW1wiRy1TLVBPLS0tLVwiXT1FW1wiVFAuVFJBRkZJQyBDT05UUk9MIFBPU1RcIl0sdFtcIkctUy1QTy0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJFLUYtTE8tLS0tXCJdPVtFW1wiR1IuSU4uSUMuVFJBRkZJQyBJTlNQRUNUSU9OIEZBQ0lMSVRZXCJdXSxJW1wiRS1GLUxQLS0tLVwiXT1bRVtcIkdSLklOLklDLlRVTk5FTFwiXV0sSVtcIkUtRi1NQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT05UUk9MIFZBTFZFXCJdXSxJW1wiRS1GLU1CLS0tLVwiXT1bRVtcIkdSLklOLklDLkRBTVwiXV0sSVtcIkUtRi1NQy0tLS1cIl09W0VbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXV0sSVtcIkUtRi1NRC0tLS1cIl09W0VbXCJHUi5JTi5JQy5HUk9VTkQgV0FURVIgV0VMTFwiXV0sSVtcIkUtRi1NRS0tLS1cIl09W0VbXCJHUi5JTi5JQy5QVU1QSU5HIFNUQVRJT05cIl1dLElbXCJFLUYtTUYtLS0tXCJdPVtFW1wiR1IuSU4uSUMuUkVTRVJWT0lSXCJdXSxJW1wiRS1GLU1HLS0tLVwiXT1bRVtcIkdSLklOLklDLlNUT1JBR0UgVE9XRVJcIl1dLElbXCJFLUYtTUgtLS0tXCJdPVtFW1wiR1IuSU4uSUMuU1VSRkFDRSBXQVRFUiBJTlRBS0VcIl1dLElbXCJFLUYtTUktLS0tXCJdPVtFW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJPLU8tRC0tLS0tXCJdPVtFW1wiU1QuSUMuREVNT05TVFJBVElPTlwiXV0sSVtcIk8tSS1SLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tVi1CLS0tLS1cIl09W0VbXCJTVC5JQy5CT01CXCJdXSxJW1wiTy1WLVAtLS0tLVwiXT1bRVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVtcIk8tTy1IQS0tLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXSxFW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSxJW1wiTy1PLUhWLS0tLVwiXT1bRVtcIlNULklDLkhJSkFDS0lORyAoQk9BVClcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIk8tTy1IVC0tLS1cIl09W0VbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXSxFW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSxJW1wiUy1HLUlYSC0tLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVFJFQVRNRU5UIEZBQ0lMSVRZXCJdXSxJW1wiUy1TLU5NLS0tLVwiXT1bRVtcIkdSLklDLkhPU1BJVEFMIFNISVBcIl1dLElbXCJFLU8tQkstLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5XQVRFUlwiXV0sSVtcIlMtRy1VVUxDLS1cIl09W0VbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlRcIl1dLElbXCJTLVMtWEwtLS0tXCJdPVtFW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVtcIlMtRy1FUy0tLS1cIl09W0VbXCJHUi5FUS5TRU5TT1JcIl1dLElbXCJTLUctSVVFLS0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl1dLElbXCJTLUctSVVFTi0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl1dLElbXCJTLUctSVJQLS0tXCJdPVtFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdXSxJW1wiUy1HLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLkJBU0VcIl1dLElbXCJTLUctSVVULS0tXCJdPVtFW1wiR1IuSU4uSUMuVEVMRUNPTU1VTklDQVRJT05TXCJdXSxJW1wiUy1HLUlULS0tLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdXSxJW1wiUy1HLUlCQS0tLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLUlCTi0tLVwiXT1bRVtcIkdSLklDLk5BVkFMXCJdXSxJW1wiUy1HLUlVUC0tLVwiXT1bRVtcIkdSLklDLldBVEVSXCJdXX19LGtdO2Z1bmN0aW9uIHUoSSx0LEUpe3ZhciBSPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpLGU9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDMsMSksQT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCwyKSxDPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig2LDEpLFQ9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDcsMSksUz10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoOCwyKSxOPXQuZnVuY3Rpb25pZD10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoMTAsMTApO3JldHVybiB0LmNvbnRleHQ9RS5jb250ZXh0W3BhcnNlSW50KHRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpKV0sdC5hZmZpbGlhdGlvbj17MDpcIlVua25vd25cIiwxOlwiVW5rbm93blwiLDI6XCJGcmllbmRcIiwzOlwiRnJpZW5kXCIsNDpcIk5ldXRyYWxcIiw1OlwiSG9zdGlsZVwiLDY6XCJIb3N0aWxlXCJ9W2VdLHQuZGltZW5zaW9uPXtcIjAwXCI6XCJTZWFcIixcIjAxXCI6XCJBaXJcIixcIjAyXCI6XCJBaXJcIixcIjA1XCI6XCJBaXJcIixcIjA2XCI6XCJBaXJcIiwxMDpcIkdyb3VuZFwiLDExOlwiR3JvdW5kXCIsMTI6XCJHcm91bmRcIiwxNTpcIkdyb3VuZFwiLDIwOlwiR3JvdW5kXCIsMzA6XCJTZWFcIiwzNTpcIlN1YnN1cmZhY2VcIiwzNjpcIlN1YnN1cmZhY2VcIiwzOTpcIlN1YnN1cmZhY2VcIiw0MDpcIkdyb3VuZFwiLDUwOlwiQWlyXCIsNTE6XCJBaXJcIiw1MjpcIkdyb3VuZFwiLDUzOlwiU2VhXCIsNTQ6XCJTdWJzdXJmYWNlXCIsNjA6XCJHcm91bmRcIn1bQV18fFwiXCIsXCIxMFwiIT1BJiZcIjExXCIhPUEmJlwiMjVcIiE9QSYmXCIyN1wiIT1BJiZcIjQwXCIhPUF8fCh0LnVuaXQ9ITApLFwiMDVcIiE9QSYmXCIwNlwiIT1BJiZcIjUwXCIhPUF8fCh0LnNwYWNlPSEwKSxcIjQwXCI9PUEmJih0LmFjdGl2aXR5PSEwKSxcIjIwXCI9PUEmJih0Lmluc3RhbGxhdGlvbj0hMCksXCIyNVwiPT1BJiYodC5jb250cm9sTWVhc3VyZT0hMCksXCI2MFwiPT1BJiYodC5jeWJlcnNwYWNlPSEwKSxcIjM2XCI9PUEmJiExPT09dGhpcy5zdHlsZS5hbHRlcm5hdGVNZWRhbCYmKHQuZmlsbD0hMSksXCIzMFwiPT1BJiYxNWU0PT1OLnN1YnN0cigwLDYpJiYodC5mcmFtZT0hMSksXCIxXCI9PUMmJih0Lm5vdHByZXNlbnQ9SS5fZGFzaEFycmF5cy5hbnRpY2lwYXRlZCksXCIwXCIhPWUmJlwiMlwiIT1lJiZcIjVcIiE9ZXx8KHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzBcIj09QSYmMTZlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzVcIj09QSYmMTRlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzVcIj09QSYmMTVlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMlwiIT1DJiZcIjNcIiE9QyYmXCI0XCIhPUMmJlwiNVwiIT1DfHwodC5jb25kaXRpb249RS5zdGF0dXNbcGFyc2VJbnQoQyldKSx0LmJhc2VEaW1lbnNpb249dC5kaW1lbnNpb24sdC5iYXNlQWZmaWxhdGlvbj10LmFmZmlsaWF0aW9uLFwiNVwiPT1lJiZcIjFcIj09UiYmKHQuam9rZXI9ITApLFwiNlwiPT1lJiZcIjFcIj09UiYmKHQuZmFrZXI9ITApLCh0Lmpva2VyfHx0LmZha2VyKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblsxXSksXCIwMFwiPT1BJiYodC5kaW1lbnNpb25Vbmtub3duPSEwKSxcIjAwXCI9PUEmJlwiMVwiPT1SJiZcIlVua25vd25cIiE9dC5hZmZpbGlhdGlvbiYmKHQuYWZmaWxpYXRpb249XCJcIiksXCIyN1wiPT1BJiYodC5kaW1lbnNpb249XCJMYW5kRGlzbW91bnRlZEluZGl2aWR1YWxcIix0LmRpc21vdW50ZWQ9ITApLFwiMTVcIiE9QSYmXCI1MlwiIT1BfHwodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMl0pLC0xPFtcIjFcIixcIjNcIixcIjVcIixcIjdcIl0uaW5kZXhPZihUKSYmKHQuZmVpbnREdW1teT0hMCksLTE8W1wiMlwiLFwiM1wiLFwiNlwiLFwiN1wiXS5pbmRleE9mKFQpJiYodC5oZWFkcXVhcnRlcnM9ITApLC0xPFtcIjRcIixcIjVcIixcIjZcIixcIjdcIl0uaW5kZXhPZihUKSYmKHQudGFza0ZvcmNlPSEwKSxTPD0zMCYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVtTXSksMzA8PVMmJlM8NzAmJih0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5W1NdKSw3MDw9UyYmUzw4MCYmKHQubGVhZGVyc2hpcD1FLmVjaGVsb25Nb2JpbGl0eVtTXSksKFwiMDFcIj09QSYmXCIxMlwiPT1OLnN1YnN0cmluZygwLDIpfHxcIjA1XCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKXx8XCIxMVwiPT1BfHxcIjEyXCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKXx8XCIxNVwiPT1BJiZcIjE2XCI9PU4uc3Vic3RyaW5nKDAsMil8fFwiMzBcIj09QSYmXCIxNFwiPT1OLnN1YnN0cmluZygwLDIpfHxcIjM1XCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKSkmJih0LmNpdmlsaWFuPSEwKSx0fWZ1bmN0aW9uIHYoSSx0LEUsUil7dmFyIGU9e30sQT17fSxDPXt9LFQ9e307Zm9yKHZhciBTIGluIEkuX2ljb25TSURDLm51bWJlcilJLl9pY29uU0lEQy5udW1iZXIuaGFzT3duUHJvcGVydHkoUykmJkkuX2ljb25TSURDLm51bWJlcltTXS5jYWxsKHRoaXMsZSxBLEMsVCx0LEUsUik7cmV0dXJue2ljb25zOmUsbTE6QSxtMjpDLGJib3g6VH19dmFyIFE9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOlAsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwMVwiPT1lJiYoSVsxMWU0XT1bQVtcIkFSLkkuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIkFSLkkuRklYRUQtV0lORyBEU3ltYm9sXCJdXSxJWzExMDEwMV09W0FbXCJBUi5JLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVsxMTAxMDJdPVtBW1wiQVIuSS5BVFRBQ0svU1RSSUtFXCJdXSxJWzExMDEwM109W0FbXCJBUi5JLkJPTUJFUlwiXV0sSVsxMTAxMDRdPVtBW1wiQVIuSS5GSUdIVEVSXCJdXSxJWzExMDEwNV09W0FbXCJBUi5JLkZJR0hURVIvQk9NQkVSXCJdXSxJWzExMDEwNl09W10sSVsxMTAxMDddPVtBW1wiQVIuSS5DQVJHT1wiXV0sSVsxMTAxMDhdPVtBW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbMTEwMTA5XT1bQVtcIkFSLkkuVEFOS0VSXCJdXSxJWzExMDExMF09W0FbXCJBUi5JLlBBVFJPTFwiXV0sSVsxMTAxMTFdPVtBW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMTAxMTJdPVtBW1wiQVIuSS5UUkFJTkVSXCJdXSxJWzExMDExM109W0FbXCJBUi5JLlVUSUxJVFlcIl1dLElbMTEwMTE0XT1bQVtcIkFSLkkuVlNUT0xcIl1dLElbMTEwMTE1XT1bQVtcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJWzExMDExNl09W0FbXCJBUi5JLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbMTEwMTE3XT1bQVtcIkFSLkkuQU5USVNVUkZBQ0UgV0FSRkFSRVwiXV0sSVsxMTAxMThdPVtBW1wiQVIuSS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbMTEwMTE5XT1bQVtcIkFSLkkuQ09NTVVOSUNBVElPTlNcIl1dLElbMTEwMTIwXT1bQVtcIkFSLkkuQ09NQkFUIFNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzExMDEyMV09W0FbXCJBUi5JLkVMRUNUUk9OSUMgU1VQUE9SVFwiXV0sSVsxMTAxMjJdPVtBW1wiQVIuSS5HT1ZFUk5NRU5UXCJdXSxJWzExMDEyM109W0FbXCJBUi5JLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJWzExMDEyNF09W0FbXCJBUi5JLlBFUlNPTk5FTCBSRUNPVkVSWSBEU3ltYm9sXCJdXSxJWzExMDEyNV09W0FbXCJBUi5JLlNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzExMDEyNl09W0FbXCJBUi5JLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbMTEwMTI3XT1bQVtcIkFSLkkuVUxUUkEgTElHSFRcIl1dLElbMTEwMTI4XT1bQVtcIkFSLkkuUEhPVE9HUkFQSElDIFJFQ09OTkFJU1NBTkNFXCJdXSxJWzExMDEyOV09W0FbXCJBUi5JLlZJUFwiXV0sSVsxMTAxMzBdPVtBW1wiQVIuSS5TVVBSRVNTSU9OIE9GIEVORU1ZIEFJUiBERUZFTkNFXCJdXSxJWzExMDEzMV09W0FbXCJBUi5JLlBBU1NFTkdFUlwiXV0sSVsxMTAxMzJdPVtBW1wiQVIuSS5FU0NPUlRcIl1dLElbMTEwMTMzXT1bQVtcIkFSLkkuRUxFQ1RST05JQyBBVFRBQ0sgKEVBKVwiXV0sSVsxMTAyMDBdPVtBW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXV0sSVsxMTAzMDBdPVtBW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXV0sSVsxMTA0MDBdPVtBW1wiQVIuSS5WRVJUSUNBTC1UQUtFT0ZGIFVBViAoVlQtVUFWKVwiXV0sSVsxMTA1MDBdPVtBW1wiQVIuSS5NSUxJVEFSWSBCQUxMT09OXCJdXSxJWzExMDYwMF09W0FbXCJBUi5JLk1JTElUQVJZIEFJUlNISVBcIl1dLElbMTEwNzAwXT1bQVtcIkFSLkkuVEVUSEVSRUQgTElHSFRFUiBUSEFOIEFJUlwiXV0sSVsxMmU0XT1bQVtcIkFSLkkuQ0lWSUxJQU5cIl1dLElbMTIwMTAwXT1bQVtcIkFSLkkuQ0lWSUxJQU4gRklYRUQtV0lORyBEU3ltYm9sXCJdXSxJWzEyMDIwMF09W0FbXCJBUi5JLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdXSxJWzEyMDMwMF09W0FbXCJBUi5JLkNJVklMSUFOIFVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdXSxJWzEyMDQwMF09W0FbXCJBUi5JLkNJVklMSUFOIEJBTExPT05cIl1dLElbMTIwNTAwXT1bQVtcIkFSLkkuQ0lWSUxJQU4gQUlSU0hJUFwiXV0sSVsxMjA2MDBdPVtBW1wiQVIuSS5DSVZJTElBTiBURVRIRVJFRCBMSUdIVEVSIFRIQU4gQUlSXCJdXSxJWzEzZTRdPVtBW1wiQVIuSS5XRUFQT05cIl1dLElbMTMwMTAwXT1bQVtcIkFSLkkuQk9NQlwiXV0sSVsxMzAyMDBdPVtBW1wiQVIuSS5VTkRFUldBVEVSIERFQ09ZIERTeW1ib2xcIl1dLElbMTRlNF09W0FbXCJBUi5JLk1BTlVBTCBUUkFDS1wiXV0sdFtcIjAxXCJdPVtBW1wiQUlSLk0xLkFUVEFDS1wiXV0sdFtcIjAyXCJdPVtBW1wiQUlSLk0xLkJPTUJFUlwiXV0sdFtcIjAzXCJdPVtBW1wiQUlSLk0xLkNBUkdPXCJdXSx0W1wiMDRcIl09W0FbXCJBSVIuTTEuRklHSFRFUlwiXV0sdFtcIjA1XCJdPVtBW1wiQUlSLk0xLklOVEVSQ0VQVE9SXCJdXSx0W1wiMDZcIl09W0FbXCJBSVIuTTEuVEFOS0VSXCJdXSx0W1wiMDdcIl09W0FbXCJBSVIuTTEuVVRJTElUWVwiXV0sdFtcIjA4XCJdPVtBW1wiQUlSLk0xLlZTVE9MXCJdXSx0W1wiMDlcIl09W0FbXCJBSVIuTTEuUEFTU0VOR0VSXCJdXSx0WzEwXT1bQVtcIkFJUi5NMS5VTFRSQSBMSUdIVFwiXV0sdFsxMV09W0FbXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSx0WzEyXT1bQVtcIkFJUi5NMS5BSVJCT1JORSBFQVJMWSBXQVJOSU5HXCJdXSx0WzEzXT1bQVtcIkFJUi5NMS5HT1ZFUk5NRU5UXCJdXSx0WzE0XT1bQVtcIkFJUi5NMS5NRURFVkFDXCJdXSx0WzE1XT1bQVtcIkFJUi5NMS5FU0NPUlRcIl1dLHRbMTZdPVtBW1wiQUlSLk0xLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sdFsxN109W0FbXCJBSVIuTTEuUEFUUk9MXCJdXSx0WzE4XT1bQVtcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXV0sdFsxOV09W0FbXCJBSVIuTTEuVFJBSU5FUlwiXV0sdFsyMF09W0FbXCJBSVIuTTEuUEhPVE9HUkFQSElDXCJdXSx0WzIxXT1bQVtcIkFJUi5NMS5QRVJTT05ORUwgUkVDT1ZFUllcIl1dLHRbMjJdPVtBW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFsyM109W0FbXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl1dLHRbMjRdPVtBW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VQUE9SVCAoRVMpXCJdXSx0WzI1XT1bQVtcIkFJUi5NMS5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sdFsyNl09W0FbXCJBSVIuTTEuU0VBUkNIIEFORCBSRVNDVUVcIl1dLHRbMjddPVtBW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLHRbMjhdPVtBW1wiQUlSLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sdFsyOV09W0FbXCJBSVIuTTEuVklQXCJdXSx0WzMwXT1bQVtcIkFJUi5NMS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLHRbMzFdPVtBW1wiQUlSLk0xLlNVUFJFU1NJT04gT0YgRU5FTVkgQUlSIERFRkVOQ0VcIl1dLHRbMzJdPVtBW1wiQUlSLk0xLkFOVElTVVJGQUNFIFdBUkZBUkVcIl1dLHRbMzNdPVtBW1wiQUlSLk0xLkZJR0hURVIvQk9NQkVSXCJdXSx0WzM0XT1bQVtcIkFJUi5NMS5JTlRFTlNJVkUgQ0FSRVwiXV0sdFszNV09W0FbXCJBSVIuTTEuRUxFQ1RST05JQyBBVFRBQ0sgKEVBKVwiXV0sdFszNl09W0FbXCJBSVIuTTEuTVVMVElNSVNTSU9OXCJdXSx0WzM3XT1bQVtcIkFJUi5NMS5ISUpBQ0tJTkdcIl1dLHRbMzhdPVtBW1wiQUlSLk0xLkFTVyBIRUxPLUxBTVBTXCJdXSx0WzM5XT1bQVtcIkFJUi5NMS5BU1cgSEVMTyAtIFNILTYwUlwiXV0sdFs0MF09W0FbXCJBSVIuTTEuSElKQUNLRVJcIl1dLHRbNDFdPVtBW1wiQUlSLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIkFJUi5NMi5IRUFWWVwiXV0sRVtcIjAyXCJdPVtBW1wiQUlSLk0yLk1FRElVTVwiXV0sRVtcIjAzXCJdPVtBW1wiQUlSLk0yLkxJR0hUXCJdXSxFW1wiMDRcIl09W0FbXCJBSVIuTTIuQk9PTS1PTkxZXCJdXSxFW1wiMDVcIl09W0FbXCJBSVIuTTIuRFJPVUdFLU9OTFlcIl1dLEVbXCIwNlwiXT1bQVtcIkFJUi5NMi5CT09NIEFORCBEUk9VR0VcIl1dLEVbXCIwN1wiXT1bQVtcIkFJUi5NMi5DTE9TRSBSQU5HRVwiXV0sRVtcIjA4XCJdPVtBW1wiQUlSLk0yLlNIT1JUIFJBTkdFXCJdXSxFW1wiMDlcIl09W0FbXCJBSVIuTTIuTUVESVVNIFJBTkdFXCJdXSxFWzEwXT1bQVtcIkFJUi5NMi5MT05HIFJBTkdFXCJdXSxFWzExXT1bQVtcIkFJUi5NMi5ET1dOTElOS0VEXCJdXSxFWzEyXT1bQVtcIkFJUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxnPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpQLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMDJcIj09ZSYmKElbMTFlNF09W0FbXCJBSVIuTUlTU0lMRS5JQ09OXCJdXSx0W1wiMDFcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl1dLHRbXCIwMlwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl1dLHRbXCIwM1wiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl1dLHRbXCIwNFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNQQUNFXCJdXSx0W1wiMDVcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5BTlRJLUJBTExJU1RJQ1wiXV0sdFtcIjA2XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdXSx0W1wiMDdcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5DUlVJU0VcIl1dLHRbXCIwOFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdXSxFW1wiMDFcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5BSVJcIl1dLEVbXCIwMlwiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNVUkZBQ0VcIl1dLEVbXCIwM1wiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNVQlNVUkZBQ0VcIl1dLEVbXCIwNFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNQQUNFXCJdXSxFW1wiMDVcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5MQVVOQ0hFRFwiXV0sRVtcIjA2XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXV0sRVtcIjA3XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuUEFUUklPVFwiXV0sRVtcIjA4XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuU1RBTkRBUkQgTUlTU0lMRSAtIDIgKFNNLTIpXCJdXSxFW1wiMDlcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gNiAoU00tNilcIl1dLEVbMTBdPVtBW1wiQUlSLk1JU1NJTEUuTTIuRVZPTFZFRCBTRUEgU1BBUlJPVyBNSVNTSUxFIChFU1NNKVwiXV0sRVsxMV09W0FbXCJBSVIuTUlTU0lMRS5NMi5ST0xMSU5HIEFJUkZSQU1FIE1JU1NJTEUgKFJBTSlcIl1dLEVbMTJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl1dLEVbMTNdPVtBW1wiQUlSLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdXSxFWzE0XT1bQVtcIkFJUi5NSVNTSUxFLk0yLklOVEVSTUVESUFURSBSQU5HRVwiXV0sRVsxNV09W0FbXCJBSVIuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdXSxFWzE2XT1bQVtcIkFJUi5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl1dKX19LGI9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmksaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwNVwiPT1lJiYoSVsxMWU0XT1bQVtcIlNQLkkuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIlNQLkkuU1BBQ0UgVkVISUNMRVwiXV0sSVsxMTAyMDBdPVtBW1wiU1AuSS5SRS1FTlRSWSBWRUhJQ0xFXCJdXSxJWzExMDMwMF09W0FbXCJTUEFDRS5QTEFORVQgTEFOREVSXCJdXSxJWzExMDQwMF09W0FbXCJTUC5JLk9SQklURVIgU0hVVFRMRVwiXV0sSVsxMTA1MDBdPVtBW1wiU1AuSS5DQVBTVUxFXCJdXSxJWzExMDYwMF09W0FbXCJTUC5JLlNBVEVMTElURSwgR0VORVJBTFwiXV0sSVsxMTA3MDBdPVtBW1wiU1AuSS5TQVRFTExJVEVcIl1dLElbMTEwODAwXT1bQVtcIlNQLkkuQU5USVNBVEVMTElURSBXRUFQT05cIl1dLElbMTEwOTAwXT1bQVtcIlNQLkkuQVNUUk9OT01JQ0FMIFNBVEVMTElURVwiXV0sSVsxMTFlM109W0FbXCJTUC5JLkJJT1NBVEVMTElURVwiXV0sSVsxMTExMDBdPVtBW1wiU1AuSS5DT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl1dLElbMTExMjAwXT1bQVtcIlNQLkkuRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdXSxJWzExMTMwMF09W0FbXCJTUC5JLk1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl1dLElbMTExNDAwXT1bQVtcIlNQLkkuTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXV0sSVsxMTE1MDBdPVtBW1wiU1AuSS5SRUNPTk5BSVNTQU5DRSBTQVRFTExJVEVcIl1dLElbMTExNjAwXT1bQVtcIlNQLkkuU1BBQ0UgU1RBVElPTlwiXV0sSVsxMTE3MDBdPVtBW1wiU1AuSS5URVRIRVJFRCBTQVRFTExJVEVcIl1dLElbMTExODAwXT1bQVtcIlNQLkkuV0VBVEhFUiBTQVRFTExJVEVcIl1dLElbMTExOTAwXT1bQVtcIlNQLkkuU1BBQ0UgTEFVTkNIIFZFSElDTEVcIl1dLElbMTJlNF09W0FbXCJTUC5JLkNJVklMSUFOXCJdXSxJWzEyMDEwMF09W0FbXCJTUC5JLkNJVklMSUFOIE9SQklURVIgU0hVVFRMRVwiXV0sSVsxMjAyMDBdPVtBW1wiU1AuSS5DSVZJTElBTiBDQVBTVUxFXCJdXSxJWzEyMDMwMF09W0FbXCJTUC5JLkNJVklMSUFOIFNBVEVMTElURVwiXV0sSVsxMjA0MDBdPVtBW1wiU1AuSS5DSVZJTElBTiBBU1RST05PTUlDQUwgU0FURUxMSVRFXCJdXSxJWzEyMDUwMF09W0FbXCJTUC5JLkNJVklMSUFOIEJJT1NBVEVMTElURVwiXV0sSVsxMjA2MDBdPVtBW1wiU1AuSS5DSVZJTElBTiBDT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl1dLElbMTIwNzAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdXSxJWzEyMDgwMF09W0FbXCJTUC5JLkNJVklMSUFOIE1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl1dLElbMTIwOTAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXV0sSVsxMjFlM109W0FbXCJTUC5JLkNJVklMSUFOIFNQQUNFIFNUQVRJT05cIl1dLElbMTIxMTAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gVEVUSEVSRUQgU0FURUxMSVRFXCJdXSxJWzEyMTIwMF09W0FbXCJTUC5JLkNJVklMSUFOIFdFQVRIRVIgU0FURUxMSVRFXCJdXSxJWzEzZTRdPVtBW1wiU1AuSS5NQU5VQUwgVFJBQ0tcIl1dLHRbXCIwMVwiXT1bQVtcIlNQLk0xLkxPVyBFQVJUSCBPUkJJVCAoTEVPKVwiXV0sdFtcIjAyXCJdPVtBW1wiU1AuTTEuTUVESVVNIEVBUlRIIE9SQklUIChNRU8pXCJdXSx0W1wiMDNcIl09W0FbXCJTUC5NMS5ISUdIIEVBUlRIIE9SQklUIChIRU8pXCJdXSx0W1wiMDRcIl09W0FbXCJTUC5NMS5HRU9TWU5DSFJPTk9VUyBPUkJJVCAoR1NPKVwiXV0sdFtcIjA1XCJdPVtBW1wiU1AuTTEuR0VPU1RBVElPTkFSWSBPUkJJVCAoR08pXCJdXSx0W1wiMDZcIl09W0FbXCJTUC5NMS5NT0xOSVlBIE9SQklUIChNTylcIl1dLHRbXCIwN1wiXT1bQVtcIlNQLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNQLk0yLk9QVElDQUxcIl1dLEVbXCIwMlwiXT1bQVtcIlNQLk0yLklORlJBUkVEXCJdXSxFW1wiMDNcIl09W0FbXCJTUC5NMi5SQURBUlwiXV0sRVtcIjA0XCJdPVtBW1wiU1AuTTIuU0lHTkFMUyBJTlRFTExJR0VOQ0UgKFNJR0lOVClcIl1dLEVbXCIwNVwiXT1bQVtcIlNQLk0yLkNZQkVSU1BBQ0VcIl1dKX19LEs9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmksaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwNlwiPT1lJiYoSVsxMWU0XT1bQVtcIlNQQUNFLk1JU1NJTEUuSUNPTlwiXV0sdFtcIjAxXCJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMS5CQUxMSVNUSUNcIl1dLHRbXCIwMlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTEuU1BBQ0VcIl1dLHRbXCIwM1wiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTEuSU5URVJDRVBUT1JcIl1dLEVbXCIwMVwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl1dLEVbXCIwMlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdXSxFW1wiMDNcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSTUVESUFURSBSQU5HRVwiXV0sRVtcIjA0XCJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdXSxFW1wiMDVcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl1dLEVbXCIwNlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuQVJST1dcIl1dLEVbXCIwN1wiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuR1JPVU5ELUJBU0VEIElOVEVSQ0VQVE9SIChHQkkpXCJdXSxFW1wiMDhcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlBBVFJJT1RcIl1dLEVbXCIwOVwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuU1RBTkRBUkQgTUlTU0lMRSAtIFRFUk1JTkFMIFBIQVNFIChTTS1UKVwiXV0sRVsxMF09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSAzIChTTS0zKVwiXV0sRVsxMV09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlRFUk1JTkFMIEhJR0gtQUxUSVRVREUgQVJFQSBERUZFTlNFIChUSEFBRClcIl1dLEVbMTJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMi5TUEFDRVwiXV0sRVsxM109W0FbXCJTUEFDRS5NSVNTSUxFLk0yLkNMT1NFIFJBTkdFXCJdXSxFWzE0XT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuREVCUklTXCJdXSxFWzE1XT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuVU5LTk9XTlwiXV0pfX0sWD17dHlwZTpcIm51bWJlclwiLGdldE1ldGFkYXRhOnUsZ2V0SWNvbnM6dixpY29uUGFydHM6YyxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjEwXCI9PWUmJihJWzExZTRdPVtBW1wiR1IuSUMuQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTEwMjAwXT1bQVtcIkdSLklDLkNJVklMIEFGRkFJUlNcIl1dLElbMTEwMzAwXT1bQVtcIkdSLklDLkNJVklMLU1JTElUQVJZLUNPT1BFUkFUSU9OXCJdXSxJWzExMDQwMF09W0FbXCJHUi5JQy5JTkZPUk1BVElPTiBPUEVSQVRJT05TXCJdXSxJWzExMDUwMF09W0FbXCJHUi5JQy5MSUFJU09OXCJdXSxJWzExMDUwMV09W0FbXCJHUi5JQy5MSUFJU09OXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMTA2MDBdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5GT1JNQVRJT04gU1VQUE9SVCBPUEVSQVRJT05TIChNSVNPKVwiXV0sSVsxMTA2MDFdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5GT1JNQVRJT04gU1VQUE9SVCBPUEVSQVRJT05TIChNSVNPKVwiXSxBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTEwNzAwXT1bQVtcIkdSLklDLlJBRElPXCJdXSxJWzExMDgwMF09W0FbXCJHUi5JQy5SQURJTyBSRUxBWVwiXV0sSVsxMTA5MDBdPVtBW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdXSxJWzExMWUzXT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXV0sSVsxMTEwMDFdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJT1wiXV0sSVsxMTEwMDJdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJTyBSRUxBWVwiXV0sSVsxMTEwMDNdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJTyBURUxFVFlQRSBDRU5UUkVcIl1dLElbMTExMDA0XT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXSxBW1wiR1IuSS5GRi5TQVRFTExJVEVcIl1dLElbMTExMDA1XT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXSxBW1wiR1IuSUMuVklERU8gSU1BR0VSWVwiXV0sSVsxMTExMDBdPVtBW1wiR1IuSS5GRi5TQVRFTExJVEVcIl1dLElbMTExMjAwXT1bQVtcIkdSLklDLlZJREVPIElNQUdFUllcIl1dLElbMTExMzAwXT1bQVtcIkdSLklDLlNQQUNFXCJdXSxJWzExMTQwMF09W0FbXCJHUi5JQy5TUEVDSUFMIFRST09QU1wiXV0sSVsxMmU0XT1bXSxJWzEyMDEwMF09W0FbXCJHUi5JQy5GRi5BSVIgQVNTQVVMVCBXSVRIIE9SR0FOSUMgTElGVFwiXV0sSVsxMjAyMDBdPVtBW1wiR1IuSUMuQUlSIFRSQUZGSUMgU0VSVklDRVNcIl1dLElbMTIwMzAwXT1bQVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbMTIwNDAwXT1bQVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl1dLElbMTIwNDAxXT1bQVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjA0MDJdPVtBW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJWzEyMDUwMF09W0FbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTIwNTAxXT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbMTIwNTAyXT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVsxMjA2MDBdPVtBW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl1dLElbMTIwNjAxXT1bQVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjA3MDBdPVtBW1wiR1IuSUMuQVZJQVRJT04gQ09NUE9TSVRFXCJdXSxJWzEyMDgwMF09W0FbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdXSxJWzEyMDgwMV09W0FbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjA5MDBdPVtBW1wiR1IuSUMuQ09NQkFUXCJdXSxJWzEyMWUzXT1bQVtcIkdSLklDLkNPTUJJTkVEIEFSTVNcIl1dLElbMTIxMTAwXT1bQVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJWzEyMTEwMV09W0FbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxBW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVsxMjExMDJdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjExMDNdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXV0sSVsxMjExMDRdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVsxMjExMDVdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuTUFJTiBHVU4gU1lTVEVNXCJdXSxJWzEyMTEwNl09W0FbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl1dLElbMTIxMjAwXT1bQVtcIkdSLklDLk9CU0VSVkVSL09CU0VSVkFUSU9OXCJdXSxJWzEyMTMwMF09W0FbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjEzMDFdPVtBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLlNVUlZFSUxMQU5DRVwiXV0sSVsxMjEzMDJdPVtBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbMTIxMzAzXT1bQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTIxNDAwXT1bQVtcIkdSLklDLlNFQS1BSVItTEFORFwiXV0sSVsxMjE1MDBdPVtBW1wiR1IuSUMuU05JUEVSXCJdXSxJWzEyMTYwMF09W0FbXCJHUi5JQy5TVVJWRUlMTEFOQ0VcIl1dLElbMTIxNzAwXT1bQVtcIkdSLklDLlNQRUNJQUwgRk9SQ0VTXCJdXSxJWzEyMTgwMF09W0FbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJWzEyMTgwMV09W0FbXCJHUi5JQy5GSVhFRCBXSU5HIE1JU09cIl1dLElbMTIxODAyXT1bQVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sQVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJWzEyMTgwM109W0FbXCJHUi5JQy5DT01CQVRBTlRcIl0sQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLElbMTIxODA0XT1bQVtcIkdSLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl0sQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLElbMTIxODA1XT1bQVtcIlNPRi5JQy5VTkRFUldBVEVSIERFTU9MSVRJT04gVEVBTVwiXV0sSVsxMjE5MDBdPVtBW1wiR1IuSUMuVU5NQU5ORUQgU1lTVEVNU1wiXV0sSVsxMjJlM109W0FbXCJHUi5JQy5SQU5HRVJcIl1dLElbMTNlNF09W10sSVsxMzAxMDBdPVtBW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl1dLElbMTMwMTAxXT1bQVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEFbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl1dLElbMTMwMTAyXT1bQVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEFbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdXSxJWzEzMDEwM109W0FbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxBW1wiR1IuSUMuQUlSIEFORCBNSVNTSUxFIERFRkVOU0VcIl1dLElbMTMwMjAwXT1bQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEFbXCJHUi5NMS5OQVZBTFwiXV0sSVsxMzAzMDBdPVtBW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdXSxJWzEzMDMwMV09W3MuX3NjYWxlKC44LEFbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0pLEFbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTMwMzAyXT1bcy5fc2NhbGUoLjgsQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbMTMwMzAzXT1bcy5fc2NhbGUoLjgsQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzEzMDQwMF09W0FbXCJHUi5JQy5GSUVMRCBBUlRJTExFUlkgT0JTRVJWRVJcIl1dLElbMTMwNTAwXT1bQVtcIkdSLklDLkpPSU5UIEZJUkUgU1VQUE9SVFwiXV0sSVsxMzA2MDBdPVtBW1wiR1IuSUMuTUVURU9ST0xPR0lDQUxcIl1dLElbMTMwNzAwXT1bQVtcIkdSLklDLk1JU1NJTEVcIl1dLElbMTMwODAwXT1bQVtcIkdSLklDLk1PUlRBUlwiXV0sSVsxMzA4MDFdPVtBW1wiR1IuSUMuTU9SVEFSXCJdLEFbXCJHUi5NMi5UUkFDS0VEXCJdXSxJWzEzMDgwMl09W0FbXCJHUi5JQy5NT1JUQVJcIl0sQVtcIkdSLk0yLlRSVUNLXCJdXSxJWzEzMDgwM109W0FbXCJHUi5JQy5NT1JUQVJcIl0sQVtcIkdSLk0yLlRPV0VEXCJdXSxJWzEzMDkwMF09W0FbXCJHUi5JQy5TVVJWRVlcIl1dLElbMTRlNF09W10sSVsxNDAxMDBdPVtBW1wiR1IuSUMuQ0JSTlwiXV0sSVsxNDAxMDFdPVtBW1wiR1IuSUMuQ0JSTlwiXSxBW1wiR1IuSUMuQVJNT1VSXCJdXSxJWzE0MDEwMl09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTQwMTAzXT1bQVtcIkdSLklDLkNCUk5cIl0sQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzE0MDEwNF09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxBW1wiR1IuSUMuQVJNT1VSXCJdXSxJWzE0MDEwNV09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxBW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJWzE0MDEwNl09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5DSEVNSUNBTCwgQklPTE9HSUNBTCwgUkFESU9MT0dJQ0FMLCBOVUNMRUFSLCBBTkQgSElHSC1ZSUVMRCBFWFBMT1NJVkVTXCJdXSxJWzE0MDIwMF09W0FbXCJHUi5JQy5DT01CQVQgU1VQUE9SVCAoTUFOT0VVVlJFIEVOSEFOQ0VNRU5UKVwiXV0sSVsxNDAzMDBdPVtBW1wiR1IuSUMuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sSVsxNDA0MDBdPVtBW1wiR1IuSUMuRElWRVIsIENJVklMSUFOXCJdXSxJWzE0MDUwMF09W0FbXCJHUi5JQy5ET0dcIl1dLElbMTQwNjAwXT1bQVtcIkdSLklDLkRSSUxMSU5HXCJdXSxJWzE0MDcwMF09W0FbXCJHUi5JQy5FTkdJTkVFUlwiXV0sSVsxNDA3MDFdPVtBW1wiR1IuSUMuRU5HSU5FRVIgTUVDSEFOSVpFRFwiXV0sSVsxNDA3MDJdPVtBW1wiR1IuSUMuRU5HSU5FRVJcIl0sQVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVsxNDA3MDNdPVtBW1wiR1IuSUMuRU5HSU5FRVJcIl0sQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzE0MDgwMF09W0FbXCJHUi5JQy5FWFBMT1NJVkUgT1JETkFOQ0UgRElTUE9TQUxcIl1dLElbMTQwOTAwXT1bQVtcIkdSLklDLkZJRUxEIENBTVAgQ09OU1RSVUNUSU9OXCJdXSxJWzE0MWUzXT1bQVtcIkdSLklDLkZJUkUgUFJPVEVDVElPTlwiXV0sSVsxNDExMDBdPVtBW1wiR1IuSUMuR0VPU1BBVElBTCBTVVBQT1JUXCJdXSxJWzE0MTIwMF09W0FbXCJHUi5JQy5NSUxJVEFSWSBQT0xJQ0VcIl1dLElbMTQxMzAwXT1bQVtcIkdSLklDLk1JTkVcIl1dLElbMTQxNDAwXT1bQVtcIkdSLklDLk1JTkUgQ0xFQVJJTkdcIl1dLElbMTQxNTAwXT1bQVtcIkdSLklDLk1JTkUgTEFVTkNISU5HXCJdXSxJWzE0MTYwMF09W0FbXCJHUi5JQy5NSU5FIExBWUlOR1wiXV0sSVsxNDE3MDBdPVtBW1wiR1IuSUMuU0VDVVJJVFlcIl1dLElbMTQxNzAxXT1bQVtcIkdSLklDLlNFQ1VSSVRZXCJdLEFbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTQxNzAyXT1bQVtcIkdSLklDLlNFQ1VSSVRZXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTQxODAwXT1bQVtcIkdSLklDLlNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzE0MTkwMF09W0FbXCJHUi5JQy5TRUNVUklUWSBQT0xJQ0UgKEFJUilcIl1dLElbMTQyZTNdPVtBW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdXSxJWzE0MjEwMF09W0FbXCJHUi5JQy5UT1BPR1JBUEhJQ1wiXV0sSVsxNDIyMDBdPVtBW1wiR1IuSUMuQUlSIEFORCBNSVNTSUxFIERFRkVOU0VcIl1dLElbMTVlNF09W10sSVsxNTAxMDBdPVtBW1wiR1IuSUMuRkYuQU5BTFlTSVNcIl1dLElbMTUwMjAwXT1bQVtcIkdSLklDLkNPVU5URVItSU5URUxMSUdFTkNFXCJdXSxJWzE1MDMwMF09W0FbXCJHUi5JQy5GRi5ESVJFQ1RJT04gRklORElOR1wiXV0sSVsxNTA0MDBdPVtBW1wiR1IuSUMuRUxFQ1RST05JQyBSQU5HSU5HXCJdXSxJWzE1MDUwMF09W0FbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl1dLElbMTUwNTAxXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuQU5BTFlTSVNcIl1dLElbMTUwNTAyXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuRElSRUNUSU9OIEZJTkRJTkdcIl1dLElbMTUwNTAzXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuSU5URVJDRVBUXCJdXSxJWzE1MDUwNF09W0FbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sQVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbMTUwNTA1XT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuU0VBUkNIXCJdXSxJWzE1MDYwMF09W0FbXCJHUi5JQy5GRi5JTlRFUkNFUFRcIl1dLElbMTUwNzAwXT1bQVtcIkdSLklDLklOVEVSUk9HQVRJT05cIl1dLElbMTUwODAwXT1bQVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbMTUwOTAwXT1bQVtcIkdSLklDLkpPSU5UIElOVEVMTElHRU5DRSBDRU5UUkVcIl1dLElbMTUxZTNdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdXSxJWzE1MTEwMF09W0FbXCJHUi5JQy5GRi5TRUFSQ0hcIl1dLElbMTUxMjAwXT1bQVtcIkdSLklDLlNFTlNPUlwiXV0sSVsxNTEzMDBdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSElTVE9SWVwiXV0sSVsxNmU0XT1bQVtcIkdSLklDLlNVU1RBSU5NRU5UXCJdXSxJWzE2MDEwMF09W0FbXCJHUi5JQy5BRE1JTklTVFJBVElWRVwiXV0sSVsxNjAyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBBTExcIl1dLElbMTYwMzAwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJWzE2MDQwMF09W0FbXCJHUi5JQy5BTU1VTklUSU9OXCJdXSxJWzE2MDUwMF09W0FbXCJHUi5JQy5CQU5EXCJdXSxJWzE2MDUwMV09W0FbXCJHUi5JQy5BUk1ZIE1VU0lDXCJdXSxJWzE2MDYwMF09W0FbXCJHUi5JQy5DT01CQVQgU0VSVklDRSBTVVBQT1JUXCJdXSxJWzE2MDcwMF09W0FbXCJHUi5JQy5GSU5BTkNFXCJdXSxJWzE2MDgwMF09W0FbXCJHUi5JQy5KVURHRSBBRFZPQ0FURSBHRU5FUkFMXCJdXSxJWzE2MDkwMF09W0FbXCJHUi5JQy5MQUJPVVJcIl1dLElbMTYxZTNdPVtBW1wiR1IuSUMuTEFVTkRSWS9CQVRIXCJdXSxJWzE2MTEwMF09W0FbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXV0sSVsxNjEyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5NQVRFUklFTFwiXV0sSVsxNjEzMDBdPVtBW1wiR1IuSUMuRkYuTUVESUNBTFwiXV0sSVsxNjE0MDBdPVtBW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbMTYxNTAwXT1bQVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl1dLElbMTYxNjAwXT1bQVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl1dLElbMTYxNzAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgTVVMVElQTEVcIl1dLElbMTYxODAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgSVwiXV0sSVsxNjE5MDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJSVwiXV0sSVsxNjJlM109W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVsxNjIxMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJVlwiXV0sSVsxNjIyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJWzE2MjMwMF09W0FbXCJHUi5JQy5PUkROQU5DRVwiXV0sSVsxNjI0MDBdPVtBW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdXSxJWzE2MjUwMF09W0FbXCJHUi5JQy5QRVRST0xFVU0gT0lMIExVQlJJQ0FOVFNcIl1dLElbMTYyNjAwXT1bQVtcIkdSLklDLlBJUEVMSU5FXCJdXSxJWzE2MjcwMF09W0FbXCJHUi5JQy5QT1NUQUxcIl1dLElbMTYyODAwXT1bQVtcIkdSLklDLlBVQkxJQyBBRkZBSVJTXCJdXSxJWzE2MjkwMF09W0FbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdXSxJWzE2M2UzXT1bQVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJWzE2MzEwMF09W0FbXCJHUi5JQy5SRUxJR0lPVVMgU1VQUE9SVFwiXV0sSVsxNjMyMDBdPVtBW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdXSxJWzE2MzMwMF09W0FbXCJHUi5JQy5TRUFQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJWzE2MzQwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl1dLElbMTYzNTAwXT1bQVtcIkdSLklDLkpPSU5UIElORk9STUFUSU9OIEJVUkVBVVwiXV0sSVsxNjM2MDBdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbMTYzNjAxXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5JQy5GTE9BVElORyBDUkFGVFwiXV0sSVsxNjM3MDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBJXCJdXSxJWzE2MzgwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJXCJdXSxJWzE2MzkwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVsxNjRlM109W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElWXCJdXSxJWzE2NDEwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIFZcIl1dLElbMTY0MjAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgVklcIl1dLElbMTY0MzAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgVklJXCJdXSxJWzE2NDQwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIFZJSUlcIl1dLElbMTY0NTAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgSVhcIl1dLElbMTY0NjAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVsxNjQ3MDBdPVtBW1wiR1IuSUMuV0FURVJcIl1dLElbMTY0ODAwXT1bQVtcIkdSLklDLldBVEVSIFBVUklGSUNBVElPTlwiXV0sSVsxNjQ5MDBdPVtBW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdXSxJWzE2NWUzXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgQUxMXCJdXSxJWzE2NTEwMF09W0FbXCJHUi5JQy5JTlRFUlBSRVRFUi9UUkFOU0xBVE9SXCJdXSxJWzE2NTIwMF09W0FbXCJHUi5JQy5TVVBQT1JUXCJdXSxJWzE2NTMwMF09W0FbXCJHUi5JQy5BUk1ZIEZJRUxEIFNVUFBPUlRcIl1dLElbMTY1NDAwXT1bQVtcIkdSLklDLkNPTlRSQUNUSU5HIFNFUlZJQ0VTXCJdXSxJWzE2NTUwMF09W0FbXCJHUi5JQy5QQVJBQ0hVVEUgUklHR0VSXCJdXSxJWzE3ZTRdPVtdLElbMTcwMTAwXT1bQVtcIkdSLklDLk5BVkFMXCJdXSxJWzE4ZTRdPVtdLElbMTgwMTAwXT1bQVtcIkdSLklDLkFMTElFRCBDT01NQU5EIEVVUk9QRSBSQVBJRCBSRUFDVElPTiBDT1JQUyAoQVJSQylcIl1dLElbMTgwMjAwXT1bQVtcIkdSLklDLkFMTElFRCBDT01NQU5EIE9QRVJBVElPTlNcIl1dLElbMTgwMzAwXT1bQVtcIkdSLklDLklOVEVSTkFUSU9OQUwgU0VDVVJJVFkgQVNTSVNUQU5DRSBGT1JDRSAoSVNBRilcIl1dLElbMTgwNDAwXT1bQVtcIkdSLklDLk1VTFRJTkFUSU9OQUwgKE1OKVwiXV0sSVsxOWU0XT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMmU1XT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsyMDAxMDBdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzIwMDIwMF09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzIwMDMwMF09W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMjAwNDAwXT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzIwMDUwMF09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMjAwNjAwXT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMjAwNzAwXT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsyMDA4MDBdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzIwMDkwMF09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMjAxZTNdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT04gU0VDVVJJVFkgQUdFTkNZIChUU0EpXCJdXSxJWzIwMTEwMF09W0FbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlQgVkVTU0VMXCJdXSxJWzIwMTIwMF09W0FbXCJHUi5JQy5GRi5VUyBNQVJTSEFMUyBTRVJWSUNFXCJdXSxJWzIwMTMwMF09W0FbXCJTVC5JQy5JTlRFUk5BTCBTRUNVUklUWSBGT1JDRVwiXV0sdFtcIjAxXCJdPVtDP0FbXCJHUi5NMS5UQUNUSUNBTCBTQVRFTExJVEUgQ09NTVVOSUNBVElPTlNcIl06QVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sdFtcIjAyXCJdPVtBW1wiR1IuTTEuQVJFQVwiXV0sdFtcIjAzXCJdPVtBW1wiR1IuTTEuQVRUQUNLXCJdXSx0W1wiMDRcIl09W0FbXCJHUi5NMS5CSU9MT0dJQ0FMXCJdXSx0W1wiMDVcIl09W0FbXCJHUi5NMS5CT1JERVJcIl1dLHRbXCIwNlwiXT1bQVtcIkdSLk0xLkJSSURHSU5HXCJdXSx0W1wiMDdcIl09W0FbXCJHUi5NMS5DSEVNSUNBTFwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuTTEuQ0xPU0UgUFJPVEVDVElPTlwiXV0sdFtcIjA5XCJdPVtBW1wiR1IuTTEuQ09NQkFUXCJdXSx0WzEwXT1bQVtcIkdSLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl1dLHRbMTFdPVtBW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXV0sdFsxMl09W0FbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl1dLHRbMTNdPVtBW1wiR1IuTTEuQ1JPU1MgQ1VMVFVSQUwgQ09NTVVOSUNBVElPTlwiXV0sdFsxNF09W0FbXCJHUi5NMS5DUk9XRCBBTkQgUklPVCBDT05UUk9MXCJdXSx0WzE1XT1bQVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sdFsxNl09W0FbXCJHUi5NMS5ERVRFTlRJT05cIl1dLHRbMTddPVtBW1wiR1IuTTEuRElSRUNUIENPTU1VTklDQVRJT05TXCJdXSx0WzE4XT1bQVtcIkdSLk0xLkRJVklOR1wiXV0sdFsxOV09W0FbXCJHUi5NMS5ESVZJU0lPTlwiXV0sdFsyMF09W0FbXCJHUi5NMS5ET0dcIl1dLHRbMjFdPVtBW1wiR1IuTTEuRFJJTExJTkdcIl1dLHRbMjJdPVtBW1wiR1IuTTEuRUxFQ1RSTy1PUFRJQ0FMXCJdXSx0WzIzXT1bQVtcIkdSLk0xLkVOSEFOQ0VEXCJdXSx0WzI0XT1bQVtcIkdSLk0xLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXV0sdFsyNV09W0FbXCJHUi5NMS5GSVJFIERJUkVDVElPTiBDRU5UUkVcIl1dLHRbMjZdPVtBW1wiR1IuTTEuRk9SQ0VcIl1dLHRbMjddPVtBW1wiR1IuTTEuRk9SV0FSRFwiXV0sdFsyOF09W0FbXCJHUi5NMS5HUk9VTkQgU1RBVElPTiBNT0RVTEVcIl1dLHRbMjldPVtBW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdXSx0WzMwXT1bQVtcIkdSLk0xLkxBUkdFIEVYVEVOU0lPTiBOT0RFXCJdXSx0WzMxXT1bQVtcIkdSLk0xLk1BSU5URU5BTkNFXCJdXSx0WzMyXT1bQVtcIkdSLk0xLk1FVEVPUk9MT0dJQ0FMXCJdXSx0WzMzXT1bQVtcIkdSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVcIl1dLHRbMzRdPVtBW1wiR1IuTTEuTUlTU0lMRVwiXV0sdFszNV09W0FbXCJHUi5NMS4oTU9CSUxFKSBBRFZJU09SIEFORCBTVVBQT1JUXCJdXSx0WzM2XT1bQVtcIkdSLk0xLk1PQklMRSBTVUJTQ1JJQkVSIEVRVUlQTUVOVFwiXV0sdFszN109W0FbXCJHUi5NMS5NT0JJTElUWSBTVVBQT1JUXCJdXSx0WzM4XT1bQVtcIkdSLk0xLk1PVkVNRU5UIENPTlRST0wgQ0VOVFJFXCJdXSx0WzM5XT1bQVtcIkdSLk0xLk1VTFRJTkFUSU9OQUxcIl1dLHRbNDBdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTCBTUEVDSUFMSVpFRCBVTklUXCJdXSx0WzQxXT1bQVtcIkdSLk0xLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sdFs0Ml09W0FbXCJHUi5NMS5OQVRPIE1FRElDQUwgUk9MRSAxXCJdXSx0WzQzXT1bQVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDJcIl1dLHRbNDRdPVtBW1wiR1IuTTEuTkFUTyBNRURJQ0FMIFJPTEUgM1wiXV0sdFs0NV09W0FbXCJHUi5NMS5OQVRPIE1FRElDQUwgUk9MRSA0XCJdXSx0WzQ2XT1bQVtcIkdSLk0xLk5BVkFMXCJdXSx0WzQ3XT1bQz9BW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl06QVtcIkdSLk0xLk5PREUgQ0VOVFJFXCJdXSx0WzQ4XT1bQVtcIkdSLk0xLk5VQ0xFQVJcIl1dLHRbNDldPVtBW1wiR1IuTTEuT1BFUkFUSU9OU1wiXV0sdFs1MF09W0FbXCJHUi5NMS5SQURBUlwiXV0sdFs1MV09W0FbXCJHUi5NMS5SQURJTyBGUkVRVUVOQ1kgSURFTlRJRklDQVRJT04gKFJGSUQpIElOVEVSUk9HQVRPUi8gU0VOU09SXCJdXSx0WzUyXT1bQVtcIkdSLk0xLlJBRElPTE9HSUNBTFwiXV0sdFs1M109W0FbXCJHUi5NMS5TRUFSQ0ggQU5EIFJFU0NVRVwiXV0sdFs1NF09W0FbXCJHUi5NMS5TRUNVUklUWVwiXV0sdFs1NV09W0FbXCJHUi5NMS5TRU5TT1JcIl1dLHRbNTZdPVtDP0FbXCJHUi5NMS5XRUFQT05cIl06QVtcIkdSLk0xLlNFTlNPUiBDT05UUk9MIE1PRFVMRVwiXV0sdFs1N109W0FbXCJHUi5NMS5TSUdOQUxTIElOVEVMTElHRU5DRVwiXV0sdFs1OF09W0M/QVtcIkdSLk0xLkFSTU9SRURcIl06QVtcIkdSLk0xLlNJTkdMRSBTSEVMVEVSIFNXSVRDSFwiXV0sdFs1OV09W0FbXCJHUi5NMS5TSU5HTEUgUk9DS0VUIExBVU5DSEVSXCJdXSx0WzYwXT1bQVtcIkdSLk0xLlNNT0tFXCJdXSx0WzYxXT1bQVtcIkdSLk0xLlNOSVBFUlwiXV0sdFs2Ml09W0FbXCJHUi5NMS5TT1VORCBSQU5HSU5HXCJdXSx0WzYzXT1bQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLHRbNjRdPVtBW1wiR1IuTTEuU1BFQ0lBTCBXRUFQT05TIEFORCBUQUNUSUNTXCJdXSx0WzY1XT1bQVtcIkdSLk0xLlNVUlZFWVwiXV0sdFs2Nl09W0FbXCJHUi5NMS5UQUNUSUNBTCBFWFBMT0lUQVRJT05cIl1dLHRbNjddPVtBW1wiR1IuTTEuVEFSR0VUIEFDUVVJU0lUSU9OXCJdXSx0WzY4XT1bQVtcIkdSLk0xLlRPUE9HUkFQSElDXCJdXSx0WzY5XT1bQVtcIkdSLk0xLlVUSUxJVFlcIl1dLHRbNzBdPVtBW1wiR1IuTTEuVklERU8gSU1BR0VSWVwiXV0sdFs3MV09W0M/QVtcIkdSLk0xLk1PQklMSVRZIEFTU0FVTFRcIl06QVtcIkdSLk0xLkFDQ0lERU5UXCJdXSx0WzcyXT1bQz9BW1wiR1IuTTEuQU1QSElCSU9VUyBXQVJGQVJFIFNISVAgXCJdOkFbXCJHUi5NMS5PVEhFUlwiXV0sdFs3M109W0M/QVtcIkdSLk0xLkxPQUQgSEFORExJTkcgU1lTVEVNXCJdOkFbXCJHUi5NMS5DSVZJTElBTlwiXV0sdFs3NF09W0M/QVtcIkdSLk0xLlBBTExFVElaRUQgTE9BRCBTWVNURU1cIl06QVtcIkdSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFs3NV09W0FbXCJHUi5NMS5NRURFVkFDXCJdXSx0Wzc2XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLHRbNzddPVtBW1wiR1IuTTEuU1VQUE9SVFwiXV0sdFs3OF09W0FbXCJHUi5NMS5BVklBVElPTlwiXV0sdFs3OV09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl1dLHRbODBdPVtBW1wiR1IuTTEuVElMVC1ST1RPUlwiXV0sdFs4MV09W0FbXCJHUi5NMS5DT01NQU5EIFBPU1QgTk9ERVwiXV0sdFs4Ml09W0FbXCJHUi5NMS5KT0lOVCBORVRXT1JLIE5PREVcIl1dLHRbODNdPVtBW1wiR1IuTTEuUkVUUkFOU01JU1NJT04gU0lURVwiXV0sdFs4NF09W0FbXCJHUi5NMS5BU1NBVUxUXCJdXSx0Wzg1XT1bQVtcIkdSLk0xLldFQVBPTlNcIl1dLHRbODZdPVtBW1wiR1IuTTEuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sdFs4N109W0FbXCJHUi5NMS5ESUdJVEFMXCJdXSx0Wzg4XT1bQVtcIkdSLk0xLk5FVFdPUksgT1IgTkVUV09SSyBPUEVSQVRJT05TXCJdXSx0Wzg5XT1bQVtcIkdSLk0xLkFJUkZJRUxELCBBRVJJQUwgUE9SVCBPRiBERUJBUktBVElPTiwgT1IgQUVSSUFMIFBPUlQgT0YgRU1CQVJLQVRJT05cIl1dLHRbOTBdPVtBW1wiR1IuTTEuUElQRUxJTkVcIl1dLHRbOTFdPVtBW1wiR1IuTTEuUE9TVEFMXCJdXSx0WzkyXT1bQVtcIkdSLk0xLldBVEVSXCJdXSx0WzkzXT1bQVtcIkdSLk0xLklOREVQRU5ERU5UIENPTU1BTkRcIl1dLHRbOTRdPVtBW1wiR1IuTTEuVEhFQVRSRVwiXV0sdFs5NV09W0FbXCJHUi5NMS5BUk1ZXCJdXSx0Wzk2XT1bQVtcIkdSLk0xLkNPUlBTXCJdXSx0Wzk3XT1bQVtcIkdSLk0xLkJSSUdBREVcIl1dLHRbOThdPVtBW1wiR1IuSUMuRkYuSEVBRFFVQVJURVJTIE9SIEhFQURRVUFSVEVSUyBFTEVNRU5UXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5NMi5BSVJCT1JORVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuQVJDVElDXCJdXSxFW1wiMDNcIl09W0FbXCJHUi5NMi5CQVRUTEUgREFNQUdFIFJFUEFJUlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuQklDWUNMRSBFUVVJUFBFRFwiXV0sRVtcIjA1XCJdPVtBW1wiR1IuTTIuQ0FTVUFMVFkgU1RBR0lOR1wiXV0sRVtcIjA2XCJdPVtBW1wiR1IuTTIuQ0xFQVJJTkdcIl1dLEVbXCIwN1wiXT1bQVtcIkdSLk0yLkNMT1NFIFJBTkdFXCJdXSxFW1wiMDhcIl09W0FbXCJHUi5NMi5DT05UUk9MXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5ERUNPTlRBTUlOQVRJT05cIl1dLEVbMTBdPVtBW1wiR1IuTTIuREVNT0xJVElPTlwiXV0sRVsxMV09W0FbXCJHUi5NMi5ERU5UQUxcIl1dLEVbMTJdPVtBW1wiR1IuTTIuRElHSVRBTFwiXV0sRVsxM109W0FbXCJHUi5NMi5FTkhBTkNFRCBQT1NJVElPTiBMT0NBVElPTiBSRVBPUlRJTkcgU1lTVEVNXCJdXSxFWzE0XT1bQVtcIkdSLk0yLkVRVUlQTUVOVFwiXV0sRVsxNV09W0FbXCJHUi5NMi5IRUFWWVwiXV0sRVsxNl09W0FbXCJHUi5NMi5ISUdIIEFMVElUVURFXCJdXSxFWzE3XT1bQVtcIkdSLk0yLklOVEVSTU9EQUxcIl1dLEVbMThdPVtBW1wiR1IuTTIuSU5URU5TSVZFIENBUkVcIl1dLEVbMTldPVtBW1wiR1IuTTIuTElHSFRcIl1dLEVbMjBdPVtBW1wiR1IuTTIuTEFCT1JBVE9SWVwiXV0sRVsyMV09W0FbXCJHUi5NMi5MQVVOQ0hFUlwiXV0sRVsyMl09W0FbXCJHUi5NMi5MT05HIFJBTkdFXCJdXSxFWzIzXT1bQVtcIkdSLk0yLkxPVyBBTFRJVFVERVwiXV0sRVsyNF09W0FbXCJHUi5NMi5NRURJVU1cIl1dLEVbMjVdPVtBW1wiR1IuTTIuTUVESVVNIEFMVElUVURFXCJdXSxFWzI2XT1bQVtcIkdSLk0yLk1FRElVTSBSQU5HRVwiXV0sRVsyN109W0FbXCJHUi5NMi5NT1VOVEFJTlwiXV0sRVsyOF09W0FbXCJHUi5NMi5ISUdIIFRPIE1FRElVTSBBTFRJVFVERVwiXV0sRVsyOV09W0FbXCJHUi5NMi5NVUxUSS1DSEFOTkVMXCJdXSxFWzMwXT1bQVtcIkdSLk0yLk9QVElDQUxcIl1dLEVbMzFdPVtBW1wiR1IuTTIuUEFDSyBBTklNQUxcIl1dLEVbMzJdPVtBW1wiR1IuTTIuUEFUSUVOVCBFVkFDVUFUSU9OIENPT1JESU5BVElPTlwiXV0sRVszM109W0FbXCJHUi5NMi5QUkVWRU5USVZFIE1BSU5URU5BTkNFXCJdXSxFWzM0XT1bQVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLEVbMzVdPVtBW1wiR1IuTTIuUkFESU8gUkVMQVkgTElORSBPRiBTSUdIVFwiXV0sRVszNl09W0FbXCJHUi5NMi5SQUlMUk9BRFwiXV0sRVszN109W0FbXCJHUi5NMi5SRUNPVkVSWSAoVU5NQU5ORUQgU1lTVEVNUylcIl1dLEVbMzhdPVtBW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sRVszOV09W0FbXCJHUi5NMi5SRVNDVUUgQ09PUkRJTkFUSU9OIENFTlRSRVwiXV0sRVs0MF09W0FbXCJHUi5NMi5SSVZFUklORVwiXV0sRVs0MV09W0FbXCJHUi5NMi5TSU5HTEUgQ0hBTk5FTFwiXV0sRVs0Ml09W0FbXCJHUi5NMi5TS0lcIl1dLEVbNDNdPVtBW1wiR1IuTTIuU0hPUlQgUkFOR0VcIl1dLEVbNDRdPVtBW1wiR1IuTTIuU1RSQVRFR0lDXCJdXSxFWzQ1XT1bQVtcIkdSLk0yLlNVUFBPUlRcIl1dLEVbNDZdPVtBW1wiR1IuTTIuVEFDVElDQUxcIl1dLEVbNDddPVtBW1wiR1IuTTIuVE9XRURcIl1dLEVbNDhdPVtBW1wiR1IuTTIuVFJPT1BcIl1dLEVbNDldPVtBW1wiR1IuTTIuVkVSVElDQUwgT1IgU0hPUlQgVEFLRS1PRkYgQU5EIExBTkRJTkcgXCJdXSxFWzUwXT1bQVtcIkdSLk0yLlZFVEVSSU5BUllcIl1dLEVbNTFdPVtBW1wiR1IuTTIuV0hFRUxFRFwiXV0sRVs1Ml09W0FbXCJHUi5NMi5ISUdIIFRPIExPVyBBTFRJVFVERVwiXV0sRVs1M109W0FbXCJHUi5NMi5NRURJVU0gVE8gTE9XIEFMVElUVURFXCJdXSxFWzU0XT1bQVtcIkdSLk0yLkFUVEFDS1wiXV0sRVs1NV09W0FbXCJHUi5NMi5SRUZVRUxcIl1dLEVbNTZdPVtBW1wiR1IuTTIuVVRJTElUWVwiXV0sRVs1N109W0FbXCJHUi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLEVbNThdPVtBW1wiR1IuTTIuR1VFUklMTEFcIl1dLEVbNTldPVtBW1wiR1IuTTIuQUlSIEFTU0FVTFRcIl1dLEVbNjBdPVtBW1wiR1IuTTIuQU1QSElCSU9VU1wiXV0sRVs2MV09W0FbXCJHUi5NMi5WRVJZIEhFQVZZXCJdXSxFWzYyXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sRVs2M109W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSxFWzY0XT1bQVtcIkdSLk0yLk5BVlkgQkFSR0UsIFNFTEYtUFJPUEVMTEVEXCJdXSxFWzY1XT1bQVtcIkdSLk0yLk5BVlkgQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sRVs2Nl09W0FbXCJHUi5NMi5MQVVOQ0hcIl1dLEVbNjddPVtBW1wiR1IuTTIuTEFORElORyBDUkFGVFwiXV0sRVs2OF09W0FbXCJHUi5NMi5MQU5ESU5HIFNISVBcIl1dLEVbNjldPVtBW1wiR1IuTTIuU0VSVklDRSBDUkFGVC9ZQVJEXCJdXSxFWzcwXT1bQVtcIkdSLk0yLlRVRyBIQVJCT1JcIl1dLEVbNzFdPVtBW1wiR1IuTTIuT0NFQU4gR09JTkcgVFVHIEJPQVRcIl1dLEVbNzJdPVtBW1wiR1IuTTIuU1VSRkFDRSBERVBMT1lNRU5UIEFORCBESVNUUklCVVRJT04gQ09NTUFORFwiXV0sRVs3M109W0FbXCJHUi5NMi5OT05DT01CQVRBTlQgR0VORVJJQyBWRVNTRUxcIl1dLEVbNzRdPVtBW1wiR1IuTTIuQ09NUE9TSVRFXCJdXSxFWzc1XT1bQVtcIkdSLk0yLlNIRUxURVJcIl1dLEVbNzZdPVtBW1wiR1IuTTIuTElHSFQgQU5EIE1FRElVTVwiXV0sRVs3N109W0FbXCJHUi5NMi5TRUxGLVBST1BFTExFRFwiXV0sRVs3OF09W0FbXCJHUi5NMi5TRUNVUklUWSBGT1JDRSBBU1NJU1RBTkNFXCJdXSl9fSx3PXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMTFcIj09ZSYmKElbMTFlNF09W0FbXCJHUi5JLkNJVklMSUFOXCJdXSxJWzExMDEwMF09W0FbXCJHUi5JQy5FTlZJUk9OTUVOVEFMIFBST1RFQ1RJT05cIl1dLElbMTEwMjAwXT1bQVtcIkdSLklDLkdPVkVSTk1FTlQgT1JHQU5JWkFUSU9OXCJdXSxJWzExMDMwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdXSxJWzExMDQwMF09W0FbXCJTVC5JQy5HUk9VUFwiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl1dLElbMTEwNjAwXT1bQVtcIlNULklDLktJTExJTkcgVklDVElNU1wiXV0sSVsxMTA3MDBdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdXSxJWzExMDgwMF09W0FbXCJTVC5JQy5TUFlcIl1dLElbMTEwOTAwXT1bQVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdXSxJWzExMWUzXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sdFtcIjAxXCJdPVtBW1wiU1QuTTEuQVNTQVNTSU5BVElPTlwiXV0sdFtcIjAyXCJdPVtBW1wiU1QuTTEuRVhFQ1VUSU9OIChXUk9OR0ZVTCBLSUxMSU5HKVwiXV0sdFtcIjAzXCJdPVtBW1wiU1QuTTEuTVVSREVSXCJdXSx0W1wiMDRcIl09W0FbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLHRbXCIwNVwiXT1bQVtcIlNULk0xLktJRE5BUFBJTkdcIl1dLHRbXCIwNlwiXT1bQVtcIlNULk0xLlBJUkFDWVwiXV0sdFtcIjA3XCJdPVtBW1wiU1QuTTEuUkFQRVwiXV0sdFtcIjA4XCJdPVtBW1wiU1QuTTEuQ0lWSUxJQU5cIl1dLHRbXCIwOVwiXT1bQVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdXSx0WzEwXT1bQVtcIlNULk0xLkZPUkVJR04gRklHSFRFUlNcIl1dLHRbMTFdPVtBW1wiU1QuTTEuR0FOR1wiXV0sdFsxMl09W0FbXCJTVC5NMS5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXV0sdFsxM109W0FbXCJTVC5NMS5MRUFERVJcIl1dLHRbMTRdPVtBW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXV0sdFsxNV09W0FbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXV0sdFsxNl09W0FbXCJTVC5NMS5XSUxMSU5HIFJFQ1JVSVRcIl1dLHRbMTddPVtBW1wiU1QuTTEuUkVMSUdJT1VTXCJdXSx0WzE4XT1bQVtcIlNULk0xLlRBUkdFVEVEXCJdXSx0WzE5XT1bQVtcIlNULk0xLlRFUlJPUklTVFwiXV0sdFsyMF09W0FbXCJTVC5NMS5TUEVBS0VSXCJdXSx0WzIxXT1bQVtcIlNULk0xLkFDQ0lERU5UXCJdXSx0WzIyXT1bQVtcIlNULk0xLkNPTUJBVFwiXV0sdFsyM109W0FbXCJTVC5NMS5PVEhFUlwiXV0sdFsyNF09W0FbXCJTVC5NMS5MT09UXCJdXSx0WzI1XT1bQVtcIkdSLk0xLkhJSkFDS0VSXCJdXSx0WzI2XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNULk0yLkxFQURFUiBPUiBMRUFERVJTSElQXCJdXSxFW1wiMDJcIl09W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxfPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe2lmKFwiMTVcIj09ZSl7SVsxMWU0XT1bQVtcIkdSLkVRLldFQVBPTlwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuRVEuUklGTEVcIl1dLElbMTEwMTAxXT1bQVtcIkdSLkVRLlJJRkxFXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTAxMDJdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTAxMDNdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwMjAwXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdXSxJWzExMDIwMV09W0FbXCJHUi5FUS5NQUNISU5FIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwMjAyXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwMjAzXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDMwMF09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJWzExMDMwMV09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSldLElbMTEwMzAyXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSldLElbMTEwMzAzXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMDQwMF09W0FbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJWzExMDUwMF09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl1dLElbMTEwNTAxXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwNTAyXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMDUwM109W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwNjAwXT1bQVtcIkdSLkVRLkFOVElUQU5LIEdVTlwiXV0sSVsxMTA2MDFdPVtBW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTA2MDJdPVtBW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwNjAzXT1bQVtcIkdSLkVRLkFOVElUQU5LIEdVTlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTA3MDBdPVtBW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdXSxJWzExMDcwMV09W0FbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJWzExMDcwMl09W0FbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTA3MDNdPVtBW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDgwMF09W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXV0sSVsxMTA4MDFdPVtBW1wiR1IuRVEuUkVDT0lMTEVTUyBHVU5cIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJWzExMDgwMl09W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMDgwM109W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTA5MDBdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl1dLElbMTEwOTAxXT1bQVtcIkdSLkVRLkhPV0lUWkVSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTA5MDJdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTA5MDNdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExZTNdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVsxMTEwMDFdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMDAyXT1bQVtcIkdSLkVRLk1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEwMDNdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTExMDBdPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXV0sSVsxMTExMDFdPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMTAyXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdLEFbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl1dLElbMTExMTAzXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdLEFbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdXSxJWzExMTEwNF09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTExMTA1XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSxBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJWzExMTEwNl09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0sQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEVMQVJcIl1dLElbMTExMTA3XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExMTA4XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0sQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVExBUlwiXV0sSVsxMTExMDldPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXSxBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVsxMTEyMDBdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVsxMTEyMDFdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMjAyXT1bQVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEyMDNdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTEzMDBdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl1dLElbMTExMzAxXT1bQVtcIkdSLkVRLlNVUkZBQ0UtVE8tU1VSRkFDRSBNSVNTSUxFIExBVU5DSEVSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTEzMDJdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEzMDNdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExNDAwXT1bQVtcIkdSLkVRLk1PUlRBUlwiXV0sSVsxMTE0MDFdPVtBW1wiR1IuRVEuTU9SVEFSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTE0MDJdPVtBW1wiR1IuRVEuTU9SVEFSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTExNDAzXT1bQVtcIkdSLkVRLk1PUlRBUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTE1MDBdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVsxMTE1MDFdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExNTAyXT1bQVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTE1MDNdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTE2MDBdPVtBW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJWzExMTYwMV09W0FbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdKV0sSVsxMTE2MDJdPVtBW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDEwLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0pXSxJWzExMTYwM109W0FbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMTcwMF09W0FbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl1dLElbMTExNzAxXT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExNzAyXT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMTcwM109W0FbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExODAwXT1bQVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdXSxJWzExMTkwMF09W0FbXCJHUi5FUS5UQVNFUlwiXV0sSVsxMTJlM109W0FbXCJHUi5FUS5XQVRFUiBDQU5OT05cIl1dLElbMTJlNF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXV0sSVsxMjAxMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLkFSTU9VUkVEIFZFSElDTEVcIl1dLElbMTIwMTAxXT1bQVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEVcIl1dLElbMTIwMTAyXT1bQVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVsxMjAxMDNdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl1dLElbMTIwMTA0XT1bQVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLEFbXCJHUi5FUS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbMTIwMTA1XT1bQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjAxMDZdPVtBW1wiR1IuSUMuQVJNT1VSXCJdLEFbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbMTIwMTA3XT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuRVEuTUVESUNBTCBFVkFDVUFUSU9OXCJdXSxJWzEyMDEwOF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxBW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJWzEyMDEwOV09W0FbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxBW1wiR1IuRVEuQ09NQkFUIFNFUlZJQ0UgU1VQUE9SVCBWRUhJQ0xFXCJdXSxJWzEyMDExMF09W0FbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJWzEyMDExMV09W0FbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRSBFUVVQSU1FTlRcIl1dLElbMTIwMjAwXT1bQVtcIkdSLkVRLlRBTktcIl1dLElbMTIwMjAxXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLkxJR0hUIFRBTktcIl1dLElbMTIwMjAyXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdXSxJWzEyMDIwM109W0FbXCJHUi5FUS5UQU5LXCJdLEFbXCJHUi5FUS5IRUFWWSBUQU5LXCJdXSxJWzEyMDMwMF09W0FbXCJHUi5FUS5UQU5LXCJdLEFbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbMTIwMzAxXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLkxJR0hUIFRBTktcIl0sQVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVsxMjAzMDJdPVtBW1wiR1IuRVEuVEFOS1wiXSxBW1wiR1IuRVEuTUVESVVNIFRBTktcIl0sQVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVsxMjAzMDNdPVtBW1wiR1IuRVEuVEFOS1wiXSxBW1wiR1IuRVEuSEVBVlkgVEFOS1wiXSxBW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJWzEzZTRdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0scy5fc2NhbGUoLjcsQVtcIkdSLklDLkVOR0lORUVSXCJdKV0sSVsxMzAxMDBdPVtBW1wiR1IuSU4uSUMuQlJJREdFXCJdXSxJWzEzMDIwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0scy5fc2NhbGUoLjgsQVtcIkdSLklOLklDLkJSSURHRVwiXSldLElbMTMwMzAwXT1bQVtcIkdSLklOLklDLkJSSURHRVwiXSxBW1wiR1IuRVEuRklYRUQgQlJJREdFXCJdXSxJWzEzMDQwMF09W0FbXCJHUi5JTi5JQy5CUklER0VcIl0sQVtcIkdSLk0yLlJJVkVSSU5FXCJdXSxJWzEzMDUwMF09W0FbXCJHUi5JTi5JQy5CUklER0VcIl0sQVtcIkdSLkVRLkZPTERJTkcgR0lSREVSIEJSSURHRVwiXV0sSVsxMzA2MDBdPVtBW1wiR1IuSU4uSUMuQlJJREdFXCJdLEFbXCJHUi5FUS5IT0xMT1cgREVDSyBCUklER0VcIl1dLElbMTMwNzAwXT1bQVtcIkdSLklDLkRSSUxMSU5HXCJdXSxJWzEzMDcwMV09W3MuX3NjYWxlKC43LEFbXCJHUi5JQy5EUklMTElOR1wiXSksQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXV0sSVsxMzA4MDBdPVtBW1wiR1IuRVEuRUFSVEhNT1ZFUlwiXV0sSVsxMzA4MDFdPVtBW1wiR1IuRVEuTVVMVElGVU5DVElPTkFMIEVBUlRITU9WRVIvRElHR0VSXCJdXSxJWzEzMDkwMF09W0FbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXV0sSVsxMzA5MDFdPVtBW1wiR1IuRVEuTUlORSBDTEVBUklORyBFUVVJUE1FTlRcIl0scy5fdHJhbnNsYXRlKDAsLTEwLEFbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0pXSxJWzEzMDkwMl09W0FbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxBW1wiR1IuRVEuVEFOS1wiXV0sSVsxMzA5MDNdPVtBW1wiR1IuRVEuQVNTQVVMVCBCUkVBQ0hFUiBWRUhJQ0xFIChBQlYpIFdJVEggQ09NQkFUIERPWkVSIEJMQURFXCJdXSxJWzEzMDkwNF09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl0sQVtcIkdSLklDLkVOR0lORUVSIFVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuTTIuTUVESVVNXCJdXSxJWzEzMDkwNV09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl0sQVtcIkdSLklDLkVOR0lORUVSIFVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuTTIuSEVBVllcIl1dLElbMTMxZTNdPVtBW1wiR1IuSUMuTUlORSBMQVlJTkdcIl1dLElbMTMxMDAxXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxzLl90cmFuc2xhdGUoMCwxMCxzLl9zY2FsZSguNyxBW1wiR1IuSUMuTUlORSBMQVlJTkdcIl0pKV0sSVsxMzEwMDJdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sQVtcIkdSLkVRLkFSTU9SRUQgQ0FSUklFUiBXSVRIIFZPTENBTk9cIl1dLElbMTMxMDAzXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdLEFbXCJHUi5FUS5BUk1PUkVEIENBUlJJRVIgV0lUSCBWT0xDQU5PXCJdXSxJWzEzMTEwMF09W0FbXCJHUi5FUS5ET1pFUlwiXV0sSVsxMzExMDFdPVtBW1wiR1IuRVEuRE9aRVIgQVJNT1JFRFwiXV0sSVsxMzEyMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0scy5fc2NhbGUoLjYsQVtcIkdSLklDLkVOR0lORUVSXCJdKV0sSVsxMzEzMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0scy5fc2NhbGUoLjYsQVtcIkdSLklDLkVOR0lORUVSXCJdKSxBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVIgRU5HSU5FRVIgUkVDT04gVkVISUNMRVwiXV0sSVsxMzE0MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBCQUNLSE9FXCJdXSxJWzEzMTUwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSxzLl9zY2FsZSguNixBW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJWzEzMTYwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNST1NTLUNPVU5UUllcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBGRVJSWSBUUkFOU1BPUlRFUlwiXV0sSVsxNGU0XT1bXSxJWzE0MDEwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl1dLElbMTQwMjAwXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuTUVESUNBTCBWRUhJQ0xFXCJdXSxJWzE0MDMwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVsxNDA0MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5NT0JJTEUgRU1FUkdFTkNZIFBIWVNJQ0lBTlwiXV0sSVsxNDA1MDBdPVtBW1wiR1IuRVEuQlVTXCJdXSxJWzE0MDYwMF09W0FbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl1dLElbMTQwNjAxXT1bQVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIExJR0hUXCJdXSxJWzE0MDYwMl09W0FbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBNRURJVU1cIl1dLElbMTQwNjAzXT1bQVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIEhFQVZZXCJdXSxJWzE0MDcwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXV0sSVsxNDA4MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJWzE0MDkwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0scy5fc2NhbGUoLjgsQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXSldLElbMTQxZTNdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLHMuX3NjYWxlKC43LEFbXCJHUi5JQy5XQVRFUlwiXSldLElbMTQxMTAwXT1bQVtcIkdSLkVRLldBVEVSIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXV0sSVsxNDEyMDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLXCJdXSxJWzE0MTIwMV09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0suTElHSFRcIl1dLElbMTQxMjAyXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5IRUFWWVwiXV0sSVsxNWU0XT1bXSxJWzE1MDEwMF09W0FbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdXSxJWzE1MDIwMF09W0FbXCJHUi5FUS5SQUlMQ0FSXCJdXSxJWzE2ZTRdPVtdLElbMTYwMTAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXV0sSVsxNjAxMDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDEwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdXSxJWzE2MDEwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl1dLElbMTYwMjAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl1dLElbMTYwMjAxXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl1dLElbMTYwMjAyXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdXSxJWzE2MDIwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJWzE2MDMwMF09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdXSxJWzE2MDMwMV09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDMwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVsxNjAzMDNdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVsxNjA0MDBdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl1dLElbMTYwNDAxXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDQwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbMTYwNDAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJWzE2MDUwMF09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdXSxJWzE2MDUwMV09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDUwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVsxNjA1MDNdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVsxNjA2MDBdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA2MDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA2MDJdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwNjAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwNzAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA3MDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJWzE2MDcwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJWzE2MDcwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwODAwXT1bQVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJWzE2MDkwMF09W0FbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXSxBW1wiU1QuTTEuRFJVR1wiXV0sSVsxN2U0XT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxNzAxMDBdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzE3MDIwMF09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzE3MDMwMF09W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTcwNDAwXT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzE3MDUwMF09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTcwNjAwXT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTcwNzAwXT1bQVtcIkdSLklDLk1JTElUQVJZIFBPTElDRVwiXV0sSVsxNzA4MDBdPVtBW1wiR1IuSUMuVU5JVEVEIFNUQVRFUyBTRUNSRVQgU0VSVklDRShUUkVBUykgKFVTU1MpXCJdXSxJWzE3MDkwMF09W0FbXCJHUi5JQy5UUkFOU1BPUlRBVElPTiBTRUNVUklUWSBBR0VOQ1kgKFRTQSlcIl1dLElbMTcxZTNdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxNzExMDBdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxOGU0XT1bQVtcIkdSLkVRLlBBQ0sgQU5JTUFMXCJdXSxJWzE5ZTRdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgU1VQUE9SVFwiXV0sSVsxOTAxMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgVFJBTlNMT0FERVJcIl1dLElbMTkwMjAwXT1bQVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEFbXCJHUi5FUS5NSVNTSUxFIFRSQU5TUE9SVEVSXCJdXSxJWzE5MDMwMF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxBW1wiR1IuRVEuTUlTU0lMRSBDUkFORS9MT0FESU5HIERFVklDRVwiXV0sSVsxOTA0MDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgUFJPUEVMTEFOVCBUUkFOU1BPUlRFUlwiXV0sSVsxOTA1MDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgV0FSSEVBRCBUUkFOU1BPUlRFUlwiXV0sSVsyZTVdPVtdLElbMjAwMTAwXT1bQVtcIkdSLklDLkZGLkJST0FEQ0FTVCBUUkFOU01JVFRFUiBBTlRFTk5BXCJdXSxJWzIwMDIwMF09W0FbXCJTVC5JQy5CT01CXCJdXSxJWzIwMDMwMF09W0FbXCJTVC5JQy5CT09CWSBUUkFQXCJdXSxJWzIwMDQwMF09W0FbXCJHUi5FUS5DQlJOIEVRVUlQTUVOVFwiXV0sSVsyMDA1MDBdPVtBW1wiR1IuRVEuQ09NUFVURVIgU1lTVEVNXCJdXSxJWzIwMDYwMF09W0FbXCJHUi5FUS5DT01NQU5EIExBVU5DSCBFUVVJUE1FTlQgKENMRSlcIl1dLElbMjAwNzAwXT1bQVtcIkdSLkVRLkdFTkVSQVRPUiBTRVRcIl1dLElbMjAwODAwXT1bQVtcIkdSLkVRLkdST1VORC1CQVNFRCBNSURDT1VSU0UgREVGRU5TRSAoR01EKSBGSVJFIENPTlRST0wgKEdGQykgQ0VOVEVSXCJdXSxJWzIwMDkwMF09W0FbXCJHUi5FUS5JTi1GTElHSFQgSU5URVJDRVBUT1IgQ09NTVVOSUNBVElPTlMgU1lTVEVNIChJRklDUykgREFUQSBURVJNSU5BTCAoSURUKVwiXV0sSVsyMDFlM109W0FbXCJHUi5FUS5MQVNFUlwiXV0sSVsyMDExMDBdPVtBW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXV0sSVsyMDEyMDBdPVtBW1wiR1IuSUMuU1VTVEFJTk1FTlRcIl1dLElbMjAxMzAwXT1bQVtcIkdSLkVRLlRFTlRcIl1dLElbMjAxMzAxXT1bQVtcIkdSLkVRLlRFTlQgQ0lWSUxJQU5cIl1dLElbMjAxMzAyXT1bQVtcIkdSLkVRLlRFTlQgTUlMSVRBUllcIl1dLElbMjAxNDAwXT1bQVtcIkdSLkVRLlVOSVQgREVQTE9ZTUVOVCBTSElQTUVOVFNcIl1dLElbMjAxNTAwXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsyMDE1MDFdPVtBW1wiR1IuSUMuTUVESUNBTCBFVkFDVUFUSU9OIEhFTElDT1BURVJcIl1dLElbMjFlNF09W10sSVsyMTAxMDBdPVtBW1wiR1IuRVEuTEFORCBNSU5FXCJdXSxJWzIxMDIwMF09W0FbXCJHUi5FUS5BTlRJUEVSU09OTkVMIExBTkQgTUlORVwiXV0sSVsyMTAzMDBdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlORVwiXV0sSVsyMTA0MDBdPVtBW1wiR1IuRVEuSU1QUk9WSVNFRCBFWFBMT1NJVkUgREVWSUNFXCJdXSxJWzIxMDUwMF09W0FbXCJHUi5FUS5BTlRJUEVSU09OTkVMIExBTkQgTUlORSBMRVNTIFRIQU4gTEVUSEFMXCJdXSxJWzIyZTRdPVtdLElbMjIwMTAwXT1bQVtcIkdSLkVRLlNFTlNPUlwiXV0sSVsyMjAyMDBdPVtBW1wiR1IuRVEuU0VOU09SIEVNUExBQ0VEXCJdXSxJWzIyMDMwMF09W0FbXCJHUi5FUS5SQURBUlwiXV0sSVsyM2U0XT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMjMwMTAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5NMS5NRURFVkFDXCJdXSxJWzIzMDIwMF09W0FbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl1dLElbMjRlNF09W0FbXCJHUi5JQy5NQU5VQUwgVFJBQ0tcIl1dLElbMjVlNF09W0FbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sdFtcIjAxXCJdPVtBW1wiR1IuTTEuQklPTE9HSUNBTFwiXV0sdFtcIjAyXCJdPVtBW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLHRbXCIwM1wiXT1bQVtcIkdSLk0xLkVBUkxZIFdBUk5JTkcgUkFEQVJcIl1dLHRbXCIwNFwiXT1bQVtcIkdSLk0xLklOVFJVU0lPTlwiXV0sdFtcIjA1XCJdPVtBW1wiR1IuTTEuTlVDTEVBUlwiXV0sdFtcIjA2XCJdPVtBW1wiR1IuTTEuUkFESU9MT0dJQ0FMXCJdXSx0W1wiMDdcIl09W0FbXCJHUi5NMS5VUEdSQURFRCBFQVJMWSBXQVJOSU5HIFJBREFSXCJdXSx0W1wiMDhcIl09W0FbXCJHUi5NMS5ISUpBQ0tJTkdcIl1dLHRbXCIwOVwiXT1bQVtcIkdSLk0xLkNJVklMSUFOXCJdXSx0WzEwXT1bQVtcIkdSLk0xLlRJTFQtUk9UT1JcIl1dLHRbMTFdPVtdLHRbMTJdPVtBW1wiR1IuTTEuTVVMVEktUFVSUE9TRSBCTEFERVwiXV0sdFsxM109W0FbXCJHUi5NMS5UQU5LLVdJRFRIIE1JTkUgUExPV1wiXV0sdFsxNF09W0FbXCJHUi5NMS5CUklER0lOR1wiXV0sdFsxNV09W0FbXCJHUi5NMS5DWUJFUlNQQUNFXCJdXSx0WzE2XT1bQVtcIkdSLk0xLkFSTU9SRURcIl1dLHRbMTddPVtBW1wiR1IuTTEuQVRUQUNLXCJdXSx0WzE4XT1bQVtcIkdSLk0xLkNBUkdPXCJdXSx0WzE5XT1bQVtcIkdSLk0xLk1BSU5URU5BTkNFXCJdXSx0WzIwXT1bQVtcIkdSLk0xLk1FREVWQUNcIl1dLHRbMjFdPVtBW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdXSx0WzIyXT1bQVtcIkdSLk0xLlVUSUxJVFlcIl1dLHRbMjNdPVtBW1wiR1IuTTEuV0FURVJcIl1dLHRbMjRdPVtBW1wiR1IuTTEuUk9CT1RJQ1wiXV0sRVtcIjAxXCJdPVtBW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuTElHSFRcIl1dLEVbXCIwM1wiXT1bQVtcIkdSLk0yLk1FRElVTVwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuUkFJTFJPQURcIl1dLEVbXCIwNVwiXT1bQVtcIkdSLk0yLlRSQUNLRURcIl1dLEVbXCIwNlwiXT1bQVtcIkdSLk0yLlRSQUNUT1IgVFJBSUxFUlwiXV0sRVtcIjA3XCJdPVtBW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdXSxFW1wiMDhcIl09W0FbXCJHUi5NMi5XSEVFTEVEXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5ST0JPVElDXCJdXTt2YXIgVD17MTFlNDoxNDAsMTEwMTAwOjE0MCwxMTAxMDE6MTQwLDExMDEwMjoxNDAsMTEwMTAzOjE0MCwxMTAyMDA6MTQwLDExMDIwMToxNDAsMTEwMjAyOjE0MCwxMTAyMDM6MTQwLDExMDMwMDoxNDAsMTEwMzAxOjE0MCwxMTAzMDI6MTQwLDExMDMwMzoxNDAsMTEwNDAwOjEzNSwxMTA1MDA6MTQwLDExMDUwMToxNDAsMTEwNTAyOjE0MCwxMTA1MDM6MTQwLDExMDYwMDoxNDAsMTEwNjAxOjE0MCwxMTA2MDI6MTQwLDExMDYwMzoxNDAsMTEwNzAwOjE0MCwxMTA3MDE6MTQwLDExMDcwMjoxNDAsMTEwNzAzOjE0MCwxMTA4MDA6MTQwLDExMDgwMToxNDAsMTEwODAyOjE0MCwxMTA4MDM6MTQwLDExMDkwMDoxNDAsMTEwOTAxOjE0MCwxMTA5MDI6MTQwLDExMDkwMzoxNDAsMTExZTM6MTQwLDExMTAwMToxNDAsMTExMDAyOjE0MCwxMTEwMDM6MTQwLDExMTEwMDoxNDAsMTExMTAxOjE0MCwxMTExMDI6MTQwLDExMTEwMzoxNDAsMTExMTA0OjE0MCwxMTExMDU6MTQwLDExMTEwNjoxNDAsMTExMTA3OjE0MCwxMTExMDg6MTQwLDExMTEwOToxNDAsMTExMjAwOjE0MCwxMTEyMDE6MTQwLDExMTIwMjoxNDAsMTExMjAzOjE0MCwxMTEzMDA6MTQwLDExMTMwMToxNDAsMTExMzAyOjE0MCwxMTEzMDM6MTQwLDExMTQwMDoxNDAsMTExNDAxOjE0MCwxMTE0MDI6MTQwLDExMTQwMzoxNDAsMTExNTAwOjE0MCwxMTE1MDE6MTQwLDExMTUwMjoxNDAsMTExNTAzOjE0MCwxMTE2MDA6MTQwLDExMTYwMToxNDAsMTExNjAyOjE0MCwxMTE2MDM6MTQwLDExMTcwMToxNDAsMTExNzAyOjE0MCwxMTE3MDM6MTQwLDExMTgwMDoxNDAsMTExOTAwOjE0MCwxMTJlMzoxNDAsMTJlNDoxMjksMTIwMTAwOjEyOSwxMjAxMDE6MTMwLDEyMDEwMjoxMzAsMTIwMTAzOjEzMCwxMjAxMDQ6MTMwLDEyMDEwNToxMjAsMTIwMTA2OjEyMCwxMjAxMDc6MTIwLDEyMDEwODoxMzAsMTIwMTA5OjEzMCwxMjAxMTA6MTQwLDEyMDIwMDoxMzAsMTIwMjAxOjEzMCwxMjAyMDI6MTMwLDEyMDIwMzoxMzAsMTIwMzAwOjEzMCwxMjAzMDE6MTMwLDEyMDMwMjoxMzAsMTIwMzAzOjEzMCwxM2U0OjEyOSwxMzAxMDA6MTE1LDEzMDIwMDoxMzAsMTMwMzAwOjEzMCwxMzA0MDA6MTM1LDEzMDUwMDoxMjAsMTMwNjAwOjEyMCwxMzA3MDA6MTIwLDEzMDcwMToxMzAsMTMwODAwOjEzMCwxMzA4MDE6MTMwLDEzMDkwMDoxMjAsMTMwOTAxOjEzMCwxMzA5MDI6MTMwLDEzMWUzOjExNSwxMzEwMDE6MTMwLDEzMTAwMjoxMzAsMTMxMDAzOjE0MCwxMzExMDA6MTMwLDEzMTEwMToxMzAsMTMxMjAwOjEzMCwxMzEzMDA6MTMwLDEzMTQwMDoxNDAsMTMxNTAwOjE0MCwxMzE2MDA6MTQwLDE0MDEwMDoxMzAsMTQwMjAwOjEzMCwxNDAzMDA6MTMwLDE0MDQwMDoxMzAsMTQwNTAwOjEzMCwxNDA2MDA6MTQwLDE0MDYwMToxNDAsMTQwNjAyOjE0MCwxNDA2MDM6MTQwLDE0MDcwMDoxNDAsMTQwODAwOjE0MCwxNDA5MDA6MTMwLDE0MWUzOjEzMCwxNDExMDA6MTQwLDE0MTIwMDoxMzAsMTQxMjAxOjEzMCwxNDEyMDI6MTMwLDE1MDEwMDoxMzAsMTUwMjAwOjE0MCwxNjAxMDA6MTMyLjUsMTYwMTAxOjEzMi41LDE2MDEwMjoxMzIuNSwxNjAxMDM6MTMyLjUsMTYwMjAwOjEzMi41LDE2MDIwMToxMzIuNSwxNjAyMDI6MTMyLjUsMTYwMjAzOjEzMi41LDE2MDMwMDoxMzIuNSwxNjAzMDE6MTMyLjUsMTYwMzAyOjEzMi41LDE2MDMwMzoxMzIuNSwxNjA0MDA6MTMyLjUsMTYwNDAxOjEzMi41LDE2MDQwMjoxMzIuNSwxNjA0MDM6MTMyLjUsMTYwNTAwOjEzMi41LDE2MDUwMToxMzIuNSwxNjA1MDI6MTMyLjUsMTYwNTAzOjEzMi41LDE2MDYwMDoxMzIuNSwxNjA2MDE6MTMyLjUsMTYwNjAyOjEzMi41LDE2MDYwMzoxMzIuNSwxNjA3MDA6MTMyLjUsMTYwNzAxOjEzMi41LDE2MDcwMjoxMzIuNSwxNjA3MDM6MTMyLjUsMTYwODAwOjExNSwxNjA5MDA6MTE1LDE3ZTQ6MTQ5LjAzMTI1LDE3MDEwMDoxMTguNzUsMTcwMjAwOjEzMy4yMTg3NSwxNzAzMDA6MTM1LjIxODc1LDE3MDQwMDoxMTguNzUsMTcwNTAwOjEzOC4xODc1LDE3MDYwMDoxMTguNzUsMTcwNzAwOjExOC43NSwxNzA4MDA6MTE4LDE3MDkwMDoxMTgsMTcxZTM6MTM1LDE3MTEwMDoxMzUsMThlNDoxMjUsMTllNDoxMjksMTkwMTAwOjEyOSwxOTAyMDA6MTI5LDE5MDMwMDoxMjksMTkwNDAwOjEyOSwxOTA1MDA6MTI5LDIwMDEwMDoxNDAsMjAwMjAwOjExOC43NSwyMDAzMDA6MTIwLDIwMDQwMDoxNDAsMjAwNTAwOjEzMiwyMDA2MDA6MTE4Ljc1LDIwMDcwMDoxMTguNzUsMjAwODAwOjExOC43NSwyMDA5MDA6MTE5LjM2MjIyODM5MzU1NDY5LDIwMWUzOjE0NSwyMDExMDA6MTIwLDIwMTIwMDoxMTgsMjAxMzAwOjEyNC4zNjIyMjA3NjQxNjAxNiwyMDEzMDE6MTIwLDIwMTMwMjoxMjAsMjAxNDAwOjExOC43NSwyMDE1MDA6MTQwLDIwMTUwMToxMTUsMjEwMTAwOjEyMiwyMTAyMDA6MTIyLDIxMDMwMDoxMjIsMjEwNDAwOjExOC43NSwyMTA1MDA6MTIyLDIyMDEwMDoxNDAsMjIwMjAwOjEzNiwyMjAzMDA6MTIwLDIzZTQ6MTM1LDIzMDEwMDoxMzIuNSwyMzAyMDA6MTIwLDI0ZTQ6MTE4Ljc1fTtmb3IodmFyIFMgaW4gVClULmhhc093blByb3BlcnR5KFMpJiYoUltTXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOlRbU119KX19fSxKPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMjBcIj09ZSYmKElbMTFlNF09W0FbXCJHUi5JQy5NSUxJVEFSWVwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuSU4uSUMuQUlSQ1JBRlQgUFJPRFVDVElPTiAmIEFTU0VNQkxZXCJdXSxJWzExMDIwMF09W3MuX3NjYWxlKDEuNCxBW1wiR1IuSUMuRkYuQ0xBU1MgVlwiXSldLElbMTEwMzAwXT1bQVtcIkdSLklDLkZGLkNMQVNTIFZcIl0sQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sSVsxMTA0MDBdPVtBW1wiR1IuRVEuVEFOS1wiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuQkxBQ0sgTElTVCBMT0NBVElPTlwiXV0sSVsxMTA2MDBdPVtBW1wiR1IuSUMuQ0JSTlwiXV0sSVsxMTA3MDBdPVtBW1wiR1IuRVEuRE9aRVJcIl1dLElbMTEwNzAxXT1bQVtcIkdSLklOLklDLkJSSURHRVwiXV0sSVsxMTA4MDBdPVtBW1wiR1IuSUMuRVFVSVBNRU5UIE1BTlVGQUNUVVJFXCJdXSxJWzExMDkwMF09W0FbXCJHUi5JLkdPVkVSTk1FTlRcIl1dLElbMTExZTNdPVtBW1wiU1QuSUMuR1JBWSBMSVNUIExPQ0FUSU9OXCJdXSxJWzExMTEwMF09W0FbXCJTVC5JQy5NQVNTIEdSQVZFIExPQ0FUSU9OXCJdXSxJWzExMTIwMF09W0FbXCJHUi5JTi5JQy5NSUxJVEFSWS9DSVZJTElBTi5NQVRFUklFTFwiXSxBW1wiR1IuSUMuRkYuU1VQUExZXCJdXSxJWzExMTMwMF09W0FbXCJHUi5JTi5JQy5NSU5FXCJdXSxJWzExMTQwMF09W0FbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdXSxJWzExMTUwMF09W3MuX3NjYWxlKC44LEFbXCJBQy5JQy5SQURJT0FDVElWRSBNQVRFUklBTFwiXSldLElbMTExNjAwXT1bQVtcIkdSLklOLklDLk1JTElUQVJZL0NJVklMSUFOLlBSSU5URUQgTUVESUFcIl1dLElbMTExNzAwXT1bQVtcIlNULklDLlNBRkUgSE9VU0VcIl1dLElbMTExODAwXT1bQVtcIlNULklDLldISVRFIExJU1QgTE9DQVRJT05cIl1dLElbMTExOTAwXT1bQVtcIkdSLkVRLlRFTlRcIl1dLElbMTExOTAxXT1bQVtcIkdSLkVRLlRFTlRcIl0sQVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdXSxJWzExMTkwMl09W0FbXCJHUi5FUS5URU5UXCJdLEFbXCJHUi5NMS5UUkFJTklORyBDQU1QXCJdXSxJWzExMmUzXT1bQVtcIkdSLklOLklDLklORFVTVFJJQUwgU0lURVwiXSxBW1wiR1IuSU4uSUMuV0FSRUhPVVNFL1NUT1JBR0UgRkFDSUxJVFlcIl1dLElbMTEyMTAwXT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMTIxMDFdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzExMjEwMl09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzExMjEwM109W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTEyMTA0XT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzExMjEwNV09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTEyMTA2XT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTEyMTA3XT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMTIxMDhdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzExMjEwOV09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMTEyMTEwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXV0sSVsxMTIxMTFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxMTIxMTJdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxMTIyMDBdPVtBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXV0sSVsxMTIyMDFdPVtBW1wiR1IuSUMuRklSRSBQUk9URUNUSU9OXCJdXSxJWzExMjIwMl09W0FbXCJHUi5JQy5FTUVSR0VOQ1kgTUVESUNBTCBPUEVSQVRJT05cIl1dLElbMTJlNF09W10sSVsxMjAxMDBdPVtBW1wiR1IuSU4uSUMuQUdSSUNVTFRVUkUgQU5EIEZPT0QgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMTAxXT1bQVtcIkdSLklOLklDLkFHUklDVUxUVVJBTCBMQUJPUkFUT1JZXCJdXSxJWzEyMDEwMl09W0FbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXV0sSVsxMjAxMDNdPVtBW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl0sQVtcIkFDLk0xLkNPTU1FUkNJQUxcIl1dLElbMTIwMTA0XT1bQVtcIkdSLklOLklDLkZBUk0vUkFOQ0hcIl1dLElbMTIwMTA1XT1bQVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdXSxJWzEyMDEwNl09W0FbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxBW1wiQUMuTTEuUFJPRFVDVElPTlwiXV0sSVsxMjAxMDddPVtBW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl0sQVtcIkFDLk0xLlJFVEFJTFwiXV0sSVsxMjAxMDhdPVtBW1wiR1IuSU4uSUMuR1JBSU4gU1RPUkFHRVwiXV0sSVsxMjAyMDBdPVtBW1wiQUMuSUMuQkFOS0lORyBGSU5BTkNFIEFORCBJTlNVUkFOQ0UgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMjAxXT1bQVtcIkdSLklOLklDLkFUTVwiXV0sSVsxMjAyMDJdPVtBW1wiR1IuSU4uSUMuQkFOS1wiXV0sSVsxMjAyMDNdPVtBW1wiR1IuSU4uSUMuQlVMTElPTiBTVE9SQUdFXCJdXSxJWzEyMDIwNF09W0FbXCJHUi5JTi5JQy5JTkZSQVNUUlVDVFVSRS5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSAgSU5GUkFTVFJVQ1RVUkUuRUNPTk9NSUMgSU5GUkFTVFJVQ1RVUkUgQVNTRVRcIl1dLElbMTIwMjA1XT1bQVtcIkdSLklOLklDLkZFREVSQUwgUkVTRVJWRSBCQU5LXCJdXSxJWzEyMDIwNl09W0FbXCJHUi5JTi5JQy5GSU5BTkNJQUwgRVhDSEFOR0VcIl1dLElbMTIwMjA3XT1bQVtcIkdSLklOLklDLkZJTkFOQ0lBTCBTRVJWSUNFUywgT1RIRVJcIl1dLElbMTIwMzAwXT1bQVtcIkdSLklOLklDLkNPTU1FUkNJQUwgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMzAxXT1bQVtcIkdSLklOLklDLkNIRU1JQ0FMIFBMQU5UXCJdXSxJWzEyMDMwMl09W0FbXCJHUi5JTi5JQy5GSVJFQVJNUyBNQU5VRkFDVFVSRVJcIl1dLElbMTIwMzAzXT1bQVtcIkdSLklOLklDLkZJUkVBUk1TIFJFVEFJTEVSXCJdXSxJWzEyMDMwNF09W0FbXCJHUi5JTi5JQy5IQVpBUkRPVVMgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVsxMjAzMDVdPVtBW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbMTIwMzA2XT1bQVtcIkdSLklOLklDLklORFVTVFJJQUwgU0lURVwiXV0sSVsxMjAzMDddPVtBW1wiR1IuSU4uSUMuTEFOREZJTExcIl1dLElbMTIwMzA4XT1bQVtcIkdSLklOLklDLlBIQVJNQUNFVVRJQ0FMIE1BTlVGQUNUVVJFUlwiXV0sSVsxMjAzMDldPVtBW1wiR1IuSU4uSUMuQ09OVEFNSU5BVEVEIEhBWkFSRE9VUyBXQVNURSBTSVRFXCJdXSxJWzEyMDMxMF09W0FbXCJHUi5JTi5JQy5UT1hJQyBSRUxFQVNFIElOVkVOVE9SWVwiXV0sSVsxMjA0MDBdPVtBW1wiR1IuSU4uSUMuRURVQ0FUSU9OQUwgRkFDSUxJVElFUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVsxMjA0MDFdPVtBW1wiR1IuSU4uSUMuQ09MTEVHRS9VTklWRVJTSVRZXCJdXSxJWzEyMDQwMl09W0FbXCJHUi5JTi5JQy5TQ0hPT0xcIl1dLElbMTIwNTAwXT1bQVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSXCJdXSxJWzEyMDUwMV09W3MuX3NjYWxlKC42LEFbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSldLElbMTIwNTAyXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjc1LEFbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSkpLEFbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl1dLElbMTIwNTAzXT1bQVtcIkdSLklOLklDLk5BVFVSQUwgR0FTIEZBQ0lMSVRZXCJdXSxJWzEyMDUwNF09W3MuX3NjYWxlKDEuNSxBW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdKV0sSVsxMjA1MDVdPVtBW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdXSxJWzEyMDUwNl09W0FbXCJHUi5JTi5JQy5QUk9QQU5FIEZBQ0lMSVRZXCJdXSxJWzEyMDYwMF09W0FbXCJHUi5JTi5JQy5HT1ZFUk5NRU5UIFNJVEUgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwNzAwXT1bXSxJWzEyMDcwMV09W0FbXCJHUi5JQy5GRi5NRURJQ0FMXCJdXSxJWzEyMDcwMl09W0FbXCJHUi5JQy5GRi5NRURJQ0FMXCJdLEFbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXV0sSVsxMjA4MDBdPVtBW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwODAxXT1bQVtcIkdSLklOLklDLkJBU0VcIl0sQVtcIkFDLk0xLk1JTElUQVJZIEFSTU9SWVwiXV0sSVsxMjA4MDJdPVtBW1wiR1IuSU4uSUMuQkFTRVwiXV0sSVsxMjA5MDBdPVtBW1wiR1IuSU4uSUMuUE9TVEFMIFNFUlZJQ0UgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwOTAxXT1bQVtcIkdSLklOLklDLlBPU1RBTCBESVNUUklCVVRJT04gQ0VOVEVSXCJdXSxJWzEyMDkwMl09W0FbXCJHUi5JTi5JQy5QT1NUIE9GRklDRVwiXV0sSVsxMjFlM109W0FbXCJHUi5JTi5JQy5QVUJMSUMgVkVOVUVTIElORlJBU1RSVUNUVVJFXCJdXSxJWzEyMTAwMV09W0FbXCJHUi5JTi5JQy5FTkNMT1NFRCBGQUNJVExJVFkgKFBVQkxJQyBWRU5VRSlcIl1dLElbMTIxMDAyXT1bQVtcIkdSLklOLklDLk9QRU4gRkFDSUxJVFkgKE9QRU4gVkVOVUUpXCJdXSxJWzEyMTAwM109W0FbXCJHUi5JTi5JQy5SRUNSRUFUSU9OQUwgQVJFQVwiXV0sSVsxMjEwMDRdPVtBW1wiR1IuSU4uSUMuUkVMSUdJT1VTIElOU1RJVFVUSU9OXCJdXSxJWzEyMTEwMF09W0FbXCJHUi5JTi5JQy5TUEVDSUFMIE5FRURTIElORlJBU1RSVUNUVVJFXCJdXSxJWzEyMTEwMV09W0FbXCJHUi5JTi5JQy5BRFVMVCBEQVkgQ0FSRVwiXV0sSVsxMjExMDJdPVtBW1wiR1IuSU4uSUMuQ0hJTEQgREFZIENBUkVcIl1dLElbMTIxMTAzXT1bQVtcIkdSLklOLklDLkVMREVSIENBUkVcIl1dLElbMTIxMjAwXT1bQVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVsxMjEyMDFdPVtBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTIxMjAyXT1bQVtcIkdSLklOLklDLklORlJBU1RSVUNUVVJFLlRFTEVDT01NVU5JQ0FUSU9OUyBJTkZSQVNUUlVDVFVSRS5URUxFQ09NTVVOSUNBVElPTlNcIl1dLElbMTIxMjAzXT1bQVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBUT1dFUlwiXV0sSVsxMjEzMDBdPVtzLl9zY2FsZSgxLjUsQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdKV0sSVsxMjEzMDFdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sQVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl1dLElbMTIxMzAyXT1bQVtcIkdSLklOLklDLkFJUiBUUkFGRklDIENPTlRST0wgRkFDSUxJVFlcIl1dLElbMTIxMzAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl1dLElbMTIxMzA0XT1bQVtcIkdSLklDLkZFUlJZXCJdXSxJWzEyMTMwNV09W0FbXCJHUi5JTi5JQy5IRUxJQ09QVEVSIExBTkRJTkcgU0lURVwiXV0sSVsxMjEzMDZdPVtBW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl1dLElbMTIxMzA3XT1bQVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJWzEyMTMwOF09W0FbXCJHUi5JTi5JQy5SRVNUIFNUT1BcIl1dLElbMTIxMzA5XT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5NMS5OQVZBTFwiXV0sSVsxMjEzMTBdPVtBW1wiR1IuSUMuTkFWQUxcIl0sQVtcIkdSLk0xLllBUkRcIl1dLElbMTIxMzExXT1bQVtcIkdSLklOLklDLlRPTEwgRkFDSUxJVFlcIl1dLElbMTIxMzEyXT1bQVtcIkdSLklOLklDLlRSQUZGSUMgSU5TUEVDVElPTiBGQUNJTElUWVwiXV0sSVsxMjEzMTNdPVtBW1wiR1IuSU4uSUMuVFVOTkVMXCJdXSxJWzEyMTQwMF09W0FbXCJHUi5JQy5XQVRFUlwiXV0sSVsxMjE0MDFdPVtBW1wiR1IuSU4uSUMuQ09OVFJPTCBWQUxWRVwiXV0sSVsxMjE0MDJdPVtBW1wiR1IuSU4uSUMuREFNXCJdXSxJWzEyMTQwM109W0FbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXV0sSVsxMjE0MDRdPVtBW1wiR1IuSU4uSUMuR1JPVU5EIFdBVEVSIFdFTExcIl1dLElbMTIxNDA1XT1bQVtcIkdSLklOLklDLlBVTVBJTkcgU1RBVElPTlwiXV0sSVsxMjE0MDZdPVtBW1wiR1IuSU4uSUMuUkVTRVJWT0lSXCJdXSxJWzEyMTQwN109W0FbXCJHUi5JTi5JQy5TVE9SQUdFIFRPV0VSXCJdXSxJWzEyMTQwOF09W0FbXCJHUi5JTi5JQy5TVVJGQUNFIFdBVEVSIElOVEFLRVwiXV0sSVsxMjE0MDldPVtBW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbMTIxNDEwXT1bQVtcIkdSLklDLldBVEVSXCJdXSxJWzEyMTQxMV09W0FbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLHRbXCIwMVwiXT1bQVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLHRbXCIwMlwiXT1bQVtcIkdSLk0xLkNIRU1JQ0FMXCJdXSx0W1wiMDNcIl09W0FbXCJHUi5NMS5OVUNMRUFSXCJdXSx0W1wiMDRcIl09W0FbXCJHUi5JTi5NMS5SQURJT0xPR0lDQUxcIl1dLHRbXCIwNVwiXT1bQVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sdFtcIjA2XCJdPVtBW1wiR1IuSU4uTTEuQ09BTFwiXV0sdFtcIjA3XCJdPVtBW1wiR1IuSU4uTTEuR0VPVEhFUk1BTFwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuSU4uTTEuSFlEUk9FTEVDVFJJQ1wiXV0sdFtcIjA5XCJdPVtBW1wiR1IuSU4uTTEuTkFUVVJBTCBHQVNcIl1dLHRbMTBdPVtBW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdXSx0WzExXT1bQVtcIkdSLklOLk0xLkNJVklMSUFOXCJdXSx0WzEyXT1bQVtcIkdSLklOLk0xLkNJVklMSUFOIFRFTEVQSE9ORVwiXV0sdFsxM109W0FbXCJHUi5JTi5NMS5DSVZJTElBTiBURUxFVklTSU9OXCJdXSx0WzE0XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLHRbMTVdPVtBW1wiR1IuTTEuSk9JTlQgTkVUV09SSyBOT0RFXCJdXSx0WzE2XT1bQVtcIkdSLk0xLkNPTU1BTkQgUE9TVCBOT0RFXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5JTi5NMi5DSEVNSUNBTCAmIEJJT0xPR0lDQUwgV0FSRkFSRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuSU4uTTIuQ0hFTUlDQUwgV0FSRkFSRSBQUk9EVUNUSU9OXCJdXSxFW1wiMDNcIl09W0FbXCJHUi5JTi5NMi5OVUNMRUFSIFdBUkZBUkUgUFJPRFVDVElPTlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuSU4uTTIuUkFESU9MT0dJQ0FMIFdBUkZBUkUgUFJPRFVDVElPTlwiXV0sRVtcIjA1XCJdPVtBW1wiR1IuSU4uTTIuQVRPTUlDIEVORVJHWSBSRUFDVE9SXCJdXSxFW1wiMDZcIl09W0FbXCJHUi5JTi5NMi5OVUNMRUFSIE1BVEVSSUFMIFBST0RVQ1RJT05cIl1dLEVbXCIwN1wiXT1bQVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgU1RPUkFHRVwiXV0sRVtcIjA4XCJdPVtBW1wiR1IuSU4uTTIuV0VBUE9OUyBHUkFERSBQUk9EVUNUSU9OXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxaPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpkLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMzBcIj09ZSYmKElbMTFlNF09W0FbXCJTRS5JQy5NSUxJVEFSWVwiXV0sSVsxMmU0XT1bQVtcIlNFLklDLkNPTUJBVEFOVFwiXV0sSVsxMjAxMDBdPVtBW1wiU0UuSUMuQ0FSUklFUlwiXV0sSVsxMjAyMDBdPVtBW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl1dLElbMTIwMjAxXT1bQVtcIlNFLklDLkJBVFRMRVNISVBcIl1dLElbMTIwMjAyXT1bQVtcIlNFLklDLkNSVUlTRVIsIEdVSURFRCBNSVNTSUxFXCJdXSxJWzEyMDIwM109W0FbXCJTRS5JQy5ERVNUUk9ZRVJcIl1dLElbMTIwMjA0XT1bQVtcIlNFLklDLkZSSUdBVEVcIl1dLElbMTIwMjA1XT1bQVtcIlNFLklDLkNPUlZFVFRFXCJdXSxJWzEyMDIwNl09W0FbXCJTRS5JQy5MSVRUT1JBTCBDT01CQVRBTlQgU0hJUFwiXV0sSVsxMjAzMDBdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBXQVJGQVJFIFNISVBcIl1dLElbMTIwMzAxXT1bQVtcIlNFLklDLkFNUEhJQklPVVMgRk9SQ0UgRkxBR1NISVBcIl1dLElbMTIwMzAyXT1bQVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVFwiXV0sSVsxMjAzMDNdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBBU1NBVUxUIFNISVAsIEdFTkVSQUxcIl1dLElbMTIwMzA0XT1bQVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVCBTSElQLCBNVUxUSS1QVVJQT1NFXCJdXSxJWzEyMDMwNV09W0FbXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgSEVMSUNPUFRFUlwiXV0sSVsxMjAzMDZdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBUUkFOU1BPUlQsIERPQ0tcIl1dLElbMTIwMzA3XT1bQVtcIlNFLklDLkxBTkRJTkcgU0hJUFwiXV0sSVsxMjAzMDhdPVtBW1wiU0UuSUMuTEFORElORyBDUkFGVFwiXV0sSVsxMjA0MDBdPVtBW1wiU0UuSUMuTUlORSBXQVJGQVJFIFZFU1NFTFwiXV0sSVsxMjA0MDFdPVtBW1wiU0UuSUMuTUlORUxBWUVSXCJdXSxJWzEyMDQwMl09W0FbXCJTRS5JQy5NSU5FU1dFRVBFUlwiXV0sSVsxMjA0MDNdPVtBW1wiU0UuSUMuTUlORVNXRUVQRVIsIERST05FXCJdXSxJWzEyMDQwNF09W0FbXCJTRS5JQy5NSU5FSFVOVEVSXCJdXSxJWzEyMDQwNV09W0FbXCJTRS5JQy5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sSVsxMjA0MDZdPVtBW1wiU0UuSUMuTUlORSBDT1VOVEVSIE1FQVNVUkUgU1VQUE9SVCBTSElQXCJdXSxJWzEyMDUwMF09W0FbXCJTRS5JQy5QQVRST0xcIl1dLElbMTIwNTAxXT1bQVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXV0sSVsxMjA1MDJdPVtBW1wiU0UuSUMuUEFUUk9MIEdVTlwiXV0sSVsxMjA2MDBdPVtBW1wiU0UuSUMuU0VBIFNVUkZBQ0UgREVDT1lcIl1dLElbMTIwNzAwXT1bQVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXV0sSVsxMjA4MDBdPVtBW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FUXCJdXSxJWzEyMDgwMV09W0FbXCJTRS5JQy5NSUxJVEFSWSBTUEVFREJPQVQsIFJJR0lELUhVTEwgSU5GTEFUQUJMRSBCT0FUXCJdXSxJWzEyMDkwMF09W0FbXCJTRS5JQy5NSUxJVEFSWSBKRVRTS0lcIl1dLElbMTIxZTNdPVtBW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdXSxJWzEyMTAwMV09W0FbXCJTRS5JQy5OQVZZIFRBU0sgRUxFTUVOVFwiXV0sSVsxMjEwMDJdPVtBW1wiU0UuSUMuTkFWWSBUQVNLIEZPUkNFXCJdXSxJWzEyMTAwM109W0FbXCJTRS5JQy5OQVZZIFRBU0sgR1JPVVBcIl1dLElbMTIxMDA0XT1bQVtcIlNFLklDLk5BVlkgVEFTSyBVTklUXCJdXSxJWzEyMTAwNV09W0FbXCJTRS5JQy5DT05WT1lcIl1dLElbMTIxMTAwXT1bQVtcIlNFLklDLlJBREFSXCJdXSxJWzEzZTRdPVtBW1wiU0UuSUMuTk9OQ09NQkFUQU5UXCJdXSxJWzEzMDEwMF09W0FbXCJTRS5JQy5BVVhJTElBUlkgU0hJUFwiXV0sSVsxMzAxMDFdPVtBW1wiU0UuSUMuQU1NVU5JVElPTiBTSElQXCJdXSxJWzEzMDEwMl09W0FbXCJTRS5JQy5TVE9SRVMgU0hJUFwiXV0sSVsxMzAxMDNdPVtBW1wiU0UuSUMuQVVYSUxJQVJZIEZMQUcgT1IgQ09NTUFORCBTSElQXCJdXSxJWzEzMDEwNF09W0FbXCJTRS5JQy5JTlRFTExJR0VOQ0UgQ09MTEVDVE9SXCJdXSxJWzEzMDEwNV09W0FbXCJTRS5JQy5PQ0VBTiBSRVNFQVJDSCBTSElQXCJdXSxJWzEzMDEwNl09W0FbXCJTRS5JQy5TVVJWRVkgU0hJUFwiXV0sSVsxMzAxMDddPVtBW1wiU0UuSUMuSE9TUElUQUwgU0hJUDJcIl1dLElbMTMwMTA4XT1bQVtcIlNFLklDLkNBUkdPIFNISVBcIl1dLElbMTMwMTA5XT1bQVtcIlNFLklDLkNPTUJBVCBTVVBQT1JUIFNISVAsIEZBU1RcIl1dLElbMTMwMTEwXT1bQVtcIlNFLklDLk9JTEVSLCBSRVBMRU5JU0hNRU5UXCJdXSxJWzEzMDExMV09W0FbXCJTRS5JQy5SRVBBSVIgU0hJUFwiXV0sSVsxMzAxMTJdPVtBW1wiU0UuSUMuU1VCTUFSSU5FIFRFTkRFUlwiXV0sSVsxMzAxMTNdPVtBW1wiU0UuSUMuVFVHLCBPQ0VBTiBHT0lOR1wiXV0sSVsxMzAyMDBdPVtBW1wiU0UuSUMuU0VSVklDRSBDUkFGVCwgWUFSRCwgR0VORVJBTFwiXV0sSVsxMzAyMDFdPVtBW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sSVsxMzAyMDJdPVtBW1wiU0UuSUMuQkFSR0UsIFNFTEYtUFJPUEVMTEVEXCJdXSxJWzEzMDIwM109W0FbXCJTRS5JQy5UVUcsIEhBUkJPVVJcIl1dLElbMTMwMjA0XT1bQVtcIlNFLklDLkxBVU5DSFwiXV0sSVsxNGU0XT1bQVtcIlNFLklDLkNJVklMSUFOXCJdXSxJWzE0MDEwMF09W0FbXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdXSxJWzE0MDEwMV09W0FbXCJTRS5JQy5DQVJHTywgR0VORVJBTFwiXV0sSVsxNDAxMDJdPVtBW1wiU0UuSUMuQ09OVEFJTkVSIFNISVBcIl1dLElbMTQwMTAzXT1bQVtcIlNFLklDLkRSRURHRVwiXV0sSVsxNDAxMDRdPVtBW1wiU0UuSUMuUk9MTCBPTi1ST0xMIE9GRlwiXV0sSVsxNDAxMDVdPVtBW1wiU0UuSUMuRkVSUllcIl1dLElbMTQwMTA2XT1bQVtcIlNFLklDLkhFQVZZIExJRlRcIl1dLElbMTQwMTA3XT1bQVtcIlNFLklDLkhPVkVSQ1JBRlQgMjUyNURcIl1dLElbMTQwMTA4XT1bQVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIExBU0ggQ0FSUklFUiAoV0lUSCBCQVJHRVMpXCJdXSxJWzE0MDEwOV09W0FbXCJTRS5JQy5PSUxFUi9UQU5LRVJcIl1dLElbMTQwMTEwXT1bQVtcIlNFLklDLlBBU1NFTkdFUiBTSElQXCJdXSxJWzE0MDExMV09W0FbXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HIENJVklMSUFOXCJdXSxJWzE0MDExMl09W0FbXCJTRS5JQy5UT1dcIl1dLElbMTQwMTEzXT1bQVtcIlNFLklDLlRSQU5TUE9SVCBTSElQLCBIQVpBUkRPVVMgTUFURVJJQUxcIl1dLElbMTQwMTE0XT1bQVtcIlNFLklDLkpVTksvREhPV1wiXV0sSVsxNDAxMTVdPVtBW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sSVsxNDAxMTZdPVtBW1wiU0UuSUMuSE9TUElUQUwgU0hJUFwiXV0sSVsxNDAyMDBdPVtBW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl1dLElbMTQwMjAxXT1bQVtcIlNFLklDLkRSSUZURVJcIl1dLElbMTQwMjAyXT1bQVtcIlNFLklDLlRSQVdMRVJcIl1dLElbMTQwMjAzXT1bQVtcIlNFLklDLkZJU0hJTkcgVkVTU0VMIERSRURHRVwiXV0sSVsxNDAzMDBdPVtBW1wiU0UuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxNDA0MDBdPVtBW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdXSxJWzE0MDUwMF09W0FbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl1dLElbMTQwNTAxXT1bQVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgUklHSUQtSFVMTCBJTkZMQVRBQkxFIEJPQVRcIl1dLElbMTQwNTAyXT1bQVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgU1BFRURCT0FUXCJdXSxJWzE0MDYwMF09W0FbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl1dLElbMTQwNzAwXT1bQVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRSAoVVNWKVwiXV0sSVsxNWU0XT1bQVtcIlNFLklDLk9XTiBTSElQXCJdXSxJWzE2ZTRdPVtBW1wiU0UuSUMuRlVTRUQgVFJBQ0tcIl1dLElbMTdlNF09W0FbXCJTRS5JQy5NQU5VQUwgVFJBQ0tcIl1dLHRbXCIwMVwiXT1bQVtcIlNFLk0xLk9XTiBTSElQXCJdXSx0W1wiMDJcIl09W0FbXCJTRS5NMS5BTlRJQUlSIFdBUkZBUkVcIl1dLHRbXCIwM1wiXT1bQVtcIlNFLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFtcIjA0XCJdPVtBW1wiU0UuTTEuRVNDT1JUXCJdXSx0W1wiMDVcIl09W0FbXCJTRS5NMS5FTEVDVFJPTklDIFdBUkZBUkVcIl1dLHRbXCIwNlwiXT1bQVtcIlNFLk0xLklOVEVMTElHRU5DRSwgU1VSVkVJTExBTkNFLCBSRUNPTk5BSVNTQU5DRVwiXV0sdFtcIjA3XCJdPVtBW1wiU0UuTTEuTUlORSBDT1VOVEVSIE1FQVNVUkVTXCJdXSx0W1wiMDhcIl09W0FbXCJTRS5NMS5NSVNTSUxFIERFRkVOU0VcIl1dLHRbXCIwOVwiXT1bQVtcIlNFLk0xLk1FRElDQUxcIl1dLHRbMTBdPVtBW1wiU0UuTTEuTUlORSBXQVJGQVJFXCJdXSx0WzExXT1bQVtcIlNFLk0xLlJFTU9URSBNVUxUSS1NSVNTSU9OIFZFSElITEVcIl1dLHRbMTJdPVtBW1wiU0UuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFXCJdXSx0WzEzXT1bQVtcIlNFLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sdFsxNF09W0FbXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRVwiXV0sdFsxNV09W0FbXCJTRS5NMS5HVUlERUQgTUlTU0lMRVwiXV0sdFsxNl09W0FbXCJTRS5NMS5PVEhFUiBHVUlERUQgTUlTU0lMRVwiXV0sdFsxN109W0FbXCJTRS5NMS5UT1JQRURPXCJdXSx0WzE4XT1bQVtcIlNFLk0xLkRST05FLUVRVUlQUEVEXCJdXSx0WzE5XT1bQVtcIlNFLk0xLkhFTElDT1BURVItRVFVSVBQRURcIl1dLHRbMjBdPVtBW1wiU0UuTTEuQkFMTElTVElDIE1JU1NJTEUgREVGRU5TRSwgU0hPT1RFUlwiXV0sdFsyMV09W0FbXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRSBERUZFTlNFLCBMT05HLSBSQU5HRSBTVVJWRUlMTEFOQ0UgQU5EIFRSQUNLIChMUlMmVClcIl1dLHRbMjJdPVtBW1wiU0UuTTEuU0VBLUJBU0UgWC1CQU5EXCJdXSx0WzIzXT1bQVtcIlNFLk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sdFsyNF09W0FbXCJTRS5NMS5ISUpBQ0tFUlwiXV0sdFsyNV09W0FbXCJTRS5NMS5DWUJFUlNQQUNFXCJdXSxFW1wiMDFcIl09W0FbXCJTRS5NMi5OVUNMRUFSIFBPV0VSRURcIl1dLEVbXCIwMlwiXT1bQVtcIlNFLk0yLkhFQVZZXCJdXSxFW1wiMDNcIl09W0FbXCJTRS5NMi5MSUdIVFwiXV0sRVtcIjA0XCJdPVtBW1wiU0UuTTIuTUVESVVNXCJdXSxFW1wiMDVcIl09W0FbXCJTRS5NMi5ET0NLXCJdXSxFW1wiMDZcIl09W0FbXCJTRS5NMi5MT0dJU1RJQ1NcIl1dLEVbXCIwN1wiXT1bQVtcIlNFLk0yLlRBTktcIl1dLEVbXCIwOFwiXT1bQVtcIlNFLk0yLlZFSElDTEVcIl1dLEVbXCIwOVwiXT1bQVtcIlNFLk0yLkZBU1RcIl1dLEVbMTBdPVtBW1wiU0UuTTIuQUlSLUNVU0hJT05FRCAoVVNBIE9OTFkpXCJdXSxFWzExXT1bQVtcIlNFLk0yLkFJUi1DVVNISU9ORURcIl1dLEVbMTJdPVtBW1wiU0UuTTIuSFlEUk9GT0lMXCJdXSxFWzEzXT1bQVtcIlNFLk0yLkFVVE9OT01PVVMgQ09OVFJPTFwiXV0sRVsxNF09W0FbXCJTRS5NMi5SRU1PVEVMWSBQSUxPVEVEXCJdXSxFWzE1XT1bQVtcIlNFLk0yLkVYUEVOREFCTEVcIl1dLEVbMTZdPVtBW1wiU0UuTTIuQ1lCRVJTUEFDRVwiXV0pfX0scT17dHlwZTpcIm51bWJlclwiLGdldE1ldGFkYXRhOnUsZ2V0SWNvbnM6dixpY29uUGFydHM6RCxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjM1XCI9PWUmJihJWzExZTRdPVtBW1wiU1UuSUMuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIlNVLklDLlNVQk1BUklORVwiXV0sSVsxMTAxMDFdPVtBW1wiU1UuSUMuU1VCTUFSSU5FLCBTVVJGQUNFRFwiXV0sSVsxMTAxMDJdPVtBW1wiU1UuSUMuU1VCTUFSSU5FLCBTTk9SS0VMSU5HXCJdXSxJWzExMDEwM109W0FbXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdXSxJWzExMDIwMF09W0FbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXV0sSVsxMTAzMDBdPVtBW1wiU1UuSUMuTk9OLVNVQk1BUklORVwiXV0sSVsxMTA0MDBdPVtBW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl1dLElbMTEwNTAwXT1bQVtcIlNVLklDLkRJVkVSLCBNSUxJVEFSWVwiXV0sSVsxMmU0XT1bQVtcIlNVLklDLkNJVklMSUFOXCJdXSxJWzEyMDEwMF09W0FbXCJTVS5JQy5TVUJNRVJTSUJMRSwgQ0lWSUxJQU5cIl1dLElbMTIwMjAwXT1bQVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpLCBDSVZJTElBTlwiXV0sSVsxMjAzMDBdPVtBW1wiU1UuSUMuRElWRVIsIENJVklMSUFOXCJdXSxJWzEzZTRdPVtBW1wiU1UuSUMuVU5ERVJXQVRFUiBXRUFQT05cIl1dLElbMTMwMTAwXT1bQVtcIlNVLklDLlRPUlBFRE9cIl1dLElbMTMwMjAwXT1bQVtcIlNVLklDLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRSAoSUVEKVwiXV0sSVsxMzAzMDBdPVtBW1wiU1UuSUMuVU5ERVJXQVRFUiBERUNPWSBEU3ltYm9sXCJdXSxJWzE0ZTRdPVtBW1wiU1UuSUMuRUNITyBUUkFDS0VSIENMQVNTSUZJRVIgKEVUQykvUE9TU0lCTEUgQ09OVEFDVCAoUE9TQ09OKVwiXV0sSVsxNWU0XT1bQVtcIlNVLklDLkZVU0VEIFRSQUNLXCJdXSxJWzE2ZTRdPVtBW1wiU1UuSUMuTUFOVUFMIFRSQUNLXCJdXSxJWzJlNV09W0FbXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTUlMSVRBUllcIl1dLElbMjFlNF09W0FbXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTk9OLU1JTElUQVJZXCJdXSx0W1wiMDFcIl09W0FbXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLHRbXCIwMlwiXT1bQVtcIlNVLk0xLkFVWElMSUFSWVwiXV0sdFtcIjAzXCJdPVtBW1wiU1UuTTEuQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sdFtcIjA0XCJdPVtBW1wiU1UuTTEuSU5URUxMSUdFTkNFLCBTVVJWRUlMTEFOQ0UsIFJFQ09OTkFJU1NBTkNFXCJdXSx0W1wiMDVcIl09W0FbXCJTVS5NMS5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sdFtcIjA2XCJdPVtBW1wiU1UuTTEuTUlORSBXQVJGQVJFXCJdXSx0W1wiMDdcIl09W0FbXCJTVS5NMS5TVVJGQUNFIFdBUkZBUkVcIl1dLHRbXCIwOFwiXT1bQVtcIlNVLk0xLkFUVEFDS1wiXV0sdFtcIjA5XCJdPVtBW1wiU1UuTTEuQkFMTElTVElDIE1JU1NJTEVcIl1dLHRbMTBdPVtBW1wiU1UuTTEuR1VJREVEIE1JU1NJTEVcIl1dLHRbMTFdPVtBW1wiU1UuTTEuT1RIRVIgR1VJREVEIE1JU1NJTEVTIChQT0lOVCBERUZFTkNFKVwiXV0sdFsxMl09W0FbXCJTVS5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VcIl1dLHRbMTNdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDFcIl1dLHRbMTRdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl1dLHRbMTVdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gSElHSCAzXCJdXSx0WzE2XT1bQVtcIlNVLk0xLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggNFwiXV0sdFsxN109W0FbXCJTVS5NMS5QUk9CQUJMRSBTVUJNQVJJTkVcIl1dLHRbMThdPVtBW1wiU1UuTTEuQ0VSVEFJTiBTVUJNQVJJTkVcIl1dLHRbMTldPVtBW1wiU1UuTTEuQU5USS1UT1JQRURPIFRPUlBFRE9cIl1dLHRbMjBdPVtBW1wiU1UuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSx0WzIxXT1bQVtcIlNVLk0xLkhJSkFDS0VSXCJdXSx0WzIyXT1bQVtcIlNVLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNVLk0yLkFJUiBJTkRFUEVOREVOVCBQUk9QVUxTSU9OXCJdXSxFW1wiMDJcIl09W0FbXCJTVS5NMi5ESUVTRUwgUFJPUFVMU0lPTlwiXV0sRVtcIjAzXCJdPVtBW1wiU1UuTTIuRElFU0VMIC0gVFlQRSAxXCJdXSxFW1wiMDRcIl09W0FbXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDJcIl1dLEVbXCIwNVwiXT1bQVtcIlNVLk0yLkRJRVNFTCAtIFRZUEUgM1wiXV0sRVtcIjA2XCJdPVtBW1wiU1UuTTIuTlVDTEVBUiBQT1dFUkVEXCJdXSxFW1wiMDdcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAxXCJdXSxFW1wiMDhcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAyXCJdXSxFW1wiMDlcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAzXCJdXSxFWzEwXT1bQVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDRcIl1dLEVbMTFdPVtBW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgNVwiXV0sRVsxMl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSA2XCJdXSxFWzEzXT1bQVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDdcIl1dLEVbMTRdPVtBW1wiU1UuTTIuQVVUT05PTU9VUyBDT05UUk9MXCJdXSxFWzE1XT1bQVtcIlNVLk0yLlJFTU9URUxZIFBJTE9URURcIl1dLEVbMTZdPVtBW1wiU1UuTTIuRVhQRU5EQUJMRVwiXV0sRVsxN109W0FbXCJTVS5NMi5DWUJFUlNQQUNFXCJdXSl9fSxqPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpELGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMzZcIj09ZSYmKElbMTFlNF09W0FbXCJTVS5JQy5TRUEgTUlORVwiXV0sSVsxMTAxMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgLSBCT1RUT01cIl1dLElbMTEwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIC0gTU9PUkVEXCJdXSxJWzExMDMwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdXSxJWzExMDQwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIFJJU0lOR1wiXV0sSVsxMTA1MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKVwiXV0sSVsxMTA2MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgLSBLSU5HRklTSEVSXCJdXSxJWzExMDcwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIFNNQUxMIE9CSkVDVFwiXV0sSVsxMTA4MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXV0sSVsxMTA4MDFdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXV0sSVsxMTA4MDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIE1PT1JFRFwiXV0sSVsxMTA4MDNdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEZMT0FUSU5HXCJdXSxJWzExMDgwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FIC0gUklTSU5HXCJdXSxJWzExMDkwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXV0sSVsxMTA5MDFdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBCT1RUT01cIl1dLElbMTEwOTAyXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gTU9PUkVEXCJdXSxJWzExMDkwM109W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIEZMT0FUSU5HXCJdXSxJWzExMDkwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIFJJU0lOR1wiXV0sSVsxMTA5MDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKSBORVVUUkFMSVpFRFwiXV0sSVsxMmU0XT1bQVtcIlNVLklDLlVORVhQTE9ERUQgRVhQTE9TSVZFIE9SRE5BTkNFXCJdXSxJWzEzZTRdPVtBW1wiU1UuSUMuU0VBIE1JTkUgREVDT1lcIl1dLElbMTMwMTAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBCT1RUT00vR1JPVU5EXCJdXSxJWzEzMDIwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBERUNPWSwgTU9PUkVEXCJdXSxJWzE0ZTRdPVtdLElbMTQwMTAwXT1bcy5fc2NhbGUoMS4zLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDT1wiXSldLElbMTQwMTAxXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAxXCJdXSldLElbMTQwMTAyXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAyXCJdXSldLElbMTQwMTAzXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSldLElbMTQwMTA0XT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA0XCJdXSldLElbMTQwMTA1XT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA1XCJdXSldLElbMTQwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdXSxJWzE0MDIwMV09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDFcIl1dLElbMTQwMjAyXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMlwiXV0sSVsxNDAyMDNdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBCT1RUT01cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSxJWzE0MDIwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDRcIl1dLElbMTQwMjA1XT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNVwiXV0sSVsxNDAzMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl1dLElbMTQwMzAxXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMVwiXV0sSVsxNDAzMDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAyXCJdXSxJWzE0MDMwM109W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIE1PT1JFRFwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDNcIl1dLElbMTQwMzA0XT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNFwiXV0sSVsxNDAzMDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA1XCJdXSxJWzE0MDQwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdXSxJWzE0MDQwMV09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMVwiXV0sSVsxNDA0MDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDJcIl1dLElbMTQwNDAzXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gRkxPQVRJTkdcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSxJWzE0MDQwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNFwiXV0sSVsxNDA0MDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDVcIl1dLElbMTVlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUNcIl0pXSxJWzE1MDEwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxFQyAtIEJPVFRPTVwiXV0sSVsxNTAyMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBNT09SRURcIl1dLElbMTUwMzAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl1dLElbMTZlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTlwiXSldLElbMTYwMTAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBCT1RUT01cIl1dLElbMTYwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBNT09SRURcIl1dLElbMTYwMzAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBGTE9BVElOR1wiXV0sSVsxN2U0XT1bcy5fc2NhbGUoMS4zLEFbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1JcIl0pXSxJWzE3MDEwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1IgTkVVVFJBTElaRURcIl1dLElbMThlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTUlORSBBTkNIT1JcIl0pXSxJWzE5ZTRdPVtzLl9zY2FsZSgxLjMsQVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUXCJdKV0sSVsxOTAxMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1QgLSBCT1RUT01cIl1dLElbMTkwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gTU9PUkVEXCJdXSxJWzE5MDMwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEZMT0FUSU5HXCJdXSxJWzJlNV09W0FbXCJTVS5JQy5FTlZJUk9OTUVOVEFMIFJFUE9SVCBMT0NBVElPTlwiXV0sSVsyMWU0XT1bQVtcIlNVLklDLkRJVkUgUkVQT1JUIExPQ0FUSU9OXCJdXSl9fSwkPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiNDBcIj09ZSYmKElbMTFlNF09W10sSVsxMTAxMDBdPVtBW1wiQUMuSUMuQ1JJTUlOQUwuQUNUSVZJVFkuSU5DSURFTlRcIl1dLElbMTEwMTAxXT1bcy5fc2NhbGUoMS41LEFbXCJTVC5JQy5BUlJFU1RcIl0pXSxJWzExMDEwMl09W0FbXCJTVC5JQy5BUlNPTi9GSVJFXCJdXSxJWzExMDEwM109W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5JQy5BVFRFTVBURUQgQ1JJTUlOQUwgQUNUSVZJVFlcIl1dLElbMTEwMTA0XT1bQVtcIlNULklDLkRSSVZFLUJZIFNIT09USU5HXCJdXSxJWzExMDEwNV09W0FbXCJTVC5JQy5EUlVHIFJFTEFURUQgQUNUSVZJVElFU1wiXV0sSVsxMTAxMDZdPVtBW1wiU1QuSUMuRVhUT1JUSU9OXCJdXSxJWzExMDEwN109W0FbXCJTVC5JQy5HUkFGRklUSVwiXV0sSVsxMTAxMDhdPVtBW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl1dLElbMTEwMTA5XT1bQVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVsxMTAxMTBdPVtBW1wiU1QuSUMuUklPVFwiXV0sSVsxMTAxMTFdPVtzLl9zY2FsZSgxLjUsQVtcIlNULklDLkJPT0JZIFRSQVBcIl0pXSxJWzExMDExMl09W0FbXCJTVC5JQy5IT1VTRVwiXSxBW1wiU1QuTTEuRVZJQ1RJT05cIl1dLElbMTEwMTEzXT1bQVtcIlNULklDLkJMQUNLIE1BUktFVElOR1wiXV0sSVsxMTAxMTRdPVtBW1wiU1QuSUMuVkFOREFMSVNNL0xPT1QvUkFOU0FDSy9QTFVOREVSL1NBQ0tcIl1dLElbMTEwMTE1XT1bQVtcIkdSLklDLkZGLkpBSUwgQlJFQUtcIl1dLElbMTEwMTE2XT1bQVtcIlNULklDLlJPQkJFUllcIl1dLElbMTEwMTE3XT1bQVtcIlNULklDLlRIRUZUXCJdXSxJWzExMDExOF09W0FbXCJTVC5JQy5CVVJHTEFSWVwiXV0sSVsxMTAxMTldPVtBW1wiU1QuSUMuU01VR0dMSU5HXCJdXSxJWzExMDEyMF09W0FbXCJTVC5JQy5ST0NLIFRIUk9XSU5HXCJdXSxJWzExMDEyMV09W0FbXCJTVC5JQy5DT01QT1NJVEUgTE9TU1wiXSxBW1wiU1QuTTEuREVBRCBCT0RZXCJdXSxJWzExMDEyMl09W0FbXCJTVC5JQy5TQUJPVEFHRVwiXV0sSVsxMTAxMjNdPVtzLl90cmFuc2xhdGUoMCwxMCxzLl9zY2FsZSguOCxBW1wiQUMuSUMuQ1JJTUlOQUwuQUNUSVZJVFkuSU5DSURFTlRcIl0pKSxBW1wiQUMuTTEuVEhSRUFUXCJdXSxJWzExMDIwMF09W0FbXCJTVC5JQy5CT01CXCJdXSxJWzExMDIwMV09W0FbXCJTVC5JQy5CT01CXCJdLEFbXCJBQy5NMS5USFJFQVRcIl1dLElbMTEwMzAwXT1bQVtcIlNULklDLklFRFwiXV0sSVsxMTAzMDFdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEFbXCJTVC5JQy5JRURcIl1dLElbMTEwMzAyXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjcsW0FbXCJTVC5JQy5FWFBMT1NJT05cIl0sQVtcIlNULklDLklFRFwiXV0pKSxBW1wiU1QuTTEuUFJFTUFUVVJFXCJdXSxJWzExMDMwM109W0FbXCJTVC5JQy5JRURcIl0sQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sSVsxMTAzMDRdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuSUVEXCJdXSxJWzExMDQwMF09W0FbXCJBQy5JQy5TSE9PVElOR1wiXV0sSVsxMTA0MDFdPVtBW1wiU1QuSUMuU05JUElOR1wiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXV0sSVsxMTA1MDFdPVtBW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXSxBW1wiU1QuTTEuVFJBRkZJQ0tJTkdcIl1dLElbMTEwNTAyXT1bQVtcIlNULklDLklMTEVHQUwgRFJVRyBPUEVSQVRJT05cIl0sQVtcIlNULk0xLkxBQlJBVE9SWVwiXV0sSVsxMTA2MDBdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdXSxJWzExMDYwMV09W0FbXCJTVC5JQy5FWFBMT1NJT05cIl0sQVtcIlNULklDLkdSRU5BREVcIl1dLElbMTEwNjAyXT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxBW1wiU1QuSUMuSU5DRU5ESUFSWVwiXV0sSVsxMTA2MDNdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEFbXCJTVC5JQy5NSU5FXCJdXSxJWzExMDYwNF09W0FbXCJTVC5JQy5FWFBMT1NJT05cIl0scy5fc2NhbGUoLjYsQVtcIkdSLkVRLk1PUlRBUlwiXSldLElbMTEwNjA1XT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxzLl9zY2FsZSguNixBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSldLElbMTEwNjA2XT1bcy5fc2NhbGUoLjcsQVtcIlNULklDLkJPTUJcIl0pLEFbXCJTVC5JQy5FWFBMT1NJT05cIl1dLElbMTJlNF09W0FbXCJBQy5JQy5DUklNSU5BTC5DSVZJTCBESVNUVVJCQU5DRVwiXV0sSVsxMjAxMDBdPVtBW1wiU1QuSUMuREVNT05TVFJBVElPTlwiXV0sSVsxM2U0XT1bXSxJWzEzMDEwMF09W0FbXCJTVC5JQy5QQVRST0xMSU5HXCJdXSxJWzEzMDIwMF09W0FbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbMTMwMjAxXT1bQVtcIlNULklDLlJBRElPIEFORCBURUxFVklTSU9OIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVsxMzAzMDBdPVtBW1wiU1QuSUMuU0VBUkNISU5HXCJdXSxJWzEzMDQwMF09W10sSVsxMzA0MDFdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuV0lMTElOR1wiXV0sSVsxMzA0MDJdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuQ09FUkNFRC9JTVBSRVNTRURcIl1dLElbMTMwNTAwXT1bQVtcIlNULklDLk1JTkUgTEFZSU5HXCJdXSxJWzEzMDYwMF09W0FbXCJTVC5JQy5TUFlcIl1dLElbMTMwNzAwXT1bQVtcIlNULklDLldBUlJBTlQgU0VSVkVEXCJdXSxJWzEzMDgwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5NMS5FWEZJTFRSQVRJT05cIl1dLElbMTMwOTAwXT1bQVtcIlNULklDLklORElWSURVQUxcIl0sQVtcIlNULk0xLklORklMVFJBVElPTlwiXV0sSVsxMzFlM109W0FbXCJTVC5JQy5HUk9VUFwiXSxBW1wiU1QuTTEuTUVFVElOR1wiXV0sSVsxMzEwMDFdPVtBW1wiU1QuSUMuUE9MTElORyBQTEFDRS9FTEVDVElPTlwiXV0sSVsxMzExMDBdPVtBW1wiU1QuSUMuSE9VU0VcIl0sQVtcIlNULk0xLlJBSURcIl1dLElbMTMxMjAwXT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMTMxMjAxXT1bcy5fc2NhbGUoLjcsQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEFbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdXSxJWzEzMTIwMl09W0FbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXV0sSVsxMzEyMDNdPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBJTkNJREVOVCBDT01NQU5EIENFTlRFUlwiXV0sSVsxMzEyMDRdPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXV0sSVsxMzEyMDVdPVtBW1wiQUMuSUMuRU1FUkdFTkNZIFBVQkxJQyBJTkZPUk1BVElPTiBDRU5URVJcIl1dLElbMTMxMjA2XT1bcy5fc2NhbGUoLjcsQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEFbXCJBQy5NMS5FTUVSR0VOQ1kgU0hFTFRFUlwiXV0sSVsxMzEyMDddPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl1dLElbMTMxMjA4XT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuV0FURVJcIl1dLElbMTMxMzAwXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsxMzEzMDFdPVtBW1wiQUMuSUMuRU1UIFNUQVRJT04gTE9DQVRJT05cIl1dLElbMTMxMzAyXT1bQVtcIkFDLklDLkhFQUxUSCBERVBBUlRNRU5UIEZBQ0lMSVRZXCJdXSxJWzEzMTMwM109W0FbXCJBQy5JQy5NRURJQ0FMIEZBQ0lMSVRJRVMgT1VUUEFUSUVOVFwiXV0sSVsxMzEzMDRdPVtBW1wiQUMuSUMuT1BFUkFUSU9OL0VNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsxMzEzMDVdPVtBW1wiQUMuSUMuUEhBUk1BQ1lcIl1dLElbMTMxMzA2XT1bQVtcIkFDLklDLlRSSUFHRVwiXV0sSVsxMzE0MDBdPVtBW1wiR1IuSUMuRklSRSBQUk9URUNUSU9OXCJdXSxJWzEzMTQwMV09W0FbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl1dLElbMTMxNDAyXT1bcy5fc2NhbGUoMS41LEFbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl0pXSxJWzEzMTQwM109W0FbXCJBQy5JQy5PVEhFUiBXQVRFUiBTVVBQTFkgTE9DQVRJT05cIl1dLElbMTMxNTAwXT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMzE1MDFdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzEzMTUwMl09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzEzMTUwM109W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTMxNTA0XT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzEzMTUwNV09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTMxNTA2XT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTMxNTA3XT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMzE1MDhdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzEzMTUwOV09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMTMxNTEwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXV0sSVsxMzE1MTFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxMzE1MTJdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxMzE1MTNdPVtBW1wiU1QuSUMuSU5URVJOQUwgU0VDVVJJVFkgRk9SQ0VcIl1dLElbMTRlNF09W0FbXCJBQy5JQy5GSVJFIEVWRU5UXCJdXSxJWzE0MDEwMF09W0FbXCJBQy5JQy5GSVJFIE9SSUdJTlwiXV0sSVsxNDAyMDBdPVtBW1wiQUMuSUMuU01PS0VcIl1dLElbMTQwMzAwXT1bQVtcIkFDLklDLkhPVCBTUE9UXCJdXSxJWzE0MDQwMF09W0FbXCJBQy5JQy5OT04tUkVzSWRFTlRJQUwgRklSRVwiXV0sSVsxNDA1MDBdPVtBW1wiQUMuSUMuUkVzSWRFTlRJQUwgRklSRVwiXV0sSVsxNDA2MDBdPVtBW1wiQUMuSUMuU0NIT09MIEZJUkVcIl1dLElbMTQwNzAwXT1bQVtcIkFDLklDLlNQRUNJQUwgTkVFRFMgRklSRVwiXV0sSVsxNDA4MDBdPVtBW1wiQUMuSUMuV0lMRCBGSVJFXCJdXSxJWzE1ZTRdPVtdLElbMTUwMTAwXT1bQVtcIkFDLklDLkhBWkFSRE9VUyBNQVRFUklBTFMgSU5DSURFTlRcIl1dLElbMTUwMTAxXT1bQVtcIkFDLklDLkNIRU1JQ0FMIEFHRU5UXCJdXSxJWzE1MDEwMl09W0FbXCJBQy5JQy5DT1JST1NJVkUgTUFURVJJQUxcIl1dLElbMTUwMTAzXT1bQVtcIkFDLklDLkhBWkFSRE9VUyBXSEVOIFdFVFwiXV0sSVsxNTAxMDRdPVtBW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdXSxJWzE1MDEwNV09W0FbXCJBQy5JQy5GTEFNTUFCTEUgR0FTXCJdXSxJWzE1MDEwNl09W0FbXCJBQy5JQy5GTEFNTUFCTEUgTElRVUlEXCJdXSxJWzE1MDEwN109W0FbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl1dLElbMTUwMTA4XT1bQVtcIkFDLklDLk5PTi1GTEFNTUFCTEUgR0FTXCJdXSxJWzE1MDEwOV09W0FbXCJBQy5JQy5PUkdBTklDIFBFUk9YSURFXCJdXSxJWzE1MDExMF09W0FbXCJBQy5JQy5PWElESVpFUlwiXV0sSVsxNTAxMTFdPVtBW1wiQUMuSUMuUkFESU9BQ1RJVkUgTUFURVJJQUxcIl1dLElbMTUwMTEyXT1bQVtcIkFDLklDLlNQT05UQU5FT1VTTFkgQ09NQlVTVElCTEUgTUFURVJJQUxcIl1dLElbMTUwMTEzXT1bQVtcIkFDLklDLlRPWElDIEdBU1wiXV0sSVsxNTAxMTRdPVtBW1wiQUMuSUMuVE9YSUMgSU5GRUNUSU9VUyBNQVRFUklBTFwiXV0sSVsxNTAxMTVdPVtBW1wiQUMuSUMuVU5FWFBMT0RFRCBPUkROQU5DRVwiXV0sSVsxNmU0XT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdXSxJWzE2MDEwMF09W0FbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXV0sSVsxNjAyMDBdPVtBW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVsxNjAzMDBdPVtBW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVsxNjA0MDBdPVtBW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl1dLElbMTYwNTAwXT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxzLl9zY2FsZSguNyxBW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl0pXSxJWzE3ZTRdPVtBW1wiU1QuSUMuTkFUVVJBTCBFVkVOVFwiXV0sSVsxNzAxMDBdPVtBW1wiU1QuSUMuR0VPTE9HSUNcIl1dLElbMTcwMTAxXT1bQVtcIkFDLklDLkFGVEVSU0hPQ0tcIl1dLElbMTcwMTAyXT1bQVtcIkFDLklDLkFWQUxBTkNIRVwiXV0sSVsxNzAxMDNdPVtBW1wiQUMuSUMuRUFSVEhRVUFLRSBFUElDRU5URVJcIl1dLElbMTcwMTA0XT1bQVtcIkFDLklDLkxBTkRTTElERVwiXV0sSVsxNzAxMDVdPVtBW1wiQUMuSUMuU1VCU0lERU5DRVwiXV0sSVsxNzAxMDZdPVtBW1wiQUMuSUMuVk9MQ0FOSUMgRVJVUFRJT05cIl1dLElbMTcwMTA3XT1bQVtcIkFDLklDLlZPTENBTklDIFRIUkVBVFwiXV0sSVsxNzAxMDhdPVtBW1wiQUMuSUMuQ0FWRSBFTlRSQU5DRVwiXV0sSVsxNzAyMDBdPVtBW1wiU1QuSUMuSFlEUk8tTUVURU9ST0xPR0lDQUxcIl1dLElbMTcwMjAxXT1bQVtcIkFDLklDLkRST1VHSFRcIl1dLElbMTcwMjAyXT1bQVtcIkFDLklDLkZMT09EXCJdXSxJWzE3MDIwM109W0FbXCJBQy5JQy5UU1VOQU1JXCJdXSxJWzE3MDMwMF09W0FbXCJTVC5JQy5JTkZFU1RBVElPTlwiXV0sSVsxNzAzMDFdPVtBW1wiQUMuSUMuQklSRFwiXV0sSVsxNzAzMDJdPVtBW1wiQUMuSUMuSU5TRUNUXCJdXSxJWzE3MDMwM109W0FbXCJBQy5JQy5NSUNST0JJQUxcIl1dLElbMTcwMzA0XT1bQVtcIkFDLklDLlJFUFRJTEVcIl1dLElbMTcwMzA1XT1bQVtcIkFDLklDLlJPREVOVFwiXV0sSVsxOGU0XT1bXSxJWzE4MDEwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5NMS5MRUFERVJcIl0sQVtcIlNULk0yLlJFTElHSU9VU1wiXV0sSVsxODAyMDBdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuU1BFQUtFUlwiXV0sdFtcIjAxXCJdPVtBW1wiU1QuTTEuQVNTQVNTSU5BVElPTlwiXV0sdFtcIjAyXCJdPVtBW1wiU1QuTTEuRVhFQ1VUSU9OIChXUk9OR0ZVTCBLSUxMSU5HKVwiXV0sdFtcIjAzXCJdPVtBW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSx0W1wiMDRcIl09W0FbXCJTVC5NMS5IT1VTRS1UTy1IT1VTRVwiXV0sdFtcIjA1XCJdPVtBW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sdFtcIjA2XCJdPVtBW1wiU1QuTTEuTVVSREVSXCJdXSx0W1wiMDdcIl09W0FbXCJTVC5NMS5QSVJBQ1lcIl1dLHRbXCIwOFwiXT1bQVtcIlNULk0xLlJBUEVcIl1dLHRbXCIwOVwiXT1bQVtcIlNULk0xLldSSVRURU4gUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdXSx0WzEwXT1bQVtcIlNULk0xLlBJUkFURVwiXV0sdFsxMV09W0FbXCJTVC5NMS5GQUxTRVwiXV0sdFsxMl09W0FbXCJTVC5NMS5GSU5EXCJdXSx0WzEzXT1bQVtcIlNULk0xLkZPVU5EIEFORCBDTEVBUkVEXCJdXSx0WzE0XT1bQVtcIlNULk0xLkhPQVggKERFQ09ZKVwiXV0sdFsxNV09W0FbXCJTVC5NMS5BVFRFTVBURURcIl1dLHRbMTZdPVtBW1wiU1QuTTEuQUNDSURFTlRcIl1dLHRbMTddPVtBW1wiU1QuTTEuSU5DSURFTlRcIl1dLHRbMThdPVtBW1wiU1QuTTEuVEhFRlRcIl1dLHRbMTldPVtBW1wiR1IuTTEuSElKQUNLRVJcIl1dLHRbMjBdPVtBW1wiR1IuTTEuQ1lCRVJTUEFDRVwiXV0sRVtcIjAxXCJdPVtBW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuU0VDVVJJVFkgRk9SQ0UgQVNTSVNUQU5DRVwiXV0pfX0sSUk9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmYsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCI1MFwiIT1lJiZcIjUxXCIhPWUmJlwiNTJcIiE9ZSYmXCI1M1wiIT1lJiZcIjU0XCIhPWV8fChJWzExZTRdPVtdLElbMTEwMTAwXT1bQVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdXSxJWzExMDIwMF09W0FbXCJTSS5JLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sSVsxMTAzMDBdPVtBW1wiU0kuSUMuUkFEQVJcIl1dLHRbXCIwMVwiXT1bQVtcIlNJLk0xLkFOVEktQUlSQ1JBRlQgRklSRSBDT05UUk9MXCJdXSx0W1wiMDJcIl09W0FbXCJTSS5NMS5BSVJCT1JORSBTRUFSQ0ggQU5EIEJPTUJJTkdcIl1dLHRbXCIwM1wiXT1bQVtcIlNJLk0xLkFJUkJPUk5FIElOVEVSQ0VQVFwiXV0sdFtcIjA0XCJdPVtBW1wiU0kuTTEuQUxUSU1FVEVSXCJdXSx0W1wiMDVcIl09W0FbXCJTSS5NMS5BSVJCT1JORSBSRUNPTk5BSVNTQU5DRSBBTkQgTUFQUElOR1wiXV0sdFtcIjA2XCJdPVtBW1wiU0kuTTEuQUlSIFRSQUZGSUMgQ09OVFJPTFwiXV0sdFtcIjA3XCJdPVtBW1wiU0kuTTEuQkVBQ09OIFRSQU5TUE9OREVSIChOT1QgSUZGKVwiXV0sdFtcIjA4XCJdPVtBW1wiU0kuTTEuQkFUVExFRklFTEQgU1VSVkVJTExBTkNFXCJdXSx0W1wiMDlcIl09W0FbXCJTSS5NMS5DT05UUk9MTEVEIEFQUFJPQUNIXCJdXSx0WzEwXT1bQVtcIlNJLk0xLkNPTlRST0xMRUQgSU5URVJDRVBUXCJdXSx0WzExXT1bQVtcIlNJLk0xLkNFTExVTEFSL01PQklMRVwiXV0sdFsxMl09W0FbXCJTSS5NMS5DT0FTVEFMIFNVUlZFSUxMQU5DRVwiXV0sdFsxM109W0FbXCJTSS5NMS5ERUNPWS9NSU1JQ1wiXV0sdFsxNF09W0FbXCJTSS5NMS5EQVRBIFRSQU5TTUlTU0lPTlwiXV0sdFsxNV09W0FbXCJTSS5NMS5FQVJUSCBTVVJWRUlMTEFOQ0VcIl1dLHRbMTZdPVtBW1wiU0kuTTEuRUFSTFkgV0FSTklOR1wiXV0sdFsxN109W0FbXCJTSS5NMS5GSVJFIENPTlRST0xcIl1dLHRbMThdPVtBW1wiU0kuTTEuR1JPVU5EIE1BUFBJTkdcIl1dLHRbMTldPVtBW1wiU0kuTTEuSEVJR0hUIEZJTkRJTkdcIl1dLHRbMjBdPVtBW1wiU0kuTTEuSEFSQk9SIFNVUlZFSUxMQU5DRVwiXV0sdFsyMV09W0FbXCJTSS5NMS5JREVOVElGSUNBVElPTiwgRlJJRU5EIE9SIEZPRSAoSU5URVJST0dBVE9SKVwiXV0sdFsyMl09W0FbXCJTSS5NMS5JTlNUUlVNRU5UIExBTkRJTkcgU1lTVEVNXCJdXSx0WzIzXT1bQVtcIlNJLk0xLklPTk9TUEhFUklDIFNPVU5ESU5HXCJdXSx0WzI0XT1bQVtcIlNJLk0xLklERU5USUZJQ0FUSU9OLCBGUklFTkQgT1IgRk9FIChUUkFOU1BPTkRFUilcIl1dLHRbMjVdPVtBW1wiU0kuTTEuQkFSUkFHRSBKQU1NRVJcIl1dLHRbMjZdPVtBW1wiU0kuTTEuQ0xJQ0sgSkFNTUVSXCJdXSx0WzI3XT1bQVtcIlNJLk0xLkRFQ0VQVElWRSBKQU1NRVJcIl1dLHRbMjhdPVtBW1wiU0kuTTEuRlJFUVVFTkNZIFNXRVBUIEpBTU1FUlwiXV0sdFsyOV09W0FbXCJTSS5NMS5KQU1NRVIgKEdFTkVSQUwpXCJdXSx0WzMwXT1bQVtcIlNJLk0xLk5PSVNFIEpBTU1FUlwiXV0sdFszMV09W0FbXCJTSS5NMS5QVUxTRUQgSkFNTUVSXCJdXSx0WzMyXT1bQVtcIlNJLk0xLlJFUEVBVEVSIEpBTU1FUlwiXV0sdFszM109W0FbXCJTSS5NMS5TUE9UIE5PSVNFIEpBTU1FUlwiXV0sdFszNF09W0FbXCJTSS5NMS5UUkFOU1BPTkRFUiBKQU1NRVJcIl1dLHRbMzVdPVtBW1wiU0kuTTEuTUlTU0lMRSBBQ1FVSVNJVElPTlwiXV0sdFszNl09W0FbXCJTSS5NMS5NSVNTSUxFIENPTlRST0xcIl1dLHRbMzddPVtBW1wiU0kuTTEuTUlTU0lMRSBET1dOTElOS1wiXV0sdFszOF09W0FbXCJTSS5NMS5NRVRFT1JPTE9HSUNBTFwiXV0sdFszOV09W0FbXCJTSS5NMS5NVUxUSS1GVU5DVElPTlwiXV0sdFs0MF09W0FbXCJTSS5NMS5NSVNTSUxFIEdVSURBTkNFXCJdXSx0WzQxXT1bQVtcIlNJLk0xLk1JU1NJTEUgSE9NSU5HXCJdXSx0WzQyXT1bQVtcIlNJLk0xLk1JU1NJTEUgVFJBQ0tJTkdcIl1dLHRbNDNdPVtBW1wiU0kuTTEuTkFWSUdBVElPTkFML0dFTkVSQUxcIl1dLHRbNDRdPVtBW1wiU0kuTTEuTkFWSUdBVElPTkFML0RJU1RBTkNFIE1FQVNVUklORyBFUVVJUE1FTlRcIl1dLHRbNDVdPVtBW1wiU0kuTTEuTkFWSUdBVElPTi9URVJSQUlOIEZPTExPV0lOR1wiXV0sdFs0Nl09W0FbXCJTSS5NMS5OQVZJR0FUSU9OQUwvV0VBVEhFUiBBVk9JREFOQ0VcIl1dLHRbNDddPVtBW1wiU0kuTTEuT01OSS1MSU5FIE9GIFNJR0hUIChMT1MpXCJdXSx0WzQ4XT1bQVtcIlNJLk0xLlBST1hJTUlUWSBVU0VcIl1dLHRbNDldPVtBW1wiU0kuTTEuUE9JTlQtVE8tUE9JTlQgTElORSBPRiBTSUdIVCAoTE9TKVwiXV0sdFs1MF09W0FbXCJTSS5NMS5JTlNUUlVNRU5UQVRJT05cIl1dLHRbNTFdPVtBW1wiU0kuTTEuUkFOR0UgT05MWVwiXV0sdFs1Ml09W0FbXCJTSS5NMS5TT05PQlVPWVwiXV0sdFs1M109W0FbXCJTSS5NMS5TQVRFTExJVEUgRE9XTkxJTktcIl1dLHRbNTRdPVtBW1wiU0kuTTEuU1BBQ0VcIl1dLHRbNTVdPVtBW1wiU0kuTTEuU1VSRkFDRSBTRUFSQ0hcIl1dLHRbNTZdPVtBW1wiU0kuTTEuU0hFTEwgVFJBQ0tJTkdcIl1dLHRbNTddPVtBW1wiU0kuTTEuU0FURUxMSVRFIFVQTElOS1wiXV0sdFs1OF09W0FbXCJTSS5NMS5UQVJHRVQgQUNRVUlTSVRJT05cIl1dLHRbNTldPVtBW1wiU0kuTTEuVEFSR0VUIElMTFVNSU5BVElPTlwiXV0sdFs2MF09W0FbXCJTSS5NMS5UUk9QT1NQSEVSSUMgU0NBVFRFUlwiXV0sdFs2MV09W0FbXCJTSS5NMS5UQVJHRVQgVFJBQ0tJTkdcIl1dLHRbNjJdPVtBW1wiU0kuTTEuVU5LTk9XTlwiXV0sdFs2M109W0FbXCJTSS5NMS5WSURFTyBSRU1PVElOR1wiXV0sdFs2NF09W0FbXCJTSS5NMS5FWFBFUklNRU5UQUxcIl1dLHRbNjVdPVtBW1wiU0kuTTEuQ1lCRVJcIl1dLEVbXCIwMVwiXT1bQVtcIlNJLk0yLkNZQkVSXCJdXSl9fTt2YXIgdEk9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOlYsbGFiZWxzOmZ1bmN0aW9uKEkpe3ZhciB0PXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MzAsZm9udHNpemU6MzB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LEU9e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxSPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19O0lbMTMwMTAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxhZGRpdGlvbmFsSW5mb3JtYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjMwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbMTMwMjAwXT10LElbMTMwMzAwXT10LElbMTMwNDAwXT17fSxJWzEzMDUwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJWzEzMDYwMF09e30sSVsxMzA3MDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsxMzA4MDBdPXQsSVsxMzA5MDBdPXQsSVsxMzEwMDFdPUUsSVsxMzEwMDJdPUUsSVsxMzEwMDNdPUUsSVsxMzExMDBdPXQsSVsxMzEyMDBdPXQsSVsxMzEzMDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjMwLGZvbnRzaXplOjQwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJWzEzMTMwMV09e30sSVsxMzE0MDBdPXQsSVsxMzE1MDBdPXQsSVsxMzE2MDBdPXQsSVsxMzE3MDBdPXt9LElbMTMxODAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyNSxmb250c2l6ZTo3MH19LElbMTMxOTAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5OjExNSxmb250c2l6ZTo0MH19LElbMTMyZTNdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6ODAsZm9udHNpemU6NDB9fSxJWzEzMjEwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMDAseToxMTAsZm9udHNpemU6MzUsZmlsbDpcInJnYigyNTUsMjU1LDI1NSlcIixmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsxNjAxMDBdPXt9LElbMTYwMjAwXT17fSxJWzE2MDIwMV09e30sSVsxNjAyMDJdPXt9LElbMTYwMjAzXT17fSxJWzE2MDIwNF09e30sSVsxNjAyMDVdPXt9LElbMTYwMzAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExMCx5OjkwLGZvbnRzaXplOjQwfX0sSVsxNjA0MDBdPUUsSVsxOGU0XT17fSxJWzE4MDEwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTMwLGZvbnRzaXplOjM1fX0sSVsxODAyMDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzMCxmb250c2l6ZTozNX19LElbMTgwMzAwXT17fSxJWzE4MDQwMF09e30sSVsxODA1MDBdPXt9LElbMTgwNjAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjcwLGZvbnRzaXplOjM1fX0sSVsxODA3MDBdPXt9LElbMTgwODAwXT17fSxJWzE4MDkwMF09e30sSVsxODFlM109e30sSVsxODExMDBdPXt9LElbMTgxMjAwXT17fSxJWzE4MTMwMF09e30sSVsxODE0MDBdPXt9LElbMTgxNTAwXT17fSxJWzE4MTYwMF09e30sSVsxODE3MDBdPXt9LElbMTgxODAwXT17fSxJWzE4MTkwMF09e30sSVsxODJlM109e30sSVsxODIxMDBdPXt9LElbMTgyMjAwXT17fSxJWzE4MjMwMF09e30sSVsxODI0MDBdPXt9LElbMTgyNTAwXT17fSxJWzIwMDQwMF09e30sSVsyMDA1MDBdPXt9LElbMjAwNjAwXT17fSxJWzIwMDcwMF09e30sSVsyMTAxMDBdPXt9LElbMjEwMjAwXT17fSxJWzIxMDMwMF09e30sSVsyMTA0MDBdPXt9LElbMjEwNTAwXT17fSxJWzIxMDYwMF09e2FsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjcwLGZvbnRzaXplOjM1fX0sSVsyMTA3MDBdPXt9LElbMjEwODAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTozNX19LElbMjEwOTAwXT17fSxJWzIxMWUzXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODAsZm9udHNpemU6MzV9fSxJWzIxMTEwMF09e30sSVsyMTEyMDBdPXt9LElbMjExMzAwXT17fSxJWzIxMTQwMF09e30sSVsyMTE1MDBdPXt9LElbMjExNjAwXT17fSxJWzIxMTcwMF09e30sSVsyMTE4MDBdPXt9LElbMjExOTAwXT17fSxJWzIxMmUzXT17fSxJWzIxMjEwMF09e30sSVsyMTIyMDBdPXt9LElbMjEyMzAwXT17fSxJWzIxMjQwMF09e30sSVsyMTI1MDBdPXt9LElbMjEyNjAwXT17fSxJWzIxMjcwMF09e30sSVsyMTI4MDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDV9fSxJWzIxMjkwMF09e30sSVsyMTI5MDFdPXt9LElbMjEyOTAyXT17fSxJWzIxMjkwM109e30sSVsyMTI5MDRdPXt9LElbMjEzZTNdPXt9LElbMjEzMTAwXT17fSxJWzIxMzIwMF09e30sSVsyMTMzMDBdPXt9LElbMjEzNDAwXT17fSxJWzIxMzUwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo3MCxmb250c2l6ZTozNX0sYWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwMV09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo3MCxmb250c2l6ZTozNX0sYWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwMl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDNdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTA0XT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjcwLGZvbnRzaXplOjM1fSxhZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTA1XT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwNl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDddPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDhdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDldPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTEwXT17fSxJWzIxMzUxMV09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MTJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTEzXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUxNF09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MTVdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM2MDBdPXt9LElbMjEzNzAwXT17fSxJWzIxMzgwMF09e30sSVsyMTM5MDBdPXt9LElbMjE0ZTNdPXt9LElbMjE0MTAwXT17fSxJWzIxNDIwMF09e30sSVsyMTQzMDBdPXt9LElbMjE0NDAwXT17fSxJWzIxNDUwMF09e30sSVsyMTQ2MDBdPXt9LElbMjE0NzAwXT17fSxJWzIxNDgwMF09e30sSVsyMTQ5MDBdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5Ojc1LGZvbnRzaXplOjMwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseToxMDAsZm9udHNpemU6MzB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseToxMjUsZm9udHNpemU6MzB9fSxJWzIxNWUzXT17fSxJWzIxNTEwMF09e30sSVsyMTUyMDBdPXt9LElbMjE1MzAwXT17fSxJWzIxNTQwMF09e30sSVsyMTU1MDBdPXt9LElbMjE1NjAwXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseTo3NSxmb250c2l6ZTozMH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTgwLHk6MTAwLGZvbnRzaXplOjMwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTgwLHk6MTI1LGZvbnRzaXplOjMwfX0sSVsyMTU3MDBdPXt9LElbMjE1ODAwXT17fSxJWzIxNTkwMF09e30sSVsyMTZlM109e30sSVsyMTYxMDBdPXt9LElbMjE2MjAwXT17fSxJWzIxNjMwMF09e30sSVsyMTY0MDBdPXt9LElbMjE2NTAwXT17fSxJWzIxNjYwMF09e30sSVsyMTY3MDBdPXt9LElbMjE2ODAwXT17fSxJWzIxNjkwMF09e30sSVsyMTdlM109e30sSVsyMTcxMDBdPXt9LElbMjE3MjAwXT17fSxJWzIxNzMwMF09e30sSVsyMTc0MDBdPXt9LElbMjE3NTAwXT17fSxJWzIxNzYwMF09e30sSVsyMTc3MDBdPXt9LElbMjE3ODAwXT17fSxJWzIxNzkwMF09e30sSVsyMThlM109e30sSVsyMTgxMDBdPXt9LElbMjE4MjAwXT17fSxJWzIxODMwMF09e30sSVsyMTg1MDBdPXt9LElbMjE4NjAwXT17fSxJWzIxODcwMF09e30sSVsyMTg4MDBdPXt9LElbMjE4OTAwXT17fSxJWzIxOWUzXT17fSxJWzIxOTEwMF09e30sSVsyMTkyMDBdPXt9LElbMjQwNjAxXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdGFyZ2V0TnVtYmVyOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MH19LElbMjQwNjAyXT17dGFyZ2V0TnVtYmVyOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MH19LElbMjQwNjAzXT17fSxJWzI0MDkwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxOTUseToxMTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn19LElbMjUwMTAwXT1FLElbMjUwMjAwXT1FLElbMjUwMzAwXT1FLElbMjUwNDAwXT1FLElbMjUwNTAwXT1FLElbMjUwNjAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5OjgwLGZvbnRzaXplOjM1fX0sSVsyNzA2MDFdPXt9LElbMjcwNjAyXT17fSxJWzI3MDYwM109e30sSVsyNzA3MDFdPXt9LElbMjgwMTAwXT17fSxJWzI4MDIwMF09e30sSVsyODAyMDFdPXt9LElbMjgwMzAwXT17fSxJWzI4MDQwMF09e30sSVsyODA1MDBdPXt9LElbMjgwNjAwXT17fSxJWzI4MDcwMF09e30sSVsyODA4MDBdPXQsSVsyODA5MDBdPXt9LElbMjgxZTNdPXt9LElbMjgxMTAwXT17fSxJWzI4MTIwMF09e30sSVsyODEzMDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjMwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjMwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTo5MCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMzUsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6OTAsZm9udHNpemU6MzV9fSxJWzI4MTMwMV09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MzAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6MzAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjkwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTo5MCxmb250c2l6ZTozNX19LElbMjgxNDAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTozMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTozMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6OTAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjkwLGZvbnRzaXplOjM1fX0sSVsyODE1MDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjMwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjMwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTo5MCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMzUsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6OTAsZm9udHNpemU6MzV9fSxJWzI4MTYwMF09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MzAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6MzAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjkwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTo5MCxmb250c2l6ZTozNX19LElbMjgxNzAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTozMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTozMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6OTAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjkwLGZvbnRzaXplOjM1fX0sSVsyODE4MDBdPXQsSVsyODE4MDFdPXQsSVsyODE4MDJdPXQsSVsyODE4MDNdPXQsSVsyODE4MDRdPXQsSVsyODE4MDVdPXQsSVsyODE4MDZdPXQsSVsyODE4MDddPXQsSVsyODE4MDhdPXQsSVsyODE4MDldPXQsSVsyODE5MDFdPXt9LElbMjgxOTAyXT17fSxJWzI4MTkwM109e30sSVsyODIwMDFdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsyODIwMDJdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTUseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVszMjAxMDBdPXt9LElbMzIwMTAxXT10LElbMzIwMTAyXT10LElbMzIwMTAzXT10LElbMzIwMTA0XT10LElbMzIwMjAwXT10LElbMzIwMzAwXT10LElbMzIwNDAwXT10LElbMzIwNTAwXT10LElbMzIwNjAwXT10LElbMzIwNzAwXT10LElbMzIwODAwXT10LElbMzIwOTAwXT10LElbMzIxZTNdPXQsSVszMjExMDBdPXQsSVszMjEyMDBdPXQsSVszMjEzMDBdPXQsSVszMjE0MDBdPXQsSVszMjE1MDBdPXQsSVszMjE2MDBdPXQsSVszMjE3MDBdPVIsSVszMjE3MDFdPVIsSVszMjE3MDJdPVIsSVszMjE3MDNdPVIsSVszMjE3MDRdPVIsSVszMjE3MDVdPVIsSVszMjE3MDZdPXt9LElbMzIxNzA3XT1FLElbMzIxNzA4XT1FLElbMzIxNzA5XT1FLElbMzIxNzEwXT1FLElbMzIxNzExXT1FLElbMzIxNzEyXT1FLElbMzIxNzEzXT1FLElbMzIxNzE0XT1FLElbMzIxNzE1XT1FLElbMzIxNzE2XT1FLElbMzIxODAwXT1SLElbMzQwMzAwXT17fSxJWzM0MDQwMF09e30sSVszNDA5MDBdPXt9LElbMzQxNDAwXT17fSxJWzM0MTYwMF09e30sSVszNDI4MDBdPXt9LElbMzUwMTAxXT17fSxJWzM1MDEwMl09e30sSVszNTAxMDNdPXt9LElbMzUwMjAxXT17fSxJWzM1MDIwMl09e30sSVszNTAyMDNdPXt9fSxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjI1XCI9PWUmJihJWzEzMDEwMF09QVtcIlRQLkFDVElPTiBQT0lOVFwiXSxSWzEzMDEwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMwMjAwXT1BW1wiVFAuQUNUSU9OIEFNTkVTVFkgUE9JTlRcIl0sUlsxMzAyMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMDMwMF09QVtcIlRQLkFDVElPTiBDSEVDSyBQT0lOVFwiXSxSWzEzMDMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMwNDAwXT1BW1wiVFAuQ0VOVFJFIE9GIE1BSU4gRUZGT1JUXCJdLFJbMTMwNDAwXT17eDE6MjUseDI6MTc1LHkxOjY1LHkyOjEzNX0sSVsxMzA1MDBdPUFbXCJUUC5DT05UQUNUIFBPSU5UXCJdLFJbMTMwNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsxMzA2MDBdPUFbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl0sUlsxMzA2MDBdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJWzEzMDcwMF09QVtcIlRQLkRFQ0lTSU9OIFBPSU5UXCJdLFJbMTMwNzAwXT17eDE6MzAseDI6MTcwLHkxOjI1LHkyOjE2MH0sSVsxMzA4MDBdPUFbXCJUUC5ESVNUUkVTUyBDQUxMXCJdLFJbMTMwODAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzA5MDBdPUFbXCJUUC5FTlRSWSBDT05UUk9MIFBPSU5UXCJdLFJbMTMwOTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEwMDFdPUFbXCJUUC5GTFktVE8tUE9JTlQgKFNPTk9CVU9ZKVwiXSxSWzEzMTAwMV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMxMDAyXT1BW1wiVFAuRkxZLVRPLVBPSU5UIChXRUFQT04pXCJdLFJbMTMxMDAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEwMDNdPUFbXCJUUC5GTFktVE8tUE9JTlQgKE5PUk1BTClcIl0sUlsxMzEwMDNdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMTEwMF09QVtcIlRQLkFDVElPTiBMSU5LVVAgUE9JTlRcIl0sUlsxMzExMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMTIwMF09QVtcIlRQLkFDVElPTiBQQVNTQUdFIFBPSU5UXCJdLFJbMTMxMjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEzMDBdPUFbXCJUUC5QT0lOVCBPRiBJTlRFUkVTVFwiXSxSWzEzMTMwMF09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbMTMxMzAxXT1BW1wiUE9JTlQgT0YgSU5URVJFU1Qg4oCTIExBVU5DSCBFVkVOVFwiXSxSWzEzMTMwMV09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbMTMxNDAwXT1BW1wiVFAuQUNUSU9OIFJBTExZIFBPSU5UXCJdLFJbMTMxNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzE1MDBdPUFbXCJUUC5BQ1RJT04gUkVMRUFTRSBQT0lOVFwiXSxSWzEzMTUwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMxNjAwXT1BW1wiVFAuQUNUSU9OIFNUQVJUIFBPSU5UXCJdLFJbMTMxNjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzE3MDBdPUFbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLFJbMTMxNzAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsxMzE4MDBdPUFbXCJUUC5XQVlQT0lOVFwiXSxSWzEzMTgwMF09e3gxOjYwLHgyOjE0MCx5MTo2MCx5MjoxNDB9LElbMTMxOTAwXT1BW1wiVFAuQUlSRklFTERcIl0sUlsxMzE5MDBdPXt4MTozNSx4MjoxNjUseTE6NjAseTI6MTI1fSxJWzEzMmUzXT1BW1wiVFAuVEFSR0VUIEhBTkRPVkVSXCJdLFJbMTMyZTNdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzEzMjEwMF09QVtcIlRQLktFWSBURVJSQUlOXCJdLElbMTYwMTAwXT1BW1wiVFAuT0JTRVJWQVRJT04gUE9TVC9PVVRQT1NUXCJdLFJbMTYwMTAwXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVsxNjAyMDBdPUFbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sUlsxNjAyMDBdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwMV09QVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sUlsxNjAyMDFdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwMl09QVtcIlRQLkZPUldBUkQgT0JTRVJWRVIgUE9TSVRJT05cIl0sUlsxNjAyMDJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwM109QVtcIlRQLkNCUk4gT0JTRVJWQVRJT04gUE9TVFwiXSxSWzE2MDIwM109e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbMTYwMjA0XT1BW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sUlsxNjAyMDRdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwNV09QVtcIlRQLkNPTUJBVCBPVVRQT1NUXCJdLFJbMTYwMjA1XT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVsxNjAzMDBdPUFbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbMTYwNDAwXT1BW1wiVFAuUE9JTlQgT0YgREVQQVJUVVJFXCJdLFJbMTYwNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxOGU0XT1BW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl0sUlsxOGU0XT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODAxMDBdPUFbXCJUUC5BSVIgQ09OVFJPTCBQT0lOVCAoQUNQKVwiXSxSWzE4MDEwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMTgwMjAwXT1BW1wiVFAuQ09NTVVOSUNBVElPTlMgQ0hFQ0tQT0lOVFwiXSxSWzE4MDIwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMTgwMzAwXT1BW1wiVFAuRE9XTkVEIEFJUkNSRVcgUElDS1VQIFBPSU5UXCJdLFJbMTgwMzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxODA0MDBdPUFbXCJUUC5QVUxMLVVQIFBPSU5UXCJdLFJbMTgwNDAwXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVsxODA1MDBdPUFbXCJUUC5BSVIgQ09OVFJPTCBSRU5ERVpWT1VTXCJdLFJbMTgwNTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODA2MDBdPUFbXCJUUC5UQUNBTlwiXSxSWzE4MDYwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgwNzAwXT1BW1wiVFAuQ0FQIFNUQVRJT05cIl0sUlsxODA3MDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MDgwMF09QVtcIlRQLkFFVyBTVEFUSU9OXCJdLFJbMTgwODAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODA5MDBdPUFbXCJUUC5GSVhFRCBXSU5HXCJdLElbMTgxZTNdPUFbXCJUUC5TVFJJS0UgSVBcIl0sUlsxODFlM109e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgxMTAwXT1BW1wiVFAuUkVQTEVOSVNITUVOVCBTVEFUSU9OXCJdLFJbMTgxMTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODEyMDBdPUFbXCJUUC5UQU5LSU5HXCJdLFJbMTgxMjAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODEzMDBdPUFbXCJUUC5TVUNBUCAtIFJPVEFSWSBXSU5HXCJdLFJbMTgxMzAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODE0MDBdPUFbXCJUUC5TVUNBUCAtIEZJWEVEIFdJTkdcIl0sUlsxODE0MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTUwMF09QVtcIlRQLlNVQ0FQIC0gUk9UQVJZIFdJTkdcIl0sUlsxODE1MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTYwMF09QVtcIlRQLk1JVyAtIEZJWEVEIFdJTkdcIl0sUlsxODE2MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTcwMF09QVtcIlRQLk1JVyAtIFJPVEFSWSBXSU5HXCJdLFJbMTgxNzAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODE4MDBdPUFbXCJUUC5UT01DQVRcIl0sUlsxODE4MDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MTkwMF09QVtcIlRQLlJFU0NVRVwiXSxSWzE4MTkwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgyZTNdPUFbXCJUUC5VTk1BTk5FRCBBRVJJQUwgU1lTVEVNXCJdLFJbMTgyZTNdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MjEwMF09QVtcIlRQLlZUVUFcIl0sUlsxODIxMDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MjIwMF09QVtcIlRQLk9SQklUXCJdLFJbMTgyMjAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODIzMDBdPUFbXCJUUC5PUkJJVCAtIEZJR1VSRSBFSUdIVFwiXSxSWzE4MjMwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgyNDAwXT1BW1wiVFAuT1JCSVQgLSBSQUNFIFRSQUNLXCJdLFJbMTgyNDAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODI1MDBdPUFbXCJUUC5PUkJJVCAtIFJBTkRPTSwgQ0xPU0VEXCJdLFJbMTgyNTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsyMDA0MDBdPUFbXCJUUC5TSElQIEFSRUEgT0YgSU5URVJFU1QgKEFFR0lTIE9OTFkpXCJdLElbMjAwNTAwXT1BW1wiVFAuQUNUSVZFIE1BTk9FVVZSRSBBUkVBIChBRUdJUyBPTkxZKVwiXSxSWzIwMDUwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjAwNjAwXT1BLlRPRE8sSVsyMDA3MDBdPUEuVE9ETyxJWzIxMDEwMF09QVtcIlRQLlBMQU4gU0hJUFwiXSxSWzIxMDEwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEwMjAwXT1BW1wiVFAuQUlNIFBPSU5UXCJdLFJbMjEwMjAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTAzMDBdPUFbXCJUUC5ERUZFTkRFRCBBU1NFVFwiXSxJWzIxMDQwMF09QVtcIlRQLkRST1AgUE9JTlRcIl0sUlsyMTA0MDBdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTIwfSxJWzIxMDUwMF09QVtcIlRQLkVOVFJZIFBPSU5UXCJdLFJbMjEwNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwfSxJWzIxMDYwMF09QVtcIlRQLkFJUiBERVRPTkFUSU9OXCJdLElbMjEwNzAwXT1BW1wiVFAuR1JPVU5EIFpFUk9cIl0sUlsyMTA3MDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjEwODAwXT1BW1wiVFAuSU1QQUNUIFBPSU5UXCJdLFJbMjEwODAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTA5MDBdPUFbXCJUUC5QUkVESUNURUQgSU1QQUNUIFBPSU5UXCJdLFJbMjEwOTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTFlM109QVtcIlRQLkxBVU5DSEVEIFRPUlBFRE8gKEFFR0lTIE9OTFkpXCJdLFJbMjExZTNdPXt4MTo1MCx4MjoxNTAseTE6OTAseTI6MTEwfSxJWzIxMTEwMF09QVtcIlRQLk1TTCBERVRFQ1QgUE9JTlRcIl0sUlsyMTExMDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjExMjAwXT1BW1wiVFAuQUNPVVNUSUMgQ09VTlRFUiBNRUFTVVJFIChERUNPWSlcIl0sUlsyMTEyMDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjExMzAwXT1BW1wiVFAuRUxFQ1RST05JQyBDT1VOVEVSIE1FQVNVUkVTIChFQ00pIERFQ09ZXCJdLFJbMjExMzAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTE0MDBdPUFbXCJUUC5CUklFRiBDT05UQUNUXCJdLFJbMjExNDAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMTUwMF09QVtcIlRQLkRBVFVNXCJdLFJbMjExNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTE2MDBdPUFbXCJUUC5CVCBCT1VZIERST1BcIl0sUlsyMTE2MDBdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTYwfSxJWzIxMTcwMF09QVtcIlRQLlJFUE9SVEVEIEJPVFRPTUVEIFNVQlwiXSxJWzIxMTgwMF09QVtcIlRQLk1PVklORyBIQVZFTlwiXSxSWzIxMTgwMF09e3gxOjQwLHgyOjE2MCx5MTo1MCx5MjoxNTB9LElbMjExOTAwXT1BW1wiVFAuU0NSRUVOIENFTlRSRVwiXSxJWzIxMmUzXT1BW1wiVFAuTE9TVCBDT05UQUNUXCJdLFJbMjEyZTNdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbMjEyMTAwXT1BW1wiVFAuU0lOS0VSXCJdLFJbMjEyMTAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMjIwMF09QVtcIlRQLlRSSUFMIFRSQUNLXCJdLFJbMjEyMjAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMjMwMF09QVtcIlRQLkZJWCBBQ09VU1RJQ1wiXSxJWzIxMjQwMF09QVtcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdLElbMjEyNTAwXT1BW1wiVFAuRUxFQ1RSTyBNQUdORVRJQyAtIE1BR05FVElDIEFOT01BTFkgREVURUNUSU9OIChNQUQpXCJdLFJbMjEyNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE4MH0sSVsyMTI2MDBdPUFbXCJUUC5GSVggRUxFQ1RSTy1PUFRJQ0FMXCJdLElbMjEyNzAwXT1BW1wiVFAuVEFSR0VUIFJFRkVSRU5DRVwiXSxJWzIxMjgwMF09QVtcIlRQLkhBUkJPUlwiXSxSWzIxMjgwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEyOTAwXT1BW1wiVFAuSEFSQk9SXCJdLFJbMjEyOTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTI5MDFdPUFbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSxSWzIxMjkwMV09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEyOTAyXT1BW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sUlsyMTI5MDJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJWzIxMjkwM109QVtcIlRQLkhBUkJPUiBQT0lOVCBYXCJdLFJbMjEyOTAzXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTI5MDRdPUFbXCJUUC5IQVJCT1IgUE9JTlQgWVwiXSxSWzIxMjkwNF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzZTNdPUFbXCJUUC5ESVAgUE9TSVRJT05cIl0sUlsyMTNlM109e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzMTAwXT1BW1wiVFAuU0VBUkNIXCJdLFJbMjEzMTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTMyMDBdPUFbXCJUUC5TRUFSQ0ggQVJFQVwiXSxSWzIxMzIwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzMzAwXT1BW1wiVFAuU0VBUkNIIENFTlRFUlwiXSxSWzIxMzMwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzNDAwXT1BW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSxJWzIxMzUwMF09QVtcIlRQLlNPTk9CVU9ZXCJdLFJbMjEzNTAwXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTAxXT1BW1wiVFAuU09OT0JVT1kgQU5NXCJdLFJbMjEzNTAxXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTAyXT1BW1wiVFAuU09OT0JVT1kgQVRBQ1wiXSxSWzIxMzUwMl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwM109QVtcIlRQLlNPTk9CVU9ZIEJBUlJBXCJdLFJbMjEzNTAzXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA0XT1BW1wiVFAuU09OT0JVT1kgQkFUSFlUSEVSTU9HUkFQSCBUUkFOU01JVFRJTkcgU09OT0JVT1kgKEJUKVwiXSxSWzIxMzUwNF09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwNV09QVtcIlRQLlNPTk9CVU9ZIENPTU1BTkQgQUNUSVZFIE1VTFRJQkVBTSBTT05PQlVPWSAoQ0FNQlMpXCJdLFJbMjEzNTA1XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA2XT1BW1wiVFAuU09OT0JVT1kgQ0FTU1wiXSxSWzIxMzUwNl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwN109QVtcIlRQLlNPTk9CVU9ZIERJRkFSXCJdLFJbMjEzNTA3XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA4XT1BW1wiVFAuU09OT0JVT1kgRElDQVNTXCJdLFJbMjEzNTA4XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA5XT1BW1wiVFAuU09OT0JVT1kgRVhQRU5EQUJMRSBSRUxJQUJMRSBBQ09VU1RJQyBQQVRIIFNPTk9CVU9ZIChFUkFQUylcIl0sUlsyMTM1MDldPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVsyMTM1MTBdPUFbXCJUUC5TT05PQlVPWSBFWFBJUkVEXCJdLFJbMjEzNTEwXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTExXT1BW1wiVFAuU09OT0JVT1kgS0lOR1BJTlwiXSxSWzIxMzUxMV09e3gxOjQwLHgyOjE2MCx5MTotMTAseTI6MTYwfSxJWzIxMzUxMl09QVtcIlRQLlNPTk9CVU9ZIExPRkFSXCJdLFJbMjEzNTEyXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTEzXT1BW1wiVFAuU09OT0JVT1kgUEFUVEVSTiBDRU5URVJcIl0sUlsyMTM1MTNdPXt4MTo0MCx4MjoxNjAseTE6LTEwLHkyOjE2MH0sSVsyMTM1MTRdPUFbXCJUUC5TT05PQlVPWSBST1wiXSxSWzIxMzUxNF09e3gxOjQwLHgyOjE2MCx5MTotMTAseTI6MTYwfSxJWzIxMzUxNV09QVtcIlRQLlNPTk9CVU9ZIFZMQURcIl0sUlsyMTM1MTVdPXt4MTo0MCx4MjoxNjAseTE6LTEwLHkyOjE2MH0sSVsyMTM2MDBdPUFbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0sUlsyMTM2MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzcwMF09QVtcIlRQLlNQRUNJQUwgUE9JTlRcIl0sUlsyMTM3MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzgwMF09QVtcIlRQLk5BVklHQVRJT05BTCBSRUZFUkVOQ0VcIl0sUlsyMTM4MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzkwMF09QVtcIlRQLkRMUlBcIl0sUlsyMTM5MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxNGUzXT1BW1wiRk9SV0FSRCBPQlNFUlZFUiAvIFNQT1RURVIgUE9TSVRJT05cIl0sUlsyMTRlM109e3gxOjQwLHgyOjE2MCx5MTo2MCx5MjoxNDB9LElbMjE0MTAwXT1BW1wiVFAuVklUQUwgQVJFQSBDRU5UUkVcIl0sUlsyMTQxMDBdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJWzIxNDIwMF09QVtcIlRQLkNPUlJJRE9SIFRBQlwiXSxSWzIxNDIwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0MzAwXT1BW1wiVFAuRU5FTVkgUE9JTlRcIl0sUlsyMTQzMDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxNDQwMF09QVtcIlRQLk1BUlNIQUxMIFBPSU5UXCJdLFJbMjE0NDAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ1MDBdPUFbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXSxSWzIxNDUwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0NjAwXT1BW1wiVFAuUFJFLUxBTkRGQUxMIFdBWVBPSU5UXCJdLFJbMjE0NjAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ3MDBdPUFbXCJUUC5FU1RJTUFURUQgUE9TSVRJT04gKEVQKVwiXSxSWzIxNDcwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0ODAwXT1BW1wiVFAuUkVGRVJFTkNFIFBPSU5UIFdBWVBPSU5UXCJdLFJbMjE0ODAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ5MDBdPUFbXCJUUC5TVUIgU1VSRkFDRSBDT05UUk9MIFNUQVRJT05cIl0sUlsyMTQ5MDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNWUzXT1BW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNWUzXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTUxMDBdPUFbXCJUUC5BU1cgU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNTEwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1MjAwXT1BW1wiVFAuKFVVVikgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1MjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTUzMDBdPUFbXCJUUC5VVVYgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1MzAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU0MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIFNVQlNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNTQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1NTAwXT1BW1wiVFAuVVVWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNTUwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1NjAwXT1BW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1NjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU3MDBdPUFbXCJUUC5BU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1NzAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU4MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgU1VSRkFDRSBTVEFUSU9OXCJdLFJbMjE1ODAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU5MDBdPUFbXCJUUC5OT04tQ09NQkFUQU5UIFNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNTkwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2ZTNdPUFbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2ZTNdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNjEwMF09QVtcIlRQLlJFTkRFWlZPVVMgQ09OVFJPTCBQT0lOVFwiXSxSWzIxNjEwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2MjAwXT1BW1wiVFAuUkVQTEVOSVNITUVOVCBBVCBTRUEgU1VSRkFDRSBTVEFUSU9OXCJdLFJbMjE2MjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTYzMDBdPUFbXCJUUC5SRVNDVUUgQ09OVFJPTCBQT0lOVFwiXSxSWzIxNjMwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2NDAwXT1BW1wiVFAuU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2NTAwXT1BW1wiVFAuKFVTVikgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2NTAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTY2MDBdPUFbXCJUUC5VU1YgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2NjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTY3MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIFNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNjcwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2ODAwXT1BW1wiVFAuKFJNVikgVVNWIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjgwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2OTAwXT1BW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjkwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE3ZTNdPUFbXCJUUC5TSE9SRSBDT05UUk9MIFNUQVRJT05cIl0sUlsyMTdlM109e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE3MTAwXT1BW1wiVFAuUk9VVEVcIl0sUlsyMTcxMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNzIwMF09QVtcIlRQLlJPVVRFIERJVkVSU0lPTlNcIl0sUlsyMTcyMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzMwMF09QVtcIlRQLlJPVVRFIFBPSU5UIFJcIl0sUlsyMTczMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzQwMF09QVtcIlRQLlBJQ0tFVCBST1VURVwiXSxSWzIxNzQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NTAwXT1BW1wiVFAuUE9JTlQgUiBST1VURVwiXSxSWzIxNzUwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NjAwXT1BW1wiVFAuUkVOREVaVk9VUyBST1VURVwiXSxSWzIxNzYwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NzAwXT1BW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sUlsyMTc3MDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzgwMF09QVtcIlRQLkNMVVRURVIsIFNUQVRJT05BUlkgT1IgQ0VBU0UgUkVQT1JUSU5HXCJdLElbMjE3OTAwXT1BW1wiVFAuVEVOVEFUSVZFIE9SIFBST1ZJU0lPTkFMIFRSQUNLXCJdLElbMjE4ZTNdPUFbXCJUUC5ESVNUUkVTU0VEIFZFU1NFTFwiXSxJWzIxODEwMF09QVtcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl0sSVsyMTgyMDBdPUFbXCJUUC5QRVJTT04gSU4gV0FURVJcIl0sSVsyMTgzMDBdPUFbXCJUUC5JQ0VCRVJHXCJdLFJbMjE4MzAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTg1MDBdPUFbXCJUUC5PSUwgUklHL1BMQVRGT1JNXCJdLFJbMjE4NTAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTg2MDBdPUFbXCJUUC5TRUEgTUlORUxJS0VcIl0sUlsyMTg2MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTUwfSxJWzIxODcwMF09QVtcIlRQLkJPVFRPTSBSRVRVUk5cIl0sUlsyMTg3MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTAwfSxJWzIxODgwMF09QVtcIlRQLklOU1RBTExBVElPTi9NQU5NQURFXCJdLFJbMjE4ODAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVsyMTg5MDBdPUFbXCJUUC5NQVJJTkUgTElGRVwiXSxSWzIxODkwMF09e3gxOjEwMCx4MjoyMjAseTE6NzAseTI6MTMwfSxJWzIxOWUzXT1BW1wiVFAuU0VBIEFOT01BTFlcIl0sUlsyMTllM109e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMjE5MTAwXT1BW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXSxSWzIxOTEwMF09e3gxOjQwLHgyOjE2MCx5MTo3MCx5MjoxMzB9LElbMjE5MjAwXT1BW1wiVFAuV1JFQ0ssIE5PTiBEQU5HRVJPVVNcIl0sUlsyMTkyMDBdPXt4MTo0MCx4MjoxNjAseTE6NzAseTI6MTMwfSxJWzI0MDYwMV09QVtcIlRQLlBPSU5UL1NJTkdMRSBUQVJHRVRcIl0sSVsyNDA2MDJdPUFbXCJUUC5OVUNMRUFSIFRBUkdFVFwiXSxJWzI0MDYwM109QVtcIlRQLlRBUkdFVFJFQ09SREVEIChBRUdJUyBPTkxZKVwiXSxSWzI0MDYwM109e3gxOjAseDI6MjAwLHkxOjUwLHkyOjE1MH0sSVsyNDA5MDBdPUFbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxSWzI0MDkwMF09e3gxOjUwLHgyOjIwMCx5MTo1MCx5MjoxNTB9LElbMjUwMTAwXT1BW1wiVFAuRklSSU5HIFBPSU5UXCJdLFJbMjUwMTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyNTAyMDBdPUFbXCJUUC5ISURFIFBPSU5UXCJdLFJbMjUwMjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyNTAzMDBdPUFbXCJUUC5MQVVOQ0ggUE9JTlRcIl0sUlsyNTAzMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI1MDQwMF09QVtcIlRQLlJFTE9BRCBQT0lOVFwiXSxSWzI1MDQwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMjUwNTAwXT1BW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl0sUlsyNTA1MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI1MDYwMF09QVtcIlRQLktOT1dOIFBPSU5UXCJdLElbMjcwNzAxXT1BW1wiVFAuTUlORUZJRUxELCBTVEFUSUNcIl0sUlsyNzA3MDFdPXt4MToyNSx4MjoxNzUseTE6NjUseTI6MTQ1fSxJWzI4MDEwMF09QS5UT0RPLElbMjgwMjAwXT1BW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbMjgwMjAxXT1BW1wiVFAuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUU1wiXSxSWzI4MDIwMV09e3gxOjQwLHgyOjE4MCx5MTo0MCx5MjoxNTB9LElbMjgwMzAwXT1BW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLElbMjgwNDAwXT1BW1wiVFAuKEFUKSBBTlRJSEFORExJTkcgREVWSUNFXCJdLFJbMjgwNDAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE5NX0sSVsyODA1MDBdPUFbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVsyODA2MDBdPUFbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdLElbMjgwNzAwXT1BW1wiVFAuQk9PQlkgVFJBUFwiXSxJWzI4MDgwMF09QVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sUlsyODA4MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MDkwMF09QVtcIlRQLkVBUlRIV09SSy9GT1JUSUZJQ0FUSU9OXCJdLElbMjgxZTNdPUFbXCJUUC5TVVJGQUNFIFNIRUxURVJcIl0sSVsyODExMDBdPUFbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbMjgxMjAwXT1BW1wiVFAuRk9SVFwiXSxJWzI4MTMwMF09QVtcIlRQLkNIRU1JQ0FMIEVWRU5UXCJdLFJbMjgxMzAwXT17eDE6MjUseDI6MTc1LHkxOi0xMH0sSVsyODEzMDFdPUFbXCJUUC5DSEVNSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXSxSWzI4MTMwMV09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNDAwXT1BW1wiVFAuQklPTE9HSUNBTCBFVkVOVFwiXSxSWzI4MTQwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNDAxXT1BW1wiVFAuQklPTE9HSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXSxSWzI4MTQwMV09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNTAwXT1BW1wiVFAuTlVDTEVBUiBFVkVOVFwiXSxSWzI4MTUwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNjAwXT1BW1wiVFAuTlVDTEVBUiBFVkVOVFwiXSxSWzI4MTYwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNzAwXT1BW1wiVFAuUkFESU9MT0dJQ0FMIEVWRU5UXCJdLFJbMjgxNzAwXT17eDE6MjUseDI6MTc1LHkxOi0xMH0sSVsyODE3MDFdPUFbXCJUUC5SQURJT0xPR0lDQUwg4oCTIFRPWElDIElORFVTVFJJQUwgTUFURVJJQUxcIl0sUlsyODE3MDFdPXt4MToyNSx4MjoxNzUseTE6LTEwfSxJWzI4MTgwMF09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlRcIl0sUlsyODE4MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwMV09QVtcIlRQLkFMVEVSTkFURSBERUNPTiBTSVRFL1BPSU5UXCJdLFJbMjgxODAxXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDJdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQpXCJdLFJbMjgxODAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDNdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUUk9PUFMpXCJdLFJbMjgxODAzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDRdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl0sUlsyODE4MDRdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwNV09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKE9QRVJBVElPTkFMIERFQ09OVEFNSU5BVElPTilcIl0sUlsyODE4MDVdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwNl09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRIT1JPVUdIIERFQ09OVEFNSU5BVElPTilcIl0sUlsyODE4MDZdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwN109QVtcIlRQLk1BSU4gRVFVSVBNRU5UIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdLFJbMjgxODA3XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDhdPUFbXCJUUC5GT1JXQVJEIFRST09QIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdLFJbMjgxODA4XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDldPUFbXCJUUC5XT1VOREVEIFBFUlNPTk5FTCBERUNPTlRBTUlOQVRJT04gU0lURVwiXSxSWzI4MTgwOV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMjgxOTAxXT1BW1wiVFAuRklYRUQgQU5EIFBSRUZBQlJJQ0FURURcIl0sUlsyODE5MDFdPXt4MTo2MCx4MjoxNDAseTE6MzB9LElbMjgxOTAyXT1BW1wiVFAuVEVUUkFIRURST05TXCJdLFJbMjgxOTAyXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJWzI4MTkwM109QVtcIlRQLlRFVFJBSEVEUk9OUyBNT1ZBQkxFXCJdLFJbMjgxOTAzXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJWzI4MjAwMV09QVtcIlRQLlRPV0VSIExPV1wiXSxSWzI4MjAwMV09e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMjgyMDAyXT1BW1wiVFAuVE9XRVIgSElHSFwiXSxSWzI4MjAwMl09e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMzIwMTAwXT1BW1wiVFAuQU1CVUxBTkNFIEVYQ0hBTkdFIFBPSU5UXCJdLFJbMzIwMTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAxMDFdPUFbXCJUUC5BTUJVTEFOQ0UgRVhDSEFOR0UgUE9JTlRcIl0sUlszMjAxMDFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMDEwMl09QVtcIlRQLkFNQlVMQU5DRSBDT05UUk9MIFBPSU5UXCJdLFJbMzIwMTAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAxMDNdPUFbXCJUUC5BTUJVTEFOQ0UgTE9BRCBQT0lOVFwiXSxSWzMyMDEwM109e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwMTA0XT1BW1wiVFAuQU1CVUxBTkNFIFJFTEFZIFBPSU5UXCJdLFJbMzIwMTA0XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAyMDBdPUFbXCJUUC5BTU1VTklUSU9OIFNVUFBMWSBQT0lOVCAoQVNQKVwiXSxSWzMyMDIwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwMzAwXT1BW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXSxSWzMyMDMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwNDAwXT1BW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdLFJbMzIwNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA1MDBdPUFbXCJUUC5DQVNVQUxUWSBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA2MDBdPUFbXCJUUC5DSVZJTElBTiBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA3MDBdPUFbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA4MDBdPUFbXCJUUC5FUFcgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMDgwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwOTAwXT1BW1wiVFAuTE9HSVNUSUNTIFJFTEVBU0UgUE9JTlRcIl0sUlszMjA5MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMWUzXT1BW1wiVFAuTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMWUzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjExMDBdPUFbXCJUUC5NRURJQ0FMIEVWQUNVQVRJT04gKE1FREVWQUMpIFBJQ0tVUCBQT0lOVFwiXSxSWzMyMTEwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxMjAwXT1BW1wiVFAuUkVBUk0sIFJFRlVFTCBBTkQgUkVTVVBQTFkgUE9JTlRcIl0sUlszMjEyMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTMwMF09QVtcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXSxSWzMyMTMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNDAwXT1BW1wiVFAuVFJBRkZJQyBDT05UUk9MIFBPU1RcIl0sUlszMjE0MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTUwMF09QVtcIlRQLlRSQUlMRVIgVFJBTlNGRVIgUE9JTlRcIl0sUlszMjE1MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTYwMF09QVtcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMTYwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzAwXT1BW1wiVFAuU1VQUExZIFBPSU5UXCJdLFJbMzIxNzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDFdPUFbXCJUUC5OQVRPIENMQVNTIElcIl0sUlszMjE3MDFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwMl09QVtcIlRQLk5BVE8gQ0xBU1MgSUlcIl0sUlszMjE3MDJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwM109QVtcIlRQLk5BVE8gQ0xBU1MgSUlJXCJdLFJbMzIxNzAzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDRdPUFbXCJUUC5OQVRPIENMQVNTIElWXCJdLFJbMzIxNzA0XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDVdPUFbXCJUUC5OQVRPIENMQVNTIFZcIl0sUlszMjE3MDVdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwNl09QVtcIlRQLlNVUFBMWSBQT0lOVFwiXSxSWzMyMTcwNl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzA3XT1BW1wiVFAuU1AgQ0xBU1MgSVwiXSxSWzMyMTcwN109e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzA4XT1BW1wiVFAuU1AgQ0xBU1MgSUlcIl0sUlszMjE3MDhdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwOV09QVtcIlRQLlNQIENMQVNTIElJSVwiXSxSWzMyMTcwOV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzEwXT1BW1wiVFAuU1AgQ0xBU1MgSVZcIl0sUlszMjE3MTBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxMV09QVtcIlRQLlNQIENMQVNTIFZcIl0sUlszMjE3MTFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxMl09QVtcIlRQLlNQIENMQVNTIFZJXCJdLFJbMzIxNzEyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MTNdPUFbXCJUUC5TUCBDTEFTUyBWSUlcIl0sUlszMjE3MTNdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxNF09QVtcIlRQLlNQIENMQVNTIFZJSUlcIl0sUlszMjE3MTRdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxNV09QVtcIlRQLlNQIENMQVNTIElYXCJdLFJbMzIxNzE1XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MTZdPUFbXCJUUC5TUCBDTEFTUyBYXCJdLFJbMzIxNzE2XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE4MDBdPUFbXCJUUC5NRURJQ0FMIFNVUFBMWSBQT0lOVFwiXSxSWzMyMTgwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzQwOTAwXT1BW1wiVFAuREVTVFJPWVwiXSxSWzM0MDkwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNDE0MDBdPUFbXCJUUC5JTlRFUkRJQ1RcIl0sUlszNDE0MDBdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbMzQxNjAwXT1BW1wiVFAuTkVVVFJBTElaRVwiXSxSWzM0MTYwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNDI4MDBdPUFbXCJUUC5TVVBQUkVTU1wiXSxSWzM0MjgwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNTAxMDFdPUFbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgU01BTExcIl0sSVszNTAxMDJdPUFbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgTUVESVVNXCJdLElbMzUwMTAzXT1BW1wiTUFOIE1BREUgU1BBQ0UgREVCUklTIEJJR1wiXSxJWzM1MDIwMV09QVtcIk5BVFVSQUwgU1BBQ0UgREVCUklTIFNNQUxMXCJdLElbMzUwMjAyXT1BW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgTUVESVVNXCJdLElbMzUwMjAzXT1BW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgQklHXCJdLHRbMTNdPVtBW1wiVFAuTTEuVU5TUEVDSUZJRURcIl1dLHRbMTRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsxNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzE2XT1bQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMTddPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFsxOF09W0FbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzE5XT1bQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbMjBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl1dLHRbMjFdPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAzXCJdXSx0WzIyXT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsyM109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl1dLHRbMjRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsyNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI2XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI3XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI4XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDJcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgM1wiXV0sdFsyOV09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgV0lUSCBBTlRJSEFORExJTkcgREVWSUNFIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXV0sdFszMF09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLldJREUgQVJFQSBBTlRJVEFOSyBNSU5FIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXV0sdFszMV09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMzJdPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszM109W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszNF09W0FbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFszNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMzZdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszN109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzM4XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDJcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAzXCJdXSx0WzM5XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgV0lUSCBBTlRJSEFORExJTkcgREVWSUNFIDNcIl1dLHRbNDBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0MV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0sdFs0Ml09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0M109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNDRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0sdFs0NV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFs0Nl09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0N109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNDhdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzQ5XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNTBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0pfX0sRUk9W1EsZyxiLEssWCx3LF8sSixaLHEsaiwkLElJLHt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMjdcIj09ZSYmKElbMTFlNF09W10sSVsxMTAxMDBdPVtdLElbMTEwMTAxXT1bQVtcIkdSLklDLkZGLklORkFOVFJZIERJU01PVU5URURcIl1dLElbMTEwMTAyXT1bQVtcIkdSLklDLkZGLk1FRElDQUxcIl1dLElbMTEwMTAzXT1bQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFIERJU01PVU5URURcIl1dLElbMTEwMTA0XT1bQVtcIkdSLklDLkZGLlNJR05BTCBESVNNT1VOVEVEXCJdXSxJWzExMDIwMF09W10sSVsxMTAyMDFdPVtBW1wiR1IuSUMuRVhQTE9TSVZFIE9SRE5BTkNFIERJU1BPU0FMXCJdXSxJWzExMDIwMl09W0FbXCJHUi5JQy5GSUVMRCBBUlRJTExFUlkgT0JTRVJWRVJcIl1dLElbMTEwMjAzXT1bQVtcIkdSLklDLkpPSU5UIEZJUkUgU1VQUE9SVFwiXV0sSVsxMTAyMDRdPVtBW1wiR1IuSUMuTElBSVNPTlwiXV0sSVsxMTAyMDVdPVtBW1wiR1IuSUMuTUVTU0VOR0VSXCJdXSxJWzExMDIwNl09W0FbXCJHUi5JQy5NSUxJVEFSWSBQT0xJQ0VcIl1dLElbMTEwMjA3XT1bQVtcIkdSLklDLk9CU0VSVkVSL09CU0VSVkFUSU9OXCJdXSxJWzExMDIwOF09W0FbXCJHUi5JQy5TRUNVUklUWVwiXV0sSVsxMTAyMDldPVtBW1wiR1IuSUMuU05JUEVSXCJdXSxJWzExMDIxMF09W0FbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJWzExMDMwMF09W10sSVsxMTAzMDFdPVtBW1wiR1IuRVEuUklGTEVcIl1dLElbMTEwMzAyXT1bQVtcIkdSLkVRLlJJRkxFXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTAzMDNdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTAzMDRdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwMzA1XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdXSxJWzExMDMwNl09W0FbXCJHUi5FUS5NQUNISU5FIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwMzA3XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwMzA4XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDMwOV09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJWzExMDMxMF09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSldLElbMTEwMzExXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSldLElbMTEwMzEyXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMDMxM109W0FbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJWzExMDMxNF09W0FbXCJHUi5FUS5NT1JUQVJcIl1dLElbMTEwMzE1XT1bQVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl1dLElbMTEwMzE2XT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVsxMTA0MDBdPVtdLElbMTEwNDAxXT1bQVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdXSxJWzExMDQwMl09QVtcIkdSLkVRLk5PTi1MRVRIQUwgR1JFTkFERSBMQVVOQ0hFUlwiXSxJWzExMDQwM109W0FbXCJHUi5FUS5UQVNFUlwiXV0sSVsxMmU0XT1bXSxJWzEyMDEwMF09W10sSVsxMjAxMDFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UXCJdXSx0W1wiMDFcIl09W0FbXCJHUi5NMS5DTE9TRSBQUk9URUNUSU9OXCJdXSx0W1wiMDJcIl09W0FbXCJHUi5NMS5DUk9XRCBBTkQgUklPVCBDT05UUk9MXCJdXSx0W1wiMDNcIl09W0FbXCJHUi5NMS5FWFBMT1NJVkUgT1JETkFOQ0UgRElTUE9TQUxcIl1dLHRbXCIwNFwiXT1bQVtcIkdSLk0xLlNFQ1VSSVRZXCJdXSx0W1wiMDVcIl09W0FbXCJHUi5NMS5TTklQRVJcIl1dLHRbXCIwNlwiXT1bQVtcIkdSLk0xLlNQRUNJQUwgV0VBUE9OUyBBTkQgVEFDVElDU1wiXV0sdFtcIjA3XCJdPVtBW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTFwiXV0sdFtcIjA5XCJdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTCBTUEVDSUFMSVpFRCBVTklUXCJdXSx0WzEwXT1bQVtcIlNULk0xLkdPVkVSTk1FTlQgT1JHQU5JWkFUSU9OXCJdXSx0WzExXT1bQVtcIkdSLk0xLlZJREVPIElNQUdFUllcIl1dLHRbMTJdPVtBW1wiR1IuTTEuSjFcIl1dLHRbMTNdPVtBW1wiR1IuTTEuSjJcIl1dLHRbMTRdPVtBW1wiR1IuTTEuSjNcIl1dLHRbMTVdPVtBW1wiR1IuTTEuSjRcIl1dLHRbMTZdPVtBW1wiR1IuTTEuSjVcIl1dLHRbMTddPVtBW1wiR1IuTTEuSjZcIl1dLHRbMThdPVtBW1wiR1IuTTEuSjdcIl1dLHRbMTldPVtBW1wiR1IuTTEuSjhcIl1dLHRbMjBdPVtBW1wiR1IuTTEuSjlcIl1dLHRbMjFdPVtBW1wiR1IuTTEuT0YtMVwiXV0sdFsyMl09W0FbXCJHUi5NMS5PRi0yXCJdXSx0WzIzXT1bQVtcIkdSLk0xLk9GLTNcIl1dLHRbMjRdPVtBW1wiR1IuTTEuT0YtNFwiXV0sdFsyNV09W0FbXCJHUi5NMS5PRi01XCJdXSx0WzI2XT1bQVtcIkdSLk0xLk9GLTZcIl1dLHRbMjddPVtBW1wiR1IuTTEuT0YtN1wiXV0sdFsyOF09W0FbXCJHUi5NMS5PRi04XCJdXSx0WzI5XT1bQVtcIkdSLk0xLk9GLTlcIl1dLHRbMzBdPVtBW1wiR1IuTTEuT0YtMTBcIl1dLHRbMzFdPVtBW1wiR1IuTTEuT0YtRFwiXV0sdFszMl09W0FbXCJHUi5NMS5PUi0xXCJdXSx0WzMzXT1bQVtcIkdSLk0xLk9SLTJcIl1dLHRbMzRdPVtBW1wiR1IuTTEuT1ItM1wiXV0sdFszNV09W0FbXCJHUi5NMS5PUi00XCJdXSx0WzM2XT1bQVtcIkdSLk0xLk9SLTVcIl1dLHRbMzddPVtBW1wiR1IuTTEuT1ItNlwiXV0sdFszOF09W0FbXCJHUi5NMS5PUi03XCJdXSx0WzM5XT1bQVtcIkdSLk0xLk9SLThcIl1dLHRbNDBdPVtBW1wiR1IuTTEuT1ItOVwiXV0sdFs0MV09W0FbXCJHUi5NMS5XTy0xXCJdXSx0WzQyXT1bQVtcIkdSLk0xLldPLTJcIl1dLHRbNDNdPVtBW1wiR1IuTTEuV08tM1wiXV0sdFs0NF09W0FbXCJHUi5NMS5XTy00XCJdXSx0WzQ1XT1bQVtcIkdSLk0xLldPLTVcIl1dLHRbNDZdPVtBW1wiR1IuTTEuSU5ESVZJRFVBTFwiXV0sdFs0N109W0FbXCJHUi5NMS5URUFNXCJdXSx0WzQ4XT1bQVtcIkdSLk0xLlNRVUFEXCJdXSx0WzQ5XT1bQVtcIkdSLk0xLlNFQ1RJT05cIl1dLHRbNTBdPVtBW1wiR1IuTTEuUExBVE9PTlwiXV0sdFs1MV09W0FbXCJHUi5NMS5DT01QQU5ZXCJdXSx0WzUyXT1bQVtcIkdSLk0xLkJBVFRBTElPTlwiXV0sdFs1M109W0FbXCJHUi5NMS5SRUdJTUVOVFwiXV0sdFs1NF09W0FbXCJHUi5NMS5CUklHQURFXCJdXSx0WzU1XT1bQVtcIkdSLk0xLkRJVklTSU9OXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5NMi5BSVJCT1JORVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuQklDWUNMRSBFUVVJUFBFRFwiXV0sRVtcIjAzXCJdPVtBW1wiR1IuTTIuREVNT0xJVElPTlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuSjFcIl1dLEVbXCIwNVwiXT1bQVtcIkdSLk0yLkoyXCJdXSxFW1wiMDZcIl09W0FbXCJHUi5NMi5KM1wiXV0sRVtcIjA3XCJdPVtBW1wiR1IuTTIuSjRcIl1dLEVbXCIwOFwiXT1bQVtcIkdSLk0yLko1XCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5KNlwiXV0sRVsxMF09W0FbXCJHUi5NMi5KN1wiXV0sRVsxMV09W0FbXCJHUi5NMi5KOFwiXV0sRVsxMl09W0FbXCJHUi5NMi5KOVwiXV0sRVsxM109W0FbXCJHUi5NMi5NT1VOVEFJTlwiXV0sRVsxNF09W0FbXCJHUi5NMi5PRi0xXCJdXSxFWzE1XT1bQVtcIkdSLk0yLk9GLTJcIl1dLEVbMTZdPVtBW1wiR1IuTTIuT0YtM1wiXV0sRVsxN109W0FbXCJHUi5NMi5PRi00XCJdXSxFWzE4XT1bQVtcIkdSLk0yLk9GLTVcIl1dLEVbMTldPVtBW1wiR1IuTTIuT0YtNlwiXV0sRVsyMF09W0FbXCJHUi5NMi5PRi03XCJdXSxFWzIxXT1bQVtcIkdSLk0yLk9GLThcIl1dLEVbMjJdPVtBW1wiR1IuTTIuT0YtOVwiXV0sRVsyM109W0FbXCJHUi5NMi5PRi0xMFwiXV0sRVsyNF09W0FbXCJHUi5NMi5PRi1EXCJdXSxFWzI1XT1bQVtcIkdSLk0yLk9SLTFcIl1dLEVbMjZdPVtBW1wiR1IuTTIuT1ItMlwiXV0sRVsyN109W0FbXCJHUi5NMi5PUi0zXCJdXSxFWzI4XT1bQVtcIkdSLk0yLk9SLTRcIl1dLEVbMjldPVtBW1wiR1IuTTIuT1ItNVwiXV0sRVszMF09W0FbXCJHUi5NMi5PUi02XCJdXSxFWzMxXT1bQVtcIkdSLk0yLk9SLTdcIl1dLEVbMzJdPVtBW1wiR1IuTTIuT1ItOFwiXV0sRVszM109W0FbXCJHUi5NMi5PUi05XCJdXSxFWzM0XT1bQVtcIkdSLk0yLldPLTFcIl1dLEVbMzVdPVtBW1wiR1IuTTIuV08tMlwiXV0sRVszNl09W0FbXCJHUi5NMi5XTy0zXCJdXSxFWzM3XT1bQVtcIkdSLk0yLldPLTRcIl1dLEVbMzhdPVtBW1wiR1IuTTIuV08tNVwiXV0sRVszOV09W0FbXCJHUi5NMi5TS0lcIl1dKX19LHRJXSxSST1bUSxnLGIsSyxYLHcsXyxKLFoscSxqLCQsSUkse3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmMsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCI2MFwiPT1lJiYoSVsxMWU0XT1bXSxJWzExMDEwMF09W0FbXCJDWS5JQy5DT01CQVQgTUlTU0lPTiBURUFNXCJdXSxJWzExMDIwMF09W0FbXCJDWS5JQy5OQVRJT05BTCBNSVNTSU9OIFRFQU1cIl1dLElbMTEwMzAwXT1bQVtcIkNZLklDLkNZQkVSIFBST1RFQ1RJT04gVEVBTVwiXV0sSVsxMTA0MDBdPVtBW1wiQ1kuSUMuTkFUSU9OIFNUQVRFIENZQkVSIFRIUkVBVCBBQ1RPUlwiXV0sSVsxMTA1MDBdPVtBW1wiQ1kuSUMuTk9OIE5BVElPTiBTVEFURSBDWUJFUiBUSFJFQVQgQUNUT1JcIl1dKX19LHRJXTtyZXR1cm4gcy5hZGRJY29ucyhCKSxzLmFkZEljb25zKFkpLHMuYWRkSWNvbnMoVykscy5hZGRJY29ucyhFSSkscy5hZGRJY29ucyhSSSkscy5QYXRoMkQ9ZnVuY3Rpb24oSSx0KXt2YXIgRSxSLGUsQSxDLFQsUyxOLE8sRyxvO0kuYmVnaW5QYXRoKCk7dmFyIE09dC5tYXRjaCgvKFtNQ0xIVl1bXk1DTEhWXSopL2dpKTtmb3IoUz0wO1M8TS5sZW5ndGg7UysrKXtpZihcIk1cIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE89RT1wYXJzZUZsb2F0KG9bMF0pLEc9Uj1wYXJzZUZsb2F0KG9bMV0pLEkubW92ZVRvKEUsUiksTj0yO048by5sZW5ndGg7Tis9MilFPXBhcnNlRmxvYXQob1tOXSksUj1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmKEkuY2xvc2VQYXRoKCksRT1PLFI9Ryl9aWYoXCJtXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxPPUU9RT9FK3BhcnNlRmxvYXQob1swXSk6cGFyc2VGbG9hdChvWzBdKSxHPVI9Uj9SK3BhcnNlRmxvYXQob1sxXSk6cGFyc2VGbG9hdChvWzFdKSxJLm1vdmVUbyhFLFIpLE49MjtOPG8ubGVuZ3RoO04rPTIpRSs9cGFyc2VGbG9hdChvW05dKSxSKz1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmKEkuY2xvc2VQYXRoKCksRT1PLFI9Ryl9aWYoXCJMXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKz0yKUU9cGFyc2VGbG9hdChvW05dKSxSPXBhcnNlRmxvYXQob1tOKzFdKSxJLmxpbmVUbyhFLFIpO1wiWlwiPT1NW1NdLnJlcGxhY2UoL1xccy9nLFwiXCIpLnN1YnN0cigtMSwxKS50b1VwcGVyQ2FzZSgpJiYoSS5jbG9zZVBhdGgoKSxFPU8sUj1HKX1pZihcImxcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rPTIpRSs9cGFyc2VGbG9hdChvW05dKSxSKz1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcIkNcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rPTYpZT1wYXJzZUZsb2F0KG9bTl0pLEE9cGFyc2VGbG9hdChvW04rMV0pLEM9cGFyc2VGbG9hdChvW04rMl0pLFQ9cGFyc2VGbG9hdChvW04rM10pLEU9cGFyc2VGbG9hdChvW04rNF0pLFI9cGFyc2VGbG9hdChvW04rNV0pLEkuYmV6aWVyQ3VydmVUbyhlLEEsQyxULEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJjXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKz02KWU9RStwYXJzZUZsb2F0KG9bTl0pLEE9UitwYXJzZUZsb2F0KG9bTisxXSksQz1FK3BhcnNlRmxvYXQob1tOKzJdKSxUPVIrcGFyc2VGbG9hdChvW04rM10pLEUrPXBhcnNlRmxvYXQob1tOKzRdKSxSKz1wYXJzZUZsb2F0KG9bTis1XSksSS5iZXppZXJDdXJ2ZVRvKGUsQSxDLFQsRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcIkhcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXSguKltcXGRdKT8vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rKylFPXBhcnNlRmxvYXQob1tOXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcImhcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXSguKltcXGRdKT8vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rKylFKz1wYXJzZUZsb2F0KG9bTl0pLEkubGluZVRvKEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJWXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0oLipbXFxkXSk/LylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKyspUj1wYXJzZUZsb2F0KG9bTl0pLEkubGluZVRvKEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJ2XCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0oLipbXFxkXSk/LylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKyspUis9cGFyc2VGbG9hdChvW05dKSxJLmxpbmVUbyhFLFIpO1wiWlwiPT1NW1NdLnJlcGxhY2UoL1xccy9nLFwiXCIpLnN1YnN0cigtMSwxKS50b1VwcGVyQ2FzZSgpJiZJLmNsb3NlUGF0aCgpfX19LHN9KTsiLCIvLyBzaGltIGZvciB1c2luZyBwcm9jZXNzIGluIGJyb3dzZXJcbnZhciBwcm9jZXNzID0gbW9kdWxlLmV4cG9ydHMgPSB7fTtcblxuLy8gY2FjaGVkIGZyb20gd2hhdGV2ZXIgZ2xvYmFsIGlzIHByZXNlbnQgc28gdGhhdCB0ZXN0IHJ1bm5lcnMgdGhhdCBzdHViIGl0XG4vLyBkb24ndCBicmVhayB0aGluZ3MuICBCdXQgd2UgbmVlZCB0byB3cmFwIGl0IGluIGEgdHJ5IGNhdGNoIGluIGNhc2UgaXQgaXNcbi8vIHdyYXBwZWQgaW4gc3RyaWN0IG1vZGUgY29kZSB3aGljaCBkb2Vzbid0IGRlZmluZSBhbnkgZ2xvYmFscy4gIEl0J3MgaW5zaWRlIGFcbi8vIGZ1bmN0aW9uIGJlY2F1c2UgdHJ5L2NhdGNoZXMgZGVvcHRpbWl6ZSBpbiBjZXJ0YWluIGVuZ2luZXMuXG5cbnZhciBjYWNoZWRTZXRUaW1lb3V0O1xudmFyIGNhY2hlZENsZWFyVGltZW91dDtcblxuZnVuY3Rpb24gZGVmYXVsdFNldFRpbW91dCgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3NldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbmZ1bmN0aW9uIGRlZmF1bHRDbGVhclRpbWVvdXQgKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignY2xlYXJUaW1lb3V0IGhhcyBub3QgYmVlbiBkZWZpbmVkJyk7XG59XG4oZnVuY3Rpb24gKCkge1xuICAgIHRyeSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2V0VGltZW91dCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FjaGVkU2V0VGltZW91dCA9IHNldFRpbWVvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY2FjaGVkU2V0VGltZW91dCA9IGRlZmF1bHRTZXRUaW1vdXQ7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIGlmICh0eXBlb2YgY2xlYXJUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBjbGVhclRpbWVvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBkZWZhdWx0Q2xlYXJUaW1lb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBkZWZhdWx0Q2xlYXJUaW1lb3V0O1xuICAgIH1cbn0gKCkpXG5mdW5jdGlvbiBydW5UaW1lb3V0KGZ1bikge1xuICAgIGlmIChjYWNoZWRTZXRUaW1lb3V0ID09PSBzZXRUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICAvLyBpZiBzZXRUaW1lb3V0IHdhc24ndCBhdmFpbGFibGUgYnV0IHdhcyBsYXR0ZXIgZGVmaW5lZFxuICAgIGlmICgoY2FjaGVkU2V0VGltZW91dCA9PT0gZGVmYXVsdFNldFRpbW91dCB8fCAhY2FjaGVkU2V0VGltZW91dCkgJiYgc2V0VGltZW91dCkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgcmV0dXJuIHNldFRpbWVvdXQoZnVuLCAwKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgLy8gd2hlbiB3aGVuIHNvbWVib2R5IGhhcyBzY3Jld2VkIHdpdGggc2V0VGltZW91dCBidXQgbm8gSS5FLiBtYWRkbmVzc1xuICAgICAgICByZXR1cm4gY2FjaGVkU2V0VGltZW91dChmdW4sIDApO1xuICAgIH0gY2F0Y2goZSl7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBXaGVuIHdlIGFyZSBpbiBJLkUuIGJ1dCB0aGUgc2NyaXB0IGhhcyBiZWVuIGV2YWxlZCBzbyBJLkUuIGRvZXNuJ3QgdHJ1c3QgdGhlIGdsb2JhbCBvYmplY3Qgd2hlbiBjYWxsZWQgbm9ybWFsbHlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwobnVsbCwgZnVuLCAwKTtcbiAgICAgICAgfSBjYXRjaChlKXtcbiAgICAgICAgICAgIC8vIHNhbWUgYXMgYWJvdmUgYnV0IHdoZW4gaXQncyBhIHZlcnNpb24gb2YgSS5FLiB0aGF0IG11c3QgaGF2ZSB0aGUgZ2xvYmFsIG9iamVjdCBmb3IgJ3RoaXMnLCBob3BmdWxseSBvdXIgY29udGV4dCBjb3JyZWN0IG90aGVyd2lzZSBpdCB3aWxsIHRocm93IGEgZ2xvYmFsIGVycm9yXG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkU2V0VGltZW91dC5jYWxsKHRoaXMsIGZ1biwgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxufVxuZnVuY3Rpb24gcnVuQ2xlYXJUaW1lb3V0KG1hcmtlcikge1xuICAgIGlmIChjYWNoZWRDbGVhclRpbWVvdXQgPT09IGNsZWFyVGltZW91dCkge1xuICAgICAgICAvL25vcm1hbCBlbnZpcm9tZW50cyBpbiBzYW5lIHNpdHVhdGlvbnNcbiAgICAgICAgcmV0dXJuIGNsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH1cbiAgICAvLyBpZiBjbGVhclRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRDbGVhclRpbWVvdXQgPT09IGRlZmF1bHRDbGVhclRpbWVvdXQgfHwgIWNhY2hlZENsZWFyVGltZW91dCkgJiYgY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgcmV0dXJuIGNsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRDbGVhclRpbWVvdXQobWFya2VyKTtcbiAgICB9IGNhdGNoIChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCAgdHJ1c3QgdGhlIGdsb2JhbCBvYmplY3Qgd2hlbiBjYWxsZWQgbm9ybWFsbHlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRDbGVhclRpbWVvdXQuY2FsbChudWxsLCBtYXJrZXIpO1xuICAgICAgICB9IGNhdGNoIChlKXtcbiAgICAgICAgICAgIC8vIHNhbWUgYXMgYWJvdmUgYnV0IHdoZW4gaXQncyBhIHZlcnNpb24gb2YgSS5FLiB0aGF0IG11c3QgaGF2ZSB0aGUgZ2xvYmFsIG9iamVjdCBmb3IgJ3RoaXMnLCBob3BmdWxseSBvdXIgY29udGV4dCBjb3JyZWN0IG90aGVyd2lzZSBpdCB3aWxsIHRocm93IGEgZ2xvYmFsIGVycm9yLlxuICAgICAgICAgICAgLy8gU29tZSB2ZXJzaW9ucyBvZiBJLkUuIGhhdmUgZGlmZmVyZW50IHJ1bGVzIGZvciBjbGVhclRpbWVvdXQgdnMgc2V0VGltZW91dFxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKHRoaXMsIG1hcmtlcik7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG59XG52YXIgcXVldWUgPSBbXTtcbnZhciBkcmFpbmluZyA9IGZhbHNlO1xudmFyIGN1cnJlbnRRdWV1ZTtcbnZhciBxdWV1ZUluZGV4ID0gLTE7XG5cbmZ1bmN0aW9uIGNsZWFuVXBOZXh0VGljaygpIHtcbiAgICBpZiAoIWRyYWluaW5nIHx8ICFjdXJyZW50UXVldWUpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIGlmIChjdXJyZW50UXVldWUubGVuZ3RoKSB7XG4gICAgICAgIHF1ZXVlID0gY3VycmVudFF1ZXVlLmNvbmNhdChxdWV1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcXVldWVJbmRleCA9IC0xO1xuICAgIH1cbiAgICBpZiAocXVldWUubGVuZ3RoKSB7XG4gICAgICAgIGRyYWluUXVldWUoKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGRyYWluUXVldWUoKSB7XG4gICAgaWYgKGRyYWluaW5nKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHRpbWVvdXQgPSBydW5UaW1lb3V0KGNsZWFuVXBOZXh0VGljayk7XG4gICAgZHJhaW5pbmcgPSB0cnVlO1xuXG4gICAgdmFyIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB3aGlsZShsZW4pIHtcbiAgICAgICAgY3VycmVudFF1ZXVlID0gcXVldWU7XG4gICAgICAgIHF1ZXVlID0gW107XG4gICAgICAgIHdoaWxlICgrK3F1ZXVlSW5kZXggPCBsZW4pIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50UXVldWUpIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50UXVldWVbcXVldWVJbmRleF0ucnVuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcXVldWVJbmRleCA9IC0xO1xuICAgICAgICBsZW4gPSBxdWV1ZS5sZW5ndGg7XG4gICAgfVxuICAgIGN1cnJlbnRRdWV1ZSA9IG51bGw7XG4gICAgZHJhaW5pbmcgPSBmYWxzZTtcbiAgICBydW5DbGVhclRpbWVvdXQodGltZW91dCk7XG59XG5cbnByb2Nlc3MubmV4dFRpY2sgPSBmdW5jdGlvbiAoZnVuKSB7XG4gICAgdmFyIGFyZ3MgPSBuZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCAtIDEpO1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgYXJnc1tpIC0gMV0gPSBhcmd1bWVudHNbaV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcXVldWUucHVzaChuZXcgSXRlbShmdW4sIGFyZ3MpKTtcbiAgICBpZiAocXVldWUubGVuZ3RoID09PSAxICYmICFkcmFpbmluZykge1xuICAgICAgICBydW5UaW1lb3V0KGRyYWluUXVldWUpO1xuICAgIH1cbn07XG5cbi8vIHY4IGxpa2VzIHByZWRpY3RpYmxlIG9iamVjdHNcbmZ1bmN0aW9uIEl0ZW0oZnVuLCBhcnJheSkge1xuICAgIHRoaXMuZnVuID0gZnVuO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbn1cbkl0ZW0ucHJvdG90eXBlLnJ1biA9IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLmZ1bi5hcHBseShudWxsLCB0aGlzLmFycmF5KTtcbn07XG5wcm9jZXNzLnRpdGxlID0gJ2Jyb3dzZXInO1xucHJvY2Vzcy5icm93c2VyID0gdHJ1ZTtcbnByb2Nlc3MuZW52ID0ge307XG5wcm9jZXNzLmFyZ3YgPSBbXTtcbnByb2Nlc3MudmVyc2lvbiA9ICcnOyAvLyBlbXB0eSBzdHJpbmcgdG8gYXZvaWQgcmVnZXhwIGlzc3Vlc1xucHJvY2Vzcy52ZXJzaW9ucyA9IHt9O1xuXG5mdW5jdGlvbiBub29wKCkge31cblxucHJvY2Vzcy5vbiA9IG5vb3A7XG5wcm9jZXNzLmFkZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3Mub25jZSA9IG5vb3A7XG5wcm9jZXNzLm9mZiA9IG5vb3A7XG5wcm9jZXNzLnJlbW92ZUxpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlQWxsTGlzdGVuZXJzID0gbm9vcDtcbnByb2Nlc3MuZW1pdCA9IG5vb3A7XG5wcm9jZXNzLnByZXBlbmRMaXN0ZW5lciA9IG5vb3A7XG5wcm9jZXNzLnByZXBlbmRPbmNlTGlzdGVuZXIgPSBub29wO1xuXG5wcm9jZXNzLmxpc3RlbmVycyA9IGZ1bmN0aW9uIChuYW1lKSB7IHJldHVybiBbXSB9XG5cbnByb2Nlc3MuYmluZGluZyA9IGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdwcm9jZXNzLmJpbmRpbmcgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcblxucHJvY2Vzcy5jd2QgPSBmdW5jdGlvbiAoKSB7IHJldHVybiAnLycgfTtcbnByb2Nlc3MuY2hkaXIgPSBmdW5jdGlvbiAoZGlyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQnKTtcbn07XG5wcm9jZXNzLnVtYXNrID0gZnVuY3Rpb24oKSB7IHJldHVybiAwOyB9O1xuIiwiZXhwb3J0IGNsYXNzIEJ1dHRvbiB7XHJcbiAgICAjY29udGFpbmVyOiBIVE1MRWxlbWVudCB8IG51bGw7XHJcbiAgICAjc3Jjczogc3RyaW5nW107XHJcbiAgICAjY2FsbGJhY2s6IENhbGxhYmxlRnVuY3Rpb247XHJcbiAgICAjaW1nOiBhbnk7XHJcbiAgICAjc3RhdGU6IG51bWJlciA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZywgc3Jjczogc3RyaW5nW10sIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI3NyY3MgPSBzcmNzO1xyXG4gICAgICAgIHRoaXMuI2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgaWYgKHRoaXMuI2NvbnRhaW5lciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJpbWdcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZy5zcmMgPSB0aGlzLiNzcmNzW3RoaXMuI3N0YXRlXTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuI2ltZyk7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgKCkgPT4gdGhpcy4jb25DbGljaygpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2V0U3RhdGUoc3RhdGU6IG51bWJlcikge1xyXG4gICAgICAgIGlmIChzdGF0ZSA8IHRoaXMuI3NyY3MubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI3N0YXRlID0gc3RhdGU7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZy5zcmMgPSB0aGlzLiNzcmNzW3RoaXMuI3N0YXRlXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdGUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI3N0YXRlO1xyXG4gICAgfVxyXG5cclxuICAgICNvbkNsaWNrKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNpbWcgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHRoaXMuI3N0YXRlIDwgdGhpcy4jc3Jjcy5sZW5ndGggLSAxID8gdGhpcy4jc3RhdGUgKyAxIDogMCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiNjYWxsYmFjaylcclxuICAgICAgICAgICAgICAgIHRoaXMuI2NhbGxiYWNrKHRoaXMuI3N0YXRlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJleHBvcnQgY2xhc3MgRHJvcGRvd24ge1xyXG4gICAgI2NvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsO1xyXG4gICAgI29wdGlvbnM6IHN0cmluZ1tdO1xyXG4gICAgI29wZW4/OiBib29sZWFuO1xyXG4gICAgI2NvbnRlbnQ/OiBIVE1MRWxlbWVudDtcclxuICAgICNjYWxsYmFjaz86IENhbGxhYmxlRnVuY3Rpb247XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZywgb3B0aW9uczogc3RyaW5nW10sIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI29wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgICAgIHRoaXMuI2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpXHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyPy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID8gdGhpcy5jbG9zZSgpIDogdGhpcy5vcGVuKCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwgJiYgdGhpcy4jb3B0aW9ucy5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuaW5uZXJIVE1MID0gdGhpcy4jb3B0aW9uc1swXTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLW9wZW5cIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwib2x5bXB1cy1kcm9wZG93bi1jbG9zZWRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRlbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xyXG4gICAgICAgICAgICB0aGlzLiNjb250ZW50LmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLWNvbnRlbnRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRlbnQuc3R5bGUud2lkdGggPSAodGhpcy4jY29udGFpbmVyLm9mZnNldFdpZHRoIC0gdGhpcy4jY29udGFpbmVyLm9mZnNldEhlaWdodCkgKyBcInB4XCI7XHJcblxyXG4gICAgICAgICAgICB0aGlzLiNjb250ZW50LnN0eWxlLmxlZnQgPSB0aGlzLiNjb250YWluZXIub2Zmc2V0TGVmdCArIFwicHhcIjtcclxuICAgICAgICAgICAgdGhpcy4jY29udGVudC5zdHlsZS50b3AgPSB0aGlzLiNjb250YWluZXIub2Zmc2V0VG9wICsgdGhpcy4jY29udGFpbmVyLm9mZnNldEhlaWdodCArIFwicHhcIjtcclxuICAgICAgICAgICAgY29uc29sZS5sb2codGhpcy4jY29udGFpbmVyKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLiNjb250ZW50KTtcclxuXHJcbiAgICAgICAgICAgIHZhciBoZWlnaHQgPSAyO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBvcHRpb25JRCBpbiB0aGlzLiNvcHRpb25zKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XHJcbiAgICAgICAgICAgICAgICBub2RlLmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLWVsZW1lbnRcIik7XHJcbiAgICAgICAgICAgICAgICBub2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRoaXMuI29wdGlvbnNbb3B0aW9uSURdKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiNjb250ZW50LmFwcGVuZENoaWxkKG5vZGUpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0ICs9IG5vZGUub2Zmc2V0SGVpZ2h0ICsgMjtcclxuICAgICAgICAgICAgICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmlubmVySFRNTCA9IHRoaXMuI29wdGlvbnNbb3B0aW9uSURdO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLiNjYWxsYmFjayAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLiNjYWxsYmFjayh0aGlzLiNvcHRpb25zW29wdGlvbklEXSlcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4jY29udGVudC5zdHlsZS5oZWlnaHQgPSBoZWlnaHQgKyBcInB4XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsb3NlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lcj8uY2xhc3NMaXN0LnJlbW92ZShcIm9seW1wdXMtZHJvcGRvd24tb3BlblwiKTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyPy5jbGFzc0xpc3QuYWRkKFwib2x5bXB1cy1kcm9wZG93bi1jbG9zZWRcIik7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiNjb250ZW50ICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuI2NvbnRlbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImltcG9ydCB7IExhdExuZyB9IGZyb20gXCJsZWFmbGV0XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uU2Nyb2xsIHtcclxuICAgICNjb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbDtcclxuICAgICNkaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoaWQ6IHN0cmluZywpIHtcclxuICAgICAgICB0aGlzLiNjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7XHJcbiAgICAgICAgdGhpcy4jZGlzcGxheSA9ICcnO1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNkaXNwbGF5ID0gdGhpcy4jY29udGFpbmVyLnN0eWxlLmRpc3BsYXk7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzaG93KHg6IG51bWJlciwgeTogbnVtYmVyLCBvcHRpb25zOiBhbnksIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgLyogSGlkZSB0byByZW1vdmUgYnV0dG9ucywgaWYgcHJlc2VudCAqL1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwgJiYgb3B0aW9ucy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gdGhpcy4jZGlzcGxheTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnN0eWxlLmxlZnQgPSB4IC0gMTEwICsgXCJweFwiO1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUudG9wID0geSAtIDExMCArIFwicHhcIjtcclxuXHJcbiAgICAgICAgICAgIGZvciAobGV0IG9wdGlvbklEIGluIG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgICAgIHZhciBub2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKTtcclxuICAgICAgICAgICAgICAgIG5vZGUuY2xhc3NMaXN0LmFkZChcIm9seW1wdXMtc2VsZWN0aW9uLXNjcm9sbC1lbGVtZW50XCIpO1xyXG4gICAgICAgICAgICAgICAgbm9kZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShvcHRpb25zW29wdGlvbklEXSkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmFwcGVuZENoaWxkKG5vZGUpO1xyXG4gICAgICAgICAgICAgICAgbm9kZS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IGNhbGxiYWNrKG9wdGlvbnNbb3B0aW9uSURdKSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoaWRlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgICAgICAgICB2YXIgYnV0dG9ucyA9IHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKFwiLm9seW1wdXMtc2VsZWN0aW9uLXNjcm9sbC1lbGVtZW50XCIpO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBjaGlsZCBvZiBidXR0b25zKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiNjb250YWluZXIucmVtb3ZlQ2hpbGQoY2hpbGQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiaW1wb3J0IHsgZ2V0QWN0aXZlQ29hbGl0aW9uLCBzZXRBY3RpdmVDb2FsaXRpb24gfSBmcm9tIFwiLi5cIjtcclxuaW1wb3J0IHsgZGVnMnJhZCB9IGZyb20gXCIuLi9vdGhlci91dGlsc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvbldoZWVsIHtcclxuICAgICNjb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbDtcclxuICAgICNkaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuI2NvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcclxuICAgICAgICB0aGlzLiNkaXNwbGF5ID0gJyc7XHJcbiAgICAgICAgaWYgKHRoaXMuI2NvbnRhaW5lciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFwiI2NvYWxpdGlvbi1zd2l0Y2hcIik/LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB0aGlzLiNvblN3aXRjaChlKSlcclxuICAgICAgICAgICAgdGhpcy4jZGlzcGxheSA9IHRoaXMuI2NvbnRhaW5lci5zdHlsZS5kaXNwbGF5O1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2hvdyh4OiBudW1iZXIsIHk6IG51bWJlciwgb3B0aW9uczogYW55LCBzaG93Q29hbGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgLyogSGlkZSB0byByZW1vdmUgYnV0dG9ucywgaWYgcHJlc2VudCAqL1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSB0aGlzLiNkaXNwbGF5O1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUubGVmdCA9IHggLSAxMTAgKyBcInB4XCI7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5zdHlsZS50b3AgPSB5IC0gMTEwICsgXCJweFwiO1xyXG5cclxuICAgICAgICAgICAgdmFyIGFuZ3VsYXJTaXplID0gMzYwIC8gb3B0aW9ucy5sZW5ndGg7XHJcbiAgICAgICAgICAgIHZhciByID0gODA7XHJcblxyXG4gICAgICAgICAgICAvKiBDcmVhdGUgdGhlIGJ1dHRvbnMgKi9cclxuICAgICAgICAgICAgZm9yIChsZXQgaWQgaW4gb3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgdmFyIGJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uY2xhc3NMaXN0LmFkZChcInNlbGVjdGlvbi13aGVlbC1idXR0b25cIik7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUubGVmdCA9IHggLSAyNSArIFwicHhcIjtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbi5zdHlsZS50b3AgPSB5IC0gMjUgKyBcInB4XCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gb3B0aW9uc1tpZF0uY2FsbGJhY2soZSkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmFwcGVuZENoaWxkKGJ1dHRvbik7XHJcbiAgICAgICAgICAgICAgICB2YXIgYW5nbGUgPSBwYXJzZUludChpZCkgKiBhbmd1bGFyU2l6ZTtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbi5zdHlsZS5vcGFjaXR5ID0gXCIxXCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUubGVmdCA9IHggKyByICogTWF0aC5zaW4oZGVnMnJhZChhbmdsZSkpIC0gMjUgKyBcInB4XCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUudG9wID0geSAtIHIgKiBNYXRoLmNvcyhkZWcycmFkKGFuZ2xlKSkgLSAyNSArIFwicHhcIjtcclxuXHJcbiAgICAgICAgICAgICAgICB2YXIgaW1hZ2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW1nXCIpO1xyXG4gICAgICAgICAgICAgICAgaW1hZ2UuY2xhc3NMaXN0LmFkZChcInNlbGVjdGlvbi13aGVlbC1pbWFnZVwiKTtcclxuICAgICAgICAgICAgICAgIGltYWdlLnNyYyA9IGBpbWFnZXMvYnV0dG9ucy8ke29wdGlvbnNbaWRdLnNyY31gXHJcbiAgICAgICAgICAgICAgICBpbWFnZS50aXRsZSA9IG9wdGlvbnNbaWRdLnRvb2x0aXA7XHJcbiAgICAgICAgICAgICAgICBpZiAoJ3RpbnQnIGluIG9wdGlvbnNbaWRdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgb3B0aW9uc1tpZF0udGludCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2Uuc3R5bGUub3BhY2l0eSA9IFwiMFwiO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYnV0dG9uLmFwcGVuZENoaWxkKGltYWdlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLyogSGlkZSB0aGUgY29hbGl0aW9uIHN3aXRjaCBpZiByZXF1aXJlZCAqL1xyXG4gICAgICAgICAgICB2YXIgc3dpdGNoQ29udGFpbmVyID0gPEhUTUxFbGVtZW50PnRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFwiI2NvYWxpdGlvbi1zd2l0Y2gtY29udGFpbmVyXCIpO1xyXG4gICAgICAgICAgICBpZiAoc2hvd0NvYWxpdGlvbiA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLW5ldXRyYWwtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHN3aXRjaENvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xyXG4gICAgICAgICAgICAgICAgaWYgKGdldEFjdGl2ZUNvYWxpdGlvbigpID09IFwiYmx1ZVwiKVxyXG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLWJsdWUtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tYWN0aXZlLWNvYWxpdGlvbi1jb2xvcicsIGdldENvbXB1dGVkU3R5bGUodGhpcy4jY29udGFpbmVyKS5nZXRQcm9wZXJ0eVZhbHVlKFwiLS1yZWQtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoaWRlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgICAgICAgICB2YXIgYnV0dG9ucyA9IHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKFwiLnNlbGVjdGlvbi13aGVlbC1idXR0b25cIik7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGNoaWxkIG9mIGJ1dHRvbnMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5yZW1vdmVDaGlsZChjaGlsZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI29uU3dpdGNoKGU6IGFueSkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBpZiAoZS5jdXJyZW50VGFyZ2V0LmNoZWNrZWQpIHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLXJlZC1jb2FsaXRpb24tY29sb3JcIikpO1xyXG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlQ29hbGl0aW9uKFwicmVkXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWFjdGl2ZS1jb2FsaXRpb24tY29sb3InLCBnZXRDb21wdXRlZFN0eWxlKHRoaXMuI2NvbnRhaW5lcikuZ2V0UHJvcGVydHlWYWx1ZShcIi0tYmx1ZS1jb2FsaXRpb24tY29sb3JcIikpO1xyXG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlQ29hbGl0aW9uKFwiYmx1ZVwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCdcclxuaW1wb3J0IHsgZ2V0VW5pdHNNYW5hZ2VyLCBzZXRDb25uZWN0ZWQgfSBmcm9tICcuLic7XHJcbmltcG9ydCB7IENvbnZlcnRERFRvRE1TIH0gZnJvbSAnLi4vb3RoZXIvdXRpbHMnO1xyXG5cclxuLyogRWRpdCBoZXJlIHRvIGNoYW5nZSBzZXJ2ZXIgYWRkcmVzcyAqL1xyXG52YXIgUkVTVGFkZHJlc3MgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6MzAwMDAvcmVzdGRlbW9cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRhRnJvbURDUyhjYWxsYmFjazogQ2FsbGFibGVGdW5jdGlvbikge1xyXG4gICAgLyogUmVxdWVzdCB0aGUgdXBkYXRlZCB1bml0IGRhdGEgZnJvbSB0aGUgc2VydmVyICovXHJcbiAgICB2YXIgeG1sSHR0cCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeG1sSHR0cC5vcGVuKFwiR0VUXCIsIFJFU1RhZGRyZXNzLCB0cnVlKTtcclxuXHJcbiAgICB4bWxIdHRwLm9ubG9hZCA9IGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgdmFyIGRhdGEgPSBKU09OLnBhcnNlKHhtbEh0dHAucmVzcG9uc2VUZXh0KTtcclxuICAgICAgICBjYWxsYmFjayhkYXRhKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWQodHJ1ZSk7XHJcbiAgICB9O1xyXG5cclxuICAgIHhtbEh0dHAub25lcnJvciA9IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKFwiQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHRoZSBYTUxIdHRwUmVxdWVzdFwiKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWQoZmFsc2UpO1xyXG4gICAgfTtcclxuICAgIHhtbEh0dHAuc2VuZChudWxsKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZERlc3RpbmF0aW9uKElEOiBudW1iZXIsIHBhdGg6IGFueSkge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHsgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJJRFwiOiBJRCwgXCJwYXRoXCI6IHBhdGggfVxyXG4gICAgdmFyIGRhdGEgPSB7IFwic2V0UGF0aFwiOiBjb21tYW5kIH1cclxuXHJcbiAgICB4aHIuc2VuZChKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzcGF3blNtb2tlKGNvbG9yOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcpIHtcclxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcclxuICAgIHhoci5vcGVuKFwiUFVUXCIsIFJFU1RhZGRyZXNzKTtcclxuICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiQWRkZWQgXCIgKyBjb2xvciArIFwiIHNtb2tlIGF0IFwiICsgQ29udmVydEREVG9ETVMobGF0bG5nLmxhdCwgZmFsc2UpICsgXCIgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubG5nLCB0cnVlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJjb2xvclwiOiBjb2xvciwgXCJsb2NhdGlvblwiOiBsYXRsbmcgfTtcclxuICAgIHZhciBkYXRhID0geyBcInNtb2tlXCI6IGNvbW1hbmQgfVxyXG5cclxuICAgIHhoci5zZW5kKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNwYXduR3JvdW5kVW5pdCh0eXBlOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcsIGNvYWxpdGlvbjogc3RyaW5nKSB7XHJcbiAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICB4aHIub3BlbihcIlBVVFwiLCBSRVNUYWRkcmVzcyk7XHJcbiAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLCBcImFwcGxpY2F0aW9uL2pzb25cIik7XHJcbiAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkFkZGVkIFwiICsgY29hbGl0aW9uICsgXCIgXCIgKyB0eXBlICsgXCIgYXQgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubGF0LCBmYWxzZSkgKyBcIiBcIiArIENvbnZlcnRERFRvRE1TKGxhdGxuZy5sbmcsIHRydWUpKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHZhciBjb21tYW5kID0geyBcInR5cGVcIjogdHlwZSwgXCJsb2NhdGlvblwiOiBsYXRsbmcsIFwiY29hbGl0aW9uXCI6IGNvYWxpdGlvbiB9O1xyXG4gICAgdmFyIGRhdGEgPSB7IFwic3Bhd25Hcm91bmRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3Bhd25BaXJjcmFmdCh0eXBlOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcsIGNvYWxpdGlvbjogc3RyaW5nLCBwYXlsb2FkTmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGwsIGFpcmJhc2VOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbCkge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJBZGRlZCBcIiArIGNvYWxpdGlvbiArIFwiIFwiICsgdHlwZSArIFwiIGF0IFwiICsgQ29udmVydEREVG9ETVMobGF0bG5nLmxhdCwgZmFsc2UpICsgXCIgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubG5nLCB0cnVlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJ0eXBlXCI6IHR5cGUsIFwibG9jYXRpb25cIjogbGF0bG5nLCBcImNvYWxpdGlvblwiOiBjb2FsaXRpb24sIFwicGF5bG9hZE5hbWVcIjogcGF5bG9hZE5hbWUgIT0gbnVsbD8gcGF5bG9hZE5hbWU6IFwiXCIsIFwiYWlyYmFzZU5hbWVcIjogYWlyYmFzZU5hbWUgIT0gbnVsbD8gYWlyYmFzZU5hbWU6IFwiXCJ9O1xyXG4gICAgdmFyIGRhdGEgPSB7IFwic3Bhd25BaXJcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXR0YWNrVW5pdChJRDogbnVtYmVyLCB0YXJnZXRJRDogbnVtYmVyKSB7XHJcbiAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICB4aHIub3BlbihcIlBVVFwiLCBSRVNUYWRkcmVzcyk7XHJcbiAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLCBcImFwcGxpY2F0aW9uL2pzb25cIik7XHJcbiAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIlVuaXQgXCIgKyBnZXRVbml0c01hbmFnZXIoKS5nZXRVbml0QnlJRChJRCkudW5pdE5hbWUgKyBcIiBhdHRhY2sgXCIgKyBnZXRVbml0c01hbmFnZXIoKS5nZXRVbml0QnlJRCh0YXJnZXRJRCkudW5pdE5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdmFyIGNvbW1hbmQgPSB7IFwiSURcIjogSUQsIFwidGFyZ2V0SURcIjogdGFyZ2V0SUQgfTtcclxuICAgIHZhciBkYXRhID0geyBcImF0dGFja1VuaXRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVVbml0KElEOiBudW1iZXIpIHtcclxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcclxuICAgIHhoci5vcGVuKFwiUFVUXCIsIFJFU1RhZGRyZXNzKTtcclxuICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiVW5pdCBcIiArIGdldFVuaXRzTWFuYWdlcigpLmdldFVuaXRCeUlEKElEKS51bml0TmFtZSArIFwiIGNsb25lZFwiKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHZhciBjb21tYW5kID0geyBcIklEXCI6IElEIH07XHJcbiAgICB2YXIgZGF0YSA9IHsgXCJjbG9uZVVuaXRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2hhbmdlU3BlZWQoSUQ6IG51bWJlciwgc3BlZWRDaGFuZ2U6IHN0cmluZykge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZ2V0VW5pdHNNYW5hZ2VyKCkuZ2V0VW5pdEJ5SUQoSUQpLnVuaXROYW1lICsgXCIgc3BlZWQgY2hhbmdlIHJlcXVlc3Q6IFwiICsgc3BlZWRDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbiAgIFxyXG4gICAgdmFyIGNvbW1hbmQgPSB7XCJJRFwiOiBJRCwgXCJjaGFuZ2VcIjogc3BlZWRDaGFuZ2V9XHJcbiAgICB2YXIgZGF0YSA9IHtcImNoYW5nZVNwZWVkXCI6IGNvbW1hbmR9XHJcbiAgIFxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2hhbmdlQWx0aXR1ZGUoSUQ6IG51bWJlciwgYWx0aXR1ZGVDaGFuZ2U6IHN0cmluZykge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZ2V0VW5pdHNNYW5hZ2VyKCkuZ2V0VW5pdEJ5SUQoSUQpLnVuaXROYW1lICsgXCIgYWx0aXR1ZGUgY2hhbmdlIHJlcXVlc3Q6IFwiICsgYWx0aXR1ZGVDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdmFyIGNvbW1hbmQgPSB7XCJJRFwiOiBJRCwgXCJjaGFuZ2VcIjogYWx0aXR1ZGVDaGFuZ2V9XHJcbiAgICB2YXIgZGF0YSA9IHtcImNoYW5nZUFsdGl0dWRlXCI6IGNvbW1hbmR9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59IiwiaW1wb3J0IHsgTWFwIH0gZnJvbSBcIi4vbWFwL21hcFwiXHJcbmltcG9ydCB7IGdldERhdGFGcm9tRENTIH0gZnJvbSBcIi4vZGNzL2Rjc1wiXHJcbmltcG9ydCB7IFNlbGVjdGlvbldoZWVsIH0gZnJvbSBcIi4vY29udHJvbHMvc2VsZWN0aW9ud2hlZWxcIjtcclxuaW1wb3J0IHsgVW5pdHNNYW5hZ2VyIH0gZnJvbSBcIi4vdW5pdHMvdW5pdHNtYW5hZ2VyXCI7XHJcbmltcG9ydCB7IFVuaXRJbmZvUGFuZWwgfSBmcm9tIFwiLi9wYW5lbHMvdW5pdGluZm9wYW5lbFwiO1xyXG5pbXBvcnQgeyBTZWxlY3Rpb25TY3JvbGwgfSBmcm9tIFwiLi9jb250cm9scy9zZWxlY3Rpb25zY3JvbGxcIjtcclxuaW1wb3J0IHsgRHJvcGRvd24gfSBmcm9tIFwiLi9jb250cm9scy9kcm9wZG93blwiO1xyXG5pbXBvcnQgeyBDb25uZWN0aW9uU3RhdHVzUGFuZWwgfSBmcm9tIFwiLi9wYW5lbHMvY29ubmVjdGlvbnN0YXR1c3BhbmVsXCI7XHJcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gXCIuL2NvbnRyb2xzL2J1dHRvblwiO1xyXG5pbXBvcnQgeyBNaXNzaW9uRGF0YSB9IGZyb20gXCIuL21pc3Npb25kYXRhL21pc3Npb25kYXRhXCI7XHJcblxyXG4vKiBUT0RPOiBzaG91bGQgdGhpcyBiZSBhIGNsYXNzPyAqL1xyXG52YXIgbWFwOiBNYXA7XHJcbnZhciBzZWxlY3Rpb25XaGVlbDogU2VsZWN0aW9uV2hlZWw7XHJcbnZhciBzZWxlY3Rpb25TY3JvbGw6IFNlbGVjdGlvblNjcm9sbDtcclxudmFyIHVuaXRzTWFuYWdlcjogVW5pdHNNYW5hZ2VyO1xyXG52YXIgdW5pdEluZm9QYW5lbDogVW5pdEluZm9QYW5lbDtcclxudmFyIGFjdGl2ZUNvYWxpdGlvbjogc3RyaW5nO1xyXG52YXIgc2NlbmFyaW9Ecm9wZG93bjogRHJvcGRvd247XHJcbnZhciBtYXBTb3VyY2VEcm9wZG93bjogRHJvcGRvd247XHJcbnZhciBjb25uZWN0ZWQ6IGJvb2xlYW47XHJcbnZhciBjb25uZWN0aW9uU3RhdHVzUGFuZWw6IENvbm5lY3Rpb25TdGF0dXNQYW5lbDtcclxudmFyIG1pc3Npb25EYXRhOiBNaXNzaW9uRGF0YTtcclxuXHJcbnZhciBzbG93QnV0dG9uOiBCdXR0b247XHJcbnZhciBmYXN0QnV0dG9uOiBCdXR0b247XHJcbnZhciBjbGltYkJ1dHRvbjogQnV0dG9uO1xyXG52YXIgZGVzY2VuZEJ1dHRvbjogQnV0dG9uO1xyXG52YXIgdXNlclZpc2liaWxpdHlCdXR0b246IEJ1dHRvbjtcclxudmFyIGFpVmlzaWJpbGl0eUJ1dHRvbjogQnV0dG9uO1xyXG52YXIgd2VhcG9uVmlzaWJpbGl0eUJ1dHRvbjogQnV0dG9uO1xyXG52YXIgZGVhZFZpc2liaWxpdHlCdXR0b246IEJ1dHRvbjtcclxuXHJcbmZ1bmN0aW9uIHNldHVwKCkge1xyXG4gICAgLyogSW5pdGlhbGl6ZSAqL1xyXG4gICAgbWFwID0gbmV3IE1hcCgnbWFwLWNvbnRhaW5lcicpO1xyXG4gICAgc2VsZWN0aW9uV2hlZWwgPSBuZXcgU2VsZWN0aW9uV2hlZWwoXCJzZWxlY3Rpb24td2hlZWxcIik7XHJcbiAgICBzZWxlY3Rpb25TY3JvbGwgPSBuZXcgU2VsZWN0aW9uU2Nyb2xsKFwic2VsZWN0aW9uLXNjcm9sbFwiKTtcclxuICAgIHVuaXRzTWFuYWdlciA9IG5ldyBVbml0c01hbmFnZXIoKTtcclxuICAgIHVuaXRJbmZvUGFuZWwgPSBuZXcgVW5pdEluZm9QYW5lbChcInVuaXQtaW5mby1wYW5lbFwiKTtcclxuICAgIHNjZW5hcmlvRHJvcGRvd24gPSBuZXcgRHJvcGRvd24oXCJzY2VuYXJpby1kcm9wZG93blwiLCBbXCJDYXVjYXN1c1wiLCBcIlN5cmlhXCIsIFwiTmV2YWRhXCIsIFwiTWFyaWFuYXNcIiwgXCJTb3V0aCBBdGxhbnRpY1wiLCBcIlRoZSBjaGFubmVsXCJdLCAoKSA9PiB7IH0pO1xyXG4gICAgbWFwU291cmNlRHJvcGRvd24gPSBuZXcgRHJvcGRvd24oXCJtYXAtc291cmNlLWRyb3Bkb3duXCIsIG1hcC5nZXRMYXllcnMoKSwgKG9wdGlvbjogc3RyaW5nKSA9PiBtYXAuc2V0TGF5ZXIob3B0aW9uKSk7XHJcbiAgICBjb25uZWN0aW9uU3RhdHVzUGFuZWwgPSBuZXcgQ29ubmVjdGlvblN0YXR1c1BhbmVsKFwiY29ubmVjdGlvbi1zdGF0dXMtcGFuZWxcIik7XHJcbiAgICBtaXNzaW9uRGF0YSA9IG5ldyBNaXNzaW9uRGF0YSgpO1xyXG5cclxuICAgIC8qIFVuaXQgY29udHJvbCBidXR0b25zICovXHJcbiAgICBzbG93QnV0dG9uID0gbmV3IEJ1dHRvbihcInNsb3ctYnV0dG9uXCIsIFtcImltYWdlcy9idXR0b25zL3Nsb3cuc3ZnXCJdLCAoKSA9PiB7IGdldFVuaXRzTWFuYWdlcigpLnNlbGVjdGVkVW5pdHNDaGFuZ2VTcGVlZChcInNsb3dcIik7IH0pO1xyXG4gICAgZmFzdEJ1dHRvbiA9IG5ldyBCdXR0b24oXCJmYXN0LWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9mYXN0LnN2Z1wiXSwgKCkgPT4geyBnZXRVbml0c01hbmFnZXIoKS5zZWxlY3RlZFVuaXRzQ2hhbmdlU3BlZWQoXCJmYXN0XCIpOyB9KTtcclxuICAgIGNsaW1iQnV0dG9uID0gbmV3IEJ1dHRvbihcImNsaW1iLWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9jbGltYi5zdmdcIl0sICgpID0+IHsgZ2V0VW5pdHNNYW5hZ2VyKCkuc2VsZWN0ZWRVbml0c0NoYW5nZUFsdGl0dWRlKFwiY2xpbWJcIik7IH0pO1xyXG4gICAgZGVzY2VuZEJ1dHRvbiA9IG5ldyBCdXR0b24oXCJkZXNjZW5kLWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9kZXNjZW5kLnN2Z1wiXSwgKCkgPT4geyBnZXRVbml0c01hbmFnZXIoKS5zZWxlY3RlZFVuaXRzQ2hhbmdlQWx0aXR1ZGUoXCJkZXNjZW5kXCIpOyB9KTtcclxuXHJcbiAgICAvKiBWaXNpYmlsaXR5IGJ1dHRvbnMgKi9cclxuICAgIHVzZXJWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcInVzZXItdmlzaWJpbGl0eS1idXR0b25cIiwgW1wiaW1hZ2VzL2J1dHRvbnMvdXNlci1mdWxsLnN2Z1wiLCBcImltYWdlcy9idXR0b25zL3VzZXItcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy91c2VyLW5vbmUuc3ZnXCIsIFwiaW1hZ2VzL2J1dHRvbnMvdXNlci1oaWRkZW4uc3ZnXCJdLCAoKSA9PiB7IH0pO1xyXG4gICAgYWlWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcImFpLXZpc2liaWxpdHktYnV0dG9uXCIsIFtcImltYWdlcy9idXR0b25zL2FpLWZ1bGwuc3ZnXCIsIFwiaW1hZ2VzL2J1dHRvbnMvYWktcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy9haS1ub25lLnN2Z1wiLCBcImltYWdlcy9idXR0b25zL2FpLWhpZGRlbi5zdmdcIl0sICgpID0+IHsgfSk7XHJcbiAgICB3ZWFwb25WaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcIndlYXBvbi12aXNpYmlsaXR5LWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24tcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24tbm9uZS5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24taGlkZGVuLnN2Z1wiXSwgKCkgPT4geyB9KTtcclxuICAgIGRlYWRWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcImRlYWQtdmlzaWJpbGl0eS1idXR0b25cIiwgW1wiaW1hZ2VzL2J1dHRvbnMvZGVhZC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy9kZWFkLWhpZGRlbi5zdmdcIl0sICgpID0+IHsgfSk7XHJcblxyXG4gICAgYWlWaXNpYmlsaXR5QnV0dG9uLnNldFN0YXRlKDEpO1xyXG4gICAgd2VhcG9uVmlzaWJpbGl0eUJ1dHRvbi5zZXRTdGF0ZSgxKTtcclxuICAgIGRlYWRWaXNpYmlsaXR5QnV0dG9uLnNldFN0YXRlKDEpO1xyXG5cclxuICAgIC8qIERlZmF1bHQgdmFsdWVzICovXHJcbiAgICBhY3RpdmVDb2FsaXRpb24gPSBcImJsdWVcIjtcclxuICAgIGNvbm5lY3RlZCA9IGZhbHNlO1xyXG5cclxuICAgIHJlcXVlc3RVcGRhdGUoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVxdWVzdFVwZGF0ZSgpIHtcclxuICAgIGdldERhdGFGcm9tRENTKHVwZGF0ZSk7XHJcbiAgICAvKiBNYWluIHVwZGF0ZSByYXRlID0gMjUwbXMgaXMgbWluaW11bSB0aW1lLCBlcXVhbCB0byBzZXJ2ZXIgdXBkYXRlIHRpbWUuICovXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHJlcXVlc3RVcGRhdGUoKSwgZ2V0Q29ubmVjdGVkKCkgPyAyNTAgOiAxMDAwKTtcclxuICAgIGNvbm5lY3Rpb25TdGF0dXNQYW5lbC51cGRhdGUoZ2V0Q29ubmVjdGVkKCkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlKGRhdGE6IEpTT04pIHtcclxuICAgIHVuaXRzTWFuYWdlci51cGRhdGUoZGF0YSk7XHJcbiAgICBtaXNzaW9uRGF0YS51cGRhdGUoZGF0YSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXAoKSB7XHJcbiAgICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VsZWN0aW9uV2hlZWwoKSB7XHJcbiAgICByZXR1cm4gc2VsZWN0aW9uV2hlZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWxlY3Rpb25TY3JvbGwoKSB7XHJcbiAgICByZXR1cm4gc2VsZWN0aW9uU2Nyb2xsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VW5pdHNNYW5hZ2VyKCkge1xyXG4gICAgcmV0dXJuIHVuaXRzTWFuYWdlcjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFVuaXRJbmZvUGFuZWwoKSB7XHJcbiAgICByZXR1cm4gdW5pdEluZm9QYW5lbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEFjdGl2ZUNvYWxpdGlvbihuZXdBY3RpdmVDb2FsaXRpb246IHN0cmluZykge1xyXG4gICAgYWN0aXZlQ29hbGl0aW9uID0gbmV3QWN0aXZlQ29hbGl0aW9uO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aXZlQ29hbGl0aW9uKCkge1xyXG4gICAgcmV0dXJuIGFjdGl2ZUNvYWxpdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldENvbm5lY3RlZChuZXdDb25uZWN0ZWQ6IGJvb2xlYW4pIHtcclxuICAgIGNvbm5lY3RlZCA9IG5ld0Nvbm5lY3RlZFxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29ubmVjdGVkKCkge1xyXG4gICAgcmV0dXJuIGNvbm5lY3RlZDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFZpc2liaWxpdHlTZXR0aW5ncygpIHtcclxuICAgIHZhciB2aXNpYmlsaXR5ID0ge1xyXG4gICAgICAgIHVzZXI6IFwiXCIsXHJcbiAgICAgICAgYWk6IFwiXCIsXHJcbiAgICAgICAgd2VhcG9uOiBcIlwiLFxyXG4gICAgICAgIGRlYWQ6IFwiXCJcclxuICAgIH07XHJcblxyXG4gICAgc3dpdGNoICh1c2VyVmlzaWJpbGl0eUJ1dHRvbi5nZXRTdGF0ZSgpKSB7XHJcbiAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcImZ1bGxcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcInBhcnRpYWxcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcImhpZGRlblwiOyBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKGFpVmlzaWJpbGl0eUJ1dHRvbi5nZXRTdGF0ZSgpKSB7XHJcbiAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LmFpID0gXCJmdWxsXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5haSA9IFwicGFydGlhbFwiOyBicmVhaztcclxuICAgICAgICBjYXNlIDI6XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHkuYWkgPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LmFpID0gXCJoaWRkZW5cIjsgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgc3dpdGNoICh3ZWFwb25WaXNpYmlsaXR5QnV0dG9uLmdldFN0YXRlKCkpIHtcclxuICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHkud2VhcG9uID0gXCJwYXJ0aWFsXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS53ZWFwb24gPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LndlYXBvbiA9IFwiaGlkZGVuXCI7IGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIHN3aXRjaCAoZGVhZFZpc2liaWxpdHlCdXR0b24uZ2V0U3RhdGUoKSkge1xyXG4gICAgICAgIGNhc2UgMDpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5kZWFkID0gXCJub25lXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5kZWFkID0gXCJoaWRkZW5cIjsgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmlzaWJpbGl0eTtcclxufVxyXG5cclxud2luZG93Lm9ubG9hZCA9IHNldHVwOyIsImltcG9ydCB7IE1hcCB9IGZyb20gJ2xlYWZsZXQnO1xyXG5pbXBvcnQgeyBIYW5kbGVyfSBmcm9tICdsZWFmbGV0JztcclxuaW1wb3J0IHsgVXRpbCB9IGZyb20gJ2xlYWZsZXQnO1xyXG5pbXBvcnQgeyBEb21VdGlsIH0gZnJvbSAnbGVhZmxldCc7XHJcbmltcG9ydCB7IERvbUV2ZW50IH0gZnJvbSAnbGVhZmxldCc7XHJcbmltcG9ydCB7IExhdExuZ0JvdW5kcyB9IGZyb20gJ2xlYWZsZXQnO1xyXG5pbXBvcnQgeyBCb3VuZHMgfSAgZnJvbSAnbGVhZmxldCc7XHJcblxyXG5leHBvcnQgdmFyIEJveFNlbGVjdCA9IEhhbmRsZXIuZXh0ZW5kKHtcclxuXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobWFwOiBNYXApIHtcclxuXHRcdHRoaXMuX21hcCA9IG1hcDtcclxuXHRcdHRoaXMuX2NvbnRhaW5lciA9IG1hcC5nZXRDb250YWluZXIoKTtcclxuXHRcdHRoaXMuX3BhbmUgPSBtYXAuZ2V0UGFuZXMoKS5vdmVybGF5UGFuZTtcclxuXHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcclxuXHRcdG1hcC5vbigndW5sb2FkJywgdGhpcy5fZGVzdHJveSwgdGhpcyk7XHJcblx0fSxcclxuXHJcblx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcclxuXHRcdERvbUV2ZW50Lm9uKHRoaXMuX2NvbnRhaW5lciwgJ21vdXNlZG93bicsIHRoaXMuX29uTW91c2VEb3duLCB0aGlzKTtcclxuXHR9LFxyXG5cclxuXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xyXG5cdFx0RG9tRXZlbnQub2ZmKHRoaXMuX2NvbnRhaW5lciwgJ21vdXNlZG93bicsIHRoaXMuX29uTW91c2VEb3duLCB0aGlzKTtcclxuXHR9LFxyXG5cclxuXHRtb3ZlZDogZnVuY3Rpb24gKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuX21vdmVkO1xyXG5cdH0sXHJcblxyXG5cdF9kZXN0cm95OiBmdW5jdGlvbiAoKSB7XHJcblx0XHREb21VdGlsLnJlbW92ZSh0aGlzLl9wYW5lKTtcclxuXHRcdGRlbGV0ZSB0aGlzLl9wYW5lO1xyXG5cdH0sXHJcblxyXG5cdF9yZXNldFN0YXRlOiBmdW5jdGlvbiAoKSB7XHJcblx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XHJcblx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xyXG5cdH0sXHJcblxyXG5cdF9jbGVhckRlZmVycmVkUmVzZXRTdGF0ZTogZnVuY3Rpb24gKCkge1xyXG5cdFx0aWYgKHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ICE9PSAwKSB7XHJcblx0XHRcdGNsZWFyVGltZW91dCh0aGlzLl9yZXNldFN0YXRlVGltZW91dCk7XHJcblx0XHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcclxuXHRcdH1cclxuXHR9LFxyXG5cclxuXHRfb25Nb3VzZURvd246IGZ1bmN0aW9uIChlOiBhbnkpIHtcclxuXHRcdGlmICgoKGUud2hpY2ggIT09IDMpICYmIChlLmJ1dHRvbiAhPT0gMikpKSB7IHJldHVybiBmYWxzZTsgfVxyXG5cclxuXHRcdC8vIENsZWFyIHRoZSBkZWZlcnJlZCByZXNldFN0YXRlIGlmIGl0IGhhc24ndCBleGVjdXRlZCB5ZXQsIG90aGVyd2lzZSBpdFxyXG5cdFx0Ly8gd2lsbCBpbnRlcnJ1cHQgdGhlIGludGVyYWN0aW9uIGFuZCBvcnBoYW4gYSBib3ggZWxlbWVudCBpbiB0aGUgY29udGFpbmVyLlxyXG5cdFx0dGhpcy5fY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGUoKTtcclxuXHRcdHRoaXMuX3Jlc2V0U3RhdGUoKTtcclxuXHJcblx0XHREb21VdGlsLmRpc2FibGVUZXh0U2VsZWN0aW9uKCk7XHJcblx0XHREb21VdGlsLmRpc2FibGVJbWFnZURyYWcoKTtcclxuXHJcblx0XHR0aGlzLl9zdGFydFBvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xyXG5cclxuXHRcdC8vQHRzLWlnbm9yZVxyXG5cdFx0RG9tRXZlbnQub24oZG9jdW1lbnQsIHtcclxuXHRcdFx0Y29udGV4dG1lbnU6IERvbUV2ZW50LnN0b3AsXHJcblx0XHRcdG1vdXNlbW92ZTogdGhpcy5fb25Nb3VzZU1vdmUsXHJcblx0XHRcdG1vdXNldXA6IHRoaXMuX29uTW91c2VVcCxcclxuXHRcdFx0a2V5ZG93bjogdGhpcy5fb25LZXlEb3duXHJcblx0XHR9LCB0aGlzKTtcclxuXHR9LFxyXG5cclxuXHRfb25Nb3VzZU1vdmU6IGZ1bmN0aW9uIChlOiBhbnkpIHtcclxuXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcclxuXHRcdFx0dGhpcy5fbW92ZWQgPSB0cnVlO1xyXG5cclxuXHRcdFx0dGhpcy5fYm94ID0gRG9tVXRpbC5jcmVhdGUoJ2RpdicsICdsZWFmbGV0LXpvb20tYm94JywgdGhpcy5fY29udGFpbmVyKTtcclxuXHRcdFx0RG9tVXRpbC5hZGRDbGFzcyh0aGlzLl9jb250YWluZXIsICdsZWFmbGV0LWNyb3NzaGFpcicpO1xyXG5cclxuXHRcdFx0dGhpcy5fbWFwLmZpcmUoJ2JveHpvb21zdGFydCcpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMuX3BvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xyXG5cclxuXHRcdHZhciBib3VuZHMgPSBuZXcgQm91bmRzKHRoaXMuX3BvaW50LCB0aGlzLl9zdGFydFBvaW50KSxcclxuXHRcdCAgICBzaXplID0gYm91bmRzLmdldFNpemUoKTtcclxuXHJcblx0XHRpZiAoYm91bmRzLm1pbiAhPSB1bmRlZmluZWQpXHJcblx0XHRcdERvbVV0aWwuc2V0UG9zaXRpb24odGhpcy5fYm94LCBib3VuZHMubWluKTtcclxuXHJcblx0XHR0aGlzLl9ib3guc3R5bGUud2lkdGggID0gc2l6ZS54ICsgJ3B4JztcclxuXHRcdHRoaXMuX2JveC5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xyXG5cdH0sXHJcblxyXG5cdF9maW5pc2g6IGZ1bmN0aW9uICgpIHtcclxuXHRcdGlmICh0aGlzLl9tb3ZlZCkge1xyXG5cdFx0XHREb21VdGlsLnJlbW92ZSh0aGlzLl9ib3gpO1xyXG5cdFx0XHREb21VdGlsLnJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XHJcblx0XHR9XHJcblxyXG5cdFx0RG9tVXRpbC5lbmFibGVUZXh0U2VsZWN0aW9uKCk7XHJcblx0XHREb21VdGlsLmVuYWJsZUltYWdlRHJhZygpO1xyXG5cclxuXHRcdC8vQHRzLWlnbm9yZVxyXG5cdFx0RG9tRXZlbnQub2ZmKGRvY3VtZW50LCB7XHJcblx0XHRcdGNvbnRleHRtZW51OiBEb21FdmVudC5zdG9wLFxyXG5cdFx0XHRtb3VzZW1vdmU6IHRoaXMuX29uTW91c2VNb3ZlLFxyXG5cdFx0XHRtb3VzZXVwOiB0aGlzLl9vbk1vdXNlVXAsXHJcblx0XHRcdGtleWRvd246IHRoaXMuX29uS2V5RG93blxyXG5cdFx0fSwgdGhpcyk7XHJcblx0fSxcclxuXHJcblx0X29uTW91c2VVcDogZnVuY3Rpb24gKGU6IGFueSkge1xyXG5cdFx0aWYgKChlLndoaWNoICE9PSAzKSAmJiAoZS5idXR0b24gIT09IDIpKSB7IHJldHVybjsgfVxyXG5cclxuXHRcdHRoaXMuX2ZpbmlzaCgpO1xyXG4gICAgICAgIFxyXG5cdFx0aWYgKCF0aGlzLl9tb3ZlZCkgeyByZXR1cm47IH1cclxuXHRcdC8vIFBvc3Rwb25lIHRvIG5leHQgSlMgdGljayBzbyBpbnRlcm5hbCBjbGljayBldmVudCBoYW5kbGluZ1xyXG5cdFx0Ly8gc3RpbGwgc2VlIGl0IGFzIFwibW92ZWRcIi5cclxuXHRcdHNldFRpbWVvdXQoVXRpbC5iaW5kKHRoaXMuX3Jlc2V0U3RhdGUsIHRoaXMpLCAwKTtcclxuXHRcdHZhciBib3VuZHMgPSBuZXcgTGF0TG5nQm91bmRzKFxyXG5cdFx0XHR0aGlzLl9tYXAuY29udGFpbmVyUG9pbnRUb0xhdExuZyh0aGlzLl9zdGFydFBvaW50KSxcclxuXHRcdFx0dGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcodGhpcy5fcG9pbnQpKTtcclxuXHRcclxuXHRcdHRoaXMuX21hcC5maXJlKCdzZWxlY3Rpb25lbmQnLCB7c2VsZWN0aW9uQm91bmRzOiBib3VuZHN9KTtcclxuXHR9LFxyXG5cclxuXHRfb25LZXlEb3duOiBmdW5jdGlvbiAoZTogYW55KSB7XHJcblx0XHRpZiAoZS5rZXlDb2RlID09PSAyNykge1xyXG5cdFx0XHR0aGlzLl9maW5pc2goKTtcclxuXHRcdFx0dGhpcy5fY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGUoKTtcclxuXHRcdFx0dGhpcy5fcmVzZXRTdGF0ZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxufSk7XHJcblxyXG4iLCJpbXBvcnQgKiBhcyBMIGZyb20gXCJsZWFmbGV0XCJcclxuaW1wb3J0IHsgZ2V0U2VsZWN0aW9uV2hlZWwsIGdldFNlbGVjdGlvblNjcm9sbCwgZ2V0VW5pdHNNYW5hZ2VyLCBnZXRBY3RpdmVDb2FsaXRpb24gfSBmcm9tIFwiLi5cIjtcclxuaW1wb3J0IHsgc3Bhd25BaXJjcmFmdCwgc3Bhd25Hcm91bmRVbml0LCBzcGF3blNtb2tlIH0gZnJvbSBcIi4uL2Rjcy9kY3NcIjtcclxuaW1wb3J0IHsgcGF5bG9hZE5hbWVzIH0gZnJvbSBcIi4uL3VuaXRzL3BheWxvYWROYW1lc1wiO1xyXG5pbXBvcnQgeyB1bml0VHlwZXMgfSBmcm9tIFwiLi4vdW5pdHMvdW5pdFR5cGVzXCI7XHJcbmltcG9ydCB7IEJveFNlbGVjdCB9IGZyb20gXCIuL2JveHNlbGVjdFwiO1xyXG5cclxuTC5NYXAuYWRkSW5pdEhvb2soJ2FkZEhhbmRsZXInLCAnYm94U2VsZWN0JywgQm94U2VsZWN0KTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpY2tFdmVudCB7XHJcbiAgICB4OiBudW1iZXI7XHJcbiAgICB5OiBudW1iZXI7XHJcbiAgICBsYXRsbmc6IEwuTGF0TG5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNwYXduRXZlbnQgZXh0ZW5kcyBDbGlja0V2ZW50e1xyXG4gICAgYWlyYmFzZU5hbWU6IHN0cmluZyB8IG51bGw7XHJcbiAgICBjb2FsaXRpb25JRDogbnVtYmVyIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1hcCBleHRlbmRzIEwuTWFwIHtcclxuICAgICNzdGF0ZTogc3RyaW5nO1xyXG4gICAgI2xheWVyPzogTC5UaWxlTGF5ZXI7XHJcbiAgICAjcHJldmVudFJpZ2h0Q2xpY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICNyaWdodENsaWNrVGltZXI6IG51bWJlciA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZykge1xyXG4gICAgICAgIC8qIEluaXQgdGhlIGxlYWZsZXQgbWFwICovXHJcbiAgICAgICAgLy9AdHMtaWdub3JlXHJcbiAgICAgICAgc3VwZXIoSUQsIHsgZG91YmxlQ2xpY2tab29tOiBmYWxzZSwgem9vbUNvbnRyb2w6IGZhbHNlLCBib3hab29tOiBmYWxzZSwgYm94U2VsZWN0OiB0cnVlIH0pO1xyXG4gICAgICAgIHRoaXMuc2V0VmlldyhbMzcuMjMsIC0xMTUuOF0sIDEyKTtcclxuXHJcbiAgICAgICAgdGhpcy5zZXRMYXllcihcIkFyY0dJUyBTYXRlbGxpdGVcIik7XHJcblxyXG4gICAgICAgIC8qIEluaXQgdGhlIHN0YXRlIG1hY2hpbmUgKi9cclxuICAgICAgICB0aGlzLiNzdGF0ZSA9IFwiSURMRVwiO1xyXG5cclxuICAgICAgICAvKiBSZWdpc3RlciBldmVudCBoYW5kbGVzICovXHJcbiAgICAgICAgdGhpcy5vbihcImNsaWNrXCIsIChlOiBhbnkpID0+IHRoaXMuI29uQ2xpY2soZSkpO1xyXG4gICAgICAgIHRoaXMub24oXCJkYmxjbGlja1wiLCAoZTogYW55KSA9PiB0aGlzLiNvbkRvdWJsZUNsaWNrKGUpKTsgICAgICBcclxuICAgICAgICB0aGlzLm9uKFwiY29udGV4dG1lbnVcIiwgKGU6IGFueSkgPT4gdGhpcy4jb25Db250ZXh0TWVudShlKSk7XHJcbiAgICAgICAgdGhpcy5vbignc2VsZWN0aW9uZW5kJywgKGU6IGFueSkgPT4gdGhpcy4jb25TZWxlY3Rpb25FbmQoZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldExheWVyKGxheWVyTmFtZTogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xheWVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5yZW1vdmVMYXllcih0aGlzLiNsYXllcilcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChsYXllck5hbWUgPT0gXCJBcmNHSVMgU2F0ZWxsaXRlXCIpIHtcclxuICAgICAgICAgICAgdGhpcy4jbGF5ZXIgPSBMLnRpbGVMYXllcihcImh0dHBzOi8vc2VydmVyLmFyY2dpc29ubGluZS5jb20vQXJjR0lTL3Jlc3Qvc2VydmljZXMvV29ybGRfSW1hZ2VyeS9NYXBTZXJ2ZXIvdGlsZS97en0ve3l9L3t4fVwiLCB7XHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGlvbjogXCJUaWxlcyAmY29weTsgRXNyaSAmbWRhc2g7IFNvdXJjZTogRXNyaSwgaS1jdWJlZCwgVVNEQSwgVVNHUywgQUVYLCBHZW9FeWUsIEdldG1hcHBpbmcsIEFlcm9ncmlkLCBJR04sIElHUCwgVVBSLUVHUCwgYW5kIHRoZSBHSVMgVXNlciBDb21tdW5pdHlcIlxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAobGF5ZXJOYW1lID09IFwiVVNHUyBUb3BvXCIpIHtcclxuICAgICAgICAgICAgdGhpcy4jbGF5ZXIgPSBMLnRpbGVMYXllcignaHR0cHM6Ly9iYXNlbWFwLm5hdGlvbmFsbWFwLmdvdi9hcmNnaXMvcmVzdC9zZXJ2aWNlcy9VU0dTVG9wby9NYXBTZXJ2ZXIvdGlsZS97en0ve3l9L3t4fScsIHtcclxuICAgICAgICAgICAgICAgIG1heFpvb206IDIwLFxyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRpb246ICdUaWxlcyBjb3VydGVzeSBvZiB0aGUgPGEgaHJlZj1cImh0dHBzOi8vdXNncy5nb3YvXCI+VS5TLiBHZW9sb2dpY2FsIFN1cnZleTwvYT4nXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChsYXllck5hbWUgPT0gXCJPcGVuU3RyZWV0TWFwIE1hcG5pa1wiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2xheWVyID0gTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLCB7XHJcbiAgICAgICAgICAgICAgICBtYXhab29tOiAxOSxcclxuICAgICAgICAgICAgICAgIGF0dHJpYnV0aW9uOiAnJmNvcHk7IDxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHRcIj5PcGVuU3RyZWV0TWFwPC9hPiBjb250cmlidXRvcnMnXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChsYXllck5hbWUgPT0gXCJPUEVOVkthcnRlXCIpIHtcclxuICAgICAgICAgICAgdGhpcy4jbGF5ZXIgPSBMLnRpbGVMYXllcignaHR0cHM6Ly90aWxlc2VydmVyLm1lbW9tYXBzLmRlL3RpbGVnZW4ve3p9L3t4fS97eX0ucG5nJywge1xyXG4gICAgICAgICAgICAgICAgbWF4Wm9vbTogMTgsXHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGlvbjogJ01hcCA8YSBocmVmPVwiaHR0cHM6Ly9tZW1vbWFwcy5kZS9cIj5tZW1vbWFwcy5kZTwvYT4gPGEgaHJlZj1cImh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LXNhLzIuMC9cIj5DQy1CWS1TQTwvYT4sIG1hcCBkYXRhICZjb3B5OyA8YSBocmVmPVwiaHR0cHM6Ly93d3cub3BlbnN0cmVldG1hcC5vcmcvY29weXJpZ2h0XCI+T3BlblN0cmVldE1hcDwvYT4gY29udHJpYnV0b3JzJ1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAobGF5ZXJOYW1lID09IFwiRXNyaS5EZUxvcm1lXCIpIHtcclxuICAgICAgICAgICAgdGhpcy4jbGF5ZXIgPSBMLnRpbGVMYXllcignaHR0cHM6Ly9zZXJ2ZXIuYXJjZ2lzb25saW5lLmNvbS9BcmNHSVMvcmVzdC9zZXJ2aWNlcy9TcGVjaWFsdHkvRGVMb3JtZV9Xb3JsZF9CYXNlX01hcC9NYXBTZXJ2ZXIvdGlsZS97en0ve3l9L3t4fScsIHtcclxuICAgICAgICAgICAgICAgIGF0dHJpYnV0aW9uOiAnVGlsZXMgJmNvcHk7IEVzcmkgJm1kYXNoOyBDb3B5cmlnaHQ6ICZjb3B5OzIwMTIgRGVMb3JtZScsXHJcbiAgICAgICAgICAgICAgICBtaW5ab29tOiAxLFxyXG4gICAgICAgICAgICAgICAgbWF4Wm9vbTogMTFcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGxheWVyTmFtZSA9PSBcIkN5Y2xPU01cIikge1xyXG4gICAgICAgICAgICB0aGlzLiNsYXllciA9IEwudGlsZUxheWVyKCdodHRwczovL3tzfS50aWxlLWN5Y2xvc20ub3BlbnN0cmVldG1hcC5mci9jeWNsb3NtL3t6fS97eH0ve3l9LnBuZycsIHtcclxuICAgICAgICAgICAgICAgIG1heFpvb206IDIwLFxyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRpb246ICc8YSBocmVmPVwiaHR0cHM6Ly9naXRodWIuY29tL2N5Y2xvc20vY3ljbG9zbS1jYXJ0b2Nzcy1zdHlsZS9yZWxlYXNlc1wiIHRpdGxlPVwiQ3ljbE9TTSAtIE9wZW4gQmljeWNsZSByZW5kZXJcIj5DeWNsT1NNPC9hPiB8IE1hcCBkYXRhOiAmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycydcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuI2xheWVyPy5hZGRUbyh0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRMYXllcnMoKSB7XHJcbiAgICAgICAgcmV0dXJuIFtcIkFyY0dJUyBTYXRlbGxpdGVcIiwgXCJVU0dTIFRvcG9cIiwgXCJPcGVuU3RyZWV0TWFwIE1hcG5pa1wiLCBcIk9QRU5WS2FydGVcIiwgXCJFc3JpLkRlTG9ybWVcIiwgXCJDeWNsT1NNXCJdXHJcbiAgICB9XHJcblxyXG4gICAgLyogU3RhdGUgbWFjaGluZSAqL1xyXG4gICAgc2V0U3RhdGUoc3RhdGU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuI3N0YXRlID0gc3RhdGU7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLiNzdGF0ZSA9PT0gXCJJRExFXCIpIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHRoaXMuI3N0YXRlID09PSBcIk1PVkVfVU5JVFwiKSB7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLiNzdGF0ZSA9PT0gXCJBVFRBQ0tcIikge1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IFwiRk9STUFUSU9OXCIpIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFN0YXRlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNzdGF0ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTZWxlY3Rpb24gd2hlZWwgKi9cclxuICAgIHNob3dTZWxlY3Rpb25XaGVlbChlOiBDbGlja0V2ZW50IHwgU3Bhd25FdmVudCwgb3B0aW9uczogYW55LCBzaG93Q29hbGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgdmFyIHggPSBlLng7XHJcbiAgICAgICAgdmFyIHkgPSBlLnk7XHJcbiAgICAgICAgZ2V0U2VsZWN0aW9uV2hlZWwoKS5zaG93KHgsIHksIG9wdGlvbnMsIHNob3dDb2FsaXRpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGhpZGVTZWxlY3Rpb25XaGVlbCgpIHtcclxuICAgICAgICBnZXRTZWxlY3Rpb25XaGVlbCgpLmhpZGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTZWxlY3Rpb24gc2Nyb2xsICovXHJcbiAgICBzaG93U2VsZWN0aW9uU2Nyb2xsKGU6IENsaWNrRXZlbnQgfCBTcGF3bkV2ZW50LCBvcHRpb25zOiBhbnksIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdmFyIHggPSBlLng7XHJcbiAgICAgICAgdmFyIHkgPSBlLnk7XHJcbiAgICAgICAgZ2V0U2VsZWN0aW9uU2Nyb2xsKCkuc2hvdyh4LCB5LCBvcHRpb25zLCBjYWxsYmFjayk7XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZVNlbGVjdGlvblNjcm9sbCgpIHtcclxuICAgICAgICBnZXRTZWxlY3Rpb25TY3JvbGwoKS5oaWRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogRXZlbnQgaGFuZGxlcnMgKi9cclxuICAgICNvbkNsaWNrKGU6IGFueSkge1xyXG4gICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuI3N0YXRlID09PSBcIklETEVcIikge1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IFwiTU9WRV9VTklUXCIpIHtcclxuICAgICAgICAgICAgaWYgKCFlLm9yaWdpbmFsRXZlbnQuY3RybEtleSkge1xyXG4gICAgICAgICAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkuY2xlYXJEZXN0aW5hdGlvbnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBnZXRVbml0c01hbmFnZXIoKS5hZGREZXN0aW5hdGlvbihlLmxhdGxuZylcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI29uRG91YmxlQ2xpY2soZTogYW55KSB7XHJcbiAgICAgICAgdmFyIHNwYXduRXZlbnQ6IFNwYXduRXZlbnQgPSB7eDogZS5vcmlnaW5hbEV2ZW50LngsIHk6IGUub3JpZ2luYWxFdmVudC55LCBsYXRsbmc6IGUubGF0bG5nLCBhaXJiYXNlTmFtZTogbnVsbCwgY29hbGl0aW9uSUQ6IG51bGx9O1xyXG4gICAgICAgIGlmICh0aGlzLiNzdGF0ZSA9PSBcIklETEVcIikge1xyXG4gICAgICAgICAgICB2YXIgb3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgICAgIHsgXCJ0b29sdGlwXCI6IFwiU3Bhd24gYWlyIHVuaXRcIiwgXCJzcmNcIjogXCJzcGF3bkFpci5wbmdcIiwgXCJjYWxsYmFja1wiOiAoKSA9PiB0aGlzLiNhaXJjcmFmdFNwYXduTWVudShzcGF3bkV2ZW50KSB9LFxyXG4gICAgICAgICAgICAgICAgeyBcInRvb2x0aXBcIjogXCJTcGF3biBncm91bmQgdW5pdFwiLCBcInNyY1wiOiBcInNwYXduR3JvdW5kLnBuZ1wiLCBcImNhbGxiYWNrXCI6ICgpID0+IHRoaXMuI2dyb3VuZFVuaXRTcGF3bk1lbnUoc3Bhd25FdmVudCkgfSxcclxuICAgICAgICAgICAgICAgIHsgXCJ0b29sdGlwXCI6IFwiU21va2VcIiwgXCJzcmNcIjogXCJzcGF3blNtb2tlLnBuZ1wiLCBcImNhbGxiYWNrXCI6ICgpID0+IHRoaXMuI3Ntb2tlU3Bhd25NZW51KHNwYXduRXZlbnQpIH0sXHJcbiAgICAgICAgICAgICAgICAvL3sgXCJ0b29sdGlwXCI6IFwiRXhwbG9zaW9uXCIsIFwic3JjXCI6IFwic3Bhd25FeHBsb3Npb24ucG5nXCIsIFwiY2FsbGJhY2tcIjogKCkgPT4gdGhpcy4jZXhwbG9zaW9uU3Bhd25NZW51KGUpIH1cclxuICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICB0aGlzLnNob3dTZWxlY3Rpb25XaGVlbChzcGF3bkV2ZW50LCBvcHRpb25zLCB0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI29uQ29udGV4dE1lbnUoZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy4jcmlnaHRDbGlja1RpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy4jcHJldmVudFJpZ2h0Q2xpY2spIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoXCJJRExFXCIpO1xyXG4gICAgICAgICAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkuZGVzZWxlY3RBbGxVbml0cygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvblNjcm9sbCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuI3ByZXZlbnRSaWdodENsaWNrID0gZmFsc2U7XHJcbiAgICAgICAgfSwgMjAwKTtcclxuICAgIH1cclxuXHJcbiAgICAjb25TZWxlY3Rpb25FbmQoZTogYW55KVxyXG4gICAge1xyXG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLiNyaWdodENsaWNrVGltZXIpO1xyXG4gICAgICAgIHRoaXMuI3ByZXZlbnRSaWdodENsaWNrID0gdHJ1ZTtcclxuICAgICAgICBnZXRVbml0c01hbmFnZXIoKS5zZWxlY3RGcm9tQm91bmRzKGUuc2VsZWN0aW9uQm91bmRzKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTcGF3biBmcm9tIGFpciBiYXNlICovXHJcbiAgICBzcGF3bkZyb21BaXJiYXNlKGU6IFNwYXduRXZlbnQpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy4jYWlyY3JhZnRTcGF3bk1lbnUoZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogU3Bhd25pbmcgbWVudXMgKi9cclxuICAgICNncm91bmRVbml0U3Bhd25NZW51KGU6IFNwYXduRXZlbnQpIHtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeydjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdIb3dpdHplcicsICAgJ3NyYyc6ICdzcGF3bkhvd2l0emVyLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEdyb3VuZFVuaXQoZSwgXCJIb3dpdHplcnNcIil9LFxyXG4gICAgICAgICAgICB7J2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ1NBTScsICAgICAgICAnc3JjJzogJ3NwYXduU0FNLnBuZycsICAgICAgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0R3JvdW5kVW5pdChlLCBcIlNBTVwiKX0sXHJcbiAgICAgICAgICAgIHsnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnSUZWJywgICAgICAgICdzcmMnOiAnc3Bhd25JRlYucG5nJywgICAgICAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RHcm91bmRVbml0KGUsIFwiSUZWXCIpfSxcclxuICAgICAgICAgICAgeydjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdUYW5rJywgICAgICAgJ3NyYyc6ICdzcGF3blRhbmsucG5nJywgICAgICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEdyb3VuZFVuaXQoZSwgXCJUYW5rc1wiKX0sXHJcbiAgICAgICAgICAgIHsnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnTUxSUycsICAgICAgICdzcmMnOiAnc3Bhd25NTFJTLnBuZycsICAgICAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RHcm91bmRVbml0KGUsIFwiTUxSU1wiKX0sXHJcbiAgICAgICAgICAgIHsnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnUmFkYXInLCAgICAgICdzcmMnOiAnc3Bhd25SYWRhci5wbmcnLCAgICAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RHcm91bmRVbml0KGUsIFwiUmFkYXJcIil9LFxyXG4gICAgICAgICAgICB7J2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ1VuYXJtZWQnLCAgICAnc3JjJzogJ3NwYXduVW5hcm1lZC5wbmcnLCAgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0R3JvdW5kVW5pdChlLCBcIlVuYXJtZWRcIil9XHJcbiAgICAgICAgXVxyXG4gICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvbldoZWVsKGUsIG9wdGlvbnMsIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgICNzbW9rZVNwYXduTWVudShlOiBTcGF3bkV2ZW50KSB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ1JlZCBzbW9rZScsICAgICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ3JlZCcsIGUubGF0bG5nKX0sICd0aW50JzogJ3JlZCd9LFxyXG4gICAgICAgICAgICB7J3Rvb2x0aXAnOiAnV2hpdGUgc21va2UnLCAgICAnc3JjJzogJ3NwYXduU21va2UucG5nJywgICdjYWxsYmFjayc6ICgpID0+IHt0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpOyB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTsgc3Bhd25TbW9rZSgnd2hpdGUnLCBlLmxhdGxuZyl9LCAndGludCc6ICd3aGl0ZSd9LFxyXG4gICAgICAgICAgICB7J3Rvb2x0aXAnOiAnQmx1ZSBzbW9rZScsICAgICAnc3JjJzogJ3NwYXduU21va2UucG5nJywgICdjYWxsYmFjayc6ICgpID0+IHt0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpOyB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTsgc3Bhd25TbW9rZSgnYmx1ZScsIGUubGF0bG5nKX0sICd0aW50JzogJ2JsdWUnfSxcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ0dyZWVuIHNtb2tlJywgICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ2dyZWVuJywgZS5sYXRsbmcpfSwgJ3RpbnQnOiAnZ3JlZW4nfSxcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ09yYW5nZSBzbW9rZScsICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ29yYW5nZScsIGUubGF0bG5nKX0sICd0aW50JzogJ29yYW5nZSd9LFxyXG4gICAgICAgIF1cclxuICAgICAgICB0aGlzLnNob3dTZWxlY3Rpb25XaGVlbChlLCBvcHRpb25zLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAjZXhwbG9zaW9uU3Bhd25NZW51KGU6IFNwYXduRXZlbnQpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgI2FpcmNyYWZ0U3Bhd25NZW51KGU6IFNwYXduRXZlbnQpIHtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyAnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnQ0FQJywgJ3NyYyc6ICdzcGF3bkNBUC5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RBaXJjcmFmdChlLCBcIkNBUFwiKSB9LFxyXG4gICAgICAgICAgICB7ICdjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdDQVMnLCAnc3JjJzogJ3NwYXduQ0FTLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEFpcmNyYWZ0KGUsIFwiQ0FTXCIpIH0sXHJcbiAgICAgICAgICAgIHsgJ2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ1RhbmtlcicsICdzcmMnOiAnc3Bhd25UYW5rZXIucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0QWlyY3JhZnQoZSwgXCJ0YW5rZXJcIikgfSxcclxuICAgICAgICAgICAgeyAnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnQVdBQ1MnLCAnc3JjJzogJ3NwYXduQVdBQ1MucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0QWlyY3JhZnQoZSwgXCJhd2Fjc1wiKSB9LFxyXG4gICAgICAgICAgICB7ICdjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdTdHJpa2UnLCAnc3JjJzogJ3NwYXduU3RyaWtlLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEFpcmNyYWZ0KGUsIFwic3RyaWtlXCIpIH0sXHJcbiAgICAgICAgICAgIHsgJ2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ0Ryb25lJywgJ3NyYyc6ICdzcGF3bkRyb25lLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEFpcmNyYWZ0KGUsIFwiZHJvbmVcIikgfSxcclxuICAgICAgICAgICAgeyAnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnVHJhbnNwb3J0JywgJ3NyYyc6ICdzcGF3blRyYW5zcG9ydC5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RBaXJjcmFmdChlLCBcInRyYW5zcG9ydFwiKSB9LFxyXG4gICAgICAgIF1cclxuICAgICAgICB0aGlzLnNob3dTZWxlY3Rpb25XaGVlbChlLCBvcHRpb25zLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTaG93IHVuaXQgc2VsZWN0aW9uIGZvciBhaXIgdW5pdHMgKi9cclxuICAgICNzZWxlY3RBaXJjcmFmdChlOiBTcGF3bkV2ZW50LCBncm91cDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IHVuaXRUeXBlcy5haXJbZ3JvdXBdO1xyXG4gICAgICAgIG9wdGlvbnMuc29ydCgpO1xyXG4gICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbChlLCBvcHRpb25zLCAodW5pdFR5cGU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICAgICAgdGhpcy4jdW5pdFNlbGVjdFBheWxvYWQoZSwgdW5pdFR5cGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFNob3cgd2VhcG9uIHNlbGVjdGlvbiBmb3IgYWlyIHVuaXRzICovXHJcbiAgICAjdW5pdFNlbGVjdFBheWxvYWQoZTogU3Bhd25FdmVudCwgdW5pdFR5cGU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7XHJcbiAgICAgICAgdmFyIG9wdGlvbnMgPSBbXTtcclxuICAgICAgICBvcHRpb25zID0gcGF5bG9hZE5hbWVzW3VuaXRUeXBlXVxyXG4gICAgICAgIGlmIChvcHRpb25zICE9IHVuZGVmaW5lZCAmJiBvcHRpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgb3B0aW9ucy5zb3J0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbCh7eDogZS54LCB5OiBlLnksIGxhdGxuZzogZS5sYXRsbmd9LCBvcHRpb25zLCAocGF5bG9hZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvblNjcm9sbCgpO1xyXG4gICAgICAgICAgICAgICAgc3Bhd25BaXJjcmFmdCh1bml0VHlwZSwgZS5sYXRsbmcsIGdldEFjdGl2ZUNvYWxpdGlvbigpLCBwYXlsb2FkTmFtZSwgZS5haXJiYXNlTmFtZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgc3Bhd25BaXJjcmFmdCh1bml0VHlwZSwgZS5sYXRsbmcsIGdldEFjdGl2ZUNvYWxpdGlvbigpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogU2hvdyB1bml0IHNlbGVjdGlvbiBmb3IgZ3JvdW5kIHVuaXRzICovXHJcbiAgICAjc2VsZWN0R3JvdW5kVW5pdChlOiBhbnksIGdyb3VwOiBzdHJpbmcpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IHVuaXRUeXBlcy52ZWhpY2xlc1tncm91cF07XHJcbiAgICAgICAgb3B0aW9ucy5zb3J0KCk7XHJcbiAgICAgICAgdGhpcy5zaG93U2VsZWN0aW9uU2Nyb2xsKGUsIG9wdGlvbnMsICh1bml0VHlwZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvblNjcm9sbCgpO1xyXG4gICAgICAgICAgICBzcGF3bkdyb3VuZFVuaXQodW5pdFR5cGUsIGUubGF0bG5nLCBnZXRBY3RpdmVDb2FsaXRpb24oKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn0gXHJcbiIsImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCdcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWlyYmFzZU9wdGlvbnNcclxue1xyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgcG9zaXRpb246IEwuTGF0TG5nLFxyXG4gICAgc3JjOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFpcmJhc2VNYXJrZXIgZXh0ZW5kcyBMLk1hcmtlciBcclxue1xyXG4gICAgI25hbWU6IHN0cmluZyA9IFwiXCI7XHJcbiAgICAjY29hbGl0aW9uSUQ6IG51bWJlciA9IC0xO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFpcmJhc2VPcHRpb25zKVxyXG4gICAge1xyXG4gICAgICAgIHN1cGVyKG9wdGlvbnMucG9zaXRpb24sIHsgcmlzZU9uSG92ZXI6IHRydWUgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuI25hbWUgPSBvcHRpb25zLm5hbWU7XHJcblxyXG4gICAgICAgIHZhciBpY29uID0gbmV3IEwuRGl2SWNvbih7XHJcbiAgICAgICAgICAgIGh0bWw6IGA8dGFibGUgY2xhc3M9XCJhaXJiYXNlbWFya2VyLWNvbnRhaW5lclwiIGlkPVwiY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiYWlyYmFzZW1hcmtlci1pY29uXCIgaWQ9XCJpY29uXCIgc3JjPVwiJHtvcHRpb25zLnNyY31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhaXJiYXNlbWFya2VyLW5hbWVcIiBpZD1cIm5hbWVcIj4ke29wdGlvbnMubmFtZX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5gLCBcclxuICAgICAgICAgICAgY2xhc3NOYW1lOiAnYWlyYmFzZS1tYXJrZXInfSk7ICAgLy8gU2V0IHRoZSBtYXJrZXIsIGNsYXNzTmFtZSBtdXN0IGJlIHNldCB0byBhdm9pZCB3aGl0ZSBzcXVhcmVcclxuICAgICAgICB0aGlzLnNldEljb24oaWNvbik7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0Q29hbGl0aW9uSUQoY29hbGl0aW9uSUQ6IG51bWJlcilcclxuICAgIHtcclxuICAgICAgICB0aGlzLiNjb2FsaXRpb25JRCA9IGNvYWxpdGlvbklEO1xyXG4gICAgICAgIHZhciBlbGVtZW50ID0gdGhpcy5nZXRFbGVtZW50KCk7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQgIT0gbnVsbClcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhciBpbWcgPSBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKTtcclxuICAgICAgICAgICAgaWYgKGltZyAhPSBudWxsKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBpbWcuY2xhc3NMaXN0LnJlbW92ZShcImFpcmJhc2VtYXJrZXItaWNvbi1ibHVlXCIpO1xyXG4gICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5yZW1vdmUoXCJhaXJiYXNlbWFya2VyLWljb24tcmVkXCIpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuI2NvYWxpdGlvbklEID09IDIpXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5hZGQoXCJhaXJiYXNlbWFya2VyLWljb24tYmx1ZVwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuI2NvYWxpdGlvbklEID09IDEpXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5hZGQoXCJhaXJiYXNlbWFya2VyLWljb24tcmVkXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldE5hbWUoKVxyXG4gICAge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNuYW1lO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENvYWxpdGlvbklEKClcclxuICAgIHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jY29hbGl0aW9uSUQ7XHJcbiAgICB9XHJcbn1cclxuIiwiaW1wb3J0IHsgTWFya2VyLCBMYXRMbmcgfSBmcm9tIFwibGVhZmxldFwiO1xyXG5pbXBvcnQgeyBnZXRNYXAgfSBmcm9tIFwiLi5cIjtcclxuaW1wb3J0IHsgU3Bhd25FdmVudCB9IGZyb20gXCIuLi9tYXAvbWFwXCI7XHJcbmltcG9ydCB7IEFpcmJhc2VNYXJrZXIgfSBmcm9tIFwiLi9haXJiYXNlbWFya2VyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgTWlzc2lvbkRhdGFcclxue1xyXG4gICAgLy8jYnVsbHNleWUgICAgICAgOiBhbnk7IC8vVE9ETyBkZWNsYXJlIGludGVyZmFjZVxyXG4gICAgLy8jYnVsbHNleWVNYXJrZXIgOiBNYXJrZXI7XHJcbiAgICAjYWlyYmFzZXMgICAgICAgOiBhbnk7IC8vVE9ETyBkZWNsYXJlIGludGVyZmFjZVxyXG4gICAgI2FpcmJhc2VzTWFya2Vyczoge1tuYW1lOiBzdHJpbmddOiBBaXJiYXNlTWFya2VyfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpXHJcbiAgICB7XHJcbiAgICAgICAgLy90aGlzLiNidWxsc2V5ZSA9IHVuZGVmaW5lZDtcclxuICAgICAgICAvL3RoaXMuI2J1bGxzZXllTWFya2VyID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2VycyA9IHt9O1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZShkYXRhOiBhbnkpXHJcbiAgICB7XHJcbiAgICAgICAgLy90aGlzLiNidWxsc2V5ZSA9IGRhdGEubWlzc2lvbkRhdGEuYnVsbHNleWU7XHJcbiAgICAgICAgdGhpcy4jYWlyYmFzZXMgPSBkYXRhLmFpcmJhc2VzO1xyXG4gICAgICAgIC8vdGhpcy4jZHJhd0J1bGxzZXllKCk7XHJcbiAgICAgICAgdGhpcy4jZHJhd0FpcmJhc2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8jZHJhd0J1bGxzZXllKClcclxuICAgIC8ve1xyXG4gICAgLy8gICAgaWYgKHRoaXMuI2J1bGxzZXllTWFya2VyID09PSB1bmRlZmluZWQpXHJcbiAgICAvLyAgICB7XHJcbiAgICAvLyAgICAgICAgdGhpcy4jYnVsbHNleWVNYXJrZXIgPSBuZXcgTWFya2VyKFt0aGlzLiNidWxsc2V5ZS5sYXQsIHRoaXMuI2J1bGxzZXllLmxuZ10pLmFkZFRvKG1hcC5nZXRNYXAoKSk7XHJcbiAgICAvLyAgICB9XHJcbiAgICAvLyAgICBlbHNlXHJcbiAgICAvLyAgICB7XHJcbiAgICAvLyAgICAgICAgdGhpcy4jYnVsbHNleWVNYXJrZXIuc2V0TGF0TG5nKG5ldyBMYXRMbmcodGhpcy4jYnVsbHNleWUubGF0LCB0aGlzLiNidWxsc2V5ZS5sbmcpKTsgXHJcbiAgICAvLyAgICB9XHJcbiAgICAvL31cclxuXHJcbiAgICAjZHJhd0FpcmJhc2VzKClcclxuICAgIHtcclxuICAgICAgICBmb3IgKGxldCBpZHggaW4gdGhpcy4jYWlyYmFzZXMpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YXIgYWlyYmFzZSA9IHRoaXMuI2FpcmJhc2VzW2lkeF1cclxuICAgICAgICAgICAgaWYgKHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdID09PSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdID0gbmV3IEFpcmJhc2VNYXJrZXIoe1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBuZXcgTGF0TG5nKGFpcmJhc2UubGF0LCBhaXJiYXNlLmxuZyksIFxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGFpcmJhc2UuY2FsbHNpZ24sXHJcbiAgICAgICAgICAgICAgICAgICAgc3JjOiBcImltYWdlcy9haXJiYXNlLnBuZ1wifSkuYWRkVG8oZ2V0TWFwKCkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jYWlyYmFzZXNNYXJrZXJzW2lkeF0ub24oJ2NsaWNrJywgKGUpID0+IHRoaXMuI29uQWlyYmFzZUNsaWNrKGUpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdLnNldENvYWxpdGlvbklEKGFpcmJhc2UuY29hbGl0aW9uKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjb25BaXJiYXNlQ2xpY2soZTogYW55KVxyXG4gICAge1xyXG4gICAgICAgIHZhciBzcGF3bkV2ZW50OiBTcGF3bkV2ZW50ID0ge3g6IGUub3JpZ2luYWxFdmVudC54LCB5OiBlLm9yaWdpbmFsRXZlbnQueSwgbGF0bG5nOiBlLmxhdGxuZywgYWlyYmFzZU5hbWU6IGUuc291cmNlVGFyZ2V0LmdldE5hbWUoKSwgY29hbGl0aW9uSUQ6IGUuc291cmNlVGFyZ2V0LmdldENvYWxpdGlvbklEKCl9O1xyXG4gICAgICAgIGdldE1hcCgpLnNwYXduRnJvbUFpcmJhc2Uoc3Bhd25FdmVudCk7XHJcbiAgICB9XHJcbn0iLCJleHBvcnQgZnVuY3Rpb24gZGlzdGFuY2UobGF0MTogbnVtYmVyLCBsb24xOiBudW1iZXIsIGxhdDI6IG51bWJlciwgbG9uMjogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBSID0gNjM3MWUzOyAvLyBtZXRyZXNcclxuICAgIGNvbnN0IM+GMSA9IGRlZzJyYWQobGF0MSk7IC8vIM+GLCDOuyBpbiByYWRpYW5zXHJcbiAgICBjb25zdCDPhjIgPSBkZWcycmFkKGxhdDIpO1xyXG4gICAgY29uc3QgzpTPhiA9IGRlZzJyYWQobGF0MiAtIGxhdDEpO1xyXG4gICAgY29uc3QgzpTOuyA9IGRlZzJyYWQobG9uMiAtIGxvbjEpO1xyXG5cclxuICAgIGNvbnN0IGEgPSBNYXRoLnNpbijOlM+GIC8gMikgKiBNYXRoLnNpbijOlM+GIC8gMikgKyBNYXRoLmNvcyjPhjEpICogTWF0aC5jb3Moz4YyKSAqIE1hdGguc2luKM6UzrsgLyAyKSAqIE1hdGguc2luKM6UzrsgLyAyKTtcclxuICAgIGNvbnN0IGMgPSAyICogTWF0aC5hdGFuMihNYXRoLnNxcnQoYSksIE1hdGguc3FydCgxIC0gYSkpO1xyXG5cclxuICAgIGNvbnN0IGQgPSBSICogYzsgLy8gaW4gbWV0cmVzXHJcblxyXG4gICAgcmV0dXJuIGQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBiZWFyaW5nKGxhdDE6IG51bWJlciwgbG9uMTogbnVtYmVyLCBsYXQyOiBudW1iZXIsIGxvbjI6IG51bWJlcikge1xyXG4gICAgY29uc3Qgz4YxID0gZGVnMnJhZChsYXQxKTsgLy8gz4YsIM67IGluIHJhZGlhbnNcclxuICAgIGNvbnN0IM+GMiA9IGRlZzJyYWQobGF0Mik7XHJcbiAgICBjb25zdCDOuzEgPSBkZWcycmFkKGxvbjEpOyAvLyDPhiwgzrsgaW4gcmFkaWFuc1xyXG4gICAgY29uc3QgzrsyID0gZGVnMnJhZChsb24yKTtcclxuICAgIGNvbnN0IHkgPSBNYXRoLnNpbijOuzIgLSDOuzEpICogTWF0aC5jb3Moz4YyKTtcclxuICAgIGNvbnN0IHggPSBNYXRoLmNvcyjPhjEpICogTWF0aC5zaW4oz4YyKSAtIE1hdGguc2luKM+GMSkgKiBNYXRoLmNvcyjPhjIpICogTWF0aC5jb3MozrsyIC0gzrsxKTtcclxuICAgIGNvbnN0IM64ID0gTWF0aC5hdGFuMih5LCB4KTtcclxuICAgIGNvbnN0IGJybmcgPSAocmFkMmRlZyjOuCkgKyAzNjApICUgMzYwOyAvLyBpbiBkZWdyZWVzXHJcblxyXG4gICAgcmV0dXJuIGJybmc7XHJcbn1cclxuXHJcbmNvbnN0IHplcm9QYWQgPSBmdW5jdGlvbiAobnVtOiBudW1iZXIsIHBsYWNlczogbnVtYmVyKSB7XHJcbiAgICB2YXIgc3RyaW5nID0gU3RyaW5nKG51bSk7XHJcbiAgICB3aGlsZSAoc3RyaW5nLmxlbmd0aCA8IHBsYWNlcykge1xyXG4gICAgICAgIHN0cmluZyArPSBcIjBcIjtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBDb252ZXJ0RERUb0RNUyhEOiBudW1iZXIsIGxuZzogYm9vbGVhbikge1xyXG4gICAgdmFyIGRpciA9IEQgPCAwID8gKGxuZyA/IFwiV1wiIDogXCJTXCIpIDogbG5nID8gXCJFXCIgOiBcIk5cIjtcclxuICAgIHZhciBkZWcgPSAwIHwgKEQgPCAwID8gKEQgPSAtRCkgOiBEKTtcclxuICAgIHZhciBtaW4gPSAwIHwgKCgoRCArPSAxZS05KSAlIDEpICogNjApO1xyXG4gICAgdmFyIHNlYyA9ICgwIHwgKCgoRCAqIDYwKSAlIDEpICogNjAwMCkpIC8gMTAwO1xyXG4gICAgdmFyIGRlYyA9IE1hdGgucm91bmQoKHNlYyAtIE1hdGguZmxvb3Ioc2VjKSkgKiAxMDApO1xyXG4gICAgdmFyIHNlYyA9IE1hdGguZmxvb3Ioc2VjKTtcclxuICAgIGlmIChsbmcpXHJcbiAgICAgICAgcmV0dXJuIGRpciArIHplcm9QYWQoZGVnLCAzKSArIFwiwrBcIiArIHplcm9QYWQobWluLCAyKSArIFwiJ1wiICsgemVyb1BhZChzZWMsIDIpICsgXCIuXCIgKyB6ZXJvUGFkKGRlYywgMikgKyBcIlxcXCJcIjtcclxuICAgIGVsc2VcclxuICAgICAgICByZXR1cm4gZGlyICsgemVyb1BhZChkZWcsIDIpICsgXCLCsFwiICsgemVyb1BhZChtaW4sIDIpICsgXCInXCIgKyB6ZXJvUGFkKHNlYywgMikgKyBcIi5cIiArIHplcm9QYWQoZGVjLCAyKSArIFwiXFxcIlwiO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVnMnJhZChkZWc6IG51bWJlcikge1xyXG4gICAgdmFyIHBpID0gTWF0aC5QSTtcclxuICAgIHJldHVybiBkZWcgKiAocGkgLyAxODApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmFkMmRlZyhyYWQ6IG51bWJlcikge1xyXG4gICAgdmFyIHBpID0gTWF0aC5QSTtcclxuICAgIHJldHVybiByYWQgLyAocGkgLyAxODApO1xyXG59IiwiZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25TdGF0dXNQYW5lbCB7XHJcbiAgICAjZWxlbWVudDogSFRNTEVsZW1lbnRcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihJRDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy4jZWxlbWVudCA9IDxIVE1MRWxlbWVudD5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChJRCk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKGNvbm5lY3RlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGlmICh0aGlzLiNlbGVtZW50ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdmFyIGRpdiA9IHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNzdGF0dXMtc3RyaW5nXCIpO1xyXG4gICAgICAgICAgICBpZiAoZGl2ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGlmIChjb25uZWN0ZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuaW5uZXJIVE1MID0gXCJDb25uZWN0ZWRcIjtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuY2xhc3NMaXN0LmFkZChcIm9seW1wdXMtc3RhdHVzLWNvbm5lY3RlZFwiKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuY2xhc3NMaXN0LnJlbW92ZShcIm9seW1wdXMtc3RhdHVzLWRpc2Nvbm5lY3RlZFwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5pbm5lckhUTUwgPSBcIkRpc2Nvbm5lY3RlZFwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5jbGFzc0xpc3QuYWRkKFwib2x5bXB1cy1zdGF0dXMtZGlzY29ubmVjdGVkXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5jbGFzc0xpc3QucmVtb3ZlKFwib2x5bXB1cy1zdGF0dXMtY29ubmVjdGVkXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiaW1wb3J0IHsgQ29udmVydEREVG9ETVMsIHJhZDJkZWcgfSBmcm9tIFwiLi4vb3RoZXIvdXRpbHNcIjtcclxuaW1wb3J0IHsgVW5pdCB9IGZyb20gXCIuLi91bml0cy91bml0XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVW5pdEluZm9QYW5lbCB7XHJcbiAgICAjZWxlbWVudDogSFRNTEVsZW1lbnRcclxuICAgICNkaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuI2VsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI2Rpc3BsYXkgPSAnJztcclxuICAgICAgICBpZiAodGhpcy4jZWxlbWVudCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2Rpc3BsYXkgPSB0aGlzLiNlbGVtZW50LnN0eWxlLmRpc3BsYXk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvdygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzaG93KCkge1xyXG4gICAgICAgIHRoaXMuI2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9IHRoaXMuI2Rpc3BsYXk7XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZSgpIHtcclxuICAgICAgICB0aGlzLiNlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGUodW5pdDogVW5pdCkge1xyXG4gICAgICAgIHZhciBsb2Fkb3V0ID0gXCJcIjtcclxuICAgICAgICBmb3IgKGxldCBpbmRleCBpbiB1bml0LmFtbW8pIHtcclxuICAgICAgICAgICAgdmFyIGFtbW8gPSB1bml0LmFtbW9baW5kZXhdO1xyXG4gICAgICAgICAgICB2YXIgZGlzcGxheU5hbWUgPSBhbW1vLmRlc2MuZGlzcGxheU5hbWU7XHJcbiAgICAgICAgICAgIHZhciBhbW91bnQgPSBhbW1vLmNvdW50O1xyXG4gICAgICAgICAgICBsb2Fkb3V0ICs9IGFtb3VudCArIFwieFwiICsgZGlzcGxheU5hbWU7XHJcbiAgICAgICAgICAgIGlmIChwYXJzZUludChpbmRleCkgPCBPYmplY3Qua2V5cyh1bml0LmFtbW8pLmxlbmd0aClcclxuICAgICAgICAgICAgICAgIGxvYWRvdXQgKz0gXCIsIFwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuI2VsZW1lbnQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjdW5pdC1uYW1lXCIpIS5pbm5lckhUTUwgPSB1bml0LnVuaXROYW1lO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjZ3JvdXAtbmFtZVwiKSEuaW5uZXJIVE1MID0gdW5pdC5ncm91cE5hbWU7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNoZWFkaW5nXCIpIS5pbm5lckhUTUwgPSBTdHJpbmcoTWF0aC5mbG9vcihyYWQyZGVnKHVuaXQuaGVhZGluZykpICsgXCLCsFwiKTtcclxuICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2FsdGl0dWRlXCIpIS5pbm5lckhUTUwgPSBTdHJpbmcoTWF0aC5mbG9vcih1bml0LmFsdGl0dWRlIC8gMC4zMDQ4KSArIFwiZnRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNncm91bmRzcGVlZFwiKSEuaW5uZXJIVE1MID0gU3RyaW5nKE1hdGguZmxvb3IodW5pdC5zcGVlZCAqIDEuOTQzODQpICsgXCJrdHNcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNmdWVsXCIpIS5pbm5lckhUTUwgPSBTdHJpbmcodW5pdC5mdWVsICsgXCIlXCIpO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjcG9zaXRpb25cIikhLmlubmVySFRNTCA9IENvbnZlcnRERFRvRE1TKHVuaXQubGF0aXR1ZGUsIGZhbHNlKSArIFwiIFwiICsgQ29udmVydEREVG9ETVModW5pdC5sb25naXR1ZGUsIHRydWUpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI3Rhc2tcIikhLmlubmVySFRNTCA9IHVuaXQuY3VycmVudFRhc2s7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNsb2Fkb3V0XCIpIS5pbm5lckhUTUwgPSBsb2Fkb3V0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImV4cG9ydCB2YXIgcGF5bG9hZE5hbWVzOiBhbnkgPSB7IFwiQS0xMEFcIjogW1wiTUstODQqMiAsIExBVS02OCoyICwgQUdNLTY1SyoyXCIsIFwiTEFVLTY4LU1LNSo2XCIsIFwiQUdNLTY1SyoyLE1rMjAqNixBSU0tOSoyLEVDTVwiLCBcIk1rLTgyKjYsQUlNLTkqMixFQ01cIiwgXCJNazIwKjYsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVEKjQsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVLLCBBR00tNjVEXCIsIFwiRUNNXCIsIFwiTWstODIqNiwgTWstODQqMlwiLCBcIk1rMjAqOFwiLCBcIkFHTS02NUsqMixNay04NCoyLEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1SyoyLE1rLTgyKjYsQUlNLTkqMixFQ01cIiwgXCJNay04NCoyLEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1SyoyLE1rODQqMixNazgyKjQsQUlNLTlNKjIsRUNNXCIsIFwiQUdNLTY1SCo2LE1rODIqMTAsQUlNLTlNKjIsRUNNXCJdLCBcIkEtMTBDXCI6IFtcIkxBVS02OCA0MiBya3QgTTE1NiBXUCwgQUlNLTkqMiwgRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtOTcqMiwgQ0JVLTg3KjIsIFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiTEFVLTEzMSA5OCBya3QgTTE1NiBXUCwgQUlNLTkqMixFQ01cIiwgXCJTVVUtMjUqOSxBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJNay04MkFJUio4LEFJTS05KjIsRUNNXCIsIFwiTUstODQqMixMQVUtNjgqMixBR00tNjVLKjJcIiwgXCJCRFUtMzMqNiwgVEdNLTY1SCwgVEdNLTY1RCwgVEdQLCBCRFUtNTBMR0IqMiwgQ0FQLTkqMVwiLCBcIk1rLTgyKjYsTWstODQqMixBSU0tOSoyLEVDTVwiLCBcIk1rLTg0KjQsQUlNLTkqMixFQ01cIiwgXCJNay04Mio4LEFJTS05KjIsRUNNXCIsIFwiQkRVLTMzKjEyLCBUR1AsIENBUC05KjFcIiwgXCJBR00tNjVEKjQsTWstODJBSVIqMixDQlUtODcqMixBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1RCo0LEdCVS0xMioyLEdCVS0zOCxNay04MixBSU0tOSxUR1AsRUNNXCIsIFwiQUdNLTY1RCoyLCBBR00tNjVIKjIsIENCVS05NyoyLCBDQlUtODcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJCRFUtNTBIRCo2LE1rMSo3LFRHUCwgQ0FQLTkqMVwiLCBcIkFHTS02NUgqNCwgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjIsQ0JVLTg3KjIsQUlNLTlNKjIsRUNNLFRHUFwiLCBcIkFHTS02NUsqMixHQlUtMzgqNCxBSU0tOSoyLFRHUCxFQ01cIiwgXCJCRFUtMzMqNiwgVEdQLCBDQVAtOSoxXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixHQlUtMTIqMixHQlUtMzgqMixBSU0tOSoyLFRHUCxFQ00sTUsxNTEqN1wiLCBcIlRHUFwiLCBcIkJEVS0zMyo2LCBUR1AsIENBUC05KjEsIEJEVS01MExEKjJcIiwgXCJHQlUtMTIqNixHQlUtMTAqMixUR1AsIEFJTS05KjJcIiwgXCJUR1AsIENCVS04NyozLCBNMTUxKjI4LCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjQsTWstODIqNixDQlUtODcqMixUR1AsQUlNLTkqMixNazE1MSo3XCIsIFwiUEdNLSBHQlUtMTAqMixHQlUtMTIqNCxBSU0tOSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJUR1AsIENBUC05KjEsIENBVE0tNjVLKjEsIFRHTS02NUcqMVwiLCBcIkFHTS02NUcqMixHQlUtMzEqMixBSU0tOSoyLFRHUCxFQ01cIiwgXCJUR1AsIE0xNTEqMTQsIE1rLTgyKjIsIE1rLTgyQUlSKjIsIEFJTS05KjIsIEVDTVwiLCBcIlBHTS0gR0JVLTEwKjQsIEFHTS02NUsqMixBSU0tOSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjYsQ0JVLTg3KjIsTWsxNTEqNyxBSU0tOSoyLFRHUCxFQ01cIiwgXCJHQlUtMzEqMixHQlUtMzgqMiwgQUdNLTY1SCoyLCBBSU0tOSoyLFRHUCwgRUNNXCIsIFwiQ0JVLTEwMyo0LCBNMTUxKjE0LCBBSU0tOSoyLCBFQ01cIiwgXCJDQlUtODcqNCwgTTE1MSo0MiwgQUlNLTkqMiwgRUNNXCIsIFwiQUdNLTY1RCo2LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkNCVS04NyoyLCBNMTUxKjE0LCBNSy04MkFJUio2LCBBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTEwNSo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQkRVLTUwSEQqMixCRFUtNTBMR0IqMixUR1AsIENBUC05KjFcIiwgXCJDQlUtODcqNCwgTTE1MSoyOCwgQUlNLTkqMixFQ01cIiwgXCJNMTUxKjk4LCBNay04MioyLEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixHQlUtMTIsR0JVLTM4LE1LODIqMyxNSzgyQUlSKjMsTUs1KjcsVEdQLEFNLTkqMlwiLCBcIlRHUCwgTTE1MSo0MiwgTWstODIqNiwgTWstODJBSVIqNiwgQUlNLTkqMiwgRUNNXCIsIFwiVEdQLCBNMTUxKjg0LCBNay04MioyLEFJTS05KjIsIEVDTVwiLCBcIkJEVS01MExEKjIsIEJEVS01MEhEKjIsQ0FUTS02NUssIFRHTS02NUcsIFRHUCwgQ0FQLTkqMVwiLCBcIlRHUCwgTTE1MSo0OSwgTWstODIqMiwgQ0JVLTg3KjIsIEFJTS05KjIsIEVDTVwiLCBcIlRHUCwgQ0FQLTkqMSwgQkRVLTUwTEdCKjRcIiwgXCJHQlUtMTIqMTQsVEdQLCBBSU0tOSoyXCIsIFwiQUdNLTY1RCozLCBBR00tNjVIKjMsIENCVS05Nyo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixNay04MkFJUioyLENCVS05NyoyLEFJTS05TSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjQsIENCVS0xMDUqMixDQlUtOTcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsTWstODIqNixBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJHQlUtMzgqNCxHQlUtMzEqMixUR1AsIEFJTS05KjJcIiwgXCJBR00tNjVEKjQsR0JVLTEyKjIsR0JVLTM4KjIsQUlNLTkqMixUR1AsRUNNLE1LNSo3XCIsIFwiQUdNLTY1RyxBR00tNjVLLEdCVS0xMCoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUcsQUdNLTY1RCxNay04Mio3LEFJTS05KjIsRUNNXCIsIFwiR0JVLTMxKjIsR0JVLTM4KjQsQUlNLTkqMixUR1AsRUNNLCBBSU0tOSoyXCIsIFwiQUdNLTY1SyoyLEdCVS0xMio4LEFJTS05TSoyLkVDTSxUR1BcIiwgXCJBR00tNjVEKjYsR0JVLTEyKjQsQUlNLTlNKjIsRUNNLFRHUFwiXSwgXCJBLTEwQ18yXCI6IFtcIkxBVS02OCA0MiBya3QgTTE1NiBXUCwgQUlNLTkqMiwgRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtOTcqMiwgQ0JVLTg3KjIsIFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiTEFVLTEzMSA5OCBya3QgTTE1NiBXUCwgQUlNLTkqMixFQ01cIiwgXCJTVVUtMjUqOSxBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJNay04MkFJUio4LEFJTS05KjIsRUNNXCIsIFwiTUstODQqMixMQVUtNjgqMixBR00tNjVLKjJcIiwgXCJCRFUtMzMqNiwgVEdNLTY1SCwgVEdNLTY1RCwgVEdQLCBCRFUtNTBMR0IqMiwgQ0FQLTkqMVwiLCBcIk1rLTgyKjYsTWstODQqMixBSU0tOSoyLEVDTVwiLCBcIk1rLTg0KjQsQUlNLTkqMixFQ01cIiwgXCJNay04Mio4LEFJTS05KjIsRUNNXCIsIFwiQkRVLTMzKjEyLCBUR1AsIENBUC05KjFcIiwgXCJBR00tNjVEKjQsTWstODJBSVIqMixDQlUtODcqMixBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1RCo0LEdCVS0xMioyLEdCVS0zOCxNay04MixBSU0tOSxUR1AsRUNNXCIsIFwiQUdNLTY1RCoyLCBBR00tNjVIKjIsIENCVS05NyoyLCBDQlUtODcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJCRFUtNTBIRCo2LE1rMSo3LFRHUCwgQ0FQLTkqMVwiLCBcIkFHTS02NUgqNCwgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjIsQ0JVLTg3KjIsQUlNLTlNKjIsRUNNLFRHUFwiLCBcIkFHTS02NUsqMixHQlUtMzgqNCxBSU0tOSoyLFRHUCxFQ01cIiwgXCJCRFUtMzMqNiwgVEdQLCBDQVAtOSoxXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixHQlUtMTIqMixHQlUtMzgqMixBSU0tOSoyLFRHUCxFQ00sTUsxNTEqN1wiLCBcIlRHUFwiLCBcIkJEVS0zMyo2LCBUR1AsIENBUC05KjEsIEJEVS01MExEKjJcIiwgXCJHQlUtMTIqNixHQlUtMTAqMixUR1AsIEFJTS05KjJcIiwgXCJUR1AsIENCVS04NyozLCBNMTUxKjI4LCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjQsTWstODIqNixDQlUtODcqMixUR1AsQUlNLTkqMixNazE1MSo3XCIsIFwiUEdNLSBHQlUtMTAqMixHQlUtMTIqNCxBSU0tOSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJUR1AsIENBUC05KjEsIENBVE0tNjVLKjEsIFRHTS02NUcqMVwiLCBcIkFHTS02NUcqMixHQlUtMzEqMixBSU0tOSoyLFRHUCxFQ01cIiwgXCJUR1AsIE0xNTEqMTQsIE1rLTgyKjIsIE1rLTgyQUlSKjIsIEFJTS05KjIsIEVDTVwiLCBcIlBHTS0gR0JVLTEwKjQsIEFHTS02NUsqMixBSU0tOSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjYsQ0JVLTg3KjIsTWsxNTEqNyxBSU0tOSoyLFRHUCxFQ01cIiwgXCJHQlUtMzEqMixHQlUtMzgqMiwgQUdNLTY1SCoyLCBBSU0tOSoyLFRHUCwgRUNNXCIsIFwiQ0JVLTEwMyo0LCBNMTUxKjE0LCBBSU0tOSoyLCBFQ01cIiwgXCJDQlUtODcqNCwgTTE1MSo0MiwgQUlNLTkqMiwgRUNNXCIsIFwiQUdNLTY1RCo2LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkNCVS04NyoyLCBNMTUxKjE0LCBNSy04MkFJUio2LCBBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTEwNSo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQkRVLTUwSEQqMixCRFUtNTBMR0IqMixUR1AsIENBUC05KjFcIiwgXCJDQlUtODcqNCwgTTE1MSoyOCwgQUlNLTkqMixFQ01cIiwgXCJNMTUxKjk4LCBNay04MioyLEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixHQlUtMTIsR0JVLTM4LE1LODIqMyxNSzgyQUlSKjMsTUs1KjcsVEdQLEFNLTkqMlwiLCBcIlRHUCwgTTE1MSo0MiwgTWstODIqNiwgTWstODJBSVIqNiwgQUlNLTkqMiwgRUNNXCIsIFwiVEdQLCBNMTUxKjg0LCBNay04MioyLEFJTS05KjIsIEVDTVwiLCBcIkJEVS01MExEKjIsIEJEVS01MEhEKjIsQ0FUTS02NUssIFRHTS02NUcsIFRHUCwgQ0FQLTkqMVwiLCBcIlRHUCwgTTE1MSo0OSwgTWstODIqMiwgQ0JVLTg3KjIsIEFJTS05KjIsIEVDTVwiLCBcIlRHUCwgQ0FQLTkqMSwgQkRVLTUwTEdCKjRcIiwgXCJHQlUtMTIqMTQsVEdQLCBBSU0tOSoyXCIsIFwiQUdNLTY1RCozLCBBR00tNjVIKjMsIENCVS05Nyo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixNay04MkFJUioyLENCVS05NyoyLEFJTS05TSoyLFRHUCxFQ01cIiwgXCJBR00tNjVEKjQsIENCVS0xMDUqMixDQlUtOTcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsTWstODIqNixBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJHQlUtMzgqNCxHQlUtMzEqMixUR1AsIEFJTS05KjJcIiwgXCJBR00tNjVEKjQsR0JVLTEyKjIsR0JVLTM4KjIsQUlNLTkqMixUR1AsRUNNLE1LNSo3XCIsIFwiQUdNLTY1RyxBR00tNjVLLEdCVS0xMCoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUcsQUdNLTY1RCxNay04Mio3LEFJTS05KjIsRUNNXCIsIFwiR0JVLTMxKjIsR0JVLTM4KjQsQUlNLTkqMixUR1AsRUNNLCBBSU0tOSoyXCIsIFwiQUdNLTY1SyoyLEdCVS0xMio4LEFJTS05TSoyLkVDTSxUR1BcIiwgXCJBR00tNjVEKjYsR0JVLTEyKjQsQUlNLTlNKjIsRUNNLFRHUFwiLCBcIkFHTS02NUUqMixNay04MkFJUioyLENCVS05NyoyLEFJTS05TSoyLEVDTSxUR1BcIiwgXCJBR00tNjVFKjIsQ0JVLTk3KjQsQUlNLTlNKjIsRUNNLFRHUFwiLCBcIkFHTS02NUUqMixDQlUtOTcqNCxBSU0tOU0qMixFQ00sTTE1MSBBUEtXUyo3LFRHUFwiLCBcIkFHTS02NUUqMixDQlUtMTA1KjQsQUlNLTlNKjIsRUNNLE0xNTEgQVBLV1MqNyxUR1BcIiwgXCJNay04Mio0LE1rLThBSVIqNCxBSU0tOSoyLEVDTVwiLCBcIk1rLTgyKjIwLEFJTS05KjIsRUNNXCIsIFwiTWstODIqNixBSU0tOSoyLFRHUCxFQ01cIiwgXCJNay04NCo2LEFJTS05KjIsVEdQLEVDTVwiLCBcIk1rLTgyQUlSKjYsTWstOEFJUio0LE0xNTEqMSxUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtMzgqNCxNMTUxIEFQS1dTKjcsQUdNLTY1RCoxLEFHTS02NUgqMSxUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtMzgqNCxNMTUxIEFQS1dTKjcsQUdNLTY1RSoyLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS0xMio0LE0xNTEgQVBLV1MqNyxBR00tNjVFKjIsVEdQLEFJTS05KjIsRUNNXCIsIFwiR0JVLTEyKjIsR0JVLTM4KjIsTTE1MSBBUEtXUyo3LEFHTS02NUUqMixUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtMTAqMixNMTUxIEFQS1dTKjcsQUdNLTY1RSoyLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS0zMSoyLE0xNTEgQVBLV1MqNyxBR00tNjVFKjIsVEdQLEFJTS05KjIsRUNNXCIsIFwiR0JVLTU0KjQsTTE1MSBBUEtXUyo3LEFHTS02NUUqMixUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtNTQqNCxNMTUxIEFQS1dTKjcsQUdNLTY1RCo0LFRHUCxBSU0tOSoyLEVDTVwiXSwgXCJBSC02NERfQkxLX0lJXCI6IFtcIjQgKiBGdWVsIFRhbmsgMjMwIGdhbFwiLCBcIjIgKiBNMjYxOiBNMTUxICg2UEQpLCAyICogSGVsbGZpcmUgc3RhdGlvbjogNCpBR00tMTE0S1wiLCBcIjQgKiBIZWxsZmlyZSBzdGF0aW9uOiA0KkFHTS0xMTRLXCIsIFwiNCAqIE0yNjE6IE0xNTEgKDZQRClcIiwgXCIyICogTTI2MTogTTE1MSAoNlBEKSwgMiAqIEZ1ZWwgVGFuayAyMzAgZ2FsXCIsIFwiMiAqIEZ1ZWwgVGFuayAyMzAgZ2FsLCAyICogSGVsbGZpcmUgc3RhdGlvbjogNCpBR00tMTE0S1wiLCBcIjIgKiBNMjYxOiBBL0IgLSBNMTUxICg2UEQpLCBFIC0gTTI3NCAoNlNLKSwgMiAqIEhlbGxmaXJlIHN0YXRpb246IDQqQUdNLTExNEtcIiwgXCIyICogTTI2MTogQS9CIC0gTTE1MSAoNlBEKSwgRSAtIE0yNTcgKDZJTCksIDIgKiBIZWxsZmlyZSBzdGF0aW9uOiA0KkFHTS0xMTRLXCIsIFwiMiAqIE0yNjE6IEMgLSBNMjU3ICg2SUwpLCBEL0UgLSBNMTUxICg2UEQpLCAyICogSGVsbGZpcmUgc3RhdGlvbjogNCpBR00tMTE0S1wiLCBcIjIgKiBNMjYxOiBDIC0gTTI3NCAoNlNLKSwgRC9FIC0gTTE1MSAoNlBEKSwgMiAqIEhlbGxmaXJlIHN0YXRpb246IDQqQUdNLTExNEtcIl0sIFwiQUpTMzdcIjogW1wiQmF0dGxlZmllbGQgQWlyIEludGVyZGljdGlvbjogUkItNzUqNCwgUkItMjRKKjIsIFhUXCIsIFwiQW50aS1zaGlwOiBSQi0wNEUqMiwgUkItNzQqMiwgWFRcIiwgXCJBbnRpLXNoaXAgKEhlYXZ5IE1hdik6IFJCLTc1VCo0LCBYVFwiLCBcIkhhcmQgVGFyZ2V0IChDb3VudGVybWVhc3VyZXMpOiBSQi0wNSwgWFQsIEtCLCBVMjJcIiwgXCJIYXJkIFRhcmdldCAoTUFWKTogUkItNzVUKjIsIFJCLTc0KjIsIFhUXCIsIFwiRmVycnkgRmxpZ2h0OiBYVFwiLCBcIkNBUyAoNzUgR1VOKTogUkItNzUqMiwgQUtBTlwiLCBcIkNBUDogUkItNzQqNCwgWFRcIiwgXCJDb3VudGVybWVhc3VyZXMgRXNjb3J0OiBVLzIyQSwgS0JcIiwgXCJTdHJpa2U6IEJLOTAgKE1KMSkqMiwgUkItNzQqMiwgWFRcIiwgXCJDQVM6IEFLQU4sIFJCLTA1QVwiLCBcIkNBUCAoNiBBQU0pOiBSQi03NCo0LCBSQi0yNEoqMiwgWFRcIiwgXCJSb2NrZXQgSGFsZiBMb2FkIEhFOiBBUkFLIEhFKjIsIFJCLTc0KjIsIFhUXCIsIFwiQ0FQIC8gSW50ZWNlcHQ6IFJCLTA1QSoyLCBSQi03NCoyLCBYVFwiLCBcIkJvbWJzIExvdy1kcmFnOiBTQjcxTEQqMTYsIFJCLTI0SioyLCBYVFwiLCBcIlNFQUQ6IFJCLTc1VCoyLCBVMjIvQSwgS0IsIFhUXCIsIFwiQW50aS1TaGlwIChNb2Rlcm4pOiBSQi0xNUYqMiwgUkItNzQqMiwgWFRcIiwgXCJOZXcgUGF5bG9hZFwiLCBcIkNBUCAoQUozNyk6IFJCLTI0SioyXCIsIFwiRUNNIEVzY29ydCBBbnRpLXNoaXA6IFJCLTA0RSwgS0IsIFJCLTc0KjIsIFhUXCIsIFwiQm9tYnMgSGlnaC1kcmFnOiBTQjcxSEQqMTYsIFhULCBSQi0yNEpcIiwgXCJBbnRpLXNoaXAgKExpZ2h0IE1hdik6IFJCLTc1KjQsIFhUXCIsIFwiUm9ja2V0IEZ1bGwgTG9hZCBIRTogIEFSQUsgSEUqNCwgUkItMjRKLCBYVFwiLCBcIklsbHVtaW5hdGlvbjogTFlTQio4LCBYVFwiLCBcIkFudGktc2hpcCAoUkIwNSk6IFJCLTA1QSoyLCBSQi03NCoyLCBYVFwiLCBcIkNBUCAoR3VuKTogQUtBTioyLCBSQi03NCoyLCBYVFwiLCBcIkhhcmQgVGFyZ2V0OiBSQi0wNUEqMiwgUkItNzQqMiwgWFRcIiwgXCJSQi0wNSoyLCBYVFwiLCBcIkNBUzogQVJBSyBNNzAgSEUqNCwgWFRcIiwgXCJSdW53YXkgU3RyaWtlOiBTQjcxSEQqMTYsIFJCLTI0SiwgWFRcIl0sIFwiQVY4Qk5BXCI6IFtcIkgtTC1IIDJcIiwgXCJBRkFDIDFcIiwgXCJBUyAxXCIsIFwiSC1NLUggM1wiLCBcIkludGVyZGljdGlvbiAxIChILUgtSC1IKVwiLCBcIkludGVyZGljdGlvbiAyIChILUgtSC1IKVwiLCBcIkFGQUMgM1wiLCBcIkludGVyZGljdGlvbiAzIChILUwtTC1IKVwiLCBcIkgtTS1IIDFcIiwgXCJILUwtSCAxXCIsIFwiUEdNIDIgKEgtSC1ILUgpXCIsIFwiTC1MLUwgMVwiLCBcIkFGQUMgMlwiLCBcIkgtTS1IIDJcIiwgXCJBcmVhIFN1cHByZXNzaW9uXCIsIFwiUm9ja2V0cyAxXCIsIFwiQVMgMlwiLCBcIkhlbG8gRXNjb3J0IDFcIiwgXCJQR00gMSAoSC1ILUgtSClcIiwgXCJIZWxvIEVzY29ydCAyXCIsIFwiUEdNIDMgKEgtSC1ILUgpXCIsIFwiQW50aSBBcm1vclwiLCBcIlJBIDEgKEgtTS1NLUgpXCIsIFwiU3RhbmQgT2ZmIDFcIiwgXCJTdGFuZCBPZmYgMlwiLCBcIlN0YW5kIE9mZiAzXCIsIFwiSXJvbiBIYW5kIDFcIiwgXCJJcm9uIEhhbmQgMlwiXSwgXCJDLTEwMUNDXCI6IFtcIjIqQUlNLTlQLCBERUZBIDU1MyBDQU5OT04gKEkpXCIsIFwiMipBSU0tOU0sIERFRkEgNTUzIENBTk5PTiAoSSlcIiwgXCIyKkFJTS05UCwgREVGQSA1MzMgQ0FOTk9OIChJSSlcIiwgXCIyKkFJTS05UCwgQU4tTTMgQ0FOTk9OIChJVilcIiwgXCIyKlIuNTUwIE1BR0lDLCBERUZBIDU1MyBDQU5OT05cIiwgXCIyKkFJTS05TSwgQU4tTTMgQ0FOTk9OIChJSUkpXCIsIFwiMipBSU0tOVAsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqUi41NTAgTUFHSUMsIERFRkEgNTUzIENBTk5PTiAoSUlJKVwiLCBcIjIqQUlNLTlQLCAyKkJFTE9VR0EsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqQUlNOS1QLCAyKlNFQSBFQUdMRSwgREVGQS01NTMgQ0FOTk9OXCIsIFwiMipBSU0tOU0gMipTRUEgRUFHTEUsIEFOLU0zIENBTk5PTlwiLCBcIjIqQUlNLTlNLCBBTi1NMyBDQU5OT05cIiwgXCIyKkJFTE9VR0EsMipCRFUtMzMsIERFRkEtNTUzIENBTk5PTlwiLCBcIjIqIFNFQSBFQUdMRSwgREVGQS01NTMgQ0FOTk9OXCIsIFwiMipBSU0tOVAsIDIqQlItMjUwLDIqTUstODIsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqUi41NTAgTUFHSUMsIDIqU0VBIEVBR0xFICwgREVGQS01NTMgQ0FOTk9OXCIsIFwiMipSLjU1MCBNQUdJQywgREVGQSA1NTMgQ0FOTk9OIChJVilcIiwgXCIyKkJFTE9VR0EsIDIqQlItNTAwLCBERUZBIDU1MyBDQU5OT05cIiwgXCIyKkFJTS05TSwgREVGQSA1NTMgQ0FOTk9OIChJVilcIiwgXCIyKlIuNTUwIE1BR0lDLCBBTi1NMyBDQU5OT04gKElJKVwiLCBcIjIqUjU1MCBNYWdpYywgREVGQSA1NTMgQ0FOTk9OIChJKVwiLCBcIjIqQUlNLTlNICwyKkJFTE9VR0EsMipCSU4tMjAwLCBBTi1NMyBDQU5OT05cIiwgXCIyKkFJTS05TSwgMipMQVUgNjgsIDIqTUstODIsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqQUlNLTlQLCBBTi1NMyBDQU5OT04gKElJSSlcIiwgXCIyKkFJTS05TSwgREVGQSA1MzMgQ0FOTk9OIChJSSlcIiwgXCIyKlIuNTUwIE1BR0lDLCAyKkJSLTI1MCwgMipCRFUtMzMsIERFRkEgNTUzIENBTk5PTlwiXSwgXCJDLTEwMUVCXCI6IFtcIlNtb2tlIFN5c3RlbTogV2hpdGUgU21va2VcIiwgXCJTbW9rZSBTeXN0ZW06IFdoaXRlIFNtb2tlK1JlZCBDb2xvcmFudFwiLCBcIlNtb2tlIFN5c3RlbTogV2hpdGUgU21va2UrWWVsbG93IENvbG9yYW50XCJdLCBcIkgtNkpcIjogW1wiWUotMTIgeCAyXCIsIFwiWUotMTIgeCA0XCIsIFwiWUotODNLIHggNlwiLCBcIjI1MC0yIEhEIEJvbWIgeCAxMiBpbiBCYXlcIiwgXCIyNTAtMiBIRCBCb21iIHggMjQgaW4gQmF5XCIsIFwiMjUwLTMgTEQgQm9tYiB4IDM2XCIsIFwiS0QtNjMgeCA0XCIsIFwiS0QtMjAgeCA2XCIsIFwiS0QtMjAgeCA0XCIsIFwiS0QtNjMgeCAyLCBLRC0yMCB4IDRcIiwgXCJLRC02MyB4IDIsIEtELTIwIHggMlwiXSwgXCJKLTExQVwiOiBbXCJGQUItMTAweDM2LFItNzN4MixFQ01cIiwgXCJGQUItMjUweDgsUi03M3gyLEVDTVwiLCBcIkZBQi01MDB4OCxSLTczeDIsRUNNXCIsIFwiUy04S09NeDgwLEZBQi0yNTB4NCxSLTczeDIsRUNNXCIsIFwiUy0xM3gyMCxGQUItMjUweDQsUi03M3gyLEVDTVwiLCBcIlMtMjV4NCxGQUItNTAweDQsUi03M3gyLEVDTVwiLCBcIlItMjdFUng0LFItMjdFVHgyLFItNzN4MixFQ01cIiwgXCJSLTc3eDYsUi03M3gyLEVDTVwiLCBcIlItMjdFUng2LFItNzN4MixFQ01cIiwgXCJSLTc3eDQsUi0yN0VUeDIsUi03M3gyLEVDTVwiLCBcIlItNzd4NCxSLTI3RVJ4MixSLTczeDIsRUNNXCIsIFwiQmV0QUItNTAwU2hQeDYsUi03M3gyLEVDTVwiLCBcIlItNzN4NCxFQ01cIiwgXCJSLTc3eDIsUi0yN0VUeDIsUi03M3gyLEVDTVwiLCBcIlItNzd4NixSLTczeDRcIiwgXCJSLTc3eDIsUi0yN0VUeDIsUi0yN0VSeDIsUi03M3gyLEVDTVwiLCBcIlItMjdFVHgyLFItMjdFUng0LFItNzN4MixFQ01cIiwgXCJTLThUc014ODAsRkFCLTI1MHg0LFItNzN4MixFQ01cIiwgXCJTLThPRlAyeDgwLEZBQi0yNTB4NCxSLTczeDIsRUNNXCIsIFwiRkFCLTI1MHgxOCxSLTczeDIsRUNNXCIsIFwiMipTOC1LT014MiwgUi03M3gyLCBFQ01cIiwgXCIyKlM4LU9GUDJ4MiwgUi03M3gyLCBFQ01cIiwgXCJGQUItMjUweDQsIDIqRkFCLTUwMHgyLCBSLTczeDJcIiwgXCJGQUItMjUweDQsIDIqRkFCLTI1MHgyLCBSLTczeDJcIiwgXCJSQkstMjUwIEhFQVQvQVB4MiwgUkJLLTI1MCBIRS9GcmFneDIsIFItNzN4MlwiXSwgXCJKRi0xN1wiOiBbXCJQTC01RXgyLCBDODAyQUt4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgQy03MDEgSVJ4MiwgMTEwMEwgVGFuaywgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgU0QtMTB4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgTEQtMTB4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgODAwTCBUYW5rLCBXTUQ3XCIsIFwiUEwtNUV4MiwgR0JVLTEweDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKkdCVS0xMngyLCA4MDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCAyKk1rLTgyeDIsIE1rLTgzeDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIDExMDBMIFRhbmt4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgV01ENywgQ004MDJBS0d4MiwgODAwTCBUYW5rLCBETFwiLCBcIlBMLTVFeDIsIEMtNzAxIENDRHgyLCAxMTAwTCBUYW5rLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBHQlUtMTJ4MiwgMTEwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIDIqR0JVLTEyeDIsIEdCVS0xNngyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgV01ENywgODAwTCBUYW5reDIsIFNQSiwgMipMRC0xMFwiLCBcIlBMLTVFeDIsIExTLTZ4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgQy03MDEgSVJ4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgR0JVLTEyeDIsIDExMDBMIFRhbmt4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqTEQtMTB4MiwgMTEwMEwgVGFua3gyLCBTUEpcIiwgXCJQTC01RXgyLCBMRC0xMHgyLCAxMTAwTCBUYW5reDIsIFNQSlwiLCBcIlBMLTVFeDIsIDIqTEQtMTB4MiwgTFMtNngyLCBTUEpcIiwgXCJQTC01RXgyLCAyKkxELTEweDIsIEdCLTYtSEV4MiwgU1BKXCIsIFwiUEwtNUV4MiwgQy03MDEgSVJ4MiwgODAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBDQ0R4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgQy03MDEgQ0NEeDIsIDgwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMipHQlUtMTJ4MiwgMTEwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIElSeDIsIDExMDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBJUngyLCA4MDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBDQ0R4MiwgMTEwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIENDRHgyLCA4MDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBJUngyLCBMUy02eDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIEMtNzAxIElSL0NDRCwgR0ItNi1IRXgyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBDLTcwMSBJUi9DQ0QsIEdCLTYtU0ZXeDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIFdNRDcsIEdCLTYtU0ZXeDIsIDgwMEwgVGFuaywgQlJNMVwiLCBcIlBMLTVFeDIsIFdNRDcsIEdCLTYtU0ZXeDIsIDgwMEwgVGFuaywgR0JVLTEyXCIsIFwiUEwtNUV4MiwgMipNay04MlNFeDIsIE1rLTgzeDNcIiwgXCJQTC01RXgyLCBNay04NHgzXCIsIFwiUEwtNUV4MiwgMipNazV4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgVW5ndWlkZWQgOTBtbXgyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCAyKk1rNXgyLCBNay04M3gzXCIsIFwiUEwtNUV4MiwgQlJNMXgyLCAxMTAwTCBUYW5rLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMngxMTAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgU0QtMTB4MiwgMngxMTAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgMipTRC0xMHgyLCAyeDExMDBMIFRhbmtcIiwgXCJQTC01RXgyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBTRC0xMHgyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCAyKlNELTEweDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIFNELTEweDIsIFNQSlwiLCBcIlBMLTVFeDIsIFNQSlwiLCBcIlBMLTVFeDIsIDIqU0QtMTB4MiwgU1BKXCIsIFwiUEwtNUV4MlwiLCBcIlBMLTVFeDIsIFNELTEweDJcIiwgXCJQTC01RXgyLCAyKlNELTEwXCIsIFwiUEwtNUV4MiwgU0QtMTB4MiwgU1BKLCAxMTAwTCBUYW5reDJcIiwgXCJQTC01RXgyLCAyKlNELTEweDIsIDExMDBMIFRhbmt4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgU0QtMTB4MiwgMTEwMEwgVGFua3gyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBHQlUtMTZ4MiwgQlJNMXgyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqTEQtMTAsIEdCLTZ4MiwgMipTRC0xMCwgU1BKXCIsIFwiUEwtNUV4MiwgQy03MDEgQ0NEeDIsIFNQSlwiLCBcIlBMLTVFeDIsIDIqTEQtMTAsIENNODAyQUtHeDIsIDIqU0QtMTAsIERMXCIsIFwiUEwtNUV4MiwgMipNSy04MngyLCBNSy04M3gyLCBNSy04NFwiLCBcIlBMLTVFeDIsIExTLTZ4MiwgR0ItNngyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCAyKkdCVS0xMngyLCBMUy02eDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKkdCVS0xMngyLCBHQi02eDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKlR5cGUtMjAwQXgyXCIsIFwiUEwtNUV4MiwgVHlwZS0yMDBBeDJcIiwgXCJQTC01RXgyLCAyKkxTNi0yNTB4MiwgODAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKkxTNi0yNTB4MiwgODAwTCBUYW5rLCAxMTAwTCBUYW5reDJcIiwgXCJQTC01RXgyLCAyKkxTNi0xMDB4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMipMUzYtMTAweDIsIDgwMEwgVGFua3gyLCBXTUQ3XCJdLCBcIldpbmdMb29uZy1JXCI6IFtcIkFLRC0xMCB4IDJcIl0sIFwiQ2hyaXN0ZW4gRWFnbGUgSUlcIjogW1wiU21va2UgLSB3aGl0ZVwiXSwgXCJGLTE2Q181MFwiOiBbXCJBSU0tMTIwQioyLCBBSU0tOU0qNCwgRlVFTCozXCIsIFwiQUlNLTEyMEIqNCwgQUlNLTlNKjIsIEZVRUwqM1wiLCBcIkFJTS0xMjBCKjYsIEZVRUwqM1wiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCo0LCBGVUVMKjJcIiwgXCJBSU0tMTIwQyo0LCBBSU0tOVgqMiwgRlVFTCozXCIsIFwiQUlNLTEyMEMqNCwgQUlNLTlYKjIsIEZVRUwqMywgVEdQXCIsIFwiQUlNLTEyMEMqNCwgQUlNLTlYKjIsIEZVRUwqMlwiLCBcIkFJTS0xMjBDKjYsIEZVRUwqM1wiLCBcIkFJTS0xMjBDKjQsIEFJTS05WCoyLCBGVUVMKjIsIEVDTVwiLCBcIkFJTS0xMjBDKjQsIEFJTS05WCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqNiwgRlVFTCoyLCBFQ01cIiwgXCJBSU0tMTIwQyo2LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqNiwgRlVFTCoyXCIsIFwiQUlNLTEyMEMqNiwgRlVFTCozLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTY1RCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS02NUgqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tNjVIKjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTY1RCo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIENCVS05Nyo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIE1LLTgyKjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQ0JVLTg3KjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgTUstODJIRCo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIENCVS0xMDMqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBDQlUtMTA1KjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgTUstODIqNiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBNSy04MkhEKjYsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwKjIsIEFJTS05WCoyLCBNSy04MlNFKjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwKjIsIEFJTS05WCoyLCBNSy04MlNFKjYsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgTUstODQqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBNSy04MlAqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMTIqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMTIqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMTAqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMjQqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMzEtMUIqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMzEtM0IqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMzgqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBHQlUtMzgqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tNjVLKjIsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTY1RyoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS02NUcsIEFHTS02NUssIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTg4QyoyLCBGVUVMKjMsIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS04OEMqMiwgRlVFTCoyLCBFQ00sIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS04OEMqNCwgRUNNLCBUR1AsIEhUU1wiLCBcIkFJTS0xMjBDKjQsIEFHTS04OEMqMiwgRlVFTCozLCBUR1AsIEhUU1wiLCBcIkFJTS0xMjBDKjQsIEFHTS04OEMqMiwgRlVFTCoyLCBFQ00sIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqNCwgQUdNLTg4Qyo0LCBFQ00sIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIE1LLTYxKjIsIEZVRUwqMiwgRUNNLCBUR1BcIl0sIFwiRi01RS0zXCI6IFtcIk1rLTgyTEQqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkFJTS05UCoyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlQNSoyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlQKjIsIEZ1ZWwgMTUwKjNcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMTUwKjNcIiwgXCJNay04MlNFKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJDQlUtNTJCKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtMyBIRSo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTMgSEVBVCo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTY4IEhFKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtNjggSEVBVCo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTS0xMTcqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkdCVS0xMio0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiQ0JVLTUyQio1LEFJTS05KjJcIiwgXCJNay04MkxEKjUsQUlNLTkqMlwiLCBcIk1rLTgyU0UqNSxBSU0tOSoyXCIsIFwiTWstODJMRCo3LEFJTS05UCoyLCBGdWVsIDI3NSoyXCIsIFwiTWstODJTRSo3LEFJTS05UCoyLCBGdWVsIDI3NSoyXCIsIFwiTEFVLTMgSEUqMixNay04MkxELEFJTS05UCoyLEZ1ZWwgMjc1KjJcIiwgXCJMQVUtNjggSEUqMixNay04MkxELEFJTS05UCoyLEZ1ZWwgMjc1KjJcIiwgXCJNLTExNyo1LEFJTS05KjJcIiwgXCJBSU0tOVAqMiwgRnVlbCAyNzVcIiwgXCJBSU0tOVAqMiwgRnVlbCAxNTBcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMjc1XCIsIFwiQUlNLTlQNSoyLCBGdWVsIDE1MFwiLCBcIkFJTS05QioyLCBGdWVsIDI3NVwiLCBcIkFJTS05QioyLCBGdWVsIDE1MFwiLCBcIkFJTS05QioyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlCKjIsIEZ1ZWwgMTUwKjNcIiwgXCJBTi9BU1EtVDUwLCBBSU0tOVAsIEZ1ZWwgMTUwXCIsIFwiQUlNLTlCKjJcIiwgXCJBSU0tOVAqMlwiLCBcIkFJTS05UDUqMlwiLCBcIkFudGlzaGlwIE1rODJcIl0sIFwiRi01RVwiOiBbXCJNay04MkxEKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJBSU0tOVAqMiwgRnVlbCAyNzUqM1wiLCBcIkFJTS05UDUqMiwgRnVlbCAyNzUqM1wiLCBcIkFJTS05UCoyLCBGdWVsIDE1MCozXCIsIFwiQUlNLTlQNSoyLCBGdWVsIDE1MCozXCIsIFwiTWstODJTRSo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiQ0JVLTUyQio0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTMgSEUqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkxBVS0zIEhFQVQqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkxBVS02OCBIRSo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTY4IEhFQVQqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIk0tMTE3KjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJHQlUtMTIqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkNCVS01MkIqNSxBSU0tOSoyXCIsIFwiTWstODJMRCo1LEFJTS05KjJcIiwgXCJNay04MlNFKjUsQUlNLTkqMlwiLCBcIk1rLTgyTEQqNyxBSU0tOVAqMiwgRnVlbCAyNzUqMlwiLCBcIk1rLTgyU0UqNyxBSU0tOVAqMiwgRnVlbCAyNzUqMlwiLCBcIkxBVS0zIEhFKjIsTWstODJMRCxBSU0tOVAqMixGdWVsIDI3NSoyXCIsIFwiTEFVLTY4IEhFKjIsTWstODJMRCxBSU0tOVAqMixGdWVsIDI3NSoyXCIsIFwiTS0xMTcqNSxBSU0tOSoyXCIsIFwiQUlNLTlQKjIsIEZ1ZWwgMjc1XCIsIFwiQUlNLTlQKjIsIEZ1ZWwgMTUwXCIsIFwiQUlNLTlQNSoyLCBGdWVsIDI3NVwiLCBcIkFJTS05UDUqMiwgRnVlbCAxNTBcIiwgXCJBSU0tOUIqMiwgRnVlbCAyNzVcIiwgXCJBSU0tOUIqMiwgRnVlbCAxNTBcIiwgXCJBSU0tOUIqMiwgRnVlbCAyNzUqM1wiLCBcIkFJTS05QioyLCBGdWVsIDE1MCozXCIsIFwiQU4vQVNRLVQ1MCwgQUlNLTlQLCBGdWVsIDE1MFwiLCBcIkFJTS05QioyXCIsIFwiQUlNLTlQKjJcIiwgXCJBSU0tOVA1KjJcIl0sIFwiRi04NkYgU2FicmVcIjogW1wiMTIwZ2FsIEZ1ZWwqMlwiLCBcIjIwMGdhbCBGdWVsKjJcIiwgXCIxMjBnYWwgRnVlbCoyLCAyMDBnYWwgRnVlbCoyXCIsIFwiR0FSLTgqMlwiLCBcIjEyMGdhbCBGdWVsKjIsIEdBUi04KjJcIiwgXCJIVkFSKjE2XCIsIFwiMjAwZ2FsIEZ1ZWwqMiwgSFZBUngyKjRcIiwgXCJBTi1NNjQqMlwiLCBcIjIwMGdhbCBGdWVsKjIsIEFOLU02NCoyXCIsIFwiTTExNyoyXCJdLCBcIkYtMTRBLTEzNS1HUlwiOiBbXCJYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjYsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTdGKjYsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS03RioyLCBBSU0tOUwqMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN0YqMSwgQUlNLTlMKjQsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTlMKjQsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTlNKjQsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNjAqNCwgQUlNLTlNKjQsIFhUKjJcIiwgXCJBSU0tN0YqNCwgQUlNLTlMKjQsIFhUKjJcIiwgXCJBSU0tN0YqNCwgQUlNLTlMKjQsIFhUKjJcIiwgXCJCRFUtMzMqMTRcIiwgXCJCRFUtMzMqMTJcIiwgXCJHQlUtMTAqMlwiLCBcIkdCVS0xMio0XCIsIFwiR0JVLTE2KjRcIiwgXCJHQlUtMjQqMlwiLCBcIk1rLTg0KjRcIiwgXCJNay04Myo0XCIsIFwiTWstODIqNFwiLCBcIk1rLTgyKjE0XCIsIFwiTWstODEqMTRcIiwgXCJNay0yMCo0XCIsIFwiTWstODJBSVIqNFwiLCBcIlp1bmkqMTJcIiwgXCJadW5pKjI4XCIsIFwiTFVVLTIqMjRcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdGKjEsIEFJTS05TCoyLCBYVCoyLCBNay04MioyXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03RioxLCBBSU0tOUwqMiwgWFQqMiwgTWstODIqMVwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN0YqMSwgQUlNLTlMKjIsIFhUKjIsIE1rLTIwKjJcIiwgXCJBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIEdCVS0xMioyLCBMQU5USVJOXCIsIFwiQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBHQlUtMjQqMSwgTEFOVElSTlwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIE1rLTgyKjIsIExBTlRJUk5cIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBNay0yMCoyLCBMQU5USVJOXCJdLCBcIkYtMTRBLTk1LUdSXCI6IFtcIkFJTS01NEEtTUs0Nyo2LCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs0Nyo2LCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs2MCo2LCBBSU0tOUwqMlwiLCBcIkFJTS03Rio2LCBBSU0tOUwqMlwiLCBcIkFJTS03Rio2LCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tN0YqMiwgQUlNLTlMKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTdGKjIsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzYwKjQsIEFJTS03RioyLCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN0YqMSwgQUlNLTlMKjRcIiwgXCJBSU0tNTRBLU1LNDcqMiwgQUlNLTdGKjEsIEFJTS05TCo0XCIsIFwiQUlNLTU0QS1NSzYwKjIsIEFJTS03RioxLCBBSU0tOUwqNFwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tOUwqNFwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tOUwqNFwiLCBcIkFJTS01NEEtTUs2MCo0LCBBSU0tOUwqNFwiLCBcIkFJTS03Rio0LCBBSU0tOUwqNFwiLCBcIkFJTS03Rio0LCBBSU0tOUwqNFwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN0YqMywgQUlNLTlMKjJcIiwgXCJBSU0tNTRBLU1LNDcqMiwgQUlNLTdGKjMsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzYwKjIsIEFJTS03RiozLCBBSU0tOUwqMlwiLCBcIkJEVS0zMyoxNFwiLCBcIkJEVS0zMyoxMlwiLCBcIkdCVS0xMCoyXCIsIFwiR0JVLTEyKjRcIiwgXCJHQlUtMTYqNFwiLCBcIkdCVS0yNCoyXCIsIFwiTWstODQqNFwiLCBcIk1rLTgzKjRcIiwgXCJNay04Mio0XCIsIFwiTWstODIqMTRcIiwgXCJNay04MSoxNFwiLCBcIk1rLTIwKjRcIiwgXCJNay04MkFJUio0XCIsIFwiWnVuaSoxMlwiLCBcIlp1bmkqMjhcIiwgXCJMVVUtMioyNFwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN0YqMSwgQUlNLTlMKjIsIE1rLTgyKjJcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdGKjEsIEFJTS05TCoyLCBNay04MioxXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03RioxLCBBSU0tOUwqMiwgTWstMjAqMlwiXSwgXCJGLTE0QlwiOiBbXCJYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjYsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjYsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzYwKjYsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0Qy1NSzQ3KjYsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTdNKjYsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTdNKjYsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS03TSoyLCBBSU0tOU0qMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tN00qMiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNjAqNCwgQUlNLTdNKjIsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0Qy1NSzQ3KjQsIEFJTS03TSoyLCBBSU0tOU0qMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN00qMSwgQUlNLTlNKjIsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03TSoxLCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs2MCoyLCBBSU0tN00qMSwgQUlNLTlNKjQsIFhUKjJcIiwgXCJBSU0tNTRDLU1LNDcqMiwgQUlNLTdNKjEsIEFJTS05TSo0LCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS05TSoyLCBBSU0tOUwqMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs2MCo0LCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS01NEMtTUs0Nyo0LCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS03TSo0LCBBSU0tOU0qMiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tN00qNCwgQUlNLTlMKjQsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqMiwgQUlNLTdNKjMsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03TSozLCBBSU0tOU0qMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs2MCoyLCBBSU0tN00qMywgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tNTRDLU1LNDcqMiwgQUlNLTdNKjMsIEFJTS05TSoyLCBYVCoyXCIsIFwiQkRVLTMzKjE0XCIsIFwiQkRVLTMzKjEyXCIsIFwiR0JVLTEwKjJcIiwgXCJHQlUtMTIqNFwiLCBcIkdCVS0xNio0XCIsIFwiR0JVLTI0KjJcIiwgXCJNay04NCo0XCIsIFwiTWstODMqNFwiLCBcIk1rLTgyKjRcIiwgXCJNay04MioxNFwiLCBcIk1rLTgxKjE0XCIsIFwiTWstMjAqNFwiLCBcIk1rLTgyQUlSKjRcIiwgXCJadW5pKjEyXCIsIFwiWnVuaSoyOFwiLCBcIkxVVS0yKjI0XCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgTWstODIqMlwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIE1rLTgyKjFcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBNay0yMCoyXCIsIFwiQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBHQlUtMTIqMiwgTEFOVElSTlwiLCBcIkFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgR0JVLTI0KjEsIExBTlRJUk5cIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBNay04MioyLCBMQU5USVJOXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgTWstMjAqMiwgTEFOVElSTlwiXSwgXCJGQS0xOENfaG9ybmV0XCI6IFtcIkFJTS05TSo2LCBBSU0tN00qMiwgRlVFTCozXCIsIFwiQUlNLTlNKjYsIEFJTS03TSoyLCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstODQqMiwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIE1LLTgzKjQsIEZVRUwqMlwiLCBcIkNhcnJpZXIgTGFuZGluZ1wiLCBcIkFJTS05TSoyLCBBSU0tN00qNCwgRlVFTCozXCIsIFwiQUlNLTlNKjIsIENCVS05OSo0LCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstODJTRSo0LCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstMjAqNCwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIE1LLTgyKjQsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBBSU0tN00qMiwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIE1LLTgzKjIsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBaVU5JKjQsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBMQVUtNjEqNCwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIExBVS02OCo0LCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgQUlNLTdNKjIsIEZVRUwqMVwiLCBcIkFJTS05WCoyLCBBSU0tMTIwQy01KjEsIEdCVS0zMSo0LCBBVEZMSVIsIEZVRUxcIiwgXCJBSU0tOVgqMiwgQUlNLTEyMEMtNSo2LCBGVUVMKjNcIiwgXCJBSU0tOVgqMiwgQUlNLTEyMEMtNSoxLCBBR00tNjVEKjQsIEFURkxJUiwgRlVFTFwiLCBcIkFJTS05WCoyLCBBSU0tMTIwQy01KjIsIEFHTS04OEMqMiwgRlVFTFwiLCBcIkFJTS05WCoyLCBBSU0tMTIwQy01KjEsIEdCVS0zOCo0LCBHQlUtMTIqNCwgQVRGTElSLCBGVUVMXCIsIFwiQUlNLTlYKjIsIEFJTS0xMjBDLTUqMSwgQUdNLTg0RSoyLCBEQVRBTElOSywgQVRGTElSLCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgQUlNLTEyMEMtNSoxLCBBR00tODREKjQsIEFURkxJUiwgRlVFTFwiLCBcIkFJTS05TSoyLCBBVEZMSVIsIEZVRUxcIiwgXCJBSU0tOU0qMiwgQVRGTElSLCBGVUVMKjJcIl0sIFwiSS0xNlwiOiBbXCI2eFJTLTgyXCIsIFwiMnhGQUItMTAwXCIsIFwiNnhSUy04MiwgMnhGQUItMTAwXCIsIFwiNnhSUy04MiwgMnhEcm9wVGFuay05M0xcIiwgXCIyeERyb3BUYW5rLTkzTFwiXSwgXCJLYS01MFwiOiBbXCI0eEZBQi01MDBcIiwgXCIyeEZ1ZWwgdGFuaywgMnhLTUdVIEFQXCIsIFwiODB4Uy04IFRzTVwiLCBcIjJ4RnVlbCB0YW5rLCA0MHhTLThcIiwgXCI4MHhTLThcIiwgXCI0eEtNR1UgQVRcIiwgXCIyeEtNR1UgQVBcIiwgXCIyeEZ1ZWwgdGFuaywgMTJ4OUE0MTcyXCIsIFwiMnhGdWVsIHRhbmssIDJ4VVBLLTIzXCIsIFwiMTJ4OUE0MTcyLCA0MHhTLThcIiwgXCIxMng5QTQxNzIsIDJ4S01HVSBBVFwiLCBcIjR4S01HVSBBUFwiLCBcIjJ4RkFCLTI1MCwgMnhGdWVsIHRhbmtcIiwgXCIxMng5QTQxNzIsIDJ4RkFCLTUwMFwiLCBcIjIweFMtMTNcIiwgXCI0MHhTLThcIiwgXCIxMng5QTQxNzIsIDJ4VVBLLTIzXCIsIFwiMnhLTUdVIEFUXCIsIFwiNng5QTQxNzJcIiwgXCIyeEZ1ZWwgdGFuaywgMnhLTUdVIEFUXCIsIFwiNHhGdWVsIHRhbmtcIiwgXCIyeEtNR1UgQVAsIDEyeDlBNDE3MlwiLCBcIjEyeDlBNDE3MlwiLCBcIjJ4RnVlbCB0YW5rXCIsIFwiNDB4Uy04IFRzTSwgMTJ4OUE0MTcyXCIsIFwiMnhGQUItNTAwXCIsIFwiNDB4Uy04IFRzTSwgMnhGdWVsIHRhbmtcIiwgXCI0eFVQSy0yM1wiLCBcIjEweFMtMTNcIiwgXCI0MHhTLTggVHNNXCIsIFwiMTJ4OUE0MTcyLCAxMHhTLTEzXCIsIFwiMnhGdWVsIHRhbmssIDJ4RkFCLTUwMFwiLCBcIjJ4RkFCLTI1MFwiLCBcIjR4RkFCLTI1MFwiLCBcIjJ4RnVlbCB0YW5rLCAxMHhTLTEzXCIsIFwiMnhGQUItMjUwLCAxMng5QTQxNzJcIiwgXCIyeFVQSy0yM1wiXSwgXCJLYS01MF8zXCI6IFtcIjR4SWdsYVwiLCBcIjJ4S2gtMjVNTCwgMTB4Uy0xMywgNHhJZ2xhXCIsIFwiMTJ4OUE0MTcyLCA0MHhTLThLT00sIDR4SWdsYVwiLCBcIjEyeDlBNDE3MiwgNDB4Uy04T0ZQLCA0eElnbGFcIiwgXCIxMng5QTQxNzIsIDQweFMtMTMsIDR4SWdsYVwiLCBcIjgweFMtOEtPTSwgNHhJZ2xhXCIsIFwiODB4Uy04T0ZQLCA0eElnbGFcIiwgXCIyMHhTLTIwLCA0eElnbGFcIiwgXCI0eFVQSy0yMywgNHhJZ2xhXCIsIFwiMTB4Uy0xMywgMnhGQUItNTAwLCA0eElnbGFcIiwgXCIxMHhTLTEzLCAyeEZBQi0yNTAsIDR4SWdsYVwiLCBcIjgweFMtOE9NLCA0eElnbGFcIiwgXCI4MHhTLThUc00sIDR4SWdsYVwiLCBcIjQweFMtOE9GUCwgMnhGdWVsLCA0eElnbGFcIiwgXCIxMng5QTQxNzIsIDJ4RnVlbCwgNHhJZ2xhXCJdLCBcIkwtMzlDXCI6IFtcIlNBQi0xMDB4MlwiLCBcIlItM1N4MlwiLCBcIlNtb2tlc1wiLCBcIkNlbnRyYWwgU21va2VcIiwgXCJGQUItMTAweDJcIiwgXCJTLTVLT3gzMlwiXSwgXCJMLTM5WkFcIjogW1wiUy01S094MzJcIiwgXCJTLTVLT3g2NFwiLCBcIlMtNUtPeDMyLCBQVEItMTUweDJcIiwgXCJTLTVLT3gzMiwgUFRCLTM1MHgyXCIsIFwiUy01S094MzIsIEZBQi0xMDB4MlwiLCBcIk9GQUItMTAwIEp1cGl0ZXIgeDQsIEZBQi0xMDB4MlwiLCBcIkZBQi0xMDB4MlwiLCBcIkZBQi0xMDB4NFwiLCBcIk9GQUItMTAwIEp1cGl0ZXIgeDhcIiwgXCJGQUItMTAweDIsIFBUQi0xNTB4MlwiLCBcIkZBQi0xMDB4MiwgUFRCLTM1MHgyXCIsIFwiUEstM3g0XCIsIFwiUEstM3gyLCBQVEItMTUweDJcIiwgXCJSLTYwTXgyXCIsIFwiU0FCLTEwMHg0XCIsIFwiUi0zU3gyXCIsIFwiUi0zU3gyLCBQSy0zeDJcIiwgXCJSLTYwTXgyLCBQSy0zeDJcIl0sIFwiTS0yMDAwQ1wiOiBbXCJGb3hcIiwgXCJGb3ggLyBNYWdpYyAoUVJBKVwiLCBcIkFscGhhIC8gUzUzMERcIiwgXCJGb3ggLyBTNTMwRCAvIE1hZ2ljXCIsIFwiRm94IC8gUzUzMEQgLyBNYWdpYyAvIEVjbGFpclwiLCBcIkJyYXZvXCIsIFwiQnJhdm8gLyBNYWdpY1wiLCBcIktpbG9cIiwgXCJLaWxvIC8gTWFnaWNcIiwgXCJCcmF2byAvIDR4TWstODIgLyBNYWdpY1wiLCBcIkJyYXZvIC8gR0JVLTEyIC8gTWFnaWNcIiwgXCJCcmF2byAvIDJ4R0JVLTEyIC8gTWFnaWNcIiwgXCJCcmF2byAvIEdCVS0xNiAvIE1hZ2ljXCIsIFwiQnJhdm8gLyBHQlUtMjQgLyBNYWdpY1wiLCBcIkJyYXZvIC8gQkFQLTEwMCAvIE1hZ2ljXCIsIFwiQnJhdm8gLyA0eFNuYWtlRXllIC8gTWFnaWNcIiwgXCJGb3ggLyA0eE1rLTgyIC8gTWFnaWNcIiwgXCJLaWxvIC8gNHhNay04MiAvIE1hZ2ljXCJdLCBcIk1CLTMzOUFcIjogW1wiQSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqTWsuODMgKyAyKk1rLjgxIFwiLCBcIkEgLSAyKjMyMEwgVGlwVGFua3MgW0NsZWFuXVwiLCBcIlJlY29uXCIsIFwiVHJhaW5pbmdcIiwgXCJBQSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqTEFVLTEwKFp1bmkgUm9ja2V0cykgW0FSTUFEQV1cIiwgXCJBTSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqQU4vTTMgR3VuUG9kcyArIDIqMzMwTCBUYW5rcyArIDIqTEFVLTMgKEh5ZHJhIHJvY2tldHMpXCIsIFwiQSAtIDIqNTAwTCBUaXBUYW5rcyArIDIqMzMwTCBUYW5rcyArIEx1Z2dhZ2UgQ29udGFpbmVyICBbRmVycnkgTG9uZyBSYW5nZV1cIiwgXCJBIC0gMio1MDBMIFRpcFRhbmtzICsgNCpNay44MkhEICsgMipMUi0yNSAoQVBJIFJvY2tldHMpXCIsIFwiQSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqMzMwTCBUYW5rcyBbRmVycnkgTWVkaXVtIFJhbmdlXVwiLCBcIkEgLSAyKjUwMEwgVGlwVGFua3MgKyAyKkFOL00zIEd1blBvZHMgKyAyKk1hdHJhIDE1NSArIDIqIEJlbG91Z2FcIiwgXCJSdW53YXkgSW50ZXJkaWN0aW9uXCIsIFwiQSAtIDIqNTAwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqTWsuODJMRCArIDIqTFItMjUgKEFQSSBSb2NrZXRzKVwiLCBcIkEgLSAyKjMyMEwgVGlwVGFua3MgKyAyKkRFRkEtNTUzIEd1blBvZHMgKyAyKk1rLjgyTEQgQm9tYnMgKyAyKkxSLTI1KEFQSSBSb2NrZXRzKVwiLCBcIkEgLSAyKjMyMEwgVGlwVGFua3MgKyAyKkRFRkEtNTUzIEd1blBvZHMgKyAyKk1rLjgyTEQgKyAyKkxSLTI1IChIRUkgUm9ja2V0cylcIiwgXCJBIC0gMiozMjBMIFRpcFRhbmtzICsgNipNay44MkxEXCIsIFwiUnVud2F5IEludGVyZGljdGlvbiAoMzYqQkFQLTEwMClcIiwgXCJBbnRpIC0gTGlnaHQgQXJtb3VyZWQgVmVoaWNsZSAoMzYqQkFULTEyMCBBQkwpXCIsIFwiQVAgLSAyKjMyMEwgVGlwVGFua3MgKyAyKkRFRkEtNTUzIEd1blBvZHMgKyAyKjMzMEwgVGFua3MgKyAyKk1hdHJhIDE1NSAoU05FQiByb2NrZXRzKVwiXSwgXCJNQi0zMzlBUEFOXCI6IFtcIlBBTiAtIFNtb2tlIFdoaXRlXCIsIFwiUEFOIC0gU21va2UgV2hpdGUgYW5kIENvbG9yIFJlZFwiLCBcIlBBTiAtIEZ1ZWwgRXh0ZXJuYWwgW1JFRCBTTU9LRV1cIiwgXCJQQU4gLSBGdWxsIFBheWxvYWQgW1JFRCBTTU9LRV0gKyAyKjMyMEwgVGlwVGFua3NcIiwgXCJQQU4gLSBGdWxsIFBheWxvYWQgW0dSRUVOIFNNT0tFXSArIDIqMzIwTCBUaXBUYW5rc1wiLCBcIlBBTiAtIEZ1ZWwgRXh0ZXJuYWwgW0dSRUVOIFNNT0tFXVwiLCBcIlBBTiAtIEZ1bGwgUGF5bG9hZCBbUkVEIFNNT0tFXSArIDIqNTAwTCBUaXBUYW5rc1wiLCBcIlBBTiAtIFNtb2tlIFdoaXRlIGFuZCBDb2xvciBHcmVlblwiLCBcIlBBTiAtIEZ1bGwgUGF5bG9hZCBbR1JFRU4gU01PS0VdICsgMio1MDBMIFRpcFRhbmtzXCJdLCBcIk1pLTI0UFwiOiBbXCIyeEI4VjIwIChTLThLT00pKzh4QVRHTSA5TTExNFwiLCBcIjJ4QjhWMjAgKCBTLThLT00pKzR4QVRHTSA5TTExNFwiLCBcIjR4QjhWMjAgKFMtOEtPTSkrNHhBVEdNIDlNMTE0XCIsIFwiMnhCOFYyMCAoUy04S09NKSsyeEJvbWJzLTI1MCs0eEFUR00gOU0xMTRcIiwgXCIyeEI4VjIwIChTLThPRlAyKSs0eEFUR00gOU0xMTRcIiwgXCI0eFVCLTMyQSAoUy01S08pKzR4QVRHTSA5TTExNFwiLCBcIjR4R1VWLTEgQVAzMCs0eEFUR00gOU0xMTRcIiwgXCIyeEdVVi0xIEFQMzArNHhBVEdNIDlNMTE0XCIsIFwiMnhHVVYtMSAoR1VOIDEyLjcrMng3LjYyKSArNHhBVEdNIDlNMTE0XCIsIFwiMnhLTUdVICg5NiBBTyAyLjVSVCkrOHhBVEdNIDlNMTE0XCIsIFwiMnhCLTEzTCs0eEFUR00gOU0xMTRcIiwgXCIyeFMtMjRCKzR4QVRHTSA5TTExNFwiLCBcIjR4Uy0yNEIrNHhBVEdNIDlNMTE0XCIsIFwiMnhCb21icy01MDArNHhBVEdNIDlNMTE0XCIsIFwiNHhCb21icy0yNTArNEFUR00gOU0xMTRcIiwgXCIyeFJCSy01MDAgKFBUQUItMU0pKzR4QVRHTSA5TTExNFwiLCBcIjJ4UkJLLTUwMFUgKE9BQiAyLjVSVCkrNHhBVEdNIDlNMTE0XCIsIFwiNHhSQkstMjUwICg0MiBQVEFCIDIuNU0pICs0QVRHTSA5TTExNFwiLCBcIjR4UkJLLTI1MC0yNzUgKDE1MCBBTy0xU0NoKSs0QVRHTSA5TTExNFwiLCBcIjR4UFRCLTQ1MCBGdWVsIHRhbmtcIl0sIFwiTWlHLTE5UFwiOiBbXCJQVEItNzYwIHggMlwiLCBcIkstMTNBIHggMiwgUFRCLTc2MCB4IDJcIiwgXCJLLTEzQSB4IDJcIiwgXCJLLTEzQSB4IDIsIE9STy01N0sgeCAyLCBQVEItNzYwIHggMlwiLCBcIk9STy01N0sgeCAyLCBQVEItNzYwIHggMlwiLCBcIk9STy01N0sgeCA0XCIsIFwiT1JPLTU3SyB4IDJcIiwgXCJGQUItMTAwTSB4IDIsIE9STy01N0sgeCAyXCIsIFwiRkFCLTI1MCB4IDIsIE9STy01N0sgeCAyXCIsIFwiRkFCLTEwME0geCAyXCIsIFwiRkFCLTI1MCB4IDJcIl0sIFwiTWlHLTIxQmlzXCI6IFtcIlBhdHJvbCwgbG9uZyByYW5nZVwiLCBcIlBhdHJvbCwgbWVkaXVtIHJhbmdlXCIsIFwiUGF0cm9sLCBzaG9ydCByYW5nZVwiLCBcIkhhcmQgdGFyZ2V0cywgQk9NQlNcIiwgXCJVbmtub3duIG9yIG1peGVkIHRhcmdldHMsIEJPTUJTICsgUk9DS0VUU1wiLCBcIlNvZnQgdGFyZ2V0cywgQ0xVU1RFUlMgKyBST0NLRVRTXCIsIFwiU29mdCB0YXJnZXRzLCBDTFVTVEVSU1wiLCBcIlNvZnQgdGFyZ2V0cywgc2NhdHRlcmVkXCIsIFwiRmV3IGJpZyB0YXJnZXRzLCBHUk9NICsgQk9NQlNcIiwgXCJWZXJ5IGhhcmQgdGFyZ2V0LCBQRU5FVFJBVElPTlwiLCBcIkFlcmlhbCBhdHRhY2ssIGhhcmQgdGFyZ2V0cywgQ0xVU1RFUlNcIiwgXCJIYXJkIHRhcmdldHMsIFJPQ0tFVFMsIFBFTkVUUkFUSU9OXCIsIFwiU29mdCB0YXJnZXRzLCBST0NLRVRTLCBCTEFTVC1GUkFHTUVOVFNcIiwgXCJMb25nIHJhbmdlLCBNSVhcIiwgXCJMb25nIHJhbmdlLCBSQURBUiBHVUlERUQgTUlTU0lMRVNcIiwgXCJMb25nIHJhbmdlLCBJTkZSQSBSRUQgTUlTU0lMRVNcIiwgXCJFc2NvcnRcIiwgXCJFc2NvcnQsIEpBTU1FUlwiLCBcIk5pZ2h0LCBJTExVTUlOQVRPUlwiLCBcIkxvbmcgcmFuZ2UsIEpBTU1FUlwiLCBcIlNvZnQgdGFyZ2V0cywgVVBLICsgUk9DS0VUU1wiLCBcIlNvZnQgdGFyZ2V0cywgVVBLICsgQ0xVU1RFUlNcIiwgXCJQYXRyb2wsIEpBTU1FUlwiLCBcIk5VQ0xFQVIgQVwiLCBcIk5VQ0xFQVIgQlwiLCBcIlNob3J0IHJhbmdlXCIsIFwiQUVST0JBVElDXCJdLCBcIk1pcmFnZS1GMUJcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFCRFwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFCRVwiOiBbXCIyKkFJTTktSlVMSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTTktSlVMSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBFTVwiLCBcIjIqQUlNOS1KVUxJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipBSU05LUosIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05SiwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SiwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUpVTEksIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUJRXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUMtMjAwXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQ1wiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNFXCI6IFtcIjIqQUlNOS1KVUxJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KVUxJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMEVNXCIsIFwiMipBSU05LUpVTEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKkFJTTktSiwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SlVMSSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQ0dcIjogW1wiMipBSU0tOSBKVUxJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCI0KkFJTS05IEpVTEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTkgSlVMSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOSBKVUxJLCBSNTMwSVJcIiwgXCIyKkFJTS05IEpVTEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTkgSlVMSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqQUlNLTkgSlVMSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05IEpVTEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOSBKVUxJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05IEpVTEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTkgSlVMSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDSFwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNKXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQ0tcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDUlwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDVFwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDWlwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUREQVwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFFRFwiOiBbXCIyKlI1NTAgTWFnaWMgSUksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSUlcIiwgXCIyKlI1NTAgTWFnaWMgSUksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSUksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSUksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFFREFcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSVwiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxRUVcIjogW1wiMipBSU05LUpVTEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KVUxJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU05LUpVTEksIFI1MzBFTVwiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKkFJTTktSlVMSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCAyNTAgSERcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKVUxJLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFFSFwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUVRXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUpBXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxTS1DRVwiOiBbXCIyKkFJTTktSlVMSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KVUxJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipBSU05LUpVTEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKkFJTTktSiwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SlVMSSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxTS1FRVwiOiBbXCIyKkFJTTktSlVMSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KVUxJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipBSU05LUpVTEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKkFJTTktSiwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SlVMSSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiU0EzNDJMXCI6IFtcIk02MjEsIDh4U05FQjY4IEVBUFwiLCBcIk02MjEsIDh4U05FQjY4IEVBUCwgSVIgRGVmbGVjdG9yXCIsIFwiTTYyMSwgOHhTTkVCNjggRUFQLCBJUiBEZWZsZWN0b3IsIFNhbmQgRmlsdGVyXCJdLCBcIlNBMzQyTVwiOiBbXCJIT1QzeDRcIiwgXCJJUiBEZWZsZWN0b3JcIiwgXCJIb3QzeDQsIEZBUywgSVIgRGVmbGVjdG9yXCIsIFwiSE9UM3gyXCIsIFwiSG90M3g0LCBJUiBEZWZsZWN0b3JcIiwgXCJIb3QzeDIsIElSIERlZmxlY3RvclwiXSwgXCJTQTM0Mk1pbmlndW5cIjogW1wiSVIgRGVmbGVjdG9yXCIsIFwiSVIgRGVmbGVjdG9yLCBTYW5kIEZpbHRlclwiXSwgXCJTQTM0Mk1pc3RyYWxcIjogW1wiTWlzdHJhbCB4IDRcIiwgXCJNaXN0cmFsIHggNCwgSVIgRGVmbGVjdG9yXCIsIFwiTWlzdHJhbCB4IDQsIElSIERlZmxlY3RvciwgU2FuZCBGaWx0ZXJcIl0sIFwiQS0yMEdcIjogW1wiNTAwIGxiIEdQIGJvbWIgTEQqNFwiXSwgXCJCZi0xMDlLLTRcIjogW1wiRnVlbCBUYW5rXCIsIFwiU0MyNTBcIiwgXCJTQzUwMFwiXSwgXCJGVy0xOTBBOFwiOiBbXCJXaXRob3V0IHB5bG9uXCIsIFwiU0MgNTAgKiA0XCIsIFwiQUIgMjUwICh3LyBTRCAxMEEpXCIsIFwiQUIgMjUwICh3LyBTRCAyKVwiLCBcIkFCIDUwMCAody8gU0QgMTBBKVwiLCBcIlNDIDI1MCBMMlwiLCBcIlNDIDI1MCBKXCIsIFwiU0MgNTAwIEpcIiwgXCJTQyA1MDAgTDJcIiwgXCJTRCAyNTAgU3RnXCIsIFwiU0QgNTAwIEFcIiwgXCJGdWVsIFRhbmsgMzAwIGxpdGVyc1wiLCBcIkJSIDIxXCJdLCBcIkZXLTE5MEQ5XCI6IFtcIlNDNTAwXCIsIFwiRnVlbCBUYW5rXCIsIFwiUjRNXCIsIFwiQlIgMjFcIl0sIFwiTW9zcXVpdG9GQk1rVklcIjogW1wiMjUwIGxiIFMuQS5QKjI7IDUwMCBsYiBTLkEuUC4qMlwiLCBcIjUwMCBsYiBHUCBNay5WKjIsIDUwMCBsYiBHUCBTaG9ydCB0YWlsKjJcIiwgXCIxMDAgZ2FsIERyb3AgdGFuayoyLCA1MDAgbGIgTUMgU2hvcnQgdGFpbCoyXCIsIFwiUlAtMyA2MGxiIFNBUCBObzIgTWsuSSo4LCAyNTAgbGIgQS5BLlAuKjJcIiwgXCIxMDAgZ2FsLiBEcm9wIHRhbmsqMiwgMjUwIGxiIE1DIE1rLklJLCBSUC0zIDYwbGIgRiBObzEgTWsuSSo0XCIsIFwiNTAwIGxiIEdQIFNob3J0IHRhaWwqNFwiXSwgXCJQLTQ3RC0zMFwiOiBbXCJBTi1NNjUqMlwiLCBcIkZ1ZWwxNTAqMlwiLCBcIkFOLU02NCoyLCBGdWVsMTEwXCIsIFwiQU4tTTU3KjNcIl0sIFwiUC00N0QtMzBibDFcIjogW1wiQU4tTTU3KjJcIiwgXCJBTi1NNjQqMiwgRnVlbDExMFwiXSwgXCJQLTQ3RC00MFwiOiBbXCJBTi1NNjUqMlwiLCBcIkZ1ZWwxNTAqMlwiLCBcIkFOLU01NyozXCIsIFwiQU4tTTY0KjIsIEZ1ZWwxMTBcIiwgXCJNOCo2LCBBTi1NNTcqMiwgRnVlbDExMFwiLCBcIkhWQVIqMTAsIEZ1ZWwxMTBcIl0sIFwiUC01MUQtMzAtTkFcIjogW1wiRnVlbDc1KjJcIiwgXCJIVkFSKjYsRnVlbDc1KjJcIiwgXCJIVkFSKjYsTTY0KjJcIiwgXCJIVkFSKjZcIiwgXCJNNjQqMlwiLCBcIkhWQVIqMTBcIiwgXCJTbW9rZXNcIl0sIFwiUC01MURcIjogW1wiRnVlbDc1KjJcIiwgXCJIVkFSKjYsRnVlbDc1KjJcIiwgXCJIVkFSKjYsTTY0KjJcIiwgXCJIVkFSKjZcIiwgXCJNNjQqMlwiLCBcIkhWQVIqMTBcIiwgXCJTbW9rZXNcIl0sIFwiQS01MFwiOiBbXSwgXCJBSC0xV1wiOiBbXCIxNHhIWURSQS03MCBXUFwiLCBcIjM4eEhZRFJBLTcwIFdQXCIsIFwiOHhCR00tNzEsIDE0eEhZRFJBLTcwXCIsIFwiOHhCR00tNzEsIDE0eEhZRFJBLTcwIFdQXCIsIFwiOHhCR00tNzEsIDM4eEhZRFJBLTcwIFdQXCIsIFwiMTR4SFlEUkEtNzBcIiwgXCIzOHhIWURSQS03MFwiLCBcIjh4QUdNLTExNFwiLCBcIjI4eEhZRFJBLTcwXCIsIFwiOHhCR00tNzEsIDM4eEhZRFJBLTcwXCIsIFwiOHhBR00tMTE0LCAzOHhIWURSQS03MCBXUFwiLCBcIjh4QkdNLTcxXCIsIFwiOHhBR00tMTE0LCAxNHhIWURSQS03MCBXUFwiLCBcIjc2eEhZRFJBLTcwXCIsIFwiOHhBR00tMTE0LCAzOHhIWURSQS03MFwiLCBcIjh4QUdNLTExNCwgMTR4SFlEUkEtNzBcIl0sIFwiQUgtNjRBXCI6IFtcIjh4QUdNLTExNFwiLCBcIjM4eEhZRFJBLTcwIFdQXCIsIFwiNzZ4SFlEUkEtNzBcIiwgXCI4eEFHTS0xMTQsIDM4eEhZRFJBLTcwIFdQXCIsIFwiMzh4SFlEUkEtNzBcIiwgXCI4eEFHTS0xMTQsIDM4eEhZRFJBLTcwXCIsIFwiQUdNLTExNEsqMTZcIl0sIFwiQUgtNjREXCI6IFtcIjc2eEhZRFJBLTcwXCIsIFwiMzh4SFlEUkEtNzBcIiwgXCIzOHhIWURSQS03MCBXUFwiLCBcIjh4QUdNLTExNFwiLCBcIjh4QUdNLTExNCwgMzh4SFlEUkEtNzAgV1BcIiwgXCI4eEFHTS0xMTQsIDM4eEhZRFJBLTcwXCIsIFwiQUdNLTExNEsqMTZcIl0sIFwiQW4tMjZCXCI6IFtdLCBcIkFuLTMwTVwiOiBbXSwgXCJCLTFCXCI6IFtcIk1rLTgyKjg0XCIsIFwiQUdNLTE1NCoxMlwiLCBcIkdCVS0zOCo0OFwiLCBcIkNCVS04NyozMFwiLCBcIkNCVS05NyozMFwiLCBcIkdCVS0zOCoxNiwgQ0JVLTk3KjIwXCIsIFwiTWstODQqMjRcIiwgXCJHQlUtMzEqMjRcIiwgXCJHQlUtMzEoVikzL0IqMjRcIiwgXCJHQlUtMzEqOCwgR0JVLTM4KjMyXCJdLCBcIkItNTJIXCI6IFtcIk1rLTg0KjE4XCIsIFwiTWsgODIqNTFcIiwgXCJNazIwKjE4XCIsIFwiQUdNLTg2QyoyMFwiLCBcIkFHTS04NEEqOFwiXSwgXCJDLTEzMFwiOiBbXSwgXCJDLTE3QVwiOiBbXSwgXCJDSC00N0RcIjogW10sIFwiQ0gtNTNFXCI6IFtdLCBcIkUtMkNcIjogW10sIFwiRS0zQVwiOiBbXSwgXCJGLTExN0FcIjogW1wiR0JVLTEyKjJcIiwgXCJHQlUtMTAqMlwiLCBcIkdCVS0yNyoyXCJdLCBcIkYtMTRBXCI6IFtcIkFJTS05KjJcIiwgXCJBSU0tNTRDKjYsQUlNLTkqMlwiLCBcIkFJTS01NEMqNCxBSU0tOSoyLEFJTS03KjJcIl0sIFwiRi0xNUNcIjogW1wiQUlNLTEyMEIqNCwgQUlNLTdNKjIsIEFJTS05TSoyLCBGdWVsKjNcIiwgXCJBSU0tOSoyLEFJTS0xMjAqNixGdWVsXCIsIFwiQUlNLTkqNCxBSU0tMTIwKjQsRnVlbCozXCIsIFwiQUlNLTkqNCxBSU0tMTIwKjQsRnVlbFwiLCBcIkFJTS05KjIsQUlNLTEyMCoyLEFJTS03KjQsRnVlbCozXCIsIFwiQUlNLTkqMixBSU0tMTIwKjYsRnVlbCozXCIsIFwiQUlNLTkqNCxBSU0tNyo0LEZ1ZWxcIiwgXCJBSU0tMTIwKjgsRnVlbFwiLCBcIkFJTS05KjQsQUlNLTcqNCxGdWVsKjNcIiwgXCJBSU0tMTIwKjgsRnVlbCozXCIsIFwiQUlNLTkqMixBSU0tMTIwKjIsQUlNLTcqNCxGdWVsXCJdLCBcIkYtMTVFXCI6IFtcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCozLENCVS04Nyo2LE1rLTgyQUlSKjZcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMyxDQlUtOTcqMTJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMyxNay04MioxMlwiLCBcIkFJTS0xMjBCKjQsQUlNLTEyMEMqNCxGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsR0JVLTMxKjQsQUdNLTY1SCxBR00tNjVEXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLENCVS0xMDMqMixHQlUtMTIsR0JVLTM4LEFHTS0xNTRDKjJcIiwgXCJBSU0tMTIwQio0LEFJTS05TSo0LEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsQUlNLTEyMEMqMixBSU0tN00qMixGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsR0JVLTEyKjQsR0JVLTM4KjQsQUdNLTE1NEMqMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMzEqNCxBR00tMTU0QyoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixBSU0tN00qNCxGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMyxNay04NCo4XCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLEFHTS0xNTRDKjJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsR0JVLTEyKjQsR0JVLTM4KjQsQUdNLTY1RCoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLEdCVS0xMio0LEdCVS0zOCo0LEFHTS02NUsqMlwiLCBcIkFJTS0xMjBDKjIsQUlNLTlNKjQsQUlNLTdNKjIsRlVFTCozXCIsIFwiQUlNLTlNKjQsQUlNLTdNKjQsRlVFTCozXCIsIFwiQUlNLTEyMEMqMixBSU0tOU0qMixGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsTWstODQqOCxBR00tMTU0QyoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMKjMsTWstODJBSVIqMTJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsR0JVLTEyKjIsR0JVLTM4KjIsQUdNLTE1NEMqMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMTIqMixHQlUtMzgqMixBR00tNjVILEFHTS02NURcIiwgXCJBSU0tMTIwQioyLEFJTS0xMjBDKjQsQUlNLTlNKjIsRlVFTCozXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMKjMsTWstODIqNixNay04MkFJUio2XCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLENCVS0xMDMqMixHQlUtMTIsR0JVLTM4LEFHTS02NUgqMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxBR00tNjVEKjJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMixTVVUtMjUqMixHQlUtMTIsR0JVLTM4XCIsIFwiQUlNLTEyMEIqNixBSU0tOU0qMixGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsTWstODJBSVIqMTIsQUdNLTE1NEMqMlwiLCBcIkFJTS0xMjBDKjYsQUlNLTlNKjIsRlVFTCozXCIsIFwiR0JVLTMxKFYpMy9CKjUsIEFJTS0xMjBDKjIsIEFJTS05TSoyXCJdLCBcIkYtMTZBIE1MVVwiOiBbXCJGdWVsKjNcIiwgXCJBR00tODgqMiwgQUdNLTY1RCoyLCBBSU0tMTIwQioyLCBFQ01cIiwgXCJNay04Mio2LEFJTS0xMjAqMixFQ00sRnVlbCoyXCIsIFwiTWstODIqMixBSU0tMTIwKjIsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiQUdNODgqMixBR00tNjVEKjYsQUlNLTEyMCoyLEFJTS05KjIsRUNNXCIsIFwiQUlNLTEyMCoyLEdCVS0xMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBSU0tOSo0LEVDTVwiLCBcIk1rMjAqNCxBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJBSU0tMTIwKjYsRUNNXCIsIFwiQUlNLTEyMCo0LEFJTS05KjIsRUNNXCIsIFwiQUdNODgsIEFHTS02NUQsIEFJTS0xMjAqMixGdWVsKjIsRUNNXCIsIFwiQUdNLTY1RCoyLEFJTS0xMjAqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUlNLTkqNCxFQ00sRnVlbCoyXCIsIFwiQUlNLTEyMCo0LEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFHTS04OCoyLEFJTS0xMjAqMixBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJNay04NCoyLEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqNixFQ00sRnVlbCoyXCIsIFwiQUdNLTE1NCoyLEFJTS0xMjAqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUdNLTg4KjIsQUdNLTY1RCoyLEFJTS0xMjBCKjIsQUlNLTlNKjIsRUNNXCIsIFwiTWsyMCoyLEFJTS0xMjAqMixFQ00sRnVlbCoyXCIsIFwiQUlNLTEyMCoyLEFJTS05KjIsR0JVLTEyKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIkFHTS02NUsqMixBSU0tMTIwKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIkFJTS0xMjBCKjJfQUlNLTlNKjJfQUdNLTExOSo0X0FMUS0xMzFcIl0sIFwiRi0xNkFcIjogW1wiQUdNLTg4KjIsQUlNLTEyMCoyLEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIk1rMjAqNCxBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJBSU0tOSo0LEVDTSxGdWVsKjJcIiwgXCJBR00tNjVEKjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBSU0tMTIwKjQsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiQUdNODgqMl9BR00tNjVEKjZfQUlNLTEyMCoyX0FJTS05KjJfRUNNXCIsIFwiQUdNLTY1SyoyLEFJTS0xMjAqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUlNLTEyMCoyLEFJTS05KjIsR0JVLTEyKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqMixHQlUtMTAqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUlNLTEyMCo2LEVDTSxGdWVsKjJcIiwgXCJBSU0tMTIwKjYsRUNNXCIsIFwiQUlNLTkqNCxFQ01cIiwgXCJGdWVsKjNcIiwgXCJNay04NCoyLEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqNCxBSU0tOSoyLEVDTVwiLCBcIk1rLTgyKjYsQUlNLTEyMCoyLEVDTSxGdWVsKjJcIiwgXCJNay04MioyLEFJTS0xMjAqMixBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJBR00tMTU0KjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJNazIwKjIsQUlNLTEyMCoyLEVDTSxGdWVsKjJcIiwgXCJBR00tMTE5KjIsQUlNLTEyMEIqMixBSU0tOU0qMixBTFEtMTg0LEZ1ZWwqMlwiXSwgXCJGLTE2QyBibC41MFwiOiBbXCJBSU0tMTIwQio0LCBBSU0tOU0qMiwgRnVlbFwiLCBcIkFJTS0xMjBDKjQsIEFJTS05TSoyLCBGdWVsXCIsIFwiQUdNLTY1RyoyLCBBSU0tMTIwQyoyLCBBSU0tOU0qMiwgRnVlbCwgRUNNXCIsIFwiQUdNLTY1RCo2LCBBSU0tMTIwQioyLCBBSU0tOU0qMiwgRUNNLCBGdWVsXCIsIFwiTWs4Nio2LCBBSU0tOU0qNCwgRUNNLCBGdWVsXCIsIFwiQ0JVLTk3KjQsIEFJTS05TSo0LCAgRnVlbFwiLCBcIkNCVS04Nyo0LCBBSU0tOU0qNCwgIEZ1ZWxcIiwgXCJBR00tNjVEKjIsIENCVS04NyoyLCBBSU0tOU0qNCwgIEZ1ZWxcIiwgXCJBR00tNjVEKjIsIENCVS05NyoyLCBBSU0tOU0qNCwgIEZ1ZWxcIiwgXCJNazg0KjIsIEFJTS05TSo0LCBFQ00sIEZ1ZWxcIiwgXCJHQlUtMzF2MSoyLCBBSU0tOU0qNCwgRUNNLCBGdWVsXCIsIFwiR0JVLTMxdjMqMiwgQUlNLTlNKjQsIEVDTSwgRnVlbFwiLCBcIkdCVS0zMXYxKjIsIE1rODIqNiwgQUlNLTlNKjQsIEZ1ZWxcIiwgXCJNazg0KjQsIEFJTS05TSo0LCBGdWVsXCIsIFwiTWs4MioxMiwgQUlNLTlNKjQsIEZ1ZWxcIiwgXCJBR00tMTU0QyoyLCBBSU0tOU0qNCwgRUNNLCBGdWVsXCJdLCBcIkYtMTZDIGJsLjUyZFwiOiBbXCJBR00tODgqMiwgQUdNLTY1RCoyLCBBSU0tMTIwQioyLCBFQ00sTElHSFROSU5HXCIsIFwiTWstODIqNixBSU0tMTIwKjIsRUNNLEZ1ZWwqMixMSUdIVE5JTkdcIiwgXCJBR004OCoyLEFHTS02NUQqNixBSU0tMTIwKjIsQUlNLTkqMixFQ00sTElHSFROSU5HXCIsIFwiQUdNLTY1RCo0LEFJTS0xMjAqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFJTS0xMjAqMixHQlUtMzEqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFJTS0xMjAqMixHQlUtMzEodikqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFHTS04OCoyLEFJTS0xMjAqMixBSU0tOSoyLEVDTSxGdWVsKjIsTElHSFROSU5HXCIsIFwiQ29weSBBSU0tMTIwKjIsR0JVLTM4KjIsRUNNLEZ1ZWwqMixMSUdIVE5JTkdcIiwgXCJBSU0tMTIwKjIsR0JVLTEwKjIsRUNNLEZ1ZWwqMixMSUdIVE5JTkdcIiwgXCJNay04NCoyLEFJTS0xMjAqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFHTS0xNTQqMixBSU0tMTIwKjIsRUNNLEZ1ZWwqMixMSUdIVE5JTkdcIiwgXCJNay04MkFJUio2LEFJTS0xMjAqMixFQ00sRnVlbCoyLExJVEVOSU5HXCIsIFwiQ0JVOTcqNCxBSU0xMjAqMixFQ00sRnVlbCoyLExJVEVOSU5HXCIsIFwiQUdNLTg4KjIsQUdNLTY1RCoyLEFJTS0xMjBCKjIsQUlNLTlNKjIsRUNNLExJVEVOSU5HXCIsIFwiQ0JVODcqMixBSU0tMTIwKjIsRUNNLEZ1ZWwqMixMSVRFTklOR1wiLCBcIkFHTTg4LCBBR00tNjVELCBBSU0tMTIwKjIsRnVlbCoyLEVDTSxMSVRFTklOR1wiLCBcIkFJTS0xMjAqMixHQlUtMTIqMixFQ00sRnVlbCoyLExJVEVOSU5HXCIsIFwiQUdNLTY1SyoyLEFJTS0xMjAqMixFQ00sTGFudGlybiAsRnVlbCoyLExJVEVOSU5HXCIsIFwiQUdNLTY1Ryo0LEFJTS0xMjBDKjIsQUlNLTlNKjIsRUNNXCIsIFwiQUlNLTEyMEMqNCxBSU0tOU0qMixFQ00sRnVlbCoyXCIsIFwiQUlNLTEyMEIqNCxBSU0tOU0qMixFQ00sRnVlbCoyXCIsIFwiQUlNLTlNKjQsRnVlbCoyXCIsIFwiQUlNLTEyMEMqMixBSU0tMTIwQioyLEFJTS05TSoyLEZ1ZWwqM1wiLCBcIkFJTS05UCo0XCIsIFwiQUlNLTlNKjIsRUNNXCJdLCBcIkYtNEVcIjogW1wiQUlNLTkqNCxBSU0tNyo0XCIsIFwiQUdNNDUqMl9BR00tNjVEKjRfQUlNNyoyX0VDTVwiLCBcIkFHTS00NSoyLEFJTS03KjIsRnVlbCoyLEVDTVwiLCBcIk1rLTgyKjE4LEFJTS03KjIsRUNNXCIsIFwiR0JVLTEyKjIsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiTWsyMCoxMixBSU0tNyoyLEVDTVwiLCBcIk1rLTgyKjYsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiR0JVLTEwKjIsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiTWsyMCo2LEFJTS03KjIsRnVlbCoyLEVDTVwiLCBcIkFHTS00NSo0LEFJTS03KjIsRUNNXCIsIFwiQUdNLTY1Syo0LEFJTS03KjIsRnVlbCoyLEVDTVwiLCBcIkZ1ZWwqM1wiLCBcIkFJTS05KjQsQUlNLTcqNCxGdWVsKjJcIiwgXCJNay04NCoyLEFJTS03KjIsRUNNXCIsIFwiQUdNLTY1Syo0LEFJTS03TSo0LEZ1ZWwqM1wiXSwgXCJGL0EtMThBXCI6IFtcIkdCVS0xNioyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTkqNixGdWVsXCIsIFwiTWstODQqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTS02NUQqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTTg4KjRfQUlNOSoyX0FJTTdfRkxJUiBQb2RfRnVlbFwiLCBcIkFJTS05KjQsRnVlbCozXCIsIFwiTEFVLTEwKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR00tODgqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIk1LLTgyKjgsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsXCIsIFwiTUstODIqNCxBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFJTS05KjQsQUlNLTcqMixGdWVsKjNcIiwgXCJBR00tNjVLKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJGdWVsKjNcIiwgXCJBR004OCoyX0FHTTY1RCoyX0FJTTkqMl9BSU03X0ZMSVIgUG9kX0Z1ZWxcIiwgXCJHQlUtMTIqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFJTS05KjQsQUlNLTcqNCxGdWVsXCIsIFwiTWsyMCo0LEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiR0JVLTEwKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR00tODRBKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIl0sIFwiRi9BLTE4Q1wiOiBbXCJBR00tNjIqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkdCVS0xMCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiR0JVLTEyKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJGdWVsKjNcIiwgXCJNay04NCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiR0JVLTE2KjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR00tMTU0KjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBSU0tMTIwKjQsQUlNLTkqMixGdWVsKjNcIiwgXCJBR00tNjVEKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR004OCoyX0FHTTY1RCoyX0FJTTkqMl9BSU03X0ZMSVIgUG9kX0Z1ZWxcIiwgXCJBR004OCo0X0FJTTkqMl9BSU03X0ZMSVIgUG9kX0Z1ZWxcIiwgXCJBSU0tOSoyLEFJTS03KjYsRnVlbFwiLCBcIk1rMjAqNCxBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFJTS0xMjAqNixBSU0tOSoyLEZ1ZWxcIiwgXCJMQVUtMTAqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFJTS05KjIsQUlNLTcqNCxGdWVsKjNcIiwgXCJNSy04Mio4LEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbFwiLCBcIkFJTS0xMjAqMixBSU0tOSoyLEFJTS03KjIsRnVlbCozXCIsIFwiQUdNLTg4KjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR00tODRFKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJNSy04Mio0LEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUdNLTg0QSoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTlNKjIsQUdNLTY1RCoyLE1rLTgyKjQsRkxJUiBQb2QsRnVlbFwiLCBcIkFJTS0xMjAqNCxBSU0tOSoyLEFJTS03KjIsRnVlbFwiLCBcIkFHTS02NUsqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiXSwgXCJJTC03Nk1EXCI6IFtdLCBcIklMLTc4TVwiOiBbXSwgXCJLYS0yN1wiOiBbXSwgXCJLYS01MlwiOiBbXCJBUFUtNiBWaWtoci1NKjIsIEtoLTI1TUwqMlwiLCBcIkFQVS02IFZpa2hyLU0qMlwiLCBcIkItOCo0XCIsIFwiS01HVS0yIChBTy0yLjVSVCkqNFwiLCBcIkItOCoyLCBBUFUtNiBWaWtoci1NKjJcIiwgXCJGQUItNTAwKjJcIiwgXCJVQi0xMyoyXCIsIFwiRkFCLTI1MCo0XCIsIFwiS2gtMjVNTCoyLCBSLTczKjJcIl0sIFwiS0MtMTBBXCI6IFtdLCBcIktDLTEzNVwiOiBbXSwgXCJNaS0yNFZcIjogW1wiMnhGQUItNTAwXCIsIFwiMTB4Uy0xM1wiLCBcIjJ4RkFCLTI1MFwiLCBcIjR4OU0xMTQsIDJ4RnVlbCB0YW5rXCIsIFwiMTI4eFMtNVwiLCBcIjgweFMtOCBUc01cIiwgXCI0eDlNMTE0LCA0MHhTLTggVHNNXCIsIFwiNjR4Uy01XCIsIFwiOHg5TTExNFwiLCBcIjR4OU0xMTQsIDgweFMtOFwiLCBcIjR4OU0xMTQsIDEyOHhTLTVcIiwgXCIyeEtNR1UgQVBcIiwgXCI0eEZ1ZWwgdGFua1wiLCBcIjR4VVBLLTIzXCIsIFwiNHg5TTExNCwgMTB4Uy0xM1wiLCBcIjR4OU0xMTQsIDgweFMtOCBUc01cIiwgXCI0eDlNMTE0XCIsIFwiODB4Uy04XCIsIFwiNDB4Uy04IFRzTVwiLCBcIjh4OU0xMTQsIDQweFMtOCBUc01cIiwgXCI4eDlNMTE0LCAxMHhTLTEzXCIsIFwiMnhGdWVsIHRhbmtcIiwgXCI0eDlNMTE0LCA0eFVQSy0yM1wiLCBcIjJ4VVBLLTIzXCIsIFwiOHg5TTExNCwgNjR4Uy01XCIsIFwiOHg5TTExNCwgNDB4Uy04XCIsIFwiMjB4Uy0xM1wiLCBcIjQweFMtOFwiLCBcIjh4OU0xMTQsIDJ4VVBLLTIzXCJdLCBcIk1pLTI2XCI6IFtdLCBcIk1pLTI4TlwiOiBbXCIyeEZBQi0yNTBcIiwgXCI0eEZ1ZWwgdGFua1wiLCBcIjgweFMtOFwiLCBcIjR4S01HVSBBUFwiLCBcIjR4VVBLLTIzXCIsIFwiMTZ4OU0xMTQsIDEweFMtMTNcIiwgXCI0eEZBQi01MDBcIiwgXCIxNng5TTExNCwgMnhGQUItNTAwXCIsIFwiNDB4Uy04XCIsIFwiNDB4Uy04IFRzTVwiLCBcIjJ4S01HVSBBUFwiLCBcIjJ4VVBLLTIzXCIsIFwiMTZ4OU0xMTQsIDJ4VVBLLTIzXCIsIFwiMnhGQUItNTAwXCIsIFwiMTZ4OU0xMTQsIDQweFMtOFwiLCBcIjE2eDlNMTE0XCIsIFwiMjB4Uy0xM1wiLCBcIjE2eDlNMTE0LCAyeEtNR1UgQVBcIiwgXCI0eEZBQi0yNTBcIiwgXCI0eEtNR1UgQVRcIiwgXCIxNng5TTExNCwgNDB4Uy04IFRzTVwiLCBcIjgweFMtOCBUc01cIiwgXCIyeEtNR1UgQVRcIiwgXCI5eDlNMTE0XCIsIFwiMnhGdWVsIHRhbmtcIiwgXCIxMHhTLTEzXCIsIFwiMnhGQUItMjUwLCAxNng5TTExNFwiLCBcIjE2eDlNMTE0LCAyeEtNR1UgQVRcIl0sIFwiTWktOE1UXCI6IFtcIjQgeCBCOFwiLCBcIjQgeCBCOCArIDJHVVZfQVAtMzAgKEdyTCAzMG1tKVwiLCBcIjIgeCBVUEsgKzIgeCBCOFwiLCBcIjIgeEI4ICsgMkdVVl9ZYUtCIChNRy0xMi43KzcuNjIpKyAyR1VWX0FQLTMwIChHckwgMzBtbSlcIiwgXCI2IHggRkFCLTEwMFwiLCBcIjIgeCBCOCArIDIgeCBVUEstMjMtMjUwXCIsIFwiMiB4IFVQSy0tMjMtMjUwXCJdLCBcIk1pRy0xNWJpc1wiOiBbXCIyKkZBQi01MFwiLCBcIjIqRkFCLTEwME1cIiwgXCIyKjMwMExcIiwgXCIyKjQwMExcIiwgXCIyKjYwMExcIiwgXCJGdWVsIHRhbmsgMzAwXCIsIFwiRnVlbCB0YW5rIDQwMFwiXSwgXCJNaUctMjNNTERcIjogW1wiUi02ME0qNFwiLCBcIkItOCoyLFItNjBNKjIsRnVlbC04MDBcIiwgXCJVQi0zMioyLFItNjBNKjIsRnVlbC04MDBcIiwgXCJSLTI0UioyLFItNjBNKjQsRnVlbC04MDBcIiwgXCJSLTI0UixSLTI0VCxSLTYwTSo0LEZ1ZWwtODAwXCIsIFwiUi02ME0qNCxGdWVsLTgwMFwiLCBcIkZBQi01MDAqMixSLTYwTSoyLEZ1ZWwtODAwXCIsIFwiUi0yNFIqMixSLTYwTSo0XCIsIFwiRkFCLTI1MCoyLFItNjBNKjIsRnVlbC04MDBcIiwgXCJSQkstMjUwKjIsUi02ME0qMixGdWVsLTgwMFwiLCBcIlJCSy01MDAqMixSLTYwTSoyLEZ1ZWwtODAwXCIsIFwiUi0yNFIsUi0yNFQsUi02ME0qNFwiXSwgXCJNaUctMjVQRFwiOiBbXCJSLTQwUioyLFItNDBUKjJcIiwgXCJSLTQwUio0XCIsIFwiUi00MFIqMixSLTYwTSoyXCJdLCBcIk1pRy0yNVJCVFwiOiBbXCJGQUItNTAweDJfNjB4MlwiLCBcIlItNjBNKjJcIl0sIFwiTWlHLTI3S1wiOiBbXCJGQUItMjUwKjYsUi02ME0qMixGdWVsXCIsIFwiQmV0QUItNTAwU2hQKjIsRkFCLTI1MCoyLFItNjAqMlwiLCBcIktoLTI1TVIqMixSLTYwTSoyLEZ1ZWxcIiwgXCJLaC0yOUwqMixSLTYwTSoyLEZ1ZWxcIiwgXCJCLTgqNFwiLCBcIkJldEFCLTUwMCoyLEZBQi01MDAqMixSLTYwKjJcIiwgXCJLaC0yNU1QVSoyLFItNjBNKjIsRnVlbFwiLCBcIktoLTI5VCoyLFItNjBNKjIsRnVlbFwiLCBcIkZBQi01MDAqMixGQUItMjUwKjIsUi02ME0qMixGdWVsXCIsIFwiS2gtMjVNTCoyLFItNjBNKjIsRnVlbFwiLCBcIktBQi01MDAqMixSLTYwTSoyLEZ1ZWxcIiwgXCJSQkstNTAwQU8qMixSQkstMjUwKjIsUi02ME0qMlwiLCBcIlVCLTMyKjRcIiwgXCJLaC0yOUwqMixSLTYwKjIsRnVlbFwiXSwgXCJNaUctMjlBXCI6IFtcIkZ1ZWwtMTE1MCoyLEZ1ZWwtMTUwMFwiLCBcIlJCSy01MDBBTyo0LFItNzMqMixGdWVsXCIsIFwiRkFCLTI1MCo0LFItNzMqMixGdWVsXCIsIFwiQi04KjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTYwTSo0LFItMjdSKjJcIiwgXCJSLTczKjQsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSLTczKjYsRnVlbC0xNTAwXCIsIFwiUi02ME0qNixGdWVsLTE1MDBcIiwgXCJTLTI0KjQsUi03MyoyLEZ1ZWxcIiwgXCJGQUItNTAwKjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTYwTSo2XCIsIFwiQmV0QUItNTAwKjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTczKjZcIiwgXCJSLTczKjIsUi02ME0qMixSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNjBNKjQsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSQkstMjUwKjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTczKjQsUi0yN1IqMlwiLCBcIlItNzMqMixSLTYwTSoyLFItMjdSKjJcIiwgXCJTLTI0KjIsRkFCLTUwMCoyLFItNzMqMixGdWVsXCJdLCBcIk1pRy0yOUdcIjogW1wiUi03Myo2LEZ1ZWwtMTUwMFwiLCBcIlItNzMqNCxSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNzMqMixSLTYwTSoyLFItMjdSKjJcIiwgXCJSLTYwTSo0LFItMjdSKjIsRnVlbC0xNTAwXCIsIFwiUi03Myo2XCIsIFwiUi02ME0qNCxSLTI3UioyXCIsIFwiUi03Myo0LFItMjdSKjJcIiwgXCJGdWVsLTExNTAqMixGdWVsLTE1MDBcIiwgXCJSLTYwTSo2XCIsIFwiUi02ME0qNixGdWVsLTE1MDBcIiwgXCJSLTczKjIsUi02ME0qMixSLTI3UioyLEZ1ZWwtMTUwMFwiXSwgXCJNaUctMjlTXCI6IFtcIlItNzMqMixSLTYwTSoyLFItMjdSKjJcIiwgXCJSLTczKjQsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSLTczKjYsRnVlbC0xNTAwXCIsIFwiUi02ME0qNixGdWVsLTE1MDBcIiwgXCJTLTI0KjQsUi03MyoyLEZ1ZWxcIiwgXCJGQUItNTAwKjQsUi03MyoyLEZ1ZWxcIiwgXCJCZXRBQi01MDAqNCxSLTczKjIsRnVlbFwiLCBcIlJCSy01MDBBTyo0LFItNzMqMixGdWVsXCIsIFwiUi03MyoyLFItNjBNKjIsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSLTc3KjIsUi03MyoyLEZ1ZWwtMTUwMCxGdWVsLTExNTAqMlwiLCBcIkItOCo0LFItNzMqMixGdWVsXCIsIFwiUkJLLTI1MCo0LFItNzMqMixGdWVsXCIsIFwiUi03Myo2XCIsIFwiRnVlbC0xMTUwKjIsRnVlbC0xNTAwXCIsIFwiUi02ME0qNlwiLCBcIlItNjBNKjQsUi0yN1IqMlwiLCBcIlItNzMqNCxSLTI3UioyXCIsIFwiUi03Nyo0LFItNzMqMlwiLCBcIkZBQi0yNTAqNCxSLTczKjIsRnVlbFwiLCBcIlItNjBNKjQsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSLTc3KjQsUi03MyoyLEZ1ZWwtMTUwMFwiLCBcIlMtMjQqMixGQUItNTAwKjIsUi03MyoyLEZ1ZWxcIl0sIFwiTWlHLTMxXCI6IFtcIlItNDBUKjIsUi0zMyo0XCIsIFwiUi00MFQsUi0zMyo0LFItNDBSXCIsIFwiUi00MFIqMixSLTMzKjRcIiwgXCJSLTYwTSo0LFItMzMqNFwiXSwgXCJNaXJhZ2UgMjAwMC01XCI6IFtcIlIgNTUwKjIsTUlDQSBJUio0XCIsIFwiUiA1NTAqMixNSUNBIElSKjIsTUlDQSBBUioyLEZ1ZWwqM1wiLCBcIlIgNTUwKjIsTUlDQSBBUio0LEZ1ZWwqM1wiLCBcIlIgNTUwKjIsU1VQRVIgNTMwRioyLEZ1ZWxcIiwgXCJGdWVsKjNcIiwgXCJSIDU1MCoyLE1JQ0EgSVIqNCxGdWVsKjNcIiwgXCJSIDU1MCoyLE1JQ0EgQVIqNFwiLCBcIlIgNTUwKjIsU1VQRVIgNTMwRioyXCJdLCBcIk1RLTkgUmVhcGVyXCI6IFtcIkdCVS0xMio0XCIsIFwiR0JVLTM4KjRcIiwgXCJBR00tMTE0Syo4LEdCVS0zOCoyXCIsIFwiQUdNLTExNEsqMTJcIl0sIFwiT0gtNThEXCI6IFtcIjJ4QUdNLTExNCwgN3hIWURSQS03MFwiLCBcIjR4QUdNLTExNFwiLCBcIk0tMywgN3hIWURSQS03MFwiLCBcIjJ4QUdNLTExNCwgTS0zXCIsIFwiMTR4SFlEUkEtNzBcIiwgXCIxNHhIWURSQS03MCBXUFwiXSwgXCJSUS0xQSBQcmVkYXRvclwiOiBbXCJBR00tMTE0SyoyXCJdLCBcIlMtM0JcIjogW1wiQUdNLTg0QSoyLCBNay04MioyXCIsIFwiQUdNLTg0RSoyXCIsIFwiQUdNLTY1RCwgQUdNLTY1SywgTWsyMCo0XCIsIFwiQUdNLTY1RCwgQUdNLTY1SywgTWs4Mio0XCIsIFwiTWs4MioxMFwiLCBcIk1rODQqMiwgTWs4Mio0XCIsIFwiWlVOSSBNazcxKjgsIE1rMjAqNFwiXSwgXCJTSC0zV1wiOiBbXSwgXCJTSC02MEJcIjogW1wiQUdNLTExOVwiXSwgXCJTdS0xN000XCI6IFtcIlVCLTMyKjQsUi02ME0qMixGQUItMjUwKjRcIiwgXCJGQUItMTAwKjI0LFItNjBNKjJcIiwgXCJVQi0zMio0LFItNjBNKjIsRnVlbCoyXCIsIFwiQi04KjQsUi02ME0qMixGQUItMjUwKjRcIiwgXCJLaC0yOUwqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkItOCo0LFItNjBNKjIsRnVlbCoyXCIsIFwiS2gtMjlUKjIsUi02ME0qMixGdWVsKjJcIiwgXCJCZXRBQi01MDAqNixSLTYwTSoyXCIsIFwiS2gtMjVNUio0LFItNjBNKjIsRnVlbCoyXCIsIFwiUy0yNCo0LFItNjBNKjIsRnVlbCoyXCIsIFwiS2gyNU1QVSoyX0toMjVNTCoyXyxSNjBNKjJfRnVlbCoyXCIsIFwiS2g1OCoyX0toMjVNUFUqMl9SNjBNKjJfRnVlbCoyXCIsIFwiRkFCLTI1MCoxNixSLTYwTSoyXCIsIFwiS2gtMjVNTCo0LFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTUwMEFPKjQsU1BQVS0yMioyLFItNjBNKjJcIiwgXCJTLTI0KjQsUi02ME0qMixGQUItMjUwKjRcIiwgXCJGdWVsKjRcIiwgXCJGQUItNTAwKjYsUi02ME0qMlwiLCBcIktoLTI1TUwqMixLaC0yOUwqMixSLTYwKjJcIl0sIFwiU3UtMjRNXCI6IFtcIlVCLTEzKjQsRkFCLTUwMCoyXCIsIFwiS2gtMzFBKjIsUi02ME0qMixGdWVsXCIsIFwiVUItMTMqNFwiLCBcIktBQi01MDAqNCxSLTYwTSoyXCIsIFwiUy0yNSoyLEZ1ZWwqM1wiLCBcIktoMzFQKjJfS2gyNU1MKjJfTC0wODFcIiwgXCJCLTgqMixGdWVsKjNcIiwgXCJGQUItMTUwMCoyLFItNjBNKjJcIiwgXCJTLTI0KjRcIiwgXCJCZXRBQi01MDAqNCxSLTYwTSoyXCIsIFwiS2gtMjVNTCo0XCIsIFwiS2gtMjVNUio0XCIsIFwiRkFCLTEwMCoyNFwiLCBcIktoLTMxQSoyLFItNjBNKjJcIiwgXCJVQi0xMyoyLEZ1ZWwqM1wiLCBcIkItOCoyLEZ1ZWwqMlwiLCBcIktoNTgqMl9LaDI1TUwqMl9MLTA4MVwiLCBcIlJCSy0yNTAqOFwiLCBcIlVCLTMyKjRcIiwgXCJLaC0yOUwqMixSLTYwTSoyXCIsIFwiUy0yNCoyLEZ1ZWwqM1wiLCBcIktoMjVNUFUqMl9LaDI1TUwqMl9MLTA4MVwiLCBcIkZBQi01MDAqNCxSLTYwTSoyXCIsIFwiRkFCLTI1MCo4XCIsIFwiRnVlbCozXCIsIFwiUkJLLTUwMEFPKjQsUi02ME0qMlwiLCBcIktBQi0xNTAwKjIsUi02ME0qMixGdWVsXCIsIFwiVUItMzIqNCxGQUItMjUwKjRcIiwgXCJLaC0yOVQqMixSLTYwTSoyXCIsIFwiVUItMzIqMixGdWVsKjNcIiwgXCJLaC01OU0qMixSLTYwTSoyLEZ1ZWxcIiwgXCJTLTI1KjRcIiwgXCJCLTgqNlwiXSwgXCJTdS0yNE1SXCI6IFtcIlNIUElMLEVUSEVSLFItNjBNKjJcIiwgXCJGdWVsKjJcIiwgXCJUQU5HQVpILEVUSEVSLFItNjBNKjIsRnVlbCoyXCIsIFwiVEFOR0FaSCxFVEhFUixSLTYwTSoyXCIsIFwiU0hQSUwsRVRIRVIsUi02ME0qMixGdWVsKjJcIl0sIFwiU3UtMjVcIjogW1wiUkJLLTI1MCoyLFMtOEtPTSo4MCxSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNCxVQi0xMyoyLFItNjBNKjIsU1BQVS0yMioyXCIsIFwiUy0yNUwqNixVQi0xMyoyLFItNjBNKjJcIiwgXCJTLTI1KjYsU1BQVS0yMioyLFItNjBNKjJcIiwgXCIyLTI1TCoyLCBLSC0yNU1MKjIsIFJCSy01MDAqMiwgQi04TUkqMiwgUi02ME0qMlwiLCBcIlMtOEtPTSoxMjAsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMjUwKjQsUy0yNSoyLFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTUwMEFPKjQsUy04S09NKjQwLFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTI1MCoyLFNQUFUtMjIqMixTQUItMTAwKjQsUi02ME0qMlwiLCBcIlJCSy01MDBBTyo2LFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTI1MCo4LFItNjBNKjJcIiwgXCJLaC0yOUwqMixLaC0yNU1MKjQsUi02ME0qMlwiLCBcIlJCSy0yNTAqNCxTLThLT00qODAsUi02ME0qMlwiLCBcIkZBQi0yNTAqNCxVQi0xMyoyLFItNjBNKjIsRnVlbCoyXCIsIFwiUy04VHNNKjE2MCxSLTYwKjJcIiwgXCJLaC0yNU1MKjQsUi02ME0qMixGdWVsKjJcIiwgXCJCZXRBQi01MDBTaFAqOCxSLTYwTSoyXCIsIFwiU0FCLTEwMCo4LFItNjAqMlwiLCBcIktoLTI5TCoyLEtoLTI1TUwqNCxTLTI1TCoyLFItNjBNKjJcIiwgXCJGQUItNTAwKjYsUi02ME0qMixGdWVsKjJcIiwgXCJLaC0yOUwqMixLaC0yNU1MKjIsUi02ME0qMixGdWVsKjJcIiwgXCJLaC0yOUwqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0xMDAqMzIsUi02ME0qMlwiLCBcIkZBQi0xMDAqMTYsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMjUwKjYsUi02ME0qMixGdWVsKjJcIiwgXCJCZXRBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIlMtMjUqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIlVCLTEzKjYsUi02ME0qMixGdWVsKjJcIiwgXCJLaC0yNSo0LEtoLTI5VCoyLFItNjAqMlwiLCBcIlMtMjVMKjYsUi02MCoyLEZ1ZWwqMlwiXSwgXCJTdS0yNVRcIjogW1wiRkFCLTI1MCo0LFNQUFUtMjIqMixTQUItMTAwKjIsUi02ME0qMlwiLCBcIktoLTI5TCoyLEtoLTI1TUwqNCxSLTczKjIsTWVyY3VyeSBMTFRWIFBvZCxNUFMtNDEwXCIsIFwiS0FCLTUwMEtyKjIsS2gtMjVNTCoyLFItNzMqMixNUFMtNDEwLEZ1ZWwqMlwiLCBcIlJCSy01MDBBTyo0LFVCLTMyKjIsUi02ME0qMixGdWVsKjJcIiwgXCJCZXRBQi01MDBTaFAqOCxSLTYwTSoyXCIsIFwiVUItMTMqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI5VCoyLFItNzMqMixGdWVsKjIsTVBTLTQxMFwiLCBcIktoNTgqMl9LaDI1TUwqNF9SNzMqMl9MLTA4MV9NUFMtNDEwXCIsIFwiRkFCLTI1MCo0LFVCLTEzKjIsUi02ME0qMixGdWVsKjJcIiwgXCJLSC0yOVQqMiwgVklLSFIqMiwgRUNNXCIsIFwiS2gtMjlUKjIsS2gtMjVNTCo0LFItNzMqMixNUFMtNDEwXCIsIFwiRkFCLTI1MCo0LFVCLTEzKjIsUi02ME0qMixTUFBVLTIyKjJcIiwgXCJGQUItNTAwKjYsUi02ME0qMixGdWVsKjJcIiwgXCJGdWVsKjRcIiwgXCJBUFUtOCBWaWtoci1NKjIsS2gtMjVNTCxSLTczKjIsU1BQVS0yMioyLE1lcmN1cnkgTExUViBQb2QsTVBTLTQxMFwiLCBcIlMtOEtPTSoxMjAsUi02ME0qMixGdWVsKjJcIiwgXCJLTUdVLTIgKFBUQUItMi41S08pKjgsUi02ME0qMlwiLCBcIkZBQi0yNTAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI5TCoyLFItNzMqMixGdWVsKjIsTWVyY3VyeSBMTFRWIFBvZCxNUFMtNDEwXCIsIFwiRkFCLTEwMCozMixSLTYwTSoyXCIsIFwiUkJLLTI1MCo4LFItNjBNKjJcIiwgXCJTLTI1TCo2LFVCLTEzKjIsUi02ME0qMlwiLCBcIkZBQi0yNTAqNCxTLTI1KjIsUi02ME0qMixGdWVsKjJcIiwgXCJTLTI1KjIsU1BQVS0yMio0LFItNjBNKjIsUi03MyoyXCIsIFwiS01HVS0yIChBTy0yLjVSVCkqOCxSLTYwTSoyXCIsIFwiQVBVLTggVmlraHItTSoyLFMtMjVMKjIsUi03MyoyLFNQUFUtMjIqMixNZXJjdXJ5IExMVFYgUG9kLE1QUy00MTBcIiwgXCJTLTI1KjYsUi02ME0qMixGdWVsKjJcIiwgXCJSQkstNTAwQU8qNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoNTgqMl9LaDI1TVBVKjJfS2gyNU1MKjJfUjczKjJfTC0wODFfTVBTLTQxMFwiLCBcIlJCSy0yNTAqNCxVQi0zMio0LFItNjBNKjJcIiwgXCJLaDI1TVBVKjRfUjczKjJfRnVlbCoyX0wtMDgxX01QUy00MTBcIiwgXCJCZXRBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIlJCSy0yNTAqMixVQi0zMio0LFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTEwMCoxNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI5TCoyLEtoLTI1TUwqNCxSLTczKjIsRUNNXCJdLCBcIlN1LTI1VE1cIjogW1wiQmV0QUItNTAwU2hQKjYsUi03MyoyLEVDTVwiLCBcIkFQVS04IFZpa2hyLU0qMixSLTYwTSoyLFItNzMqMixTUFBVLTIyKjIsTWVyY3VyeSBMTFRWIFBvZFwiLCBcIktoLTI5VCoyLEtoLTI1TUwqMixSLTczKjIsRnVlbCoyLEVDTVwiLCBcIktoLTU4KjJfS2gtMjVNUFUqNF9SLTczKjJfTC0wODFfTVBTNDEwXCIsIFwiUy0yNUwqNixVQi0xMyoyLFItNjBNKjJcIiwgXCJLaC0zNSoyX1ItNzMqMl9GdWVsKjJfTVBTNDEwX0tvcHlvLTI1XCIsIFwiS2gtMzFBKjJfUi03MyoyX0Z1ZWwqMl9NUFM0MTBfS29weW8tMjVcIiwgXCJGdWVsKjRcIiwgXCJCZXRBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktBQi01MDBLcioyLEtoLTI1TUwqMixSLTczKjIsRnVlbCoyLEVDTVwiLCBcIktoLTI5TCoyLFItNzMqMixGdWVsKjIsTWVyY3VyeSBMTFRWIFBvZCxFQ01cIiwgXCJVQi0xMyo2LFItNjBNKjIsRnVlbCoyXCIsIFwiUy0yNSoyLFNQUFUtMjIqNCxSLTYwTSoyLFItNzMqMlwiLCBcIktoLTMxUCoyX0toLTI1TUwqNF9SLTczKjJfTC0wODFfTVBTNDEwXCIsIFwiVUItMzIqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0xMDAqMTYsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMjUwKjYsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItNTAwKjYsUi02ME0qMixGdWVsKjJcIiwgXCJLaC0yNU1QVSo0X1ItNzMqMl9GdWVsKjJfTC0wODFfTVBTNDEwXCIsIFwiUy0yNSo2LFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTUwMEFPKjQsVUItMzIqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNCxVQi0xMyoyLFItNjBNKjIsU1BQVS0yMioyXCIsIFwiS2gtMzFQKjJfS2gtMjVNUFUqNF9SLTczKjJfTC0wODFfTVBTNDEwXCIsIFwiUkJLLTUwMEFPKjYsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMTAwKjMyLFItNjBNKjJcIiwgXCJSQkstMjUwKjIsVUItMzIqNCxSLTYwTSoyLEZ1ZWwqMlwiLCBcIlJCSy0yNTAqOCxSLTYwTSoyXCIsIFwiQVBVLTggVmlraHItTSoyLFItNzMqMixTUFBVLTIyKjIsTWVyY3VyeSBMTFRWIFBvZCxFQ01cIiwgXCJSQkstMjUwKjQsVUItMzIqNCxSLTYwTSoyXCIsIFwiRkFCLTI1MCo0LFNQUFUtMjIqMixTQUItMTAwKjIsUi02ME0qMlwiLCBcIkZBQi0yNTAqNCxTLTI1KjIsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMjUwKjQsVUItMTMqMixSLTYwTSoyLEZ1ZWwqMlwiXSwgXCJTdS0yN1wiOiBbXCJSLTczKjQsUi0yN0VSKjQsUi0yN0VUKjJcIiwgXCJLTUdVLTIgKEFPLTIuNVJUKSo1LFItNzMqMixFQ01cIiwgXCJCZXRBQi01MDBTaFAqNixSLTczKjIsRUNNXCIsIFwiS01HVS0yIChQVEFCLTIuNUtPKSo1LFItNzMqMixFQ01cIiwgXCJSLTczKjIsUi0yN0VSKjYsRUNNXCIsIFwiUi03Myo2XCIsIFwiUy0xMyoxMCxSQkstNTAwQU8qMixGQUItNTAwKjIsUi03MyoyLEVDTVwiLCBcIlItNzMqNCxSLTI3RVIqNlwiLCBcIlItNzMqMixSLTI3RVIqNCxSLTI3RVQqMixFQ01cIiwgXCJSLTczKjQsRUNNXCIsIFwiRUNNXCIsIFwiRkFCLTUwMCo2LFItNzMqMixFQ01cIiwgXCJTLTI1KjIsRkFCLTUwMCo0LFItNzMqNFwiLCBcIlMtMjUqNCwgRkFCLTUwMCo0LCBSLTczKjIsIEVDTVwiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIFJCSy01MDAgUFRBQjFcIiwgXCJDQVMgUy04T0ZQIFJvY2tldHMgKyBGQUItNTAwIEJvbWJzXCIsIFwiQ0FTIFMtOE9GUCBSb2NrZXRzXCIsIFwiQ0FTIFMtOE9GUCBSb2NrZXRzICsgRkFCLTEwMCBCb21ic1wiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIEZBQi0xMDAgQm9tYnNcIiwgXCJDQVMgUy0xMyBSb2NrZXRzXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgRkFCLTI1MCBCb21ic1wiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIFJCSy0yNTAgUFRBQjIuNVwiLCBcIkNBUyBTLThLT00gUm9ja2V0c1wiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIEZBQi01MDAgQm9tYnNcIiwgXCJDQVMgUy04S09NIFJvY2tldHMgKyBSQkstNTAwIFBUQUIxMFwiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIEtNR1UgUFRBQlwiLCBcIiBDQVMgUy0yNSBSb2NrZXRzXCIsIFwiQ0FTIFMtMjUgUm9ja2V0cyArIEZBQi01MDAgQm9tYnNcIl0sIFwiU3UtMzBcIjogW1wiUi03MyoyLFItNzcqNixFQ01cIiwgXCJSLTczKjIsUi0yN1QqMixSLTI3Uio0XCIsIFwiUkJLLTUwMEFPKjYsUi03MyoyLEVDTVwiLCBcIktoLTMxUCoyLEtoLTMxQSoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiUi03Myo0LFItMjdUKjIsUi0yN1IqNFwiLCBcIlItNzMqMixSLTc3KjIsS2gtMzUqMixFQ01cIiwgXCJLaC0zNSoyLEtoLTMxUCoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiRkFCLTI1MCo0LEItOCoyLFItNzMqMixFQ01cIiwgXCJFQ01cIiwgXCJLQUItMTUwMCoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiUkJLLTI1MCo2LFItNzMqMixFQ01cIiwgXCJSLTczKjQsUi03Nyo2XCIsIFwiRkFCLTI1MCo0LFMtMjUqMixSLTczKjIsRUNNXCIsIFwiUi03MyoyLFItMjdSKjIsUi0yN0VSKjQsRUNNXCIsIFwiUi03MyoyLFItMjdUKjIsUi0yN0VSKjIsUi03NyoyLEVDTVwiLCBcIkZBQi0xNTAwKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJSLTczKjQsUi0yN1QqMixSLTI3RVIqMixSLTc3KjJcIiwgXCJLaC01OU0qMixSLTczKjIsUi03NyoyLEVDTVwiLCBcIkZBQi01MDAqNixSLTczKjIsRUNNXCIsIFwiUi03Myo0LFItMjdSKjIsUi0yN0VSKjRcIiwgXCJLaC0yOUwqNCxSLTczKjIsUi03NyoyLEVDTVwiLCBcIkJldEFCLTUwMCo2LFItNzMqMixFQ01cIiwgXCJSLTczKjRcIiwgXCJGQUItMjUwKjQsVUItMTMqMixSLTczKjIsRUNNXCIsIFwiUi03MyoyLFItNzcqNCxSLTI3RVIqMixFQ01cIiwgXCJLQUItNTAwKjQsUi03MyoyLFItNzcqMixFQ01cIiwgXCJGQUItMjUwKjYsUi03MyoyLEVDTVwiLCBcIlItNzMqNCxSLTc3KjQsUi0yN0VSKjJcIiwgXCJLaC0yOVQqNCxSLTczKjIsUi03NyoyLEVDTVwiLCBcIktoLTMxUCoyLEtoLTMxQSoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiS2gtMzFQKjQsUi03MyoyLFItNzcqMixFQ01cIl0sIFwiU3UtMzNcIjogW1wiUkJLLTI1MCo2LFItNzMqMixSLTI3UioyLEVDTVwiLCBcIlItNzMqNFwiLCBcIlItNzMqNCxSLTI3UioyLFItMjdFUio2XCIsIFwiUi03MyoyLFItMjdFVCoyLFItMjdFUio2LEVDTVwiLCBcIlItNzMqNCxSLTI3RVQqMixSLTI3RVIqNlwiLCBcIkZBQi0yNTAqNixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJSLTczKjIsUi0yN1IqMixSLTI3RVIqNixFQ01cIiwgXCJFQ01cIiwgXCJCZXRBQi01MDAqNixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJSQkstNTAwQU8qNixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJVQi0xMyo0LEZBQi0yNTAqNCxSLTczKjIsRUNNXCIsIFwiUy0yNSo0LEZBQi0yNTAqNCxSLTczKjIsRUNNXCIsIFwiRkFCLTUwMCo2LFItNzMqMixSLTI3UioyLEVDTVwiLCBcIkItOCo0LEZBQi0yNTAqNCxSLTczKjIsRUNNXCIsIFwiUy0yNSo0LEZBQi01MDAqNCxSLTczKjRcIiwgXCJDQVMgUy04S09NIHJvY2tldHMgKyBGQUI1MDBcIiwgXCJDQVMgUy04T0ZQIHJvY2tldHMgKyBGQUI1MDBcIiwgXCJDQVMgUy0xMyBSb2NrZXRzICsgRkFCNTAwXCIsIFwiQ0FTIFMtMTMgUm9ja2V0cyArIEZBQjEwMFwiLCBcIkNBUyBTLThLT00gcm9ja2V0cyArIEZBQjI1MFwiLCBcIkNBUyBTLTI1IFJvY2tldHMgKyBGQUI1MDBcIiwgXCJDQVMgUy04S09NIHJvY2tldHMgKyBSQks1MDAgUFRBQjEwXCIsIFwiQ0FTIFMtOEtPTSByb2NrZXRzICsgUkJLNTAwIFBUQUIxXCJdLCBcIlN1LTM0XCI6IFtcIlVCLTEzKjQsRkFCLTI1MCo0LFItNzMqMixFQ01cIiwgXCJGQUItMTAwKjI4LFItNzMqMixFQ01cIiwgXCJCZXRBQi01MDAqOCxSLTczKjIsRUNNXCIsIFwiS2gtMjlMKjQsUi03MyoyLFItNzcqMixFQ01cIiwgXCJLQUItNTAwKjQsUi03MyoyLFItNzcqMixFQ01cIiwgXCJSQkstMjUwIFBUQUItMi41TSo4LFItNzMqMixFQ01cIiwgXCJGQUItMjUwKjgsUi03MyoyLEVDTVwiLCBcIkVDTVwiLCBcIktoLTI5VCo0LFItNzMqMixSLTc3KjIsRUNNXCIsIFwiUkJLLTUwMCBQVEFCLTEwLTUqOCxSLTczKjIsRUNNXCIsIFwiRkFCLTE1MDAqMyxSLTczKjIsUi03NyoyLEVDTVwiLCBcIktoLTU5TSoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiQi04KjYsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiRkFCLTUwMCo4LFItNzMqMixFQ01cIiwgXCJLQUItMTUwMCoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiS2gtMjlUKjQsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiS2gtMzFBKjQsS2gtMzFQKjIsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiS2gtMzFBKjYsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiS2gtMzFQKjQsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiS2gtMjlMKjQsUi03MyoyLFItMjdSKjIsRUNNXCJdLCBcIlRvcm5hZG8gR1I0XCI6IFtcIkFJTS05TSoyLCBGdWVsKjIsIEVDTVwiLCBcIkFMQVJNKjQsIEZ1ZWwqMiwgRUNNXCIsIFwiR0JVLTE2KjIsIEFJTS05TSoyLCBGdWVsKjIsIEVDTVwiLCBcIkJMNzU1KjQsIEFJTS05TSoyLCBGdWVsKjIsIEVDTVwiLCBcIlNlYSBFYWdsZSoyLCBBSU0tOU0qMiwgRnVlbCoyLCBFQ01cIl0sIFwiVG9ybmFkbyBJRFNcIjogW1wiS29ybW9yYW4qMixBSU0tOSoyLEZ1ZWwqMlwiLCBcIkdCVS0xNioyLEFJTS05KjIsRnVlbCoyXCIsIFwiRnVlbCoyXCIsIFwiQUdNLTg4KjQsQUlNLTkqMixFQ01cIiwgXCJBR00tODgqMixBSU0tOSoyLEZ1ZWwqMixFQ01cIiwgXCJLb3Jtb3Jhbio0LEFJTS05KjJcIiwgXCJLb3Jtb3JhbioyLEFJTS05KjIsQUdNLTg4KjJcIiwgXCJNay04Mio0LEFJTS05KjIsRnVlbCoyXCJdLCBcIlR1LTE0MlwiOiBbXCJLaC0zNSo2XCJdLCBcIlR1LTE2MFwiOiBbXCJLaC02NSoxMlwiXSwgXCJUdS0yMk0zXCI6IFtcIktoLTIyTlwiLCBcIktoLTIyTioyXCIsIFwiRkFCLTI1MCo2OVwiLCBcIkZBQi01MDAqMzNcIiwgXCJGQUItNTAwKjMzLCBGQUItMjUwKjM2XCIsIFwiRkFCLTI1MCozM1wiXSwgXCJUdS05NU1TXCI6IFtcIktoLTY1KjZcIl0sIFwiVUgtMUhcIjogW1wiTTEzNCBNaW5pZ3VuKjIsIFhNMTU4KjJcIl0sIFwiVUgtNjBBXCI6IFtdIH0iLCJpbXBvcnQgeyBNYXJrZXIsIExhdExuZywgUG9seWxpbmUsIEljb24gfSBmcm9tICdsZWFmbGV0JztcclxuaW1wb3J0IHsgQ29udmVydEREVG9ETVMgfSBmcm9tICcuLi9vdGhlci91dGlscyc7XHJcbmltcG9ydCB7IGdldE1hcCwgZ2V0VW5pdHNNYW5hZ2VyLCBnZXRWaXNpYmlsaXR5U2V0dGluZ3MgfSBmcm9tICcuLic7XHJcbmltcG9ydCB7IFVuaXRNYXJrZXIsIE1hcmtlck9wdGlvbnMsIEFpcmNyYWZ0TWFya2VyLCBIZWxpY29wdGVyTWFya2VyLCBHcm91bmRVbml0TWFya2VyLCBOYXZ5VW5pdE1hcmtlciwgV2VhcG9uTWFya2VyIH0gZnJvbSAnLi91bml0bWFya2VyJztcclxuaW1wb3J0IHsgYWRkRGVzdGluYXRpb24sIGF0dGFja1VuaXQsIGNoYW5nZUFsdGl0dWRlLCBjaGFuZ2VTcGVlZCB9IGZyb20gJy4uL2Rjcy9kY3MnO1xyXG5cclxudmFyIHBhdGhJY29uID0gbmV3IEljb24oe1xyXG4gICAgaWNvblVybDogJ2ltYWdlcy9tYXJrZXItaWNvbi5wbmcnLFxyXG4gICAgc2hhZG93VXJsOiAnaW1hZ2VzL21hcmtlci1zaGFkb3cucG5nJyxcclxuICAgIGljb25BbmNob3I6IFsxMywgNDFdXHJcbn0pO1xyXG5cclxuZXhwb3J0IGNsYXNzIFVuaXQge1xyXG4gICAgSUQ6IG51bWJlciA9IC0xO1xyXG4gICAgbGVhZGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICB3aW5nbWFuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICB3aW5nbWVuOiBVbml0W10gPSBbXTtcclxuICAgIGZvcm1hdGlvbjogc3RyaW5nID0gXCJcIjtcclxuICAgIG5hbWU6IHN0cmluZyA9IFwiXCI7XHJcbiAgICB1bml0TmFtZTogc3RyaW5nID0gXCJcIjtcclxuICAgIGdyb3VwTmFtZTogc3RyaW5nID0gXCJcIjtcclxuICAgIGxhdGl0dWRlOiBudW1iZXIgPSAwO1xyXG4gICAgbG9uZ2l0dWRlOiBudW1iZXIgPSAwO1xyXG4gICAgYWx0aXR1ZGU6IG51bWJlciA9IDA7XHJcbiAgICBoZWFkaW5nOiBudW1iZXIgPSAwO1xyXG4gICAgc3BlZWQ6IG51bWJlciA9IDA7XHJcbiAgICBjb2FsaXRpb25JRDogbnVtYmVyID0gLTE7XHJcbiAgICBhbGl2ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBjdXJyZW50VGFzazogc3RyaW5nID0gXCJcIjtcclxuICAgIGZ1ZWw6IG51bWJlciA9IDA7XHJcbiAgICB0eXBlOiBhbnkgPSBudWxsO1xyXG4gICAgZmxhZ3M6IGFueSA9IG51bGw7XHJcbiAgICBhY3RpdmVQYXRoOiBhbnkgPSBudWxsO1xyXG4gICAgYW1tbzogYW55ID0gbnVsbDtcclxuICAgIHRhcmdldHM6IGFueSA9IG51bGw7XHJcblxyXG4gICAgI3NlbGVjdGFibGU6IGJvb2xlYW47XHJcbiAgICAjc2VsZWN0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICNwcmV2ZW50Q2xpY2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgICNwYXRoTWFya2VyczogTWFya2VyW10gPSBbXTtcclxuICAgICNwYXRoUG9seWxpbmU6IFBvbHlsaW5lO1xyXG4gICAgI3RhcmdldHNQb2x5bGluZXM6IFBvbHlsaW5lW107XHJcbiAgICAjbWFya2VyOiBVbml0TWFya2VyO1xyXG4gICAgI3RpbWVyOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIHN0YXRpYyBnZXRDb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAobmFtZSA9PT0gXCJHcm91bmRVbml0XCIpIHJldHVybiBHcm91bmRVbml0O1xyXG4gICAgICAgIGlmIChuYW1lID09PSBcIkFpcmNyYWZ0XCIpIHJldHVybiBBaXJjcmFmdDtcclxuICAgICAgICBpZiAobmFtZSA9PT0gXCJIZWxpY29wdGVyXCIpIHJldHVybiBIZWxpY29wdGVyO1xyXG4gICAgICAgIGlmIChuYW1lID09PSBcIk1pc3NpbGVcIikgcmV0dXJuIE1pc3NpbGU7XHJcbiAgICAgICAgaWYgKG5hbWUgPT09IFwiQm9tYlwiKSByZXR1cm4gQm9tYjtcclxuICAgICAgICBpZiAobmFtZSA9PT0gXCJOYXZ5VW5pdFwiKSByZXR1cm4gTmF2eVVuaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgbWFya2VyOiBVbml0TWFya2VyKSB7XHJcbiAgICAgICAgdGhpcy5JRCA9IElEO1xyXG5cclxuICAgICAgICB0aGlzLiNzZWxlY3RhYmxlID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgLyogVGhlIG1hcmtlciBpcyBzZXQgYnkgdGhlIGluaGVyaXRlZCBjbGFzcyAqL1xyXG4gICAgICAgIHRoaXMuI21hcmtlciA9IG1hcmtlcjtcclxuICAgICAgICB0aGlzLiNtYXJrZXIub24oJ2NsaWNrJywgKGUpID0+IHRoaXMuI29uQ2xpY2soZSkpO1xyXG4gICAgICAgIHRoaXMuI21hcmtlci5vbignZGJsY2xpY2snLCAoZSkgPT4gdGhpcy4jb25Eb3VibGVDbGljayhlKSk7XHJcblxyXG4gICAgICAgIHRoaXMuI3BhdGhQb2x5bGluZSA9IG5ldyBQb2x5bGluZShbXSwgeyBjb2xvcjogJyMyZDNlNTAnLCB3ZWlnaHQ6IDMsIG9wYWNpdHk6IDAuNSwgc21vb3RoRmFjdG9yOiAxIH0pO1xyXG4gICAgICAgIHRoaXMuI3BhdGhQb2x5bGluZS5hZGRUbyhnZXRNYXAoKSk7XHJcbiAgICAgICAgdGhpcy4jdGFyZ2V0c1BvbHlsaW5lcyA9IFtdO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZShyZXNwb25zZTogSlNPTikge1xyXG4gICAgICAgIGZvciAobGV0IGVudHJ5IGluIHJlc3BvbnNlKSB7XHJcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgdGhpc1tlbnRyeV0gPSByZXNwb25zZVtlbnRyeV07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLiN1cGRhdGVNYXJrZXIoKTtcclxuXHJcbiAgICAgICAgdGhpcy4jY2xlYXJUYXJnZXRzKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuI2RyYXdQYXRoKCk7XHJcbiAgICAgICAgICAgIHRoaXMuI2RyYXdUYXJnZXRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgdGhpcy4jY2xlYXJQYXRoKCk7XHJcblxyXG4gICAgICAgIC8qXHJcbiAgICAgICAgdGhpcy53aW5nbWVuID0gW107XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlW1wid2luZ21lbklEc1wiXSAhPSBudWxsKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgSUQgb2YgcmVzcG9uc2VbXCJ3aW5nbWVuSURzXCJdKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLndpbmdtZW4ucHVzaCh1bml0c01hbmFnZXIuZ2V0VW5pdEJ5SUQoSUQpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmZvcm1hdGlvbiA9IHJlc3BvbnNlW1wiZm9ybWF0aW9uXCJdO1xyXG5cclxuICAgICAgICB0aGlzLm1pc3Npb25EYXRhID0gbWlzc2lvbkRhdGEuZ2V0VW5pdERhdGEodGhpcy5JRClcclxuXHJcbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZCh0aGlzLmdldFNlbGVjdGVkKCkgJiYgdGhpcy5hbGl2ZSlcclxuICAgICAgICAqL1xyXG4gICAgfVxyXG5cclxuICAgIHNldFNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKSB7XHJcbiAgICAgICAgLyogT25seSBhbGl2ZSB1bml0cyBjYW4gYmUgc2VsZWN0ZWQuIFNvbWUgdW5pdHMgYXJlIG5vdCBzZWxlY3RhYmxlICh3ZWFwb25zKSAqL1xyXG4gICAgICAgIGlmICgodGhpcy5hbGl2ZSB8fCAhc2VsZWN0ZWQpICYmIHRoaXMuI3NlbGVjdGFibGUgJiYgdGhpcy4jc2VsZWN0ZWQgIT0gc2VsZWN0ZWQpIHtcclxuICAgICAgICAgICAgdGhpcy4jc2VsZWN0ZWQgPSBzZWxlY3RlZDtcclxuICAgICAgICAgICAgdGhpcy4jbWFya2VyLnNldFNlbGVjdGVkKHNlbGVjdGVkKTtcclxuICAgICAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkub25Vbml0U2VsZWN0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFNlbGVjdGVkKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNzZWxlY3RlZDtcclxuICAgIH1cclxuXHJcbiAgICBhZGREZXN0aW5hdGlvbihsYXRsbmc6IEwuTGF0TG5nKSB7XHJcbiAgICAgICAgdmFyIHBhdGg6IGFueSA9IHt9O1xyXG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZVBhdGggIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBwYXRoID0gdGhpcy5hY3RpdmVQYXRoO1xyXG4gICAgICAgICAgICBwYXRoWyhPYmplY3Qua2V5cyhwYXRoKS5sZW5ndGggKyAxKS50b1N0cmluZygpXSA9IGxhdGxuZztcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHBhdGggPSB7IFwiMVwiOiBsYXRsbmcgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYWRkRGVzdGluYXRpb24odGhpcy5JRCwgcGF0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJEZXN0aW5hdGlvbnMoKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVQYXRoID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBnZXRIaWRkZW4oKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgICNvbkNsaWNrKGU6IGFueSkge1xyXG4gICAgICAgIHRoaXMuI3RpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy4jcHJldmVudENsaWNrKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZ2V0TWFwKCkuZ2V0U3RhdGUoKSA9PT0gJ0lETEUnIHx8IGdldE1hcCgpLmdldFN0YXRlKCkgPT09ICdNT1ZFX1VOSVQnIHx8IGUub3JpZ2luYWxFdmVudC5jdHJsS2V5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFlLm9yaWdpbmFsRXZlbnQuY3RybEtleSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBnZXRVbml0c01hbmFnZXIoKS5kZXNlbGVjdEFsbFVuaXRzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4jcHJldmVudENsaWNrID0gZmFsc2U7XHJcbiAgICAgICAgfSwgMjAwKTtcclxuICAgIH1cclxuXHJcbiAgICAjb25Eb3VibGVDbGljayhlOiBhbnkpIHtcclxuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy4jdGltZXIpO1xyXG4gICAgICAgIHRoaXMuI3ByZXZlbnRDbGljayA9IHRydWU7XHJcblxyXG4gICAgICAgIHZhciBvcHRpb25zID0gW1xyXG4gICAgICAgICAgICB7ICd0b29sdGlwJzogJ0F0dGFjaycsICdzcmMnOiAnYXR0YWNrLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHsgZ2V0TWFwKCkuaGlkZVNlbGVjdGlvbldoZWVsKCk7IGdldFVuaXRzTWFuYWdlcigpLmF0dGFja1VuaXQodGhpcy5JRCk7IH0gfSxcclxuICAgICAgICAgICAgeyAndG9vbHRpcCc6ICdHbyB0byB0YW5rZXInLCAnc3JjJzogJ3Rhbmtlci5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB7IGdldE1hcCgpLmhpZGVTZWxlY3Rpb25XaGVlbCgpOyAvKnNob3dNZXNzYWdlKFwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIHlldFwiKTsqLyB9IH0sXHJcbiAgICAgICAgICAgIHsgJ3Rvb2x0aXAnOiAnUlRCJywgJ3NyYyc6ICdydGIucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4geyBnZXRNYXAoKS5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgLypzaG93TWVzc2FnZShcIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCB5ZXRcIik7Ki8gfSB9XHJcbiAgICAgICAgXVxyXG5cclxuICAgICAgICBpZiAoIXRoaXMubGVhZGVyICYmICF0aGlzLndpbmdtYW4pIHtcclxuICAgICAgICAgICAgb3B0aW9ucy5wdXNoKHsgJ3Rvb2x0aXAnOiAnQ3JlYXRlIGZvcm1hdGlvbicsICdzcmMnOiAnZm9ybWF0aW9uLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHsgZ2V0TWFwKCkuaGlkZVNlbGVjdGlvbldoZWVsKCk7IC8qdW5pdHNNYW5hZ2VyLmNyZWF0ZUZvcm1hdGlvbih0aGlzLklEKTsqLyB9IH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZ2V0TWFwKCkuc2hvd1NlbGVjdGlvbldoZWVsKGUub3JpZ2luYWxFdmVudCwgb3B0aW9ucywgZmFsc2UpO1xyXG4gICAgfVxyXG5cclxuICAgICN1cGRhdGVNYXJrZXIoKSB7XHJcbiAgICAgICAgLyogQWRkIHRoZSBtYXJrZXIgaWYgbm90IHByZXNlbnQgKi9cclxuICAgICAgICBpZiAoIWdldE1hcCgpLmhhc0xheWVyKHRoaXMuI21hcmtlcikgJiYgIXRoaXMuZ2V0SGlkZGVuKCkpIHtcclxuICAgICAgICAgICAgdGhpcy4jbWFya2VyLmFkZFRvKGdldE1hcCgpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIEhpZGUgdGhlIG1hcmtlciBpZiBuZWNlc3NhcnkqL1xyXG4gICAgICAgIGlmIChnZXRNYXAoKS5oYXNMYXllcih0aGlzLiNtYXJrZXIpICYmIHRoaXMuZ2V0SGlkZGVuKCkpIHtcclxuICAgICAgICAgICAgZ2V0TWFwKCkucmVtb3ZlTGF5ZXIodGhpcy4jbWFya2VyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy4jbWFya2VyLnNldExhdExuZyhuZXcgTGF0TG5nKHRoaXMubGF0aXR1ZGUsIHRoaXMubG9uZ2l0dWRlKSk7XHJcbiAgICAgICAgICAgIHRoaXMuI21hcmtlci5kcmF3KHtcclxuICAgICAgICAgICAgICAgIGhlYWRpbmc6IHRoaXMuaGVhZGluZyxcclxuICAgICAgICAgICAgICAgIHNwZWVkOiB0aGlzLnNwZWVkLFxyXG4gICAgICAgICAgICAgICAgYWx0aXR1ZGU6IHRoaXMuYWx0aXR1ZGUsXHJcbiAgICAgICAgICAgICAgICBhbGl2ZTogdGhpcy5hbGl2ZVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2RyYXdQYXRoKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZVBhdGggIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB2YXIgX3BvaW50cyA9IFtdO1xyXG4gICAgICAgICAgICBfcG9pbnRzLnB1c2gobmV3IExhdExuZyh0aGlzLmxhdGl0dWRlLCB0aGlzLmxvbmdpdHVkZSkpO1xyXG5cclxuICAgICAgICAgICAgLyogQWRkIG1hcmtlcnMgaWYgbWlzc2luZyAqL1xyXG4gICAgICAgICAgICB3aGlsZSAodGhpcy4jcGF0aE1hcmtlcnMubGVuZ3RoIDwgT2JqZWN0LmtleXModGhpcy5hY3RpdmVQYXRoKS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHZhciBtYXJrZXIgPSBuZXcgTWFya2VyKFswLCAwXSwgeyBpY29uOiBwYXRoSWNvbiB9KS5hZGRUbyhnZXRNYXAoKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiNwYXRoTWFya2Vycy5wdXNoKG1hcmtlcik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8qIFJlbW92ZSBtYXJrZXJzIGlmIHRvbyBtYW55ICovXHJcbiAgICAgICAgICAgIHdoaWxlICh0aGlzLiNwYXRoTWFya2Vycy5sZW5ndGggPiBPYmplY3Qua2V5cyh0aGlzLmFjdGl2ZVBhdGgpLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgZ2V0TWFwKCkucmVtb3ZlTGF5ZXIodGhpcy4jcGF0aE1hcmtlcnNbdGhpcy4jcGF0aE1hcmtlcnMubGVuZ3RoIC0gMV0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jcGF0aE1hcmtlcnMuc3BsaWNlKHRoaXMuI3BhdGhNYXJrZXJzLmxlbmd0aCAtIDEsIDEpXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8qIFVwZGF0ZSB0aGUgcG9zaXRpb24gb2YgdGhlIGV4aXN0aW5nIG1hcmtlcnMgKHRvIGF2b2lkIGNyZWF0aW5nIG1hcmtlcnMgdXNlbGVzc2x5KSAqL1xyXG4gICAgICAgICAgICBmb3IgKGxldCBXUCBpbiB0aGlzLmFjdGl2ZVBhdGgpIHtcclxuICAgICAgICAgICAgICAgIHZhciBkZXN0aW5hdGlvbiA9IHRoaXMuYWN0aXZlUGF0aFtXUF07XHJcbiAgICAgICAgICAgICAgICB0aGlzLiNwYXRoTWFya2Vyc1twYXJzZUludChXUCkgLSAxXS5zZXRMYXRMbmcoW2Rlc3RpbmF0aW9uLmxhdCwgZGVzdGluYXRpb24ubG5nXSk7XHJcbiAgICAgICAgICAgICAgICBfcG9pbnRzLnB1c2gobmV3IExhdExuZyhkZXN0aW5hdGlvbi5sYXQsIGRlc3RpbmF0aW9uLmxuZykpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jcGF0aFBvbHlsaW5lLnNldExhdExuZ3MoX3BvaW50cyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NsZWFyUGF0aCgpIHtcclxuICAgICAgICBmb3IgKGxldCBXUCBpbiB0aGlzLiNwYXRoTWFya2Vycykge1xyXG4gICAgICAgICAgICBnZXRNYXAoKS5yZW1vdmVMYXllcih0aGlzLiNwYXRoTWFya2Vyc1tXUF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNwYXRoTWFya2VycyA9IFtdO1xyXG4gICAgICAgIHRoaXMuI3BhdGhQb2x5bGluZS5zZXRMYXRMbmdzKFtdKTtcclxuICAgIH1cclxuXHJcbiAgICBcclxuICAgICNkcmF3VGFyZ2V0cygpXHJcbiAgICB7XHJcbiAgICAgICAgZm9yIChsZXQgdHlwZUluZGV4IGluIHRoaXMudGFyZ2V0cylcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4IGluIHRoaXMudGFyZ2V0c1t0eXBlSW5kZXhdKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0RGF0YSA9IHRoaXMudGFyZ2V0c1t0eXBlSW5kZXhdW2luZGV4XTtcclxuICAgICAgICAgICAgICAgIHZhciB0YXJnZXQgPSBnZXRVbml0c01hbmFnZXIoKS5nZXRVbml0QnlJRCh0YXJnZXREYXRhLm9iamVjdFtcImlkX1wiXSlcclxuICAgICAgICAgICAgICAgIGlmICh0YXJnZXQgIT0gbnVsbCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFyIHN0YXJ0TGF0TG5nID0gbmV3IExhdExuZyh0aGlzLmxhdGl0dWRlLCB0aGlzLmxvbmdpdHVkZSlcclxuICAgICAgICAgICAgICAgICAgICB2YXIgZW5kTGF0TG5nID0gbmV3IExhdExuZyh0YXJnZXQubGF0aXR1ZGUsIHRhcmdldC5sb25naXR1ZGUpXHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgdmFyIGNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlSW5kZXggPT09IFwicmFkYXJcIilcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yID0gXCIjRkZGRjAwXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVJbmRleCA9PT0gXCJ2aXN1YWxcIilcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yID0gXCIjRkYwMEZGXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKHR5cGVJbmRleCA9PT0gXCJyd3JcIilcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yID0gXCIjMDBGRjAwXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yID0gXCIjRkZGRkZGXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHZhciB0YXJnZXRQb2x5bGluZSA9IG5ldyBQb2x5bGluZShbc3RhcnRMYXRMbmcsIGVuZExhdExuZ10sIHtjb2xvcjogY29sb3IsIHdlaWdodDogMywgb3BhY2l0eTogMSwgc21vb3RoRmFjdG9yOiAxfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0UG9seWxpbmUuYWRkVG8oZ2V0TWFwKCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI3RhcmdldHNQb2x5bGluZXMucHVzaCh0YXJnZXRQb2x5bGluZSlcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjY2xlYXJUYXJnZXRzKClcclxuICAgIHtcclxuICAgICAgICBmb3IgKGxldCBpbmRleCBpbiB0aGlzLiN0YXJnZXRzUG9seWxpbmVzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgZ2V0TWFwKCkucmVtb3ZlTGF5ZXIodGhpcy4jdGFyZ2V0c1BvbHlsaW5lc1tpbmRleF0pXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcblxyXG4gICAgYXR0YWNrVW5pdCh0YXJnZXRJRDogbnVtYmVyKSB7XHJcbiAgICAgICAgLyogQ2FsbCBEQ1MgYXR0YWNrVW5pdCBmdW5jdGlvbiAqL1xyXG4gICAgICAgIGlmICh0aGlzLklEICE9IHRhcmdldElEKSB7XHJcbiAgICAgICAgICAgIGF0dGFja1VuaXQodGhpcy5JRCwgdGFyZ2V0SUQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgLy8gVE9ETzogc2hvdyBhIG1lc3NhZ2VcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICBjaGFuZ2VTcGVlZChzcGVlZENoYW5nZTogc3RyaW5nKVxyXG4gICAge1xyXG4gICAgICAgY2hhbmdlU3BlZWQodGhpcy5JRCwgc3BlZWRDaGFuZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGNoYW5nZUFsdGl0dWRlKGFsdGl0dWRlQ2hhbmdlOiBzdHJpbmcpXHJcbiAgICB7XHJcbiAgICAgICAgY2hhbmdlQWx0aXR1ZGUodGhpcy5JRCwgYWx0aXR1ZGVDaGFuZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qXHJcbiAgICBzZXRmb3JtYXRpb24oZm9ybWF0aW9uKVxyXG4gICAge1xyXG4gICAgICAgIC8vIFRPRE8gbW92ZSBpbiBkZWRpY2F0ZWQgZmlsZVxyXG4gICAgICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcclxuICAgICAgICB4aHIub3BlbihcIlBVVFwiLCBSRVNUYWRkcmVzcyk7XHJcbiAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xyXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhpcy51bml0TmFtZSArIFwiIGZvcm1hdGlvbiBjaGFuZ2U6IFwiICsgZm9ybWF0aW9uKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHZhciBjb21tYW5kID0ge1wiSURcIjogdGhpcy5JRCwgXCJmb3JtYXRpb25cIjogZm9ybWF0aW9ufVxyXG4gICAgICAgIHZhciBkYXRhID0ge1wic2V0Rm9ybWF0aW9uXCI6IGNvbW1hbmR9XHJcblxyXG4gICAgICAgIHhoci5zZW5kKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRMZWFkZXIod2luZ21lbklEcylcclxuICAgIHtcclxuICAgICAgICAvLyBUT0RPIG1vdmUgaW4gZGVkaWNhdGVkIGZpbGVcclxuICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICAgICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMudW5pdE5hbWUgKyBcIiBjcmVhdGVkIGZvcm1hdGlvbiB3aXRoOiBcIiArIHdpbmdtZW5JRHMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdmFyIGNvbW1hbmQgPSB7XCJJRFwiOiB0aGlzLklELCBcIndpbmdtZW5JRHNcIjogd2luZ21lbklEc31cclxuICAgICAgICB2YXIgZGF0YSA9IHtcInNldExlYWRlclwiOiBjb21tYW5kfVxyXG5cclxuICAgICAgICB4aHIuc2VuZChKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbiAgICB9XHJcbiAgICAqL1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQWlyVW5pdCBleHRlbmRzIFVuaXQge1xyXG4gICAgZ2V0SGlkZGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFsaXZlKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS51c2VyID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICAgICAgZWxzZSBpZiAoIXRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS5haSA9PT0gXCJoaWRkZW5cIilcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmRlYWQgPT09IFwiaGlkZGVuXCJcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBaXJjcmFmdCBleHRlbmRzIEFpclVuaXQge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgQWlyY3JhZnRNYXJrZXIob3B0aW9ucyk7XHJcbiAgICAgICAgc3VwZXIoSUQsIG1hcmtlcik7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBIZWxpY29wdGVyIGV4dGVuZHMgQWlyVW5pdCB7XHJcbiAgICBjb25zdHJ1Y3RvcihJRDogbnVtYmVyLCBvcHRpb25zOiBNYXJrZXJPcHRpb25zKSB7XHJcbiAgICAgICAgdmFyIG1hcmtlciA9IG5ldyBIZWxpY29wdGVyTWFya2VyKG9wdGlvbnMpO1xyXG4gICAgICAgIHN1cGVyKElELCBtYXJrZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgR3JvdW5kVW5pdCBleHRlbmRzIFVuaXQge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgR3JvdW5kVW5pdE1hcmtlcihvcHRpb25zKTtcclxuICAgICAgICBzdXBlcihJRCwgbWFya2VyKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRIaWRkZW4oKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWxpdmUpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5mbGFncy51c2VyICYmIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLnVzZXIgPT09IFwiaGlkZGVuXCIpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICAgICAgICBlbHNlIGlmICghdGhpcy5mbGFncy51c2VyICYmIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuZGVhZCA9PT0gXCJoaWRkZW5cIlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE5hdnlVbml0IGV4dGVuZHMgVW5pdCB7XHJcbiAgICBjb25zdHJ1Y3RvcihJRDogbnVtYmVyLCBvcHRpb25zOiBNYXJrZXJPcHRpb25zKSB7XHJcbiAgICAgICAgdmFyIG1hcmtlciA9IG5ldyBOYXZ5VW5pdE1hcmtlcihvcHRpb25zKTtcclxuICAgICAgICBzdXBlcihJRCwgbWFya2VyKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRIaWRkZW4oKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWxpdmUpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5mbGFncy51c2VyICYmIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLnVzZXIgPT09IFwiaGlkZGVuXCIpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICAgICAgICBlbHNlIGlmICghdGhpcy5mbGFncy51c2VyICYmIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuZGVhZCA9PT0gXCJoaWRkZW5cIlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFdlYXBvbiBleHRlbmRzIFVuaXQge1xyXG4gICAgZ2V0SGlkZGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFsaXZlKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmZsYWdzLnVzZXIgJiYgZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkud2VhcG9uID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuZGVhZCA9PT0gXCJoaWRkZW5cIlxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1pc3NpbGUgZXh0ZW5kcyBXZWFwb24ge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgV2VhcG9uTWFya2VyKG9wdGlvbnMpO1xyXG4gICAgICAgIHN1cGVyKElELCBtYXJrZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQm9tYiBleHRlbmRzIFdlYXBvbiB7XHJcbiAgICBjb25zdHJ1Y3RvcihJRDogbnVtYmVyLCBvcHRpb25zOiBNYXJrZXJPcHRpb25zKSB7XHJcbiAgICAgICAgdmFyIG1hcmtlciA9IG5ldyBXZWFwb25NYXJrZXIob3B0aW9ucyk7XHJcbiAgICAgICAgc3VwZXIoSUQsIG1hcmtlcik7XHJcbiAgICB9XHJcbn1cclxuIiwiXHJcblxyXG5leHBvcnQgdmFyIHVuaXRUeXBlczogYW55ID0ge307XHJcbi8qIE5BVlkgKi9cclxudW5pdFR5cGVzLm5hdnkgPSB7fTtcclxudW5pdFR5cGVzLm5hdnkuYmx1ZSA9IFtcclxuICAgIFwiVklOU09OXCIsXHJcbiAgICBcIlBFUlJZXCIsXHJcbiAgICBcIlRJQ09OREVST0dcIlxyXG5dXHJcblxyXG51bml0VHlwZXMubmF2eS5yZWQgPSBbXHJcbiAgICBcIkFMQkFUUk9TXCIsXHJcbiAgICBcIktVWk5FQ09XXCIsXHJcbiAgICBcIk1PTE5JWUFcIixcclxuICAgIFwiTU9TQ09XXCIsXHJcbiAgICBcIk5FVVNUUkFTSFwiLFxyXG4gICAgXCJQSU9UUlwiLFxyXG4gICAgXCJSRVpLWVwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy5uYXZ5LmNpdmlsID0gW1xyXG4gICAgXCJFTE5ZQVwiLFxyXG4gICAgXCJEcnktY2FyZ28gc2hpcC0yXCIsXHJcbiAgICBcIkRyeS1jYXJnbyBzaGlwLTFcIixcclxuICAgIFwiWldFWkROWVwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy5uYXZ5LnN1Ym1hcmluZSA9IFtcclxuICAgIFwiS0lMT1wiLFxyXG4gICAgXCJTT01cIlxyXG5dXHJcblxyXG51bml0VHlwZXMubmF2eS5zcGVlZGJvYXQgPSBbXHJcbiAgICBcInNwZWVkYm9hdFwiXHJcbl1cclxuXHJcbi8qIFZFSElDTEVTIChHUk9VTkQpICovXHJcbnVuaXRUeXBlcy52ZWhpY2xlcyA9IFtdXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5Ib3dpdHplcnMgPSBbXHJcbiAgICBcIjJCMTEgbW9ydGFyXCIsXHJcbiAgICBcIlNBVSBHdm96ZGlrYVwiLFxyXG4gICAgXCJTQVUgTXN0YVwiLFxyXG4gICAgXCJTQVUgQWthdHNpYVwiLFxyXG4gICAgXCJTQVUgMi1DOVwiLFxyXG4gICAgXCJNLTEwOVwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5JRlYgPSBbXHJcbiAgICBcIkFBVjdcIixcclxuICAgIFwiQk1ELTFcIixcclxuICAgIFwiQk1QLTFcIixcclxuICAgIFwiQk1QLTJcIixcclxuICAgIFwiQk1QLTNcIixcclxuICAgIFwiQm9tYW5cIixcclxuICAgIFwiQlJETS0yXCIsXHJcbiAgICBcIkJUUi04MFwiLFxyXG4gICAgXCJCVFJfRFwiLFxyXG4gICAgXCJCdW5rZXJcIixcclxuICAgIFwiQ29icmFcIixcclxuICAgIFwiTEFWLTI1XCIsXHJcbiAgICBcIk0xMDQzIEhNTVdWIEFybWFtZW50XCIsXHJcbiAgICBcIk0xMDQ1IEhNTVdWIFRPV1wiLFxyXG4gICAgXCJNMTEyNiBTdHJ5a2VyIElDVlwiLFxyXG4gICAgXCJNLTExM1wiLFxyXG4gICAgXCJNMTEzNCBTdHJ5a2VyIEFUR01cIixcclxuICAgIFwiTS0yIEJyYWRsZXlcIixcclxuICAgIFwiTWFyZGVyXCIsXHJcbiAgICBcIk1DVi04MFwiLFxyXG4gICAgXCJNVExCXCIsXHJcbiAgICBcIlBhcmF0cm9vcGVyIFJQRy0xNlwiLFxyXG4gICAgXCJQYXJhdHJvb3BlciBBS1MtNzRcIixcclxuICAgIFwiU2FuZGJveFwiLFxyXG4gICAgXCJTb2xkaWVyIEFLXCIsXHJcbiAgICBcIkluZmFudHJ5IEFLXCIsXHJcbiAgICBcIlNvbGRpZXIgTTI0OVwiLFxyXG4gICAgXCJTb2xkaWVyIE00XCIsXHJcbiAgICBcIlNvbGRpZXIgTTQgR1JHXCIsXHJcbiAgICBcIlNvbGRpZXIgUlBHXCIsXHJcbiAgICBcIlRQWlwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5NTFJTID0gW1xyXG4gICAgXCJHcmFkLVVSQUxcIixcclxuICAgIFwiVXJhZ2FuX0JNLTI3XCIsXHJcbiAgICBcIlNtZXJjaFwiLFxyXG4gICAgXCJNTFJTXCJcclxuXVxyXG5cclxudW5pdFR5cGVzLnZlaGljbGVzLlNBTSA9IFtcclxuICAgIFwiMlM2IFR1bmd1c2thXCIsXHJcbiAgICBcIkt1YiAyUDI1IGxuXCIsXHJcbiAgICBcIjVwNzMgcy0xMjUgbG5cIixcclxuICAgIFwiUy0zMDBQUyA1UDg1QyBsblwiLFxyXG4gICAgXCJTLTMwMFBTIDVQODVEIGxuXCIsXHJcbiAgICBcIlNBLTExIEJ1ayBMTiA5QTMxME0xXCIsXHJcbiAgICBcIk9zYSA5QTMzIGxuXCIsXHJcbiAgICBcIlRvciA5QTMzMVwiLFxyXG4gICAgXCJTdHJlbGEtMTBNM1wiLFxyXG4gICAgXCJTdHJlbGEtMSA5UDMxXCIsXHJcbiAgICBcIlNBLTExIEJ1ayBDQyA5UzQ3ME0xXCIsXHJcbiAgICBcIlNBLTggT3NhIExEIDlUMjE3XCIsXHJcbiAgICBcIlBhdHJpb3QgQU1HXCIsXHJcbiAgICBcIlBhdHJpb3QgRUNTXCIsXHJcbiAgICBcIkdlcGFyZFwiLFxyXG4gICAgXCJIYXdrIHBjcFwiLFxyXG4gICAgXCJTQS0xOCBJZ2xhIG1hbnBhZFwiLFxyXG4gICAgXCJTQS0xOCBJZ2xhIGNvbW1cIixcclxuICAgIFwiSWdsYSBtYW5wYWQgSU5TXCIsXHJcbiAgICBcIlNBLTE4IElnbGEtUyBtYW5wYWRcIixcclxuICAgIFwiU0EtMTggSWdsYS1TIGNvbW1cIixcclxuICAgIFwiVnVsY2FuXCIsXHJcbiAgICBcIkhhd2sgbG5cIixcclxuICAgIFwiTTQ4IENoYXBhcnJhbFwiLFxyXG4gICAgXCJNNiBMaW5lYmFja2VyXCIsXHJcbiAgICBcIlBhdHJpb3QgbG5cIixcclxuICAgIFwiTTEwOTcgQXZlbmdlclwiLFxyXG4gICAgXCJQYXRyaW90IEVQUFwiLFxyXG4gICAgXCJQYXRyaW90IGNwXCIsXHJcbiAgICBcIlJvbGFuZCBBRFNcIixcclxuICAgIFwiUy0zMDBQUyA1NEs2IGNwXCIsXHJcbiAgICBcIlN0aW5nZXIgbWFucGFkIEdSR1wiLFxyXG4gICAgXCJTdGluZ2VyIG1hbnBhZCBkc3JcIixcclxuICAgIFwiU3RpbmdlciBjb21tIGRzclwiLFxyXG4gICAgXCJTdGluZ2VyIG1hbnBhZFwiLFxyXG4gICAgXCJTdGluZ2VyIGNvbW1cIixcclxuICAgIFwiWlNVLTIzLTQgU2hpbGthXCIsXHJcbiAgICBcIlpVLTIzIEVtcGxhY2VtZW50IENsb3NlZFwiLFxyXG4gICAgXCJaVS0yMyBFbXBsYWNlbWVudFwiLFxyXG4gICAgXCJaVS0yMyBDbG9zZWQgSW5zdXJnZW50XCIsXHJcbiAgICBcIlVyYWwtMzc1IFpVLTIzIEluc3VyZ2VudFwiLFxyXG4gICAgXCJaVS0yMyBJbnN1cmdlbnRcIixcclxuICAgIFwiVXJhbC0zNzUgWlUtMjNcIlxyXG5dXHJcblxyXG51bml0VHlwZXMudmVoaWNsZXMuUmFkYXIgPSBbXHJcbiAgICBcIjFMMTMgRVdSXCIsXHJcbiAgICBcIkt1YiAxUzkxIHN0clwiLFxyXG4gICAgXCJTLTMwMFBTIDQwQjZNIHRyXCIsXHJcbiAgICBcIlMtMzAwUFMgNDBCNk1EIHNyXCIsXHJcbiAgICBcIjU1RzYgRVdSXCIsXHJcbiAgICBcIlMtMzAwUFMgNjRINkUgc3JcIixcclxuICAgIFwiU0EtMTEgQnVrIFNSIDlTMThNMVwiLFxyXG4gICAgXCJEb2cgRWFyIHJhZGFyXCIsXHJcbiAgICBcIkhhd2sgdHJcIixcclxuICAgIFwiSGF3ayBzclwiLFxyXG4gICAgXCJQYXRyaW90IHN0clwiLFxyXG4gICAgXCJIYXdrIGN3YXJcIixcclxuICAgIFwicC0xOSBzLTEyNSBzclwiLFxyXG4gICAgXCJSb2xhbmQgUmFkYXJcIixcclxuICAgIFwic25yIHMtMTI1IHRyXCJcclxuXVxyXG5cclxudW5pdFR5cGVzLnZlaGljbGVzLlN0cnVjdHVyZXMgPSBbXHJcbiAgICBcImhvdXNlMWFybVwiLFxyXG4gICAgXCJob3VzZTJhcm1cIixcclxuICAgIFwib3V0cG9zdF9yb2FkXCIsXHJcbiAgICBcIm91dHBvc3RcIixcclxuICAgIFwiaG91c2VBX2FybVwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5UYW5rcyA9IFtcclxuICAgIFwiQ2hhbGxlbmdlcjJcIixcclxuICAgIFwiTGVjbGVyY1wiLFxyXG4gICAgXCJMZW9wYXJkMUEzXCIsXHJcbiAgICBcIkxlb3BhcmQtMlwiLFxyXG4gICAgXCJNLTYwXCIsXHJcbiAgICBcIk0xMTI4IFN0cnlrZXIgTUdTXCIsXHJcbiAgICBcIk0tMSBBYnJhbXNcIixcclxuICAgIFwiVC01NVwiLFxyXG4gICAgXCJULTcyQlwiLFxyXG4gICAgXCJULTgwVURcIixcclxuICAgIFwiVC05MFwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5VbmFybWVkID0gW1xyXG4gICAgXCJVcmFsLTQzMjAgQVBBLTVEXCIsXHJcbiAgICBcIkFUTVotNVwiLFxyXG4gICAgXCJBVFotMTBcIixcclxuICAgIFwiR0FaLTMzMDdcIixcclxuICAgIFwiR0FaLTMzMDhcIixcclxuICAgIFwiR0FaLTY2XCIsXHJcbiAgICBcIk05NzggSEVNVFQgVGFua2VyXCIsXHJcbiAgICBcIkhFTVRUIFRGRlRcIixcclxuICAgIFwiSUtBUlVTIEJ1c1wiLFxyXG4gICAgXCJLQU1BWiBUcnVja1wiLFxyXG4gICAgXCJMQVogQnVzXCIsXHJcbiAgICBcIkh1bW1lclwiLFxyXG4gICAgXCJNIDgxOFwiLFxyXG4gICAgXCJNQVotNjMwM1wiLFxyXG4gICAgXCJQcmVkYXRvciBHQ1NcIixcclxuICAgIFwiUHJlZGF0b3IgVHJvamFuU3Bpcml0XCIsXHJcbiAgICBcIlN1aWRhZVwiLFxyXG4gICAgXCJUaWdyXzIzMzAzNlwiLFxyXG4gICAgXCJUcm9sbGV5IGJ1c1wiLFxyXG4gICAgXCJVQVotNDY5XCIsXHJcbiAgICBcIlVyYWwgQVRzUC02XCIsXHJcbiAgICBcIlVyYWwtMzc1IFBCVVwiLFxyXG4gICAgXCJVcmFsLTM3NVwiLFxyXG4gICAgXCJVcmFsLTQzMjAtMzFcIixcclxuICAgIFwiVXJhbC00MzIwVFwiLFxyXG4gICAgXCJWQVogQ2FyXCIsXHJcbiAgICBcIlppTC0xMzEgQVBBLTgwXCIsXHJcbiAgICBcIlNLUC0xMVwiLFxyXG4gICAgXCJaSUwtMTMxIEtVTkdcIixcclxuICAgIFwiWklMLTQzMzFcIlxyXG5dXHJcblxyXG4vKiBBSVJQTEFORVMgKi9cclxudW5pdFR5cGVzLmFpciA9IHt9XHJcblxyXG51bml0VHlwZXMuYWlyLkNBUCA9IFtcclxuICAgIFwiRi00RVwiLFxyXG4gICAgXCJGL0EtMThDXCIsXHJcbiAgICBcIk1pRy0yOVNcIixcclxuICAgIFwiRi0xNEFcIixcclxuICAgIFwiU3UtMjdcIixcclxuICAgIFwiTWlHLTIzTUxEXCIsXHJcbiAgICBcIlN1LTMzXCIsXHJcbiAgICBcIk1pRy0yNVJCVFwiLFxyXG4gICAgXCJTdS0zMFwiLFxyXG4gICAgXCJNaUctMzFcIixcclxuICAgIFwiTWlyYWdlIDIwMDAtNVwiLFxyXG4gICAgXCJGLTE1Q1wiLFxyXG4gICAgXCJGLTVFXCIsXHJcbiAgICBcIkYtMTZDIGJsLjUyZFwiLFxyXG5dXHJcblxyXG51bml0VHlwZXMuYWlyLkNBUyA9IFtcclxuICAgIFwiVG9ybmFkbyBJRFNcIixcclxuICAgIFwiRi00RVwiLFxyXG4gICAgXCJGL0EtMThDXCIsXHJcbiAgICBcIk1pRy0yN0tcIixcclxuICAgIFwiQS0xMENcIixcclxuICAgIFwiU3UtMjVcIixcclxuICAgIFwiU3UtMzRcIixcclxuICAgIFwiU3UtMTdNNFwiLFxyXG4gICAgXCJGLTE1RVwiLFxyXG5dXHJcblxyXG51bml0VHlwZXMuYWlyLnN0cmlrZSA9IFtcclxuICAgIFwiVHUtMjJNM1wiLFxyXG4gICAgXCJCLTUySFwiLFxyXG4gICAgXCJGLTExMUZcIixcclxuICAgIFwiVHUtOTVNU1wiLFxyXG4gICAgXCJTdS0yNE1cIixcclxuICAgIFwiVHUtMTYwXCIsXHJcbiAgICBcIkYtMTE3QVwiLFxyXG4gICAgXCJCLTFCXCIsXHJcbiAgICBcIlR1LTE0MlwiLFxyXG5dXHJcblxyXG51bml0VHlwZXMuYWlyLnRhbmsgPSBbXHJcbiAgICBcIlMtM0IgVGFua2VyXCIsXHJcbiAgICBcIktDLTEzNVwiLFxyXG4gICAgXCJJTC03OE1cIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5hd2FjcyA9IFtcclxuICAgIFwiQS01MFwiLFxyXG4gICAgXCJFLTNBXCIsXHJcbiAgICBcIkUtMkRcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5kcm9uZSA9IFtcclxuICAgIFwiTVEtMUEgUHJlZGF0b3JcIixcclxuICAgIFwiTVEtOSBSZWFwZXJcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci50cmFuc3BvcnQgPSBbXHJcbiAgICBcIkMtMTMwXCIsXHJcbiAgICBcIkFuLTI2QlwiLFxyXG4gICAgXCJBbi0zME1cIixcclxuICAgIFwiQy0xN0FcIixcclxuICAgIFwiSUwtNzZNRFwiLFxyXG5dIiwiaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0J1xyXG5pbXBvcnQgeyBTeW1ib2wgfSBmcm9tICdtaWxzeW1ib2wnXHJcbmltcG9ydCB7IGdldFZpc2liaWxpdHlTZXR0aW5ncyB9IGZyb20gJy4uJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXJrZXJPcHRpb25zIHtcclxuICAgIHVuaXROYW1lOiBzdHJpbmdcclxuICAgIG5hbWU6IHN0cmluZ1xyXG4gICAgaHVtYW46IGJvb2xlYW5cclxuICAgIGNvYWxpdGlvbklEOiBudW1iZXJcclxuICAgIHR5cGU6IGFueVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1hcmtlckRhdGEge1xyXG4gICAgaGVhZGluZzogbnVtYmVyXHJcbiAgICBzcGVlZDogbnVtYmVyXHJcbiAgICBhbHRpdHVkZTogbnVtYmVyXHJcbiAgICBhbGl2ZTogYm9vbGVhblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVW5pdE1hcmtlciBleHRlbmRzIEwuTWFya2VyIHtcclxuICAgICN1bml0TmFtZTogc3RyaW5nXHJcbiAgICAjbmFtZTogc3RyaW5nXHJcbiAgICAjaHVtYW46IGJvb2xlYW5cclxuICAgICNhbGl2ZTogYm9vbGVhbiA9IHRydWVcclxuICAgICNzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlXHJcblxyXG4gICAgY29uc3RydWN0b3Iob3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHN1cGVyKG5ldyBMLkxhdExuZygwLCAwKSwgeyByaXNlT25Ib3ZlcjogdHJ1ZSB9KTtcclxuICAgICAgICB0aGlzLiN1bml0TmFtZSA9IG9wdGlvbnMudW5pdE5hbWU7XHJcbiAgICAgICAgdGhpcy4jbmFtZSA9IG9wdGlvbnMubmFtZTtcclxuICAgICAgICB0aGlzLiNodW1hbiA9IG9wdGlvbnMuaHVtYW47XHJcblxyXG4gICAgICAgIHZhciBzeW1ib2wgPSBuZXcgU3ltYm9sKHRoaXMuI2NvbXB1dGVNYXJrZXJDb2RlKG9wdGlvbnMpLCB7IHNpemU6IDI1IH0pO1xyXG4gICAgICAgIHZhciBpbWcgPSBzeW1ib2wuYXNDYW52YXMoKS50b0RhdGFVUkwoJ2ltYWdlL3BuZycpO1xyXG5cclxuICAgICAgICB2YXIgaWNvbiA9IG5ldyBMLkRpdkljb24oe1xyXG4gICAgICAgICAgICBodG1sOiBgPHRhYmxlIGNsYXNzPVwidW5pdC1tYXJrZXItY29udGFpbmVyXCIgaWQ9XCJjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml0LW1hcmtlci1pY29uXCIgaWQ9XCJpY29uXCI+PGltZyBzcmM9XCIke2ltZ31cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml0LW1hcmtlci11bml0TmFtZVwiIGlkPVwidW5pdE5hbWVcIj4ke3RoaXMuI3VuaXROYW1lfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVuaXQtbWFya2VyLWFsdGl0dWRlXCIgaWQ9XCJhbHRpdHVkZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVuaXQtbWFya2VyLXNwZWVkXCIgaWQ9XCJzcGVlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVuaXQtbWFya2VyLW5hbWVcIiBpZD1cIm5hbWVcIj4ke3RoaXMuI25hbWV9PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIDwvdGFibGU+YCxcclxuICAgICAgICAgICAgY2xhc3NOYW1lOiAndW5pdC1tYXJrZXInXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5zZXRJY29uKGljb24pO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQWRkKG1hcDogTC5NYXApOiB0aGlzIHtcclxuICAgICAgICBzdXBlci5vbkFkZChtYXApO1xyXG4gICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VvdmVyJywgZnVuY3Rpb24gKGU6IGFueSkgeyBlLnRhcmdldD8uc2V0SG92ZXJlZCh0cnVlKTsgfSk7XHJcbiAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdtb3VzZW91dCcsIGZ1bmN0aW9uIChlOiBhbnkpIHsgZS50YXJnZXQ/LnNldEhvdmVyZWQoZmFsc2UpOyB9KTtcclxuICAgICAgICByZXR1cm4gdGhpc1xyXG4gICAgfVxyXG5cclxuICAgIGRyYXcoZGF0YTogTWFya2VyRGF0YSkge1xyXG4gICAgICAgIHRoaXMuI2FsaXZlID0gZGF0YS5hbGl2ZTtcclxuICAgICAgICB2YXIgZWxlbWVudCA9IHRoaXMuZ2V0RWxlbWVudCgpO1xyXG4gICAgICAgIGlmIChlbGVtZW50ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdmFyIG5hbWVEaXYgPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI25hbWVcIik7XHJcbiAgICAgICAgICAgIHZhciB1bml0TmFtZURpdiA9IDxIVE1MRWxlbWVudD5lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjdW5pdE5hbWVcIik7XHJcbiAgICAgICAgICAgIHZhciBjb250YWluZXIgPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2NvbnRhaW5lclwiKTtcclxuICAgICAgICAgICAgdmFyIGljb24gPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2ljb25cIik7XHJcbiAgICAgICAgICAgIHZhciBhbHRpdHVkZURpdiA9IDxIVE1MRWxlbWVudD5lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjYWx0aXR1ZGVcIik7XHJcbiAgICAgICAgICAgIHZhciBzcGVlZERpdiA9IDxIVE1MRWxlbWVudD5lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjc3BlZWRcIik7XHJcblxyXG4gICAgICAgICAgICAvKiBJZiB2aXNpYmlsaXR5IGlzIGZ1bGwgc2hvdyBhbGwgbGFiZWxzICovXHJcbiAgICAgICAgICAgIG5hbWVEaXYuc3R5bGUuZGlzcGxheSA9ICcnO1xyXG4gICAgICAgICAgICB1bml0TmFtZURpdi5zdHlsZS5kaXNwbGF5ID0gJyc7XHJcbiAgICAgICAgICAgIGFsdGl0dWRlRGl2LnN0eWxlLmRpc3BsYXkgPSAnJztcclxuICAgICAgICAgICAgc3BlZWREaXYuc3R5bGUuZGlzcGxheSA9ICcnO1xyXG5cclxuICAgICAgICAgICAgLyogSWYgdmlzaWJpbGl0eSBpcyBwYXJ0aWFsIHNob3duIG9ubHkgaWNvbiBhbmQgdW5pdCBuYW1lLiBJZiBub25lLCBzaG93biBvbmx5IGljb24uICovXHJcbiAgICAgICAgICAgIGlmICh0aGlzLmdldFZpc2liaWxpdHkoKSA9PT0gXCJwYXJ0aWFsXCIgfHwgdGhpcy5nZXRWaXNpYmlsaXR5KCkgPT09IFwibm9uZVwiKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB1bml0TmFtZURpdi5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgICAgICAgICAgICAgYWx0aXR1ZGVEaXYuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgICAgICAgICAgICAgIHNwZWVkRGl2LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHRoaXMuZ2V0VmlzaWJpbGl0eSgpID09PSBcIm5vbmVcIilcclxuICAgICAgICAgICAgICAgIG5hbWVEaXYuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuXHJcbiAgICAgICAgICAgIG5hbWVEaXYuc3R5bGUubGVmdCA9ICgtKG5hbWVEaXYub2Zmc2V0V2lkdGggLSBjb250YWluZXIub2Zmc2V0V2lkdGgpIC8gMikgKyBcInB4XCI7XHJcbiAgICAgICAgICAgIHVuaXROYW1lRGl2LnN0eWxlLmxlZnQgPSAoLSh1bml0TmFtZURpdi5vZmZzZXRXaWR0aCAtIGNvbnRhaW5lci5vZmZzZXRXaWR0aCkgLyAyKSArIFwicHhcIjtcclxuXHJcbiAgICAgICAgICAgIGljb24uc3R5bGUudHJhbnNmb3JtID0gXCJyb3RhdGUoXCIgKyBkYXRhLmhlYWRpbmcgKyBcInJhZClcIjtcclxuICAgICAgICAgICAgYWx0aXR1ZGVEaXYuaW5uZXJIVE1MID0gU3RyaW5nKE1hdGgucm91bmQoZGF0YS5hbHRpdHVkZSAvIDAuMzA0OCAvIDEwMCkgLyAxMCk7XHJcbiAgICAgICAgICAgIHNwZWVkRGl2LmlubmVySFRNTCA9IFN0cmluZyhNYXRoLnJvdW5kKGRhdGEuc3BlZWQgKiAxLjk0Mzg0KSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoIXRoaXMuI2FsaXZlKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldEVsZW1lbnQoKT8ucXVlcnlTZWxlY3RvcihcIiNpY29uXCIpPy5jbGFzc0xpc3QuYWRkKFwidW5pdC1tYXJrZXItZGVhZFwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZXRTZWxlY3RlZChzZWxlY3RlZDogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuI3NlbGVjdGVkID0gc2VsZWN0ZWQ7XHJcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKT8uY2xhc3NMaXN0LnJlbW92ZShcInVuaXQtbWFya2VyLWhvdmVyZWRcIik7XHJcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKT8uY2xhc3NMaXN0LnRvZ2dsZShcInVuaXQtbWFya2VyLXNlbGVjdGVkXCIsIHNlbGVjdGVkKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRTZWxlY3RlZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jc2VsZWN0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0SG92ZXJlZChob3ZlcmVkOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKT8uY2xhc3NMaXN0LnRvZ2dsZShcInVuaXQtbWFya2VyLWhvdmVyZWRcIiwgaG92ZXJlZCAmJiB0aGlzLiNhbGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SHVtYW4oKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2h1bWFuO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEFsaXZlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNhbGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuICAgIH1cclxuXHJcbiAgICAjY29tcHV0ZU1hcmtlckNvZGUob3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBpZGVudGl0eSA9IFwiMDBcIjtcclxuICAgICAgICB2YXIgc2V0ID0gXCIwMFwiO1xyXG4gICAgICAgIHZhciBlbnRpdHkgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIGVudGl0eVR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMFwiO1xyXG4gICAgICAgIHZhciBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDBcIjtcclxuXHJcbiAgICAgICAgLyogSWRlbnRpdHkgKi9cclxuICAgICAgICBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAxKVxyXG4gICAgICAgICAgICBpZGVudGl0eSA9IFwiMDZcIiAvKiBIb3N0aWxlICovXHJcbiAgICAgICAgZWxzZSBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAyKVxyXG4gICAgICAgICAgICBpZGVudGl0eSA9IFwiMDNcIiAvKiBGcmllbmRseSAqL1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgaWRlbnRpdHkgPSBcIjA0XCIgLyogTmV1dHJhbCAqL1xyXG5cclxuICAgICAgICAvKiBBaXIgKi9cclxuICAgICAgICBpZiAob3B0aW9ucy50eXBlLmxldmVsMSA9PSAxKSB7XHJcbiAgICAgICAgICAgIHNldCA9IFwiMDFcIlxyXG4gICAgICAgICAgICBlbnRpdHkgPSBcIjExXCJcclxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDIgPT0gMSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVR5cGUgPSBcIjAxXCJcclxuICAgICAgICAgICAgZWxzZSBpZiAob3B0aW9ucy50eXBlLmxldmVsMiA9PSAxKVxyXG4gICAgICAgICAgICAgICAgZW50aXR5VHlwZSA9IFwiMDJcIlxyXG5cclxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA0XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMilcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA1XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMylcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA0XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNClcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAyXCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNilcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBHcm91bmQgKi9cclxuICAgICAgICBlbHNlIGlmIChvcHRpb25zLnR5cGUubGV2ZWwxID09IDIpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBzZXQgPSBcIjEwXCJcclxuICAgICAgICAgICAgZW50aXR5ID0gXCIxMlwiXHJcbiAgICAgICAgICAgIGVudGl0eVR5cGUgPSBcIjA1XCJcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogTmF2eSAqL1xyXG4gICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDEgPT0gMylcclxuICAgICAgICAgICAgc2V0ID0gXCIzMFwiXHJcbiAgICAgICAgLyogV2VhcG9uICovXHJcbiAgICAgICAgZWxzZSBpZiAob3B0aW9ucy50eXBlLmxldmVsMSA9PSA0KVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgc2V0ID0gXCIwMlwiXHJcbiAgICAgICAgICAgIGVudGl0eSA9IFwiMTFcIlxyXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50eXBlLmxldmVsMyA9PSA3KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBzZWN0b3JPbmVNb2RpZmllciA9IFwiMDFcIlxyXG4gICAgICAgICAgICAgICAgc2VjdG9yVHdvTW9kaWZpZXIgPSBcIjAxXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChvcHRpb25zLnR5cGUubGV2ZWwzID09IDgpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMVwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMzQpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMlwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDFcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMTEpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMlwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYDEwJHtpZGVudGl0eX0ke3NldH0wMDAwJHtlbnRpdHl9JHtlbnRpdHlUeXBlfSR7ZW50aXR5U3VidHlwZX0ke3NlY3Rvck9uZU1vZGlmaWVyfSR7c2VjdG9yVHdvTW9kaWZpZXJ9YFxyXG4gICAgfSBcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFpclVuaXRNYXJrZXIgZXh0ZW5kcyBVbml0TWFya2VyIHtcclxuICAgIGdldFZpc2liaWxpdHkoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwiZnVsbFwiO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5nZXRIdW1hbigpKVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkudXNlcjtcclxuICAgICAgICBlbHNlIGlmICghdGhpcy5nZXRBbGl2ZSgpKVxyXG4gICAgICAgICAgICByZXR1cm4gXCJub25lXCI7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuYWk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBaXJjcmFmdE1hcmtlciBleHRlbmRzIEFpclVuaXRNYXJrZXIge1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgSGVsaWNvcHRlck1hcmtlciBleHRlbmRzIEFpclVuaXRNYXJrZXIge1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgR3JvdW5kVW5pdE1hcmtlciBleHRlbmRzIFVuaXRNYXJrZXIge1xyXG4gICAgLyogQXJlIHVzZXIgZHJpdmVuIHVuaXRzIHJlY29nbml6ZWQgYXMgaHVtYW4/ICovXHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0SHVtYW4oKSlcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLnVzZXI7XHJcbiAgICAgICAgZWxzZSBpZiAoIXRoaXMuZ2V0QWxpdmUoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwibm9uZVwiO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTmF2eVVuaXRNYXJrZXIgZXh0ZW5kcyBVbml0TWFya2VyIHtcclxuICAgIGdldFZpc2liaWxpdHkoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwiZnVsbFwiO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuZ2V0QWxpdmUoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwibm9uZVwiO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgV2VhcG9uTWFya2VyIGV4dGVuZHMgVW5pdE1hcmtlciB7XHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmdldEFsaXZlKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcIm5vbmVcIjtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHJldHVybiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS53ZWFwb247XHJcbiAgICB9XHJcbn0iLCJpbXBvcnQgeyBMYXRMbmcsIExhdExuZ0JvdW5kcyB9IGZyb20gXCJsZWFmbGV0XCI7XHJcbmltcG9ydCB7IGdldE1hcCwgZ2V0VW5pdEluZm9QYW5lbCB9IGZyb20gXCIuLlwiO1xyXG5pbXBvcnQgeyBVbml0LCBHcm91bmRVbml0IH0gZnJvbSBcIi4vdW5pdFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFVuaXRzTWFuYWdlciB7XHJcbiAgICAjdW5pdHM6IHsgW0lEOiBudW1iZXJdOiBVbml0IH07XHJcbiAgICAjY29waWVkVW5pdHM6IFVuaXRbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLiN1bml0cyA9IHt9O1xyXG4gICAgICAgIHRoaXMuI2NvcGllZFVuaXRzID0gW107XHJcbiAgICB9XHJcblxyXG4gICAgYWRkVW5pdChJRDogbnVtYmVyLCBkYXRhOiBhbnkpIHtcclxuICAgICAgICAvKiBUaGUgbmFtZSBvZiB0aGUgdW5pdCBjYXRlZ29yeSBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb25zdHJ1Y3RvciBuYW1lICovXHJcbiAgICAgICAgdmFyIGNvbnN0cnVjdG9yID0gVW5pdC5nZXRDb25zdHJ1Y3RvcihkYXRhLmNhdGVnb3J5KTtcclxuICAgICAgICBpZiAoY29uc3RydWN0b3IgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHZhciBvcHRpb25zID0ge1xyXG4gICAgICAgICAgICAgICAgdW5pdE5hbWU6IGRhdGEudW5pdE5hbWUsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiBkYXRhLm5hbWUsXHJcbiAgICAgICAgICAgICAgICBodW1hbjogZGF0YS5odW1hbixcclxuICAgICAgICAgICAgICAgIGNvYWxpdGlvbklEOiBkYXRhLmNvYWxpdGlvbklELFxyXG4gICAgICAgICAgICAgICAgdHlwZTogZGF0YS50eXBlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4jdW5pdHNbSURdID0gbmV3IGNvbnN0cnVjdG9yKElELCBvcHRpb25zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VW5pdEJ5SUQoSUQ6IG51bWJlcikge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiN1bml0c1tJRF07XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlVW5pdChJRDogbnVtYmVyKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGRlc2VsZWN0QWxsVW5pdHMoKSB7XHJcbiAgICAgICAgZm9yIChsZXQgSUQgaW4gdGhpcy4jdW5pdHMpIHtcclxuICAgICAgICAgICAgdGhpcy4jdW5pdHNbSURdLnNldFNlbGVjdGVkKGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKGRhdGE6IGFueSkge1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIGRhdGFbXCJ1bml0c1wiXSkge1xyXG4gICAgICAgICAgICAvKiBDcmVhdGUgdGhlIHVuaXQgaWYgbWlzc2luZyBmcm9tIHRoZSBsb2NhbCBhcnJheSwgdGhlbiB1cGRhdGUgdGhlIGRhdGEuIERyYXdpbmcgaXMgaGFuZGxlZCBieSBsZWFmbGV0LiAqL1xyXG4gICAgICAgICAgICBpZiAoIShJRCBpbiB0aGlzLiN1bml0cykpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWRkVW5pdChwYXJzZUludChJRCksIGRhdGFbXCJ1bml0c1wiXVtJRF0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuI3VuaXRzW3BhcnNlSW50KElEKV0udXBkYXRlKGRhdGFbXCJ1bml0c1wiXVtJRF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIGdldFVuaXRJbmZvUGFuZWwoKS5zaG93KCk7XHJcbiAgICAgICAgICAgIGdldFVuaXRJbmZvUGFuZWwoKS51cGRhdGUodGhpcy5nZXRTZWxlY3RlZFVuaXRzKClbMF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgZ2V0VW5pdEluZm9QYW5lbCgpLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgb25Vbml0U2VsZWN0aW9uKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkVW5pdHMoKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnNldFN0YXRlKFwiTU9WRV9VTklUXCIpO1xyXG4gICAgICAgICAgICAvL3VuaXRDb250cm9sUGFuZWwuc2V0RW5hYmxlZCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnNldFN0YXRlKFwiSURMRVwiKTtcclxuICAgICAgICAgICAgLy91bml0Q29udHJvbFBhbmVsLnNldEVuYWJsZWQoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RGcm9tQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuZGVzZWxlY3RBbGxVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIHRoaXMuI3VuaXRzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdmFyIGxhdGxuZyA9IG5ldyBMYXRMbmcodGhpcy4jdW5pdHNbSURdLmxhdGl0dWRlLCB0aGlzLiN1bml0c1tJRF0ubG9uZ2l0dWRlKTtcclxuICAgICAgICAgICAgaWYgKGJvdW5kcy5jb250YWlucyhsYXRsbmcpKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN1bml0c1tJRF0uc2V0U2VsZWN0ZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U2VsZWN0ZWRVbml0cygpIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIHRoaXMuI3VuaXRzKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiN1bml0c1tJRF0uZ2V0U2VsZWN0ZWQoKSkge1xyXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRVbml0cy5wdXNoKHRoaXMuI3VuaXRzW0lEXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkVW5pdHM7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkRGVzdGluYXRpb24obGF0bG5nOiBMLkxhdExuZykge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpIHtcclxuICAgICAgICAgICAgdmFyIGNvbW1hbmRlZFVuaXQgPSBzZWxlY3RlZFVuaXRzW2lkeF07XHJcbiAgICAgICAgICAgIC8vaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS53aW5nbWFuKVxyXG4gICAgICAgICAgICAvL3tcclxuICAgICAgICAgICAgLy8gICAgY29tbWFuZGVkVW5pdCA9IHRoaXMuZ2V0TGVhZGVyKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAgICAgICAgIC8vfVxyXG4gICAgICAgICAgICBjb21tYW5kZWRVbml0LmFkZERlc3RpbmF0aW9uKGxhdGxuZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyRGVzdGluYXRpb25zKCkge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpIHtcclxuICAgICAgICAgICAgdmFyIGNvbW1hbmRlZFVuaXQgPSBzZWxlY3RlZFVuaXRzW2lkeF07XHJcbiAgICAgICAgICAgIC8vaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS53aW5nbWFuKVxyXG4gICAgICAgICAgICAvL3tcclxuICAgICAgICAgICAgLy8gICAgY29tbWFuZGVkVW5pdCA9IHRoaXMuZ2V0TGVhZGVyKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAgICAgICAgIC8vfVxyXG4gICAgICAgICAgICBjb21tYW5kZWRVbml0LmNsZWFyRGVzdGluYXRpb25zKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdGVkVW5pdHNDaGFuZ2VTcGVlZChzcGVlZENoYW5nZTogc3RyaW5nKVxyXG4gICAge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBzZWxlY3RlZFVuaXRzW2lkeF0uY2hhbmdlU3BlZWQoc3BlZWRDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RlZFVuaXRzQ2hhbmdlQWx0aXR1ZGUoYWx0aXR1ZGVDaGFuZ2U6IHN0cmluZylcclxuICAgIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IGlkeCBpbiBzZWxlY3RlZFVuaXRzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRVbml0c1tpZHhdLmNoYW5nZUFsdGl0dWRlKGFsdGl0dWRlQ2hhbmdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaGFuZGxlS2V5RXZlbnQoZSlcclxuICAgIC8vIHtcclxuICAgIC8vICAgICBpZiAoZS5vcmlnaW5hbEV2ZW50LmNvZGUgPT09ICdLZXlDJyAmJiBlLm9yaWdpbmFsRXZlbnQuY3RybEtleSlcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuY29weVVuaXRzKCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGVsc2UgaWYgKGUub3JpZ2luYWxFdmVudC5jb2RlID09PSAnS2V5VicgJiYgZS5vcmlnaW5hbEV2ZW50LmN0cmxLZXkpXHJcbiAgICAvLyAgICAge1xyXG4gICAgLy8gICAgICAgICB0aGlzLnBhc3RlVW5pdHMoKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gY29weVVuaXRzKClcclxuICAgIC8vIHtcclxuICAgIC8vICAgICB0aGlzLiNjb3BpZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIHBhc3RlVW5pdHMoKVxyXG4gICAgLy8ge1xyXG4gICAgLy8gICAgIGZvciAobGV0IGlkeCBpbiB0aGlzLiNjb3BpZWRVbml0cylcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHZhciB1bml0ID0gdGhpcy4jY29waWVkVW5pdHNbaWR4XTtcclxuICAgIC8vICAgICAgICAgY2xvbmVVbml0KHVuaXQuSUQpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vIH1cclxuXHJcbiAgICBhdHRhY2tVbml0KElEOiBudW1iZXIpIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IGlkeCBpbiBzZWxlY3RlZFVuaXRzKSB7XHJcbiAgICAgICAgICAgIC8qIElmIGEgdW5pdCBpcyBhIHdpbmdtYW4sIHNlbmQgdGhlIGNvbW1hbmQgdG8gaXRzIGxlYWRlciAqL1xyXG4gICAgICAgICAgICB2YXIgY29tbWFuZGVkVW5pdCA9IHNlbGVjdGVkVW5pdHNbaWR4XTtcclxuICAgICAgICAgICAgLy9pZiAoc2VsZWN0ZWRVbml0c1tpZHhdLndpbmdtYW4pXHJcbiAgICAgICAgICAgIC8ve1xyXG4gICAgICAgICAgICAvLyAgICBjb21tYW5kZWRVbml0ID0gdGhpcy5nZXRMZWFkZXIoc2VsZWN0ZWRVbml0c1tpZHhdLklEKTtcclxuICAgICAgICAgICAgLy99XHJcbiAgICAgICAgICAgIGNvbW1hbmRlZFVuaXQuYXR0YWNrVW5pdChJRCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIGNyZWF0ZUZvcm1hdGlvbihJRClcclxuICAgIC8vIHtcclxuICAgIC8vICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgLy8gICAgIHZhciB3aW5nbWVuSURzID0gW107XHJcbiAgICAvLyAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpXHJcbiAgICAvLyAgICAge1xyXG4gICAgLy8gICAgICAgICBpZiAoc2VsZWN0ZWRVbml0c1tpZHhdLndpbmdtYW4pXHJcbiAgICAvLyAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgIHNob3dNZXNzYWdlKHNlbGVjdGVkVW5pdHNbaWR4XS51bml0TmFtZSArIFwiIGlzIGFscmVhZHkgaW4gYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIGVsc2UgaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS5sZWFkZXIpXHJcbiAgICAvLyAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgIHNob3dNZXNzYWdlKHNlbGVjdGVkVW5pdHNbaWR4XS51bml0TmFtZSArIFwiIGlzIGFscmVhZHkgaW4gYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIGVsc2VcclxuICAgIC8vICAgICAgICAge1xyXG4gICAgLy8gICAgICAgICAgICAgLyogVE9ET1xyXG4gICAgLy8gICAgICAgICAgICAgaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS5jYXRlZ29yeSAhPT0gdGhpcy5nZXRVbml0QnlJRChJRCkuY2F0ZWdvcnkpXHJcbiAgICAvLyAgICAgICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgc2hvd01lc3NhZ2UoXCJBbGwgdW5pdHMgbXVzdCBiZSBvZiB0aGUgc2FtZSBjYXRlZ29yeSB0byBjcmVhdGUgYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICAgICAgKi9cclxuICAgIC8vICAgICAgICAgICAgIGlmIChzZWxlY3RlZFVuaXRzW2lkeF0uSUQgIT0gSUQpXHJcbiAgICAvLyAgICAgICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgd2luZ21lbklEcy5wdXNoKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAvLyAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgaWYgKHdpbmdtZW5JRHMubGVuZ3RoID4gMClcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuZ2V0VW5pdEJ5SUQoSUQpLnNldExlYWRlcih3aW5nbWVuSURzKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZVxyXG4gICAgLy8gICAgIHtcclxuICAgIC8vICAgICAgICAgc2hvd01lc3NhZ2UoXCJBdCBsZWFzdCAyIHVuaXRzIG11c3QgYmUgc2VsZWN0ZWQgdG8gY3JlYXRlIGEgZm9ybWF0aW9uLlwiKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gZ2V0TGVhZGVyKElEKVxyXG4gICAgLy8ge1xyXG4gICAgLy8gICAgIGZvciAobGV0IGlkeCBpbiB0aGlzLiN1bml0cylcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHZhciB1bml0ID0gdGhpcy4jdW5pdHNbaWR4XTtcclxuICAgIC8vICAgICAgICAgaWYgKHVuaXQubGVhZGVyKVxyXG4gICAgLy8gICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICBpZiAodW5pdC53aW5nbWVuLmluY2x1ZGVzKHRoaXMuZ2V0VW5pdEJ5SUQoSUQpKSlcclxuICAgIC8vICAgICAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gdW5pdDtcclxuICAgIC8vICAgICAgICAgICAgIH1cclxuICAgIC8vICAgICAgICAgfVxyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICBzaG93TWVzc2FnZShcIkVycm9yOiBubyBsZWFkZXIgZm91bmQgZm9yIHRoaXMgdW5pdFwiKVxyXG4gICAgLy8gfVxyXG59Il19 +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCJub2RlX21vZHVsZXMvbGVhZmxldC9kaXN0L2xlYWZsZXQtc3JjLmpzIiwibm9kZV9tb2R1bGVzL21pbHN5bWJvbC9kaXN0L21pbHN5bWJvbC5qcyIsIm5vZGVfbW9kdWxlcy9wcm9jZXNzL2Jyb3dzZXIuanMiLCJzcmMvY29udHJvbHMvYnV0dG9uLnRzIiwic3JjL2NvbnRyb2xzL2Ryb3Bkb3duLnRzIiwic3JjL2NvbnRyb2xzL3NlbGVjdGlvbnNjcm9sbC50cyIsInNyYy9jb250cm9scy9zZWxlY3Rpb253aGVlbC50cyIsInNyYy9kY3MvZGNzLnRzIiwic3JjL2luZGV4LnRzIiwic3JjL21hcC9ib3hzZWxlY3QudHMiLCJzcmMvbWFwL21hcC50cyIsInNyYy9taXNzaW9uZGF0YS9haXJiYXNlbWFya2VyLnRzIiwic3JjL21pc3Npb25kYXRhL21pc3Npb25kYXRhLnRzIiwic3JjL290aGVyL3V0aWxzLnRzIiwic3JjL3BhbmVscy9jb25uZWN0aW9uc3RhdHVzcGFuZWwudHMiLCJzcmMvcGFuZWxzL3VuaXRpbmZvcGFuZWwudHMiLCJzcmMvdW5pdHMvcGF5bG9hZE5hbWVzLnRzIiwic3JjL3VuaXRzL3VuaXQudHMiLCJzcmMvdW5pdHMvdW5pdFR5cGVzLnRzIiwic3JjL3VuaXRzL3VuaXRtYXJrZXIudHMiLCJzcmMvdW5pdHMvdW5pdHNtYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FDQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FDam5jQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7QUMxQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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QyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLElBQUksR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDdkMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQzlDLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ3BELElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsSUFBSSxHQUFHO1FBQ0gsT0FBTyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUM7O1FBRTVHLE9BQU8sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBQ3BILENBQUM7QUFYRCx3Q0FXQztBQUVE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QkFBMEIsRUFBRSwwQkFBMEIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSwwQkFBMEIsRUFBRSwwQkFBMEIsRUFBRSwwQkFBMEIsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxvQ0FBb0MsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLEVBQUUsNkNBQTZDLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsMEJBQTBCLEVBQUUsMEJBQTBCLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsb0RBQW9ELEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsZ0NBQWdDLEVBQUUsb0NBQW9DLEVBQUUsMEJBQTBCLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsMENBQTBDLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLG1EQUFtRCxFQUFF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QUcsSUFBSSxhQUFhLEVBQUU7WUFDM0IsNERBQTREO1lBQzVELElBQUksYUFBYSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QyxpQ0FBaUM7WUFDakMsR0FBRztZQUNILDREQUE0RDtZQUM1RCxHQUFHO1lBQ0gsYUFBYSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNoQztJQUNMLENBQUM7Q0F5REo7QUFsT0Qsb0NBa09DIiwiZmlsZSI6ImdlbmVyYXRlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIoZnVuY3Rpb24oKXtmdW5jdGlvbiByKGUsbix0KXtmdW5jdGlvbiBvKGksZil7aWYoIW5baV0pe2lmKCFlW2ldKXt2YXIgYz1cImZ1bmN0aW9uXCI9PXR5cGVvZiByZXF1aXJlJiZyZXF1aXJlO2lmKCFmJiZjKXJldHVybiBjKGksITApO2lmKHUpcmV0dXJuIHUoaSwhMCk7dmFyIGE9bmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgbW9kdWxlICdcIitpK1wiJ1wiKTt0aHJvdyBhLmNvZGU9XCJNT0RVTEVfTk9UX0ZPVU5EXCIsYX12YXIgcD1uW2ldPXtleHBvcnRzOnt9fTtlW2ldWzBdLmNhbGwocC5leHBvcnRzLGZ1bmN0aW9uKHIpe3ZhciBuPWVbaV1bMV1bcl07cmV0dXJuIG8obnx8cil9LHAscC5leHBvcnRzLHIsZSxuLHQpfXJldHVybiBuW2ldLmV4cG9ydHN9Zm9yKHZhciB1PVwiZnVuY3Rpb25cIj09dHlwZW9mIHJlcXVpcmUmJnJlcXVpcmUsaT0wO2k8dC5sZW5ndGg7aSsrKW8odFtpXSk7cmV0dXJuIG99cmV0dXJuIHJ9KSgpIiwiLyogQHByZXNlcnZlXG4gKiBMZWFmbGV0IDEuOS4zLCBhIEpTIGxpYnJhcnkgZm9yIGludGVyYWN0aXZlIG1hcHMuIGh0dHBzOi8vbGVhZmxldGpzLmNvbVxuICogKGMpIDIwMTAtMjAyMiBWbGFkaW1pciBBZ2Fmb25raW4sIChjKSAyMDEwLTIwMTEgQ2xvdWRNYWRlXG4gKi9cblxuKGZ1bmN0aW9uIChnbG9iYWwsIGZhY3RvcnkpIHtcbiAgdHlwZW9mIGV4cG9ydHMgPT09ICdvYmplY3QnICYmIHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnID8gZmFjdG9yeShleHBvcnRzKSA6XG4gIHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCA/IGRlZmluZShbJ2V4cG9ydHMnXSwgZmFjdG9yeSkgOlxuICAoZ2xvYmFsID0gdHlwZW9mIGdsb2JhbFRoaXMgIT09ICd1bmRlZmluZWQnID8gZ2xvYmFsVGhpcyA6IGdsb2JhbCB8fCBzZWxmLCBmYWN0b3J5KGdsb2JhbC5sZWFmbGV0ID0ge30pKTtcbn0pKHRoaXMsIChmdW5jdGlvbiAoZXhwb3J0cykgeyAndXNlIHN0cmljdCc7XG5cbiAgdmFyIHZlcnNpb24gPSBcIjEuOS4zXCI7XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFV0aWxcclxuICAgKlxyXG4gICAqIFZhcmlvdXMgdXRpbGl0eSBmdW5jdGlvbnMsIHVzZWQgYnkgTGVhZmxldCBpbnRlcm5hbGx5LlxyXG4gICAqL1xyXG5cclxuICAvLyBAZnVuY3Rpb24gZXh0ZW5kKGRlc3Q6IE9iamVjdCwgc3JjPzogT2JqZWN0KTogT2JqZWN0XHJcbiAgLy8gTWVyZ2VzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBgc3JjYCBvYmplY3QgKG9yIG11bHRpcGxlIG9iamVjdHMpIGludG8gYGRlc3RgIG9iamVjdCBhbmQgcmV0dXJucyB0aGUgbGF0dGVyLiBIYXMgYW4gYEwuZXh0ZW5kYCBzaG9ydGN1dC5cclxuICBmdW5jdGlvbiBleHRlbmQoZGVzdCkge1xyXG4gIFx0dmFyIGksIGosIGxlbiwgc3JjO1xyXG5cclxuICBcdGZvciAoaiA9IDEsIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGogPCBsZW47IGorKykge1xyXG4gIFx0XHRzcmMgPSBhcmd1bWVudHNbal07XHJcbiAgXHRcdGZvciAoaSBpbiBzcmMpIHtcclxuICBcdFx0XHRkZXN0W2ldID0gc3JjW2ldO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gZGVzdDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjcmVhdGUocHJvdG86IE9iamVjdCwgcHJvcGVydGllcz86IE9iamVjdCk6IE9iamVjdFxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtPYmplY3QuY3JlYXRlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3QvY3JlYXRlKVxyXG4gIHZhciBjcmVhdGUkMiA9IE9iamVjdC5jcmVhdGUgfHwgKGZ1bmN0aW9uICgpIHtcclxuICBcdGZ1bmN0aW9uIEYoKSB7fVxyXG4gIFx0cmV0dXJuIGZ1bmN0aW9uIChwcm90bykge1xyXG4gIFx0XHRGLnByb3RvdHlwZSA9IHByb3RvO1xyXG4gIFx0XHRyZXR1cm4gbmV3IEYoKTtcclxuICBcdH07XHJcbiAgfSkoKTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGJpbmQoZm46IEZ1bmN0aW9uLCDigKYpOiBGdW5jdGlvblxyXG4gIC8vIFJldHVybnMgYSBuZXcgZnVuY3Rpb24gYm91bmQgdG8gdGhlIGFyZ3VtZW50cyBwYXNzZWQsIGxpa2UgW0Z1bmN0aW9uLnByb3RvdHlwZS5iaW5kXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9GdW5jdGlvbi9iaW5kKS5cclxuICAvLyBIYXMgYSBgTC5iaW5kKClgIHNob3J0Y3V0LlxyXG4gIGZ1bmN0aW9uIGJpbmQoZm4sIG9iaikge1xyXG4gIFx0dmFyIHNsaWNlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlO1xyXG5cclxuICBcdGlmIChmbi5iaW5kKSB7XHJcbiAgXHRcdHJldHVybiBmbi5iaW5kLmFwcGx5KGZuLCBzbGljZS5jYWxsKGFyZ3VtZW50cywgMSkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBhcmdzID0gc2xpY2UuY2FsbChhcmd1bWVudHMsIDIpO1xyXG5cclxuICBcdHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBmbi5hcHBseShvYmosIGFyZ3MubGVuZ3RoID8gYXJncy5jb25jYXQoc2xpY2UuY2FsbChhcmd1bWVudHMpKSA6IGFyZ3VtZW50cyk7XHJcbiAgXHR9O1xyXG4gIH1cclxuXHJcbiAgLy8gQHByb3BlcnR5IGxhc3RJZDogTnVtYmVyXHJcbiAgLy8gTGFzdCB1bmlxdWUgSUQgdXNlZCBieSBbYHN0YW1wKClgXSgjdXRpbC1zdGFtcClcclxuICB2YXIgbGFzdElkID0gMDtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHN0YW1wKG9iajogT2JqZWN0KTogTnVtYmVyXHJcbiAgLy8gUmV0dXJucyB0aGUgdW5pcXVlIElEIG9mIGFuIG9iamVjdCwgYXNzaWduaW5nIGl0IG9uZSBpZiBpdCBkb2Vzbid0IGhhdmUgaXQuXHJcbiAgZnVuY3Rpb24gc3RhbXAob2JqKSB7XHJcbiAgXHRpZiAoISgnX2xlYWZsZXRfaWQnIGluIG9iaikpIHtcclxuICBcdFx0b2JqWydfbGVhZmxldF9pZCddID0gKytsYXN0SWQ7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gb2JqLl9sZWFmbGV0X2lkO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHRocm90dGxlKGZuOiBGdW5jdGlvbiwgdGltZTogTnVtYmVyLCBjb250ZXh0OiBPYmplY3QpOiBGdW5jdGlvblxyXG4gIC8vIFJldHVybnMgYSBmdW5jdGlvbiB3aGljaCBleGVjdXRlcyBmdW5jdGlvbiBgZm5gIHdpdGggdGhlIGdpdmVuIHNjb3BlIGBjb250ZXh0YFxyXG4gIC8vIChzbyB0aGF0IHRoZSBgdGhpc2Aga2V5d29yZCByZWZlcnMgdG8gYGNvbnRleHRgIGluc2lkZSBgZm5gJ3MgY29kZSkuIFRoZSBmdW5jdGlvblxyXG4gIC8vIGBmbmAgd2lsbCBiZSBjYWxsZWQgbm8gbW9yZSB0aGFuIG9uZSB0aW1lIHBlciBnaXZlbiBhbW91bnQgb2YgYHRpbWVgLiBUaGUgYXJndW1lbnRzXHJcbiAgLy8gcmVjZWl2ZWQgYnkgdGhlIGJvdW5kIGZ1bmN0aW9uIHdpbGwgYmUgYW55IGFyZ3VtZW50cyBwYXNzZWQgd2hlbiBiaW5kaW5nIHRoZVxyXG4gIC8vIGZ1bmN0aW9uLCBmb2xsb3dlZCBieSBhbnkgYXJndW1lbnRzIHBhc3NlZCB3aGVuIGludm9raW5nIHRoZSBib3VuZCBmdW5jdGlvbi5cclxuICAvLyBIYXMgYW4gYEwudGhyb3R0bGVgIHNob3J0Y3V0LlxyXG4gIGZ1bmN0aW9uIHRocm90dGxlKGZuLCB0aW1lLCBjb250ZXh0KSB7XHJcbiAgXHR2YXIgbG9jaywgYXJncywgd3JhcHBlckZuLCBsYXRlcjtcclxuXHJcbiAgXHRsYXRlciA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Ly8gcmVzZXQgbG9jayBhbmQgY2FsbCBpZiBxdWV1ZWRcclxuICBcdFx0bG9jayA9IGZhbHNlO1xyXG4gIFx0XHRpZiAoYXJncykge1xyXG4gIFx0XHRcdHdyYXBwZXJGbi5hcHBseShjb250ZXh0LCBhcmdzKTtcclxuICBcdFx0XHRhcmdzID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdH07XHJcblxyXG4gIFx0d3JhcHBlckZuID0gZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAobG9jaykge1xyXG4gIFx0XHRcdC8vIGNhbGxlZCB0b28gc29vbiwgcXVldWUgdG8gY2FsbCBsYXRlclxyXG4gIFx0XHRcdGFyZ3MgPSBhcmd1bWVudHM7XHJcblxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdC8vIGNhbGwgYW5kIGxvY2sgdW50aWwgbGF0ZXJcclxuICBcdFx0XHRmbi5hcHBseShjb250ZXh0LCBhcmd1bWVudHMpO1xyXG4gIFx0XHRcdHNldFRpbWVvdXQobGF0ZXIsIHRpbWUpO1xyXG4gIFx0XHRcdGxvY2sgPSB0cnVlO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG5cclxuICBcdHJldHVybiB3cmFwcGVyRm47XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gd3JhcE51bShudW06IE51bWJlciwgcmFuZ2U6IE51bWJlcltdLCBpbmNsdWRlTWF4PzogQm9vbGVhbik6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIG51bWJlciBgbnVtYCBtb2R1bG8gYHJhbmdlYCBpbiBzdWNoIGEgd2F5IHNvIGl0IGxpZXMgd2l0aGluXHJcbiAgLy8gYHJhbmdlWzBdYCBhbmQgYHJhbmdlWzFdYC4gVGhlIHJldHVybmVkIHZhbHVlIHdpbGwgYmUgYWx3YXlzIHNtYWxsZXIgdGhhblxyXG4gIC8vIGByYW5nZVsxXWAgdW5sZXNzIGBpbmNsdWRlTWF4YCBpcyBzZXQgdG8gYHRydWVgLlxyXG4gIGZ1bmN0aW9uIHdyYXBOdW0oeCwgcmFuZ2UsIGluY2x1ZGVNYXgpIHtcclxuICBcdHZhciBtYXggPSByYW5nZVsxXSxcclxuICBcdCAgICBtaW4gPSByYW5nZVswXSxcclxuICBcdCAgICBkID0gbWF4IC0gbWluO1xyXG4gIFx0cmV0dXJuIHggPT09IG1heCAmJiBpbmNsdWRlTWF4ID8geCA6ICgoeCAtIG1pbikgJSBkICsgZCkgJSBkICsgbWluO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGZhbHNlRm4oKTogRnVuY3Rpb25cclxuICAvLyBSZXR1cm5zIGEgZnVuY3Rpb24gd2hpY2ggYWx3YXlzIHJldHVybnMgYGZhbHNlYC5cclxuICBmdW5jdGlvbiBmYWxzZUZuKCkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGZvcm1hdE51bShudW06IE51bWJlciwgcHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogTnVtYmVyXHJcbiAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIGBudW1gIHJvdW5kZWQgd2l0aCBzcGVjaWZpZWQgYHByZWNpc2lvbmAuXHJcbiAgLy8gVGhlIGRlZmF1bHQgYHByZWNpc2lvbmAgdmFsdWUgaXMgNiBkZWNpbWFsIHBsYWNlcy5cclxuICAvLyBgZmFsc2VgIGNhbiBiZSBwYXNzZWQgdG8gc2tpcCBhbnkgcHJvY2Vzc2luZyAoY2FuIGJlIHVzZWZ1bCB0byBhdm9pZCByb3VuZC1vZmYgZXJyb3JzKS5cclxuICBmdW5jdGlvbiBmb3JtYXROdW0obnVtLCBwcmVjaXNpb24pIHtcclxuICBcdGlmIChwcmVjaXNpb24gPT09IGZhbHNlKSB7IHJldHVybiBudW07IH1cclxuICBcdHZhciBwb3cgPSBNYXRoLnBvdygxMCwgcHJlY2lzaW9uID09PSB1bmRlZmluZWQgPyA2IDogcHJlY2lzaW9uKTtcclxuICBcdHJldHVybiBNYXRoLnJvdW5kKG51bSAqIHBvdykgLyBwb3c7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdHJpbShzdHI6IFN0cmluZyk6IFN0cmluZ1xyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtTdHJpbmcucHJvdG90eXBlLnRyaW1dKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL1N0cmluZy9UcmltKVxyXG4gIGZ1bmN0aW9uIHRyaW0oc3RyKSB7XHJcbiAgXHRyZXR1cm4gc3RyLnRyaW0gPyBzdHIudHJpbSgpIDogc3RyLnJlcGxhY2UoL15cXHMrfFxccyskL2csICcnKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzcGxpdFdvcmRzKHN0cjogU3RyaW5nKTogU3RyaW5nW11cclxuICAvLyBUcmltcyBhbmQgc3BsaXRzIHRoZSBzdHJpbmcgb24gd2hpdGVzcGFjZSBhbmQgcmV0dXJucyB0aGUgYXJyYXkgb2YgcGFydHMuXHJcbiAgZnVuY3Rpb24gc3BsaXRXb3JkcyhzdHIpIHtcclxuICBcdHJldHVybiB0cmltKHN0cikuc3BsaXQoL1xccysvKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzZXRPcHRpb25zKG9iajogT2JqZWN0LCBvcHRpb25zOiBPYmplY3QpOiBPYmplY3RcclxuICAvLyBNZXJnZXMgdGhlIGdpdmVuIHByb3BlcnRpZXMgdG8gdGhlIGBvcHRpb25zYCBvZiB0aGUgYG9iamAgb2JqZWN0LCByZXR1cm5pbmcgdGhlIHJlc3VsdGluZyBvcHRpb25zLiBTZWUgYENsYXNzIG9wdGlvbnNgLiBIYXMgYW4gYEwuc2V0T3B0aW9uc2Agc2hvcnRjdXQuXHJcbiAgZnVuY3Rpb24gc2V0T3B0aW9ucyhvYmosIG9wdGlvbnMpIHtcclxuICBcdGlmICghT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgJ29wdGlvbnMnKSkge1xyXG4gIFx0XHRvYmoub3B0aW9ucyA9IG9iai5vcHRpb25zID8gY3JlYXRlJDIob2JqLm9wdGlvbnMpIDoge307XHJcbiAgXHR9XHJcbiAgXHRmb3IgKHZhciBpIGluIG9wdGlvbnMpIHtcclxuICBcdFx0b2JqLm9wdGlvbnNbaV0gPSBvcHRpb25zW2ldO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG9iai5vcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGdldFBhcmFtU3RyaW5nKG9iajogT2JqZWN0LCBleGlzdGluZ1VybD86IFN0cmluZywgdXBwZXJjYXNlPzogQm9vbGVhbik6IFN0cmluZ1xyXG4gIC8vIENvbnZlcnRzIGFuIG9iamVjdCBpbnRvIGEgcGFyYW1ldGVyIFVSTCBzdHJpbmcsIGUuZy4gYHthOiBcImZvb1wiLCBiOiBcImJhclwifWBcclxuICAvLyB0cmFuc2xhdGVzIHRvIGAnP2E9Zm9vJmI9YmFyJ2AuIElmIGBleGlzdGluZ1VybGAgaXMgc2V0LCB0aGUgcGFyYW1ldGVycyB3aWxsXHJcbiAgLy8gYmUgYXBwZW5kZWQgYXQgdGhlIGVuZC4gSWYgYHVwcGVyY2FzZWAgaXMgYHRydWVgLCB0aGUgcGFyYW1ldGVyIG5hbWVzIHdpbGxcclxuICAvLyBiZSB1cHBlcmNhc2VkIChlLmcuIGAnP0E9Zm9vJkI9YmFyJ2ApXHJcbiAgZnVuY3Rpb24gZ2V0UGFyYW1TdHJpbmcob2JqLCBleGlzdGluZ1VybCwgdXBwZXJjYXNlKSB7XHJcbiAgXHR2YXIgcGFyYW1zID0gW107XHJcbiAgXHRmb3IgKHZhciBpIGluIG9iaikge1xyXG4gIFx0XHRwYXJhbXMucHVzaChlbmNvZGVVUklDb21wb25lbnQodXBwZXJjYXNlID8gaS50b1VwcGVyQ2FzZSgpIDogaSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQob2JqW2ldKSk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gKCghZXhpc3RpbmdVcmwgfHwgZXhpc3RpbmdVcmwuaW5kZXhPZignPycpID09PSAtMSkgPyAnPycgOiAnJicpICsgcGFyYW1zLmpvaW4oJyYnKTtcclxuICB9XHJcblxyXG4gIHZhciB0ZW1wbGF0ZVJlID0gL1xceyAqKFtcXHdfIC1dKykgKlxcfS9nO1xyXG5cclxuICAvLyBAZnVuY3Rpb24gdGVtcGxhdGUoc3RyOiBTdHJpbmcsIGRhdGE6IE9iamVjdCk6IFN0cmluZ1xyXG4gIC8vIFNpbXBsZSB0ZW1wbGF0aW5nIGZhY2lsaXR5LCBhY2NlcHRzIGEgdGVtcGxhdGUgc3RyaW5nIG9mIHRoZSBmb3JtIGAnSGVsbG8ge2F9LCB7Yn0nYFxyXG4gIC8vIGFuZCBhIGRhdGEgb2JqZWN0IGxpa2UgYHthOiAnZm9vJywgYjogJ2Jhcid9YCwgcmV0dXJucyBldmFsdWF0ZWQgc3RyaW5nXHJcbiAgLy8gYCgnSGVsbG8gZm9vLCBiYXInKWAuIFlvdSBjYW4gYWxzbyBzcGVjaWZ5IGZ1bmN0aW9ucyBpbnN0ZWFkIG9mIHN0cmluZ3MgZm9yXHJcbiAgLy8gZGF0YSB2YWx1ZXMg4oCUIHRoZXkgd2lsbCBiZSBldmFsdWF0ZWQgcGFzc2luZyBgZGF0YWAgYXMgYW4gYXJndW1lbnQuXHJcbiAgZnVuY3Rpb24gdGVtcGxhdGUoc3RyLCBkYXRhKSB7XHJcbiAgXHRyZXR1cm4gc3RyLnJlcGxhY2UodGVtcGxhdGVSZSwgZnVuY3Rpb24gKHN0ciwga2V5KSB7XHJcbiAgXHRcdHZhciB2YWx1ZSA9IGRhdGFba2V5XTtcclxuXHJcbiAgXHRcdGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdObyB2YWx1ZSBwcm92aWRlZCBmb3IgdmFyaWFibGUgJyArIHN0cik7XHJcblxyXG4gIFx0XHR9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdHZhbHVlID0gdmFsdWUoZGF0YSk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHZhbHVlO1xyXG4gIFx0fSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gaXNBcnJheShvYmopOiBCb29sZWFuXHJcbiAgLy8gQ29tcGF0aWJpbGl0eSBwb2x5ZmlsbCBmb3IgW0FycmF5LmlzQXJyYXldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0FycmF5L2lzQXJyYXkpXHJcbiAgdmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5IHx8IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdHJldHVybiAoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG9iaikgPT09ICdbb2JqZWN0IEFycmF5XScpO1xyXG4gIH07XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBpbmRleE9mKGFycmF5OiBBcnJheSwgZWw6IE9iamVjdCk6IE51bWJlclxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtBcnJheS5wcm90b3R5cGUuaW5kZXhPZl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQXJyYXkvaW5kZXhPZilcclxuICBmdW5jdGlvbiBpbmRleE9mKGFycmF5LCBlbCkge1xyXG4gIFx0Zm9yICh2YXIgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRpZiAoYXJyYXlbaV0gPT09IGVsKSB7IHJldHVybiBpOyB9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gLTE7XHJcbiAgfVxyXG5cclxuICAvLyBAcHJvcGVydHkgZW1wdHlJbWFnZVVybDogU3RyaW5nXHJcbiAgLy8gRGF0YSBVUkkgc3RyaW5nIGNvbnRhaW5pbmcgYSBiYXNlNjQtZW5jb2RlZCBlbXB0eSBHSUYgaW1hZ2UuXHJcbiAgLy8gVXNlZCBhcyBhIGhhY2sgdG8gZnJlZSBtZW1vcnkgZnJvbSB1bnVzZWQgaW1hZ2VzIG9uIFdlYktpdC1wb3dlcmVkXHJcbiAgLy8gbW9iaWxlIGRldmljZXMgKGJ5IHNldHRpbmcgaW1hZ2UgYHNyY2AgdG8gdGhpcyBzdHJpbmcpLlxyXG4gIHZhciBlbXB0eUltYWdlVXJsID0gJ2RhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEFRQUJBQUQvQUN3QUFBQUFBUUFCQUFBQ0FEcz0nO1xyXG5cclxuICAvLyBpbnNwaXJlZCBieSBodHRwczovL3BhdWxpcmlzaC5jb20vMjAxMS9yZXF1ZXN0YW5pbWF0aW9uZnJhbWUtZm9yLXNtYXJ0LWFuaW1hdGluZy9cclxuXHJcbiAgZnVuY3Rpb24gZ2V0UHJlZml4ZWQobmFtZSkge1xyXG4gIFx0cmV0dXJuIHdpbmRvd1snd2Via2l0JyArIG5hbWVdIHx8IHdpbmRvd1snbW96JyArIG5hbWVdIHx8IHdpbmRvd1snbXMnICsgbmFtZV07XHJcbiAgfVxyXG5cclxuICB2YXIgbGFzdFRpbWUgPSAwO1xyXG5cclxuICAvLyBmYWxsYmFjayBmb3IgSUUgNy04XHJcbiAgZnVuY3Rpb24gdGltZW91dERlZmVyKGZuKSB7XHJcbiAgXHR2YXIgdGltZSA9ICtuZXcgRGF0ZSgpLFxyXG4gIFx0ICAgIHRpbWVUb0NhbGwgPSBNYXRoLm1heCgwLCAxNiAtICh0aW1lIC0gbGFzdFRpbWUpKTtcclxuXHJcbiAgXHRsYXN0VGltZSA9IHRpbWUgKyB0aW1lVG9DYWxsO1xyXG4gIFx0cmV0dXJuIHdpbmRvdy5zZXRUaW1lb3V0KGZuLCB0aW1lVG9DYWxsKTtcclxuICB9XHJcblxyXG4gIHZhciByZXF1ZXN0Rm4gPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lIHx8IGdldFByZWZpeGVkKCdSZXF1ZXN0QW5pbWF0aW9uRnJhbWUnKSB8fCB0aW1lb3V0RGVmZXI7XHJcbiAgdmFyIGNhbmNlbEZuID0gd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lIHx8IGdldFByZWZpeGVkKCdDYW5jZWxBbmltYXRpb25GcmFtZScpIHx8XHJcbiAgXHRcdGdldFByZWZpeGVkKCdDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWUnKSB8fCBmdW5jdGlvbiAoaWQpIHsgd2luZG93LmNsZWFyVGltZW91dChpZCk7IH07XHJcblxyXG4gIC8vIEBmdW5jdGlvbiByZXF1ZXN0QW5pbUZyYW1lKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCwgaW1tZWRpYXRlPzogQm9vbGVhbik6IE51bWJlclxyXG4gIC8vIFNjaGVkdWxlcyBgZm5gIHRvIGJlIGV4ZWN1dGVkIHdoZW4gdGhlIGJyb3dzZXIgcmVwYWludHMuIGBmbmAgaXMgYm91bmQgdG9cclxuICAvLyBgY29udGV4dGAgaWYgZ2l2ZW4uIFdoZW4gYGltbWVkaWF0ZWAgaXMgc2V0LCBgZm5gIGlzIGNhbGxlZCBpbW1lZGlhdGVseSBpZlxyXG4gIC8vIHRoZSBicm93c2VyIGRvZXNuJ3QgaGF2ZSBuYXRpdmUgc3VwcG9ydCBmb3JcclxuICAvLyBbYHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWVgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvd2luZG93L3JlcXVlc3RBbmltYXRpb25GcmFtZSksXHJcbiAgLy8gb3RoZXJ3aXNlIGl0J3MgZGVsYXllZC4gUmV0dXJucyBhIHJlcXVlc3QgSUQgdGhhdCBjYW4gYmUgdXNlZCB0byBjYW5jZWwgdGhlIHJlcXVlc3QuXHJcbiAgZnVuY3Rpb24gcmVxdWVzdEFuaW1GcmFtZShmbiwgY29udGV4dCwgaW1tZWRpYXRlKSB7XHJcbiAgXHRpZiAoaW1tZWRpYXRlICYmIHJlcXVlc3RGbiA9PT0gdGltZW91dERlZmVyKSB7XHJcbiAgXHRcdGZuLmNhbGwoY29udGV4dCk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRyZXR1cm4gcmVxdWVzdEZuLmNhbGwod2luZG93LCBiaW5kKGZuLCBjb250ZXh0KSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY2FuY2VsQW5pbUZyYW1lKGlkOiBOdW1iZXIpOiB1bmRlZmluZWRcclxuICAvLyBDYW5jZWxzIGEgcHJldmlvdXMgYHJlcXVlc3RBbmltRnJhbWVgLiBTZWUgYWxzbyBbd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvd2luZG93L2NhbmNlbEFuaW1hdGlvbkZyYW1lKS5cclxuICBmdW5jdGlvbiBjYW5jZWxBbmltRnJhbWUoaWQpIHtcclxuICBcdGlmIChpZCkge1xyXG4gIFx0XHRjYW5jZWxGbi5jYWxsKHdpbmRvdywgaWQpO1xyXG4gIFx0fVxyXG4gIH1cblxuICB2YXIgVXRpbCA9IHtcbiAgICBfX3Byb3RvX186IG51bGwsXG4gICAgZXh0ZW5kOiBleHRlbmQsXG4gICAgY3JlYXRlOiBjcmVhdGUkMixcbiAgICBiaW5kOiBiaW5kLFxuICAgIGdldCBsYXN0SWQgKCkgeyByZXR1cm4gbGFzdElkOyB9LFxuICAgIHN0YW1wOiBzdGFtcCxcbiAgICB0aHJvdHRsZTogdGhyb3R0bGUsXG4gICAgd3JhcE51bTogd3JhcE51bSxcbiAgICBmYWxzZUZuOiBmYWxzZUZuLFxuICAgIGZvcm1hdE51bTogZm9ybWF0TnVtLFxuICAgIHRyaW06IHRyaW0sXG4gICAgc3BsaXRXb3Jkczogc3BsaXRXb3JkcyxcbiAgICBzZXRPcHRpb25zOiBzZXRPcHRpb25zLFxuICAgIGdldFBhcmFtU3RyaW5nOiBnZXRQYXJhbVN0cmluZyxcbiAgICB0ZW1wbGF0ZTogdGVtcGxhdGUsXG4gICAgaXNBcnJheTogaXNBcnJheSxcbiAgICBpbmRleE9mOiBpbmRleE9mLFxuICAgIGVtcHR5SW1hZ2VVcmw6IGVtcHR5SW1hZ2VVcmwsXG4gICAgcmVxdWVzdEZuOiByZXF1ZXN0Rm4sXG4gICAgY2FuY2VsRm46IGNhbmNlbEZuLFxuICAgIHJlcXVlc3RBbmltRnJhbWU6IHJlcXVlc3RBbmltRnJhbWUsXG4gICAgY2FuY2VsQW5pbUZyYW1lOiBjYW5jZWxBbmltRnJhbWVcbiAgfTtcblxuICAvLyBAY2xhc3MgQ2xhc3NcclxuICAvLyBAYWthIEwuQ2xhc3NcclxuXHJcbiAgLy8gQHNlY3Rpb25cclxuICAvLyBAdW5pbmhlcml0YWJsZVxyXG5cclxuICAvLyBUaGFua3MgdG8gSm9obiBSZXNpZyBhbmQgRGVhbiBFZHdhcmRzIGZvciBpbnNwaXJhdGlvbiFcclxuXHJcbiAgZnVuY3Rpb24gQ2xhc3MoKSB7fVxyXG5cclxuICBDbGFzcy5leHRlbmQgPSBmdW5jdGlvbiAocHJvcHMpIHtcclxuXHJcbiAgXHQvLyBAZnVuY3Rpb24gZXh0ZW5kKHByb3BzOiBPYmplY3QpOiBGdW5jdGlvblxyXG4gIFx0Ly8gW0V4dGVuZHMgdGhlIGN1cnJlbnQgY2xhc3NdKCNjbGFzcy1pbmhlcml0YW5jZSkgZ2l2ZW4gdGhlIHByb3BlcnRpZXMgdG8gYmUgaW5jbHVkZWQuXHJcbiAgXHQvLyBSZXR1cm5zIGEgSmF2YXNjcmlwdCBmdW5jdGlvbiB0aGF0IGlzIGEgY2xhc3MgY29uc3RydWN0b3IgKHRvIGJlIGNhbGxlZCB3aXRoIGBuZXdgKS5cclxuICBcdHZhciBOZXdDbGFzcyA9IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdHNldE9wdGlvbnModGhpcyk7XHJcblxyXG4gIFx0XHQvLyBjYWxsIHRoZSBjb25zdHJ1Y3RvclxyXG4gIFx0XHRpZiAodGhpcy5pbml0aWFsaXplKSB7XHJcbiAgXHRcdFx0dGhpcy5pbml0aWFsaXplLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGNhbGwgYWxsIGNvbnN0cnVjdG9yIGhvb2tzXHJcbiAgXHRcdHRoaXMuY2FsbEluaXRIb29rcygpO1xyXG4gIFx0fTtcclxuXHJcbiAgXHR2YXIgcGFyZW50UHJvdG8gPSBOZXdDbGFzcy5fX3N1cGVyX18gPSB0aGlzLnByb3RvdHlwZTtcclxuXHJcbiAgXHR2YXIgcHJvdG8gPSBjcmVhdGUkMihwYXJlbnRQcm90byk7XHJcbiAgXHRwcm90by5jb25zdHJ1Y3RvciA9IE5ld0NsYXNzO1xyXG5cclxuICBcdE5ld0NsYXNzLnByb3RvdHlwZSA9IHByb3RvO1xyXG5cclxuICBcdC8vIGluaGVyaXQgcGFyZW50J3Mgc3RhdGljc1xyXG4gIFx0Zm9yICh2YXIgaSBpbiB0aGlzKSB7XHJcbiAgXHRcdGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcywgaSkgJiYgaSAhPT0gJ3Byb3RvdHlwZScgJiYgaSAhPT0gJ19fc3VwZXJfXycpIHtcclxuICBcdFx0XHROZXdDbGFzc1tpXSA9IHRoaXNbaV07XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHQvLyBtaXggc3RhdGljIHByb3BlcnRpZXMgaW50byB0aGUgY2xhc3NcclxuICBcdGlmIChwcm9wcy5zdGF0aWNzKSB7XHJcbiAgXHRcdGV4dGVuZChOZXdDbGFzcywgcHJvcHMuc3RhdGljcyk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gbWl4IGluY2x1ZGVzIGludG8gdGhlIHByb3RvdHlwZVxyXG4gIFx0aWYgKHByb3BzLmluY2x1ZGVzKSB7XHJcbiAgXHRcdGNoZWNrRGVwcmVjYXRlZE1peGluRXZlbnRzKHByb3BzLmluY2x1ZGVzKTtcclxuICBcdFx0ZXh0ZW5kLmFwcGx5KG51bGwsIFtwcm90b10uY29uY2F0KHByb3BzLmluY2x1ZGVzKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gbWl4IGdpdmVuIHByb3BlcnRpZXMgaW50byB0aGUgcHJvdG90eXBlXHJcbiAgXHRleHRlbmQocHJvdG8sIHByb3BzKTtcclxuICBcdGRlbGV0ZSBwcm90by5zdGF0aWNzO1xyXG4gIFx0ZGVsZXRlIHByb3RvLmluY2x1ZGVzO1xyXG5cclxuICBcdC8vIG1lcmdlIG9wdGlvbnNcclxuICBcdGlmIChwcm90by5vcHRpb25zKSB7XHJcbiAgXHRcdHByb3RvLm9wdGlvbnMgPSBwYXJlbnRQcm90by5vcHRpb25zID8gY3JlYXRlJDIocGFyZW50UHJvdG8ub3B0aW9ucykgOiB7fTtcclxuICBcdFx0ZXh0ZW5kKHByb3RvLm9wdGlvbnMsIHByb3BzLm9wdGlvbnMpO1xyXG4gIFx0fVxyXG5cclxuICBcdHByb3RvLl9pbml0SG9va3MgPSBbXTtcclxuXHJcbiAgXHQvLyBhZGQgbWV0aG9kIGZvciBjYWxsaW5nIGFsbCBob29rc1xyXG4gIFx0cHJvdG8uY2FsbEluaXRIb29rcyA9IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9pbml0SG9va3NDYWxsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAocGFyZW50UHJvdG8uY2FsbEluaXRIb29rcykge1xyXG4gIFx0XHRcdHBhcmVudFByb3RvLmNhbGxJbml0SG9va3MuY2FsbCh0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5faW5pdEhvb2tzQ2FsbGVkID0gdHJ1ZTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBwcm90by5faW5pdEhvb2tzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0cHJvdG8uX2luaXRIb29rc1tpXS5jYWxsKHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG5cclxuICBcdHJldHVybiBOZXdDbGFzcztcclxuICB9O1xyXG5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGluY2x1ZGUocHJvcGVydGllczogT2JqZWN0KTogdGhpc1xyXG4gIC8vIFtJbmNsdWRlcyBhIG1peGluXSgjY2xhc3MtaW5jbHVkZXMpIGludG8gdGhlIGN1cnJlbnQgY2xhc3MuXHJcbiAgQ2xhc3MuaW5jbHVkZSA9IGZ1bmN0aW9uIChwcm9wcykge1xyXG4gIFx0dmFyIHBhcmVudE9wdGlvbnMgPSB0aGlzLnByb3RvdHlwZS5vcHRpb25zO1xyXG4gIFx0ZXh0ZW5kKHRoaXMucHJvdG90eXBlLCBwcm9wcyk7XHJcbiAgXHRpZiAocHJvcHMub3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLnByb3RvdHlwZS5vcHRpb25zID0gcGFyZW50T3B0aW9ucztcclxuICBcdFx0dGhpcy5tZXJnZU9wdGlvbnMocHJvcHMub3B0aW9ucyk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9O1xyXG5cclxuICAvLyBAZnVuY3Rpb24gbWVyZ2VPcHRpb25zKG9wdGlvbnM6IE9iamVjdCk6IHRoaXNcclxuICAvLyBbTWVyZ2VzIGBvcHRpb25zYF0oI2NsYXNzLW9wdGlvbnMpIGludG8gdGhlIGRlZmF1bHRzIG9mIHRoZSBjbGFzcy5cclxuICBDbGFzcy5tZXJnZU9wdGlvbnMgPSBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0ZXh0ZW5kKHRoaXMucHJvdG90eXBlLm9wdGlvbnMsIG9wdGlvbnMpO1xyXG4gIFx0cmV0dXJuIHRoaXM7XHJcbiAgfTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGFkZEluaXRIb29rKGZuOiBGdW5jdGlvbik6IHRoaXNcclxuICAvLyBBZGRzIGEgW2NvbnN0cnVjdG9yIGhvb2tdKCNjbGFzcy1jb25zdHJ1Y3Rvci1ob29rcykgdG8gdGhlIGNsYXNzLlxyXG4gIENsYXNzLmFkZEluaXRIb29rID0gZnVuY3Rpb24gKGZuKSB7IC8vIChGdW5jdGlvbikgfHwgKFN0cmluZywgYXJncy4uLilcclxuICBcdHZhciBhcmdzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCAxKTtcclxuXHJcbiAgXHR2YXIgaW5pdCA9IHR5cGVvZiBmbiA9PT0gJ2Z1bmN0aW9uJyA/IGZuIDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzW2ZuXS5hcHBseSh0aGlzLCBhcmdzKTtcclxuICBcdH07XHJcblxyXG4gIFx0dGhpcy5wcm90b3R5cGUuX2luaXRIb29rcyA9IHRoaXMucHJvdG90eXBlLl9pbml0SG9va3MgfHwgW107XHJcbiAgXHR0aGlzLnByb3RvdHlwZS5faW5pdEhvb2tzLnB1c2goaW5pdCk7XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9O1xyXG5cclxuICBmdW5jdGlvbiBjaGVja0RlcHJlY2F0ZWRNaXhpbkV2ZW50cyhpbmNsdWRlcykge1xyXG4gIFx0LyogZ2xvYmFsIEw6IHRydWUgKi9cclxuICBcdGlmICh0eXBlb2YgTCA9PT0gJ3VuZGVmaW5lZCcgfHwgIUwgfHwgIUwuTWl4aW4pIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0aW5jbHVkZXMgPSBpc0FycmF5KGluY2x1ZGVzKSA/IGluY2x1ZGVzIDogW2luY2x1ZGVzXTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMDsgaSA8IGluY2x1ZGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdGlmIChpbmNsdWRlc1tpXSA9PT0gTC5NaXhpbi5FdmVudHMpIHtcclxuICBcdFx0XHRjb25zb2xlLndhcm4oJ0RlcHJlY2F0ZWQgaW5jbHVkZSBvZiBMLk1peGluLkV2ZW50czogJyArXHJcbiAgXHRcdFx0XHQndGhpcyBwcm9wZXJ0eSB3aWxsIGJlIHJlbW92ZWQgaW4gZnV0dXJlIHJlbGVhc2VzLCAnICtcclxuICBcdFx0XHRcdCdwbGVhc2UgaW5oZXJpdCBmcm9tIEwuRXZlbnRlZCBpbnN0ZWFkLicsIG5ldyBFcnJvcigpLnN0YWNrKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIH1cblxuICAvKlxyXG4gICAqIEBjbGFzcyBFdmVudGVkXHJcbiAgICogQGFrYSBMLkV2ZW50ZWRcclxuICAgKiBAaW5oZXJpdHMgQ2xhc3NcclxuICAgKlxyXG4gICAqIEEgc2V0IG9mIG1ldGhvZHMgc2hhcmVkIGJldHdlZW4gZXZlbnQtcG93ZXJlZCBjbGFzc2VzIChsaWtlIGBNYXBgIGFuZCBgTWFya2VyYCkuIEdlbmVyYWxseSwgZXZlbnRzIGFsbG93IHlvdSB0byBleGVjdXRlIHNvbWUgZnVuY3Rpb24gd2hlbiBzb21ldGhpbmcgaGFwcGVucyB3aXRoIGFuIG9iamVjdCAoZS5nLiB0aGUgdXNlciBjbGlja3Mgb24gdGhlIG1hcCwgY2F1c2luZyB0aGUgbWFwIHRvIGZpcmUgYCdjbGljaydgIGV2ZW50KS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIG1hcC5vbignY2xpY2snLCBmdW5jdGlvbihlKSB7XHJcbiAgICogXHRhbGVydChlLmxhdGxuZyk7XHJcbiAgICogfSApO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICogTGVhZmxldCBkZWFscyB3aXRoIGV2ZW50IGxpc3RlbmVycyBieSByZWZlcmVuY2UsIHNvIGlmIHlvdSB3YW50IHRvIGFkZCBhIGxpc3RlbmVyIGFuZCB0aGVuIHJlbW92ZSBpdCwgZGVmaW5lIGl0IGFzIGEgZnVuY3Rpb246XHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIGZ1bmN0aW9uIG9uQ2xpY2soZSkgeyAuLi4gfVxyXG4gICAqXHJcbiAgICogbWFwLm9uKCdjbGljaycsIG9uQ2xpY2spO1xyXG4gICAqIG1hcC5vZmYoJ2NsaWNrJywgb25DbGljayk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBFdmVudHMgPSB7XHJcbiAgXHQvKiBAbWV0aG9kIG9uKHR5cGU6IFN0cmluZywgZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIFx0ICogQWRkcyBhIGxpc3RlbmVyIGZ1bmN0aW9uIChgZm5gKSB0byBhIHBhcnRpY3VsYXIgZXZlbnQgdHlwZSBvZiB0aGUgb2JqZWN0LiBZb3UgY2FuIG9wdGlvbmFsbHkgc3BlY2lmeSB0aGUgY29udGV4dCBvZiB0aGUgbGlzdGVuZXIgKG9iamVjdCB0aGUgdGhpcyBrZXl3b3JkIHdpbGwgcG9pbnQgdG8pLiBZb3UgY2FuIGFsc28gcGFzcyBzZXZlcmFsIHNwYWNlLXNlcGFyYXRlZCB0eXBlcyAoZS5nLiBgJ2NsaWNrIGRibGNsaWNrJ2ApLlxyXG4gIFx0ICpcclxuICBcdCAqIEBhbHRlcm5hdGl2ZVxyXG4gIFx0ICogQG1ldGhvZCBvbihldmVudE1hcDogT2JqZWN0KTogdGhpc1xyXG4gIFx0ICogQWRkcyBhIHNldCBvZiB0eXBlL2xpc3RlbmVyIHBhaXJzLCBlLmcuIGB7Y2xpY2s6IG9uQ2xpY2ssIG1vdXNlbW92ZTogb25Nb3VzZU1vdmV9YFxyXG4gIFx0ICovXHJcbiAgXHRvbjogZnVuY3Rpb24gKHR5cGVzLCBmbiwgY29udGV4dCkge1xyXG5cclxuICBcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgbWFwIG9mIHR5cGVzL2hhbmRsZXJzXHJcbiAgXHRcdGlmICh0eXBlb2YgdHlwZXMgPT09ICdvYmplY3QnKSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgdHlwZSBpbiB0eXBlcykge1xyXG4gIFx0XHRcdFx0Ly8gd2UgZG9uJ3QgcHJvY2VzcyBzcGFjZS1zZXBhcmF0ZWQgZXZlbnRzIGhlcmUgZm9yIHBlcmZvcm1hbmNlO1xyXG4gIFx0XHRcdFx0Ly8gaXQncyBhIGhvdCBwYXRoIHNpbmNlIExheWVyIHVzZXMgdGhlIG9uKG9iaikgc3ludGF4XHJcbiAgXHRcdFx0XHR0aGlzLl9vbih0eXBlLCB0eXBlc1t0eXBlXSwgZm4pO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgc3RyaW5nIG9mIHNwYWNlLXNlcGFyYXRlZCB3b3Jkc1xyXG4gIFx0XHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdFx0dGhpcy5fb24odHlwZXNbaV0sIGZuLCBjb250ZXh0KTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvKiBAbWV0aG9kIG9mZih0eXBlOiBTdHJpbmcsIGZuPzogRnVuY3Rpb24sIGNvbnRleHQ/OiBPYmplY3QpOiB0aGlzXHJcbiAgXHQgKiBSZW1vdmVzIGEgcHJldmlvdXNseSBhZGRlZCBsaXN0ZW5lciBmdW5jdGlvbi4gSWYgbm8gZnVuY3Rpb24gaXMgc3BlY2lmaWVkLCBpdCB3aWxsIHJlbW92ZSBhbGwgdGhlIGxpc3RlbmVycyBvZiB0aGF0IHBhcnRpY3VsYXIgZXZlbnQgZnJvbSB0aGUgb2JqZWN0LiBOb3RlIHRoYXQgaWYgeW91IHBhc3NlZCBhIGN1c3RvbSBjb250ZXh0IHRvIGBvbmAsIHlvdSBtdXN0IHBhc3MgdGhlIHNhbWUgY29udGV4dCB0byBgb2ZmYCBpbiBvcmRlciB0byByZW1vdmUgdGhlIGxpc3RlbmVyLlxyXG4gIFx0ICpcclxuICBcdCAqIEBhbHRlcm5hdGl2ZVxyXG4gIFx0ICogQG1ldGhvZCBvZmYoZXZlbnRNYXA6IE9iamVjdCk6IHRoaXNcclxuICBcdCAqIFJlbW92ZXMgYSBzZXQgb2YgdHlwZS9saXN0ZW5lciBwYWlycy5cclxuICBcdCAqXHJcbiAgXHQgKiBAYWx0ZXJuYXRpdmVcclxuICBcdCAqIEBtZXRob2Qgb2ZmOiB0aGlzXHJcbiAgXHQgKiBSZW1vdmVzIGFsbCBsaXN0ZW5lcnMgdG8gYWxsIGV2ZW50cyBvbiB0aGUgb2JqZWN0LiBUaGlzIGluY2x1ZGVzIGltcGxpY2l0bHkgYXR0YWNoZWQgZXZlbnRzLlxyXG4gIFx0ICovXHJcbiAgXHRvZmY6IGZ1bmN0aW9uICh0eXBlcywgZm4sIGNvbnRleHQpIHtcclxuXHJcbiAgXHRcdGlmICghYXJndW1lbnRzLmxlbmd0aCkge1xyXG4gIFx0XHRcdC8vIGNsZWFyIGFsbCBsaXN0ZW5lcnMgaWYgY2FsbGVkIHdpdGhvdXQgYXJndW1lbnRzXHJcbiAgXHRcdFx0ZGVsZXRlIHRoaXMuX2V2ZW50cztcclxuXHJcbiAgXHRcdH0gZWxzZSBpZiAodHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRcdGZvciAodmFyIHR5cGUgaW4gdHlwZXMpIHtcclxuICBcdFx0XHRcdHRoaXMuX29mZih0eXBlLCB0eXBlc1t0eXBlXSwgZm4pO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0dHlwZXMgPSBzcGxpdFdvcmRzKHR5cGVzKTtcclxuXHJcbiAgXHRcdFx0dmFyIHJlbW92ZUFsbCA9IGFyZ3VtZW50cy5sZW5ndGggPT09IDE7XHJcbiAgXHRcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRpZiAocmVtb3ZlQWxsKSB7XHJcbiAgXHRcdFx0XHRcdHRoaXMuX29mZih0eXBlc1tpXSk7XHJcbiAgXHRcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0XHR0aGlzLl9vZmYodHlwZXNbaV0sIGZuLCBjb250ZXh0KTtcclxuICBcdFx0XHRcdH1cclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBhdHRhY2ggbGlzdGVuZXIgKHdpdGhvdXQgc3ludGFjdGljIHN1Z2FyIG5vdylcclxuICBcdF9vbjogZnVuY3Rpb24gKHR5cGUsIGZuLCBjb250ZXh0LCBfb25jZSkge1xyXG4gIFx0XHRpZiAodHlwZW9mIGZuICE9PSAnZnVuY3Rpb24nKSB7XHJcbiAgXHRcdFx0Y29uc29sZS53YXJuKCd3cm9uZyBsaXN0ZW5lciB0eXBlOiAnICsgdHlwZW9mIGZuKTtcclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGNoZWNrIGlmIGZuIGFscmVhZHkgdGhlcmVcclxuICBcdFx0aWYgKHRoaXMuX2xpc3RlbnModHlwZSwgZm4sIGNvbnRleHQpICE9PSBmYWxzZSkge1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKGNvbnRleHQgPT09IHRoaXMpIHtcclxuICBcdFx0XHQvLyBMZXNzIG1lbW9yeSBmb290cHJpbnQuXHJcbiAgXHRcdFx0Y29udGV4dCA9IHVuZGVmaW5lZDtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG5ld0xpc3RlbmVyID0ge2ZuOiBmbiwgY3R4OiBjb250ZXh0fTtcclxuICBcdFx0aWYgKF9vbmNlKSB7XHJcbiAgXHRcdFx0bmV3TGlzdGVuZXIub25jZSA9IHRydWU7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2V2ZW50cyA9IHRoaXMuX2V2ZW50cyB8fCB7fTtcclxuICBcdFx0dGhpcy5fZXZlbnRzW3R5cGVdID0gdGhpcy5fZXZlbnRzW3R5cGVdIHx8IFtdO1xyXG4gIFx0XHR0aGlzLl9ldmVudHNbdHlwZV0ucHVzaChuZXdMaXN0ZW5lcik7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vZmY6IGZ1bmN0aW9uICh0eXBlLCBmbiwgY29udGV4dCkge1xyXG4gIFx0XHR2YXIgbGlzdGVuZXJzLFxyXG4gIFx0XHQgICAgaSxcclxuICBcdFx0ICAgIGxlbjtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5fZXZlbnRzKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRsaXN0ZW5lcnMgPSB0aGlzLl9ldmVudHNbdHlwZV07XHJcbiAgXHRcdGlmICghbGlzdGVuZXJzKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkgeyAvLyByZW1vdmUgYWxsXHJcbiAgXHRcdFx0aWYgKHRoaXMuX2ZpcmluZ0NvdW50KSB7XHJcbiAgXHRcdFx0XHQvLyBTZXQgYWxsIHJlbW92ZWQgbGlzdGVuZXJzIHRvIG5vb3BcclxuICBcdFx0XHRcdC8vIHNvIHRoZXkgYXJlIG5vdCBjYWxsZWQgaWYgcmVtb3ZlIGhhcHBlbnMgaW4gZmlyZVxyXG4gIFx0XHRcdFx0Zm9yIChpID0gMCwgbGVuID0gbGlzdGVuZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRcdGxpc3RlbmVyc1tpXS5mbiA9IGZhbHNlRm47XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdC8vIGNsZWFyIGFsbCBsaXN0ZW5lcnMgZm9yIGEgdHlwZSBpZiBmdW5jdGlvbiBpc24ndCBzcGVjaWZpZWRcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fZXZlbnRzW3R5cGVdO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdGNvbnNvbGUud2Fybignd3JvbmcgbGlzdGVuZXIgdHlwZTogJyArIHR5cGVvZiBmbik7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBmaW5kIGZuIGFuZCByZW1vdmUgaXRcclxuICBcdFx0dmFyIGluZGV4ID0gdGhpcy5fbGlzdGVucyh0eXBlLCBmbiwgY29udGV4dCk7XHJcbiAgXHRcdGlmIChpbmRleCAhPT0gZmFsc2UpIHtcclxuICBcdFx0XHR2YXIgbGlzdGVuZXIgPSBsaXN0ZW5lcnNbaW5kZXhdO1xyXG4gIFx0XHRcdGlmICh0aGlzLl9maXJpbmdDb3VudCkge1xyXG4gIFx0XHRcdFx0Ly8gc2V0IHRoZSByZW1vdmVkIGxpc3RlbmVyIHRvIG5vb3Agc28gdGhhdCdzIG5vdCBjYWxsZWQgaWYgcmVtb3ZlIGhhcHBlbnMgaW4gZmlyZVxyXG4gIFx0XHRcdFx0bGlzdGVuZXIuZm4gPSBmYWxzZUZuO1xyXG5cclxuICBcdFx0XHRcdC8qIGNvcHkgYXJyYXkgaW4gY2FzZSBldmVudHMgYXJlIGJlaW5nIGZpcmVkICovXHJcbiAgXHRcdFx0XHR0aGlzLl9ldmVudHNbdHlwZV0gPSBsaXN0ZW5lcnMgPSBsaXN0ZW5lcnMuc2xpY2UoKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bGlzdGVuZXJzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXJlKHR5cGU6IFN0cmluZywgZGF0YT86IE9iamVjdCwgcHJvcGFnYXRlPzogQm9vbGVhbik6IHRoaXNcclxuICBcdC8vIEZpcmVzIGFuIGV2ZW50IG9mIHRoZSBzcGVjaWZpZWQgdHlwZS4gWW91IGNhbiBvcHRpb25hbGx5IHByb3ZpZGUgYSBkYXRhXHJcbiAgXHQvLyBvYmplY3Qg4oCUIHRoZSBmaXJzdCBhcmd1bWVudCBvZiB0aGUgbGlzdGVuZXIgZnVuY3Rpb24gd2lsbCBjb250YWluIGl0c1xyXG4gIFx0Ly8gcHJvcGVydGllcy4gVGhlIGV2ZW50IGNhbiBvcHRpb25hbGx5IGJlIHByb3BhZ2F0ZWQgdG8gZXZlbnQgcGFyZW50cy5cclxuICBcdGZpcmU6IGZ1bmN0aW9uICh0eXBlLCBkYXRhLCBwcm9wYWdhdGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLmxpc3RlbnModHlwZSwgcHJvcGFnYXRlKSkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0dmFyIGV2ZW50ID0gZXh0ZW5kKHt9LCBkYXRhLCB7XHJcbiAgXHRcdFx0dHlwZTogdHlwZSxcclxuICBcdFx0XHR0YXJnZXQ6IHRoaXMsXHJcbiAgXHRcdFx0c291cmNlVGFyZ2V0OiBkYXRhICYmIGRhdGEuc291cmNlVGFyZ2V0IHx8IHRoaXNcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fZXZlbnRzKSB7XHJcbiAgXHRcdFx0dmFyIGxpc3RlbmVycyA9IHRoaXMuX2V2ZW50c1t0eXBlXTtcclxuICBcdFx0XHRpZiAobGlzdGVuZXJzKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9maXJpbmdDb3VudCA9ICh0aGlzLl9maXJpbmdDb3VudCArIDEpIHx8IDE7XHJcbiAgXHRcdFx0XHRmb3IgKHZhciBpID0gMCwgbGVuID0gbGlzdGVuZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRcdHZhciBsID0gbGlzdGVuZXJzW2ldO1xyXG4gIFx0XHRcdFx0XHQvLyBvZmYgb3ZlcndyaXRlcyBsLmZuLCBzbyB3ZSBuZWVkIHRvIGNvcHkgZm4gdG8gYSB2YXJcclxuICBcdFx0XHRcdFx0dmFyIGZuID0gbC5mbjtcclxuICBcdFx0XHRcdFx0aWYgKGwub25jZSkge1xyXG4gIFx0XHRcdFx0XHRcdHRoaXMub2ZmKHR5cGUsIGZuLCBsLmN0eCk7XHJcbiAgXHRcdFx0XHRcdH1cclxuICBcdFx0XHRcdFx0Zm4uY2FsbChsLmN0eCB8fCB0aGlzLCBldmVudCk7XHJcbiAgXHRcdFx0XHR9XHJcblxyXG4gIFx0XHRcdFx0dGhpcy5fZmlyaW5nQ291bnQtLTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChwcm9wYWdhdGUpIHtcclxuICBcdFx0XHQvLyBwcm9wYWdhdGUgdGhlIGV2ZW50IHRvIHBhcmVudHMgKHNldCB3aXRoIGFkZEV2ZW50UGFyZW50KVxyXG4gIFx0XHRcdHRoaXMuX3Byb3BhZ2F0ZUV2ZW50KGV2ZW50KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbGlzdGVucyh0eXBlOiBTdHJpbmcsIHByb3BhZ2F0ZT86IEJvb2xlYW4pOiBCb29sZWFuXHJcbiAgXHQvLyBAbWV0aG9kIGxpc3RlbnModHlwZTogU3RyaW5nLCBmbjogRnVuY3Rpb24sIGNvbnRleHQ/OiBPYmplY3QsIHByb3BhZ2F0ZT86IEJvb2xlYW4pOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiBhIHBhcnRpY3VsYXIgZXZlbnQgdHlwZSBoYXMgYW55IGxpc3RlbmVycyBhdHRhY2hlZCB0byBpdC5cclxuICBcdC8vIFRoZSB2ZXJpZmljYXRpb24gY2FuIG9wdGlvbmFsbHkgYmUgcHJvcGFnYXRlZCwgaXQgd2lsbCByZXR1cm4gYHRydWVgIGlmIHBhcmVudHMgaGF2ZSB0aGUgbGlzdGVuZXIgYXR0YWNoZWQgdG8gaXQuXHJcbiAgXHRsaXN0ZW5zOiBmdW5jdGlvbiAodHlwZSwgZm4sIGNvbnRleHQsIHByb3BhZ2F0ZSkge1xyXG4gIFx0XHRpZiAodHlwZW9mIHR5cGUgIT09ICdzdHJpbmcnKSB7XHJcbiAgXHRcdFx0Y29uc29sZS53YXJuKCdcInN0cmluZ1wiIHR5cGUgYXJndW1lbnQgZXhwZWN0ZWQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gd2UgZG9uJ3Qgb3ZlcndyaXRlIHRoZSBpbnB1dCBgZm5gIHZhbHVlLCBiZWNhdXNlIHdlIG5lZWQgdG8gdXNlIGl0IGZvciBwcm9wYWdhdGlvblxyXG4gIFx0XHR2YXIgX2ZuID0gZm47XHJcbiAgXHRcdGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcclxuICBcdFx0XHRwcm9wYWdhdGUgPSAhIWZuO1xyXG4gIFx0XHRcdF9mbiA9IHVuZGVmaW5lZDtcclxuICBcdFx0XHRjb250ZXh0ID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbGlzdGVuZXJzID0gdGhpcy5fZXZlbnRzICYmIHRoaXMuX2V2ZW50c1t0eXBlXTtcclxuICBcdFx0aWYgKGxpc3RlbmVycyAmJiBsaXN0ZW5lcnMubGVuZ3RoKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX2xpc3RlbnModHlwZSwgX2ZuLCBjb250ZXh0KSAhPT0gZmFsc2UpIHtcclxuICBcdFx0XHRcdHJldHVybiB0cnVlO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHByb3BhZ2F0ZSkge1xyXG4gIFx0XHRcdC8vIGFsc28gY2hlY2sgcGFyZW50cyBmb3IgbGlzdGVuZXJzIGlmIGV2ZW50IHByb3BhZ2F0ZXNcclxuICBcdFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9ldmVudFBhcmVudHMpIHtcclxuICBcdFx0XHRcdGlmICh0aGlzLl9ldmVudFBhcmVudHNbaWRdLmxpc3RlbnModHlwZSwgZm4sIGNvbnRleHQsIHByb3BhZ2F0ZSkpIHsgcmV0dXJuIHRydWU7IH1cclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIGZhbHNlO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyByZXR1cm5zIHRoZSBpbmRleCAobnVtYmVyKSBvciBmYWxzZVxyXG4gIFx0X2xpc3RlbnM6IGZ1bmN0aW9uICh0eXBlLCBmbiwgY29udGV4dCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2V2ZW50cykge1xyXG4gIFx0XHRcdHJldHVybiBmYWxzZTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGxpc3RlbmVycyA9IHRoaXMuX2V2ZW50c1t0eXBlXSB8fCBbXTtcclxuICBcdFx0aWYgKCFmbikge1xyXG4gIFx0XHRcdHJldHVybiAhIWxpc3RlbmVycy5sZW5ndGg7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChjb250ZXh0ID09PSB0aGlzKSB7XHJcbiAgXHRcdFx0Ly8gTGVzcyBtZW1vcnkgZm9vdHByaW50LlxyXG4gIFx0XHRcdGNvbnRleHQgPSB1bmRlZmluZWQ7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsaXN0ZW5lcnMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICBcdFx0XHRpZiAobGlzdGVuZXJzW2ldLmZuID09PSBmbiAmJiBsaXN0ZW5lcnNbaV0uY3R4ID09PSBjb250ZXh0KSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gaTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBvbmNlKOKApik6IHRoaXNcclxuICBcdC8vIEJlaGF2ZXMgYXMgW2BvbijigKYpYF0oI2V2ZW50ZWQtb24pLCBleGNlcHQgdGhlIGxpc3RlbmVyIHdpbGwgb25seSBnZXQgZmlyZWQgb25jZSBhbmQgdGhlbiByZW1vdmVkLlxyXG4gIFx0b25jZTogZnVuY3Rpb24gKHR5cGVzLCBmbiwgY29udGV4dCkge1xyXG5cclxuICBcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgbWFwIG9mIHR5cGVzL2hhbmRsZXJzXHJcbiAgXHRcdGlmICh0eXBlb2YgdHlwZXMgPT09ICdvYmplY3QnKSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgdHlwZSBpbiB0eXBlcykge1xyXG4gIFx0XHRcdFx0Ly8gd2UgZG9uJ3QgcHJvY2VzcyBzcGFjZS1zZXBhcmF0ZWQgZXZlbnRzIGhlcmUgZm9yIHBlcmZvcm1hbmNlO1xyXG4gIFx0XHRcdFx0Ly8gaXQncyBhIGhvdCBwYXRoIHNpbmNlIExheWVyIHVzZXMgdGhlIG9uKG9iaikgc3ludGF4XHJcbiAgXHRcdFx0XHR0aGlzLl9vbih0eXBlLCB0eXBlc1t0eXBlXSwgZm4sIHRydWUpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Ly8gdHlwZXMgY2FuIGJlIGEgc3RyaW5nIG9mIHNwYWNlLXNlcGFyYXRlZCB3b3Jkc1xyXG4gIFx0XHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdFx0dGhpcy5fb24odHlwZXNbaV0sIGZuLCBjb250ZXh0LCB0cnVlKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGFkZEV2ZW50UGFyZW50KG9iajogRXZlbnRlZCk6IHRoaXNcclxuICBcdC8vIEFkZHMgYW4gZXZlbnQgcGFyZW50IC0gYW4gYEV2ZW50ZWRgIHRoYXQgd2lsbCByZWNlaXZlIHByb3BhZ2F0ZWQgZXZlbnRzXHJcbiAgXHRhZGRFdmVudFBhcmVudDogZnVuY3Rpb24gKG9iaikge1xyXG4gIFx0XHR0aGlzLl9ldmVudFBhcmVudHMgPSB0aGlzLl9ldmVudFBhcmVudHMgfHwge307XHJcbiAgXHRcdHRoaXMuX2V2ZW50UGFyZW50c1tzdGFtcChvYmopXSA9IG9iajtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlRXZlbnRQYXJlbnQob2JqOiBFdmVudGVkKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyBhbiBldmVudCBwYXJlbnQsIHNvIGl0IHdpbGwgc3RvcCByZWNlaXZpbmcgcHJvcGFnYXRlZCBldmVudHNcclxuICBcdHJlbW92ZUV2ZW50UGFyZW50OiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9ldmVudFBhcmVudHMpIHtcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fZXZlbnRQYXJlbnRzW3N0YW1wKG9iaildO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcHJvcGFnYXRlRXZlbnQ6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGZvciAodmFyIGlkIGluIHRoaXMuX2V2ZW50UGFyZW50cykge1xyXG4gIFx0XHRcdHRoaXMuX2V2ZW50UGFyZW50c1tpZF0uZmlyZShlLnR5cGUsIGV4dGVuZCh7XHJcbiAgXHRcdFx0XHRsYXllcjogZS50YXJnZXQsXHJcbiAgXHRcdFx0XHRwcm9wYWdhdGVkRnJvbTogZS50YXJnZXRcclxuICBcdFx0XHR9LCBlKSwgdHJ1ZSk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9O1xyXG5cclxuICAvLyBhbGlhc2VzOyB3ZSBzaG91bGQgZGl0Y2ggdGhvc2UgZXZlbnR1YWxseVxyXG5cclxuICAvLyBAbWV0aG9kIGFkZEV2ZW50TGlzdGVuZXIo4oCmKTogdGhpc1xyXG4gIC8vIEFsaWFzIHRvIFtgb24o4oCmKWBdKCNldmVudGVkLW9uKVxyXG4gIEV2ZW50cy5hZGRFdmVudExpc3RlbmVyID0gRXZlbnRzLm9uO1xyXG5cclxuICAvLyBAbWV0aG9kIHJlbW92ZUV2ZW50TGlzdGVuZXIo4oCmKTogdGhpc1xyXG4gIC8vIEFsaWFzIHRvIFtgb2ZmKOKApilgXSgjZXZlbnRlZC1vZmYpXHJcblxyXG4gIC8vIEBtZXRob2QgY2xlYXJBbGxFdmVudExpc3RlbmVycyjigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BvZmYoKWBdKCNldmVudGVkLW9mZilcclxuICBFdmVudHMucmVtb3ZlRXZlbnRMaXN0ZW5lciA9IEV2ZW50cy5jbGVhckFsbEV2ZW50TGlzdGVuZXJzID0gRXZlbnRzLm9mZjtcclxuXHJcbiAgLy8gQG1ldGhvZCBhZGRPbmVUaW1lRXZlbnRMaXN0ZW5lcijigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BvbmNlKOKApilgXSgjZXZlbnRlZC1vbmNlKVxyXG4gIEV2ZW50cy5hZGRPbmVUaW1lRXZlbnRMaXN0ZW5lciA9IEV2ZW50cy5vbmNlO1xyXG5cclxuICAvLyBAbWV0aG9kIGZpcmVFdmVudCjigKYpOiB0aGlzXHJcbiAgLy8gQWxpYXMgdG8gW2BmaXJlKOKApilgXSgjZXZlbnRlZC1maXJlKVxyXG4gIEV2ZW50cy5maXJlRXZlbnQgPSBFdmVudHMuZmlyZTtcclxuXHJcbiAgLy8gQG1ldGhvZCBoYXNFdmVudExpc3RlbmVycyjigKYpOiBCb29sZWFuXHJcbiAgLy8gQWxpYXMgdG8gW2BsaXN0ZW5zKOKApilgXSgjZXZlbnRlZC1saXN0ZW5zKVxyXG4gIEV2ZW50cy5oYXNFdmVudExpc3RlbmVycyA9IEV2ZW50cy5saXN0ZW5zO1xyXG5cclxuICB2YXIgRXZlbnRlZCA9IENsYXNzLmV4dGVuZChFdmVudHMpO1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIFBvaW50XHJcbiAgICogQGFrYSBMLlBvaW50XHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgcG9pbnQgd2l0aCBgeGAgYW5kIGB5YCBjb29yZGluYXRlcyBpbiBwaXhlbHMuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9pbnQgPSBMLnBvaW50KDIwMCwgMzAwKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEFsbCBMZWFmbGV0IG1ldGhvZHMgYW5kIG9wdGlvbnMgdGhhdCBhY2NlcHQgYFBvaW50YCBvYmplY3RzIGFsc28gYWNjZXB0IHRoZW0gaW4gYSBzaW1wbGUgQXJyYXkgZm9ybSAodW5sZXNzIG5vdGVkIG90aGVyd2lzZSksIHNvIHRoZXNlIGxpbmVzIGFyZSBlcXVpdmFsZW50OlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBtYXAucGFuQnkoWzIwMCwgMzAwXSk7XHJcbiAgICogbWFwLnBhbkJ5KEwucG9pbnQoMjAwLCAzMDApKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgUG9pbnRgIGRvZXMgbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXHJcbiAgICogd2hpY2ggbWVhbnMgbmV3IGNsYXNzZXMgY2FuJ3QgaW5oZXJpdCBmcm9tIGl0LCBhbmQgbmV3IG1ldGhvZHNcclxuICAgKiBjYW4ndCBiZSBhZGRlZCB0byBpdCB3aXRoIHRoZSBgaW5jbHVkZWAgZnVuY3Rpb24uXHJcbiAgICovXHJcblxyXG4gIGZ1bmN0aW9uIFBvaW50KHgsIHksIHJvdW5kKSB7XHJcbiAgXHQvLyBAcHJvcGVydHkgeDogTnVtYmVyOyBUaGUgYHhgIGNvb3JkaW5hdGUgb2YgdGhlIHBvaW50XHJcbiAgXHR0aGlzLnggPSAocm91bmQgPyBNYXRoLnJvdW5kKHgpIDogeCk7XHJcbiAgXHQvLyBAcHJvcGVydHkgeTogTnVtYmVyOyBUaGUgYHlgIGNvb3JkaW5hdGUgb2YgdGhlIHBvaW50XHJcbiAgXHR0aGlzLnkgPSAocm91bmQgPyBNYXRoLnJvdW5kKHkpIDogeSk7XHJcbiAgfVxyXG5cclxuICB2YXIgdHJ1bmMgPSBNYXRoLnRydW5jIHx8IGZ1bmN0aW9uICh2KSB7XHJcbiAgXHRyZXR1cm4gdiA+IDAgPyBNYXRoLmZsb29yKHYpIDogTWF0aC5jZWlsKHYpO1xyXG4gIH07XHJcblxyXG4gIFBvaW50LnByb3RvdHlwZSA9IHtcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb25lKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludC5cclxuICBcdGNsb25lOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQodGhpcy54LCB0aGlzLnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGFkZChvdGhlclBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2YgYWRkaXRpb24gb2YgdGhlIGN1cnJlbnQgYW5kIHRoZSBnaXZlbiBwb2ludHMuXHJcbiAgXHRhZGQ6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHQvLyBub24tZGVzdHJ1Y3RpdmUsIHJldHVybnMgYSBuZXcgcG9pbnRcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fYWRkKHRvUG9pbnQocG9pbnQpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2FkZDogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdC8vIGRlc3RydWN0aXZlLCB1c2VkIGRpcmVjdGx5IGZvciBwZXJmb3JtYW5jZSBpbiBzaXR1YXRpb25zIHdoZXJlIGl0J3Mgc2FmZSB0byBtb2RpZnkgZXhpc3RpbmcgcG9pbnRcclxuICBcdFx0dGhpcy54ICs9IHBvaW50Lng7XHJcbiAgXHRcdHRoaXMueSArPSBwb2ludC55O1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzdWJ0cmFjdChvdGhlclBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2Ygc3VidHJhY3Rpb24gb2YgdGhlIGdpdmVuIHBvaW50IGZyb20gdGhlIGN1cnJlbnQuXHJcbiAgXHRzdWJ0cmFjdDogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmNsb25lKCkuX3N1YnRyYWN0KHRvUG9pbnQocG9pbnQpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3N1YnRyYWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dGhpcy54IC09IHBvaW50Lng7XHJcbiAgXHRcdHRoaXMueSAtPSBwb2ludC55O1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXZpZGVCeShudW06IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSByZXN1bHQgb2YgZGl2aXNpb24gb2YgdGhlIGN1cnJlbnQgcG9pbnQgYnkgdGhlIGdpdmVuIG51bWJlci5cclxuICBcdGRpdmlkZUJ5OiBmdW5jdGlvbiAobnVtKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmNsb25lKCkuX2RpdmlkZUJ5KG51bSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9kaXZpZGVCeTogZnVuY3Rpb24gKG51bSkge1xyXG4gIFx0XHR0aGlzLnggLz0gbnVtO1xyXG4gIFx0XHR0aGlzLnkgLz0gbnVtO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBtdWx0aXBseUJ5KG51bTogTnVtYmVyKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHJlc3VsdCBvZiBtdWx0aXBsaWNhdGlvbiBvZiB0aGUgY3VycmVudCBwb2ludCBieSB0aGUgZ2l2ZW4gbnVtYmVyLlxyXG4gIFx0bXVsdGlwbHlCeTogZnVuY3Rpb24gKG51bSkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9tdWx0aXBseUJ5KG51bSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tdWx0aXBseUJ5OiBmdW5jdGlvbiAobnVtKSB7XHJcbiAgXHRcdHRoaXMueCAqPSBudW07XHJcbiAgXHRcdHRoaXMueSAqPSBudW07XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNjYWxlQnkoc2NhbGU6IFBvaW50KTogUG9pbnRcclxuICBcdC8vIE11bHRpcGx5IGVhY2ggY29vcmRpbmF0ZSBvZiB0aGUgY3VycmVudCBwb2ludCBieSBlYWNoIGNvb3JkaW5hdGUgb2ZcclxuICBcdC8vIGBzY2FsZWAuIEluIGxpbmVhciBhbGdlYnJhIHRlcm1zLCBtdWx0aXBseSB0aGUgcG9pbnQgYnkgdGhlXHJcbiAgXHQvLyBbc2NhbGluZyBtYXRyaXhdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1NjYWxpbmdfJTI4Z2VvbWV0cnklMjkjTWF0cml4X3JlcHJlc2VudGF0aW9uKVxyXG4gIFx0Ly8gZGVmaW5lZCBieSBgc2NhbGVgLlxyXG4gIFx0c2NhbGVCeTogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQodGhpcy54ICogcG9pbnQueCwgdGhpcy55ICogcG9pbnQueSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdW5zY2FsZUJ5KHNjYWxlOiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBJbnZlcnNlIG9mIGBzY2FsZUJ5YC4gRGl2aWRlIGVhY2ggY29vcmRpbmF0ZSBvZiB0aGUgY3VycmVudCBwb2ludCBieVxyXG4gIFx0Ly8gZWFjaCBjb29yZGluYXRlIG9mIGBzY2FsZWAuXHJcbiAgXHR1bnNjYWxlQnk6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KHRoaXMueCAvIHBvaW50LngsIHRoaXMueSAvIHBvaW50LnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHJvdW5kKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIHJvdW5kZWQgY29vcmRpbmF0ZXMuXHJcbiAgXHRyb3VuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9yb3VuZCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcm91bmQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy54ID0gTWF0aC5yb3VuZCh0aGlzLngpO1xyXG4gIFx0XHR0aGlzLnkgPSBNYXRoLnJvdW5kKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGZsb29yKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIGZsb29yZWQgY29vcmRpbmF0ZXMgKHJvdW5kZWQgZG93bikuXHJcbiAgXHRmbG9vcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jbG9uZSgpLl9mbG9vcigpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZmxvb3I6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy54ID0gTWF0aC5mbG9vcih0aGlzLngpO1xyXG4gIFx0XHR0aGlzLnkgPSBNYXRoLmZsb29yKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNlaWwoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgYSBjb3B5IG9mIHRoZSBjdXJyZW50IHBvaW50IHdpdGggY2VpbGVkIGNvb3JkaW5hdGVzIChyb3VuZGVkIHVwKS5cclxuICBcdGNlaWw6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fY2VpbCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2VpbDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLnggPSBNYXRoLmNlaWwodGhpcy54KTtcclxuICBcdFx0dGhpcy55ID0gTWF0aC5jZWlsKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHRydW5jKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgY29weSBvZiB0aGUgY3VycmVudCBwb2ludCB3aXRoIHRydW5jYXRlZCBjb29yZGluYXRlcyAocm91bmRlZCB0b3dhcmRzIHplcm8pLlxyXG4gIFx0dHJ1bmM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY2xvbmUoKS5fdHJ1bmMoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3RydW5jOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMueCA9IHRydW5jKHRoaXMueCk7XHJcbiAgXHRcdHRoaXMueSA9IHRydW5jKHRoaXMueSk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGRpc3RhbmNlVG8ob3RoZXJQb2ludDogUG9pbnQpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGNhcnRlc2lhbiBkaXN0YW5jZSBiZXR3ZWVuIHRoZSBjdXJyZW50IGFuZCB0aGUgZ2l2ZW4gcG9pbnRzLlxyXG4gIFx0ZGlzdGFuY2VUbzogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHR2YXIgeCA9IHBvaW50LnggLSB0aGlzLngsXHJcbiAgXHRcdCAgICB5ID0gcG9pbnQueSAtIHRoaXMueTtcclxuXHJcbiAgXHRcdHJldHVybiBNYXRoLnNxcnQoeCAqIHggKyB5ICogeSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXF1YWxzKG90aGVyUG9pbnQ6IFBvaW50KTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIHBvaW50IGhhcyB0aGUgc2FtZSBjb29yZGluYXRlcy5cclxuICBcdGVxdWFsczogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gcG9pbnQueCA9PT0gdGhpcy54ICYmXHJcbiAgXHRcdCAgICAgICBwb2ludC55ID09PSB0aGlzLnk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJQb2ludDogUG9pbnQpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiBib3RoIGNvb3JkaW5hdGVzIG9mIHRoZSBnaXZlbiBwb2ludCBhcmUgbGVzcyB0aGFuIHRoZSBjb3JyZXNwb25kaW5nIGN1cnJlbnQgcG9pbnQgY29vcmRpbmF0ZXMgKGluIGFic29sdXRlIHZhbHVlcykuXHJcbiAgXHRjb250YWluczogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHBvaW50ID0gdG9Qb2ludChwb2ludCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gTWF0aC5hYnMocG9pbnQueCkgPD0gTWF0aC5hYnModGhpcy54KSAmJlxyXG4gIFx0XHQgICAgICAgTWF0aC5hYnMocG9pbnQueSkgPD0gTWF0aC5hYnModGhpcy55KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b1N0cmluZygpOiBTdHJpbmdcclxuICBcdC8vIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBvaW50IGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMuXHJcbiAgXHR0b1N0cmluZzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gJ1BvaW50KCcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLngpICsgJywgJyArXHJcbiAgXHRcdCAgICAgICAgZm9ybWF0TnVtKHRoaXMueSkgKyAnKSc7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5wb2ludCh4OiBOdW1iZXIsIHk6IE51bWJlciwgcm91bmQ/OiBCb29sZWFuKVxyXG4gIC8vIENyZWF0ZXMgYSBQb2ludCBvYmplY3Qgd2l0aCB0aGUgZ2l2ZW4gYHhgIGFuZCBgeWAgY29vcmRpbmF0ZXMuIElmIG9wdGlvbmFsIGByb3VuZGAgaXMgc2V0IHRvIHRydWUsIHJvdW5kcyB0aGUgYHhgIGFuZCBgeWAgdmFsdWVzLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLnBvaW50KGNvb3JkczogTnVtYmVyW10pXHJcbiAgLy8gRXhwZWN0cyBhbiBhcnJheSBvZiB0aGUgZm9ybSBgW3gsIHldYCBpbnN0ZWFkLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLnBvaW50KGNvb3JkczogT2JqZWN0KVxyXG4gIC8vIEV4cGVjdHMgYSBwbGFpbiBvYmplY3Qgb2YgdGhlIGZvcm0gYHt4OiBOdW1iZXIsIHk6IE51bWJlcn1gIGluc3RlYWQuXHJcbiAgZnVuY3Rpb24gdG9Qb2ludCh4LCB5LCByb3VuZCkge1xyXG4gIFx0aWYgKHggaW5zdGFuY2VvZiBQb2ludCkge1xyXG4gIFx0XHRyZXR1cm4geDtcclxuICBcdH1cclxuICBcdGlmIChpc0FycmF5KHgpKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoeFswXSwgeFsxXSk7XHJcbiAgXHR9XHJcbiAgXHRpZiAoeCA9PT0gdW5kZWZpbmVkIHx8IHggPT09IG51bGwpIHtcclxuICBcdFx0cmV0dXJuIHg7XHJcbiAgXHR9XHJcbiAgXHRpZiAodHlwZW9mIHggPT09ICdvYmplY3QnICYmICd4JyBpbiB4ICYmICd5JyBpbiB4KSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoeC54LCB4LnkpO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBQb2ludCh4LCB5LCByb3VuZCk7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIEJvdW5kc1xyXG4gICAqIEBha2EgTC5Cb3VuZHNcclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYSByZWN0YW5ndWxhciBhcmVhIGluIHBpeGVsIGNvb3JkaW5hdGVzLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIHAxID0gTC5wb2ludCgxMCwgMTApLFxyXG4gICAqIHAyID0gTC5wb2ludCg0MCwgNjApLFxyXG4gICAqIGJvdW5kcyA9IEwuYm91bmRzKHAxLCBwMik7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBBbGwgTGVhZmxldCBtZXRob2RzIHRoYXQgYWNjZXB0IGBCb3VuZHNgIG9iamVjdHMgYWxzbyBhY2NlcHQgdGhlbSBpbiBhIHNpbXBsZSBBcnJheSBmb3JtICh1bmxlc3Mgbm90ZWQgb3RoZXJ3aXNlKSwgc28gdGhlIGJvdW5kcyBleGFtcGxlIGFib3ZlIGNhbiBiZSBwYXNzZWQgbGlrZSB0aGlzOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBvdGhlckJvdW5kcy5pbnRlcnNlY3RzKFtbMTAsIDEwXSwgWzQwLCA2MF1dKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgQm91bmRzYCBkb2VzIG5vdCBpbmhlcml0IGZyb20gTGVhZmxldCdzIGBDbGFzc2Agb2JqZWN0LFxyXG4gICAqIHdoaWNoIG1lYW5zIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSBpdCwgYW5kIG5ldyBtZXRob2RzXHJcbiAgICogY2FuJ3QgYmUgYWRkZWQgdG8gaXQgd2l0aCB0aGUgYGluY2x1ZGVgIGZ1bmN0aW9uLlxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBCb3VuZHMoYSwgYikge1xyXG4gIFx0aWYgKCFhKSB7IHJldHVybjsgfVxyXG5cclxuICBcdHZhciBwb2ludHMgPSBiID8gW2EsIGJdIDogYTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHRoaXMuZXh0ZW5kKHBvaW50c1tpXSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBCb3VuZHMucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCBleHRlbmQocG9pbnQ6IFBvaW50KTogdGhpc1xyXG4gIFx0Ly8gRXh0ZW5kcyB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIHBvaW50LlxyXG5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBleHRlbmQob3RoZXJCb3VuZHM6IEJvdW5kcyk6IHRoaXNcclxuICBcdC8vIEV4dGVuZCB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIGJvdW5kc1xyXG4gIFx0ZXh0ZW5kOiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdHZhciBtaW4yLCBtYXgyO1xyXG4gIFx0XHRpZiAoIW9iaikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKG9iaiBpbnN0YW5jZW9mIFBvaW50IHx8IHR5cGVvZiBvYmpbMF0gPT09ICdudW1iZXInIHx8ICd4JyBpbiBvYmopIHtcclxuICBcdFx0XHRtaW4yID0gbWF4MiA9IHRvUG9pbnQob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0JvdW5kcyhvYmopO1xyXG4gIFx0XHRcdG1pbjIgPSBvYmoubWluO1xyXG4gIFx0XHRcdG1heDIgPSBvYmoubWF4O1xyXG5cclxuICBcdFx0XHRpZiAoIW1pbjIgfHwgIW1heDIpIHsgcmV0dXJuIHRoaXM7IH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQHByb3BlcnR5IG1pbjogUG9pbnRcclxuICBcdFx0Ly8gVGhlIHRvcCBsZWZ0IGNvcm5lciBvZiB0aGUgcmVjdGFuZ2xlLlxyXG4gIFx0XHQvLyBAcHJvcGVydHkgbWF4OiBQb2ludFxyXG4gIFx0XHQvLyBUaGUgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiB0aGUgcmVjdGFuZ2xlLlxyXG4gIFx0XHRpZiAoIXRoaXMubWluICYmICF0aGlzLm1heCkge1xyXG4gIFx0XHRcdHRoaXMubWluID0gbWluMi5jbG9uZSgpO1xyXG4gIFx0XHRcdHRoaXMubWF4ID0gbWF4Mi5jbG9uZSgpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMubWluLnggPSBNYXRoLm1pbihtaW4yLngsIHRoaXMubWluLngpO1xyXG4gIFx0XHRcdHRoaXMubWF4LnggPSBNYXRoLm1heChtYXgyLngsIHRoaXMubWF4LngpO1xyXG4gIFx0XHRcdHRoaXMubWluLnkgPSBNYXRoLm1pbihtaW4yLnksIHRoaXMubWluLnkpO1xyXG4gIFx0XHRcdHRoaXMubWF4LnkgPSBNYXRoLm1heChtYXgyLnksIHRoaXMubWF4LnkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldENlbnRlcihyb3VuZD86IEJvb2xlYW4pOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgY2VudGVyIHBvaW50IG9mIHRoZSBib3VuZHMuXHJcbiAgXHRnZXRDZW50ZXI6IGZ1bmN0aW9uIChyb3VuZCkge1xyXG4gIFx0XHRyZXR1cm4gdG9Qb2ludChcclxuICBcdFx0ICAgICAgICAodGhpcy5taW4ueCArIHRoaXMubWF4LngpIC8gMixcclxuICBcdFx0ICAgICAgICAodGhpcy5taW4ueSArIHRoaXMubWF4LnkpIC8gMiwgcm91bmQpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdHRvbUxlZnQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdHRvbS1sZWZ0IHBvaW50IG9mIHRoZSBib3VuZHMuXHJcbiAgXHRnZXRCb3R0b21MZWZ0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHRoaXMubWluLngsIHRoaXMubWF4LnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFRvcFJpZ2h0KCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB0b3AtcmlnaHQgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldFRvcFJpZ2h0OiBmdW5jdGlvbiAoKSB7IC8vIC0+IFBvaW50XHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHRoaXMubWF4LngsIHRoaXMubWluLnkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFRvcExlZnQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHRvcC1sZWZ0IHBvaW50IG9mIHRoZSBib3VuZHMgKGkuZS4gW2B0aGlzLm1pbmBdKCNib3VuZHMtbWluKSkuXHJcbiAgXHRnZXRUb3BMZWZ0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm1pbjsgLy8gbGVmdCwgdG9wXHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Qm90dG9tUmlnaHQoKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdHRvbS1yaWdodCBwb2ludCBvZiB0aGUgYm91bmRzIChpLmUuIFtgdGhpcy5tYXhgXSgjYm91bmRzLW1heCkpLlxyXG4gIFx0Z2V0Qm90dG9tUmlnaHQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMubWF4OyAvLyByaWdodCwgYm90dG9tXHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0U2l6ZSgpOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgc2l6ZSBvZiB0aGUgZ2l2ZW4gYm91bmRzXHJcbiAgXHRnZXRTaXplOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm1heC5zdWJ0cmFjdCh0aGlzLm1pbik7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJCb3VuZHM6IEJvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgY29udGFpbnMgdGhlIGdpdmVuIG9uZS5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBjb250YWlucyhwb2ludDogUG9pbnQpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIGNvbnRhaW5zIHRoZSBnaXZlbiBwb2ludC5cclxuICBcdGNvbnRhaW5zOiBmdW5jdGlvbiAob2JqKSB7XHJcbiAgXHRcdHZhciBtaW4sIG1heDtcclxuXHJcbiAgXHRcdGlmICh0eXBlb2Ygb2JqWzBdID09PSAnbnVtYmVyJyB8fCBvYmogaW5zdGFuY2VvZiBQb2ludCkge1xyXG4gIFx0XHRcdG9iaiA9IHRvUG9pbnQob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0JvdW5kcyhvYmopO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAob2JqIGluc3RhbmNlb2YgQm91bmRzKSB7XHJcbiAgXHRcdFx0bWluID0gb2JqLm1pbjtcclxuICBcdFx0XHRtYXggPSBvYmoubWF4O1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG1pbiA9IG1heCA9IG9iajtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIChtaW4ueCA+PSB0aGlzLm1pbi54KSAmJlxyXG4gIFx0XHQgICAgICAgKG1heC54IDw9IHRoaXMubWF4LngpICYmXHJcbiAgXHRcdCAgICAgICAobWluLnkgPj0gdGhpcy5taW4ueSkgJiZcclxuICBcdFx0ICAgICAgIChtYXgueSA8PSB0aGlzLm1heC55KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpbnRlcnNlY3RzKG90aGVyQm91bmRzOiBCb3VuZHMpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIGludGVyc2VjdHMgdGhlIGdpdmVuIGJvdW5kcy4gVHdvIGJvdW5kc1xyXG4gIFx0Ly8gaW50ZXJzZWN0IGlmIHRoZXkgaGF2ZSBhdCBsZWFzdCBvbmUgcG9pbnQgaW4gY29tbW9uLlxyXG4gIFx0aW50ZXJzZWN0czogZnVuY3Rpb24gKGJvdW5kcykgeyAvLyAoQm91bmRzKSAtPiBCb29sZWFuXHJcbiAgXHRcdGJvdW5kcyA9IHRvQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHR2YXIgbWluID0gdGhpcy5taW4sXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLm1heCxcclxuICBcdFx0ICAgIG1pbjIgPSBib3VuZHMubWluLFxyXG4gIFx0XHQgICAgbWF4MiA9IGJvdW5kcy5tYXgsXHJcbiAgXHRcdCAgICB4SW50ZXJzZWN0cyA9IChtYXgyLnggPj0gbWluLngpICYmIChtaW4yLnggPD0gbWF4LngpLFxyXG4gIFx0XHQgICAgeUludGVyc2VjdHMgPSAobWF4Mi55ID49IG1pbi55KSAmJiAobWluMi55IDw9IG1heC55KTtcclxuXHJcbiAgXHRcdHJldHVybiB4SW50ZXJzZWN0cyAmJiB5SW50ZXJzZWN0cztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBvdmVybGFwcyhvdGhlckJvdW5kczogQm91bmRzKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBvdmVybGFwcyB0aGUgZ2l2ZW4gYm91bmRzLiBUd28gYm91bmRzXHJcbiAgXHQvLyBvdmVybGFwIGlmIHRoZWlyIGludGVyc2VjdGlvbiBpcyBhbiBhcmVhLlxyXG4gIFx0b3ZlcmxhcHM6IGZ1bmN0aW9uIChib3VuZHMpIHsgLy8gKEJvdW5kcykgLT4gQm9vbGVhblxyXG4gIFx0XHRib3VuZHMgPSB0b0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIG1pbiA9IHRoaXMubWluLFxyXG4gIFx0XHQgICAgbWF4ID0gdGhpcy5tYXgsXHJcbiAgXHRcdCAgICBtaW4yID0gYm91bmRzLm1pbixcclxuICBcdFx0ICAgIG1heDIgPSBib3VuZHMubWF4LFxyXG4gIFx0XHQgICAgeE92ZXJsYXBzID0gKG1heDIueCA+IG1pbi54KSAmJiAobWluMi54IDwgbWF4LngpLFxyXG4gIFx0XHQgICAgeU92ZXJsYXBzID0gKG1heDIueSA+IG1pbi55KSAmJiAobWluMi55IDwgbWF4LnkpO1xyXG5cclxuICBcdFx0cmV0dXJuIHhPdmVybGFwcyAmJiB5T3ZlcmxhcHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaXNWYWxpZCgpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgYm91bmRzIGFyZSBwcm9wZXJseSBpbml0aWFsaXplZC5cclxuICBcdGlzVmFsaWQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuICEhKHRoaXMubWluICYmIHRoaXMubWF4KTtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFkKGJ1ZmZlclJhdGlvOiBOdW1iZXIpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgYm91bmRzIGNyZWF0ZWQgYnkgZXh0ZW5kaW5nIG9yIHJldHJhY3RpbmcgdGhlIGN1cnJlbnQgYm91bmRzIGJ5IGEgZ2l2ZW4gcmF0aW8gaW4gZWFjaCBkaXJlY3Rpb24uXHJcbiAgXHQvLyBGb3IgZXhhbXBsZSwgYSByYXRpbyBvZiAwLjUgZXh0ZW5kcyB0aGUgYm91bmRzIGJ5IDUwJSBpbiBlYWNoIGRpcmVjdGlvbi5cclxuICBcdC8vIE5lZ2F0aXZlIHZhbHVlcyB3aWxsIHJldHJhY3QgdGhlIGJvdW5kcy5cclxuICBcdHBhZDogZnVuY3Rpb24gKGJ1ZmZlclJhdGlvKSB7XHJcbiAgXHRcdHZhciBtaW4gPSB0aGlzLm1pbixcclxuICBcdFx0bWF4ID0gdGhpcy5tYXgsXHJcbiAgXHRcdGhlaWdodEJ1ZmZlciA9IE1hdGguYWJzKG1pbi54IC0gbWF4LngpICogYnVmZmVyUmF0aW8sXHJcbiAgXHRcdHdpZHRoQnVmZmVyID0gTWF0aC5hYnMobWluLnkgLSBtYXgueSkgKiBidWZmZXJSYXRpbztcclxuXHJcblxyXG4gIFx0XHRyZXR1cm4gdG9Cb3VuZHMoXHJcbiAgXHRcdFx0dG9Qb2ludChtaW4ueCAtIGhlaWdodEJ1ZmZlciwgbWluLnkgLSB3aWR0aEJ1ZmZlciksXHJcbiAgXHRcdFx0dG9Qb2ludChtYXgueCArIGhlaWdodEJ1ZmZlciwgbWF4LnkgKyB3aWR0aEJ1ZmZlcikpO1xyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBlcXVhbHMob3RoZXJCb3VuZHM6IEJvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgaXMgZXF1aXZhbGVudCB0byB0aGUgZ2l2ZW4gYm91bmRzLlxyXG4gIFx0ZXF1YWxzOiBmdW5jdGlvbiAoYm91bmRzKSB7XHJcbiAgXHRcdGlmICghYm91bmRzKSB7IHJldHVybiBmYWxzZTsgfVxyXG5cclxuICBcdFx0Ym91bmRzID0gdG9Cb3VuZHMoYm91bmRzKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLm1pbi5lcXVhbHMoYm91bmRzLmdldFRvcExlZnQoKSkgJiZcclxuICBcdFx0XHR0aGlzLm1heC5lcXVhbHMoYm91bmRzLmdldEJvdHRvbVJpZ2h0KCkpO1xyXG4gIFx0fSxcclxuICB9O1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5ib3VuZHMoY29ybmVyMTogUG9pbnQsIGNvcm5lcjI6IFBvaW50KVxyXG4gIC8vIENyZWF0ZXMgYSBCb3VuZHMgb2JqZWN0IGZyb20gdHdvIGNvcm5lcnMgY29vcmRpbmF0ZSBwYWlycy5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZmFjdG9yeSBMLmJvdW5kcyhwb2ludHM6IFBvaW50W10pXHJcbiAgLy8gQ3JlYXRlcyBhIEJvdW5kcyBvYmplY3QgZnJvbSB0aGUgZ2l2ZW4gYXJyYXkgb2YgcG9pbnRzLlxyXG4gIGZ1bmN0aW9uIHRvQm91bmRzKGEsIGIpIHtcclxuICBcdGlmICghYSB8fCBhIGluc3RhbmNlb2YgQm91bmRzKSB7XHJcbiAgXHRcdHJldHVybiBhO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBCb3VuZHMoYSwgYik7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIExhdExuZ0JvdW5kc1xyXG4gICAqIEBha2EgTC5MYXRMbmdCb3VuZHNcclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYSByZWN0YW5ndWxhciBnZW9ncmFwaGljYWwgYXJlYSBvbiBhIG1hcC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBjb3JuZXIxID0gTC5sYXRMbmcoNDAuNzEyLCAtNzQuMjI3KSxcclxuICAgKiBjb3JuZXIyID0gTC5sYXRMbmcoNDAuNzc0LCAtNzQuMTI1KSxcclxuICAgKiBib3VuZHMgPSBMLmxhdExuZ0JvdW5kcyhjb3JuZXIxLCBjb3JuZXIyKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEFsbCBMZWFmbGV0IG1ldGhvZHMgdGhhdCBhY2NlcHQgTGF0TG5nQm91bmRzIG9iamVjdHMgYWxzbyBhY2NlcHQgdGhlbSBpbiBhIHNpbXBsZSBBcnJheSBmb3JtICh1bmxlc3Mgbm90ZWQgb3RoZXJ3aXNlKSwgc28gdGhlIGJvdW5kcyBleGFtcGxlIGFib3ZlIGNhbiBiZSBwYXNzZWQgbGlrZSB0aGlzOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBtYXAuZml0Qm91bmRzKFtcclxuICAgKiBcdFs0MC43MTIsIC03NC4yMjddLFxyXG4gICAqIFx0WzQwLjc3NCwgLTc0LjEyNV1cclxuICAgKiBdKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIENhdXRpb246IGlmIHRoZSBhcmVhIGNyb3NzZXMgdGhlIGFudGltZXJpZGlhbiAob2Z0ZW4gY29uZnVzZWQgd2l0aCB0aGUgSW50ZXJuYXRpb25hbCBEYXRlIExpbmUpLCB5b3UgbXVzdCBzcGVjaWZ5IGNvcm5lcnMgX291dHNpZGVfIHRoZSBbLTE4MCwgMTgwXSBkZWdyZWVzIGxvbmdpdHVkZSByYW5nZS5cclxuICAgKlxyXG4gICAqIE5vdGUgdGhhdCBgTGF0TG5nQm91bmRzYCBkb2VzIG5vdCBpbmhlcml0IGZyb20gTGVhZmxldCdzIGBDbGFzc2Agb2JqZWN0LFxyXG4gICAqIHdoaWNoIG1lYW5zIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSBpdCwgYW5kIG5ldyBtZXRob2RzXHJcbiAgICogY2FuJ3QgYmUgYWRkZWQgdG8gaXQgd2l0aCB0aGUgYGluY2x1ZGVgIGZ1bmN0aW9uLlxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBMYXRMbmdCb3VuZHMoY29ybmVyMSwgY29ybmVyMikgeyAvLyAoTGF0TG5nLCBMYXRMbmcpIG9yIChMYXRMbmdbXSlcclxuICBcdGlmICghY29ybmVyMSkgeyByZXR1cm47IH1cclxuXHJcbiAgXHR2YXIgbGF0bG5ncyA9IGNvcm5lcjIgPyBbY29ybmVyMSwgY29ybmVyMl0gOiBjb3JuZXIxO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXRsbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHRoaXMuZXh0ZW5kKGxhdGxuZ3NbaV0pO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgTGF0TG5nQm91bmRzLnByb3RvdHlwZSA9IHtcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGV4dGVuZChsYXRsbmc6IExhdExuZyk6IHRoaXNcclxuICBcdC8vIEV4dGVuZCB0aGUgYm91bmRzIHRvIGNvbnRhaW4gdGhlIGdpdmVuIHBvaW50XHJcblxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIGV4dGVuZChvdGhlckJvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xyXG4gIFx0Ly8gRXh0ZW5kIHRoZSBib3VuZHMgdG8gY29udGFpbiB0aGUgZ2l2ZW4gYm91bmRzXHJcbiAgXHRleHRlbmQ6IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdFx0dmFyIHN3ID0gdGhpcy5fc291dGhXZXN0LFxyXG4gIFx0XHQgICAgbmUgPSB0aGlzLl9ub3J0aEVhc3QsXHJcbiAgXHRcdCAgICBzdzIsIG5lMjtcclxuXHJcbiAgXHRcdGlmIChvYmogaW5zdGFuY2VvZiBMYXRMbmcpIHtcclxuICBcdFx0XHRzdzIgPSBvYmo7XHJcbiAgXHRcdFx0bmUyID0gb2JqO1xyXG5cclxuICBcdFx0fSBlbHNlIGlmIChvYmogaW5zdGFuY2VvZiBMYXRMbmdCb3VuZHMpIHtcclxuICBcdFx0XHRzdzIgPSBvYmouX3NvdXRoV2VzdDtcclxuICBcdFx0XHRuZTIgPSBvYmouX25vcnRoRWFzdDtcclxuXHJcbiAgXHRcdFx0aWYgKCFzdzIgfHwgIW5lMikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRyZXR1cm4gb2JqID8gdGhpcy5leHRlbmQodG9MYXRMbmcob2JqKSB8fCB0b0xhdExuZ0JvdW5kcyhvYmopKSA6IHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghc3cgJiYgIW5lKSB7XHJcbiAgXHRcdFx0dGhpcy5fc291dGhXZXN0ID0gbmV3IExhdExuZyhzdzIubGF0LCBzdzIubG5nKTtcclxuICBcdFx0XHR0aGlzLl9ub3J0aEVhc3QgPSBuZXcgTGF0TG5nKG5lMi5sYXQsIG5lMi5sbmcpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHN3LmxhdCA9IE1hdGgubWluKHN3Mi5sYXQsIHN3LmxhdCk7XHJcbiAgXHRcdFx0c3cubG5nID0gTWF0aC5taW4oc3cyLmxuZywgc3cubG5nKTtcclxuICBcdFx0XHRuZS5sYXQgPSBNYXRoLm1heChuZTIubGF0LCBuZS5sYXQpO1xyXG4gIFx0XHRcdG5lLmxuZyA9IE1hdGgubWF4KG5lMi5sbmcsIG5lLmxuZyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBhZChidWZmZXJSYXRpbzogTnVtYmVyKTogTGF0TG5nQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIGJvdW5kcyBjcmVhdGVkIGJ5IGV4dGVuZGluZyBvciByZXRyYWN0aW5nIHRoZSBjdXJyZW50IGJvdW5kcyBieSBhIGdpdmVuIHJhdGlvIGluIGVhY2ggZGlyZWN0aW9uLlxyXG4gIFx0Ly8gRm9yIGV4YW1wbGUsIGEgcmF0aW8gb2YgMC41IGV4dGVuZHMgdGhlIGJvdW5kcyBieSA1MCUgaW4gZWFjaCBkaXJlY3Rpb24uXHJcbiAgXHQvLyBOZWdhdGl2ZSB2YWx1ZXMgd2lsbCByZXRyYWN0IHRoZSBib3VuZHMuXHJcbiAgXHRwYWQ6IGZ1bmN0aW9uIChidWZmZXJSYXRpbykge1xyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIGhlaWdodEJ1ZmZlciA9IE1hdGguYWJzKHN3LmxhdCAtIG5lLmxhdCkgKiBidWZmZXJSYXRpbyxcclxuICBcdFx0ICAgIHdpZHRoQnVmZmVyID0gTWF0aC5hYnMoc3cubG5nIC0gbmUubG5nKSAqIGJ1ZmZlclJhdGlvO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmdCb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgbmV3IExhdExuZyhzdy5sYXQgLSBoZWlnaHRCdWZmZXIsIHN3LmxuZyAtIHdpZHRoQnVmZmVyKSxcclxuICBcdFx0ICAgICAgICBuZXcgTGF0TG5nKG5lLmxhdCArIGhlaWdodEJ1ZmZlciwgbmUubG5nICsgd2lkdGhCdWZmZXIpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjZW50ZXIgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyhcclxuICBcdFx0ICAgICAgICAodGhpcy5fc291dGhXZXN0LmxhdCArIHRoaXMuX25vcnRoRWFzdC5sYXQpIC8gMixcclxuICBcdFx0ICAgICAgICAodGhpcy5fc291dGhXZXN0LmxuZyArIHRoaXMuX25vcnRoRWFzdC5sbmcpIC8gMik7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0U291dGhXZXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgc291dGgtd2VzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0U291dGhXZXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9zb3V0aFdlc3Q7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Tm9ydGhFYXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGgtZWFzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0Tm9ydGhFYXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9ub3J0aEVhc3Q7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Tm9ydGhXZXN0KCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGgtd2VzdCBwb2ludCBvZiB0aGUgYm91bmRzLlxyXG4gIFx0Z2V0Tm9ydGhXZXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHRoaXMuZ2V0Tm9ydGgoKSwgdGhpcy5nZXRXZXN0KCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFNvdXRoRWFzdCgpOiBMYXRMbmdcclxuICBcdC8vIFJldHVybnMgdGhlIHNvdXRoLWVhc3QgcG9pbnQgb2YgdGhlIGJvdW5kcy5cclxuICBcdGdldFNvdXRoRWFzdDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyh0aGlzLmdldFNvdXRoKCksIHRoaXMuZ2V0RWFzdCgpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRXZXN0KCk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgd2VzdCBsb25naXR1ZGUgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Z2V0V2VzdDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc291dGhXZXN0LmxuZztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRTb3V0aCgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIHNvdXRoIGxhdGl0dWRlIG9mIHRoZSBib3VuZHNcclxuICBcdGdldFNvdXRoOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9zb3V0aFdlc3QubGF0O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEVhc3QoKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBlYXN0IGxvbmdpdHVkZSBvZiB0aGUgYm91bmRzXHJcbiAgXHRnZXRFYXN0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9ub3J0aEVhc3QubG5nO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldE5vcnRoKCk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbm9ydGggbGF0aXR1ZGUgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Z2V0Tm9ydGg6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX25vcnRoRWFzdC5sYXQ7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMob3RoZXJCb3VuZHM6IExhdExuZ0JvdW5kcyk6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgY29udGFpbnMgdGhlIGdpdmVuIG9uZS5cclxuXHJcbiAgXHQvLyBAYWx0ZXJuYXRpdmVcclxuICBcdC8vIEBtZXRob2QgY29udGFpbnMgKGxhdGxuZzogTGF0TG5nKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBjb250YWlucyB0aGUgZ2l2ZW4gcG9pbnQuXHJcbiAgXHRjb250YWluczogZnVuY3Rpb24gKG9iaikgeyAvLyAoTGF0TG5nQm91bmRzKSBvciAoTGF0TG5nKSAtPiBCb29sZWFuXHJcbiAgXHRcdGlmICh0eXBlb2Ygb2JqWzBdID09PSAnbnVtYmVyJyB8fCBvYmogaW5zdGFuY2VvZiBMYXRMbmcgfHwgJ2xhdCcgaW4gb2JqKSB7XHJcbiAgXHRcdFx0b2JqID0gdG9MYXRMbmcob2JqKTtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvYmogPSB0b0xhdExuZ0JvdW5kcyhvYmopO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIHN3MiwgbmUyO1xyXG5cclxuICBcdFx0aWYgKG9iaiBpbnN0YW5jZW9mIExhdExuZ0JvdW5kcykge1xyXG4gIFx0XHRcdHN3MiA9IG9iai5nZXRTb3V0aFdlc3QoKTtcclxuICBcdFx0XHRuZTIgPSBvYmouZ2V0Tm9ydGhFYXN0KCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0c3cyID0gbmUyID0gb2JqO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gKHN3Mi5sYXQgPj0gc3cubGF0KSAmJiAobmUyLmxhdCA8PSBuZS5sYXQpICYmXHJcbiAgXHRcdCAgICAgICAoc3cyLmxuZyA+PSBzdy5sbmcpICYmIChuZTIubG5nIDw9IG5lLmxuZyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaW50ZXJzZWN0cyhvdGhlckJvdW5kczogTGF0TG5nQm91bmRzKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHJlY3RhbmdsZSBpbnRlcnNlY3RzIHRoZSBnaXZlbiBib3VuZHMuIFR3byBib3VuZHMgaW50ZXJzZWN0IGlmIHRoZXkgaGF2ZSBhdCBsZWFzdCBvbmUgcG9pbnQgaW4gY29tbW9uLlxyXG4gIFx0aW50ZXJzZWN0czogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHRib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIHN3ID0gdGhpcy5fc291dGhXZXN0LFxyXG4gIFx0XHQgICAgbmUgPSB0aGlzLl9ub3J0aEVhc3QsXHJcbiAgXHRcdCAgICBzdzIgPSBib3VuZHMuZ2V0U291dGhXZXN0KCksXHJcbiAgXHRcdCAgICBuZTIgPSBib3VuZHMuZ2V0Tm9ydGhFYXN0KCksXHJcblxyXG4gIFx0XHQgICAgbGF0SW50ZXJzZWN0cyA9IChuZTIubGF0ID49IHN3LmxhdCkgJiYgKHN3Mi5sYXQgPD0gbmUubGF0KSxcclxuICBcdFx0ICAgIGxuZ0ludGVyc2VjdHMgPSAobmUyLmxuZyA+PSBzdy5sbmcpICYmIChzdzIubG5nIDw9IG5lLmxuZyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbGF0SW50ZXJzZWN0cyAmJiBsbmdJbnRlcnNlY3RzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG92ZXJsYXBzKG90aGVyQm91bmRzOiBMYXRMbmdCb3VuZHMpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcmVjdGFuZ2xlIG92ZXJsYXBzIHRoZSBnaXZlbiBib3VuZHMuIFR3byBib3VuZHMgb3ZlcmxhcCBpZiB0aGVpciBpbnRlcnNlY3Rpb24gaXMgYW4gYXJlYS5cclxuICBcdG92ZXJsYXBzOiBmdW5jdGlvbiAoYm91bmRzKSB7XHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHR2YXIgc3cgPSB0aGlzLl9zb3V0aFdlc3QsXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMuX25vcnRoRWFzdCxcclxuICBcdFx0ICAgIHN3MiA9IGJvdW5kcy5nZXRTb3V0aFdlc3QoKSxcclxuICBcdFx0ICAgIG5lMiA9IGJvdW5kcy5nZXROb3J0aEVhc3QoKSxcclxuXHJcbiAgXHRcdCAgICBsYXRPdmVybGFwcyA9IChuZTIubGF0ID4gc3cubGF0KSAmJiAoc3cyLmxhdCA8IG5lLmxhdCksXHJcbiAgXHRcdCAgICBsbmdPdmVybGFwcyA9IChuZTIubG5nID4gc3cubG5nKSAmJiAoc3cyLmxuZyA8IG5lLmxuZyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbGF0T3ZlcmxhcHMgJiYgbG5nT3ZlcmxhcHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9CQm94U3RyaW5nKCk6IFN0cmluZ1xyXG4gIFx0Ly8gUmV0dXJucyBhIHN0cmluZyB3aXRoIGJvdW5kaW5nIGJveCBjb29yZGluYXRlcyBpbiBhICdzb3V0aHdlc3RfbG5nLHNvdXRod2VzdF9sYXQsbm9ydGhlYXN0X2xuZyxub3J0aGVhc3RfbGF0JyBmb3JtYXQuIFVzZWZ1bCBmb3Igc2VuZGluZyByZXF1ZXN0cyB0byB3ZWIgc2VydmljZXMgdGhhdCByZXR1cm4gZ2VvIGRhdGEuXHJcbiAgXHR0b0JCb3hTdHJpbmc6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIFt0aGlzLmdldFdlc3QoKSwgdGhpcy5nZXRTb3V0aCgpLCB0aGlzLmdldEVhc3QoKSwgdGhpcy5nZXROb3J0aCgpXS5qb2luKCcsJyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXF1YWxzKG90aGVyQm91bmRzOiBMYXRMbmdCb3VuZHMsIG1heE1hcmdpbj86IE51bWJlcik6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSByZWN0YW5nbGUgaXMgZXF1aXZhbGVudCAod2l0aGluIGEgc21hbGwgbWFyZ2luIG9mIGVycm9yKSB0byB0aGUgZ2l2ZW4gYm91bmRzLiBUaGUgbWFyZ2luIG9mIGVycm9yIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHNldHRpbmcgYG1heE1hcmdpbmAgdG8gYSBzbWFsbCBudW1iZXIuXHJcbiAgXHRlcXVhbHM6IGZ1bmN0aW9uIChib3VuZHMsIG1heE1hcmdpbikge1xyXG4gIFx0XHRpZiAoIWJvdW5kcykgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc291dGhXZXN0LmVxdWFscyhib3VuZHMuZ2V0U291dGhXZXN0KCksIG1heE1hcmdpbikgJiZcclxuICBcdFx0ICAgICAgIHRoaXMuX25vcnRoRWFzdC5lcXVhbHMoYm91bmRzLmdldE5vcnRoRWFzdCgpLCBtYXhNYXJnaW4pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGlzVmFsaWQoKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGJvdW5kcyBhcmUgcHJvcGVybHkgaW5pdGlhbGl6ZWQuXHJcbiAgXHRpc1ZhbGlkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiAhISh0aGlzLl9zb3V0aFdlc3QgJiYgdGhpcy5fbm9ydGhFYXN0KTtcclxuICBcdH1cclxuICB9O1xyXG5cclxuICAvLyBUT0RPIEludGVybmF0aW9uYWwgZGF0ZSBsaW5lP1xyXG5cclxuICAvLyBAZmFjdG9yeSBMLmxhdExuZ0JvdW5kcyhjb3JuZXIxOiBMYXRMbmcsIGNvcm5lcjI6IExhdExuZylcclxuICAvLyBDcmVhdGVzIGEgYExhdExuZ0JvdW5kc2Agb2JqZWN0IGJ5IGRlZmluaW5nIHR3byBkaWFnb25hbGx5IG9wcG9zaXRlIGNvcm5lcnMgb2YgdGhlIHJlY3RhbmdsZS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmdCb3VuZHMobGF0bG5nczogTGF0TG5nW10pXHJcbiAgLy8gQ3JlYXRlcyBhIGBMYXRMbmdCb3VuZHNgIG9iamVjdCBkZWZpbmVkIGJ5IHRoZSBnZW9ncmFwaGljYWwgcG9pbnRzIGl0IGNvbnRhaW5zLiBWZXJ5IHVzZWZ1bCBmb3Igem9vbWluZyB0aGUgbWFwIHRvIGZpdCBhIHBhcnRpY3VsYXIgc2V0IG9mIGxvY2F0aW9ucyB3aXRoIFtgZml0Qm91bmRzYF0oI21hcC1maXRib3VuZHMpLlxyXG4gIGZ1bmN0aW9uIHRvTGF0TG5nQm91bmRzKGEsIGIpIHtcclxuICBcdGlmIChhIGluc3RhbmNlb2YgTGF0TG5nQm91bmRzKSB7XHJcbiAgXHRcdHJldHVybiBhO1xyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIG5ldyBMYXRMbmdCb3VuZHMoYSwgYik7XHJcbiAgfVxuXG4gIC8qIEBjbGFzcyBMYXRMbmdcclxuICAgKiBAYWthIEwuTGF0TG5nXHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgZ2VvZ3JhcGhpY2FsIHBvaW50IHdpdGggYSBjZXJ0YWluIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBgXHJcbiAgICogdmFyIGxhdGxuZyA9IEwubGF0TG5nKDUwLjUsIDMwLjUpO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICogQWxsIExlYWZsZXQgbWV0aG9kcyB0aGF0IGFjY2VwdCBMYXRMbmcgb2JqZWN0cyBhbHNvIGFjY2VwdCB0aGVtIGluIGEgc2ltcGxlIEFycmF5IGZvcm0gYW5kIHNpbXBsZSBvYmplY3QgZm9ybSAodW5sZXNzIG5vdGVkIG90aGVyd2lzZSksIHNvIHRoZXNlIGxpbmVzIGFyZSBlcXVpdmFsZW50OlxyXG4gICAqXHJcbiAgICogYGBgXHJcbiAgICogbWFwLnBhblRvKFs1MCwgMzBdKTtcclxuICAgKiBtYXAucGFuVG8oe2xvbjogMzAsIGxhdDogNTB9KTtcclxuICAgKiBtYXAucGFuVG8oe2xhdDogNTAsIGxuZzogMzB9KTtcclxuICAgKiBtYXAucGFuVG8oTC5sYXRMbmcoNTAsIDMwKSk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBOb3RlIHRoYXQgYExhdExuZ2AgZG9lcyBub3QgaW5oZXJpdCBmcm9tIExlYWZsZXQncyBgQ2xhc3NgIG9iamVjdCxcclxuICAgKiB3aGljaCBtZWFucyBuZXcgY2xhc3NlcyBjYW4ndCBpbmhlcml0IGZyb20gaXQsIGFuZCBuZXcgbWV0aG9kc1xyXG4gICAqIGNhbid0IGJlIGFkZGVkIHRvIGl0IHdpdGggdGhlIGBpbmNsdWRlYCBmdW5jdGlvbi5cclxuICAgKi9cclxuXHJcbiAgZnVuY3Rpb24gTGF0TG5nKGxhdCwgbG5nLCBhbHQpIHtcclxuICBcdGlmIChpc05hTihsYXQpIHx8IGlzTmFOKGxuZykpIHtcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIExhdExuZyBvYmplY3Q6ICgnICsgbGF0ICsgJywgJyArIGxuZyArICcpJyk7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGxhdDogTnVtYmVyXHJcbiAgXHQvLyBMYXRpdHVkZSBpbiBkZWdyZWVzXHJcbiAgXHR0aGlzLmxhdCA9ICtsYXQ7XHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGxuZzogTnVtYmVyXHJcbiAgXHQvLyBMb25naXR1ZGUgaW4gZGVncmVlc1xyXG4gIFx0dGhpcy5sbmcgPSArbG5nO1xyXG5cclxuICBcdC8vIEBwcm9wZXJ0eSBhbHQ6IE51bWJlclxyXG4gIFx0Ly8gQWx0aXR1ZGUgaW4gbWV0ZXJzIChvcHRpb25hbClcclxuICBcdGlmIChhbHQgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHR0aGlzLmFsdCA9ICthbHQ7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBMYXRMbmcucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCBlcXVhbHMob3RoZXJMYXRMbmc6IExhdExuZywgbWF4TWFyZ2luPzogTnVtYmVyKTogQm9vbGVhblxyXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIGBMYXRMbmdgIHBvaW50IGlzIGF0IHRoZSBzYW1lIHBvc2l0aW9uICh3aXRoaW4gYSBzbWFsbCBtYXJnaW4gb2YgZXJyb3IpLiBUaGUgbWFyZ2luIG9mIGVycm9yIGNhbiBiZSBvdmVycmlkZGVuIGJ5IHNldHRpbmcgYG1heE1hcmdpbmAgdG8gYSBzbWFsbCBudW1iZXIuXHJcbiAgXHRlcXVhbHM6IGZ1bmN0aW9uIChvYmosIG1heE1hcmdpbikge1xyXG4gIFx0XHRpZiAoIW9iaikgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdG9iaiA9IHRvTGF0TG5nKG9iaik7XHJcblxyXG4gIFx0XHR2YXIgbWFyZ2luID0gTWF0aC5tYXgoXHJcbiAgXHRcdCAgICAgICAgTWF0aC5hYnModGhpcy5sYXQgLSBvYmoubGF0KSxcclxuICBcdFx0ICAgICAgICBNYXRoLmFicyh0aGlzLmxuZyAtIG9iai5sbmcpKTtcclxuXHJcbiAgXHRcdHJldHVybiBtYXJnaW4gPD0gKG1heE1hcmdpbiA9PT0gdW5kZWZpbmVkID8gMS4wRS05IDogbWF4TWFyZ2luKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b1N0cmluZygpOiBTdHJpbmdcclxuICBcdC8vIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBvaW50IChmb3IgZGVidWdnaW5nIHB1cnBvc2VzKS5cclxuICBcdHRvU3RyaW5nOiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHJldHVybiAnTGF0TG5nKCcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLmxhdCwgcHJlY2lzaW9uKSArICcsICcgK1xyXG4gIFx0XHQgICAgICAgIGZvcm1hdE51bSh0aGlzLmxuZywgcHJlY2lzaW9uKSArICcpJztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXN0YW5jZVRvKG90aGVyTGF0TG5nOiBMYXRMbmcpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGRpc3RhbmNlIChpbiBtZXRlcnMpIHRvIHRoZSBnaXZlbiBgTGF0TG5nYCBjYWxjdWxhdGVkIHVzaW5nIHRoZSBbU3BoZXJpY2FsIExhdyBvZiBDb3NpbmVzXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TcGhlcmljYWxfbGF3X29mX2Nvc2luZXMpLlxyXG4gIFx0ZGlzdGFuY2VUbzogZnVuY3Rpb24gKG90aGVyKSB7XHJcbiAgXHRcdHJldHVybiBFYXJ0aC5kaXN0YW5jZSh0aGlzLCB0b0xhdExuZyhvdGhlcikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHdyYXAoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIGEgbmV3IGBMYXRMbmdgIG9iamVjdCB3aXRoIHRoZSBsb25naXR1ZGUgd3JhcHBlZCBzbyBpdCdzIGFsd2F5cyBiZXR3ZWVuIC0xODAgYW5kICsxODAgZGVncmVlcy5cclxuICBcdHdyYXA6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIEVhcnRoLndyYXBMYXRMbmcodGhpcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9Cb3VuZHMoc2l6ZUluTWV0ZXJzOiBOdW1iZXIpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIFJldHVybnMgYSBuZXcgYExhdExuZ0JvdW5kc2Agb2JqZWN0IGluIHdoaWNoIGVhY2ggYm91bmRhcnkgaXMgYHNpemVJbk1ldGVycy8yYCBtZXRlcnMgYXBhcnQgZnJvbSB0aGUgYExhdExuZ2AuXHJcbiAgXHR0b0JvdW5kczogZnVuY3Rpb24gKHNpemVJbk1ldGVycykge1xyXG4gIFx0XHR2YXIgbGF0QWNjdXJhY3kgPSAxODAgKiBzaXplSW5NZXRlcnMgLyA0MDA3NTAxNyxcclxuICBcdFx0ICAgIGxuZ0FjY3VyYWN5ID0gbGF0QWNjdXJhY3kgLyBNYXRoLmNvcygoTWF0aC5QSSAvIDE4MCkgKiB0aGlzLmxhdCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdG9MYXRMbmdCb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgW3RoaXMubGF0IC0gbGF0QWNjdXJhY3ksIHRoaXMubG5nIC0gbG5nQWNjdXJhY3ldLFxyXG4gIFx0XHQgICAgICAgIFt0aGlzLmxhdCArIGxhdEFjY3VyYWN5LCB0aGlzLmxuZyArIGxuZ0FjY3VyYWN5XSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdGNsb25lOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHRoaXMubGF0LCB0aGlzLmxuZywgdGhpcy5hbHQpO1xyXG4gIFx0fVxyXG4gIH07XHJcblxyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmcobGF0aXR1ZGU6IE51bWJlciwgbG9uZ2l0dWRlOiBOdW1iZXIsIGFsdGl0dWRlPzogTnVtYmVyKTogTGF0TG5nXHJcbiAgLy8gQ3JlYXRlcyBhbiBvYmplY3QgcmVwcmVzZW50aW5nIGEgZ2VvZ3JhcGhpY2FsIHBvaW50IHdpdGggdGhlIGdpdmVuIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgKGFuZCBvcHRpb25hbGx5IGFsdGl0dWRlKS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXRMbmcoY29vcmRzOiBBcnJheSk6IExhdExuZ1xyXG4gIC8vIEV4cGVjdHMgYW4gYXJyYXkgb2YgdGhlIGZvcm0gYFtOdW1iZXIsIE51bWJlcl1gIG9yIGBbTnVtYmVyLCBOdW1iZXIsIE51bWJlcl1gIGluc3RlYWQuXHJcblxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwubGF0TG5nKGNvb3JkczogT2JqZWN0KTogTGF0TG5nXHJcbiAgLy8gRXhwZWN0cyBhbiBwbGFpbiBvYmplY3Qgb2YgdGhlIGZvcm0gYHtsYXQ6IE51bWJlciwgbG5nOiBOdW1iZXJ9YCBvciBge2xhdDogTnVtYmVyLCBsbmc6IE51bWJlciwgYWx0OiBOdW1iZXJ9YCBpbnN0ZWFkLlxyXG5cclxuICBmdW5jdGlvbiB0b0xhdExuZyhhLCBiLCBjKSB7XHJcbiAgXHRpZiAoYSBpbnN0YW5jZW9mIExhdExuZykge1xyXG4gIFx0XHRyZXR1cm4gYTtcclxuICBcdH1cclxuICBcdGlmIChpc0FycmF5KGEpICYmIHR5cGVvZiBhWzBdICE9PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRpZiAoYS5sZW5ndGggPT09IDMpIHtcclxuICBcdFx0XHRyZXR1cm4gbmV3IExhdExuZyhhWzBdLCBhWzFdLCBhWzJdKTtcclxuICBcdFx0fVxyXG4gIFx0XHRpZiAoYS5sZW5ndGggPT09IDIpIHtcclxuICBcdFx0XHRyZXR1cm4gbmV3IExhdExuZyhhWzBdLCBhWzFdKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gbnVsbDtcclxuICBcdH1cclxuICBcdGlmIChhID09PSB1bmRlZmluZWQgfHwgYSA9PT0gbnVsbCkge1xyXG4gIFx0XHRyZXR1cm4gYTtcclxuICBcdH1cclxuICBcdGlmICh0eXBlb2YgYSA9PT0gJ29iamVjdCcgJiYgJ2xhdCcgaW4gYSkge1xyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZyhhLmxhdCwgJ2xuZycgaW4gYSA/IGEubG5nIDogYS5sb24sIGEuYWx0KTtcclxuICBcdH1cclxuICBcdGlmIChiID09PSB1bmRlZmluZWQpIHtcclxuICBcdFx0cmV0dXJuIG51bGw7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gbmV3IExhdExuZyhhLCBiLCBjKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuQmFzZVxyXG4gICAqIE9iamVjdCB0aGF0IGRlZmluZXMgY29vcmRpbmF0ZSByZWZlcmVuY2Ugc3lzdGVtcyBmb3IgcHJvamVjdGluZ1xyXG4gICAqIGdlb2dyYXBoaWNhbCBwb2ludHMgaW50byBwaXhlbCAoc2NyZWVuKSBjb29yZGluYXRlcyBhbmQgYmFjayAoYW5kIHRvXHJcbiAgICogY29vcmRpbmF0ZXMgaW4gb3RoZXIgdW5pdHMgZm9yIFtXTVNdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1dlYl9NYXBfU2VydmljZSkgc2VydmljZXMpLiBTZWVcclxuICAgKiBbc3BhdGlhbCByZWZlcmVuY2Ugc3lzdGVtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TcGF0aWFsX3JlZmVyZW5jZV9zeXN0ZW0pLlxyXG4gICAqXHJcbiAgICogTGVhZmxldCBkZWZpbmVzIHRoZSBtb3N0IHVzdWFsIENSU3MgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgdG8gdXNlIGFcclxuICAgKiBDUlMgbm90IGRlZmluZWQgYnkgZGVmYXVsdCwgdGFrZSBhIGxvb2sgYXQgdGhlXHJcbiAgICogW1Byb2o0TGVhZmxldF0oaHR0cHM6Ly9naXRodWIuY29tL2thcnRlbmEvUHJvajRMZWFmbGV0KSBwbHVnaW4uXHJcbiAgICpcclxuICAgKiBOb3RlIHRoYXQgdGhlIENSUyBpbnN0YW5jZXMgZG8gbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXHJcbiAgICogYW5kIGNhbid0IGJlIGluc3RhbnRpYXRlZC4gQWxzbywgbmV3IGNsYXNzZXMgY2FuJ3QgaW5oZXJpdCBmcm9tIHRoZW0sXHJcbiAgICogYW5kIG1ldGhvZHMgY2FuJ3QgYmUgYWRkZWQgdG8gdGhlbSB3aXRoIHRoZSBgaW5jbHVkZWAgZnVuY3Rpb24uXHJcbiAgICovXHJcblxyXG4gIHZhciBDUlMgPSB7XHJcbiAgXHQvLyBAbWV0aG9kIGxhdExuZ1RvUG9pbnQobGF0bG5nOiBMYXRMbmcsIHpvb206IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBQcm9qZWN0cyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMgaW50byBwaXhlbCBjb29yZGluYXRlcyBmb3IgYSBnaXZlbiB6b29tLlxyXG4gIFx0bGF0TG5nVG9Qb2ludDogZnVuY3Rpb24gKGxhdGxuZywgem9vbSkge1xyXG4gIFx0XHR2YXIgcHJvamVjdGVkUG9pbnQgPSB0aGlzLnByb2plY3Rpb24ucHJvamVjdChsYXRsbmcpLFxyXG4gIFx0XHQgICAgc2NhbGUgPSB0aGlzLnNjYWxlKHpvb20pO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMudHJhbnNmb3JtYXRpb24uX3RyYW5zZm9ybShwcm9qZWN0ZWRQb2ludCwgc2NhbGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBvaW50VG9MYXRMbmcocG9pbnQ6IFBvaW50LCB6b29tOiBOdW1iZXIpOiBMYXRMbmdcclxuICBcdC8vIFRoZSBpbnZlcnNlIG9mIGBsYXRMbmdUb1BvaW50YC4gUHJvamVjdHMgcGl4ZWwgY29vcmRpbmF0ZXMgb24gYSBnaXZlblxyXG4gIFx0Ly8gem9vbSBpbnRvIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcy5cclxuICBcdHBvaW50VG9MYXRMbmc6IGZ1bmN0aW9uIChwb2ludCwgem9vbSkge1xyXG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLnNjYWxlKHpvb20pLFxyXG4gIFx0XHQgICAgdW50cmFuc2Zvcm1lZFBvaW50ID0gdGhpcy50cmFuc2Zvcm1hdGlvbi51bnRyYW5zZm9ybShwb2ludCwgc2NhbGUpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMucHJvamVjdGlvbi51bnByb2plY3QodW50cmFuc2Zvcm1lZFBvaW50KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBwcm9qZWN0KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIFByb2plY3RzIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlcyBpbnRvIGNvb3JkaW5hdGVzIGluIHVuaXRzIGFjY2VwdGVkIGZvclxyXG4gIFx0Ly8gdGhpcyBDUlMgKGUuZy4gbWV0ZXJzIGZvciBFUFNHOjM4NTcsIGZvciBwYXNzaW5nIGl0IHRvIFdNUyBzZXJ2aWNlcykuXHJcbiAgXHRwcm9qZWN0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLnByb2plY3Rpb24ucHJvamVjdChsYXRsbmcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVucHJvamVjdChwb2ludDogUG9pbnQpOiBMYXRMbmdcclxuICBcdC8vIEdpdmVuIGEgcHJvamVjdGVkIGNvb3JkaW5hdGUgcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBMYXRMbmcuXHJcbiAgXHQvLyBUaGUgaW52ZXJzZSBvZiBgcHJvamVjdGAuXHJcbiAgXHR1bnByb2plY3Q6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5wcm9qZWN0aW9uLnVucHJvamVjdChwb2ludCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2NhbGUoem9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBzY2FsZSB1c2VkIHdoZW4gdHJhbnNmb3JtaW5nIHByb2plY3RlZCBjb29yZGluYXRlcyBpbnRvXHJcbiAgXHQvLyBwaXhlbCBjb29yZGluYXRlcyBmb3IgYSBwYXJ0aWN1bGFyIHpvb20uIEZvciBleGFtcGxlLCBpdCByZXR1cm5zXHJcbiAgXHQvLyBgMjU2ICogMl56b29tYCBmb3IgTWVyY2F0b3ItYmFzZWQgQ1JTLlxyXG4gIFx0c2NhbGU6IGZ1bmN0aW9uICh6b29tKSB7XHJcbiAgXHRcdHJldHVybiAyNTYgKiBNYXRoLnBvdygyLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB6b29tKHNjYWxlOiBOdW1iZXIpOiBOdW1iZXJcclxuICBcdC8vIEludmVyc2Ugb2YgYHNjYWxlKClgLCByZXR1cm5zIHRoZSB6b29tIGxldmVsIGNvcnJlc3BvbmRpbmcgdG8gYSBzY2FsZVxyXG4gIFx0Ly8gZmFjdG9yIG9mIGBzY2FsZWAuXHJcbiAgXHR6b29tOiBmdW5jdGlvbiAoc2NhbGUpIHtcclxuICBcdFx0cmV0dXJuIE1hdGgubG9nKHNjYWxlIC8gMjU2KSAvIE1hdGguTE4yO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFByb2plY3RlZEJvdW5kcyh6b29tOiBOdW1iZXIpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIHByb2plY3Rpb24ncyBib3VuZHMgc2NhbGVkIGFuZCB0cmFuc2Zvcm1lZCBmb3IgdGhlIHByb3ZpZGVkIGB6b29tYC5cclxuICBcdGdldFByb2plY3RlZEJvdW5kczogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0aWYgKHRoaXMuaW5maW5pdGUpIHsgcmV0dXJuIG51bGw7IH1cclxuXHJcbiAgXHRcdHZhciBiID0gdGhpcy5wcm9qZWN0aW9uLmJvdW5kcyxcclxuICBcdFx0ICAgIHMgPSB0aGlzLnNjYWxlKHpvb20pLFxyXG4gIFx0XHQgICAgbWluID0gdGhpcy50cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0oYi5taW4sIHMpLFxyXG4gIFx0XHQgICAgbWF4ID0gdGhpcy50cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0oYi5tYXgsIHMpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMobWluLCBtYXgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGRpc3RhbmNlKGxhdGxuZzE6IExhdExuZywgbGF0bG5nMjogTGF0TG5nKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBkaXN0YW5jZSBiZXR3ZWVuIHR3byBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMuXHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGNvZGU6IFN0cmluZ1xyXG4gIFx0Ly8gU3RhbmRhcmQgY29kZSBuYW1lIG9mIHRoZSBDUlMgcGFzc2VkIGludG8gV01TIHNlcnZpY2VzIChlLmcuIGAnRVBTRzozODU3J2ApXHJcbiAgXHQvL1xyXG4gIFx0Ly8gQHByb3BlcnR5IHdyYXBMbmc6IE51bWJlcltdXHJcbiAgXHQvLyBBbiBhcnJheSBvZiB0d28gbnVtYmVycyBkZWZpbmluZyB3aGV0aGVyIHRoZSBsb25naXR1ZGUgKGhvcml6b250YWwpIGNvb3JkaW5hdGVcclxuICBcdC8vIGF4aXMgd3JhcHMgYXJvdW5kIGEgZ2l2ZW4gcmFuZ2UgYW5kIGhvdy4gRGVmYXVsdHMgdG8gYFstMTgwLCAxODBdYCBpbiBtb3N0XHJcbiAgXHQvLyBnZW9ncmFwaGljYWwgQ1JTcy4gSWYgYHVuZGVmaW5lZGAsIHRoZSBsb25naXR1ZGUgYXhpcyBkb2VzIG5vdCB3cmFwIGFyb3VuZC5cclxuICBcdC8vXHJcbiAgXHQvLyBAcHJvcGVydHkgd3JhcExhdDogTnVtYmVyW11cclxuICBcdC8vIExpa2UgYHdyYXBMbmdgLCBidXQgZm9yIHRoZSBsYXRpdHVkZSAodmVydGljYWwpIGF4aXMuXHJcblxyXG4gIFx0Ly8gd3JhcExuZzogW21pbiwgbWF4XSxcclxuICBcdC8vIHdyYXBMYXQ6IFttaW4sIG1heF0sXHJcblxyXG4gIFx0Ly8gQHByb3BlcnR5IGluZmluaXRlOiBCb29sZWFuXHJcbiAgXHQvLyBJZiB0cnVlLCB0aGUgY29vcmRpbmF0ZSBzcGFjZSB3aWxsIGJlIHVuYm91bmRlZCAoaW5maW5pdGUgaW4gYm90aCBheGVzKVxyXG4gIFx0aW5maW5pdGU6IGZhbHNlLFxyXG5cclxuICBcdC8vIEBtZXRob2Qgd3JhcExhdExuZyhsYXRsbmc6IExhdExuZyk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyBhIGBMYXRMbmdgIHdoZXJlIGxhdCBhbmQgbG5nIGhhcyBiZWVuIHdyYXBwZWQgYWNjb3JkaW5nIHRvIHRoZVxyXG4gIFx0Ly8gQ1JTJ3MgYHdyYXBMYXRgIGFuZCBgd3JhcExuZ2AgcHJvcGVydGllcywgaWYgdGhleSBhcmUgb3V0c2lkZSB0aGUgQ1JTJ3MgYm91bmRzLlxyXG4gIFx0d3JhcExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgbG5nID0gdGhpcy53cmFwTG5nID8gd3JhcE51bShsYXRsbmcubG5nLCB0aGlzLndyYXBMbmcsIHRydWUpIDogbGF0bG5nLmxuZyxcclxuICBcdFx0ICAgIGxhdCA9IHRoaXMud3JhcExhdCA/IHdyYXBOdW0obGF0bG5nLmxhdCwgdGhpcy53cmFwTGF0LCB0cnVlKSA6IGxhdGxuZy5sYXQsXHJcbiAgXHRcdCAgICBhbHQgPSBsYXRsbmcuYWx0O1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcobGF0LCBsbmcsIGFsdCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgd3JhcExhdExuZ0JvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcyk6IExhdExuZ0JvdW5kc1xyXG4gIFx0Ly8gUmV0dXJucyBhIGBMYXRMbmdCb3VuZHNgIHdpdGggdGhlIHNhbWUgc2l6ZSBhcyB0aGUgZ2l2ZW4gb25lLCBlbnN1cmluZ1xyXG4gIFx0Ly8gdGhhdCBpdHMgY2VudGVyIGlzIHdpdGhpbiB0aGUgQ1JTJ3MgYm91bmRzLlxyXG4gIFx0Ly8gT25seSBhY2NlcHRzIGFjdHVhbCBgTC5MYXRMbmdCb3VuZHNgIGluc3RhbmNlcywgbm90IGFycmF5cy5cclxuICBcdHdyYXBMYXRMbmdCb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMpIHtcclxuICBcdFx0dmFyIGNlbnRlciA9IGJvdW5kcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIG5ld0NlbnRlciA9IHRoaXMud3JhcExhdExuZyhjZW50ZXIpLFxyXG4gIFx0XHQgICAgbGF0U2hpZnQgPSBjZW50ZXIubGF0IC0gbmV3Q2VudGVyLmxhdCxcclxuICBcdFx0ICAgIGxuZ1NoaWZ0ID0gY2VudGVyLmxuZyAtIG5ld0NlbnRlci5sbmc7XHJcblxyXG4gIFx0XHRpZiAobGF0U2hpZnQgPT09IDAgJiYgbG5nU2hpZnQgPT09IDApIHtcclxuICBcdFx0XHRyZXR1cm4gYm91bmRzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc3cgPSBib3VuZHMuZ2V0U291dGhXZXN0KCksXHJcbiAgXHRcdCAgICBuZSA9IGJvdW5kcy5nZXROb3J0aEVhc3QoKSxcclxuICBcdFx0ICAgIG5ld1N3ID0gbmV3IExhdExuZyhzdy5sYXQgLSBsYXRTaGlmdCwgc3cubG5nIC0gbG5nU2hpZnQpLFxyXG4gIFx0XHQgICAgbmV3TmUgPSBuZXcgTGF0TG5nKG5lLmxhdCAtIGxhdFNoaWZ0LCBuZS5sbmcgLSBsbmdTaGlmdCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZ0JvdW5kcyhuZXdTdywgbmV3TmUpO1xyXG4gIFx0fVxyXG4gIH07XG5cbiAgLypcbiAgICogQG5hbWVzcGFjZSBDUlNcbiAgICogQGNycyBMLkNSUy5FYXJ0aFxuICAgKlxuICAgKiBTZXJ2ZXMgYXMgdGhlIGJhc2UgZm9yIENSUyB0aGF0IGFyZSBnbG9iYWwgc3VjaCB0aGF0IHRoZXkgY292ZXIgdGhlIGVhcnRoLlxuICAgKiBDYW4gb25seSBiZSB1c2VkIGFzIHRoZSBiYXNlIGZvciBvdGhlciBDUlMgYW5kIGNhbm5vdCBiZSB1c2VkIGRpcmVjdGx5LFxuICAgKiBzaW5jZSBpdCBkb2VzIG5vdCBoYXZlIGEgYGNvZGVgLCBgcHJvamVjdGlvbmAgb3IgYHRyYW5zZm9ybWF0aW9uYC4gYGRpc3RhbmNlKClgIHJldHVybnNcbiAgICogbWV0ZXJzLlxuICAgKi9cblxuICB2YXIgRWFydGggPSBleHRlbmQoe30sIENSUywge1xuICBcdHdyYXBMbmc6IFstMTgwLCAxODBdLFxuXG4gIFx0Ly8gTWVhbiBFYXJ0aCBSYWRpdXMsIGFzIHJlY29tbWVuZGVkIGZvciB1c2UgYnlcbiAgXHQvLyB0aGUgSW50ZXJuYXRpb25hbCBVbmlvbiBvZiBHZW9kZXN5IGFuZCBHZW9waHlzaWNzLFxuICBcdC8vIHNlZSBodHRwczovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0hhdmVyc2luZV9mb3JtdWxhXG4gIFx0UjogNjM3MTAwMCxcblxuICBcdC8vIGRpc3RhbmNlIGJldHdlZW4gdHdvIGdlb2dyYXBoaWNhbCBwb2ludHMgdXNpbmcgc3BoZXJpY2FsIGxhdyBvZiBjb3NpbmVzIGFwcHJveGltYXRpb25cbiAgXHRkaXN0YW5jZTogZnVuY3Rpb24gKGxhdGxuZzEsIGxhdGxuZzIpIHtcbiAgXHRcdHZhciByYWQgPSBNYXRoLlBJIC8gMTgwLFxuICBcdFx0ICAgIGxhdDEgPSBsYXRsbmcxLmxhdCAqIHJhZCxcbiAgXHRcdCAgICBsYXQyID0gbGF0bG5nMi5sYXQgKiByYWQsXG4gIFx0XHQgICAgc2luRExhdCA9IE1hdGguc2luKChsYXRsbmcyLmxhdCAtIGxhdGxuZzEubGF0KSAqIHJhZCAvIDIpLFxuICBcdFx0ICAgIHNpbkRMb24gPSBNYXRoLnNpbigobGF0bG5nMi5sbmcgLSBsYXRsbmcxLmxuZykgKiByYWQgLyAyKSxcbiAgXHRcdCAgICBhID0gc2luRExhdCAqIHNpbkRMYXQgKyBNYXRoLmNvcyhsYXQxKSAqIE1hdGguY29zKGxhdDIpICogc2luRExvbiAqIHNpbkRMb24sXG4gIFx0XHQgICAgYyA9IDIgKiBNYXRoLmF0YW4yKE1hdGguc3FydChhKSwgTWF0aC5zcXJ0KDEgLSBhKSk7XG4gIFx0XHRyZXR1cm4gdGhpcy5SICogYztcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXHJcbiAgICogQG5hbWVzcGFjZSBQcm9qZWN0aW9uXHJcbiAgICogQHByb2plY3Rpb24gTC5Qcm9qZWN0aW9uLlNwaGVyaWNhbE1lcmNhdG9yXHJcbiAgICpcclxuICAgKiBTcGhlcmljYWwgTWVyY2F0b3IgcHJvamVjdGlvbiDigJQgdGhlIG1vc3QgY29tbW9uIHByb2plY3Rpb24gZm9yIG9ubGluZSBtYXBzLFxyXG4gICAqIHVzZWQgYnkgYWxtb3N0IGFsbCBmcmVlIGFuZCBjb21tZXJjaWFsIHRpbGUgcHJvdmlkZXJzLiBBc3N1bWVzIHRoYXQgRWFydGggaXNcclxuICAgKiBhIHNwaGVyZS4gVXNlZCBieSB0aGUgYEVQU0c6Mzg1N2AgQ1JTLlxyXG4gICAqL1xyXG5cclxuICB2YXIgZWFydGhSYWRpdXMgPSA2Mzc4MTM3O1xyXG5cclxuICB2YXIgU3BoZXJpY2FsTWVyY2F0b3IgPSB7XHJcblxyXG4gIFx0UjogZWFydGhSYWRpdXMsXHJcbiAgXHRNQVhfTEFUSVRVREU6IDg1LjA1MTEyODc3OTgsXHJcblxyXG4gIFx0cHJvamVjdDogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgZCA9IE1hdGguUEkgLyAxODAsXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLk1BWF9MQVRJVFVERSxcclxuICBcdFx0ICAgIGxhdCA9IE1hdGgubWF4KE1hdGgubWluKG1heCwgbGF0bG5nLmxhdCksIC1tYXgpLFxyXG4gIFx0XHQgICAgc2luID0gTWF0aC5zaW4obGF0ICogZCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KFxyXG4gIFx0XHRcdHRoaXMuUiAqIGxhdGxuZy5sbmcgKiBkLFxyXG4gIFx0XHRcdHRoaXMuUiAqIE1hdGgubG9nKCgxICsgc2luKSAvICgxIC0gc2luKSkgLyAyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dmFyIGQgPSAxODAgLyBNYXRoLlBJO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcoXHJcbiAgXHRcdFx0KDIgKiBNYXRoLmF0YW4oTWF0aC5leHAocG9pbnQueSAvIHRoaXMuUikpIC0gKE1hdGguUEkgLyAyKSkgKiBkLFxyXG4gIFx0XHRcdHBvaW50LnggKiBkIC8gdGhpcy5SKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ym91bmRzOiAoZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgZCA9IGVhcnRoUmFkaXVzICogTWF0aC5QSTtcclxuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMoWy1kLCAtZF0sIFtkLCBkXSk7XHJcbiAgXHR9KSgpXHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBUcmFuc2Zvcm1hdGlvblxyXG4gICAqIEBha2EgTC5UcmFuc2Zvcm1hdGlvblxyXG4gICAqXHJcbiAgICogUmVwcmVzZW50cyBhbiBhZmZpbmUgdHJhbnNmb3JtYXRpb246IGEgc2V0IG9mIGNvZWZmaWNpZW50cyBgYWAsIGBiYCwgYGNgLCBgZGBcclxuICAgKiBmb3IgdHJhbnNmb3JtaW5nIGEgcG9pbnQgb2YgYSBmb3JtIGAoeCwgeSlgIGludG8gYChhKnggKyBiLCBjKnkgKyBkKWAgYW5kIGRvaW5nXHJcbiAgICogdGhlIHJldmVyc2UuIFVzZWQgYnkgTGVhZmxldCBpbiBpdHMgcHJvamVjdGlvbnMgY29kZS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciB0cmFuc2Zvcm1hdGlvbiA9IEwudHJhbnNmb3JtYXRpb24oMiwgNSwgLTEsIDEwKSxcclxuICAgKiBcdHAgPSBMLnBvaW50KDEsIDIpLFxyXG4gICAqIFx0cDIgPSB0cmFuc2Zvcm1hdGlvbi50cmFuc2Zvcm0ocCksIC8vICBMLnBvaW50KDcsIDgpXHJcbiAgICogXHRwMyA9IHRyYW5zZm9ybWF0aW9uLnVudHJhbnNmb3JtKHAyKTsgLy8gIEwucG9pbnQoMSwgMilcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIC8vIGZhY3RvcnkgbmV3IEwuVHJhbnNmb3JtYXRpb24oYTogTnVtYmVyLCBiOiBOdW1iZXIsIGM6IE51bWJlciwgZDogTnVtYmVyKVxyXG4gIC8vIENyZWF0ZXMgYSBgVHJhbnNmb3JtYXRpb25gIG9iamVjdCB3aXRoIHRoZSBnaXZlbiBjb2VmZmljaWVudHMuXHJcbiAgZnVuY3Rpb24gVHJhbnNmb3JtYXRpb24oYSwgYiwgYywgZCkge1xyXG4gIFx0aWYgKGlzQXJyYXkoYSkpIHtcclxuICBcdFx0Ly8gdXNlIGFycmF5IHByb3BlcnRpZXNcclxuICBcdFx0dGhpcy5fYSA9IGFbMF07XHJcbiAgXHRcdHRoaXMuX2IgPSBhWzFdO1xyXG4gIFx0XHR0aGlzLl9jID0gYVsyXTtcclxuICBcdFx0dGhpcy5fZCA9IGFbM107XHJcbiAgXHRcdHJldHVybjtcclxuICBcdH1cclxuICBcdHRoaXMuX2EgPSBhO1xyXG4gIFx0dGhpcy5fYiA9IGI7XHJcbiAgXHR0aGlzLl9jID0gYztcclxuICBcdHRoaXMuX2QgPSBkO1xyXG4gIH1cclxuXHJcbiAgVHJhbnNmb3JtYXRpb24ucHJvdG90eXBlID0ge1xyXG4gIFx0Ly8gQG1ldGhvZCB0cmFuc2Zvcm0ocG9pbnQ6IFBvaW50LCBzY2FsZT86IE51bWJlcik6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIGEgdHJhbnNmb3JtZWQgcG9pbnQsIG9wdGlvbmFsbHkgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gc2NhbGUuXHJcbiAgXHQvLyBPbmx5IGFjY2VwdHMgYWN0dWFsIGBMLlBvaW50YCBpbnN0YW5jZXMsIG5vdCBhcnJheXMuXHJcbiAgXHR0cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHsgLy8gKFBvaW50LCBOdW1iZXIpIC0+IFBvaW50XHJcbiAgXHRcdHJldHVybiB0aGlzLl90cmFuc2Zvcm0ocG9pbnQuY2xvbmUoKSwgc2NhbGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBkZXN0cnVjdGl2ZSB0cmFuc2Zvcm0gKGZhc3RlcilcclxuICBcdF90cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHtcclxuICBcdFx0c2NhbGUgPSBzY2FsZSB8fCAxO1xyXG4gIFx0XHRwb2ludC54ID0gc2NhbGUgKiAodGhpcy5fYSAqIHBvaW50LnggKyB0aGlzLl9iKTtcclxuICBcdFx0cG9pbnQueSA9IHNjYWxlICogKHRoaXMuX2MgKiBwb2ludC55ICsgdGhpcy5fZCk7XHJcbiAgXHRcdHJldHVybiBwb2ludDtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB1bnRyYW5zZm9ybShwb2ludDogUG9pbnQsIHNjYWxlPzogTnVtYmVyKTogUG9pbnRcclxuICBcdC8vIFJldHVybnMgdGhlIHJldmVyc2UgdHJhbnNmb3JtYXRpb24gb2YgdGhlIGdpdmVuIHBvaW50LCBvcHRpb25hbGx5IGRpdmlkZWRcclxuICBcdC8vIGJ5IHRoZSBnaXZlbiBzY2FsZS4gT25seSBhY2NlcHRzIGFjdHVhbCBgTC5Qb2ludGAgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxyXG4gIFx0dW50cmFuc2Zvcm06IGZ1bmN0aW9uIChwb2ludCwgc2NhbGUpIHtcclxuICBcdFx0c2NhbGUgPSBzY2FsZSB8fCAxO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvaW50KFxyXG4gIFx0XHQgICAgICAgIChwb2ludC54IC8gc2NhbGUgLSB0aGlzLl9iKSAvIHRoaXMuX2EsXHJcbiAgXHRcdCAgICAgICAgKHBvaW50LnkgLyBzY2FsZSAtIHRoaXMuX2QpIC8gdGhpcy5fYyk7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gZmFjdG9yeSBMLnRyYW5zZm9ybWF0aW9uKGE6IE51bWJlciwgYjogTnVtYmVyLCBjOiBOdW1iZXIsIGQ6IE51bWJlcilcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC50cmFuc2Zvcm1hdGlvbihhOiBOdW1iZXIsIGI6IE51bWJlciwgYzogTnVtYmVyLCBkOiBOdW1iZXIpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgVHJhbnNmb3JtYXRpb24gb2JqZWN0IHdpdGggdGhlIGdpdmVuIGNvZWZmaWNpZW50cy5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZhY3RvcnkgTC50cmFuc2Zvcm1hdGlvbihjb2VmZmljaWVudHM6IEFycmF5KTogVHJhbnNmb3JtYXRpb25cclxuICAvLyBFeHBlY3RzIGFuIGNvZWZmaWNpZW50cyBhcnJheSBvZiB0aGUgZm9ybVxyXG4gIC8vIGBbYTogTnVtYmVyLCBiOiBOdW1iZXIsIGM6IE51bWJlciwgZDogTnVtYmVyXWAuXHJcblxyXG4gIGZ1bmN0aW9uIHRvVHJhbnNmb3JtYXRpb24oYSwgYiwgYywgZCkge1xyXG4gIFx0cmV0dXJuIG5ldyBUcmFuc2Zvcm1hdGlvbihhLCBiLCBjLCBkKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuRVBTRzM4NTdcclxuICAgKlxyXG4gICAqIFRoZSBtb3N0IGNvbW1vbiBDUlMgZm9yIG9ubGluZSBtYXBzLCB1c2VkIGJ5IGFsbW9zdCBhbGwgZnJlZSBhbmQgY29tbWVyY2lhbFxyXG4gICAqIHRpbGUgcHJvdmlkZXJzLiBVc2VzIFNwaGVyaWNhbCBNZXJjYXRvciBwcm9qZWN0aW9uLiBTZXQgaW4gYnkgZGVmYXVsdCBpblxyXG4gICAqIE1hcCdzIGBjcnNgIG9wdGlvbi5cclxuICAgKi9cclxuXHJcbiAgdmFyIEVQU0czODU3ID0gZXh0ZW5kKHt9LCBFYXJ0aCwge1xyXG4gIFx0Y29kZTogJ0VQU0c6Mzg1NycsXHJcbiAgXHRwcm9qZWN0aW9uOiBTcGhlcmljYWxNZXJjYXRvcixcclxuXHJcbiAgXHR0cmFuc2Zvcm1hdGlvbjogKGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gMC41IC8gKE1hdGguUEkgKiBTcGhlcmljYWxNZXJjYXRvci5SKTtcclxuICBcdFx0cmV0dXJuIHRvVHJhbnNmb3JtYXRpb24oc2NhbGUsIDAuNSwgLXNjYWxlLCAwLjUpO1xyXG4gIFx0fSgpKVxyXG4gIH0pO1xyXG5cclxuICB2YXIgRVBTRzkwMDkxMyA9IGV4dGVuZCh7fSwgRVBTRzM4NTcsIHtcclxuICBcdGNvZGU6ICdFUFNHOjkwMDkxMydcclxuICB9KTtcblxuICAvLyBAbmFtZXNwYWNlIFNWRzsgQHNlY3Rpb25cbiAgLy8gVGhlcmUgYXJlIHNldmVyYWwgc3RhdGljIGZ1bmN0aW9ucyB3aGljaCBjYW4gYmUgY2FsbGVkIHdpdGhvdXQgaW5zdGFudGlhdGluZyBMLlNWRzpcblxuICAvLyBAZnVuY3Rpb24gY3JlYXRlKG5hbWU6IFN0cmluZyk6IFNWR0VsZW1lbnRcbiAgLy8gUmV0dXJucyBhIGluc3RhbmNlIG9mIFtTVkdFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvU1ZHRWxlbWVudCksXG4gIC8vIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNsYXNzIG5hbWUgcGFzc2VkLiBGb3IgZXhhbXBsZSwgdXNpbmcgJ2xpbmUnIHdpbGwgcmV0dXJuXG4gIC8vIGFuIGluc3RhbmNlIG9mIFtTVkdMaW5lRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL1NWR0xpbmVFbGVtZW50KS5cbiAgZnVuY3Rpb24gc3ZnQ3JlYXRlKG5hbWUpIHtcbiAgXHRyZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycsIG5hbWUpO1xuICB9XG5cbiAgLy8gQGZ1bmN0aW9uIHBvaW50c1RvUGF0aChyaW5nczogUG9pbnRbXSwgY2xvc2VkOiBCb29sZWFuKTogU3RyaW5nXG4gIC8vIEdlbmVyYXRlcyBhIFNWRyBwYXRoIHN0cmluZyBmb3IgbXVsdGlwbGUgcmluZ3MsIHdpdGggZWFjaCByaW5nIHR1cm5pbmdcbiAgLy8gaW50byBcIk0uLkwuLkwuLlwiIGluc3RydWN0aW9uc1xuICBmdW5jdGlvbiBwb2ludHNUb1BhdGgocmluZ3MsIGNsb3NlZCkge1xuICBcdHZhciBzdHIgPSAnJyxcbiAgXHRpLCBqLCBsZW4sIGxlbjIsIHBvaW50cywgcDtcblxuICBcdGZvciAoaSA9IDAsIGxlbiA9IHJpbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRwb2ludHMgPSByaW5nc1tpXTtcblxuICBcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBvaW50cy5sZW5ndGg7IGogPCBsZW4yOyBqKyspIHtcbiAgXHRcdFx0cCA9IHBvaW50c1tqXTtcbiAgXHRcdFx0c3RyICs9IChqID8gJ0wnIDogJ00nKSArIHAueCArICcgJyArIHAueTtcbiAgXHRcdH1cblxuICBcdFx0Ly8gY2xvc2VzIHRoZSByaW5nIGZvciBwb2x5Z29uczsgXCJ4XCIgaXMgVk1MIHN5bnRheFxuICBcdFx0c3RyICs9IGNsb3NlZCA/IChCcm93c2VyLnN2ZyA/ICd6JyA6ICd4JykgOiAnJztcbiAgXHR9XG5cbiAgXHQvLyBTVkcgY29tcGxhaW5zIGFib3V0IGVtcHR5IHBhdGggc3RyaW5nc1xuICBcdHJldHVybiBzdHIgfHwgJ00wIDAnO1xuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIEJyb3dzZXJcclxuICAgKiBAYWthIEwuQnJvd3NlclxyXG4gICAqXHJcbiAgICogQSBuYW1lc3BhY2Ugd2l0aCBzdGF0aWMgcHJvcGVydGllcyBmb3IgYnJvd3Nlci9mZWF0dXJlIGRldGVjdGlvbiB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseS5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIGlmIChMLkJyb3dzZXIuaWVsdDkpIHtcclxuICAgKiAgIGFsZXJ0KCdVcGdyYWRlIHlvdXIgYnJvd3NlciwgZHVkZSEnKTtcclxuICAgKiB9XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGllOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIGFsbCBJbnRlcm5ldCBFeHBsb3JlciB2ZXJzaW9ucyAobm90IEVkZ2UpLlxyXG4gIHZhciBpZSA9ICdBY3RpdmVYT2JqZWN0JyBpbiB3aW5kb3c7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBpZWx0OTogQm9vbGVhbjsgYHRydWVgIGZvciBJbnRlcm5ldCBFeHBsb3JlciB2ZXJzaW9ucyBsZXNzIHRoYW4gOS5cclxuICB2YXIgaWVsdDkgPSBpZSAmJiAhZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcjtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGVkZ2U6IEJvb2xlYW47IGB0cnVlYCBmb3IgdGhlIEVkZ2Ugd2ViIGJyb3dzZXIuXHJcbiAgdmFyIGVkZ2UgPSAnbXNMYXVuY2hVcmknIGluIG5hdmlnYXRvciAmJiAhKCdkb2N1bWVudE1vZGUnIGluIGRvY3VtZW50KTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHdlYmtpdDogQm9vbGVhbjtcclxuICAvLyBgdHJ1ZWAgZm9yIHdlYmtpdC1iYXNlZCBicm93c2VycyBsaWtlIENocm9tZSBhbmQgU2FmYXJpIChpbmNsdWRpbmcgbW9iaWxlIHZlcnNpb25zKS5cclxuICB2YXIgd2Via2l0ID0gdXNlckFnZW50Q29udGFpbnMoJ3dlYmtpdCcpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgYW5kcm9pZDogQm9vbGVhblxyXG4gIC8vICoqRGVwcmVjYXRlZC4qKiBgdHJ1ZWAgZm9yIGFueSBicm93c2VyIHJ1bm5pbmcgb24gYW4gQW5kcm9pZCBwbGF0Zm9ybS5cclxuICB2YXIgYW5kcm9pZCA9IHVzZXJBZ2VudENvbnRhaW5zKCdhbmRyb2lkJyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBhbmRyb2lkMjM6IEJvb2xlYW47ICoqRGVwcmVjYXRlZC4qKiBgdHJ1ZWAgZm9yIGJyb3dzZXJzIHJ1bm5pbmcgb24gQW5kcm9pZCAyIG9yIEFuZHJvaWQgMy5cclxuICB2YXIgYW5kcm9pZDIzID0gdXNlckFnZW50Q29udGFpbnMoJ2FuZHJvaWQgMicpIHx8IHVzZXJBZ2VudENvbnRhaW5zKCdhbmRyb2lkIDMnKTtcclxuXHJcbiAgLyogU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xNzk2MTI2NiBmb3IgZGV0YWlscyBvbiBkZXRlY3Rpbmcgc3RvY2sgQW5kcm9pZCAqL1xyXG4gIHZhciB3ZWJraXRWZXIgPSBwYXJzZUludCgvV2ViS2l0XFwvKFswLTldKyl8JC8uZXhlYyhuYXZpZ2F0b3IudXNlckFnZW50KVsxXSwgMTApOyAvLyBhbHNvIG1hdGNoZXMgQXBwbGVXZWJLaXRcclxuICAvLyBAcHJvcGVydHkgYW5kcm9pZFN0b2NrOiBCb29sZWFuOyAqKkRlcHJlY2F0ZWQuKiogYHRydWVgIGZvciB0aGUgQW5kcm9pZCBzdG9jayBicm93c2VyIChpLmUuIG5vdCBDaHJvbWUpXHJcbiAgdmFyIGFuZHJvaWRTdG9jayA9IGFuZHJvaWQgJiYgdXNlckFnZW50Q29udGFpbnMoJ0dvb2dsZScpICYmIHdlYmtpdFZlciA8IDUzNyAmJiAhKCdBdWRpb05vZGUnIGluIHdpbmRvdyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBvcGVyYTogQm9vbGVhbjsgYHRydWVgIGZvciB0aGUgT3BlcmEgYnJvd3NlclxyXG4gIHZhciBvcGVyYSA9ICEhd2luZG93Lm9wZXJhO1xyXG5cclxuICAvLyBAcHJvcGVydHkgY2hyb21lOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIHRoZSBDaHJvbWUgYnJvd3Nlci5cclxuICB2YXIgY2hyb21lID0gIWVkZ2UgJiYgdXNlckFnZW50Q29udGFpbnMoJ2Nocm9tZScpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgZ2Vja286IEJvb2xlYW47IGB0cnVlYCBmb3IgZ2Vja28tYmFzZWQgYnJvd3NlcnMgbGlrZSBGaXJlZm94LlxyXG4gIHZhciBnZWNrbyA9IHVzZXJBZ2VudENvbnRhaW5zKCdnZWNrbycpICYmICF3ZWJraXQgJiYgIW9wZXJhICYmICFpZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHNhZmFyaTogQm9vbGVhbjsgYHRydWVgIGZvciB0aGUgU2FmYXJpIGJyb3dzZXIuXHJcbiAgdmFyIHNhZmFyaSA9ICFjaHJvbWUgJiYgdXNlckFnZW50Q29udGFpbnMoJ3NhZmFyaScpO1xyXG5cclxuICB2YXIgcGhhbnRvbSA9IHVzZXJBZ2VudENvbnRhaW5zKCdwaGFudG9tJyk7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBvcGVyYTEyOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciB0aGUgT3BlcmEgYnJvd3NlciBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zICh2ZXJzaW9uIDEyIG9yIGxhdGVyKS5cclxuICB2YXIgb3BlcmExMiA9ICdPVHJhbnNpdGlvbicgaW4gc3R5bGU7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSB3aW46IEJvb2xlYW47IGB0cnVlYCB3aGVuIHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBXaW5kb3dzIHBsYXRmb3JtXHJcbiAgdmFyIHdpbiA9IG5hdmlnYXRvci5wbGF0Zm9ybS5pbmRleE9mKCdXaW4nKSA9PT0gMDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGllM2Q6IEJvb2xlYW47IGB0cnVlYCBmb3IgYWxsIEludGVybmV0IEV4cGxvcmVyIHZlcnNpb25zIHN1cHBvcnRpbmcgQ1NTIHRyYW5zZm9ybXMuXHJcbiAgdmFyIGllM2QgPSBpZSAmJiAoJ3RyYW5zaXRpb24nIGluIHN0eWxlKTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHdlYmtpdDNkOiBCb29sZWFuOyBgdHJ1ZWAgZm9yIHdlYmtpdC1iYXNlZCBicm93c2VycyBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zLlxyXG4gIHZhciB3ZWJraXQzZCA9ICgnV2ViS2l0Q1NTTWF0cml4JyBpbiB3aW5kb3cpICYmICgnbTExJyBpbiBuZXcgd2luZG93LldlYktpdENTU01hdHJpeCgpKSAmJiAhYW5kcm9pZDIzO1xyXG5cclxuICAvLyBAcHJvcGVydHkgZ2Vja28zZDogQm9vbGVhbjsgYHRydWVgIGZvciBnZWNrby1iYXNlZCBicm93c2VycyBzdXBwb3J0aW5nIENTUyB0cmFuc2Zvcm1zLlxyXG4gIHZhciBnZWNrbzNkID0gJ01velBlcnNwZWN0aXZlJyBpbiBzdHlsZTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IGFueTNkOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgc3VwcG9ydGluZyBDU1MgdHJhbnNmb3Jtcy5cclxuICB2YXIgYW55M2QgPSAhd2luZG93LkxfRElTQUJMRV8zRCAmJiAoaWUzZCB8fCB3ZWJraXQzZCB8fCBnZWNrbzNkKSAmJiAhb3BlcmExMiAmJiAhcGhhbnRvbTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IG1vYmlsZTogQm9vbGVhbjsgYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgcnVubmluZyBpbiBhIG1vYmlsZSBkZXZpY2UuXHJcbiAgdmFyIG1vYmlsZSA9IHR5cGVvZiBvcmllbnRhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgfHwgdXNlckFnZW50Q29udGFpbnMoJ21vYmlsZScpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlV2Via2l0OiBCb29sZWFuOyBgdHJ1ZWAgZm9yIGFsbCB3ZWJraXQtYmFzZWQgYnJvd3NlcnMgaW4gYSBtb2JpbGUgZGV2aWNlLlxyXG4gIHZhciBtb2JpbGVXZWJraXQgPSBtb2JpbGUgJiYgd2Via2l0O1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlV2Via2l0M2Q6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGFsbCB3ZWJraXQtYmFzZWQgYnJvd3NlcnMgaW4gYSBtb2JpbGUgZGV2aWNlIHN1cHBvcnRpbmcgQ1NTIHRyYW5zZm9ybXMuXHJcbiAgdmFyIG1vYmlsZVdlYmtpdDNkID0gbW9iaWxlICYmIHdlYmtpdDNkO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbXNQb2ludGVyOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBicm93c2VycyBpbXBsZW1lbnRpbmcgdGhlIE1pY3Jvc29mdCB0b3VjaCBldmVudHMgbW9kZWwgKG5vdGFibHkgSUUxMCkuXHJcbiAgdmFyIG1zUG9pbnRlciA9ICF3aW5kb3cuUG9pbnRlckV2ZW50ICYmIHdpbmRvdy5NU1BvaW50ZXJFdmVudDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHBvaW50ZXI6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGFsbCBicm93c2VycyBzdXBwb3J0aW5nIFtwb2ludGVyIGV2ZW50c10oaHR0cHM6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9kbjQzMzI0NCUyOHY9dnMuODUlMjkuYXNweCkuXHJcbiAgdmFyIHBvaW50ZXIgPSAhISh3aW5kb3cuUG9pbnRlckV2ZW50IHx8IG1zUG9pbnRlcik7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSB0b3VjaE5hdGl2ZTogQm9vbGVhblxyXG4gIC8vIGB0cnVlYCBmb3IgYWxsIGJyb3dzZXJzIHN1cHBvcnRpbmcgW3RvdWNoIGV2ZW50c10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL1RvdWNoX2V2ZW50cykuXHJcbiAgLy8gKipUaGlzIGRvZXMgbm90IG5lY2Vzc2FyaWx5IG1lYW4qKiB0aGF0IHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBjb21wdXRlciB3aXRoXHJcbiAgLy8gYSB0b3VjaHNjcmVlbiwgaXQgb25seSBtZWFucyB0aGF0IHRoZSBicm93c2VyIGlzIGNhcGFibGUgb2YgdW5kZXJzdGFuZGluZ1xyXG4gIC8vIHRvdWNoIGV2ZW50cy5cclxuICB2YXIgdG91Y2hOYXRpdmUgPSAnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHwgISF3aW5kb3cuVG91Y2hFdmVudDtcclxuXHJcbiAgLy8gQHByb3BlcnR5IHRvdWNoOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBhbGwgYnJvd3NlcnMgc3VwcG9ydGluZyBlaXRoZXIgW3RvdWNoXSgjYnJvd3Nlci10b3VjaCkgb3IgW3BvaW50ZXJdKCNicm93c2VyLXBvaW50ZXIpIGV2ZW50cy5cclxuICAvLyBOb3RlOiBwb2ludGVyIGV2ZW50cyB3aWxsIGJlIHByZWZlcnJlZCAoaWYgYXZhaWxhYmxlKSwgYW5kIHByb2Nlc3NlZCBmb3IgYWxsIGB0b3VjaCpgIGxpc3RlbmVycy5cclxuICB2YXIgdG91Y2ggPSAhd2luZG93LkxfTk9fVE9VQ0ggJiYgKHRvdWNoTmF0aXZlIHx8IHBvaW50ZXIpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbW9iaWxlT3BlcmE6IEJvb2xlYW47IGB0cnVlYCBmb3IgdGhlIE9wZXJhIGJyb3dzZXIgaW4gYSBtb2JpbGUgZGV2aWNlLlxyXG4gIHZhciBtb2JpbGVPcGVyYSA9IG1vYmlsZSAmJiBvcGVyYTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IG1vYmlsZUdlY2tvOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBnZWNrby1iYXNlZCBicm93c2VycyBydW5uaW5nIGluIGEgbW9iaWxlIGRldmljZS5cclxuICB2YXIgbW9iaWxlR2Vja28gPSBtb2JpbGUgJiYgZ2Vja287XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSByZXRpbmE6IEJvb2xlYW5cclxuICAvLyBgdHJ1ZWAgZm9yIGJyb3dzZXJzIG9uIGEgaGlnaC1yZXNvbHV0aW9uIFwicmV0aW5hXCIgc2NyZWVuIG9yIG9uIGFueSBzY3JlZW4gd2hlbiBicm93c2VyJ3MgZGlzcGxheSB6b29tIGlzIG1vcmUgdGhhbiAxMDAlLlxyXG4gIHZhciByZXRpbmEgPSAod2luZG93LmRldmljZVBpeGVsUmF0aW8gfHwgKHdpbmRvdy5zY3JlZW4uZGV2aWNlWERQSSAvIHdpbmRvdy5zY3JlZW4ubG9naWNhbFhEUEkpKSA+IDE7XHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBwYXNzaXZlRXZlbnRzOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGZvciBicm93c2VycyB0aGF0IHN1cHBvcnQgcGFzc2l2ZSBldmVudHMuXHJcbiAgdmFyIHBhc3NpdmVFdmVudHMgPSAoZnVuY3Rpb24gKCkge1xyXG4gIFx0dmFyIHN1cHBvcnRzUGFzc2l2ZU9wdGlvbiA9IGZhbHNlO1xyXG4gIFx0dHJ5IHtcclxuICBcdFx0dmFyIG9wdHMgPSBPYmplY3QuZGVmaW5lUHJvcGVydHkoe30sICdwYXNzaXZlJywge1xyXG4gIFx0XHRcdGdldDogZnVuY3Rpb24gKCkgeyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIGdldHRlci1yZXR1cm5cclxuICBcdFx0XHRcdHN1cHBvcnRzUGFzc2l2ZU9wdGlvbiA9IHRydWU7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9KTtcclxuICBcdFx0d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Rlc3RQYXNzaXZlRXZlbnRTdXBwb3J0JywgZmFsc2VGbiwgb3B0cyk7XHJcbiAgXHRcdHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCd0ZXN0UGFzc2l2ZUV2ZW50U3VwcG9ydCcsIGZhbHNlRm4sIG9wdHMpO1xyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHQvLyBFcnJvcnMgY2FuIHNhZmVseSBiZSBpZ25vcmVkIHNpbmNlIHRoaXMgaXMgb25seSBhIGJyb3dzZXIgc3VwcG9ydCB0ZXN0LlxyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIHN1cHBvcnRzUGFzc2l2ZU9wdGlvbjtcclxuICB9KCkpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgY2FudmFzOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIHdoZW4gdGhlIGJyb3dzZXIgc3VwcG9ydHMgW2A8Y2FudmFzPmBdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9DYW52YXNfQVBJKS5cclxuICB2YXIgY2FudmFzJDEgPSAoZnVuY3Rpb24gKCkge1xyXG4gIFx0cmV0dXJuICEhZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJykuZ2V0Q29udGV4dDtcclxuICB9KCkpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgc3ZnOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIHdoZW4gdGhlIGJyb3dzZXIgc3VwcG9ydHMgW1NWR10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHKS5cclxuICB2YXIgc3ZnJDEgPSAhIShkb2N1bWVudC5jcmVhdGVFbGVtZW50TlMgJiYgc3ZnQ3JlYXRlKCdzdmcnKS5jcmVhdGVTVkdSZWN0KTtcclxuXHJcbiAgdmFyIGlubGluZVN2ZyA9ICEhc3ZnJDEgJiYgKGZ1bmN0aW9uICgpIHtcclxuICBcdHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdGRpdi5pbm5lckhUTUwgPSAnPHN2Zy8+JztcclxuICBcdHJldHVybiAoZGl2LmZpcnN0Q2hpbGQgJiYgZGl2LmZpcnN0Q2hpbGQubmFtZXNwYWNlVVJJKSA9PT0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJztcclxuICB9KSgpO1xyXG5cclxuICAvLyBAcHJvcGVydHkgdm1sOiBCb29sZWFuXHJcbiAgLy8gYHRydWVgIGlmIHRoZSBicm93c2VyIHN1cHBvcnRzIFtWTUxdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZlY3Rvcl9NYXJrdXBfTGFuZ3VhZ2UpLlxyXG4gIHZhciB2bWwgPSAhc3ZnJDEgJiYgKGZ1bmN0aW9uICgpIHtcclxuICBcdHRyeSB7XHJcbiAgXHRcdHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdFx0ZGl2LmlubmVySFRNTCA9ICc8djpzaGFwZSBhZGo9XCIxXCIvPic7XHJcblxyXG4gIFx0XHR2YXIgc2hhcGUgPSBkaXYuZmlyc3RDaGlsZDtcclxuICBcdFx0c2hhcGUuc3R5bGUuYmVoYXZpb3IgPSAndXJsKCNkZWZhdWx0I1ZNTCknO1xyXG5cclxuICBcdFx0cmV0dXJuIHNoYXBlICYmICh0eXBlb2Ygc2hhcGUuYWRqID09PSAnb2JqZWN0Jyk7XHJcblxyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHRyZXR1cm4gZmFsc2U7XHJcbiAgXHR9XHJcbiAgfSgpKTtcclxuXHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBtYWM6IEJvb2xlYW47IGB0cnVlYCB3aGVuIHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgaW4gYSBNYWMgcGxhdGZvcm1cclxuICB2YXIgbWFjID0gbmF2aWdhdG9yLnBsYXRmb3JtLmluZGV4T2YoJ01hYycpID09PSAwO1xyXG5cclxuICAvLyBAcHJvcGVydHkgbWFjOiBCb29sZWFuOyBgdHJ1ZWAgd2hlbiB0aGUgYnJvd3NlciBpcyBydW5uaW5nIGluIGEgTGludXggcGxhdGZvcm1cclxuICB2YXIgbGludXggPSBuYXZpZ2F0b3IucGxhdGZvcm0uaW5kZXhPZignTGludXgnKSA9PT0gMDtcclxuXHJcbiAgZnVuY3Rpb24gdXNlckFnZW50Q29udGFpbnMoc3RyKSB7XHJcbiAgXHRyZXR1cm4gbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2Yoc3RyKSA+PSAwO1xyXG4gIH1cclxuXHJcblxyXG4gIHZhciBCcm93c2VyID0ge1xyXG4gIFx0aWU6IGllLFxyXG4gIFx0aWVsdDk6IGllbHQ5LFxyXG4gIFx0ZWRnZTogZWRnZSxcclxuICBcdHdlYmtpdDogd2Via2l0LFxyXG4gIFx0YW5kcm9pZDogYW5kcm9pZCxcclxuICBcdGFuZHJvaWQyMzogYW5kcm9pZDIzLFxyXG4gIFx0YW5kcm9pZFN0b2NrOiBhbmRyb2lkU3RvY2ssXHJcbiAgXHRvcGVyYTogb3BlcmEsXHJcbiAgXHRjaHJvbWU6IGNocm9tZSxcclxuICBcdGdlY2tvOiBnZWNrbyxcclxuICBcdHNhZmFyaTogc2FmYXJpLFxyXG4gIFx0cGhhbnRvbTogcGhhbnRvbSxcclxuICBcdG9wZXJhMTI6IG9wZXJhMTIsXHJcbiAgXHR3aW46IHdpbixcclxuICBcdGllM2Q6IGllM2QsXHJcbiAgXHR3ZWJraXQzZDogd2Via2l0M2QsXHJcbiAgXHRnZWNrbzNkOiBnZWNrbzNkLFxyXG4gIFx0YW55M2Q6IGFueTNkLFxyXG4gIFx0bW9iaWxlOiBtb2JpbGUsXHJcbiAgXHRtb2JpbGVXZWJraXQ6IG1vYmlsZVdlYmtpdCxcclxuICBcdG1vYmlsZVdlYmtpdDNkOiBtb2JpbGVXZWJraXQzZCxcclxuICBcdG1zUG9pbnRlcjogbXNQb2ludGVyLFxyXG4gIFx0cG9pbnRlcjogcG9pbnRlcixcclxuICBcdHRvdWNoOiB0b3VjaCxcclxuICBcdHRvdWNoTmF0aXZlOiB0b3VjaE5hdGl2ZSxcclxuICBcdG1vYmlsZU9wZXJhOiBtb2JpbGVPcGVyYSxcclxuICBcdG1vYmlsZUdlY2tvOiBtb2JpbGVHZWNrbyxcclxuICBcdHJldGluYTogcmV0aW5hLFxyXG4gIFx0cGFzc2l2ZUV2ZW50czogcGFzc2l2ZUV2ZW50cyxcclxuICBcdGNhbnZhczogY2FudmFzJDEsXHJcbiAgXHRzdmc6IHN2ZyQxLFxyXG4gIFx0dm1sOiB2bWwsXHJcbiAgXHRpbmxpbmVTdmc6IGlubGluZVN2ZyxcclxuICBcdG1hYzogbWFjLFxyXG4gIFx0bGludXg6IGxpbnV4XHJcbiAgfTtcblxuICAvKlxuICAgKiBFeHRlbmRzIEwuRG9tRXZlbnQgdG8gcHJvdmlkZSB0b3VjaCBzdXBwb3J0IGZvciBJbnRlcm5ldCBFeHBsb3JlciBhbmQgV2luZG93cy1iYXNlZCBkZXZpY2VzLlxuICAgKi9cblxuICB2YXIgUE9JTlRFUl9ET1dOID0gICBCcm93c2VyLm1zUG9pbnRlciA/ICdNU1BvaW50ZXJEb3duJyAgIDogJ3BvaW50ZXJkb3duJztcbiAgdmFyIFBPSU5URVJfTU9WRSA9ICAgQnJvd3Nlci5tc1BvaW50ZXIgPyAnTVNQb2ludGVyTW92ZScgICA6ICdwb2ludGVybW92ZSc7XG4gIHZhciBQT0lOVEVSX1VQID0gICAgIEJyb3dzZXIubXNQb2ludGVyID8gJ01TUG9pbnRlclVwJyAgICAgOiAncG9pbnRlcnVwJztcbiAgdmFyIFBPSU5URVJfQ0FOQ0VMID0gQnJvd3Nlci5tc1BvaW50ZXIgPyAnTVNQb2ludGVyQ2FuY2VsJyA6ICdwb2ludGVyY2FuY2VsJztcbiAgdmFyIHBFdmVudCA9IHtcbiAgXHR0b3VjaHN0YXJ0ICA6IFBPSU5URVJfRE9XTixcbiAgXHR0b3VjaG1vdmUgICA6IFBPSU5URVJfTU9WRSxcbiAgXHR0b3VjaGVuZCAgICA6IFBPSU5URVJfVVAsXG4gIFx0dG91Y2hjYW5jZWwgOiBQT0lOVEVSX0NBTkNFTFxuICB9O1xuICB2YXIgaGFuZGxlID0ge1xuICBcdHRvdWNoc3RhcnQgIDogX29uUG9pbnRlclN0YXJ0LFxuICBcdHRvdWNobW92ZSAgIDogX2hhbmRsZVBvaW50ZXIsXG4gIFx0dG91Y2hlbmQgICAgOiBfaGFuZGxlUG9pbnRlcixcbiAgXHR0b3VjaGNhbmNlbCA6IF9oYW5kbGVQb2ludGVyXG4gIH07XG4gIHZhciBfcG9pbnRlcnMgPSB7fTtcbiAgdmFyIF9wb2ludGVyRG9jTGlzdGVuZXIgPSBmYWxzZTtcblxuICAvLyBQcm92aWRlcyBhIHRvdWNoIGV2ZW50cyB3cmFwcGVyIGZvciAobXMpcG9pbnRlciBldmVudHMuXG4gIC8vIHJlZiBodHRwczovL3d3dy53My5vcmcvVFIvcG9pbnRlcmV2ZW50cy8gaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3dfYnVnLmNnaT9pZD0yMjg5MFxuXG4gIGZ1bmN0aW9uIGFkZFBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpIHtcbiAgXHRpZiAodHlwZSA9PT0gJ3RvdWNoc3RhcnQnKSB7XG4gIFx0XHRfYWRkUG9pbnRlckRvY0xpc3RlbmVyKCk7XG4gIFx0fVxuICBcdGlmICghaGFuZGxlW3R5cGVdKSB7XG4gIFx0XHRjb25zb2xlLndhcm4oJ3dyb25nIGV2ZW50IHNwZWNpZmllZDonLCB0eXBlKTtcbiAgXHRcdHJldHVybiBmYWxzZUZuO1xuICBcdH1cbiAgXHRoYW5kbGVyID0gaGFuZGxlW3R5cGVdLmJpbmQodGhpcywgaGFuZGxlcik7XG4gIFx0b2JqLmFkZEV2ZW50TGlzdGVuZXIocEV2ZW50W3R5cGVdLCBoYW5kbGVyLCBmYWxzZSk7XG4gIFx0cmV0dXJuIGhhbmRsZXI7XG4gIH1cblxuICBmdW5jdGlvbiByZW1vdmVQb2ludGVyTGlzdGVuZXIob2JqLCB0eXBlLCBoYW5kbGVyKSB7XG4gIFx0aWYgKCFwRXZlbnRbdHlwZV0pIHtcbiAgXHRcdGNvbnNvbGUud2Fybignd3JvbmcgZXZlbnQgc3BlY2lmaWVkOicsIHR5cGUpO1xuICBcdFx0cmV0dXJuO1xuICBcdH1cbiAgXHRvYmoucmVtb3ZlRXZlbnRMaXN0ZW5lcihwRXZlbnRbdHlwZV0sIGhhbmRsZXIsIGZhbHNlKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIF9nbG9iYWxQb2ludGVyRG93bihlKSB7XG4gIFx0X3BvaW50ZXJzW2UucG9pbnRlcklkXSA9IGU7XG4gIH1cblxuICBmdW5jdGlvbiBfZ2xvYmFsUG9pbnRlck1vdmUoZSkge1xuICBcdGlmIChfcG9pbnRlcnNbZS5wb2ludGVySWRdKSB7XG4gIFx0XHRfcG9pbnRlcnNbZS5wb2ludGVySWRdID0gZTtcbiAgXHR9XG4gIH1cblxuICBmdW5jdGlvbiBfZ2xvYmFsUG9pbnRlclVwKGUpIHtcbiAgXHRkZWxldGUgX3BvaW50ZXJzW2UucG9pbnRlcklkXTtcbiAgfVxuXG4gIGZ1bmN0aW9uIF9hZGRQb2ludGVyRG9jTGlzdGVuZXIoKSB7XG4gIFx0Ly8gbmVlZCB0byBrZWVwIHRyYWNrIG9mIHdoYXQgcG9pbnRlcnMgYW5kIGhvdyBtYW55IGFyZSBhY3RpdmUgdG8gcHJvdmlkZSBlLnRvdWNoZXMgZW11bGF0aW9uXG4gIFx0aWYgKCFfcG9pbnRlckRvY0xpc3RlbmVyKSB7XG4gIFx0XHQvLyB3ZSBsaXN0ZW4gZG9jdW1lbnQgYXMgYW55IGRyYWdzIHRoYXQgZW5kIGJ5IG1vdmluZyB0aGUgdG91Y2ggb2ZmIHRoZSBzY3JlZW4gZ2V0IGZpcmVkIHRoZXJlXG4gIFx0XHRkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFBPSU5URVJfRE9XTiwgX2dsb2JhbFBvaW50ZXJEb3duLCB0cnVlKTtcbiAgXHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoUE9JTlRFUl9NT1ZFLCBfZ2xvYmFsUG9pbnRlck1vdmUsIHRydWUpO1xuICBcdFx0ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihQT0lOVEVSX1VQLCBfZ2xvYmFsUG9pbnRlclVwLCB0cnVlKTtcbiAgXHRcdGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoUE9JTlRFUl9DQU5DRUwsIF9nbG9iYWxQb2ludGVyVXAsIHRydWUpO1xuXG4gIFx0XHRfcG9pbnRlckRvY0xpc3RlbmVyID0gdHJ1ZTtcbiAgXHR9XG4gIH1cblxuICBmdW5jdGlvbiBfaGFuZGxlUG9pbnRlcihoYW5kbGVyLCBlKSB7XG4gIFx0aWYgKGUucG9pbnRlclR5cGUgPT09IChlLk1TUE9JTlRFUl9UWVBFX01PVVNFIHx8ICdtb3VzZScpKSB7IHJldHVybjsgfVxuXG4gIFx0ZS50b3VjaGVzID0gW107XG4gIFx0Zm9yICh2YXIgaSBpbiBfcG9pbnRlcnMpIHtcbiAgXHRcdGUudG91Y2hlcy5wdXNoKF9wb2ludGVyc1tpXSk7XG4gIFx0fVxuICBcdGUuY2hhbmdlZFRvdWNoZXMgPSBbZV07XG5cbiAgXHRoYW5kbGVyKGUpO1xuICB9XG5cbiAgZnVuY3Rpb24gX29uUG9pbnRlclN0YXJ0KGhhbmRsZXIsIGUpIHtcbiAgXHQvLyBJRTEwIHNwZWNpZmljOiBNc1RvdWNoIG5lZWRzIHByZXZlbnREZWZhdWx0LiBTZWUgIzIwMDBcbiAgXHRpZiAoZS5NU1BPSU5URVJfVFlQRV9UT1VDSCAmJiBlLnBvaW50ZXJUeXBlID09PSBlLk1TUE9JTlRFUl9UWVBFX1RPVUNIKSB7XG4gIFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcbiAgXHR9XG4gIFx0X2hhbmRsZVBvaW50ZXIoaGFuZGxlciwgZSk7XG4gIH1cblxuICAvKlxyXG4gICAqIEV4dGVuZHMgdGhlIGV2ZW50IGhhbmRsaW5nIGNvZGUgd2l0aCBkb3VibGUgdGFwIHN1cHBvcnQgZm9yIG1vYmlsZSBicm93c2Vycy5cclxuICAgKlxyXG4gICAqIE5vdGU6IGN1cnJlbnRseSBtb3N0IGJyb3dzZXJzIGZpcmUgbmF0aXZlIGRibGNsaWNrLCB3aXRoIG9ubHkgYSBmZXcgZXhjZXB0aW9uc1xyXG4gICAqIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL0xlYWZsZXQvTGVhZmxldC9pc3N1ZXMvNzAxMiNpc3N1ZWNvbW1lbnQtNTk1MDg3Mzg2KVxyXG4gICAqL1xyXG5cclxuICBmdW5jdGlvbiBtYWtlRGJsY2xpY2soZXZlbnQpIHtcclxuICBcdC8vIGluIG1vZGVybiBicm93c2VycyBgdHlwZWAgY2Fubm90IGJlIGp1c3Qgb3ZlcnJpZGRlbjpcclxuICBcdC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0Vycm9ycy9HZXR0ZXJfb25seVxyXG4gIFx0dmFyIG5ld0V2ZW50ID0ge30sXHJcbiAgXHQgICAgcHJvcCwgaTtcclxuICBcdGZvciAoaSBpbiBldmVudCkge1xyXG4gIFx0XHRwcm9wID0gZXZlbnRbaV07XHJcbiAgXHRcdG5ld0V2ZW50W2ldID0gcHJvcCAmJiBwcm9wLmJpbmQgPyBwcm9wLmJpbmQoZXZlbnQpIDogcHJvcDtcclxuICBcdH1cclxuICBcdGV2ZW50ID0gbmV3RXZlbnQ7XHJcbiAgXHRuZXdFdmVudC50eXBlID0gJ2RibGNsaWNrJztcclxuICBcdG5ld0V2ZW50LmRldGFpbCA9IDI7XHJcbiAgXHRuZXdFdmVudC5pc1RydXN0ZWQgPSBmYWxzZTtcclxuICBcdG5ld0V2ZW50Ll9zaW11bGF0ZWQgPSB0cnVlOyAvLyBmb3IgZGVidWcgcHVycG9zZXNcclxuICBcdHJldHVybiBuZXdFdmVudDtcclxuICB9XHJcblxyXG4gIHZhciBkZWxheSA9IDIwMDtcclxuICBmdW5jdGlvbiBhZGREb3VibGVUYXBMaXN0ZW5lcihvYmosIGhhbmRsZXIpIHtcclxuICBcdC8vIE1vc3QgYnJvd3NlcnMgaGFuZGxlIGRvdWJsZSB0YXAgbmF0aXZlbHlcclxuICBcdG9iai5hZGRFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIGhhbmRsZXIpO1xyXG5cclxuICBcdC8vIE9uIHNvbWUgcGxhdGZvcm1zIHRoZSBicm93c2VyIGRvZXNuJ3QgZmlyZSBuYXRpdmUgZGJsY2xpY2tzIGZvciB0b3VjaCBldmVudHMuXHJcbiAgXHQvLyBJdCBzZWVtcyB0aGF0IGluIGFsbCBzdWNoIGNhc2VzIGBkZXRhaWxgIHByb3BlcnR5IG9mIGBjbGlja2AgZXZlbnQgaXMgYWx3YXlzIGAxYC5cclxuICBcdC8vIFNvIGhlcmUgd2UgcmVseSBvbiB0aGF0IGZhY3QgdG8gYXZvaWQgZXhjZXNzaXZlICdkYmxjbGljaycgc2ltdWxhdGlvbiB3aGVuIG5vdCBuZWVkZWQuXHJcbiAgXHR2YXIgbGFzdCA9IDAsXHJcbiAgXHQgICAgZGV0YWlsO1xyXG4gIFx0ZnVuY3Rpb24gc2ltRGJsY2xpY2soZSkge1xyXG4gIFx0XHRpZiAoZS5kZXRhaWwgIT09IDEpIHtcclxuICBcdFx0XHRkZXRhaWwgPSBlLmRldGFpbDsgLy8ga2VlcCBpbiBzeW5jIHRvIGF2b2lkIGZhbHNlIGRibGNsaWNrIGluIHNvbWUgY2FzZXNcclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChlLnBvaW50ZXJUeXBlID09PSAnbW91c2UnIHx8XHJcbiAgXHRcdFx0KGUuc291cmNlQ2FwYWJpbGl0aWVzICYmICFlLnNvdXJjZUNhcGFiaWxpdGllcy5maXJlc1RvdWNoRXZlbnRzKSkge1xyXG5cclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIFdoZW4gY2xpY2tpbmcgb24gYW4gPGlucHV0PiwgdGhlIGJyb3dzZXIgZ2VuZXJhdGVzIGEgY2xpY2sgb24gaXRzXHJcbiAgXHRcdC8vIDxsYWJlbD4gKGFuZCB2aWNlIHZlcnNhKSB0cmlnZ2VyaW5nIHR3byBjbGlja3MgaW4gcXVpY2sgc3VjY2Vzc2lvbi5cclxuICBcdFx0Ly8gVGhpcyBpZ25vcmVzIGNsaWNrcyBvbiBlbGVtZW50cyB3aGljaCBhcmUgYSBsYWJlbCB3aXRoIGEgJ2ZvcidcclxuICBcdFx0Ly8gYXR0cmlidXRlIChvciBjaGlsZHJlbiBvZiBzdWNoIGEgbGFiZWwpLCBidXQgbm90IGNoaWxkcmVuIG9mXHJcbiAgXHRcdC8vIGEgPGlucHV0Pi5cclxuICBcdFx0dmFyIHBhdGggPSBnZXRQcm9wYWdhdGlvblBhdGgoZSk7XHJcbiAgXHRcdGlmIChwYXRoLnNvbWUoZnVuY3Rpb24gKGVsKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGVsIGluc3RhbmNlb2YgSFRNTExhYmVsRWxlbWVudCAmJiBlbC5hdHRyaWJ1dGVzLmZvcjtcclxuICBcdFx0fSkgJiZcclxuICBcdFx0XHQhcGF0aC5zb21lKGZ1bmN0aW9uIChlbCkge1xyXG4gIFx0XHRcdFx0cmV0dXJuIChcclxuICBcdFx0XHRcdFx0ZWwgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50IHx8XHJcbiAgXHRcdFx0XHRcdGVsIGluc3RhbmNlb2YgSFRNTFNlbGVjdEVsZW1lbnRcclxuICBcdFx0XHRcdCk7XHJcbiAgXHRcdFx0fSlcclxuICBcdFx0KSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbm93ID0gRGF0ZS5ub3coKTtcclxuICBcdFx0aWYgKG5vdyAtIGxhc3QgPD0gZGVsYXkpIHtcclxuICBcdFx0XHRkZXRhaWwrKztcclxuICBcdFx0XHRpZiAoZGV0YWlsID09PSAyKSB7XHJcbiAgXHRcdFx0XHRoYW5kbGVyKG1ha2VEYmxjbGljayhlKSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdGRldGFpbCA9IDE7XHJcbiAgXHRcdH1cclxuICBcdFx0bGFzdCA9IG5vdztcclxuICBcdH1cclxuXHJcbiAgXHRvYmouYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBzaW1EYmxjbGljayk7XHJcblxyXG4gIFx0cmV0dXJuIHtcclxuICBcdFx0ZGJsY2xpY2s6IGhhbmRsZXIsXHJcbiAgXHRcdHNpbURibGNsaWNrOiBzaW1EYmxjbGlja1xyXG4gIFx0fTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHJlbW92ZURvdWJsZVRhcExpc3RlbmVyKG9iaiwgaGFuZGxlcnMpIHtcclxuICBcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIGhhbmRsZXJzLmRibGNsaWNrKTtcclxuICBcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIGhhbmRsZXJzLnNpbURibGNsaWNrKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIERvbVV0aWxcclxuICAgKlxyXG4gICAqIFV0aWxpdHkgZnVuY3Rpb25zIHRvIHdvcmsgd2l0aCB0aGUgW0RPTV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0RvY3VtZW50X09iamVjdF9Nb2RlbClcclxuICAgKiB0cmVlLCB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseS5cclxuICAgKlxyXG4gICAqIE1vc3QgZnVuY3Rpb25zIGV4cGVjdGluZyBvciByZXR1cm5pbmcgYSBgSFRNTEVsZW1lbnRgIGFsc28gd29yayBmb3JcclxuICAgKiBTVkcgZWxlbWVudHMuIFRoZSBvbmx5IGRpZmZlcmVuY2UgaXMgdGhhdCBjbGFzc2VzIHJlZmVyIHRvIENTUyBjbGFzc2VzXHJcbiAgICogaW4gSFRNTCBhbmQgU1ZHIGNsYXNzZXMgaW4gU1ZHLlxyXG4gICAqL1xyXG5cclxuXHJcbiAgLy8gQHByb3BlcnR5IFRSQU5TRk9STTogU3RyaW5nXHJcbiAgLy8gVmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybSBzdHlsZSBuYW1lIChlLmcuIGAnd2Via2l0VHJhbnNmb3JtJ2AgZm9yIFdlYktpdCkuXHJcbiAgdmFyIFRSQU5TRk9STSA9IHRlc3RQcm9wKFxyXG4gIFx0Wyd0cmFuc2Zvcm0nLCAnd2Via2l0VHJhbnNmb3JtJywgJ09UcmFuc2Zvcm0nLCAnTW96VHJhbnNmb3JtJywgJ21zVHJhbnNmb3JtJ10pO1xyXG5cclxuICAvLyB3ZWJraXRUcmFuc2l0aW9uIGNvbWVzIGZpcnN0IGJlY2F1c2Ugc29tZSBicm93c2VyIHZlcnNpb25zIHRoYXQgZHJvcCB2ZW5kb3IgcHJlZml4IGRvbid0IGRvXHJcbiAgLy8gdGhlIHNhbWUgZm9yIHRoZSB0cmFuc2l0aW9uZW5kIGV2ZW50LCBpbiBwYXJ0aWN1bGFyIHRoZSBBbmRyb2lkIDQuMSBzdG9jayBicm93c2VyXHJcblxyXG4gIC8vIEBwcm9wZXJ0eSBUUkFOU0lUSU9OOiBTdHJpbmdcclxuICAvLyBWZW5kb3ItcHJlZml4ZWQgdHJhbnNpdGlvbiBzdHlsZSBuYW1lLlxyXG4gIHZhciBUUkFOU0lUSU9OID0gdGVzdFByb3AoXHJcbiAgXHRbJ3dlYmtpdFRyYW5zaXRpb24nLCAndHJhbnNpdGlvbicsICdPVHJhbnNpdGlvbicsICdNb3pUcmFuc2l0aW9uJywgJ21zVHJhbnNpdGlvbiddKTtcclxuXHJcbiAgLy8gQHByb3BlcnR5IFRSQU5TSVRJT05fRU5EOiBTdHJpbmdcclxuICAvLyBWZW5kb3ItcHJlZml4ZWQgdHJhbnNpdGlvbmVuZCBldmVudCBuYW1lLlxyXG4gIHZhciBUUkFOU0lUSU9OX0VORCA9XHJcbiAgXHRUUkFOU0lUSU9OID09PSAnd2Via2l0VHJhbnNpdGlvbicgfHwgVFJBTlNJVElPTiA9PT0gJ09UcmFuc2l0aW9uJyA/IFRSQU5TSVRJT04gKyAnRW5kJyA6ICd0cmFuc2l0aW9uZW5kJztcclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXQoaWQ6IFN0cmluZ3xIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50XHJcbiAgLy8gUmV0dXJucyBhbiBlbGVtZW50IGdpdmVuIGl0cyBET00gaWQsIG9yIHJldHVybnMgdGhlIGVsZW1lbnQgaXRzZWxmXHJcbiAgLy8gaWYgaXQgd2FzIHBhc3NlZCBkaXJlY3RseS5cclxuICBmdW5jdGlvbiBnZXQoaWQpIHtcclxuICBcdHJldHVybiB0eXBlb2YgaWQgPT09ICdzdHJpbmcnID8gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpIDogaWQ7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZ2V0U3R5bGUoZWw6IEhUTUxFbGVtZW50LCBzdHlsZUF0dHJpYjogU3RyaW5nKTogU3RyaW5nXHJcbiAgLy8gUmV0dXJucyB0aGUgdmFsdWUgZm9yIGEgY2VydGFpbiBzdHlsZSBhdHRyaWJ1dGUgb24gYW4gZWxlbWVudCxcclxuICAvLyBpbmNsdWRpbmcgY29tcHV0ZWQgdmFsdWVzIG9yIHZhbHVlcyBzZXQgdGhyb3VnaCBDU1MuXHJcbiAgZnVuY3Rpb24gZ2V0U3R5bGUoZWwsIHN0eWxlKSB7XHJcbiAgXHR2YXIgdmFsdWUgPSBlbC5zdHlsZVtzdHlsZV0gfHwgKGVsLmN1cnJlbnRTdHlsZSAmJiBlbC5jdXJyZW50U3R5bGVbc3R5bGVdKTtcclxuXHJcbiAgXHRpZiAoKCF2YWx1ZSB8fCB2YWx1ZSA9PT0gJ2F1dG8nKSAmJiBkb2N1bWVudC5kZWZhdWx0Vmlldykge1xyXG4gIFx0XHR2YXIgY3NzID0gZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShlbCwgbnVsbCk7XHJcbiAgXHRcdHZhbHVlID0gY3NzID8gY3NzW3N0eWxlXSA6IG51bGw7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdmFsdWUgPT09ICdhdXRvJyA/IG51bGwgOiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjcmVhdGUodGFnTmFtZTogU3RyaW5nLCBjbGFzc05hbWU/OiBTdHJpbmcsIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICAvLyBDcmVhdGVzIGFuIEhUTUwgZWxlbWVudCB3aXRoIGB0YWdOYW1lYCwgc2V0cyBpdHMgY2xhc3MgdG8gYGNsYXNzTmFtZWAsIGFuZCBvcHRpb25hbGx5IGFwcGVuZHMgaXQgdG8gYGNvbnRhaW5lcmAgZWxlbWVudC5cclxuICBmdW5jdGlvbiBjcmVhdGUkMSh0YWdOYW1lLCBjbGFzc05hbWUsIGNvbnRhaW5lcikge1xyXG4gIFx0dmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTtcclxuICBcdGVsLmNsYXNzTmFtZSA9IGNsYXNzTmFtZSB8fCAnJztcclxuXHJcbiAgXHRpZiAoY29udGFpbmVyKSB7XHJcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChlbCk7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gZWw7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVtb3ZlKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBSZW1vdmVzIGBlbGAgZnJvbSBpdHMgcGFyZW50IGVsZW1lbnRcclxuICBmdW5jdGlvbiByZW1vdmUoZWwpIHtcclxuICBcdHZhciBwYXJlbnQgPSBlbC5wYXJlbnROb2RlO1xyXG4gIFx0aWYgKHBhcmVudCkge1xyXG4gIFx0XHRwYXJlbnQucmVtb3ZlQ2hpbGQoZWwpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGVtcHR5KGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBSZW1vdmVzIGFsbCBvZiBgZWxgJ3MgY2hpbGRyZW4gZWxlbWVudHMgZnJvbSBgZWxgXHJcbiAgZnVuY3Rpb24gZW1wdHkoZWwpIHtcclxuICBcdHdoaWxlIChlbC5maXJzdENoaWxkKSB7XHJcbiAgXHRcdGVsLnJlbW92ZUNoaWxkKGVsLmZpcnN0Q2hpbGQpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHRvRnJvbnQoZWw6IEhUTUxFbGVtZW50KVxyXG4gIC8vIE1ha2VzIGBlbGAgdGhlIGxhc3QgY2hpbGQgb2YgaXRzIHBhcmVudCwgc28gaXQgcmVuZGVycyBpbiBmcm9udCBvZiB0aGUgb3RoZXIgY2hpbGRyZW4uXHJcbiAgZnVuY3Rpb24gdG9Gcm9udChlbCkge1xyXG4gIFx0dmFyIHBhcmVudCA9IGVsLnBhcmVudE5vZGU7XHJcbiAgXHRpZiAocGFyZW50ICYmIHBhcmVudC5sYXN0Q2hpbGQgIT09IGVsKSB7XHJcbiAgXHRcdHBhcmVudC5hcHBlbmRDaGlsZChlbCk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdG9CYWNrKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBNYWtlcyBgZWxgIHRoZSBmaXJzdCBjaGlsZCBvZiBpdHMgcGFyZW50LCBzbyBpdCByZW5kZXJzIGJlaGluZCB0aGUgb3RoZXIgY2hpbGRyZW4uXHJcbiAgZnVuY3Rpb24gdG9CYWNrKGVsKSB7XHJcbiAgXHR2YXIgcGFyZW50ID0gZWwucGFyZW50Tm9kZTtcclxuICBcdGlmIChwYXJlbnQgJiYgcGFyZW50LmZpcnN0Q2hpbGQgIT09IGVsKSB7XHJcbiAgXHRcdHBhcmVudC5pbnNlcnRCZWZvcmUoZWwsIHBhcmVudC5maXJzdENoaWxkKTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBoYXNDbGFzcyhlbDogSFRNTEVsZW1lbnQsIG5hbWU6IFN0cmluZyk6IEJvb2xlYW5cclxuICAvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgZWxlbWVudCdzIGNsYXNzIGF0dHJpYnV0ZSBjb250YWlucyBgbmFtZWAuXHJcbiAgZnVuY3Rpb24gaGFzQ2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc0xpc3QgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRyZXR1cm4gZWwuY2xhc3NMaXN0LmNvbnRhaW5zKG5hbWUpO1xyXG4gIFx0fVxyXG4gIFx0dmFyIGNsYXNzTmFtZSA9IGdldENsYXNzKGVsKTtcclxuICBcdHJldHVybiBjbGFzc05hbWUubGVuZ3RoID4gMCAmJiBuZXcgUmVnRXhwKCcoXnxcXFxccyknICsgbmFtZSArICcoXFxcXHN8JCknKS50ZXN0KGNsYXNzTmFtZSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gYWRkQ2xhc3MoZWw6IEhUTUxFbGVtZW50LCBuYW1lOiBTdHJpbmcpXHJcbiAgLy8gQWRkcyBgbmFtZWAgdG8gdGhlIGVsZW1lbnQncyBjbGFzcyBhdHRyaWJ1dGUuXHJcbiAgZnVuY3Rpb24gYWRkQ2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc0xpc3QgIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHR2YXIgY2xhc3NlcyA9IHNwbGl0V29yZHMobmFtZSk7XHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBjbGFzc2VzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0ZWwuY2xhc3NMaXN0LmFkZChjbGFzc2VzW2ldKTtcclxuICBcdFx0fVxyXG4gIFx0fSBlbHNlIGlmICghaGFzQ2xhc3MoZWwsIG5hbWUpKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSBnZXRDbGFzcyhlbCk7XHJcbiAgXHRcdHNldENsYXNzKGVsLCAoY2xhc3NOYW1lID8gY2xhc3NOYW1lICsgJyAnIDogJycpICsgbmFtZSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVtb3ZlQ2xhc3MoZWw6IEhUTUxFbGVtZW50LCBuYW1lOiBTdHJpbmcpXHJcbiAgLy8gUmVtb3ZlcyBgbmFtZWAgZnJvbSB0aGUgZWxlbWVudCdzIGNsYXNzIGF0dHJpYnV0ZS5cclxuICBmdW5jdGlvbiByZW1vdmVDbGFzcyhlbCwgbmFtZSkge1xyXG4gIFx0aWYgKGVsLmNsYXNzTGlzdCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdGVsLmNsYXNzTGlzdC5yZW1vdmUobmFtZSk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRzZXRDbGFzcyhlbCwgdHJpbSgoJyAnICsgZ2V0Q2xhc3MoZWwpICsgJyAnKS5yZXBsYWNlKCcgJyArIG5hbWUgKyAnICcsICcgJykpKTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzZXRDbGFzcyhlbDogSFRNTEVsZW1lbnQsIG5hbWU6IFN0cmluZylcclxuICAvLyBTZXRzIHRoZSBlbGVtZW50J3MgY2xhc3MuXHJcbiAgZnVuY3Rpb24gc2V0Q2xhc3MoZWwsIG5hbWUpIHtcclxuICBcdGlmIChlbC5jbGFzc05hbWUuYmFzZVZhbCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdGVsLmNsYXNzTmFtZSA9IG5hbWU7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHQvLyBpbiBjYXNlIG9mIFNWRyBlbGVtZW50XHJcbiAgXHRcdGVsLmNsYXNzTmFtZS5iYXNlVmFsID0gbmFtZTtcclxuICBcdH1cclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRDbGFzcyhlbDogSFRNTEVsZW1lbnQpOiBTdHJpbmdcclxuICAvLyBSZXR1cm5zIHRoZSBlbGVtZW50J3MgY2xhc3MuXHJcbiAgZnVuY3Rpb24gZ2V0Q2xhc3MoZWwpIHtcclxuICBcdC8vIENoZWNrIGlmIHRoZSBlbGVtZW50IGlzIGFuIFNWR0VsZW1lbnRJbnN0YW5jZSBhbmQgdXNlIHRoZSBjb3JyZXNwb25kaW5nRWxlbWVudCBpbnN0ZWFkXHJcbiAgXHQvLyAoUmVxdWlyZWQgZm9yIGxpbmtlZCBTVkcgZWxlbWVudHMgaW4gSUUxMS4pXHJcbiAgXHRpZiAoZWwuY29ycmVzcG9uZGluZ0VsZW1lbnQpIHtcclxuICBcdFx0ZWwgPSBlbC5jb3JyZXNwb25kaW5nRWxlbWVudDtcclxuICBcdH1cclxuICBcdHJldHVybiBlbC5jbGFzc05hbWUuYmFzZVZhbCA9PT0gdW5kZWZpbmVkID8gZWwuY2xhc3NOYW1lIDogZWwuY2xhc3NOYW1lLmJhc2VWYWw7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gc2V0T3BhY2l0eShlbDogSFRNTEVsZW1lbnQsIG9wYWNpdHk6IE51bWJlcilcclxuICAvLyBTZXQgdGhlIG9wYWNpdHkgb2YgYW4gZWxlbWVudCAoaW5jbHVkaW5nIG9sZCBJRSBzdXBwb3J0KS5cclxuICAvLyBgb3BhY2l0eWAgbXVzdCBiZSBhIG51bWJlciBmcm9tIGAwYCB0byBgMWAuXHJcbiAgZnVuY3Rpb24gc2V0T3BhY2l0eShlbCwgdmFsdWUpIHtcclxuICBcdGlmICgnb3BhY2l0eScgaW4gZWwuc3R5bGUpIHtcclxuICBcdFx0ZWwuc3R5bGUub3BhY2l0eSA9IHZhbHVlO1xyXG4gIFx0fSBlbHNlIGlmICgnZmlsdGVyJyBpbiBlbC5zdHlsZSkge1xyXG4gIFx0XHRfc2V0T3BhY2l0eUlFKGVsLCB2YWx1ZSk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBfc2V0T3BhY2l0eUlFKGVsLCB2YWx1ZSkge1xyXG4gIFx0dmFyIGZpbHRlciA9IGZhbHNlLFxyXG4gIFx0ICAgIGZpbHRlck5hbWUgPSAnRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEnO1xyXG5cclxuICBcdC8vIGZpbHRlcnMgY29sbGVjdGlvbiB0aHJvd3MgYW4gZXJyb3IgaWYgd2UgdHJ5IHRvIHJldHJpZXZlIGEgZmlsdGVyIHRoYXQgZG9lc24ndCBleGlzdFxyXG4gIFx0dHJ5IHtcclxuICBcdFx0ZmlsdGVyID0gZWwuZmlsdGVycy5pdGVtKGZpbHRlck5hbWUpO1xyXG4gIFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHQvLyBkb24ndCBzZXQgb3BhY2l0eSB0byAxIGlmIHdlIGhhdmVuJ3QgYWxyZWFkeSBzZXQgYW4gb3BhY2l0eSxcclxuICBcdFx0Ly8gaXQgaXNuJ3QgbmVlZGVkIGFuZCBicmVha3MgdHJhbnNwYXJlbnQgcG5ncy5cclxuICBcdFx0aWYgKHZhbHVlID09PSAxKSB7IHJldHVybjsgfVxyXG4gIFx0fVxyXG5cclxuICBcdHZhbHVlID0gTWF0aC5yb3VuZCh2YWx1ZSAqIDEwMCk7XHJcblxyXG4gIFx0aWYgKGZpbHRlcikge1xyXG4gIFx0XHRmaWx0ZXIuRW5hYmxlZCA9ICh2YWx1ZSAhPT0gMTAwKTtcclxuICBcdFx0ZmlsdGVyLk9wYWNpdHkgPSB2YWx1ZTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGVsLnN0eWxlLmZpbHRlciArPSAnIHByb2dpZDonICsgZmlsdGVyTmFtZSArICcob3BhY2l0eT0nICsgdmFsdWUgKyAnKSc7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gdGVzdFByb3AocHJvcHM6IFN0cmluZ1tdKTogU3RyaW5nfGZhbHNlXHJcbiAgLy8gR29lcyB0aHJvdWdoIHRoZSBhcnJheSBvZiBzdHlsZSBuYW1lcyBhbmQgcmV0dXJucyB0aGUgZmlyc3QgbmFtZVxyXG4gIC8vIHRoYXQgaXMgYSB2YWxpZCBzdHlsZSBuYW1lIGZvciBhbiBlbGVtZW50LiBJZiBubyBzdWNoIG5hbWUgaXMgZm91bmQsXHJcbiAgLy8gaXQgcmV0dXJucyBmYWxzZS4gVXNlZnVsIGZvciB2ZW5kb3ItcHJlZml4ZWQgc3R5bGVzIGxpa2UgYHRyYW5zZm9ybWAuXHJcbiAgZnVuY3Rpb24gdGVzdFByb3AocHJvcHMpIHtcclxuICBcdHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuXHJcbiAgXHRmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdGlmIChwcm9wc1tpXSBpbiBzdHlsZSkge1xyXG4gIFx0XHRcdHJldHVybiBwcm9wc1tpXTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIFx0cmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHNldFRyYW5zZm9ybShlbDogSFRNTEVsZW1lbnQsIG9mZnNldDogUG9pbnQsIHNjYWxlPzogTnVtYmVyKVxyXG4gIC8vIFJlc2V0cyB0aGUgM0QgQ1NTIHRyYW5zZm9ybSBvZiBgZWxgIHNvIGl0IGlzIHRyYW5zbGF0ZWQgYnkgYG9mZnNldGAgcGl4ZWxzXHJcbiAgLy8gYW5kIG9wdGlvbmFsbHkgc2NhbGVkIGJ5IGBzY2FsZWAuIERvZXMgbm90IGhhdmUgYW4gZWZmZWN0IGlmIHRoZVxyXG4gIC8vIGJyb3dzZXIgZG9lc24ndCBzdXBwb3J0IDNEIENTUyB0cmFuc2Zvcm1zLlxyXG4gIGZ1bmN0aW9uIHNldFRyYW5zZm9ybShlbCwgb2Zmc2V0LCBzY2FsZSkge1xyXG4gIFx0dmFyIHBvcyA9IG9mZnNldCB8fCBuZXcgUG9pbnQoMCwgMCk7XHJcblxyXG4gIFx0ZWwuc3R5bGVbVFJBTlNGT1JNXSA9XHJcbiAgXHRcdChCcm93c2VyLmllM2QgP1xyXG4gIFx0XHRcdCd0cmFuc2xhdGUoJyArIHBvcy54ICsgJ3B4LCcgKyBwb3MueSArICdweCknIDpcclxuICBcdFx0XHQndHJhbnNsYXRlM2QoJyArIHBvcy54ICsgJ3B4LCcgKyBwb3MueSArICdweCwwKScpICtcclxuICBcdFx0KHNjYWxlID8gJyBzY2FsZSgnICsgc2NhbGUgKyAnKScgOiAnJyk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gc2V0UG9zaXRpb24oZWw6IEhUTUxFbGVtZW50LCBwb3NpdGlvbjogUG9pbnQpXHJcbiAgLy8gU2V0cyB0aGUgcG9zaXRpb24gb2YgYGVsYCB0byBjb29yZGluYXRlcyBzcGVjaWZpZWQgYnkgYHBvc2l0aW9uYCxcclxuICAvLyB1c2luZyBDU1MgdHJhbnNsYXRlIG9yIHRvcC9sZWZ0IHBvc2l0aW9uaW5nIGRlcGVuZGluZyBvbiB0aGUgYnJvd3NlclxyXG4gIC8vICh1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseSB0byBwb3NpdGlvbiBpdHMgbGF5ZXJzKS5cclxuICBmdW5jdGlvbiBzZXRQb3NpdGlvbihlbCwgcG9pbnQpIHtcclxuXHJcbiAgXHQvKmVzbGludC1kaXNhYmxlICovXHJcbiAgXHRlbC5fbGVhZmxldF9wb3MgPSBwb2ludDtcclxuICBcdC8qIGVzbGludC1lbmFibGUgKi9cclxuXHJcbiAgXHRpZiAoQnJvd3Nlci5hbnkzZCkge1xyXG4gIFx0XHRzZXRUcmFuc2Zvcm0oZWwsIHBvaW50KTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGVsLnN0eWxlLmxlZnQgPSBwb2ludC54ICsgJ3B4JztcclxuICBcdFx0ZWwuc3R5bGUudG9wID0gcG9pbnQueSArICdweCc7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZ2V0UG9zaXRpb24oZWw6IEhUTUxFbGVtZW50KTogUG9pbnRcclxuICAvLyBSZXR1cm5zIHRoZSBjb29yZGluYXRlcyBvZiBhbiBlbGVtZW50IHByZXZpb3VzbHkgcG9zaXRpb25lZCB3aXRoIHNldFBvc2l0aW9uLlxyXG4gIGZ1bmN0aW9uIGdldFBvc2l0aW9uKGVsKSB7XHJcbiAgXHQvLyB0aGlzIG1ldGhvZCBpcyBvbmx5IHVzZWQgZm9yIGVsZW1lbnRzIHByZXZpb3VzbHkgcG9zaXRpb25lZCB1c2luZyBzZXRQb3NpdGlvbixcclxuICBcdC8vIHNvIGl0J3Mgc2FmZSB0byBjYWNoZSB0aGUgcG9zaXRpb24gZm9yIHBlcmZvcm1hbmNlXHJcblxyXG4gIFx0cmV0dXJuIGVsLl9sZWFmbGV0X3BvcyB8fCBuZXcgUG9pbnQoMCwgMCk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gZGlzYWJsZVRleHRTZWxlY3Rpb24oKVxyXG4gIC8vIFByZXZlbnRzIHRoZSB1c2VyIGZyb20gZ2VuZXJhdGluZyBgc2VsZWN0c3RhcnRgIERPTSBldmVudHMsIHVzdWFsbHkgZ2VuZXJhdGVkXHJcbiAgLy8gd2hlbiB0aGUgdXNlciBkcmFncyB0aGUgbW91c2UgdGhyb3VnaCBhIHBhZ2Ugd2l0aCB0ZXh0LiBVc2VkIGludGVybmFsbHlcclxuICAvLyBieSBMZWFmbGV0IHRvIG92ZXJyaWRlIHRoZSBiZWhhdmlvdXIgb2YgYW55IGNsaWNrLWFuZC1kcmFnIGludGVyYWN0aW9uIG9uXHJcbiAgLy8gdGhlIG1hcC4gQWZmZWN0cyBkcmFnIGludGVyYWN0aW9ucyBvbiB0aGUgd2hvbGUgZG9jdW1lbnQuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBlbmFibGVUZXh0U2VsZWN0aW9uKClcclxuICAvLyBDYW5jZWxzIHRoZSBlZmZlY3RzIG9mIGEgcHJldmlvdXMgW2BMLkRvbVV0aWwuZGlzYWJsZVRleHRTZWxlY3Rpb25gXSgjZG9tdXRpbC1kaXNhYmxldGV4dHNlbGVjdGlvbikuXHJcbiAgdmFyIGRpc2FibGVUZXh0U2VsZWN0aW9uO1xyXG4gIHZhciBlbmFibGVUZXh0U2VsZWN0aW9uO1xyXG4gIHZhciBfdXNlclNlbGVjdDtcclxuICBpZiAoJ29uc2VsZWN0c3RhcnQnIGluIGRvY3VtZW50KSB7XHJcbiAgXHRkaXNhYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0b24od2luZG93LCAnc2VsZWN0c3RhcnQnLCBwcmV2ZW50RGVmYXVsdCk7XHJcbiAgXHR9O1xyXG4gIFx0ZW5hYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0b2ZmKHdpbmRvdywgJ3NlbGVjdHN0YXJ0JywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0fTtcclxuICB9IGVsc2Uge1xyXG4gIFx0dmFyIHVzZXJTZWxlY3RQcm9wZXJ0eSA9IHRlc3RQcm9wKFxyXG4gIFx0XHRbJ3VzZXJTZWxlY3QnLCAnV2Via2l0VXNlclNlbGVjdCcsICdPVXNlclNlbGVjdCcsICdNb3pVc2VyU2VsZWN0JywgJ21zVXNlclNlbGVjdCddKTtcclxuXHJcbiAgXHRkaXNhYmxlVGV4dFNlbGVjdGlvbiA9IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHVzZXJTZWxlY3RQcm9wZXJ0eSkge1xyXG4gIFx0XHRcdHZhciBzdHlsZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZTtcclxuICBcdFx0XHRfdXNlclNlbGVjdCA9IHN0eWxlW3VzZXJTZWxlY3RQcm9wZXJ0eV07XHJcbiAgXHRcdFx0c3R5bGVbdXNlclNlbGVjdFByb3BlcnR5XSA9ICdub25lJztcclxuICBcdFx0fVxyXG4gIFx0fTtcclxuICBcdGVuYWJsZVRleHRTZWxlY3Rpb24gPSBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh1c2VyU2VsZWN0UHJvcGVydHkpIHtcclxuICBcdFx0XHRkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGVbdXNlclNlbGVjdFByb3BlcnR5XSA9IF91c2VyU2VsZWN0O1xyXG4gIFx0XHRcdF91c2VyU2VsZWN0ID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcbiAgXHR9O1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGRpc2FibGVJbWFnZURyYWcoKVxyXG4gIC8vIEFzIFtgTC5Eb21VdGlsLmRpc2FibGVUZXh0U2VsZWN0aW9uYF0oI2RvbXV0aWwtZGlzYWJsZXRleHRzZWxlY3Rpb24pLCBidXRcclxuICAvLyBmb3IgYGRyYWdzdGFydGAgRE9NIGV2ZW50cywgdXN1YWxseSBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBkcmFncyBhbiBpbWFnZS5cclxuICBmdW5jdGlvbiBkaXNhYmxlSW1hZ2VEcmFnKCkge1xyXG4gIFx0b24od2luZG93LCAnZHJhZ3N0YXJ0JywgcHJldmVudERlZmF1bHQpO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGVuYWJsZUltYWdlRHJhZygpXHJcbiAgLy8gQ2FuY2VscyB0aGUgZWZmZWN0cyBvZiBhIHByZXZpb3VzIFtgTC5Eb21VdGlsLmRpc2FibGVJbWFnZURyYWdgXSgjZG9tdXRpbC1kaXNhYmxldGV4dHNlbGVjdGlvbikuXHJcbiAgZnVuY3Rpb24gZW5hYmxlSW1hZ2VEcmFnKCkge1xyXG4gIFx0b2ZmKHdpbmRvdywgJ2RyYWdzdGFydCcsIHByZXZlbnREZWZhdWx0KTtcclxuICB9XHJcblxyXG4gIHZhciBfb3V0bGluZUVsZW1lbnQsIF9vdXRsaW5lU3R5bGU7XHJcbiAgLy8gQGZ1bmN0aW9uIHByZXZlbnRPdXRsaW5lKGVsOiBIVE1MRWxlbWVudClcclxuICAvLyBNYWtlcyB0aGUgW291dGxpbmVdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0NTUy9vdXRsaW5lKVxyXG4gIC8vIG9mIHRoZSBlbGVtZW50IGBlbGAgaW52aXNpYmxlLiBVc2VkIGludGVybmFsbHkgYnkgTGVhZmxldCB0byBwcmV2ZW50XHJcbiAgLy8gZm9jdXNhYmxlIGVsZW1lbnRzIGZyb20gZGlzcGxheWluZyBhbiBvdXRsaW5lIHdoZW4gdGhlIHVzZXIgcGVyZm9ybXMgYVxyXG4gIC8vIGRyYWcgaW50ZXJhY3Rpb24gb24gdGhlbS5cclxuICBmdW5jdGlvbiBwcmV2ZW50T3V0bGluZShlbGVtZW50KSB7XHJcbiAgXHR3aGlsZSAoZWxlbWVudC50YWJJbmRleCA9PT0gLTEpIHtcclxuICBcdFx0ZWxlbWVudCA9IGVsZW1lbnQucGFyZW50Tm9kZTtcclxuICBcdH1cclxuICBcdGlmICghZWxlbWVudC5zdHlsZSkgeyByZXR1cm47IH1cclxuICBcdHJlc3RvcmVPdXRsaW5lKCk7XHJcbiAgXHRfb3V0bGluZUVsZW1lbnQgPSBlbGVtZW50O1xyXG4gIFx0X291dGxpbmVTdHlsZSA9IGVsZW1lbnQuc3R5bGUub3V0bGluZTtcclxuICBcdGVsZW1lbnQuc3R5bGUub3V0bGluZSA9ICdub25lJztcclxuICBcdG9uKHdpbmRvdywgJ2tleWRvd24nLCByZXN0b3JlT3V0bGluZSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcmVzdG9yZU91dGxpbmUoKVxyXG4gIC8vIENhbmNlbHMgdGhlIGVmZmVjdHMgb2YgYSBwcmV2aW91cyBbYEwuRG9tVXRpbC5wcmV2ZW50T3V0bGluZWBdKCkuXHJcbiAgZnVuY3Rpb24gcmVzdG9yZU91dGxpbmUoKSB7XHJcbiAgXHRpZiAoIV9vdXRsaW5lRWxlbWVudCkgeyByZXR1cm47IH1cclxuICBcdF9vdXRsaW5lRWxlbWVudC5zdHlsZS5vdXRsaW5lID0gX291dGxpbmVTdHlsZTtcclxuICBcdF9vdXRsaW5lRWxlbWVudCA9IHVuZGVmaW5lZDtcclxuICBcdF9vdXRsaW5lU3R5bGUgPSB1bmRlZmluZWQ7XHJcbiAgXHRvZmYod2luZG93LCAna2V5ZG93bicsIHJlc3RvcmVPdXRsaW5lKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRTaXplZFBhcmVudE5vZGUoZWw6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICAvLyBGaW5kcyB0aGUgY2xvc2VzdCBwYXJlbnQgbm9kZSB3aGljaCBzaXplICh3aWR0aCBhbmQgaGVpZ2h0KSBpcyBub3QgbnVsbC5cclxuICBmdW5jdGlvbiBnZXRTaXplZFBhcmVudE5vZGUoZWxlbWVudCkge1xyXG4gIFx0ZG8ge1xyXG4gIFx0XHRlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlO1xyXG4gIFx0fSB3aGlsZSAoKCFlbGVtZW50Lm9mZnNldFdpZHRoIHx8ICFlbGVtZW50Lm9mZnNldEhlaWdodCkgJiYgZWxlbWVudCAhPT0gZG9jdW1lbnQuYm9keSk7XHJcbiAgXHRyZXR1cm4gZWxlbWVudDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRTY2FsZShlbDogSFRNTEVsZW1lbnQpOiBPYmplY3RcclxuICAvLyBDb21wdXRlcyB0aGUgQ1NTIHNjYWxlIGN1cnJlbnRseSBhcHBsaWVkIG9uIHRoZSBlbGVtZW50LlxyXG4gIC8vIFJldHVybnMgYW4gb2JqZWN0IHdpdGggYHhgIGFuZCBgeWAgbWVtYmVycyBhcyBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBzY2FsZXMgcmVzcGVjdGl2ZWx5LFxyXG4gIC8vIGFuZCBgYm91bmRpbmdDbGllbnRSZWN0YCBhcyB0aGUgcmVzdWx0IG9mIFtgZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRWxlbWVudC9nZXRCb3VuZGluZ0NsaWVudFJlY3QpLlxyXG4gIGZ1bmN0aW9uIGdldFNjYWxlKGVsZW1lbnQpIHtcclxuICBcdHZhciByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsgLy8gUmVhZC1vbmx5IGluIG9sZCBicm93c2Vycy5cclxuXHJcbiAgXHRyZXR1cm4ge1xyXG4gIFx0XHR4OiByZWN0LndpZHRoIC8gZWxlbWVudC5vZmZzZXRXaWR0aCB8fCAxLFxyXG4gIFx0XHR5OiByZWN0LmhlaWdodCAvIGVsZW1lbnQub2Zmc2V0SGVpZ2h0IHx8IDEsXHJcbiAgXHRcdGJvdW5kaW5nQ2xpZW50UmVjdDogcmVjdFxyXG4gIFx0fTtcclxuICB9XG5cbiAgdmFyIERvbVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIFRSQU5TRk9STTogVFJBTlNGT1JNLFxuICAgIFRSQU5TSVRJT046IFRSQU5TSVRJT04sXG4gICAgVFJBTlNJVElPTl9FTkQ6IFRSQU5TSVRJT05fRU5ELFxuICAgIGdldDogZ2V0LFxuICAgIGdldFN0eWxlOiBnZXRTdHlsZSxcbiAgICBjcmVhdGU6IGNyZWF0ZSQxLFxuICAgIHJlbW92ZTogcmVtb3ZlLFxuICAgIGVtcHR5OiBlbXB0eSxcbiAgICB0b0Zyb250OiB0b0Zyb250LFxuICAgIHRvQmFjazogdG9CYWNrLFxuICAgIGhhc0NsYXNzOiBoYXNDbGFzcyxcbiAgICBhZGRDbGFzczogYWRkQ2xhc3MsXG4gICAgcmVtb3ZlQ2xhc3M6IHJlbW92ZUNsYXNzLFxuICAgIHNldENsYXNzOiBzZXRDbGFzcyxcbiAgICBnZXRDbGFzczogZ2V0Q2xhc3MsXG4gICAgc2V0T3BhY2l0eTogc2V0T3BhY2l0eSxcbiAgICB0ZXN0UHJvcDogdGVzdFByb3AsXG4gICAgc2V0VHJhbnNmb3JtOiBzZXRUcmFuc2Zvcm0sXG4gICAgc2V0UG9zaXRpb246IHNldFBvc2l0aW9uLFxuICAgIGdldFBvc2l0aW9uOiBnZXRQb3NpdGlvbixcbiAgICBnZXQgZGlzYWJsZVRleHRTZWxlY3Rpb24gKCkgeyByZXR1cm4gZGlzYWJsZVRleHRTZWxlY3Rpb247IH0sXG4gICAgZ2V0IGVuYWJsZVRleHRTZWxlY3Rpb24gKCkgeyByZXR1cm4gZW5hYmxlVGV4dFNlbGVjdGlvbjsgfSxcbiAgICBkaXNhYmxlSW1hZ2VEcmFnOiBkaXNhYmxlSW1hZ2VEcmFnLFxuICAgIGVuYWJsZUltYWdlRHJhZzogZW5hYmxlSW1hZ2VEcmFnLFxuICAgIHByZXZlbnRPdXRsaW5lOiBwcmV2ZW50T3V0bGluZSxcbiAgICByZXN0b3JlT3V0bGluZTogcmVzdG9yZU91dGxpbmUsXG4gICAgZ2V0U2l6ZWRQYXJlbnROb2RlOiBnZXRTaXplZFBhcmVudE5vZGUsXG4gICAgZ2V0U2NhbGU6IGdldFNjYWxlXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIERvbUV2ZW50XHJcbiAgICogVXRpbGl0eSBmdW5jdGlvbnMgdG8gd29yayB3aXRoIHRoZSBbRE9NIGV2ZW50c10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0V2ZW50KSwgdXNlZCBieSBMZWFmbGV0IGludGVybmFsbHkuXHJcbiAgICovXHJcblxyXG4gIC8vIEluc3BpcmVkIGJ5IEpvaG4gUmVzaWcsIERlYW4gRWR3YXJkcyBhbmQgWVVJIGFkZEV2ZW50IGltcGxlbWVudGF0aW9ucy5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIG9uKGVsOiBIVE1MRWxlbWVudCwgdHlwZXM6IFN0cmluZywgZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIC8vIEFkZHMgYSBsaXN0ZW5lciBmdW5jdGlvbiAoYGZuYCkgdG8gYSBwYXJ0aWN1bGFyIERPTSBldmVudCB0eXBlIG9mIHRoZVxyXG4gIC8vIGVsZW1lbnQgYGVsYC4gWW91IGNhbiBvcHRpb25hbGx5IHNwZWNpZnkgdGhlIGNvbnRleHQgb2YgdGhlIGxpc3RlbmVyXHJcbiAgLy8gKG9iamVjdCB0aGUgYHRoaXNgIGtleXdvcmQgd2lsbCBwb2ludCB0bykuIFlvdSBjYW4gYWxzbyBwYXNzIHNldmVyYWxcclxuICAvLyBzcGFjZS1zZXBhcmF0ZWQgdHlwZXMgKGUuZy4gYCdjbGljayBkYmxjbGljaydgKS5cclxuXHJcbiAgLy8gQGFsdGVybmF0aXZlXHJcbiAgLy8gQGZ1bmN0aW9uIG9uKGVsOiBIVE1MRWxlbWVudCwgZXZlbnRNYXA6IE9iamVjdCwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBBZGRzIGEgc2V0IG9mIHR5cGUvbGlzdGVuZXIgcGFpcnMsIGUuZy4gYHtjbGljazogb25DbGljaywgbW91c2Vtb3ZlOiBvbk1vdXNlTW92ZX1gXHJcbiAgZnVuY3Rpb24gb24ob2JqLCB0eXBlcywgZm4sIGNvbnRleHQpIHtcclxuXHJcbiAgXHRpZiAodHlwZXMgJiYgdHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRmb3IgKHZhciB0eXBlIGluIHR5cGVzKSB7XHJcbiAgXHRcdFx0YWRkT25lKG9iaiwgdHlwZSwgdHlwZXNbdHlwZV0sIGZuKTtcclxuICBcdFx0fVxyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0dHlwZXMgPSBzcGxpdFdvcmRzKHR5cGVzKTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0eXBlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdGFkZE9uZShvYmosIHR5cGVzW2ldLCBmbiwgY29udGV4dCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIHZhciBldmVudHNLZXkgPSAnX2xlYWZsZXRfZXZlbnRzJztcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIG9mZihlbDogSFRNTEVsZW1lbnQsIHR5cGVzOiBTdHJpbmcsIGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGEgcHJldmlvdXNseSBhZGRlZCBsaXN0ZW5lciBmdW5jdGlvbi5cclxuICAvLyBOb3RlIHRoYXQgaWYgeW91IHBhc3NlZCBhIGN1c3RvbSBjb250ZXh0IHRvIG9uLCB5b3UgbXVzdCBwYXNzIHRoZSBzYW1lXHJcbiAgLy8gY29udGV4dCB0byBgb2ZmYCBpbiBvcmRlciB0byByZW1vdmUgdGhlIGxpc3RlbmVyLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZnVuY3Rpb24gb2ZmKGVsOiBIVE1MRWxlbWVudCwgZXZlbnRNYXA6IE9iamVjdCwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGEgc2V0IG9mIHR5cGUvbGlzdGVuZXIgcGFpcnMsIGUuZy4gYHtjbGljazogb25DbGljaywgbW91c2Vtb3ZlOiBvbk1vdXNlTW92ZX1gXHJcblxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmdW5jdGlvbiBvZmYoZWw6IEhUTUxFbGVtZW50LCB0eXBlczogU3RyaW5nKTogdGhpc1xyXG4gIC8vIFJlbW92ZXMgYWxsIHByZXZpb3VzbHkgYWRkZWQgbGlzdGVuZXJzIG9mIGdpdmVuIHR5cGVzLlxyXG5cclxuICAvLyBAYWx0ZXJuYXRpdmVcclxuICAvLyBAZnVuY3Rpb24gb2ZmKGVsOiBIVE1MRWxlbWVudCk6IHRoaXNcclxuICAvLyBSZW1vdmVzIGFsbCBwcmV2aW91c2x5IGFkZGVkIGxpc3RlbmVycyBmcm9tIGdpdmVuIEhUTUxFbGVtZW50XHJcbiAgZnVuY3Rpb24gb2ZmKG9iaiwgdHlwZXMsIGZuLCBjb250ZXh0KSB7XHJcblxyXG4gIFx0aWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHtcclxuICBcdFx0YmF0Y2hSZW1vdmUob2JqKTtcclxuICBcdFx0ZGVsZXRlIG9ialtldmVudHNLZXldO1xyXG5cclxuICBcdH0gZWxzZSBpZiAodHlwZXMgJiYgdHlwZW9mIHR5cGVzID09PSAnb2JqZWN0Jykge1xyXG4gIFx0XHRmb3IgKHZhciB0eXBlIGluIHR5cGVzKSB7XHJcbiAgXHRcdFx0cmVtb3ZlT25lKG9iaiwgdHlwZSwgdHlwZXNbdHlwZV0sIGZuKTtcclxuICBcdFx0fVxyXG5cclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdHR5cGVzID0gc3BsaXRXb3Jkcyh0eXBlcyk7XHJcblxyXG4gIFx0XHRpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMikge1xyXG4gIFx0XHRcdGJhdGNoUmVtb3ZlKG9iaiwgZnVuY3Rpb24gKHR5cGUpIHtcclxuICBcdFx0XHRcdHJldHVybiBpbmRleE9mKHR5cGVzLCB0eXBlKSAhPT0gLTE7XHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHR5cGVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHRyZW1vdmVPbmUob2JqLCB0eXBlc1tpXSwgZm4sIGNvbnRleHQpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gYmF0Y2hSZW1vdmUob2JqLCBmaWx0ZXJGbikge1xyXG4gIFx0Zm9yICh2YXIgaWQgaW4gb2JqW2V2ZW50c0tleV0pIHtcclxuICBcdFx0dmFyIHR5cGUgPSBpZC5zcGxpdCgvXFxkLylbMF07XHJcbiAgXHRcdGlmICghZmlsdGVyRm4gfHwgZmlsdGVyRm4odHlwZSkpIHtcclxuICBcdFx0XHRyZW1vdmVPbmUob2JqLCB0eXBlLCBudWxsLCBudWxsLCBpZCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9XHJcblxyXG4gIHZhciBtb3VzZVN1YnN0ID0ge1xyXG4gIFx0bW91c2VlbnRlcjogJ21vdXNlb3ZlcicsXHJcbiAgXHRtb3VzZWxlYXZlOiAnbW91c2VvdXQnLFxyXG4gIFx0d2hlZWw6ICEoJ29ud2hlZWwnIGluIHdpbmRvdykgJiYgJ21vdXNld2hlZWwnXHJcbiAgfTtcclxuXHJcbiAgZnVuY3Rpb24gYWRkT25lKG9iaiwgdHlwZSwgZm4sIGNvbnRleHQpIHtcclxuICBcdHZhciBpZCA9IHR5cGUgKyBzdGFtcChmbikgKyAoY29udGV4dCA/ICdfJyArIHN0YW1wKGNvbnRleHQpIDogJycpO1xyXG5cclxuICBcdGlmIChvYmpbZXZlbnRzS2V5XSAmJiBvYmpbZXZlbnRzS2V5XVtpZF0pIHsgcmV0dXJuIHRoaXM7IH1cclxuXHJcbiAgXHR2YXIgaGFuZGxlciA9IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdHJldHVybiBmbi5jYWxsKGNvbnRleHQgfHwgb2JqLCBlIHx8IHdpbmRvdy5ldmVudCk7XHJcbiAgXHR9O1xyXG5cclxuICBcdHZhciBvcmlnaW5hbEhhbmRsZXIgPSBoYW5kbGVyO1xyXG5cclxuICBcdGlmICghQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnBvaW50ZXIgJiYgdHlwZS5pbmRleE9mKCd0b3VjaCcpID09PSAwKSB7XHJcbiAgXHRcdC8vIE5lZWRzIERvbUV2ZW50LlBvaW50ZXIuanNcclxuICBcdFx0aGFuZGxlciA9IGFkZFBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpO1xyXG5cclxuICBcdH0gZWxzZSBpZiAoQnJvd3Nlci50b3VjaCAmJiAodHlwZSA9PT0gJ2RibGNsaWNrJykpIHtcclxuICBcdFx0aGFuZGxlciA9IGFkZERvdWJsZVRhcExpc3RlbmVyKG9iaiwgaGFuZGxlcik7XHJcblxyXG4gIFx0fSBlbHNlIGlmICgnYWRkRXZlbnRMaXN0ZW5lcicgaW4gb2JqKSB7XHJcblxyXG4gIFx0XHRpZiAodHlwZSA9PT0gJ3RvdWNoc3RhcnQnIHx8IHR5cGUgPT09ICd0b3VjaG1vdmUnIHx8IHR5cGUgPT09ICd3aGVlbCcgfHwgIHR5cGUgPT09ICdtb3VzZXdoZWVsJykge1xyXG4gIFx0XHRcdG9iai5hZGRFdmVudExpc3RlbmVyKG1vdXNlU3Vic3RbdHlwZV0gfHwgdHlwZSwgaGFuZGxlciwgQnJvd3Nlci5wYXNzaXZlRXZlbnRzID8ge3Bhc3NpdmU6IGZhbHNlfSA6IGZhbHNlKTtcclxuXHJcbiAgXHRcdH0gZWxzZSBpZiAodHlwZSA9PT0gJ21vdXNlZW50ZXInIHx8IHR5cGUgPT09ICdtb3VzZWxlYXZlJykge1xyXG4gIFx0XHRcdGhhbmRsZXIgPSBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHRcdFx0ZSA9IGUgfHwgd2luZG93LmV2ZW50O1xyXG4gIFx0XHRcdFx0aWYgKGlzRXh0ZXJuYWxUYXJnZXQob2JqLCBlKSkge1xyXG4gIFx0XHRcdFx0XHRvcmlnaW5hbEhhbmRsZXIoZSk7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fTtcclxuICBcdFx0XHRvYmouYWRkRXZlbnRMaXN0ZW5lcihtb3VzZVN1YnN0W3R5cGVdLCBoYW5kbGVyLCBmYWxzZSk7XHJcblxyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG9iai5hZGRFdmVudExpc3RlbmVyKHR5cGUsIG9yaWdpbmFsSGFuZGxlciwgZmFsc2UpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0b2JqLmF0dGFjaEV2ZW50KCdvbicgKyB0eXBlLCBoYW5kbGVyKTtcclxuICBcdH1cclxuXHJcbiAgXHRvYmpbZXZlbnRzS2V5XSA9IG9ialtldmVudHNLZXldIHx8IHt9O1xyXG4gIFx0b2JqW2V2ZW50c0tleV1baWRdID0gaGFuZGxlcjtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIHJlbW92ZU9uZShvYmosIHR5cGUsIGZuLCBjb250ZXh0LCBpZCkge1xyXG4gIFx0aWQgPSBpZCB8fCB0eXBlICsgc3RhbXAoZm4pICsgKGNvbnRleHQgPyAnXycgKyBzdGFtcChjb250ZXh0KSA6ICcnKTtcclxuICBcdHZhciBoYW5kbGVyID0gb2JqW2V2ZW50c0tleV0gJiYgb2JqW2V2ZW50c0tleV1baWRdO1xyXG5cclxuICBcdGlmICghaGFuZGxlcikgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdGlmICghQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnBvaW50ZXIgJiYgdHlwZS5pbmRleE9mKCd0b3VjaCcpID09PSAwKSB7XHJcbiAgXHRcdHJlbW92ZVBvaW50ZXJMaXN0ZW5lcihvYmosIHR5cGUsIGhhbmRsZXIpO1xyXG5cclxuICBcdH0gZWxzZSBpZiAoQnJvd3Nlci50b3VjaCAmJiAodHlwZSA9PT0gJ2RibGNsaWNrJykpIHtcclxuICBcdFx0cmVtb3ZlRG91YmxlVGFwTGlzdGVuZXIob2JqLCBoYW5kbGVyKTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKCdyZW1vdmVFdmVudExpc3RlbmVyJyBpbiBvYmopIHtcclxuXHJcbiAgXHRcdG9iai5yZW1vdmVFdmVudExpc3RlbmVyKG1vdXNlU3Vic3RbdHlwZV0gfHwgdHlwZSwgaGFuZGxlciwgZmFsc2UpO1xyXG5cclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdG9iai5kZXRhY2hFdmVudCgnb24nICsgdHlwZSwgaGFuZGxlcik7XHJcbiAgXHR9XHJcblxyXG4gIFx0b2JqW2V2ZW50c0tleV1baWRdID0gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzdG9wUHJvcGFnYXRpb24oZXY6IERPTUV2ZW50KTogdGhpc1xyXG4gIC8vIFN0b3AgdGhlIGdpdmVuIGV2ZW50IGZyb20gcHJvcGFnYXRpb24gdG8gcGFyZW50IGVsZW1lbnRzLiBVc2VkIGluc2lkZSB0aGUgbGlzdGVuZXIgZnVuY3Rpb25zOlxyXG4gIC8vIGBgYGpzXHJcbiAgLy8gTC5Eb21FdmVudC5vbihkaXYsICdjbGljaycsIGZ1bmN0aW9uIChldikge1xyXG4gIC8vIFx0TC5Eb21FdmVudC5zdG9wUHJvcGFnYXRpb24oZXYpO1xyXG4gIC8vIH0pO1xyXG4gIC8vIGBgYFxyXG4gIGZ1bmN0aW9uIHN0b3BQcm9wYWdhdGlvbihlKSB7XHJcblxyXG4gIFx0aWYgKGUuc3RvcFByb3BhZ2F0aW9uKSB7XHJcbiAgXHRcdGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgXHR9IGVsc2UgaWYgKGUub3JpZ2luYWxFdmVudCkgeyAgLy8gSW4gY2FzZSBvZiBMZWFmbGV0IGV2ZW50LlxyXG4gIFx0XHRlLm9yaWdpbmFsRXZlbnQuX3N0b3BwZWQgPSB0cnVlO1xyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0ZS5jYW5jZWxCdWJibGUgPSB0cnVlO1xyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbihlbDogSFRNTEVsZW1lbnQpOiB0aGlzXHJcbiAgLy8gQWRkcyBgc3RvcFByb3BhZ2F0aW9uYCB0byB0aGUgZWxlbWVudCdzIGAnd2hlZWwnYCBldmVudHMgKHBsdXMgYnJvd3NlciB2YXJpYW50cykuXHJcbiAgZnVuY3Rpb24gZGlzYWJsZVNjcm9sbFByb3BhZ2F0aW9uKGVsKSB7XHJcbiAgXHRhZGRPbmUoZWwsICd3aGVlbCcsIHN0b3BQcm9wYWdhdGlvbik7XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbihlbDogSFRNTEVsZW1lbnQpOiB0aGlzXHJcbiAgLy8gQWRkcyBgc3RvcFByb3BhZ2F0aW9uYCB0byB0aGUgZWxlbWVudCdzIGAnY2xpY2snYCwgYCdkYmxjbGljaydgLCBgJ2NvbnRleHRtZW51J2AsXHJcbiAgLy8gYCdtb3VzZWRvd24nYCBhbmQgYCd0b3VjaHN0YXJ0J2AgZXZlbnRzIChwbHVzIGJyb3dzZXIgdmFyaWFudHMpLlxyXG4gIGZ1bmN0aW9uIGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGVsKSB7XHJcbiAgXHRvbihlbCwgJ21vdXNlZG93biB0b3VjaHN0YXJ0IGRibGNsaWNrIGNvbnRleHRtZW51Jywgc3RvcFByb3BhZ2F0aW9uKTtcclxuICBcdGVsWydfbGVhZmxldF9kaXNhYmxlX2NsaWNrJ10gPSB0cnVlO1xyXG4gIFx0cmV0dXJuIHRoaXM7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gcHJldmVudERlZmF1bHQoZXY6IERPTUV2ZW50KTogdGhpc1xyXG4gIC8vIFByZXZlbnRzIHRoZSBkZWZhdWx0IGFjdGlvbiBvZiB0aGUgRE9NIEV2ZW50IGBldmAgZnJvbSBoYXBwZW5pbmcgKHN1Y2ggYXNcclxuICAvLyBmb2xsb3dpbmcgYSBsaW5rIGluIHRoZSBocmVmIG9mIHRoZSBhIGVsZW1lbnQsIG9yIGRvaW5nIGEgUE9TVCByZXF1ZXN0XHJcbiAgLy8gd2l0aCBwYWdlIHJlbG9hZCB3aGVuIGEgYDxmb3JtPmAgaXMgc3VibWl0dGVkKS5cclxuICAvLyBVc2UgaXQgaW5zaWRlIGxpc3RlbmVyIGZ1bmN0aW9ucy5cclxuICBmdW5jdGlvbiBwcmV2ZW50RGVmYXVsdChlKSB7XHJcbiAgXHRpZiAoZS5wcmV2ZW50RGVmYXVsdCkge1xyXG4gIFx0XHRlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgXHR9IGVsc2Uge1xyXG4gIFx0XHRlLnJldHVyblZhbHVlID0gZmFsc2U7XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gdGhpcztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBzdG9wKGV2OiBET01FdmVudCk6IHRoaXNcclxuICAvLyBEb2VzIGBzdG9wUHJvcGFnYXRpb25gIGFuZCBgcHJldmVudERlZmF1bHRgIGF0IHRoZSBzYW1lIHRpbWUuXHJcbiAgZnVuY3Rpb24gc3RvcChlKSB7XHJcbiAgXHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdHN0b3BQcm9wYWdhdGlvbihlKTtcclxuICBcdHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGdldFByb3BhZ2F0aW9uUGF0aChldjogRE9NRXZlbnQpOiBBcnJheVxyXG4gIC8vIENvbXBhdGliaWxpdHkgcG9seWZpbGwgZm9yIFtgRXZlbnQuY29tcG9zZWRQYXRoKClgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvRXZlbnQvY29tcG9zZWRQYXRoKS5cclxuICAvLyBSZXR1cm5zIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGBIVE1MRWxlbWVudGBzIHRoYXQgdGhlIGdpdmVuIERPTSBldmVudFxyXG4gIC8vIHNob3VsZCBwcm9wYWdhdGUgdG8gKGlmIG5vdCBzdG9wcGVkKS5cclxuICBmdW5jdGlvbiBnZXRQcm9wYWdhdGlvblBhdGgoZXYpIHtcclxuICBcdGlmIChldi5jb21wb3NlZFBhdGgpIHtcclxuICBcdFx0cmV0dXJuIGV2LmNvbXBvc2VkUGF0aCgpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBwYXRoID0gW107XHJcbiAgXHR2YXIgZWwgPSBldi50YXJnZXQ7XHJcblxyXG4gIFx0d2hpbGUgKGVsKSB7XHJcbiAgXHRcdHBhdGgucHVzaChlbCk7XHJcbiAgXHRcdGVsID0gZWwucGFyZW50Tm9kZTtcclxuICBcdH1cclxuICBcdHJldHVybiBwYXRoO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZXRNb3VzZVBvc2l0aW9uKGV2OiBET01FdmVudCwgY29udGFpbmVyPzogSFRNTEVsZW1lbnQpOiBQb2ludFxyXG4gIC8vIEdldHMgbm9ybWFsaXplZCBtb3VzZSBwb3NpdGlvbiBmcm9tIGEgRE9NIGV2ZW50IHJlbGF0aXZlIHRvIHRoZVxyXG4gIC8vIGBjb250YWluZXJgIChib3JkZXIgZXhjbHVkZWQpIG9yIHRvIHRoZSB3aG9sZSBwYWdlIGlmIG5vdCBzcGVjaWZpZWQuXHJcbiAgZnVuY3Rpb24gZ2V0TW91c2VQb3NpdGlvbihlLCBjb250YWluZXIpIHtcclxuICBcdGlmICghY29udGFpbmVyKSB7XHJcbiAgXHRcdHJldHVybiBuZXcgUG9pbnQoZS5jbGllbnRYLCBlLmNsaWVudFkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBzY2FsZSA9IGdldFNjYWxlKGNvbnRhaW5lciksXHJcbiAgXHQgICAgb2Zmc2V0ID0gc2NhbGUuYm91bmRpbmdDbGllbnRSZWN0OyAvLyBsZWZ0IGFuZCB0b3AgIHZhbHVlcyBhcmUgaW4gcGFnZSBzY2FsZSAobGlrZSB0aGUgZXZlbnQgY2xpZW50WC9ZKVxyXG5cclxuICBcdHJldHVybiBuZXcgUG9pbnQoXHJcbiAgXHRcdC8vIG9mZnNldC5sZWZ0L3RvcCB2YWx1ZXMgYXJlIGluIHBhZ2Ugc2NhbGUgKGxpa2UgY2xpZW50WC9ZKSxcclxuICBcdFx0Ly8gd2hlcmVhcyBjbGllbnRMZWZ0L1RvcCAoYm9yZGVyIHdpZHRoKSB2YWx1ZXMgYXJlIHRoZSBvcmlnaW5hbCB2YWx1ZXMgKGJlZm9yZSBDU1Mgc2NhbGUgYXBwbGllcykuXHJcbiAgXHRcdChlLmNsaWVudFggLSBvZmZzZXQubGVmdCkgLyBzY2FsZS54IC0gY29udGFpbmVyLmNsaWVudExlZnQsXHJcbiAgXHRcdChlLmNsaWVudFkgLSBvZmZzZXQudG9wKSAvIHNjYWxlLnkgLSBjb250YWluZXIuY2xpZW50VG9wXHJcbiAgXHQpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vICBleGNlcHQgLCBTYWZhcmkgYW5kXHJcbiAgLy8gV2UgbmVlZCBkb3VibGUgdGhlIHNjcm9sbCBwaXhlbHMgKHNlZSAjNzQwMyBhbmQgIzQ1MzgpIGZvciBhbGwgQnJvd3NlcnNcclxuICAvLyBleGNlcHQgT1NYIChNYWMpIC0+IDN4LCBDaHJvbWUgcnVubmluZyBvbiBMaW51eCAxeFxyXG5cclxuICB2YXIgd2hlZWxQeEZhY3RvciA9XHJcbiAgXHQoQnJvd3Nlci5saW51eCAmJiBCcm93c2VyLmNocm9tZSkgPyB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyA6XHJcbiAgXHRCcm93c2VyLm1hYyA/IHdpbmRvdy5kZXZpY2VQaXhlbFJhdGlvICogMyA6XHJcbiAgXHR3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbyA+IDAgPyAyICogd2luZG93LmRldmljZVBpeGVsUmF0aW8gOiAxO1xyXG4gIC8vIEBmdW5jdGlvbiBnZXRXaGVlbERlbHRhKGV2OiBET01FdmVudCk6IE51bWJlclxyXG4gIC8vIEdldHMgbm9ybWFsaXplZCB3aGVlbCBkZWx0YSBmcm9tIGEgd2hlZWwgRE9NIGV2ZW50LCBpbiB2ZXJ0aWNhbFxyXG4gIC8vIHBpeGVscyBzY3JvbGxlZCAobmVnYXRpdmUgaWYgc2Nyb2xsaW5nIGRvd24pLlxyXG4gIC8vIEV2ZW50cyBmcm9tIHBvaW50aW5nIGRldmljZXMgd2l0aG91dCBwcmVjaXNlIHNjcm9sbGluZyBhcmUgbWFwcGVkIHRvXHJcbiAgLy8gYSBiZXN0IGd1ZXNzIG9mIDYwIHBpeGVscy5cclxuICBmdW5jdGlvbiBnZXRXaGVlbERlbHRhKGUpIHtcclxuICBcdHJldHVybiAoQnJvd3Nlci5lZGdlKSA/IGUud2hlZWxEZWx0YVkgLyAyIDogLy8gRG9uJ3QgdHJ1c3Qgd2luZG93LWdlb21ldHJ5LWJhc2VkIGRlbHRhXHJcbiAgXHQgICAgICAgKGUuZGVsdGFZICYmIGUuZGVsdGFNb2RlID09PSAwKSA/IC1lLmRlbHRhWSAvIHdoZWVsUHhGYWN0b3IgOiAvLyBQaXhlbHNcclxuICBcdCAgICAgICAoZS5kZWx0YVkgJiYgZS5kZWx0YU1vZGUgPT09IDEpID8gLWUuZGVsdGFZICogMjAgOiAvLyBMaW5lc1xyXG4gIFx0ICAgICAgIChlLmRlbHRhWSAmJiBlLmRlbHRhTW9kZSA9PT0gMikgPyAtZS5kZWx0YVkgKiA2MCA6IC8vIFBhZ2VzXHJcbiAgXHQgICAgICAgKGUuZGVsdGFYIHx8IGUuZGVsdGFaKSA/IDAgOlx0Ly8gU2tpcCBob3Jpem9udGFsL2RlcHRoIHdoZWVsIGV2ZW50c1xyXG4gIFx0ICAgICAgIGUud2hlZWxEZWx0YSA/IChlLndoZWVsRGVsdGFZIHx8IGUud2hlZWxEZWx0YSkgLyAyIDogLy8gTGVnYWN5IElFIHBpeGVsc1xyXG4gIFx0ICAgICAgIChlLmRldGFpbCAmJiBNYXRoLmFicyhlLmRldGFpbCkgPCAzMjc2NSkgPyAtZS5kZXRhaWwgKiAyMCA6IC8vIExlZ2FjeSBNb3ogbGluZXNcclxuICBcdCAgICAgICBlLmRldGFpbCA/IGUuZGV0YWlsIC8gLTMyNzY1ICogNjAgOiAvLyBMZWdhY3kgTW96IHBhZ2VzXHJcbiAgXHQgICAgICAgMDtcclxuICB9XHJcblxyXG4gIC8vIGNoZWNrIGlmIGVsZW1lbnQgcmVhbGx5IGxlZnQvZW50ZXJlZCB0aGUgZXZlbnQgdGFyZ2V0IChmb3IgbW91c2VlbnRlci9tb3VzZWxlYXZlKVxyXG4gIGZ1bmN0aW9uIGlzRXh0ZXJuYWxUYXJnZXQoZWwsIGUpIHtcclxuXHJcbiAgXHR2YXIgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldDtcclxuXHJcbiAgXHRpZiAoIXJlbGF0ZWQpIHsgcmV0dXJuIHRydWU7IH1cclxuXHJcbiAgXHR0cnkge1xyXG4gIFx0XHR3aGlsZSAocmVsYXRlZCAmJiAocmVsYXRlZCAhPT0gZWwpKSB7XHJcbiAgXHRcdFx0cmVsYXRlZCA9IHJlbGF0ZWQucGFyZW50Tm9kZTtcclxuICBcdFx0fVxyXG4gIFx0fSBjYXRjaCAoZXJyKSB7XHJcbiAgXHRcdHJldHVybiBmYWxzZTtcclxuICBcdH1cclxuICBcdHJldHVybiAocmVsYXRlZCAhPT0gZWwpO1xyXG4gIH1cblxuICB2YXIgRG9tRXZlbnQgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIG9uOiBvbixcbiAgICBvZmY6IG9mZixcbiAgICBzdG9wUHJvcGFnYXRpb246IHN0b3BQcm9wYWdhdGlvbixcbiAgICBkaXNhYmxlU2Nyb2xsUHJvcGFnYXRpb246IGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbixcbiAgICBkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbjogZGlzYWJsZUNsaWNrUHJvcGFnYXRpb24sXG4gICAgcHJldmVudERlZmF1bHQ6IHByZXZlbnREZWZhdWx0LFxuICAgIHN0b3A6IHN0b3AsXG4gICAgZ2V0UHJvcGFnYXRpb25QYXRoOiBnZXRQcm9wYWdhdGlvblBhdGgsXG4gICAgZ2V0TW91c2VQb3NpdGlvbjogZ2V0TW91c2VQb3NpdGlvbixcbiAgICBnZXRXaGVlbERlbHRhOiBnZXRXaGVlbERlbHRhLFxuICAgIGlzRXh0ZXJuYWxUYXJnZXQ6IGlzRXh0ZXJuYWxUYXJnZXQsXG4gICAgYWRkTGlzdGVuZXI6IG9uLFxuICAgIHJlbW92ZUxpc3RlbmVyOiBvZmZcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgUG9zQW5pbWF0aW9uXG4gICAqIEBha2EgTC5Qb3NBbmltYXRpb25cbiAgICogQGluaGVyaXRzIEV2ZW50ZWRcbiAgICogVXNlZCBpbnRlcm5hbGx5IGZvciBwYW5uaW5nIGFuaW1hdGlvbnMsIHV0aWxpemluZyBDU1MzIFRyYW5zaXRpb25zIGZvciBtb2Rlcm4gYnJvd3NlcnMgYW5kIGEgdGltZXIgZmFsbGJhY2sgZm9yIElFNi05LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBqc1xuICAgKiB2YXIgbXlQb3NpdGlvbk1hcmtlciA9IEwubWFya2VyKFs0OC44NjQ3MTYsIDIuMjk0Njk0XSkuYWRkVG8obWFwKTtcbiAgICpcbiAgICogbXlQb3NpdGlvbk1hcmtlci5vbihcImNsaWNrXCIsIGZ1bmN0aW9uKCkge1xuICAgKiBcdHZhciBwb3MgPSBtYXAubGF0TG5nVG9MYXllclBvaW50KG15UG9zaXRpb25NYXJrZXIuZ2V0TGF0TG5nKCkpO1xuICAgKiBcdHBvcy55IC09IDI1O1xuICAgKiBcdHZhciBmeCA9IG5ldyBMLlBvc0FuaW1hdGlvbigpO1xuICAgKlxuICAgKiBcdGZ4Lm9uY2UoJ2VuZCcsZnVuY3Rpb24oKSB7XG4gICAqIFx0XHRwb3MueSArPSAyNTtcbiAgICogXHRcdGZ4LnJ1bihteVBvc2l0aW9uTWFya2VyLl9pY29uLCBwb3MsIDAuOCk7XG4gICAqIFx0fSk7XG4gICAqXG4gICAqIFx0ZngucnVuKG15UG9zaXRpb25NYXJrZXIuX2ljb24sIHBvcywgMC4zKTtcbiAgICogfSk7XG4gICAqXG4gICAqIGBgYFxuICAgKlxuICAgKiBAY29uc3RydWN0b3IgTC5Qb3NBbmltYXRpb24oKVxuICAgKiBDcmVhdGVzIGEgYFBvc0FuaW1hdGlvbmAgb2JqZWN0LlxuICAgKlxuICAgKi9cblxuICB2YXIgUG9zQW5pbWF0aW9uID0gRXZlbnRlZC5leHRlbmQoe1xuXG4gIFx0Ly8gQG1ldGhvZCBydW4oZWw6IEhUTUxFbGVtZW50LCBuZXdQb3M6IFBvaW50LCBkdXJhdGlvbj86IE51bWJlciwgZWFzZUxpbmVhcml0eT86IE51bWJlcilcbiAgXHQvLyBSdW4gYW4gYW5pbWF0aW9uIG9mIGEgZ2l2ZW4gZWxlbWVudCB0byBhIG5ldyBwb3NpdGlvbiwgb3B0aW9uYWxseSBzZXR0aW5nXG4gIFx0Ly8gZHVyYXRpb24gaW4gc2Vjb25kcyAoYDAuMjVgIGJ5IGRlZmF1bHQpIGFuZCBlYXNpbmcgbGluZWFyaXR5IGZhY3RvciAoM3JkXG4gIFx0Ly8gYXJndW1lbnQgb2YgdGhlIFtjdWJpYyBiZXppZXIgY3VydmVdKGh0dHBzOi8vY3ViaWMtYmV6aWVyLmNvbS8jMCwwLC41LDEpLFxuICBcdC8vIGAwLjVgIGJ5IGRlZmF1bHQpLlxuICBcdHJ1bjogZnVuY3Rpb24gKGVsLCBuZXdQb3MsIGR1cmF0aW9uLCBlYXNlTGluZWFyaXR5KSB7XG4gIFx0XHR0aGlzLnN0b3AoKTtcblxuICBcdFx0dGhpcy5fZWwgPSBlbDtcbiAgXHRcdHRoaXMuX2luUHJvZ3Jlc3MgPSB0cnVlO1xuICBcdFx0dGhpcy5fZHVyYXRpb24gPSBkdXJhdGlvbiB8fCAwLjI1O1xuICBcdFx0dGhpcy5fZWFzZU91dFBvd2VyID0gMSAvIE1hdGgubWF4KGVhc2VMaW5lYXJpdHkgfHwgMC41LCAwLjIpO1xuXG4gIFx0XHR0aGlzLl9zdGFydFBvcyA9IGdldFBvc2l0aW9uKGVsKTtcbiAgXHRcdHRoaXMuX29mZnNldCA9IG5ld1Bvcy5zdWJ0cmFjdCh0aGlzLl9zdGFydFBvcyk7XG4gIFx0XHR0aGlzLl9zdGFydFRpbWUgPSArbmV3IERhdGUoKTtcblxuICBcdFx0Ly8gQGV2ZW50IHN0YXJ0OiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYW5pbWF0aW9uIHN0YXJ0c1xuICBcdFx0dGhpcy5maXJlKCdzdGFydCcpO1xuXG4gIFx0XHR0aGlzLl9hbmltYXRlKCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc3RvcCgpXG4gIFx0Ly8gU3RvcHMgdGhlIGFuaW1hdGlvbiAoaWYgY3VycmVudGx5IHJ1bm5pbmcpLlxuICBcdHN0b3A6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5faW5Qcm9ncmVzcykgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fc3RlcCh0cnVlKTtcbiAgXHRcdHRoaXMuX2NvbXBsZXRlKCk7XG4gIFx0fSxcblxuICBcdF9hbmltYXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyBhbmltYXRpb24gbG9vcFxuICBcdFx0dGhpcy5fYW5pbUlkID0gcmVxdWVzdEFuaW1GcmFtZSh0aGlzLl9hbmltYXRlLCB0aGlzKTtcbiAgXHRcdHRoaXMuX3N0ZXAoKTtcbiAgXHR9LFxuXG4gIFx0X3N0ZXA6IGZ1bmN0aW9uIChyb3VuZCkge1xuICBcdFx0dmFyIGVsYXBzZWQgPSAoK25ldyBEYXRlKCkpIC0gdGhpcy5fc3RhcnRUaW1lLFxuICBcdFx0ICAgIGR1cmF0aW9uID0gdGhpcy5fZHVyYXRpb24gKiAxMDAwO1xuXG4gIFx0XHRpZiAoZWxhcHNlZCA8IGR1cmF0aW9uKSB7XG4gIFx0XHRcdHRoaXMuX3J1bkZyYW1lKHRoaXMuX2Vhc2VPdXQoZWxhcHNlZCAvIGR1cmF0aW9uKSwgcm91bmQpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGhpcy5fcnVuRnJhbWUoMSk7XG4gIFx0XHRcdHRoaXMuX2NvbXBsZXRlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9ydW5GcmFtZTogZnVuY3Rpb24gKHByb2dyZXNzLCByb3VuZCkge1xuICBcdFx0dmFyIHBvcyA9IHRoaXMuX3N0YXJ0UG9zLmFkZCh0aGlzLl9vZmZzZXQubXVsdGlwbHlCeShwcm9ncmVzcykpO1xuICBcdFx0aWYgKHJvdW5kKSB7XG4gIFx0XHRcdHBvcy5fcm91bmQoKTtcbiAgXHRcdH1cbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX2VsLCBwb3MpO1xuXG4gIFx0XHQvLyBAZXZlbnQgc3RlcDogRXZlbnRcbiAgXHRcdC8vIEZpcmVkIGNvbnRpbnVvdXNseSBkdXJpbmcgdGhlIGFuaW1hdGlvbi5cbiAgXHRcdHRoaXMuZmlyZSgnc3RlcCcpO1xuICBcdH0sXG5cbiAgXHRfY29tcGxldGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltSWQpO1xuXG4gIFx0XHR0aGlzLl9pblByb2dyZXNzID0gZmFsc2U7XG4gIFx0XHQvLyBAZXZlbnQgZW5kOiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYW5pbWF0aW9uIGVuZHMuXG4gIFx0XHR0aGlzLmZpcmUoJ2VuZCcpO1xuICBcdH0sXG5cbiAgXHRfZWFzZU91dDogZnVuY3Rpb24gKHQpIHtcbiAgXHRcdHJldHVybiAxIC0gTWF0aC5wb3coMSAtIHQsIHRoaXMuX2Vhc2VPdXRQb3dlcik7XG4gIFx0fVxuICB9KTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBNYXBcclxuICAgKiBAYWthIEwuTWFwXHJcbiAgICogQGluaGVyaXRzIEV2ZW50ZWRcclxuICAgKlxyXG4gICAqIFRoZSBjZW50cmFsIGNsYXNzIG9mIHRoZSBBUEkg4oCUIGl0IGlzIHVzZWQgdG8gY3JlYXRlIGEgbWFwIG9uIGEgcGFnZSBhbmQgbWFuaXB1bGF0ZSBpdC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIC8vIGluaXRpYWxpemUgdGhlIG1hcCBvbiB0aGUgXCJtYXBcIiBkaXYgd2l0aCBhIGdpdmVuIGNlbnRlciBhbmQgem9vbVxyXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJywge1xyXG4gICAqIFx0Y2VudGVyOiBbNTEuNTA1LCAtMC4wOV0sXHJcbiAgICogXHR6b29tOiAxM1xyXG4gICAqIH0pO1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICovXHJcblxyXG4gIHZhciBNYXAgPSBFdmVudGVkLmV4dGVuZCh7XHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAc2VjdGlvbiBNYXAgU3RhdGUgT3B0aW9uc1xyXG4gIFx0XHQvLyBAb3B0aW9uIGNyczogQ1JTID0gTC5DUlMuRVBTRzM4NTdcclxuICBcdFx0Ly8gVGhlIFtDb29yZGluYXRlIFJlZmVyZW5jZSBTeXN0ZW1dKCNjcnMpIHRvIHVzZS4gRG9uJ3QgY2hhbmdlIHRoaXMgaWYgeW91J3JlIG5vdFxyXG4gIFx0XHQvLyBzdXJlIHdoYXQgaXQgbWVhbnMuXHJcbiAgXHRcdGNyczogRVBTRzM4NTcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNlbnRlcjogTGF0TG5nID0gdW5kZWZpbmVkXHJcbiAgXHRcdC8vIEluaXRpYWwgZ2VvZ3JhcGhpYyBjZW50ZXIgb2YgdGhlIG1hcFxyXG4gIFx0XHRjZW50ZXI6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbTogTnVtYmVyID0gdW5kZWZpbmVkXHJcbiAgXHRcdC8vIEluaXRpYWwgbWFwIHpvb20gbGV2ZWxcclxuICBcdFx0em9vbTogdW5kZWZpbmVkLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtaW5ab29tOiBOdW1iZXIgPSAqXHJcbiAgXHRcdC8vIE1pbmltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwLlxyXG4gIFx0XHQvLyBJZiBub3Qgc3BlY2lmaWVkIGFuZCBhdCBsZWFzdCBvbmUgYEdyaWRMYXllcmAgb3IgYFRpbGVMYXllcmAgaXMgaW4gdGhlIG1hcCxcclxuICBcdFx0Ly8gdGhlIGxvd2VzdCBvZiB0aGVpciBgbWluWm9vbWAgb3B0aW9ucyB3aWxsIGJlIHVzZWQgaW5zdGVhZC5cclxuICBcdFx0bWluWm9vbTogdW5kZWZpbmVkLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhab29tOiBOdW1iZXIgPSAqXHJcbiAgXHRcdC8vIE1heGltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwLlxyXG4gIFx0XHQvLyBJZiBub3Qgc3BlY2lmaWVkIGFuZCBhdCBsZWFzdCBvbmUgYEdyaWRMYXllcmAgb3IgYFRpbGVMYXllcmAgaXMgaW4gdGhlIG1hcCxcclxuICBcdFx0Ly8gdGhlIGhpZ2hlc3Qgb2YgdGhlaXIgYG1heFpvb21gIG9wdGlvbnMgd2lsbCBiZSB1c2VkIGluc3RlYWQuXHJcbiAgXHRcdG1heFpvb206IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbGF5ZXJzOiBMYXllcltdID0gW11cclxuICBcdFx0Ly8gQXJyYXkgb2YgbGF5ZXJzIHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgbWFwIGluaXRpYWxseVxyXG4gIFx0XHRsYXllcnM6IFtdLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhCb3VuZHM6IExhdExuZ0JvdW5kcyA9IG51bGxcclxuICBcdFx0Ly8gV2hlbiB0aGlzIG9wdGlvbiBpcyBzZXQsIHRoZSBtYXAgcmVzdHJpY3RzIHRoZSB2aWV3IHRvIHRoZSBnaXZlblxyXG4gIFx0XHQvLyBnZW9ncmFwaGljYWwgYm91bmRzLCBib3VuY2luZyB0aGUgdXNlciBiYWNrIGlmIHRoZSB1c2VyIHRyaWVzIHRvIHBhblxyXG4gIFx0XHQvLyBvdXRzaWRlIHRoZSB2aWV3LiBUbyBzZXQgdGhlIHJlc3RyaWN0aW9uIGR5bmFtaWNhbGx5LCB1c2VcclxuICBcdFx0Ly8gW2BzZXRNYXhCb3VuZHNgXSgjbWFwLXNldG1heGJvdW5kcykgbWV0aG9kLlxyXG4gIFx0XHRtYXhCb3VuZHM6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmVuZGVyZXI6IFJlbmRlcmVyID0gKlxyXG4gIFx0XHQvLyBUaGUgZGVmYXVsdCBtZXRob2QgZm9yIGRyYXdpbmcgdmVjdG9yIGxheWVycyBvbiB0aGUgbWFwLiBgTC5TVkdgXHJcbiAgXHRcdC8vIG9yIGBMLkNhbnZhc2AgYnkgZGVmYXVsdCBkZXBlbmRpbmcgb24gYnJvd3NlciBzdXBwb3J0LlxyXG4gIFx0XHRyZW5kZXJlcjogdW5kZWZpbmVkLFxyXG5cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIEFuaW1hdGlvbiBPcHRpb25zXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbUFuaW1hdGlvbjogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgbWFwIHpvb20gYW5pbWF0aW9uIGlzIGVuYWJsZWQuIEJ5IGRlZmF1bHQgaXQncyBlbmFibGVkXHJcbiAgXHRcdC8vIGluIGFsbCBicm93c2VycyB0aGF0IHN1cHBvcnQgQ1NTMyBUcmFuc2l0aW9ucyBleGNlcHQgQW5kcm9pZC5cclxuICBcdFx0em9vbUFuaW1hdGlvbjogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbUFuaW1hdGlvblRocmVzaG9sZDogTnVtYmVyID0gNFxyXG4gIFx0XHQvLyBXb24ndCBhbmltYXRlIHpvb20gaWYgdGhlIHpvb20gZGlmZmVyZW5jZSBleGNlZWRzIHRoaXMgdmFsdWUuXHJcbiAgXHRcdHpvb21BbmltYXRpb25UaHJlc2hvbGQ6IDQsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGZhZGVBbmltYXRpb246IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIHRpbGUgZmFkZSBhbmltYXRpb24gaXMgZW5hYmxlZC4gQnkgZGVmYXVsdCBpdCdzIGVuYWJsZWRcclxuICBcdFx0Ly8gaW4gYWxsIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCBDU1MzIFRyYW5zaXRpb25zIGV4Y2VwdCBBbmRyb2lkLlxyXG4gIFx0XHRmYWRlQW5pbWF0aW9uOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXJrZXJab29tQW5pbWF0aW9uOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIG1hcmtlcnMgYW5pbWF0ZSB0aGVpciB6b29tIHdpdGggdGhlIHpvb20gYW5pbWF0aW9uLCBpZiBkaXNhYmxlZFxyXG4gIFx0XHQvLyB0aGV5IHdpbGwgZGlzYXBwZWFyIGZvciB0aGUgbGVuZ3RoIG9mIHRoZSBhbmltYXRpb24uIEJ5IGRlZmF1bHQgaXQnc1xyXG4gIFx0XHQvLyBlbmFibGVkIGluIGFsbCBicm93c2VycyB0aGF0IHN1cHBvcnQgQ1NTMyBUcmFuc2l0aW9ucyBleGNlcHQgQW5kcm9pZC5cclxuICBcdFx0bWFya2VyWm9vbUFuaW1hdGlvbjogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdHJhbnNmb3JtM0RMaW1pdDogTnVtYmVyID0gMl4yM1xyXG4gIFx0XHQvLyBEZWZpbmVzIHRoZSBtYXhpbXVtIHNpemUgb2YgYSBDU1MgdHJhbnNsYXRpb24gdHJhbnNmb3JtLiBUaGUgZGVmYXVsdFxyXG4gIFx0XHQvLyB2YWx1ZSBzaG91bGQgbm90IGJlIGNoYW5nZWQgdW5sZXNzIGEgd2ViIGJyb3dzZXIgcG9zaXRpb25zIGxheWVycyBpblxyXG4gIFx0XHQvLyB0aGUgd3JvbmcgcGxhY2UgYWZ0ZXIgZG9pbmcgYSBsYXJnZSBgcGFuQnlgLlxyXG4gIFx0XHR0cmFuc2Zvcm0zRExpbWl0OiA4Mzg4NjA4LCAvLyBQcmVjaXNpb24gbGltaXQgb2YgYSAzMi1iaXQgZmxvYXRcclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIEludGVyYWN0aW9uIE9wdGlvbnNcclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tU25hcDogTnVtYmVyID0gMVxyXG4gIFx0XHQvLyBGb3JjZXMgdGhlIG1hcCdzIHpvb20gbGV2ZWwgdG8gYWx3YXlzIGJlIGEgbXVsdGlwbGUgb2YgdGhpcywgcGFydGljdWxhcmx5XHJcbiAgXHRcdC8vIHJpZ2h0IGFmdGVyIGEgW2BmaXRCb3VuZHMoKWBdKCNtYXAtZml0Ym91bmRzKSBvciBhIHBpbmNoLXpvb20uXHJcbiAgXHRcdC8vIEJ5IGRlZmF1bHQsIHRoZSB6b29tIGxldmVsIHNuYXBzIHRvIHRoZSBuZWFyZXN0IGludGVnZXI7IGxvd2VyIHZhbHVlc1xyXG4gIFx0XHQvLyAoZS5nLiBgMC41YCBvciBgMC4xYCkgYWxsb3cgZm9yIGdyZWF0ZXIgZ3JhbnVsYXJpdHkuIEEgdmFsdWUgb2YgYDBgXHJcbiAgXHRcdC8vIG1lYW5zIHRoZSB6b29tIGxldmVsIHdpbGwgbm90IGJlIHNuYXBwZWQgYWZ0ZXIgYGZpdEJvdW5kc2Agb3IgYSBwaW5jaC16b29tLlxyXG4gIFx0XHR6b29tU25hcDogMSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gem9vbURlbHRhOiBOdW1iZXIgPSAxXHJcbiAgXHRcdC8vIENvbnRyb2xzIGhvdyBtdWNoIHRoZSBtYXAncyB6b29tIGxldmVsIHdpbGwgY2hhbmdlIGFmdGVyIGFcclxuICBcdFx0Ly8gW2B6b29tSW4oKWBdKCNtYXAtem9vbWluKSwgW2B6b29tT3V0KClgXSgjbWFwLXpvb21vdXQpLCBwcmVzc2luZyBgK2BcclxuICBcdFx0Ly8gb3IgYC1gIG9uIHRoZSBrZXlib2FyZCwgb3IgdXNpbmcgdGhlIFt6b29tIGNvbnRyb2xzXSgjY29udHJvbC16b29tKS5cclxuICBcdFx0Ly8gVmFsdWVzIHNtYWxsZXIgdGhhbiBgMWAgKGUuZy4gYDAuNWApIGFsbG93IGZvciBncmVhdGVyIGdyYW51bGFyaXR5LlxyXG4gIFx0XHR6b29tRGVsdGE6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHRyYWNrUmVzaXplOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSBtYXAgYXV0b21hdGljYWxseSBoYW5kbGVzIGJyb3dzZXIgd2luZG93IHJlc2l6ZSB0byB1cGRhdGUgaXRzZWxmLlxyXG4gIFx0XHR0cmFja1Jlc2l6ZTogdHJ1ZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoaWQsIG9wdGlvbnMpIHsgLy8gKEhUTUxFbGVtZW50IG9yIFN0cmluZywgT2JqZWN0KVxyXG4gIFx0XHRvcHRpb25zID0gc2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdC8vIE1ha2Ugc3VyZSB0byBhc3NpZ24gaW50ZXJuYWwgZmxhZ3MgYXQgdGhlIGJlZ2lubmluZyxcclxuICBcdFx0Ly8gdG8gYXZvaWQgaW5jb25zaXN0ZW50IHN0YXRlIGluIHNvbWUgZWRnZSBjYXNlcy5cclxuICBcdFx0dGhpcy5faGFuZGxlcnMgPSBbXTtcclxuICBcdFx0dGhpcy5fbGF5ZXJzID0ge307XHJcbiAgXHRcdHRoaXMuX3pvb21Cb3VuZExheWVycyA9IHt9O1xyXG4gIFx0XHR0aGlzLl9zaXplQ2hhbmdlZCA9IHRydWU7XHJcblxyXG4gIFx0XHR0aGlzLl9pbml0Q29udGFpbmVyKGlkKTtcclxuICBcdFx0dGhpcy5faW5pdExheW91dCgpO1xyXG5cclxuICBcdFx0Ly8gaGFjayBmb3IgaHR0cHM6Ly9naXRodWIuY29tL0xlYWZsZXQvTGVhZmxldC9pc3N1ZXMvMTk4MFxyXG4gIFx0XHR0aGlzLl9vblJlc2l6ZSA9IGJpbmQodGhpcy5fb25SZXNpemUsIHRoaXMpO1xyXG5cclxuICBcdFx0dGhpcy5faW5pdEV2ZW50cygpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMubWF4Qm91bmRzKSB7XHJcbiAgXHRcdFx0dGhpcy5zZXRNYXhCb3VuZHMob3B0aW9ucy5tYXhCb3VuZHMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy56b29tICE9PSB1bmRlZmluZWQpIHtcclxuICBcdFx0XHR0aGlzLl96b29tID0gdGhpcy5fbGltaXRab29tKG9wdGlvbnMuem9vbSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLmNlbnRlciAmJiBvcHRpb25zLnpvb20gIT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHRoaXMuc2V0Vmlldyh0b0xhdExuZyhvcHRpb25zLmNlbnRlciksIG9wdGlvbnMuem9vbSwge3Jlc2V0OiB0cnVlfSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuY2FsbEluaXRIb29rcygpO1xyXG5cclxuICBcdFx0Ly8gZG9uJ3QgYW5pbWF0ZSBvbiBicm93c2VycyB3aXRob3V0IGhhcmR3YXJlLWFjY2VsZXJhdGVkIHRyYW5zaXRpb25zIG9yIG9sZCBBbmRyb2lkL09wZXJhXHJcbiAgXHRcdHRoaXMuX3pvb21BbmltYXRlZCA9IFRSQU5TSVRJT04gJiYgQnJvd3Nlci5hbnkzZCAmJiAhQnJvd3Nlci5tb2JpbGVPcGVyYSAmJlxyXG4gIFx0XHRcdFx0dGhpcy5vcHRpb25zLnpvb21BbmltYXRpb247XHJcblxyXG4gIFx0XHQvLyB6b29tIHRyYW5zaXRpb25zIHJ1biB3aXRoIHRoZSBzYW1lIGR1cmF0aW9uIGZvciBhbGwgbGF5ZXJzLCBzbyBpZiBvbmUgb2YgdHJhbnNpdGlvbmVuZCBldmVudHNcclxuICBcdFx0Ly8gaGFwcGVucyBhZnRlciBzdGFydGluZyB6b29tIGFuaW1hdGlvbiAocHJvcGFnYXRpbmcgdG8gdGhlIG1hcCBwYW5lKSwgd2Uga25vdyB0aGF0IGl0IGVuZGVkIGdsb2JhbGx5XHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHR0aGlzLl9jcmVhdGVBbmltUHJveHkoKTtcclxuICBcdFx0XHRvbih0aGlzLl9wcm94eSwgVFJBTlNJVElPTl9FTkQsIHRoaXMuX2NhdGNoVHJhbnNpdGlvbkVuZCwgdGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2FkZExheWVycyh0aGlzLm9wdGlvbnMubGF5ZXJzKTtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE1ldGhvZHMgZm9yIG1vZGlmeWluZyBtYXAgc3RhdGVcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFZpZXcoY2VudGVyOiBMYXRMbmcsIHpvb206IE51bWJlciwgb3B0aW9ucz86IFpvb20vcGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB2aWV3IG9mIHRoZSBtYXAgKGdlb2dyYXBoaWNhbCBjZW50ZXIgYW5kIHpvb20pIHdpdGggdGhlIGdpdmVuXHJcbiAgXHQvLyBhbmltYXRpb24gb3B0aW9ucy5cclxuICBcdHNldFZpZXc6IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20sIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdHpvb20gPSB6b29tID09PSB1bmRlZmluZWQgPyB0aGlzLl96b29tIDogdGhpcy5fbGltaXRab29tKHpvb20pO1xyXG4gIFx0XHRjZW50ZXIgPSB0aGlzLl9saW1pdENlbnRlcih0b0xhdExuZyhjZW50ZXIpLCB6b29tLCB0aGlzLm9wdGlvbnMubWF4Qm91bmRzKTtcclxuICBcdFx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcblxyXG4gIFx0XHR0aGlzLl9zdG9wKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9hZGVkICYmICFvcHRpb25zLnJlc2V0ICYmIG9wdGlvbnMgIT09IHRydWUpIHtcclxuXHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgXHRcdFx0XHRvcHRpb25zLnpvb20gPSBleHRlbmQoe2FuaW1hdGU6IG9wdGlvbnMuYW5pbWF0ZX0sIG9wdGlvbnMuem9vbSk7XHJcbiAgXHRcdFx0XHRvcHRpb25zLnBhbiA9IGV4dGVuZCh7YW5pbWF0ZTogb3B0aW9ucy5hbmltYXRlLCBkdXJhdGlvbjogb3B0aW9ucy5kdXJhdGlvbn0sIG9wdGlvbnMucGFuKTtcclxuICBcdFx0XHR9XHJcblxyXG4gIFx0XHRcdC8vIHRyeSBhbmltYXRpbmcgcGFuIG9yIHpvb21cclxuICBcdFx0XHR2YXIgbW92ZWQgPSAodGhpcy5fem9vbSAhPT0gem9vbSkgP1xyXG4gIFx0XHRcdFx0dGhpcy5fdHJ5QW5pbWF0ZWRab29tICYmIHRoaXMuX3RyeUFuaW1hdGVkWm9vbShjZW50ZXIsIHpvb20sIG9wdGlvbnMuem9vbSkgOlxyXG4gIFx0XHRcdFx0dGhpcy5fdHJ5QW5pbWF0ZWRQYW4oY2VudGVyLCBvcHRpb25zLnBhbik7XHJcblxyXG4gIFx0XHRcdGlmIChtb3ZlZCkge1xyXG4gIFx0XHRcdFx0Ly8gcHJldmVudCByZXNpemUgaGFuZGxlciBjYWxsLCB0aGUgdmlldyB3aWxsIHJlZnJlc2ggYWZ0ZXIgYW5pbWF0aW9uIGFueXdheVxyXG4gIFx0XHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3NpemVUaW1lcik7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGFuaW1hdGlvbiBkaWRuJ3Qgc3RhcnQsIGp1c3QgcmVzZXQgdGhlIG1hcCB2aWV3XHJcbiAgXHRcdHRoaXMuX3Jlc2V0VmlldyhjZW50ZXIsIHpvb20sIG9wdGlvbnMucGFuICYmIG9wdGlvbnMucGFuLm5vTW92ZVN0YXJ0KTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpvb20oem9vbTogTnVtYmVyLCBvcHRpb25zPzogWm9vbS9wYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFNldHMgdGhlIHpvb20gb2YgdGhlIG1hcC5cclxuICBcdHNldFpvb206IGZ1bmN0aW9uICh6b29tLCBvcHRpb25zKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5fem9vbSA9IHpvb207XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMuc2V0Vmlldyh0aGlzLmdldENlbnRlcigpLCB6b29tLCB7em9vbTogb3B0aW9uc30pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHpvb21JbihkZWx0YT86IE51bWJlciwgb3B0aW9ucz86IFpvb20gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIEluY3JlYXNlcyB0aGUgem9vbSBvZiB0aGUgbWFwIGJ5IGBkZWx0YWAgKFtgem9vbURlbHRhYF0oI21hcC16b29tZGVsdGEpIGJ5IGRlZmF1bHQpLlxyXG4gIFx0em9vbUluOiBmdW5jdGlvbiAoZGVsdGEsIG9wdGlvbnMpIHtcclxuICBcdFx0ZGVsdGEgPSBkZWx0YSB8fCAoQnJvd3Nlci5hbnkzZCA/IHRoaXMub3B0aW9ucy56b29tRGVsdGEgOiAxKTtcclxuICBcdFx0cmV0dXJuIHRoaXMuc2V0Wm9vbSh0aGlzLl96b29tICsgZGVsdGEsIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHpvb21PdXQoZGVsdGE/OiBOdW1iZXIsIG9wdGlvbnM/OiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBEZWNyZWFzZXMgdGhlIHpvb20gb2YgdGhlIG1hcCBieSBgZGVsdGFgIChbYHpvb21EZWx0YWBdKCNtYXAtem9vbWRlbHRhKSBieSBkZWZhdWx0KS5cclxuICBcdHpvb21PdXQ6IGZ1bmN0aW9uIChkZWx0YSwgb3B0aW9ucykge1xyXG4gIFx0XHRkZWx0YSA9IGRlbHRhIHx8IChCcm93c2VyLmFueTNkID8gdGhpcy5vcHRpb25zLnpvb21EZWx0YSA6IDEpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHRoaXMuX3pvb20gLSBkZWx0YSwgb3B0aW9ucyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0Wm9vbUFyb3VuZChsYXRsbmc6IExhdExuZywgem9vbTogTnVtYmVyLCBvcHRpb25zOiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBab29tcyB0aGUgbWFwIHdoaWxlIGtlZXBpbmcgYSBzcGVjaWZpZWQgZ2VvZ3JhcGhpY2FsIHBvaW50IG9uIHRoZSBtYXBcclxuICBcdC8vIHN0YXRpb25hcnkgKGUuZy4gdXNlZCBpbnRlcm5hbGx5IGZvciBzY3JvbGwgem9vbSBhbmQgZG91YmxlLWNsaWNrIHpvb20pLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpvb21Bcm91bmQob2Zmc2V0OiBQb2ludCwgem9vbTogTnVtYmVyLCBvcHRpb25zOiBab29tIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBab29tcyB0aGUgbWFwIHdoaWxlIGtlZXBpbmcgYSBzcGVjaWZpZWQgcGl4ZWwgb24gdGhlIG1hcCAocmVsYXRpdmUgdG8gdGhlIHRvcC1sZWZ0IGNvcm5lcikgc3RhdGlvbmFyeS5cclxuICBcdHNldFpvb21Bcm91bmQ6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20sIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gdGhpcy5nZXRab29tU2NhbGUoem9vbSksXHJcbiAgXHRcdCAgICB2aWV3SGFsZiA9IHRoaXMuZ2V0U2l6ZSgpLmRpdmlkZUJ5KDIpLFxyXG4gIFx0XHQgICAgY29udGFpbmVyUG9pbnQgPSBsYXRsbmcgaW5zdGFuY2VvZiBQb2ludCA/IGxhdGxuZyA6IHRoaXMubGF0TG5nVG9Db250YWluZXJQb2ludChsYXRsbmcpLFxyXG5cclxuICBcdFx0ICAgIGNlbnRlck9mZnNldCA9IGNvbnRhaW5lclBvaW50LnN1YnRyYWN0KHZpZXdIYWxmKS5tdWx0aXBseUJ5KDEgLSAxIC8gc2NhbGUpLFxyXG4gIFx0XHQgICAgbmV3Q2VudGVyID0gdGhpcy5jb250YWluZXJQb2ludFRvTGF0TG5nKHZpZXdIYWxmLmFkZChjZW50ZXJPZmZzZXQpKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLnNldFZpZXcobmV3Q2VudGVyLCB6b29tLCB7em9vbTogb3B0aW9uc30pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0Qm91bmRzQ2VudGVyWm9vbTogZnVuY3Rpb24gKGJvdW5kcywgb3B0aW9ucykge1xyXG5cclxuICBcdFx0b3B0aW9ucyA9IG9wdGlvbnMgfHwge307XHJcbiAgXHRcdGJvdW5kcyA9IGJvdW5kcy5nZXRCb3VuZHMgPyBib3VuZHMuZ2V0Qm91bmRzKCkgOiB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0dmFyIHBhZGRpbmdUTCA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nVG9wTGVmdCB8fCBvcHRpb25zLnBhZGRpbmcgfHwgWzAsIDBdKSxcclxuICBcdFx0ICAgIHBhZGRpbmdCUiA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nQm90dG9tUmlnaHQgfHwgb3B0aW9ucy5wYWRkaW5nIHx8IFswLCAwXSksXHJcblxyXG4gIFx0XHQgICAgem9vbSA9IHRoaXMuZ2V0Qm91bmRzWm9vbShib3VuZHMsIGZhbHNlLCBwYWRkaW5nVEwuYWRkKHBhZGRpbmdCUikpO1xyXG5cclxuICBcdFx0em9vbSA9ICh0eXBlb2Ygb3B0aW9ucy5tYXhab29tID09PSAnbnVtYmVyJykgPyBNYXRoLm1pbihvcHRpb25zLm1heFpvb20sIHpvb20pIDogem9vbTtcclxuXHJcbiAgXHRcdGlmICh6b29tID09PSBJbmZpbml0eSkge1xyXG4gIFx0XHRcdHJldHVybiB7XHJcbiAgXHRcdFx0XHRjZW50ZXI6IGJvdW5kcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0XHRcdHpvb206IHpvb21cclxuICBcdFx0XHR9O1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgcGFkZGluZ09mZnNldCA9IHBhZGRpbmdCUi5zdWJ0cmFjdChwYWRkaW5nVEwpLmRpdmlkZUJ5KDIpLFxyXG5cclxuICBcdFx0ICAgIHN3UG9pbnQgPSB0aGlzLnByb2plY3QoYm91bmRzLmdldFNvdXRoV2VzdCgpLCB6b29tKSxcclxuICBcdFx0ICAgIG5lUG9pbnQgPSB0aGlzLnByb2plY3QoYm91bmRzLmdldE5vcnRoRWFzdCgpLCB6b29tKSxcclxuICBcdFx0ICAgIGNlbnRlciA9IHRoaXMudW5wcm9qZWN0KHN3UG9pbnQuYWRkKG5lUG9pbnQpLmRpdmlkZUJ5KDIpLmFkZChwYWRkaW5nT2Zmc2V0KSwgem9vbSk7XHJcblxyXG4gIFx0XHRyZXR1cm4ge1xyXG4gIFx0XHRcdGNlbnRlcjogY2VudGVyLFxyXG4gIFx0XHRcdHpvb206IHpvb21cclxuICBcdFx0fTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXRCb3VuZHMoYm91bmRzOiBMYXRMbmdCb3VuZHMsIG9wdGlvbnM/OiBmaXRCb3VuZHMgb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFNldHMgYSBtYXAgdmlldyB0aGF0IGNvbnRhaW5zIHRoZSBnaXZlbiBnZW9ncmFwaGljYWwgYm91bmRzIHdpdGggdGhlXHJcbiAgXHQvLyBtYXhpbXVtIHpvb20gbGV2ZWwgcG9zc2libGUuXHJcbiAgXHRmaXRCb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMsIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdGJvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGJvdW5kcyk7XHJcblxyXG4gIFx0XHRpZiAoIWJvdW5kcy5pc1ZhbGlkKCkpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ0JvdW5kcyBhcmUgbm90IHZhbGlkLicpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgdGFyZ2V0ID0gdGhpcy5fZ2V0Qm91bmRzQ2VudGVyWm9vbShib3VuZHMsIG9wdGlvbnMpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5zZXRWaWV3KHRhcmdldC5jZW50ZXIsIHRhcmdldC56b29tLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmaXRXb3JsZChvcHRpb25zPzogZml0Qm91bmRzIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIGEgbWFwIHZpZXcgdGhhdCBtb3N0bHkgY29udGFpbnMgdGhlIHdob2xlIHdvcmxkIHdpdGggdGhlIG1heGltdW1cclxuICBcdC8vIHpvb20gbGV2ZWwgcG9zc2libGUuXHJcbiAgXHRmaXRXb3JsZDogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuZml0Qm91bmRzKFtbLTkwLCAtMTgwXSwgWzkwLCAxODBdXSwgb3B0aW9ucyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuVG8obGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFBhbnMgdGhlIG1hcCB0byBhIGdpdmVuIGNlbnRlci5cclxuICBcdHBhblRvOiBmdW5jdGlvbiAoY2VudGVyLCBvcHRpb25zKSB7IC8vIChMYXRMbmcpXHJcbiAgXHRcdHJldHVybiB0aGlzLnNldFZpZXcoY2VudGVyLCB0aGlzLl96b29tLCB7cGFuOiBvcHRpb25zfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuQnkob2Zmc2V0OiBQb2ludCwgb3B0aW9ucz86IFBhbiBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gUGFucyB0aGUgbWFwIGJ5IGEgZ2l2ZW4gbnVtYmVyIG9mIHBpeGVscyAoYW5pbWF0ZWQpLlxyXG4gIFx0cGFuQnk6IGZ1bmN0aW9uIChvZmZzZXQsIG9wdGlvbnMpIHtcclxuICBcdFx0b2Zmc2V0ID0gdG9Qb2ludChvZmZzZXQpLnJvdW5kKCk7XHJcbiAgXHRcdG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICBcdFx0aWYgKCFvZmZzZXQueCAmJiAhb2Zmc2V0LnkpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy5maXJlKCdtb3ZlZW5kJyk7XHJcbiAgXHRcdH1cclxuICBcdFx0Ly8gSWYgd2UgcGFuIHRvbyBmYXIsIENocm9tZSBnZXRzIGlzc3VlcyB3aXRoIHRpbGVzXHJcbiAgXHRcdC8vIGFuZCBtYWtlcyB0aGVtIGRpc2FwcGVhciBvciBhcHBlYXIgaW4gdGhlIHdyb25nIHBsYWNlIChzbGlnaHRseSBvZmZzZXQpICMyNjAyXHJcbiAgXHRcdGlmIChvcHRpb25zLmFuaW1hdGUgIT09IHRydWUgJiYgIXRoaXMuZ2V0U2l6ZSgpLmNvbnRhaW5zKG9mZnNldCkpIHtcclxuICBcdFx0XHR0aGlzLl9yZXNldFZpZXcodGhpcy51bnByb2plY3QodGhpcy5wcm9qZWN0KHRoaXMuZ2V0Q2VudGVyKCkpLmFkZChvZmZzZXQpKSwgdGhpcy5nZXRab29tKCkpO1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIXRoaXMuX3BhbkFuaW0pIHtcclxuICBcdFx0XHR0aGlzLl9wYW5BbmltID0gbmV3IFBvc0FuaW1hdGlvbigpO1xyXG5cclxuICBcdFx0XHR0aGlzLl9wYW5BbmltLm9uKHtcclxuICBcdFx0XHRcdCdzdGVwJzogdGhpcy5fb25QYW5UcmFuc2l0aW9uU3RlcCxcclxuICBcdFx0XHRcdCdlbmQnOiB0aGlzLl9vblBhblRyYW5zaXRpb25FbmRcclxuICBcdFx0XHR9LCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gZG9uJ3QgZmlyZSBtb3Zlc3RhcnQgaWYgYW5pbWF0aW5nIGluZXJ0aWFcclxuICBcdFx0aWYgKCFvcHRpb25zLm5vTW92ZVN0YXJ0KSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3Zlc3RhcnQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gYW5pbWF0ZSBwYW4gdW5sZXNzIGFuaW1hdGU6IGZhbHNlIHNwZWNpZmllZFxyXG4gIFx0XHRpZiAob3B0aW9ucy5hbmltYXRlICE9PSBmYWxzZSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX21hcFBhbmUsICdsZWFmbGV0LXBhbi1hbmltJyk7XHJcblxyXG4gIFx0XHRcdHZhciBuZXdQb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCkuc3VidHJhY3Qob2Zmc2V0KS5yb3VuZCgpO1xyXG4gIFx0XHRcdHRoaXMuX3BhbkFuaW0ucnVuKHRoaXMuX21hcFBhbmUsIG5ld1Bvcywgb3B0aW9ucy5kdXJhdGlvbiB8fCAwLjI1LCBvcHRpb25zLmVhc2VMaW5lYXJpdHkpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMuX3Jhd1BhbkJ5KG9mZnNldCk7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJykuZmlyZSgnbW92ZWVuZCcpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmbHlUbyhsYXRsbmc6IExhdExuZywgem9vbT86IE51bWJlciwgb3B0aW9ucz86IFpvb20vcGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB2aWV3IG9mIHRoZSBtYXAgKGdlb2dyYXBoaWNhbCBjZW50ZXIgYW5kIHpvb20pIHBlcmZvcm1pbmcgYSBzbW9vdGhcclxuICBcdC8vIHBhbi16b29tIGFuaW1hdGlvbi5cclxuICBcdGZseVRvOiBmdW5jdGlvbiAodGFyZ2V0Q2VudGVyLCB0YXJnZXRab29tLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuICBcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSA9PT0gZmFsc2UgfHwgIUJyb3dzZXIuYW55M2QpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy5zZXRWaWV3KHRhcmdldENlbnRlciwgdGFyZ2V0Wm9vbSwgb3B0aW9ucyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3N0b3AoKTtcclxuXHJcbiAgXHRcdHZhciBmcm9tID0gdGhpcy5wcm9qZWN0KHRoaXMuZ2V0Q2VudGVyKCkpLFxyXG4gIFx0XHQgICAgdG8gPSB0aGlzLnByb2plY3QodGFyZ2V0Q2VudGVyKSxcclxuICBcdFx0ICAgIHNpemUgPSB0aGlzLmdldFNpemUoKSxcclxuICBcdFx0ICAgIHN0YXJ0Wm9vbSA9IHRoaXMuX3pvb207XHJcblxyXG4gIFx0XHR0YXJnZXRDZW50ZXIgPSB0b0xhdExuZyh0YXJnZXRDZW50ZXIpO1xyXG4gIFx0XHR0YXJnZXRab29tID0gdGFyZ2V0Wm9vbSA9PT0gdW5kZWZpbmVkID8gc3RhcnRab29tIDogdGFyZ2V0Wm9vbTtcclxuXHJcbiAgXHRcdHZhciB3MCA9IE1hdGgubWF4KHNpemUueCwgc2l6ZS55KSxcclxuICBcdFx0ICAgIHcxID0gdzAgKiB0aGlzLmdldFpvb21TY2FsZShzdGFydFpvb20sIHRhcmdldFpvb20pLFxyXG4gIFx0XHQgICAgdTEgPSAodG8uZGlzdGFuY2VUbyhmcm9tKSkgfHwgMSxcclxuICBcdFx0ICAgIHJobyA9IDEuNDIsXHJcbiAgXHRcdCAgICByaG8yID0gcmhvICogcmhvO1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gcihpKSB7XHJcbiAgXHRcdFx0dmFyIHMxID0gaSA/IC0xIDogMSxcclxuICBcdFx0XHQgICAgczIgPSBpID8gdzEgOiB3MCxcclxuICBcdFx0XHQgICAgdDEgPSB3MSAqIHcxIC0gdzAgKiB3MCArIHMxICogcmhvMiAqIHJobzIgKiB1MSAqIHUxLFxyXG4gIFx0XHRcdCAgICBiMSA9IDIgKiBzMiAqIHJobzIgKiB1MSxcclxuICBcdFx0XHQgICAgYiA9IHQxIC8gYjEsXHJcbiAgXHRcdFx0ICAgIHNxID0gTWF0aC5zcXJ0KGIgKiBiICsgMSkgLSBiO1xyXG5cclxuICBcdFx0XHQgICAgLy8gd29ya2Fyb3VuZCBmb3IgZmxvYXRpbmcgcG9pbnQgcHJlY2lzaW9uIGJ1ZyB3aGVuIHNxID0gMCwgbG9nID0gLUluZmluaXRlLFxyXG4gIFx0XHRcdCAgICAvLyB0aHVzIHRyaWdnZXJpbmcgYW4gaW5maW5pdGUgbG9vcCBpbiBmbHlUb1xyXG4gIFx0XHRcdCAgICB2YXIgbG9nID0gc3EgPCAwLjAwMDAwMDAwMSA/IC0xOCA6IE1hdGgubG9nKHNxKTtcclxuXHJcbiAgXHRcdFx0cmV0dXJuIGxvZztcclxuICBcdFx0fVxyXG5cclxuICBcdFx0ZnVuY3Rpb24gc2luaChuKSB7IHJldHVybiAoTWF0aC5leHAobikgLSBNYXRoLmV4cCgtbikpIC8gMjsgfVxyXG4gIFx0XHRmdW5jdGlvbiBjb3NoKG4pIHsgcmV0dXJuIChNYXRoLmV4cChuKSArIE1hdGguZXhwKC1uKSkgLyAyOyB9XHJcbiAgXHRcdGZ1bmN0aW9uIHRhbmgobikgeyByZXR1cm4gc2luaChuKSAvIGNvc2gobik7IH1cclxuXHJcbiAgXHRcdHZhciByMCA9IHIoMCk7XHJcblxyXG4gIFx0XHRmdW5jdGlvbiB3KHMpIHsgcmV0dXJuIHcwICogKGNvc2gocjApIC8gY29zaChyMCArIHJobyAqIHMpKTsgfVxyXG4gIFx0XHRmdW5jdGlvbiB1KHMpIHsgcmV0dXJuIHcwICogKGNvc2gocjApICogdGFuaChyMCArIHJobyAqIHMpIC0gc2luaChyMCkpIC8gcmhvMjsgfVxyXG5cclxuICBcdFx0ZnVuY3Rpb24gZWFzZU91dCh0KSB7IHJldHVybiAxIC0gTWF0aC5wb3coMSAtIHQsIDEuNSk7IH1cclxuXHJcbiAgXHRcdHZhciBzdGFydCA9IERhdGUubm93KCksXHJcbiAgXHRcdCAgICBTID0gKHIoMSkgLSByMCkgLyByaG8sXHJcbiAgXHRcdCAgICBkdXJhdGlvbiA9IG9wdGlvbnMuZHVyYXRpb24gPyAxMDAwICogb3B0aW9ucy5kdXJhdGlvbiA6IDEwMDAgKiBTICogMC44O1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gZnJhbWUoKSB7XHJcbiAgXHRcdFx0dmFyIHQgPSAoRGF0ZS5ub3coKSAtIHN0YXJ0KSAvIGR1cmF0aW9uLFxyXG4gIFx0XHRcdCAgICBzID0gZWFzZU91dCh0KSAqIFM7XHJcblxyXG4gIFx0XHRcdGlmICh0IDw9IDEpIHtcclxuICBcdFx0XHRcdHRoaXMuX2ZseVRvRnJhbWUgPSByZXF1ZXN0QW5pbUZyYW1lKGZyYW1lLCB0aGlzKTtcclxuXHJcbiAgXHRcdFx0XHR0aGlzLl9tb3ZlKFxyXG4gIFx0XHRcdFx0XHR0aGlzLnVucHJvamVjdChmcm9tLmFkZCh0by5zdWJ0cmFjdChmcm9tKS5tdWx0aXBseUJ5KHUocykgLyB1MSkpLCBzdGFydFpvb20pLFxyXG4gIFx0XHRcdFx0XHR0aGlzLmdldFNjYWxlWm9vbSh3MCAvIHcocyksIHN0YXJ0Wm9vbSksXHJcbiAgXHRcdFx0XHRcdHtmbHlUbzogdHJ1ZX0pO1xyXG5cclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0dGhpc1xyXG4gIFx0XHRcdFx0XHQuX21vdmUodGFyZ2V0Q2VudGVyLCB0YXJnZXRab29tKVxyXG4gIFx0XHRcdFx0XHQuX21vdmVFbmQodHJ1ZSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlU3RhcnQodHJ1ZSwgb3B0aW9ucy5ub01vdmVTdGFydCk7XHJcblxyXG4gIFx0XHRmcmFtZS5jYWxsKHRoaXMpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBmbHlUb0JvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IGZpdEJvdW5kcyBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgdmlldyBvZiB0aGUgbWFwIHdpdGggYSBzbW9vdGggYW5pbWF0aW9uIGxpa2UgW2BmbHlUb2BdKCNtYXAtZmx5dG8pLFxyXG4gIFx0Ly8gYnV0IHRha2VzIGEgYm91bmRzIHBhcmFtZXRlciBsaWtlIFtgZml0Qm91bmRzYF0oI21hcC1maXRib3VuZHMpLlxyXG4gIFx0Zmx5VG9Cb3VuZHM6IGZ1bmN0aW9uIChib3VuZHMsIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIHRhcmdldCA9IHRoaXMuX2dldEJvdW5kc0NlbnRlclpvb20oYm91bmRzLCBvcHRpb25zKTtcclxuICBcdFx0cmV0dXJuIHRoaXMuZmx5VG8odGFyZ2V0LmNlbnRlciwgdGFyZ2V0Lnpvb20sIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldE1heEJvdW5kcyhib3VuZHM6IExhdExuZ0JvdW5kcyk6IHRoaXNcclxuICBcdC8vIFJlc3RyaWN0cyB0aGUgbWFwIHZpZXcgdG8gdGhlIGdpdmVuIGJvdW5kcyAoc2VlIHRoZSBbbWF4Qm91bmRzXSgjbWFwLW1heGJvdW5kcykgb3B0aW9uKS5cclxuICBcdHNldE1heEJvdW5kczogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHRib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMubGlzdGVucygnbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcykpIHtcclxuICBcdFx0XHR0aGlzLm9mZignbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghYm91bmRzLmlzVmFsaWQoKSkge1xyXG4gIFx0XHRcdHRoaXMub3B0aW9ucy5tYXhCb3VuZHMgPSBudWxsO1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLm9wdGlvbnMubWF4Qm91bmRzID0gYm91bmRzO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCkge1xyXG4gIFx0XHRcdHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcygpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5vbignbW92ZWVuZCcsIHRoaXMuX3Bhbkluc2lkZU1heEJvdW5kcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TWluWm9vbSh6b29tOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBsb3dlciBsaW1pdCBmb3IgdGhlIGF2YWlsYWJsZSB6b29tIGxldmVscyAoc2VlIHRoZSBbbWluWm9vbV0oI21hcC1taW56b29tKSBvcHRpb24pLlxyXG4gIFx0c2V0TWluWm9vbTogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0dmFyIG9sZFpvb20gPSB0aGlzLm9wdGlvbnMubWluWm9vbTtcclxuICBcdFx0dGhpcy5vcHRpb25zLm1pblpvb20gPSB6b29tO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCAmJiBvbGRab29tICE9PSB6b29tKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tbGV2ZWxzY2hhbmdlJyk7XHJcblxyXG4gIFx0XHRcdGlmICh0aGlzLmdldFpvb20oKSA8IHRoaXMub3B0aW9ucy5taW5ab29tKSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHpvb20pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TWF4Wm9vbSh6b29tOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSB1cHBlciBsaW1pdCBmb3IgdGhlIGF2YWlsYWJsZSB6b29tIGxldmVscyAoc2VlIHRoZSBbbWF4Wm9vbV0oI21hcC1tYXh6b29tKSBvcHRpb24pLlxyXG4gIFx0c2V0TWF4Wm9vbTogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0dmFyIG9sZFpvb20gPSB0aGlzLm9wdGlvbnMubWF4Wm9vbTtcclxuICBcdFx0dGhpcy5vcHRpb25zLm1heFpvb20gPSB6b29tO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCAmJiBvbGRab29tICE9PSB6b29tKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tbGV2ZWxzY2hhbmdlJyk7XHJcblxyXG4gIFx0XHRcdGlmICh0aGlzLmdldFpvb20oKSA+IHRoaXMub3B0aW9ucy5tYXhab29tKSB7XHJcbiAgXHRcdFx0XHRyZXR1cm4gdGhpcy5zZXRab29tKHpvb20pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcGFuSW5zaWRlQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzLCBvcHRpb25zPzogUGFuIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBQYW5zIHRoZSBtYXAgdG8gdGhlIGNsb3Nlc3QgdmlldyB0aGF0IHdvdWxkIGxpZSBpbnNpZGUgdGhlIGdpdmVuIGJvdW5kcyAoaWYgaXQncyBub3QgYWxyZWFkeSksIGNvbnRyb2xsaW5nIHRoZSBhbmltYXRpb24gdXNpbmcgdGhlIG9wdGlvbnMgc3BlY2lmaWMsIGlmIGFueS5cclxuICBcdHBhbkluc2lkZUJvdW5kczogZnVuY3Rpb24gKGJvdW5kcywgb3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLl9lbmZvcmNpbmdCb3VuZHMgPSB0cnVlO1xyXG4gIFx0XHR2YXIgY2VudGVyID0gdGhpcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIG5ld0NlbnRlciA9IHRoaXMuX2xpbWl0Q2VudGVyKGNlbnRlciwgdGhpcy5fem9vbSwgdG9MYXRMbmdCb3VuZHMoYm91bmRzKSk7XHJcblxyXG4gIFx0XHRpZiAoIWNlbnRlci5lcXVhbHMobmV3Q2VudGVyKSkge1xyXG4gIFx0XHRcdHRoaXMucGFuVG8obmV3Q2VudGVyLCBvcHRpb25zKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fZW5mb3JjaW5nQm91bmRzID0gZmFsc2U7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHBhbkluc2lkZShsYXRsbmc6IExhdExuZywgb3B0aW9ucz86IHBhZGRpbmcgb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIFBhbnMgdGhlIG1hcCB0aGUgbWluaW11bSBhbW91bnQgdG8gbWFrZSB0aGUgYGxhdGxuZ2AgdmlzaWJsZS4gVXNlXHJcbiAgXHQvLyBwYWRkaW5nIG9wdGlvbnMgdG8gZml0IHRoZSBkaXNwbGF5IHRvIG1vcmUgcmVzdHJpY3RlZCBib3VuZHMuXHJcbiAgXHQvLyBJZiBgbGF0bG5nYCBpcyBhbHJlYWR5IHdpdGhpbiB0aGUgKG9wdGlvbmFsbHkgcGFkZGVkKSBkaXNwbGF5IGJvdW5kcyxcclxuICBcdC8vIHRoZSBtYXAgd2lsbCBub3QgYmUgcGFubmVkLlxyXG4gIFx0cGFuSW5zaWRlOiBmdW5jdGlvbiAobGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRcdG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9O1xyXG5cclxuICBcdFx0dmFyIHBhZGRpbmdUTCA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nVG9wTGVmdCB8fCBvcHRpb25zLnBhZGRpbmcgfHwgWzAsIDBdKSxcclxuICBcdFx0ICAgIHBhZGRpbmdCUiA9IHRvUG9pbnQob3B0aW9ucy5wYWRkaW5nQm90dG9tUmlnaHQgfHwgb3B0aW9ucy5wYWRkaW5nIHx8IFswLCAwXSksXHJcbiAgXHRcdCAgICBwaXhlbENlbnRlciA9IHRoaXMucHJvamVjdCh0aGlzLmdldENlbnRlcigpKSxcclxuICBcdFx0ICAgIHBpeGVsUG9pbnQgPSB0aGlzLnByb2plY3QobGF0bG5nKSxcclxuICBcdFx0ICAgIHBpeGVsQm91bmRzID0gdGhpcy5nZXRQaXhlbEJvdW5kcygpLFxyXG4gIFx0XHQgICAgcGFkZGVkQm91bmRzID0gdG9Cb3VuZHMoW3BpeGVsQm91bmRzLm1pbi5hZGQocGFkZGluZ1RMKSwgcGl4ZWxCb3VuZHMubWF4LnN1YnRyYWN0KHBhZGRpbmdCUildKSxcclxuICBcdFx0ICAgIHBhZGRlZFNpemUgPSBwYWRkZWRCb3VuZHMuZ2V0U2l6ZSgpO1xyXG5cclxuICBcdFx0aWYgKCFwYWRkZWRCb3VuZHMuY29udGFpbnMocGl4ZWxQb2ludCkpIHtcclxuICBcdFx0XHR0aGlzLl9lbmZvcmNpbmdCb3VuZHMgPSB0cnVlO1xyXG4gIFx0XHRcdHZhciBjZW50ZXJPZmZzZXQgPSBwaXhlbFBvaW50LnN1YnRyYWN0KHBhZGRlZEJvdW5kcy5nZXRDZW50ZXIoKSk7XHJcbiAgXHRcdFx0dmFyIG9mZnNldCA9IHBhZGRlZEJvdW5kcy5leHRlbmQocGl4ZWxQb2ludCkuZ2V0U2l6ZSgpLnN1YnRyYWN0KHBhZGRlZFNpemUpO1xyXG4gIFx0XHRcdHBpeGVsQ2VudGVyLnggKz0gY2VudGVyT2Zmc2V0LnggPCAwID8gLW9mZnNldC54IDogb2Zmc2V0Lng7XHJcbiAgXHRcdFx0cGl4ZWxDZW50ZXIueSArPSBjZW50ZXJPZmZzZXQueSA8IDAgPyAtb2Zmc2V0LnkgOiBvZmZzZXQueTtcclxuICBcdFx0XHR0aGlzLnBhblRvKHRoaXMudW5wcm9qZWN0KHBpeGVsQ2VudGVyKSwgb3B0aW9ucyk7XHJcbiAgXHRcdFx0dGhpcy5fZW5mb3JjaW5nQm91bmRzID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaW52YWxpZGF0ZVNpemUob3B0aW9uczogWm9vbS9wYW4gb3B0aW9ucyk6IHRoaXNcclxuICBcdC8vIENoZWNrcyBpZiB0aGUgbWFwIGNvbnRhaW5lciBzaXplIGNoYW5nZWQgYW5kIHVwZGF0ZXMgdGhlIG1hcCBpZiBzbyDigJRcclxuICBcdC8vIGNhbGwgaXQgYWZ0ZXIgeW91J3ZlIGNoYW5nZWQgdGhlIG1hcCBzaXplIGR5bmFtaWNhbGx5LCBhbHNvIGFuaW1hdGluZ1xyXG4gIFx0Ly8gcGFuIGJ5IGRlZmF1bHQuIElmIGBvcHRpb25zLnBhbmAgaXMgYGZhbHNlYCwgcGFubmluZyB3aWxsIG5vdCBvY2N1ci5cclxuICBcdC8vIElmIGBvcHRpb25zLmRlYm91bmNlTW92ZWVuZGAgaXMgYHRydWVgLCBpdCB3aWxsIGRlbGF5IGBtb3ZlZW5kYCBldmVudCBzb1xyXG4gIFx0Ly8gdGhhdCBpdCBkb2Vzbid0IGhhcHBlbiBvZnRlbiBldmVuIGlmIHRoZSBtZXRob2QgaXMgY2FsbGVkIG1hbnlcclxuICBcdC8vIHRpbWVzIGluIGEgcm93LlxyXG5cclxuICBcdC8vIEBhbHRlcm5hdGl2ZVxyXG4gIFx0Ly8gQG1ldGhvZCBpbnZhbGlkYXRlU2l6ZShhbmltYXRlOiBCb29sZWFuKTogdGhpc1xyXG4gIFx0Ly8gQ2hlY2tzIGlmIHRoZSBtYXAgY29udGFpbmVyIHNpemUgY2hhbmdlZCBhbmQgdXBkYXRlcyB0aGUgbWFwIGlmIHNvIOKAlFxyXG4gIFx0Ly8gY2FsbCBpdCBhZnRlciB5b3UndmUgY2hhbmdlZCB0aGUgbWFwIHNpemUgZHluYW1pY2FsbHksIGFsc28gYW5pbWF0aW5nXHJcbiAgXHQvLyBwYW4gYnkgZGVmYXVsdC5cclxuICBcdGludmFsaWRhdGVTaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2xvYWRlZCkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0b3B0aW9ucyA9IGV4dGVuZCh7XHJcbiAgXHRcdFx0YW5pbWF0ZTogZmFsc2UsXHJcbiAgXHRcdFx0cGFuOiB0cnVlXHJcbiAgXHRcdH0sIG9wdGlvbnMgPT09IHRydWUgPyB7YW5pbWF0ZTogdHJ1ZX0gOiBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHZhciBvbGRTaXplID0gdGhpcy5nZXRTaXplKCk7XHJcbiAgXHRcdHRoaXMuX3NpemVDaGFuZ2VkID0gdHJ1ZTtcclxuICBcdFx0dGhpcy5fbGFzdENlbnRlciA9IG51bGw7XHJcblxyXG4gIFx0XHR2YXIgbmV3U2l6ZSA9IHRoaXMuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgb2xkQ2VudGVyID0gb2xkU2l6ZS5kaXZpZGVCeSgyKS5yb3VuZCgpLFxyXG4gIFx0XHQgICAgbmV3Q2VudGVyID0gbmV3U2l6ZS5kaXZpZGVCeSgyKS5yb3VuZCgpLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gb2xkQ2VudGVyLnN1YnRyYWN0KG5ld0NlbnRlcik7XHJcblxyXG4gIFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMuYW5pbWF0ZSAmJiBvcHRpb25zLnBhbikge1xyXG4gIFx0XHRcdHRoaXMucGFuQnkob2Zmc2V0KTtcclxuXHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMucGFuKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9yYXdQYW5CeShvZmZzZXQpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJyk7XHJcblxyXG4gIFx0XHRcdGlmIChvcHRpb25zLmRlYm91bmNlTW92ZWVuZCkge1xyXG4gIFx0XHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3NpemVUaW1lcik7XHJcbiAgXHRcdFx0XHR0aGlzLl9zaXplVGltZXIgPSBzZXRUaW1lb3V0KGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbW92ZWVuZCcpLCAyMDApO1xyXG4gIFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHR0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIE1hcCBzdGF0ZSBjaGFuZ2UgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCByZXNpemU6IFJlc2l6ZUV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBpcyByZXNpemVkLlxyXG4gIFx0XHRyZXR1cm4gdGhpcy5maXJlKCdyZXNpemUnLCB7XHJcbiAgXHRcdFx0b2xkU2l6ZTogb2xkU2l6ZSxcclxuICBcdFx0XHRuZXdTaXplOiBuZXdTaXplXHJcbiAgXHRcdH0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBNZXRob2RzIGZvciBtb2RpZnlpbmcgbWFwIHN0YXRlXHJcbiAgXHQvLyBAbWV0aG9kIHN0b3AoKTogdGhpc1xyXG4gIFx0Ly8gU3RvcHMgdGhlIGN1cnJlbnRseSBydW5uaW5nIGBwYW5Ub2Agb3IgYGZseVRvYCBhbmltYXRpb24sIGlmIGFueS5cclxuICBcdHN0b3A6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xpbWl0Wm9vbSh0aGlzLl96b29tKSk7XHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLnpvb21TbmFwKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd2aWV3cmVzZXQnKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fc3RvcCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBHZW9sb2NhdGlvbiBtZXRob2RzXHJcbiAgXHQvLyBAbWV0aG9kIGxvY2F0ZShvcHRpb25zPzogTG9jYXRlIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBUcmllcyB0byBsb2NhdGUgdGhlIHVzZXIgdXNpbmcgdGhlIEdlb2xvY2F0aW9uIEFQSSwgZmlyaW5nIGEgW2Bsb2NhdGlvbmZvdW5kYF0oI21hcC1sb2NhdGlvbmZvdW5kKVxyXG4gIFx0Ly8gZXZlbnQgd2l0aCBsb2NhdGlvbiBkYXRhIG9uIHN1Y2Nlc3Mgb3IgYSBbYGxvY2F0aW9uZXJyb3JgXSgjbWFwLWxvY2F0aW9uZXJyb3IpIGV2ZW50IG9uIGZhaWx1cmUsXHJcbiAgXHQvLyBhbmQgb3B0aW9uYWxseSBzZXRzIHRoZSBtYXAgdmlldyB0byB0aGUgdXNlcidzIGxvY2F0aW9uIHdpdGggcmVzcGVjdCB0b1xyXG4gIFx0Ly8gZGV0ZWN0aW9uIGFjY3VyYWN5IChvciB0byB0aGUgd29ybGQgdmlldyBpZiBnZW9sb2NhdGlvbiBmYWlsZWQpLlxyXG4gIFx0Ly8gTm90ZSB0aGF0LCBpZiB5b3VyIHBhZ2UgZG9lc24ndCB1c2UgSFRUUFMsIHRoaXMgbWV0aG9kIHdpbGwgZmFpbCBpblxyXG4gIFx0Ly8gbW9kZXJuIGJyb3dzZXJzIChbQ2hyb21lIDUwIGFuZCBuZXdlcl0oaHR0cHM6Ly9zaXRlcy5nb29nbGUuY29tL2EvY2hyb21pdW0ub3JnL2Rldi9Ib21lL2Nocm9taXVtLXNlY3VyaXR5L2RlcHJlY2F0aW5nLXBvd2VyZnVsLWZlYXR1cmVzLW9uLWluc2VjdXJlLW9yaWdpbnMpKVxyXG4gIFx0Ly8gU2VlIGBMb2NhdGUgb3B0aW9uc2AgZm9yIG1vcmUgZGV0YWlscy5cclxuICBcdGxvY2F0ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdG9wdGlvbnMgPSB0aGlzLl9sb2NhdGVPcHRpb25zID0gZXh0ZW5kKHtcclxuICBcdFx0XHR0aW1lb3V0OiAxMDAwMCxcclxuICBcdFx0XHR3YXRjaDogZmFsc2VcclxuICBcdFx0XHQvLyBzZXRWaWV3OiBmYWxzZVxyXG4gIFx0XHRcdC8vIG1heFpvb206IDxOdW1iZXI+XHJcbiAgXHRcdFx0Ly8gbWF4aW11bUFnZTogMFxyXG4gIFx0XHRcdC8vIGVuYWJsZUhpZ2hBY2N1cmFjeTogZmFsc2VcclxuICBcdFx0fSwgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHRpZiAoISgnZ2VvbG9jYXRpb24nIGluIG5hdmlnYXRvcikpIHtcclxuICBcdFx0XHR0aGlzLl9oYW5kbGVHZW9sb2NhdGlvbkVycm9yKHtcclxuICBcdFx0XHRcdGNvZGU6IDAsXHJcbiAgXHRcdFx0XHRtZXNzYWdlOiAnR2VvbG9jYXRpb24gbm90IHN1cHBvcnRlZC4nXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHZhciBvblJlc3BvbnNlID0gYmluZCh0aGlzLl9oYW5kbGVHZW9sb2NhdGlvblJlc3BvbnNlLCB0aGlzKSxcclxuICBcdFx0ICAgIG9uRXJyb3IgPSBiaW5kKHRoaXMuX2hhbmRsZUdlb2xvY2F0aW9uRXJyb3IsIHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMud2F0Y2gpIHtcclxuICBcdFx0XHR0aGlzLl9sb2NhdGlvbldhdGNoSWQgPVxyXG4gIFx0XHRcdCAgICAgICAgbmF2aWdhdG9yLmdlb2xvY2F0aW9uLndhdGNoUG9zaXRpb24ob25SZXNwb25zZSwgb25FcnJvciwgb3B0aW9ucyk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0bmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihvblJlc3BvbnNlLCBvbkVycm9yLCBvcHRpb25zKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzdG9wTG9jYXRlKCk6IHRoaXNcclxuICBcdC8vIFN0b3BzIHdhdGNoaW5nIGxvY2F0aW9uIHByZXZpb3VzbHkgaW5pdGlhdGVkIGJ5IGBtYXAubG9jYXRlKHt3YXRjaDogdHJ1ZX0pYFxyXG4gIFx0Ly8gYW5kIGFib3J0cyByZXNldHRpbmcgdGhlIG1hcCB2aWV3IGlmIG1hcC5sb2NhdGUgd2FzIGNhbGxlZCB3aXRoXHJcbiAgXHQvLyBge3NldFZpZXc6IHRydWV9YC5cclxuICBcdHN0b3BMb2NhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKG5hdmlnYXRvci5nZW9sb2NhdGlvbiAmJiBuYXZpZ2F0b3IuZ2VvbG9jYXRpb24uY2xlYXJXYXRjaCkge1xyXG4gIFx0XHRcdG5hdmlnYXRvci5nZW9sb2NhdGlvbi5jbGVhcldhdGNoKHRoaXMuX2xvY2F0aW9uV2F0Y2hJZCk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKHRoaXMuX2xvY2F0ZU9wdGlvbnMpIHtcclxuICBcdFx0XHR0aGlzLl9sb2NhdGVPcHRpb25zLnNldFZpZXcgPSBmYWxzZTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X2hhbmRsZUdlb2xvY2F0aW9uRXJyb3I6IGZ1bmN0aW9uIChlcnJvcikge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2NvbnRhaW5lci5fbGVhZmxldF9pZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBjID0gZXJyb3IuY29kZSxcclxuICBcdFx0ICAgIG1lc3NhZ2UgPSBlcnJvci5tZXNzYWdlIHx8XHJcbiAgXHRcdCAgICAgICAgICAgIChjID09PSAxID8gJ3Blcm1pc3Npb24gZGVuaWVkJyA6XHJcbiAgXHRcdCAgICAgICAgICAgIChjID09PSAyID8gJ3Bvc2l0aW9uIHVuYXZhaWxhYmxlJyA6ICd0aW1lb3V0JykpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2xvY2F0ZU9wdGlvbnMuc2V0VmlldyAmJiAhdGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5maXRXb3JsZCgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBAc2VjdGlvbiBMb2NhdGlvbiBldmVudHNcclxuICBcdFx0Ly8gQGV2ZW50IGxvY2F0aW9uZXJyb3I6IEVycm9yRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBnZW9sb2NhdGlvbiAodXNpbmcgdGhlIFtgbG9jYXRlYF0oI21hcC1sb2NhdGUpIG1ldGhvZCkgZmFpbGVkLlxyXG4gIFx0XHR0aGlzLmZpcmUoJ2xvY2F0aW9uZXJyb3InLCB7XHJcbiAgXHRcdFx0Y29kZTogYyxcclxuICBcdFx0XHRtZXNzYWdlOiAnR2VvbG9jYXRpb24gZXJyb3I6ICcgKyBtZXNzYWdlICsgJy4nXHJcbiAgXHRcdH0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaGFuZGxlR2VvbG9jYXRpb25SZXNwb25zZTogZnVuY3Rpb24gKHBvcykge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2NvbnRhaW5lci5fbGVhZmxldF9pZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBsYXQgPSBwb3MuY29vcmRzLmxhdGl0dWRlLFxyXG4gIFx0XHQgICAgbG5nID0gcG9zLmNvb3Jkcy5sb25naXR1ZGUsXHJcbiAgXHRcdCAgICBsYXRsbmcgPSBuZXcgTGF0TG5nKGxhdCwgbG5nKSxcclxuICBcdFx0ICAgIGJvdW5kcyA9IGxhdGxuZy50b0JvdW5kcyhwb3MuY29vcmRzLmFjY3VyYWN5ICogMiksXHJcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5fbG9jYXRlT3B0aW9ucztcclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLnNldFZpZXcpIHtcclxuICBcdFx0XHR2YXIgem9vbSA9IHRoaXMuZ2V0Qm91bmRzWm9vbShib3VuZHMpO1xyXG4gIFx0XHRcdHRoaXMuc2V0VmlldyhsYXRsbmcsIG9wdGlvbnMubWF4Wm9vbSA/IE1hdGgubWluKHpvb20sIG9wdGlvbnMubWF4Wm9vbSkgOiB6b29tKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGRhdGEgPSB7XHJcbiAgXHRcdFx0bGF0bG5nOiBsYXRsbmcsXHJcbiAgXHRcdFx0Ym91bmRzOiBib3VuZHMsXHJcbiAgXHRcdFx0dGltZXN0YW1wOiBwb3MudGltZXN0YW1wXHJcbiAgXHRcdH07XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpIGluIHBvcy5jb29yZHMpIHtcclxuICBcdFx0XHRpZiAodHlwZW9mIHBvcy5jb29yZHNbaV0gPT09ICdudW1iZXInKSB7XHJcbiAgXHRcdFx0XHRkYXRhW2ldID0gcG9zLmNvb3Jkc1tpXTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2NhdGlvbmZvdW5kOiBMb2NhdGlvbkV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gZ2VvbG9jYXRpb24gKHVzaW5nIHRoZSBbYGxvY2F0ZWBdKCNtYXAtbG9jYXRlKSBtZXRob2QpXHJcbiAgXHRcdC8vIHdlbnQgc3VjY2Vzc2Z1bGx5LlxyXG4gIFx0XHR0aGlzLmZpcmUoJ2xvY2F0aW9uZm91bmQnLCBkYXRhKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gVE9ETyBBcHByb3ByaWF0ZSBkb2NzIHNlY3Rpb24/XHJcbiAgXHQvLyBAc2VjdGlvbiBPdGhlciBNZXRob2RzXHJcbiAgXHQvLyBAbWV0aG9kIGFkZEhhbmRsZXIobmFtZTogU3RyaW5nLCBIYW5kbGVyQ2xhc3M6IEZ1bmN0aW9uKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhIG5ldyBgSGFuZGxlcmAgdG8gdGhlIG1hcCwgZ2l2ZW4gaXRzIG5hbWUgYW5kIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLlxyXG4gIFx0YWRkSGFuZGxlcjogZnVuY3Rpb24gKG5hbWUsIEhhbmRsZXJDbGFzcykge1xyXG4gIFx0XHRpZiAoIUhhbmRsZXJDbGFzcykgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0dmFyIGhhbmRsZXIgPSB0aGlzW25hbWVdID0gbmV3IEhhbmRsZXJDbGFzcyh0aGlzKTtcclxuXHJcbiAgXHRcdHRoaXMuX2hhbmRsZXJzLnB1c2goaGFuZGxlcik7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zW25hbWVdKSB7XHJcbiAgXHRcdFx0aGFuZGxlci5lbmFibGUoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlKCk6IHRoaXNcclxuICBcdC8vIERlc3Ryb3lzIHRoZSBtYXAgYW5kIGNsZWFycyBhbGwgcmVsYXRlZCBldmVudCBsaXN0ZW5lcnMuXHJcbiAgXHRyZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdHRoaXMuX2luaXRFdmVudHModHJ1ZSk7XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubWF4Qm91bmRzKSB7IHRoaXMub2ZmKCdtb3ZlZW5kJywgdGhpcy5fcGFuSW5zaWRlTWF4Qm91bmRzKTsgfVxyXG5cclxuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcklkICE9PSB0aGlzLl9jb250YWluZXIuX2xlYWZsZXRfaWQpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ01hcCBjb250YWluZXIgaXMgYmVpbmcgcmV1c2VkIGJ5IGFub3RoZXIgaW5zdGFuY2UnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dHJ5IHtcclxuICBcdFx0XHQvLyB0aHJvd3MgZXJyb3IgaW4gSUU2LThcclxuICBcdFx0XHRkZWxldGUgdGhpcy5fY29udGFpbmVyLl9sZWFmbGV0X2lkO1xyXG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl9jb250YWluZXJJZDtcclxuICBcdFx0fSBjYXRjaCAoZSkge1xyXG4gIFx0XHRcdC8qZXNsaW50LWRpc2FibGUgKi9cclxuICBcdFx0XHR0aGlzLl9jb250YWluZXIuX2xlYWZsZXRfaWQgPSB1bmRlZmluZWQ7XHJcbiAgXHRcdFx0LyogZXNsaW50LWVuYWJsZSAqL1xyXG4gIFx0XHRcdHRoaXMuX2NvbnRhaW5lcklkID0gdW5kZWZpbmVkO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9jYXRpb25XYXRjaElkICE9PSB1bmRlZmluZWQpIHtcclxuICBcdFx0XHR0aGlzLnN0b3BMb2NhdGUoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fc3RvcCgpO1xyXG5cclxuICBcdFx0cmVtb3ZlKHRoaXMuX21hcFBhbmUpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2NsZWFyQ29udHJvbFBvcykge1xyXG4gIFx0XHRcdHRoaXMuX2NsZWFyQ29udHJvbFBvcygpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICh0aGlzLl9yZXNpemVSZXF1ZXN0KSB7XHJcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3Jlc2l6ZVJlcXVlc3QpO1xyXG4gIFx0XHRcdHRoaXMuX3Jlc2l6ZVJlcXVlc3QgPSBudWxsO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9jbGVhckhhbmRsZXJzKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbG9hZGVkKSB7XHJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gTWFwIHN0YXRlIGNoYW5nZSBldmVudHNcclxuICBcdFx0XHQvLyBAZXZlbnQgdW5sb2FkOiBFdmVudFxyXG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBpcyBkZXN0cm95ZWQgd2l0aCBbcmVtb3ZlXSgjbWFwLXJlbW92ZSkgbWV0aG9kLlxyXG4gIFx0XHRcdHRoaXMuZmlyZSgndW5sb2FkJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHZhciBpO1xyXG4gIFx0XHRmb3IgKGkgaW4gdGhpcy5fbGF5ZXJzKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2ldLnJlbW92ZSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGZvciAoaSBpbiB0aGlzLl9wYW5lcykge1xyXG4gIFx0XHRcdHJlbW92ZSh0aGlzLl9wYW5lc1tpXSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2xheWVycyA9IFtdO1xyXG4gIFx0XHR0aGlzLl9wYW5lcyA9IFtdO1xyXG4gIFx0XHRkZWxldGUgdGhpcy5fbWFwUGFuZTtcclxuICBcdFx0ZGVsZXRlIHRoaXMuX3JlbmRlcmVyO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE90aGVyIE1ldGhvZHNcclxuICBcdC8vIEBtZXRob2QgY3JlYXRlUGFuZShuYW1lOiBTdHJpbmcsIGNvbnRhaW5lcj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIENyZWF0ZXMgYSBuZXcgW21hcCBwYW5lXSgjbWFwLXBhbmUpIHdpdGggdGhlIGdpdmVuIG5hbWUgaWYgaXQgZG9lc24ndCBleGlzdCBhbHJlYWR5LFxyXG4gIFx0Ly8gdGhlbiByZXR1cm5zIGl0LiBUaGUgcGFuZSBpcyBjcmVhdGVkIGFzIGEgY2hpbGQgb2YgYGNvbnRhaW5lcmAsIG9yXHJcbiAgXHQvLyBhcyBhIGNoaWxkIG9mIHRoZSBtYWluIG1hcCBwYW5lIGlmIG5vdCBzZXQuXHJcbiAgXHRjcmVhdGVQYW5lOiBmdW5jdGlvbiAobmFtZSwgY29udGFpbmVyKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSAnbGVhZmxldC1wYW5lJyArIChuYW1lID8gJyBsZWFmbGV0LScgKyBuYW1lLnJlcGxhY2UoJ1BhbmUnLCAnJykgKyAnLXBhbmUnIDogJycpLFxyXG4gIFx0XHQgICAgcGFuZSA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUsIGNvbnRhaW5lciB8fCB0aGlzLl9tYXBQYW5lKTtcclxuXHJcbiAgXHRcdGlmIChuYW1lKSB7XHJcbiAgXHRcdFx0dGhpcy5fcGFuZXNbbmFtZV0gPSBwYW5lO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBwYW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBNZXRob2RzIGZvciBHZXR0aW5nIE1hcCBTdGF0ZVxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Q2VudGVyKCk6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIGNlbnRlciBvZiB0aGUgbWFwIHZpZXdcclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl9jaGVja0lmTG9hZGVkKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbGFzdENlbnRlciAmJiAhdGhpcy5fbW92ZWQoKSkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzLl9sYXN0Q2VudGVyLmNsb25lKCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMubGF5ZXJQb2ludFRvTGF0TG5nKHRoaXMuX2dldENlbnRlckxheWVyUG9pbnQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Wm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIGN1cnJlbnQgem9vbSBsZXZlbCBvZiB0aGUgbWFwIHZpZXdcclxuICBcdGdldFpvb206IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX3pvb207XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Qm91bmRzKCk6IExhdExuZ0JvdW5kc1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIGJvdW5kcyB2aXNpYmxlIGluIHRoZSBjdXJyZW50IG1hcCB2aWV3XHJcbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuZ2V0UGl4ZWxCb3VuZHMoKSxcclxuICBcdFx0ICAgIHN3ID0gdGhpcy51bnByb2plY3QoYm91bmRzLmdldEJvdHRvbUxlZnQoKSksXHJcbiAgXHRcdCAgICBuZSA9IHRoaXMudW5wcm9qZWN0KGJvdW5kcy5nZXRUb3BSaWdodCgpKTtcclxuXHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nQm91bmRzKHN3LCBuZSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0TWluWm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwIChpZiBzZXQgaW4gdGhlIGBtaW5ab29tYCBvcHRpb24gb2YgdGhlIG1hcCBvciBvZiBhbnkgbGF5ZXJzKSwgb3IgYDBgIGJ5IGRlZmF1bHQuXHJcbiAgXHRnZXRNaW5ab29tOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMubWluWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fbGF5ZXJzTWluWm9vbSB8fCAwIDogdGhpcy5vcHRpb25zLm1pblpvb207XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0TWF4Wm9vbSgpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBvZiB0aGUgbWFwIChpZiBzZXQgaW4gdGhlIGBtYXhab29tYCBvcHRpb24gb2YgdGhlIG1hcCBvciBvZiBhbnkgbGF5ZXJzKS5cclxuICBcdGdldE1heFpvb206IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgP1xyXG4gIFx0XHRcdCh0aGlzLl9sYXllcnNNYXhab29tID09PSB1bmRlZmluZWQgPyBJbmZpbml0eSA6IHRoaXMuX2xheWVyc01heFpvb20pIDpcclxuICBcdFx0XHR0aGlzLm9wdGlvbnMubWF4Wm9vbTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRCb3VuZHNab29tKGJvdW5kczogTGF0TG5nQm91bmRzLCBpbnNpZGU/OiBCb29sZWFuLCBwYWRkaW5nPzogUG9pbnQpOiBOdW1iZXJcclxuICBcdC8vIFJldHVybnMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBvbiB3aGljaCB0aGUgZ2l2ZW4gYm91bmRzIGZpdCB0byB0aGUgbWFwXHJcbiAgXHQvLyB2aWV3IGluIGl0cyBlbnRpcmV0eS4gSWYgYGluc2lkZWAgKG9wdGlvbmFsKSBpcyBzZXQgdG8gYHRydWVgLCB0aGUgbWV0aG9kXHJcbiAgXHQvLyBpbnN0ZWFkIHJldHVybnMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBvbiB3aGljaCB0aGUgbWFwIHZpZXcgZml0cyBpbnRvXHJcbiAgXHQvLyB0aGUgZ2l2ZW4gYm91bmRzIGluIGl0cyBlbnRpcmV0eS5cclxuICBcdGdldEJvdW5kc1pvb206IGZ1bmN0aW9uIChib3VuZHMsIGluc2lkZSwgcGFkZGluZykgeyAvLyAoTGF0TG5nQm91bmRzWywgQm9vbGVhbiwgUG9pbnRdKSAtPiBOdW1iZXJcclxuICBcdFx0Ym91bmRzID0gdG9MYXRMbmdCb3VuZHMoYm91bmRzKTtcclxuICBcdFx0cGFkZGluZyA9IHRvUG9pbnQocGFkZGluZyB8fCBbMCwgMF0pO1xyXG5cclxuICBcdFx0dmFyIHpvb20gPSB0aGlzLmdldFpvb20oKSB8fCAwLFxyXG4gIFx0XHQgICAgbWluID0gdGhpcy5nZXRNaW5ab29tKCksXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLmdldE1heFpvb20oKSxcclxuICBcdFx0ICAgIG53ID0gYm91bmRzLmdldE5vcnRoV2VzdCgpLFxyXG4gIFx0XHQgICAgc2UgPSBib3VuZHMuZ2V0U291dGhFYXN0KCksXHJcbiAgXHRcdCAgICBzaXplID0gdGhpcy5nZXRTaXplKCkuc3VidHJhY3QocGFkZGluZyksXHJcbiAgXHRcdCAgICBib3VuZHNTaXplID0gdG9Cb3VuZHModGhpcy5wcm9qZWN0KHNlLCB6b29tKSwgdGhpcy5wcm9qZWN0KG53LCB6b29tKSkuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgc25hcCA9IEJyb3dzZXIuYW55M2QgPyB0aGlzLm9wdGlvbnMuem9vbVNuYXAgOiAxLFxyXG4gIFx0XHQgICAgc2NhbGV4ID0gc2l6ZS54IC8gYm91bmRzU2l6ZS54LFxyXG4gIFx0XHQgICAgc2NhbGV5ID0gc2l6ZS55IC8gYm91bmRzU2l6ZS55LFxyXG4gIFx0XHQgICAgc2NhbGUgPSBpbnNpZGUgPyBNYXRoLm1heChzY2FsZXgsIHNjYWxleSkgOiBNYXRoLm1pbihzY2FsZXgsIHNjYWxleSk7XHJcblxyXG4gIFx0XHR6b29tID0gdGhpcy5nZXRTY2FsZVpvb20oc2NhbGUsIHpvb20pO1xyXG5cclxuICBcdFx0aWYgKHNuYXApIHtcclxuICBcdFx0XHR6b29tID0gTWF0aC5yb3VuZCh6b29tIC8gKHNuYXAgLyAxMDApKSAqIChzbmFwIC8gMTAwKTsgLy8gZG9uJ3QganVtcCBpZiB3aXRoaW4gMSUgb2YgYSBzbmFwIGxldmVsXHJcbiAgXHRcdFx0em9vbSA9IGluc2lkZSA/IE1hdGguY2VpbCh6b29tIC8gc25hcCkgKiBzbmFwIDogTWF0aC5mbG9vcih6b29tIC8gc25hcCkgKiBzbmFwO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gTWF0aC5tYXgobWluLCBNYXRoLm1pbihtYXgsIHpvb20pKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRTaXplKCk6IFBvaW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHNpemUgb2YgdGhlIG1hcCBjb250YWluZXIgKGluIHBpeGVscykuXHJcbiAgXHRnZXRTaXplOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fc2l6ZSB8fCB0aGlzLl9zaXplQ2hhbmdlZCkge1xyXG4gIFx0XHRcdHRoaXMuX3NpemUgPSBuZXcgUG9pbnQoXHJcbiAgXHRcdFx0XHR0aGlzLl9jb250YWluZXIuY2xpZW50V2lkdGggfHwgMCxcclxuICBcdFx0XHRcdHRoaXMuX2NvbnRhaW5lci5jbGllbnRIZWlnaHQgfHwgMCk7XHJcblxyXG4gIFx0XHRcdHRoaXMuX3NpemVDaGFuZ2VkID0gZmFsc2U7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXMuX3NpemUuY2xvbmUoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQaXhlbEJvdW5kcygpOiBCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIGJvdW5kcyBvZiB0aGUgY3VycmVudCBtYXAgdmlldyBpbiBwcm9qZWN0ZWQgcGl4ZWxcclxuICBcdC8vIGNvb3JkaW5hdGVzIChzb21ldGltZXMgdXNlZnVsIGluIGxheWVyIGFuZCBvdmVybGF5IGltcGxlbWVudGF0aW9ucykuXHJcbiAgXHRnZXRQaXhlbEJvdW5kczogZnVuY3Rpb24gKGNlbnRlciwgem9vbSkge1xyXG4gIFx0XHR2YXIgdG9wTGVmdFBvaW50ID0gdGhpcy5fZ2V0VG9wTGVmdFBvaW50KGNlbnRlciwgem9vbSk7XHJcbiAgXHRcdHJldHVybiBuZXcgQm91bmRzKHRvcExlZnRQb2ludCwgdG9wTGVmdFBvaW50LmFkZCh0aGlzLmdldFNpemUoKSkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBUT0RPOiBDaGVjayBzZW1hbnRpY3MgLSBpc24ndCB0aGUgcGl4ZWwgb3JpZ2luIHRoZSAwLDAgY29vcmQgcmVsYXRpdmUgdG9cclxuICBcdC8vIHRoZSBtYXAgcGFuZT8gXCJsZWZ0IHBvaW50IG9mIHRoZSBtYXAgbGF5ZXJcIiBjYW4gYmUgY29uZnVzaW5nLCBzcGVjaWFsbHlcclxuICBcdC8vIHNpbmNlIHRoZXJlIGNhbiBiZSBuZWdhdGl2ZSBvZmZzZXRzLlxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQaXhlbE9yaWdpbigpOiBQb2ludFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgcHJvamVjdGVkIHBpeGVsIGNvb3JkaW5hdGVzIG9mIHRoZSB0b3AgbGVmdCBwb2ludCBvZlxyXG4gIFx0Ly8gdGhlIG1hcCBsYXllciAodXNlZnVsIGluIGN1c3RvbSBsYXllciBhbmQgb3ZlcmxheSBpbXBsZW1lbnRhdGlvbnMpLlxyXG4gIFx0Z2V0UGl4ZWxPcmlnaW46IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5fY2hlY2tJZkxvYWRlZCgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fcGl4ZWxPcmlnaW47XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0UGl4ZWxXb3JsZEJvdW5kcyh6b29tPzogTnVtYmVyKTogQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB3b3JsZCdzIGJvdW5kcyBpbiBwaXhlbCBjb29yZGluYXRlcyBmb3Igem9vbSBsZXZlbCBgem9vbWAuXHJcbiAgXHQvLyBJZiBgem9vbWAgaXMgb21pdHRlZCwgdGhlIG1hcCdzIGN1cnJlbnQgem9vbSBsZXZlbCBpcyB1c2VkLlxyXG4gIFx0Z2V0UGl4ZWxXb3JsZEJvdW5kczogZnVuY3Rpb24gKHpvb20pIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMuZ2V0UHJvamVjdGVkQm91bmRzKHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuZ2V0Wm9vbSgpIDogem9vbSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE90aGVyIE1ldGhvZHNcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFBhbmUocGFuZTogU3RyaW5nfEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgYSBbbWFwIHBhbmVdKCNtYXAtcGFuZSksIGdpdmVuIGl0cyBuYW1lIG9yIGl0cyBIVE1MIGVsZW1lbnQgKGl0cyBpZGVudGl0eSkuXHJcbiAgXHRnZXRQYW5lOiBmdW5jdGlvbiAocGFuZSkge1xyXG4gIFx0XHRyZXR1cm4gdHlwZW9mIHBhbmUgPT09ICdzdHJpbmcnID8gdGhpcy5fcGFuZXNbcGFuZV0gOiBwYW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFBhbmVzKCk6IE9iamVjdFxyXG4gIFx0Ly8gUmV0dXJucyBhIHBsYWluIG9iamVjdCBjb250YWluaW5nIHRoZSBuYW1lcyBvZiBhbGwgW3BhbmVzXSgjbWFwLXBhbmUpIGFzIGtleXMgYW5kXHJcbiAgXHQvLyB0aGUgcGFuZXMgYXMgdmFsdWVzLlxyXG4gIFx0Z2V0UGFuZXM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX3BhbmVzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldENvbnRhaW5lcjogSFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIEhUTUwgZWxlbWVudCB0aGF0IGNvbnRhaW5zIHRoZSBtYXAuXHJcbiAgXHRnZXRDb250YWluZXI6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcclxuICBcdH0sXHJcblxyXG5cclxuICBcdC8vIEBzZWN0aW9uIENvbnZlcnNpb24gTWV0aG9kc1xyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0Wm9vbVNjYWxlKHRvWm9vbTogTnVtYmVyLCBmcm9tWm9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBzY2FsZSBmYWN0b3IgdG8gYmUgYXBwbGllZCB0byBhIG1hcCB0cmFuc2l0aW9uIGZyb20gem9vbSBsZXZlbFxyXG4gIFx0Ly8gYGZyb21ab29tYCB0byBgdG9ab29tYC4gVXNlZCBpbnRlcm5hbGx5IHRvIGhlbHAgd2l0aCB6b29tIGFuaW1hdGlvbnMuXHJcbiAgXHRnZXRab29tU2NhbGU6IGZ1bmN0aW9uICh0b1pvb20sIGZyb21ab29tKSB7XHJcbiAgXHRcdC8vIFRPRE8gcmVwbGFjZSB3aXRoIHVuaXZlcnNhbCBpbXBsZW1lbnRhdGlvbiBhZnRlciByZWZhY3RvcmluZyBwcm9qZWN0aW9uc1xyXG4gIFx0XHR2YXIgY3JzID0gdGhpcy5vcHRpb25zLmNycztcclxuICBcdFx0ZnJvbVpvb20gPSBmcm9tWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fem9vbSA6IGZyb21ab29tO1xyXG4gIFx0XHRyZXR1cm4gY3JzLnNjYWxlKHRvWm9vbSkgLyBjcnMuc2NhbGUoZnJvbVpvb20pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldFNjYWxlWm9vbShzY2FsZTogTnVtYmVyLCBmcm9tWm9vbTogTnVtYmVyKTogTnVtYmVyXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSB6b29tIGxldmVsIHRoYXQgdGhlIG1hcCB3b3VsZCBlbmQgdXAgYXQsIGlmIGl0IGlzIGF0IGBmcm9tWm9vbWBcclxuICBcdC8vIGxldmVsIGFuZCBldmVyeXRoaW5nIGlzIHNjYWxlZCBieSBhIGZhY3RvciBvZiBgc2NhbGVgLiBJbnZlcnNlIG9mXHJcbiAgXHQvLyBbYGdldFpvb21TY2FsZWBdKCNtYXAtZ2V0Wm9vbVNjYWxlKS5cclxuICBcdGdldFNjYWxlWm9vbTogZnVuY3Rpb24gKHNjYWxlLCBmcm9tWm9vbSkge1xyXG4gIFx0XHR2YXIgY3JzID0gdGhpcy5vcHRpb25zLmNycztcclxuICBcdFx0ZnJvbVpvb20gPSBmcm9tWm9vbSA9PT0gdW5kZWZpbmVkID8gdGhpcy5fem9vbSA6IGZyb21ab29tO1xyXG4gIFx0XHR2YXIgem9vbSA9IGNycy56b29tKHNjYWxlICogY3JzLnNjYWxlKGZyb21ab29tKSk7XHJcbiAgXHRcdHJldHVybiBpc05hTih6b29tKSA/IEluZmluaXR5IDogem9vbTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBwcm9qZWN0KGxhdGxuZzogTGF0TG5nLCB6b29tOiBOdW1iZXIpOiBQb2ludFxyXG4gIFx0Ly8gUHJvamVjdHMgYSBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSBgTGF0TG5nYCBhY2NvcmRpbmcgdG8gdGhlIHByb2plY3Rpb25cclxuICBcdC8vIG9mIHRoZSBtYXAncyBDUlMsIHRoZW4gc2NhbGVzIGl0IGFjY29yZGluZyB0byBgem9vbWAgYW5kIHRoZSBDUlMnc1xyXG4gIFx0Ly8gYFRyYW5zZm9ybWF0aW9uYC4gVGhlIHJlc3VsdCBpcyBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvXHJcbiAgXHQvLyB0aGUgQ1JTIG9yaWdpbi5cclxuICBcdHByb2plY3Q6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20pIHtcclxuICBcdFx0em9vbSA9IHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuX3pvb20gOiB6b29tO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5sYXRMbmdUb1BvaW50KHRvTGF0TG5nKGxhdGxuZyksIHpvb20pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVucHJvamVjdChwb2ludDogUG9pbnQsIHpvb206IE51bWJlcik6IExhdExuZ1xyXG4gIFx0Ly8gSW52ZXJzZSBvZiBbYHByb2plY3RgXSgjbWFwLXByb2plY3QpLlxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQsIHpvb20pIHtcclxuICBcdFx0em9vbSA9IHpvb20gPT09IHVuZGVmaW5lZCA/IHRoaXMuX3pvb20gOiB6b29tO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5wb2ludFRvTGF0TG5nKHRvUG9pbnQocG9pbnQpLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBsYXllclBvaW50VG9MYXRMbmcocG9pbnQ6IFBvaW50KTogTGF0TG5nXHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLFxyXG4gIFx0Ly8gcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSAoZm9yIHRoZSBjdXJyZW50IHpvb20gbGV2ZWwpLlxyXG4gIFx0bGF5ZXJQb2ludFRvTGF0TG5nOiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0dmFyIHByb2plY3RlZFBvaW50ID0gdG9Qb2ludChwb2ludCkuYWRkKHRoaXMuZ2V0UGl4ZWxPcmlnaW4oKSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLnVucHJvamVjdChwcm9qZWN0ZWRQb2ludCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbGF0TG5nVG9MYXllclBvaW50KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIEdpdmVuIGEgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGUsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgcGl4ZWwgY29vcmRpbmF0ZVxyXG4gIFx0Ly8gcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLlxyXG4gIFx0bGF0TG5nVG9MYXllclBvaW50OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHZhciBwcm9qZWN0ZWRQb2ludCA9IHRoaXMucHJvamVjdCh0b0xhdExuZyhsYXRsbmcpKS5fcm91bmQoKTtcclxuICBcdFx0cmV0dXJuIHByb2plY3RlZFBvaW50Ll9zdWJ0cmFjdCh0aGlzLmdldFBpeGVsT3JpZ2luKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHdyYXBMYXRMbmcobGF0bG5nOiBMYXRMbmcpOiBMYXRMbmdcclxuICBcdC8vIFJldHVybnMgYSBgTGF0TG5nYCB3aGVyZSBgbGF0YCBhbmQgYGxuZ2AgaGFzIGJlZW4gd3JhcHBlZCBhY2NvcmRpbmcgdG8gdGhlXHJcbiAgXHQvLyBtYXAncyBDUlMncyBgd3JhcExhdGAgYW5kIGB3cmFwTG5nYCBwcm9wZXJ0aWVzLCBpZiB0aGV5IGFyZSBvdXRzaWRlIHRoZVxyXG4gIFx0Ly8gQ1JTJ3MgYm91bmRzLlxyXG4gIFx0Ly8gQnkgZGVmYXVsdCB0aGlzIG1lYW5zIGxvbmdpdHVkZSBpcyB3cmFwcGVkIGFyb3VuZCB0aGUgZGF0ZWxpbmUgc28gaXRzXHJcbiAgXHQvLyB2YWx1ZSBpcyBiZXR3ZWVuIC0xODAgYW5kICsxODAgZGVncmVlcy5cclxuICBcdHdyYXBMYXRMbmc6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMud3JhcExhdExuZyh0b0xhdExuZyhsYXRsbmcpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB3cmFwTGF0TG5nQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKTogTGF0TG5nQm91bmRzXHJcbiAgXHQvLyBSZXR1cm5zIGEgYExhdExuZ0JvdW5kc2Agd2l0aCB0aGUgc2FtZSBzaXplIGFzIHRoZSBnaXZlbiBvbmUsIGVuc3VyaW5nIHRoYXRcclxuICBcdC8vIGl0cyBjZW50ZXIgaXMgd2l0aGluIHRoZSBDUlMncyBib3VuZHMuXHJcbiAgXHQvLyBCeSBkZWZhdWx0IHRoaXMgbWVhbnMgdGhlIGNlbnRlciBsb25naXR1ZGUgaXMgd3JhcHBlZCBhcm91bmQgdGhlIGRhdGVsaW5lIHNvIGl0c1xyXG4gIFx0Ly8gdmFsdWUgaXMgYmV0d2VlbiAtMTgwIGFuZCArMTgwIGRlZ3JlZXMsIGFuZCB0aGUgbWFqb3JpdHkgb2YgdGhlIGJvdW5kc1xyXG4gIFx0Ly8gb3ZlcmxhcHMgdGhlIENSUydzIGJvdW5kcy5cclxuICBcdHdyYXBMYXRMbmdCb3VuZHM6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5jcnMud3JhcExhdExuZ0JvdW5kcyh0b0xhdExuZ0JvdW5kcyhsYXRsbmcpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBkaXN0YW5jZShsYXRsbmcxOiBMYXRMbmcsIGxhdGxuZzI6IExhdExuZyk6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZGlzdGFuY2UgYmV0d2VlbiB0d28gZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGVzIGFjY29yZGluZyB0b1xyXG4gIFx0Ly8gdGhlIG1hcCdzIENSUy4gQnkgZGVmYXVsdCB0aGlzIG1lYXN1cmVzIGRpc3RhbmNlIGluIG1ldGVycy5cclxuICBcdGRpc3RhbmNlOiBmdW5jdGlvbiAobGF0bG5nMSwgbGF0bG5nMikge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmNycy5kaXN0YW5jZSh0b0xhdExuZyhsYXRsbmcxKSwgdG9MYXRMbmcobGF0bG5nMikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KHBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIG1hcCBjb250YWluZXIsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmdcclxuICBcdC8vIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLlxyXG4gIFx0Y29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQ6IGZ1bmN0aW9uIChwb2ludCkgeyAvLyAoUG9pbnQpXHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHBvaW50KS5zdWJ0cmFjdCh0aGlzLl9nZXRNYXBQYW5lUG9zKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGxheWVyUG9pbnRUb0NvbnRhaW5lclBvaW50KHBvaW50OiBQb2ludCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIHBpeGVsIGNvb3JkaW5hdGUgcmVsYXRpdmUgdG8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pLFxyXG4gIFx0Ly8gcmV0dXJucyB0aGUgY29ycmVzcG9uZGluZyBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZSBtYXAgY29udGFpbmVyLlxyXG4gIFx0bGF5ZXJQb2ludFRvQ29udGFpbmVyUG9pbnQ6IGZ1bmN0aW9uIChwb2ludCkgeyAvLyAoUG9pbnQpXHJcbiAgXHRcdHJldHVybiB0b1BvaW50KHBvaW50KS5hZGQodGhpcy5fZ2V0TWFwUGFuZVBvcygpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjb250YWluZXJQb2ludFRvTGF0TG5nKHBvaW50OiBQb2ludCk6IExhdExuZ1xyXG4gIFx0Ly8gR2l2ZW4gYSBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZSBtYXAgY29udGFpbmVyLCByZXR1cm5zXHJcbiAgXHQvLyB0aGUgY29ycmVzcG9uZGluZyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZSAoZm9yIHRoZSBjdXJyZW50IHpvb20gbGV2ZWwpLlxyXG4gIFx0Y29udGFpbmVyUG9pbnRUb0xhdExuZzogZnVuY3Rpb24gKHBvaW50KSB7XHJcbiAgXHRcdHZhciBsYXllclBvaW50ID0gdGhpcy5jb250YWluZXJQb2ludFRvTGF5ZXJQb2ludCh0b1BvaW50KHBvaW50KSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0xhdExuZyhsYXllclBvaW50KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBsYXRMbmdUb0NvbnRhaW5lclBvaW50KGxhdGxuZzogTGF0TG5nKTogUG9pbnRcclxuICBcdC8vIEdpdmVuIGEgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGUsIHJldHVybnMgdGhlIGNvcnJlc3BvbmRpbmcgcGl4ZWwgY29vcmRpbmF0ZVxyXG4gIFx0Ly8gcmVsYXRpdmUgdG8gdGhlIG1hcCBjb250YWluZXIuXHJcbiAgXHRsYXRMbmdUb0NvbnRhaW5lclBvaW50OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0NvbnRhaW5lclBvaW50KHRoaXMubGF0TG5nVG9MYXllclBvaW50KHRvTGF0TG5nKGxhdGxuZykpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBtb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChldjogTW91c2VFdmVudCk6IFBvaW50XHJcbiAgXHQvLyBHaXZlbiBhIE1vdXNlRXZlbnQgb2JqZWN0LCByZXR1cm5zIHRoZSBwaXhlbCBjb29yZGluYXRlIHJlbGF0aXZlIHRvIHRoZVxyXG4gIFx0Ly8gbWFwIGNvbnRhaW5lciB3aGVyZSB0aGUgZXZlbnQgdG9vayBwbGFjZS5cclxuICBcdG1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50OiBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHRyZXR1cm4gZ2V0TW91c2VQb3NpdGlvbihlLCB0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZXY6IE1vdXNlRXZlbnQpOiBQb2ludFxyXG4gIFx0Ly8gR2l2ZW4gYSBNb3VzZUV2ZW50IG9iamVjdCwgcmV0dXJucyB0aGUgcGl4ZWwgY29vcmRpbmF0ZSByZWxhdGl2ZSB0b1xyXG4gIFx0Ly8gdGhlIFtvcmlnaW4gcGl4ZWxdKCNtYXAtZ2V0cGl4ZWxvcmlnaW4pIHdoZXJlIHRoZSBldmVudCB0b29rIHBsYWNlLlxyXG4gIFx0bW91c2VFdmVudFRvTGF5ZXJQb2ludDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuY29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQodGhpcy5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgbW91c2VFdmVudFRvTGF0TG5nKGV2OiBNb3VzZUV2ZW50KTogTGF0TG5nXHJcbiAgXHQvLyBHaXZlbiBhIE1vdXNlRXZlbnQgb2JqZWN0LCByZXR1cm5zIGdlb2dyYXBoaWNhbCBjb29yZGluYXRlIHdoZXJlIHRoZVxyXG4gIFx0Ly8gZXZlbnQgdG9vayBwbGFjZS5cclxuICBcdG1vdXNlRXZlbnRUb0xhdExuZzogZnVuY3Rpb24gKGUpIHsgLy8gKE1vdXNlRXZlbnQpXHJcbiAgXHRcdHJldHVybiB0aGlzLmxheWVyUG9pbnRUb0xhdExuZyh0aGlzLm1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZSkpO1xyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gbWFwIGluaXRpYWxpemF0aW9uIG1ldGhvZHNcclxuXHJcbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKGlkKSB7XHJcbiAgXHRcdHZhciBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIgPSBnZXQoaWQpO1xyXG5cclxuICBcdFx0aWYgKCFjb250YWluZXIpIHtcclxuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ01hcCBjb250YWluZXIgbm90IGZvdW5kLicpO1xyXG4gIFx0XHR9IGVsc2UgaWYgKGNvbnRhaW5lci5fbGVhZmxldF9pZCkge1xyXG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignTWFwIGNvbnRhaW5lciBpcyBhbHJlYWR5IGluaXRpYWxpemVkLicpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRvbihjb250YWluZXIsICdzY3JvbGwnLCB0aGlzLl9vblNjcm9sbCwgdGhpcyk7XHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lcklkID0gc3RhbXAoY29udGFpbmVyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX2NvbnRhaW5lcjtcclxuXHJcbiAgXHRcdHRoaXMuX2ZhZGVBbmltYXRlZCA9IHRoaXMub3B0aW9ucy5mYWRlQW5pbWF0aW9uICYmIEJyb3dzZXIuYW55M2Q7XHJcblxyXG4gIFx0XHRhZGRDbGFzcyhjb250YWluZXIsICdsZWFmbGV0LWNvbnRhaW5lcicgK1xyXG4gIFx0XHRcdChCcm93c2VyLnRvdWNoID8gJyBsZWFmbGV0LXRvdWNoJyA6ICcnKSArXHJcbiAgXHRcdFx0KEJyb3dzZXIucmV0aW5hID8gJyBsZWFmbGV0LXJldGluYScgOiAnJykgK1xyXG4gIFx0XHRcdChCcm93c2VyLmllbHQ5ID8gJyBsZWFmbGV0LW9sZGllJyA6ICcnKSArXHJcbiAgXHRcdFx0KEJyb3dzZXIuc2FmYXJpID8gJyBsZWFmbGV0LXNhZmFyaScgOiAnJykgK1xyXG4gIFx0XHRcdCh0aGlzLl9mYWRlQW5pbWF0ZWQgPyAnIGxlYWZsZXQtZmFkZS1hbmltJyA6ICcnKSk7XHJcblxyXG4gIFx0XHR2YXIgcG9zaXRpb24gPSBnZXRTdHlsZShjb250YWluZXIsICdwb3NpdGlvbicpO1xyXG5cclxuICBcdFx0aWYgKHBvc2l0aW9uICE9PSAnYWJzb2x1dGUnICYmIHBvc2l0aW9uICE9PSAncmVsYXRpdmUnICYmIHBvc2l0aW9uICE9PSAnZml4ZWQnICYmIHBvc2l0aW9uICE9PSAnc3RpY2t5Jykge1xyXG4gIFx0XHRcdGNvbnRhaW5lci5zdHlsZS5wb3NpdGlvbiA9ICdyZWxhdGl2ZSc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2luaXRQYW5lcygpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2luaXRDb250cm9sUG9zKSB7XHJcbiAgXHRcdFx0dGhpcy5faW5pdENvbnRyb2xQb3MoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdFBhbmVzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwYW5lcyA9IHRoaXMuX3BhbmVzID0ge307XHJcbiAgXHRcdHRoaXMuX3BhbmVSZW5kZXJlcnMgPSB7fTtcclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uXHJcbiAgXHRcdC8vXHJcbiAgXHRcdC8vIFBhbmVzIGFyZSBET00gZWxlbWVudHMgdXNlZCB0byBjb250cm9sIHRoZSBvcmRlcmluZyBvZiBsYXllcnMgb24gdGhlIG1hcC4gWW91XHJcbiAgXHRcdC8vIGNhbiBhY2Nlc3MgcGFuZXMgd2l0aCBbYG1hcC5nZXRQYW5lYF0oI21hcC1nZXRwYW5lKSBvclxyXG4gIFx0XHQvLyBbYG1hcC5nZXRQYW5lc2BdKCNtYXAtZ2V0cGFuZXMpIG1ldGhvZHMuIE5ldyBwYW5lcyBjYW4gYmUgY3JlYXRlZCB3aXRoIHRoZVxyXG4gIFx0XHQvLyBbYG1hcC5jcmVhdGVQYW5lYF0oI21hcC1jcmVhdGVwYW5lKSBtZXRob2QuXHJcbiAgXHRcdC8vXHJcbiAgXHRcdC8vIEV2ZXJ5IG1hcCBoYXMgdGhlIGZvbGxvd2luZyBkZWZhdWx0IHBhbmVzIHRoYXQgZGlmZmVyIG9ubHkgaW4gekluZGV4LlxyXG4gIFx0XHQvL1xyXG4gIFx0XHQvLyBAcGFuZSBtYXBQYW5lOiBIVE1MRWxlbWVudCA9ICdhdXRvJ1xyXG4gIFx0XHQvLyBQYW5lIHRoYXQgY29udGFpbnMgYWxsIG90aGVyIG1hcCBwYW5lc1xyXG5cclxuICBcdFx0dGhpcy5fbWFwUGFuZSA9IHRoaXMuY3JlYXRlUGFuZSgnbWFwUGFuZScsIHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX21hcFBhbmUsIG5ldyBQb2ludCgwLCAwKSk7XHJcblxyXG4gIFx0XHQvLyBAcGFuZSB0aWxlUGFuZTogSFRNTEVsZW1lbnQgPSAyMDBcclxuICBcdFx0Ly8gUGFuZSBmb3IgYEdyaWRMYXllcmBzIGFuZCBgVGlsZUxheWVyYHNcclxuICBcdFx0dGhpcy5jcmVhdGVQYW5lKCd0aWxlUGFuZScpO1xyXG4gIFx0XHQvLyBAcGFuZSBvdmVybGF5UGFuZTogSFRNTEVsZW1lbnQgPSA0MDBcclxuICBcdFx0Ly8gUGFuZSBmb3IgdmVjdG9ycyAoYFBhdGhgcywgbGlrZSBgUG9seWxpbmVgcyBhbmQgYFBvbHlnb25gcyksIGBJbWFnZU92ZXJsYXlgcyBhbmQgYFZpZGVvT3ZlcmxheWBzXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgnb3ZlcmxheVBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgc2hhZG93UGFuZTogSFRNTEVsZW1lbnQgPSA1MDBcclxuICBcdFx0Ly8gUGFuZSBmb3Igb3ZlcmxheSBzaGFkb3dzIChlLmcuIGBNYXJrZXJgIHNoYWRvd3MpXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgnc2hhZG93UGFuZScpO1xyXG4gIFx0XHQvLyBAcGFuZSBtYXJrZXJQYW5lOiBIVE1MRWxlbWVudCA9IDYwMFxyXG4gIFx0XHQvLyBQYW5lIGZvciBgSWNvbmBzIG9mIGBNYXJrZXJgc1xyXG4gIFx0XHR0aGlzLmNyZWF0ZVBhbmUoJ21hcmtlclBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgdG9vbHRpcFBhbmU6IEhUTUxFbGVtZW50ID0gNjUwXHJcbiAgXHRcdC8vIFBhbmUgZm9yIGBUb29sdGlwYHMuXHJcbiAgXHRcdHRoaXMuY3JlYXRlUGFuZSgndG9vbHRpcFBhbmUnKTtcclxuICBcdFx0Ly8gQHBhbmUgcG9wdXBQYW5lOiBIVE1MRWxlbWVudCA9IDcwMFxyXG4gIFx0XHQvLyBQYW5lIGZvciBgUG9wdXBgcy5cclxuICBcdFx0dGhpcy5jcmVhdGVQYW5lKCdwb3B1cFBhbmUnKTtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLm1hcmtlclpvb21BbmltYXRpb24pIHtcclxuICBcdFx0XHRhZGRDbGFzcyhwYW5lcy5tYXJrZXJQYW5lLCAnbGVhZmxldC16b29tLWhpZGUnKTtcclxuICBcdFx0XHRhZGRDbGFzcyhwYW5lcy5zaGFkb3dQYW5lLCAnbGVhZmxldC16b29tLWhpZGUnKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcblxyXG4gIFx0Ly8gcHJpdmF0ZSBtZXRob2RzIHRoYXQgbW9kaWZ5IG1hcCBzdGF0ZVxyXG5cclxuICBcdC8vIEBzZWN0aW9uIE1hcCBzdGF0ZSBjaGFuZ2UgZXZlbnRzXHJcbiAgXHRfcmVzZXRWaWV3OiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBub01vdmVTdGFydCkge1xyXG4gIFx0XHRzZXRQb3NpdGlvbih0aGlzLl9tYXBQYW5lLCBuZXcgUG9pbnQoMCwgMCkpO1xyXG5cclxuICBcdFx0dmFyIGxvYWRpbmcgPSAhdGhpcy5fbG9hZGVkO1xyXG4gIFx0XHR0aGlzLl9sb2FkZWQgPSB0cnVlO1xyXG4gIFx0XHR6b29tID0gdGhpcy5fbGltaXRab29tKHpvb20pO1xyXG5cclxuICBcdFx0dGhpcy5maXJlKCd2aWV3cHJlcmVzZXQnKTtcclxuXHJcbiAgXHRcdHZhciB6b29tQ2hhbmdlZCA9IHRoaXMuX3pvb20gIT09IHpvb207XHJcbiAgXHRcdHRoaXNcclxuICBcdFx0XHQuX21vdmVTdGFydCh6b29tQ2hhbmdlZCwgbm9Nb3ZlU3RhcnQpXHJcbiAgXHRcdFx0Ll9tb3ZlKGNlbnRlciwgem9vbSlcclxuICBcdFx0XHQuX21vdmVFbmQoem9vbUNoYW5nZWQpO1xyXG5cclxuICBcdFx0Ly8gQGV2ZW50IHZpZXdyZXNldDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIG5lZWRzIHRvIHJlZHJhdyBpdHMgY29udGVudCAodGhpcyB1c3VhbGx5IGhhcHBlbnNcclxuICBcdFx0Ly8gb24gbWFwIHpvb20gb3IgbG9hZCkuIFZlcnkgdXNlZnVsIGZvciBjcmVhdGluZyBjdXN0b20gb3ZlcmxheXMuXHJcbiAgXHRcdHRoaXMuZmlyZSgndmlld3Jlc2V0Jyk7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbG9hZDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIGlzIGluaXRpYWxpemVkICh3aGVuIGl0cyBjZW50ZXIgYW5kIHpvb20gYXJlIHNldFxyXG4gIFx0XHQvLyBmb3IgdGhlIGZpcnN0IHRpbWUpLlxyXG4gIFx0XHRpZiAobG9hZGluZykge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnbG9hZCcpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tb3ZlU3RhcnQ6IGZ1bmN0aW9uICh6b29tQ2hhbmdlZCwgbm9Nb3ZlU3RhcnQpIHtcclxuICBcdFx0Ly8gQGV2ZW50IHpvb21zdGFydDogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFwIHpvb20gaXMgYWJvdXQgdG8gY2hhbmdlIChlLmcuIGJlZm9yZSB6b29tIGFuaW1hdGlvbikuXHJcbiAgXHRcdC8vIEBldmVudCBtb3Zlc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHZpZXcgb2YgdGhlIG1hcCBzdGFydHMgY2hhbmdpbmcgKGUuZy4gdXNlciBzdGFydHMgZHJhZ2dpbmcgdGhlIG1hcCkuXHJcbiAgXHRcdGlmICh6b29tQ2hhbmdlZCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbXN0YXJ0Jyk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKCFub01vdmVTdGFydCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnbW92ZXN0YXJ0Jyk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9tb3ZlOiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBkYXRhLCBzdXByZXNzRXZlbnQpIHtcclxuICBcdFx0aWYgKHpvb20gPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHpvb20gPSB0aGlzLl96b29tO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHZhciB6b29tQ2hhbmdlZCA9IHRoaXMuX3pvb20gIT09IHpvb207XHJcblxyXG4gIFx0XHR0aGlzLl96b29tID0gem9vbTtcclxuICBcdFx0dGhpcy5fbGFzdENlbnRlciA9IGNlbnRlcjtcclxuICBcdFx0dGhpcy5fcGl4ZWxPcmlnaW4gPSB0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIpO1xyXG5cclxuICBcdFx0aWYgKCFzdXByZXNzRXZlbnQpIHtcclxuICBcdFx0XHQvLyBAZXZlbnQgem9vbTogRXZlbnRcclxuICBcdFx0XHQvLyBGaXJlZCByZXBlYXRlZGx5IGR1cmluZyBhbnkgY2hhbmdlIGluIHpvb20gbGV2ZWwsXHJcbiAgXHRcdFx0Ly8gaW5jbHVkaW5nIHpvb20gYW5kIGZseSBhbmltYXRpb25zLlxyXG4gIFx0XHRcdGlmICh6b29tQ2hhbmdlZCB8fCAoZGF0YSAmJiBkYXRhLnBpbmNoKSkge1x0Ly8gQWx3YXlzIGZpcmUgJ3pvb20nIGlmIHBpbmNoaW5nIGJlY2F1c2UgIzM1MzBcclxuICBcdFx0XHRcdHRoaXMuZmlyZSgnem9vbScsIGRhdGEpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IG1vdmU6IEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgcmVwZWF0ZWRseSBkdXJpbmcgYW55IG1vdmVtZW50IG9mIHRoZSBtYXAsXHJcbiAgXHRcdFx0Ly8gaW5jbHVkaW5nIHBhbiBhbmQgZmx5IGFuaW1hdGlvbnMuXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdtb3ZlJywgZGF0YSk7XHJcbiAgXHRcdH0gZWxzZSBpZiAoZGF0YSAmJiBkYXRhLnBpbmNoKSB7XHQvLyBBbHdheXMgZmlyZSAnem9vbScgaWYgcGluY2hpbmcgYmVjYXVzZSAjMzUzMFxyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbScsIGRhdGEpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbW92ZUVuZDogZnVuY3Rpb24gKHpvb21DaGFuZ2VkKSB7XHJcbiAgXHRcdC8vIEBldmVudCB6b29tZW5kOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtYXAgem9vbSBjaGFuZ2VkLCBhZnRlciBhbnkgYW5pbWF0aW9ucy5cclxuICBcdFx0aWYgKHpvb21DaGFuZ2VkKSB7XHJcbiAgXHRcdFx0dGhpcy5maXJlKCd6b29tZW5kJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBldmVudCBtb3ZlZW5kOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBjZW50ZXIgb2YgdGhlIG1hcCBzdG9wcyBjaGFuZ2luZ1xyXG4gIFx0XHQvLyAoZS5nLiB1c2VyIHN0b3BwZWQgZHJhZ2dpbmcgdGhlIG1hcCBvciBhZnRlciBub24tY2VudGVyZWQgem9vbSkuXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3N0b3A6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZseVRvRnJhbWUpO1xyXG4gIFx0XHRpZiAodGhpcy5fcGFuQW5pbSkge1xyXG4gIFx0XHRcdHRoaXMuX3BhbkFuaW0uc3RvcCgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmF3UGFuQnk6IGZ1bmN0aW9uIChvZmZzZXQpIHtcclxuICBcdFx0c2V0UG9zaXRpb24odGhpcy5fbWFwUGFuZSwgdGhpcy5fZ2V0TWFwUGFuZVBvcygpLnN1YnRyYWN0KG9mZnNldCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0Wm9vbVNwYW46IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuZ2V0TWF4Wm9vbSgpIC0gdGhpcy5nZXRNaW5ab29tKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9wYW5JbnNpZGVNYXhCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9lbmZvcmNpbmdCb3VuZHMpIHtcclxuICBcdFx0XHR0aGlzLnBhbkluc2lkZUJvdW5kcyh0aGlzLm9wdGlvbnMubWF4Qm91bmRzKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2hlY2tJZkxvYWRlZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2xvYWRlZCkge1xyXG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignU2V0IG1hcCBjZW50ZXIgYW5kIHpvb20gZmlyc3QuJyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gRE9NIGV2ZW50IGhhbmRsaW5nXHJcblxyXG4gIFx0Ly8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gZXZlbnRzXHJcbiAgXHRfaW5pdEV2ZW50czogZnVuY3Rpb24gKHJlbW92ZSkge1xyXG4gIFx0XHR0aGlzLl90YXJnZXRzID0ge307XHJcbiAgXHRcdHRoaXMuX3RhcmdldHNbc3RhbXAodGhpcy5fY29udGFpbmVyKV0gPSB0aGlzO1xyXG5cclxuICBcdFx0dmFyIG9uT2ZmID0gcmVtb3ZlID8gb2ZmIDogb247XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgY2xpY2s6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBjbGlja3MgKG9yIHRhcHMpIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBkYmxjbGljazogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSB1c2VyIGRvdWJsZS1jbGlja3MgKG9yIGRvdWJsZS10YXBzKSB0aGUgbWFwLlxyXG4gIFx0XHQvLyBAZXZlbnQgbW91c2Vkb3duOiBNb3VzZUV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcHVzaGVzIHRoZSBtb3VzZSBidXR0b24gb24gdGhlIG1hcC5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdXNldXA6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciByZWxlYXNlcyB0aGUgbW91c2UgYnV0dG9uIG9uIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBtb3VzZW92ZXI6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbW91c2UgZW50ZXJzIHRoZSBtYXAuXHJcbiAgXHRcdC8vIEBldmVudCBtb3VzZW91dDogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtb3VzZSBsZWF2ZXMgdGhlIG1hcC5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdXNlbW92ZTogTW91c2VFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGlsZSB0aGUgbW91c2UgbW92ZXMgb3ZlciB0aGUgbWFwLlxyXG4gIFx0XHQvLyBAZXZlbnQgY29udGV4dG1lbnU6IE1vdXNlRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBwdXNoZXMgdGhlIHJpZ2h0IG1vdXNlIGJ1dHRvbiBvbiB0aGUgbWFwLCBwcmV2ZW50c1xyXG4gIFx0XHQvLyBkZWZhdWx0IGJyb3dzZXIgY29udGV4dCBtZW51IGZyb20gc2hvd2luZyBpZiB0aGVyZSBhcmUgbGlzdGVuZXJzIG9uXHJcbiAgXHRcdC8vIHRoaXMgZXZlbnQuIEFsc28gZmlyZWQgb24gbW9iaWxlIHdoZW4gdGhlIHVzZXIgaG9sZHMgYSBzaW5nbGUgdG91Y2hcclxuICBcdFx0Ly8gZm9yIGEgc2Vjb25kIChhbHNvIGNhbGxlZCBsb25nIHByZXNzKS5cclxuICBcdFx0Ly8gQGV2ZW50IGtleXByZXNzOiBLZXlib2FyZEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcHJlc3NlcyBhIGtleSBmcm9tIHRoZSBrZXlib2FyZCB0aGF0IHByb2R1Y2VzIGEgY2hhcmFjdGVyIHZhbHVlIHdoaWxlIHRoZSBtYXAgaXMgZm9jdXNlZC5cclxuICBcdFx0Ly8gQGV2ZW50IGtleWRvd246IEtleWJvYXJkRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBwcmVzc2VzIGEga2V5IGZyb20gdGhlIGtleWJvYXJkIHdoaWxlIHRoZSBtYXAgaXMgZm9jdXNlZC4gVW5saWtlIHRoZSBga2V5cHJlc3NgIGV2ZW50LFxyXG4gIFx0XHQvLyB0aGUgYGtleWRvd25gIGV2ZW50IGlzIGZpcmVkIGZvciBrZXlzIHRoYXQgcHJvZHVjZSBhIGNoYXJhY3RlciB2YWx1ZSBhbmQgZm9yIGtleXNcclxuICBcdFx0Ly8gdGhhdCBkbyBub3QgcHJvZHVjZSBhIGNoYXJhY3RlciB2YWx1ZS5cclxuICBcdFx0Ly8gQGV2ZW50IGtleXVwOiBLZXlib2FyZEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgcmVsZWFzZXMgYSBrZXkgZnJvbSB0aGUga2V5Ym9hcmQgd2hpbGUgdGhlIG1hcCBpcyBmb2N1c2VkLlxyXG4gIFx0XHRvbk9mZih0aGlzLl9jb250YWluZXIsICdjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCAnICtcclxuICBcdFx0XHQnbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlbW92ZSBjb250ZXh0bWVudSBrZXlwcmVzcyBrZXlkb3duIGtleXVwJywgdGhpcy5faGFuZGxlRE9NRXZlbnQsIHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy50cmFja1Jlc2l6ZSkge1xyXG4gIFx0XHRcdG9uT2ZmKHdpbmRvdywgJ3Jlc2l6ZScsIHRoaXMuX29uUmVzaXplLCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKEJyb3dzZXIuYW55M2QgJiYgdGhpcy5vcHRpb25zLnRyYW5zZm9ybTNETGltaXQpIHtcclxuICBcdFx0XHQocmVtb3ZlID8gdGhpcy5vZmYgOiB0aGlzLm9uKS5jYWxsKHRoaXMsICdtb3ZlZW5kJywgdGhpcy5fb25Nb3ZlRW5kKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25SZXNpemU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3Jlc2l6ZVJlcXVlc3QpO1xyXG4gIFx0XHR0aGlzLl9yZXNpemVSZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZShcclxuICBcdFx0ICAgICAgICBmdW5jdGlvbiAoKSB7IHRoaXMuaW52YWxpZGF0ZVNpemUoe2RlYm91bmNlTW92ZWVuZDogdHJ1ZX0pOyB9LCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uU2Nyb2xsOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zY3JvbGxUb3AgID0gMDtcclxuICBcdFx0dGhpcy5fY29udGFpbmVyLnNjcm9sbExlZnQgPSAwO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCk7XHJcbiAgXHRcdGlmIChNYXRoLm1heChNYXRoLmFicyhwb3MueCksIE1hdGguYWJzKHBvcy55KSkgPj0gdGhpcy5vcHRpb25zLnRyYW5zZm9ybTNETGltaXQpIHtcclxuICBcdFx0XHQvLyBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjAzODczIGJ1dCBXZWJraXQgYWxzbyBoYXZlXHJcbiAgXHRcdFx0Ly8gYSBwaXhlbCBvZmZzZXQgb24gdmVyeSBoaWdoIHZhbHVlcywgc2VlOiBodHRwczovL2pzZmlkZGxlLm5ldC9kZzZyNWhoYi9cclxuICBcdFx0XHR0aGlzLl9yZXNldFZpZXcodGhpcy5nZXRDZW50ZXIoKSwgdGhpcy5nZXRab29tKCkpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9maW5kRXZlbnRUYXJnZXRzOiBmdW5jdGlvbiAoZSwgdHlwZSkge1xyXG4gIFx0XHR2YXIgdGFyZ2V0cyA9IFtdLFxyXG4gIFx0XHQgICAgdGFyZ2V0LFxyXG4gIFx0XHQgICAgaXNIb3ZlciA9IHR5cGUgPT09ICdtb3VzZW91dCcgfHwgdHlwZSA9PT0gJ21vdXNlb3ZlcicsXHJcbiAgXHRcdCAgICBzcmMgPSBlLnRhcmdldCB8fCBlLnNyY0VsZW1lbnQsXHJcbiAgXHRcdCAgICBkcmFnZ2luZyA9IGZhbHNlO1xyXG5cclxuICBcdFx0d2hpbGUgKHNyYykge1xyXG4gIFx0XHRcdHRhcmdldCA9IHRoaXMuX3RhcmdldHNbc3RhbXAoc3JjKV07XHJcbiAgXHRcdFx0aWYgKHRhcmdldCAmJiAodHlwZSA9PT0gJ2NsaWNrJyB8fCB0eXBlID09PSAncHJlY2xpY2snKSAmJiB0aGlzLl9kcmFnZ2FibGVNb3ZlZCh0YXJnZXQpKSB7XHJcbiAgXHRcdFx0XHQvLyBQcmV2ZW50IGZpcmluZyBjbGljayBhZnRlciB5b3UganVzdCBkcmFnZ2VkIGFuIG9iamVjdC5cclxuICBcdFx0XHRcdGRyYWdnaW5nID0gdHJ1ZTtcclxuICBcdFx0XHRcdGJyZWFrO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRpZiAodGFyZ2V0ICYmIHRhcmdldC5saXN0ZW5zKHR5cGUsIHRydWUpKSB7XHJcbiAgXHRcdFx0XHRpZiAoaXNIb3ZlciAmJiAhaXNFeHRlcm5hbFRhcmdldChzcmMsIGUpKSB7IGJyZWFrOyB9XHJcbiAgXHRcdFx0XHR0YXJnZXRzLnB1c2godGFyZ2V0KTtcclxuICBcdFx0XHRcdGlmIChpc0hvdmVyKSB7IGJyZWFrOyB9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdGlmIChzcmMgPT09IHRoaXMuX2NvbnRhaW5lcikgeyBicmVhazsgfVxyXG4gIFx0XHRcdHNyYyA9IHNyYy5wYXJlbnROb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICghdGFyZ2V0cy5sZW5ndGggJiYgIWRyYWdnaW5nICYmICFpc0hvdmVyICYmIHRoaXMubGlzdGVucyh0eXBlLCB0cnVlKSkge1xyXG4gIFx0XHRcdHRhcmdldHMgPSBbdGhpc107XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRhcmdldHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pc0NsaWNrRGlzYWJsZWQ6IGZ1bmN0aW9uIChlbCkge1xyXG4gIFx0XHR3aGlsZSAoZWwgJiYgZWwgIT09IHRoaXMuX2NvbnRhaW5lcikge1xyXG4gIFx0XHRcdGlmIChlbFsnX2xlYWZsZXRfZGlzYWJsZV9jbGljayddKSB7IHJldHVybiB0cnVlOyB9XHJcbiAgXHRcdFx0ZWwgPSBlbC5wYXJlbnROb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9oYW5kbGVET01FdmVudDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIGVsID0gKGUudGFyZ2V0IHx8IGUuc3JjRWxlbWVudCk7XHJcbiAgXHRcdGlmICghdGhpcy5fbG9hZGVkIHx8IGVsWydfbGVhZmxldF9kaXNhYmxlX2V2ZW50cyddIHx8IGUudHlwZSA9PT0gJ2NsaWNrJyAmJiB0aGlzLl9pc0NsaWNrRGlzYWJsZWQoZWwpKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgdHlwZSA9IGUudHlwZTtcclxuXHJcbiAgXHRcdGlmICh0eXBlID09PSAnbW91c2Vkb3duJykge1xyXG4gIFx0XHRcdC8vIHByZXZlbnRzIG91dGxpbmUgd2hlbiBjbGlja2luZyBvbiBrZXlib2FyZC1mb2N1c2FibGUgZWxlbWVudFxyXG4gIFx0XHRcdHByZXZlbnRPdXRsaW5lKGVsKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fZmlyZURPTUV2ZW50KGUsIHR5cGUpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbW91c2VFdmVudHM6IFsnY2xpY2snLCAnZGJsY2xpY2snLCAnbW91c2VvdmVyJywgJ21vdXNlb3V0JywgJ2NvbnRleHRtZW51J10sXHJcblxyXG4gIFx0X2ZpcmVET01FdmVudDogZnVuY3Rpb24gKGUsIHR5cGUsIGNhbnZhc1RhcmdldHMpIHtcclxuXHJcbiAgXHRcdGlmIChlLnR5cGUgPT09ICdjbGljaycpIHtcclxuICBcdFx0XHQvLyBGaXJlIGEgc3ludGhldGljICdwcmVjbGljaycgZXZlbnQgd2hpY2ggcHJvcGFnYXRlcyB1cCAobWFpbmx5IGZvciBjbG9zaW5nIHBvcHVwcykuXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IHByZWNsaWNrOiBNb3VzZUV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgYmVmb3JlIG1vdXNlIGNsaWNrIG9uIHRoZSBtYXAgKHNvbWV0aW1lcyB1c2VmdWwgd2hlbiB5b3VcclxuICBcdFx0XHQvLyB3YW50IHNvbWV0aGluZyB0byBoYXBwZW4gb24gY2xpY2sgYmVmb3JlIGFueSBleGlzdGluZyBjbGlja1xyXG4gIFx0XHRcdC8vIGhhbmRsZXJzIHN0YXJ0IHJ1bm5pbmcpLlxyXG4gIFx0XHRcdHZhciBzeW50aCA9IGV4dGVuZCh7fSwgZSk7XHJcbiAgXHRcdFx0c3ludGgudHlwZSA9ICdwcmVjbGljayc7XHJcbiAgXHRcdFx0dGhpcy5fZmlyZURPTUV2ZW50KHN5bnRoLCBzeW50aC50eXBlLCBjYW52YXNUYXJnZXRzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gRmluZCB0aGUgbGF5ZXIgdGhlIGV2ZW50IGlzIHByb3BhZ2F0aW5nIGZyb20gYW5kIGl0cyBwYXJlbnRzLlxyXG4gIFx0XHR2YXIgdGFyZ2V0cyA9IHRoaXMuX2ZpbmRFdmVudFRhcmdldHMoZSwgdHlwZSk7XHJcblxyXG4gIFx0XHRpZiAoY2FudmFzVGFyZ2V0cykge1xyXG4gIFx0XHRcdHZhciBmaWx0ZXJlZCA9IFtdOyAvLyBwaWNrIG9ubHkgdGFyZ2V0cyB3aXRoIGxpc3RlbmVyc1xyXG4gIFx0XHRcdGZvciAodmFyIGkgPSAwOyBpIDwgY2FudmFzVGFyZ2V0cy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdFx0aWYgKGNhbnZhc1RhcmdldHNbaV0ubGlzdGVucyh0eXBlLCB0cnVlKSkge1xyXG4gIFx0XHRcdFx0XHRmaWx0ZXJlZC5wdXNoKGNhbnZhc1RhcmdldHNbaV0pO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0XHR0YXJnZXRzID0gZmlsdGVyZWQuY29uY2F0KHRhcmdldHMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIXRhcmdldHMubGVuZ3RoKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0aWYgKHR5cGUgPT09ICdjb250ZXh0bWVudScpIHtcclxuICBcdFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIHRhcmdldCA9IHRhcmdldHNbMF07XHJcbiAgXHRcdHZhciBkYXRhID0ge1xyXG4gIFx0XHRcdG9yaWdpbmFsRXZlbnQ6IGVcclxuICBcdFx0fTtcclxuXHJcbiAgXHRcdGlmIChlLnR5cGUgIT09ICdrZXlwcmVzcycgJiYgZS50eXBlICE9PSAna2V5ZG93bicgJiYgZS50eXBlICE9PSAna2V5dXAnKSB7XHJcbiAgXHRcdFx0dmFyIGlzTWFya2VyID0gdGFyZ2V0LmdldExhdExuZyAmJiAoIXRhcmdldC5fcmFkaXVzIHx8IHRhcmdldC5fcmFkaXVzIDw9IDEwKTtcclxuICBcdFx0XHRkYXRhLmNvbnRhaW5lclBvaW50ID0gaXNNYXJrZXIgP1xyXG4gIFx0XHRcdFx0dGhpcy5sYXRMbmdUb0NvbnRhaW5lclBvaW50KHRhcmdldC5nZXRMYXRMbmcoKSkgOiB0aGlzLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xyXG4gIFx0XHRcdGRhdGEubGF5ZXJQb2ludCA9IHRoaXMuY29udGFpbmVyUG9pbnRUb0xheWVyUG9pbnQoZGF0YS5jb250YWluZXJQb2ludCk7XHJcbiAgXHRcdFx0ZGF0YS5sYXRsbmcgPSBpc01hcmtlciA/IHRhcmdldC5nZXRMYXRMbmcoKSA6IHRoaXMubGF5ZXJQb2ludFRvTGF0TG5nKGRhdGEubGF5ZXJQb2ludCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGZvciAoaSA9IDA7IGkgPCB0YXJnZXRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgXHRcdFx0dGFyZ2V0c1tpXS5maXJlKHR5cGUsIGRhdGEsIHRydWUpO1xyXG4gIFx0XHRcdGlmIChkYXRhLm9yaWdpbmFsRXZlbnQuX3N0b3BwZWQgfHxcclxuICBcdFx0XHRcdCh0YXJnZXRzW2ldLm9wdGlvbnMuYnViYmxpbmdNb3VzZUV2ZW50cyA9PT0gZmFsc2UgJiYgaW5kZXhPZih0aGlzLl9tb3VzZUV2ZW50cywgdHlwZSkgIT09IC0xKSkgeyByZXR1cm47IH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfZHJhZ2dhYmxlTW92ZWQ6IGZ1bmN0aW9uIChvYmopIHtcclxuICBcdFx0b2JqID0gb2JqLmRyYWdnaW5nICYmIG9iai5kcmFnZ2luZy5lbmFibGVkKCkgPyBvYmogOiB0aGlzO1xyXG4gIFx0XHRyZXR1cm4gKG9iai5kcmFnZ2luZyAmJiBvYmouZHJhZ2dpbmcubW92ZWQoKSkgfHwgKHRoaXMuYm94Wm9vbSAmJiB0aGlzLmJveFpvb20ubW92ZWQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9jbGVhckhhbmRsZXJzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSB0aGlzLl9oYW5kbGVycy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdHRoaXMuX2hhbmRsZXJzW2ldLmRpc2FibGUoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAc2VjdGlvbiBPdGhlciBNZXRob2RzXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB3aGVuUmVhZHkoZm46IEZ1bmN0aW9uLCBjb250ZXh0PzogT2JqZWN0KTogdGhpc1xyXG4gIFx0Ly8gUnVucyB0aGUgZ2l2ZW4gZnVuY3Rpb24gYGZuYCB3aGVuIHRoZSBtYXAgZ2V0cyBpbml0aWFsaXplZCB3aXRoXHJcbiAgXHQvLyBhIHZpZXcgKGNlbnRlciBhbmQgem9vbSkgYW5kIGF0IGxlYXN0IG9uZSBsYXllciwgb3IgaW1tZWRpYXRlbHlcclxuICBcdC8vIGlmIGl0J3MgYWxyZWFkeSBpbml0aWFsaXplZCwgb3B0aW9uYWxseSBwYXNzaW5nIGEgZnVuY3Rpb24gY29udGV4dC5cclxuICBcdHdoZW5SZWFkeTogZnVuY3Rpb24gKGNhbGxiYWNrLCBjb250ZXh0KSB7XHJcbiAgXHRcdGlmICh0aGlzLl9sb2FkZWQpIHtcclxuICBcdFx0XHRjYWxsYmFjay5jYWxsKGNvbnRleHQgfHwgdGhpcywge3RhcmdldDogdGhpc30pO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHRoaXMub24oJ2xvYWQnLCBjYWxsYmFjaywgY29udGV4dCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuXHJcbiAgXHQvLyBwcml2YXRlIG1ldGhvZHMgZm9yIGdldHRpbmcgbWFwIHN0YXRlXHJcblxyXG4gIFx0X2dldE1hcFBhbmVQb3M6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIGdldFBvc2l0aW9uKHRoaXMuX21hcFBhbmUpIHx8IG5ldyBQb2ludCgwLCAwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X21vdmVkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9nZXRNYXBQYW5lUG9zKCk7XHJcbiAgXHRcdHJldHVybiBwb3MgJiYgIXBvcy5lcXVhbHMoWzAsIDBdKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldFRvcExlZnRQb2ludDogZnVuY3Rpb24gKGNlbnRlciwgem9vbSkge1xyXG4gIFx0XHR2YXIgcGl4ZWxPcmlnaW4gPSBjZW50ZXIgJiYgem9vbSAhPT0gdW5kZWZpbmVkID9cclxuICBcdFx0XHR0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pIDpcclxuICBcdFx0XHR0aGlzLmdldFBpeGVsT3JpZ2luKCk7XHJcbiAgXHRcdHJldHVybiBwaXhlbE9yaWdpbi5zdWJ0cmFjdCh0aGlzLl9nZXRNYXBQYW5lUG9zKCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0TmV3UGl4ZWxPcmlnaW46IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20pIHtcclxuICBcdFx0dmFyIHZpZXdIYWxmID0gdGhpcy5nZXRTaXplKCkuX2RpdmlkZUJ5KDIpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5wcm9qZWN0KGNlbnRlciwgem9vbSkuX3N1YnRyYWN0KHZpZXdIYWxmKS5fYWRkKHRoaXMuX2dldE1hcFBhbmVQb3MoKSkuX3JvdW5kKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9sYXRMbmdUb05ld0xheWVyUG9pbnQ6IGZ1bmN0aW9uIChsYXRsbmcsIHpvb20sIGNlbnRlcikge1xyXG4gIFx0XHR2YXIgdG9wTGVmdCA9IHRoaXMuX2dldE5ld1BpeGVsT3JpZ2luKGNlbnRlciwgem9vbSk7XHJcbiAgXHRcdHJldHVybiB0aGlzLnByb2plY3QobGF0bG5nLCB6b29tKS5fc3VidHJhY3QodG9wTGVmdCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9sYXRMbmdCb3VuZHNUb05ld0xheWVyQm91bmRzOiBmdW5jdGlvbiAobGF0TG5nQm91bmRzLCB6b29tLCBjZW50ZXIpIHtcclxuICBcdFx0dmFyIHRvcExlZnQgPSB0aGlzLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pO1xyXG4gIFx0XHRyZXR1cm4gdG9Cb3VuZHMoW1xyXG4gIFx0XHRcdHRoaXMucHJvamVjdChsYXRMbmdCb3VuZHMuZ2V0U291dGhXZXN0KCksIHpvb20pLl9zdWJ0cmFjdCh0b3BMZWZ0KSxcclxuICBcdFx0XHR0aGlzLnByb2plY3QobGF0TG5nQm91bmRzLmdldE5vcnRoV2VzdCgpLCB6b29tKS5fc3VidHJhY3QodG9wTGVmdCksXHJcbiAgXHRcdFx0dGhpcy5wcm9qZWN0KGxhdExuZ0JvdW5kcy5nZXRTb3V0aEVhc3QoKSwgem9vbSkuX3N1YnRyYWN0KHRvcExlZnQpLFxyXG4gIFx0XHRcdHRoaXMucHJvamVjdChsYXRMbmdCb3VuZHMuZ2V0Tm9ydGhFYXN0KCksIHpvb20pLl9zdWJ0cmFjdCh0b3BMZWZ0KVxyXG4gIFx0XHRdKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gbGF5ZXIgcG9pbnQgb2YgdGhlIGN1cnJlbnQgY2VudGVyXHJcbiAgXHRfZ2V0Q2VudGVyTGF5ZXJQb2ludDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5jb250YWluZXJQb2ludFRvTGF5ZXJQb2ludCh0aGlzLmdldFNpemUoKS5fZGl2aWRlQnkoMikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBvZmZzZXQgb2YgdGhlIHNwZWNpZmllZCBwbGFjZSB0byB0aGUgY3VycmVudCBjZW50ZXIgaW4gcGl4ZWxzXHJcbiAgXHRfZ2V0Q2VudGVyT2Zmc2V0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmxhdExuZ1RvTGF5ZXJQb2ludChsYXRsbmcpLnN1YnRyYWN0KHRoaXMuX2dldENlbnRlckxheWVyUG9pbnQoKSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIGFkanVzdCBjZW50ZXIgZm9yIHZpZXcgdG8gZ2V0IGluc2lkZSBib3VuZHNcclxuICBcdF9saW1pdENlbnRlcjogZnVuY3Rpb24gKGNlbnRlciwgem9vbSwgYm91bmRzKSB7XHJcblxyXG4gIFx0XHRpZiAoIWJvdW5kcykgeyByZXR1cm4gY2VudGVyOyB9XHJcblxyXG4gIFx0XHR2YXIgY2VudGVyUG9pbnQgPSB0aGlzLnByb2plY3QoY2VudGVyLCB6b29tKSxcclxuICBcdFx0ICAgIHZpZXdIYWxmID0gdGhpcy5nZXRTaXplKCkuZGl2aWRlQnkoMiksXHJcbiAgXHRcdCAgICB2aWV3Qm91bmRzID0gbmV3IEJvdW5kcyhjZW50ZXJQb2ludC5zdWJ0cmFjdCh2aWV3SGFsZiksIGNlbnRlclBvaW50LmFkZCh2aWV3SGFsZikpLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gdGhpcy5fZ2V0Qm91bmRzT2Zmc2V0KHZpZXdCb3VuZHMsIGJvdW5kcywgem9vbSk7XHJcblxyXG4gIFx0XHQvLyBJZiBvZmZzZXQgaXMgbGVzcyB0aGFuIGEgcGl4ZWwsIGlnbm9yZS5cclxuICBcdFx0Ly8gVGhpcyBwcmV2ZW50cyB1bnN0YWJsZSBwcm9qZWN0aW9ucyBmcm9tIGdldHRpbmcgaW50b1xyXG4gIFx0XHQvLyBhbiBpbmZpbml0ZSBsb29wIG9mIHRpbnkgb2Zmc2V0cy5cclxuICBcdFx0aWYgKE1hdGguYWJzKG9mZnNldC54KSA8PSAxICYmIE1hdGguYWJzKG9mZnNldC55KSA8PSAxKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGNlbnRlcjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXMudW5wcm9qZWN0KGNlbnRlclBvaW50LmFkZChvZmZzZXQpLCB6b29tKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gYWRqdXN0IG9mZnNldCBmb3IgdmlldyB0byBnZXQgaW5zaWRlIGJvdW5kc1xyXG4gIFx0X2xpbWl0T2Zmc2V0OiBmdW5jdGlvbiAob2Zmc2V0LCBib3VuZHMpIHtcclxuICBcdFx0aWYgKCFib3VuZHMpIHsgcmV0dXJuIG9mZnNldDsgfVxyXG5cclxuICBcdFx0dmFyIHZpZXdCb3VuZHMgPSB0aGlzLmdldFBpeGVsQm91bmRzKCksXHJcbiAgXHRcdCAgICBuZXdCb3VuZHMgPSBuZXcgQm91bmRzKHZpZXdCb3VuZHMubWluLmFkZChvZmZzZXQpLCB2aWV3Qm91bmRzLm1heC5hZGQob2Zmc2V0KSk7XHJcblxyXG4gIFx0XHRyZXR1cm4gb2Zmc2V0LmFkZCh0aGlzLl9nZXRCb3VuZHNPZmZzZXQobmV3Qm91bmRzLCBib3VuZHMpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gcmV0dXJucyBvZmZzZXQgbmVlZGVkIGZvciBweEJvdW5kcyB0byBnZXQgaW5zaWRlIG1heEJvdW5kcyBhdCBhIHNwZWNpZmllZCB6b29tXHJcbiAgXHRfZ2V0Qm91bmRzT2Zmc2V0OiBmdW5jdGlvbiAocHhCb3VuZHMsIG1heEJvdW5kcywgem9vbSkge1xyXG4gIFx0XHR2YXIgcHJvamVjdGVkTWF4Qm91bmRzID0gdG9Cb3VuZHMoXHJcbiAgXHRcdCAgICAgICAgdGhpcy5wcm9qZWN0KG1heEJvdW5kcy5nZXROb3J0aEVhc3QoKSwgem9vbSksXHJcbiAgXHRcdCAgICAgICAgdGhpcy5wcm9qZWN0KG1heEJvdW5kcy5nZXRTb3V0aFdlc3QoKSwgem9vbSlcclxuICBcdFx0ICAgICksXHJcbiAgXHRcdCAgICBtaW5PZmZzZXQgPSBwcm9qZWN0ZWRNYXhCb3VuZHMubWluLnN1YnRyYWN0KHB4Qm91bmRzLm1pbiksXHJcbiAgXHRcdCAgICBtYXhPZmZzZXQgPSBwcm9qZWN0ZWRNYXhCb3VuZHMubWF4LnN1YnRyYWN0KHB4Qm91bmRzLm1heCksXHJcblxyXG4gIFx0XHQgICAgZHggPSB0aGlzLl9yZWJvdW5kKG1pbk9mZnNldC54LCAtbWF4T2Zmc2V0LngpLFxyXG4gIFx0XHQgICAgZHkgPSB0aGlzLl9yZWJvdW5kKG1pbk9mZnNldC55LCAtbWF4T2Zmc2V0LnkpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChkeCwgZHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmVib3VuZDogZnVuY3Rpb24gKGxlZnQsIHJpZ2h0KSB7XHJcbiAgXHRcdHJldHVybiBsZWZ0ICsgcmlnaHQgPiAwID9cclxuICBcdFx0XHRNYXRoLnJvdW5kKGxlZnQgLSByaWdodCkgLyAyIDpcclxuICBcdFx0XHRNYXRoLm1heCgwLCBNYXRoLmNlaWwobGVmdCkpIC0gTWF0aC5tYXgoMCwgTWF0aC5mbG9vcihyaWdodCkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfbGltaXRab29tOiBmdW5jdGlvbiAoem9vbSkge1xyXG4gIFx0XHR2YXIgbWluID0gdGhpcy5nZXRNaW5ab29tKCksXHJcbiAgXHRcdCAgICBtYXggPSB0aGlzLmdldE1heFpvb20oKSxcclxuICBcdFx0ICAgIHNuYXAgPSBCcm93c2VyLmFueTNkID8gdGhpcy5vcHRpb25zLnpvb21TbmFwIDogMTtcclxuICBcdFx0aWYgKHNuYXApIHtcclxuICBcdFx0XHR6b29tID0gTWF0aC5yb3VuZCh6b29tIC8gc25hcCkgKiBzbmFwO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBNYXRoLm1heChtaW4sIE1hdGgubWluKG1heCwgem9vbSkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25QYW5UcmFuc2l0aW9uU3RlcDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLmZpcmUoJ21vdmUnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uUGFuVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9tYXBQYW5lLCAnbGVhZmxldC1wYW4tYW5pbScpO1xyXG4gIFx0XHR0aGlzLmZpcmUoJ21vdmVlbmQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3RyeUFuaW1hdGVkUGFuOiBmdW5jdGlvbiAoY2VudGVyLCBvcHRpb25zKSB7XHJcbiAgXHRcdC8vIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgbmV3IGFuZCBjdXJyZW50IGNlbnRlcnMgaW4gcGl4ZWxzXHJcbiAgXHRcdHZhciBvZmZzZXQgPSB0aGlzLl9nZXRDZW50ZXJPZmZzZXQoY2VudGVyKS5fdHJ1bmMoKTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgdG9vIGZhciB1bmxlc3MgYW5pbWF0ZTogdHJ1ZSBzcGVjaWZpZWQgaW4gb3B0aW9uc1xyXG4gIFx0XHRpZiAoKG9wdGlvbnMgJiYgb3B0aW9ucy5hbmltYXRlKSAhPT0gdHJ1ZSAmJiAhdGhpcy5nZXRTaXplKCkuY29udGFpbnMob2Zmc2V0KSkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdHRoaXMucGFuQnkob2Zmc2V0LCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHJldHVybiB0cnVlO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY3JlYXRlQW5pbVByb3h5OiBmdW5jdGlvbiAoKSB7XHJcblxyXG4gIFx0XHR2YXIgcHJveHkgPSB0aGlzLl9wcm94eSA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC1wcm94eSBsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKTtcclxuICBcdFx0dGhpcy5fcGFuZXMubWFwUGFuZS5hcHBlbmRDaGlsZChwcm94eSk7XHJcblxyXG4gIFx0XHR0aGlzLm9uKCd6b29tYW5pbScsIGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0dmFyIHByb3AgPSBUUkFOU0ZPUk0sXHJcbiAgXHRcdFx0ICAgIHRyYW5zZm9ybSA9IHRoaXMuX3Byb3h5LnN0eWxlW3Byb3BdO1xyXG5cclxuICBcdFx0XHRzZXRUcmFuc2Zvcm0odGhpcy5fcHJveHksIHRoaXMucHJvamVjdChlLmNlbnRlciwgZS56b29tKSwgdGhpcy5nZXRab29tU2NhbGUoZS56b29tLCAxKSk7XHJcblxyXG4gIFx0XHRcdC8vIHdvcmthcm91bmQgZm9yIGNhc2Ugd2hlbiB0cmFuc2Zvcm0gaXMgdGhlIHNhbWUgYW5kIHNvIHRyYW5zaXRpb25lbmQgZXZlbnQgaXMgbm90IGZpcmVkXHJcbiAgXHRcdFx0aWYgKHRyYW5zZm9ybSA9PT0gdGhpcy5fcHJveHkuc3R5bGVbcHJvcF0gJiYgdGhpcy5fYW5pbWF0aW5nWm9vbSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fb25ab29tVHJhbnNpdGlvbkVuZCgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fSwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLm9uKCdsb2FkIG1vdmVlbmQnLCB0aGlzLl9hbmltTW92ZUVuZCwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLl9vbigndW5sb2FkJywgdGhpcy5fZGVzdHJveUFuaW1Qcm94eSwgdGhpcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9kZXN0cm95QW5pbVByb3h5OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJlbW92ZSh0aGlzLl9wcm94eSk7XHJcbiAgXHRcdHRoaXMub2ZmKCdsb2FkIG1vdmVlbmQnLCB0aGlzLl9hbmltTW92ZUVuZCwgdGhpcyk7XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl9wcm94eTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2FuaW1Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBjID0gdGhpcy5nZXRDZW50ZXIoKSxcclxuICBcdFx0ICAgIHogPSB0aGlzLmdldFpvb20oKTtcclxuICBcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX3Byb3h5LCB0aGlzLnByb2plY3QoYywgeiksIHRoaXMuZ2V0Wm9vbVNjYWxlKHosIDEpKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NhdGNoVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKHRoaXMuX2FuaW1hdGluZ1pvb20gJiYgZS5wcm9wZXJ0eU5hbWUuaW5kZXhPZigndHJhbnNmb3JtJykgPj0gMCkge1xyXG4gIFx0XHRcdHRoaXMuX29uWm9vbVRyYW5zaXRpb25FbmQoKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfbm90aGluZ1RvQW5pbWF0ZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gIXRoaXMuX2NvbnRhaW5lci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKS5sZW5ndGg7XHJcbiAgXHR9LFxyXG5cclxuICBcdF90cnlBbmltYXRlZFpvb206IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20sIG9wdGlvbnMpIHtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9hbmltYXRpbmdab29tKSB7IHJldHVybiB0cnVlOyB9XHJcblxyXG4gIFx0XHRvcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgaWYgZGlzYWJsZWQsIG5vdCBzdXBwb3J0ZWQgb3Igem9vbSBkaWZmZXJlbmNlIGlzIHRvbyBsYXJnZVxyXG4gIFx0XHRpZiAoIXRoaXMuX3pvb21BbmltYXRlZCB8fCBvcHRpb25zLmFuaW1hdGUgPT09IGZhbHNlIHx8IHRoaXMuX25vdGhpbmdUb0FuaW1hdGUoKSB8fFxyXG4gIFx0XHQgICAgICAgIE1hdGguYWJzKHpvb20gLSB0aGlzLl96b29tKSA+IHRoaXMub3B0aW9ucy56b29tQW5pbWF0aW9uVGhyZXNob2xkKSB7IHJldHVybiBmYWxzZTsgfVxyXG5cclxuICBcdFx0Ly8gb2Zmc2V0IGlzIHRoZSBwaXhlbCBjb29yZHMgb2YgdGhlIHpvb20gb3JpZ2luIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IGNlbnRlclxyXG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLmdldFpvb21TY2FsZSh6b29tKSxcclxuICBcdFx0ICAgIG9mZnNldCA9IHRoaXMuX2dldENlbnRlck9mZnNldChjZW50ZXIpLl9kaXZpZGVCeSgxIC0gMSAvIHNjYWxlKTtcclxuXHJcbiAgXHRcdC8vIGRvbid0IGFuaW1hdGUgaWYgdGhlIHpvb20gb3JpZ2luIGlzbid0IHdpdGhpbiBvbmUgc2NyZWVuIGZyb20gdGhlIGN1cnJlbnQgY2VudGVyLCB1bmxlc3MgZm9yY2VkXHJcbiAgXHRcdGlmIChvcHRpb25zLmFuaW1hdGUgIT09IHRydWUgJiYgIXRoaXMuZ2V0U2l6ZSgpLmNvbnRhaW5zKG9mZnNldCkpIHsgcmV0dXJuIGZhbHNlOyB9XHJcblxyXG4gIFx0XHRyZXF1ZXN0QW5pbUZyYW1lKGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHR0aGlzXHJcbiAgXHRcdFx0ICAgIC5fbW92ZVN0YXJ0KHRydWUsIGZhbHNlKVxyXG4gIFx0XHRcdCAgICAuX2FuaW1hdGVab29tKGNlbnRlciwgem9vbSwgdHJ1ZSk7XHJcbiAgXHRcdH0sIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRydWU7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGNlbnRlciwgem9vbSwgc3RhcnRBbmltLCBub1VwZGF0ZSkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcFBhbmUpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAoc3RhcnRBbmltKSB7XHJcbiAgXHRcdFx0dGhpcy5fYW5pbWF0aW5nWm9vbSA9IHRydWU7XHJcblxyXG4gIFx0XHRcdC8vIHJlbWVtYmVyIHdoYXQgY2VudGVyL3pvb20gdG8gc2V0IGFmdGVyIGFuaW1hdGlvblxyXG4gIFx0XHRcdHRoaXMuX2FuaW1hdGVUb0NlbnRlciA9IGNlbnRlcjtcclxuICBcdFx0XHR0aGlzLl9hbmltYXRlVG9ab29tID0gem9vbTtcclxuXHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fbWFwUGFuZSwgJ2xlYWZsZXQtem9vbS1hbmltJyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIEBzZWN0aW9uIE90aGVyIEV2ZW50c1xyXG4gIFx0XHQvLyBAZXZlbnQgem9vbWFuaW06IFpvb21BbmltRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgYXQgbGVhc3Qgb25jZSBwZXIgem9vbSBhbmltYXRpb24uIEZvciBjb250aW51b3VzIHpvb20sIGxpa2UgcGluY2ggem9vbWluZywgZmlyZWQgb25jZSBwZXIgZnJhbWUgZHVyaW5nIHpvb20uXHJcbiAgXHRcdHRoaXMuZmlyZSgnem9vbWFuaW0nLCB7XHJcbiAgXHRcdFx0Y2VudGVyOiBjZW50ZXIsXHJcbiAgXHRcdFx0em9vbTogem9vbSxcclxuICBcdFx0XHRub1VwZGF0ZTogbm9VcGRhdGVcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAoIXRoaXMuX3RlbXBGaXJlWm9vbUV2ZW50KSB7XHJcbiAgXHRcdFx0dGhpcy5fdGVtcEZpcmVab29tRXZlbnQgPSB0aGlzLl96b29tICE9PSB0aGlzLl9hbmltYXRlVG9ab29tO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlKHRoaXMuX2FuaW1hdGVUb0NlbnRlciwgdGhpcy5fYW5pbWF0ZVRvWm9vbSwgdW5kZWZpbmVkLCB0cnVlKTtcclxuXHJcbiAgXHRcdC8vIFdvcmsgYXJvdW5kIHdlYmtpdCBub3QgZmlyaW5nICd0cmFuc2l0aW9uZW5kJywgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvaXNzdWVzLzM2ODksIDI2OTNcclxuICBcdFx0c2V0VGltZW91dChiaW5kKHRoaXMuX29uWm9vbVRyYW5zaXRpb25FbmQsIHRoaXMpLCAyNTApO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25ab29tVHJhbnNpdGlvbkVuZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbWFwUGFuZSkge1xyXG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX21hcFBhbmUsICdsZWFmbGV0LXpvb20tYW5pbScpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9hbmltYXRpbmdab29tID0gZmFsc2U7XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlKHRoaXMuX2FuaW1hdGVUb0NlbnRlciwgdGhpcy5fYW5pbWF0ZVRvWm9vbSwgdW5kZWZpbmVkLCB0cnVlKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl90ZW1wRmlyZVpvb21FdmVudCkge1xyXG4gIFx0XHRcdHRoaXMuZmlyZSgnem9vbScpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl90ZW1wRmlyZVpvb21FdmVudDtcclxuXHJcbiAgXHRcdHRoaXMuZmlyZSgnbW92ZScpO1xyXG5cclxuICBcdFx0dGhpcy5fbW92ZUVuZCh0cnVlKTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQHNlY3Rpb25cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5tYXAoaWQ6IFN0cmluZywgb3B0aW9ucz86IE1hcCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIG1hcCBvYmplY3QgZ2l2ZW4gdGhlIERPTSBJRCBvZiBhIGA8ZGl2PmAgZWxlbWVudFxyXG4gIC8vIGFuZCBvcHRpb25hbGx5IGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYE1hcCBvcHRpb25zYC5cclxuICAvL1xyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwubWFwKGVsOiBIVE1MRWxlbWVudCwgb3B0aW9ucz86IE1hcCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIG1hcCBvYmplY3QgZ2l2ZW4gYW4gaW5zdGFuY2Ugb2YgYSBgPGRpdj5gIEhUTUwgZWxlbWVudFxyXG4gIC8vIGFuZCBvcHRpb25hbGx5IGFuIG9iamVjdCBsaXRlcmFsIHdpdGggYE1hcCBvcHRpb25zYC5cclxuICBmdW5jdGlvbiBjcmVhdGVNYXAoaWQsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgTWFwKGlkLCBvcHRpb25zKTtcclxuICB9XG5cbiAgLypcclxuICAgKiBAY2xhc3MgQ29udHJvbFxyXG4gICAqIEBha2EgTC5Db250cm9sXHJcbiAgICogQGluaGVyaXRzIENsYXNzXHJcbiAgICpcclxuICAgKiBMLkNvbnRyb2wgaXMgYSBiYXNlIGNsYXNzIGZvciBpbXBsZW1lbnRpbmcgbWFwIGNvbnRyb2xzLiBIYW5kbGVzIHBvc2l0aW9uaW5nLlxyXG4gICAqIEFsbCBvdGhlciBjb250cm9scyBleHRlbmQgZnJvbSB0aGlzIGNsYXNzLlxyXG4gICAqL1xyXG5cclxuICB2YXIgQ29udHJvbCA9IENsYXNzLmV4dGVuZCh7XHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBDb250cm9sIE9wdGlvbnNcclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBwb3NpdGlvbjogU3RyaW5nID0gJ3RvcHJpZ2h0J1xyXG4gIFx0XHQvLyBUaGUgcG9zaXRpb24gb2YgdGhlIGNvbnRyb2wgKG9uZSBvZiB0aGUgbWFwIGNvcm5lcnMpLiBQb3NzaWJsZSB2YWx1ZXMgYXJlIGAndG9wbGVmdCdgLFxyXG4gIFx0XHQvLyBgJ3RvcHJpZ2h0J2AsIGAnYm90dG9tbGVmdCdgIG9yIGAnYm90dG9tcmlnaHQnYFxyXG4gIFx0XHRwb3NpdGlvbjogJ3RvcHJpZ2h0J1xyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvKiBAc2VjdGlvblxyXG4gIFx0ICogQ2xhc3NlcyBleHRlbmRpbmcgTC5Db250cm9sIHdpbGwgaW5oZXJpdCB0aGUgZm9sbG93aW5nIG1ldGhvZHM6XHJcbiAgXHQgKlxyXG4gIFx0ICogQG1ldGhvZCBnZXRQb3NpdGlvbjogc3RyaW5nXHJcbiAgXHQgKiBSZXR1cm5zIHRoZSBwb3NpdGlvbiBvZiB0aGUgY29udHJvbC5cclxuICBcdCAqL1xyXG4gIFx0Z2V0UG9zaXRpb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5wb3NpdGlvbjtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQb3NpdGlvbihwb3NpdGlvbjogc3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgcG9zaXRpb24gb2YgdGhlIGNvbnRyb2wuXHJcbiAgXHRzZXRQb3NpdGlvbjogZnVuY3Rpb24gKHBvc2l0aW9uKSB7XHJcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XHJcblxyXG4gIFx0XHRpZiAobWFwKSB7XHJcbiAgXHRcdFx0bWFwLnJlbW92ZUNvbnRyb2wodGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMub3B0aW9ucy5wb3NpdGlvbiA9IHBvc2l0aW9uO1xyXG5cclxuICBcdFx0aWYgKG1hcCkge1xyXG4gIFx0XHRcdG1hcC5hZGRDb250cm9sKHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250YWluZXI6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBIVE1MRWxlbWVudCB0aGF0IGNvbnRhaW5zIHRoZSBjb250cm9sLlxyXG4gIFx0Z2V0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250YWluZXI7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkVG8obWFwOiBNYXApOiB0aGlzXHJcbiAgXHQvLyBBZGRzIHRoZSBjb250cm9sIHRvIHRoZSBnaXZlbiBtYXAuXHJcbiAgXHRhZGRUbzogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLnJlbW92ZSgpO1xyXG4gIFx0XHR0aGlzLl9tYXAgPSBtYXA7XHJcblxyXG4gIFx0XHR2YXIgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gdGhpcy5vbkFkZChtYXApLFxyXG4gIFx0XHQgICAgcG9zID0gdGhpcy5nZXRQb3NpdGlvbigpLFxyXG4gIFx0XHQgICAgY29ybmVyID0gbWFwLl9jb250cm9sQ29ybmVyc1twb3NdO1xyXG5cclxuICBcdFx0YWRkQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC1jb250cm9sJyk7XHJcblxyXG4gIFx0XHRpZiAocG9zLmluZGV4T2YoJ2JvdHRvbScpICE9PSAtMSkge1xyXG4gIFx0XHRcdGNvcm5lci5pbnNlcnRCZWZvcmUoY29udGFpbmVyLCBjb3JuZXIuZmlyc3RDaGlsZCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0Y29ybmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX21hcC5vbigndW5sb2FkJywgdGhpcy5yZW1vdmUsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIHRoZSBjb250cm9sIGZyb20gdGhlIG1hcCBpdCBpcyBjdXJyZW50bHkgYWN0aXZlIG9uLlxyXG4gIFx0cmVtb3ZlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJlbW92ZSh0aGlzLl9jb250YWluZXIpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub25SZW1vdmUpIHtcclxuICBcdFx0XHR0aGlzLm9uUmVtb3ZlKHRoaXMuX21hcCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX21hcC5vZmYoJ3VubG9hZCcsIHRoaXMucmVtb3ZlLCB0aGlzKTtcclxuICBcdFx0dGhpcy5fbWFwID0gbnVsbDtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfcmVmb2N1c09uTWFwOiBmdW5jdGlvbiAoZSkge1xyXG4gIFx0XHQvLyBpZiBtYXAgZXhpc3RzIGFuZCBldmVudCBpcyBub3QgYSBrZXlib2FyZCBldmVudFxyXG4gIFx0XHRpZiAodGhpcy5fbWFwICYmIGUgJiYgZS5zY3JlZW5YID4gMCAmJiBlLnNjcmVlblkgPiAwKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLmdldENvbnRhaW5lcigpLmZvY3VzKCk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgdmFyIGNvbnRyb2wgPSBmdW5jdGlvbiAob3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBDb250cm9sKG9wdGlvbnMpO1xyXG4gIH07XHJcblxyXG4gIC8qIEBzZWN0aW9uIEV4dGVuc2lvbiBtZXRob2RzXHJcbiAgICogQHVuaW5oZXJpdGFibGVcclxuICAgKlxyXG4gICAqIEV2ZXJ5IGNvbnRyb2wgc2hvdWxkIGV4dGVuZCBmcm9tIGBMLkNvbnRyb2xgIGFuZCAocmUtKWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZHMuXHJcbiAgICpcclxuICAgKiBAbWV0aG9kIG9uQWRkKG1hcDogTWFwKTogSFRNTEVsZW1lbnRcclxuICAgKiBTaG91bGQgcmV0dXJuIHRoZSBjb250YWluZXIgRE9NIGVsZW1lbnQgZm9yIHRoZSBjb250cm9sIGFuZCBhZGQgbGlzdGVuZXJzIG9uIHJlbGV2YW50IG1hcCBldmVudHMuIENhbGxlZCBvbiBbYGNvbnRyb2wuYWRkVG8obWFwKWBdKCNjb250cm9sLWFkZFRvKS5cclxuICAgKlxyXG4gICAqIEBtZXRob2Qgb25SZW1vdmUobWFwOiBNYXApXHJcbiAgICogT3B0aW9uYWwgbWV0aG9kLiBTaG91bGQgY29udGFpbiBhbGwgY2xlYW4gdXAgY29kZSB0aGF0IHJlbW92ZXMgdGhlIGxpc3RlbmVycyBwcmV2aW91c2x5IGFkZGVkIGluIFtgb25BZGRgXSgjY29udHJvbC1vbmFkZCkuIENhbGxlZCBvbiBbYGNvbnRyb2wucmVtb3ZlKClgXSgjY29udHJvbC1yZW1vdmUpLlxyXG4gICAqL1xyXG5cclxuICAvKiBAbmFtZXNwYWNlIE1hcFxyXG4gICAqIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcclxuICAgKi9cclxuICBNYXAuaW5jbHVkZSh7XHJcbiAgXHQvLyBAbWV0aG9kIGFkZENvbnRyb2woY29udHJvbDogQ29udHJvbCk6IHRoaXNcclxuICBcdC8vIEFkZHMgdGhlIGdpdmVuIGNvbnRyb2wgdG8gdGhlIG1hcFxyXG4gIFx0YWRkQ29udHJvbDogZnVuY3Rpb24gKGNvbnRyb2wpIHtcclxuICBcdFx0Y29udHJvbC5hZGRUbyh0aGlzKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlQ29udHJvbChjb250cm9sOiBDb250cm9sKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgZ2l2ZW4gY29udHJvbCBmcm9tIHRoZSBtYXBcclxuICBcdHJlbW92ZUNvbnRyb2w6IGZ1bmN0aW9uIChjb250cm9sKSB7XHJcbiAgXHRcdGNvbnRyb2wucmVtb3ZlKCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdENvbnRyb2xQb3M6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvcm5lcnMgPSB0aGlzLl9jb250cm9sQ29ybmVycyA9IHt9LFxyXG4gIFx0XHQgICAgbCA9ICdsZWFmbGV0LScsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250cm9sQ29udGFpbmVyID1cclxuICBcdFx0ICAgICAgICAgICAgY3JlYXRlJDEoJ2RpdicsIGwgKyAnY29udHJvbC1jb250YWluZXInLCB0aGlzLl9jb250YWluZXIpO1xyXG5cclxuICBcdFx0ZnVuY3Rpb24gY3JlYXRlQ29ybmVyKHZTaWRlLCBoU2lkZSkge1xyXG4gIFx0XHRcdHZhciBjbGFzc05hbWUgPSBsICsgdlNpZGUgKyAnICcgKyBsICsgaFNpZGU7XHJcblxyXG4gIFx0XHRcdGNvcm5lcnNbdlNpZGUgKyBoU2lkZV0gPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRjcmVhdGVDb3JuZXIoJ3RvcCcsICdsZWZ0Jyk7XHJcbiAgXHRcdGNyZWF0ZUNvcm5lcigndG9wJywgJ3JpZ2h0Jyk7XHJcbiAgXHRcdGNyZWF0ZUNvcm5lcignYm90dG9tJywgJ2xlZnQnKTtcclxuICBcdFx0Y3JlYXRlQ29ybmVyKCdib3R0b20nLCAncmlnaHQnKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NsZWFyQ29udHJvbFBvczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2NvbnRyb2xDb3JuZXJzKSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2NvbnRyb2xDb3JuZXJzW2ldKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZW1vdmUodGhpcy5fY29udHJvbENvbnRhaW5lcik7XHJcbiAgXHRcdGRlbGV0ZSB0aGlzLl9jb250cm9sQ29ybmVycztcclxuICBcdFx0ZGVsZXRlIHRoaXMuX2NvbnRyb2xDb250YWluZXI7XHJcbiAgXHR9XHJcbiAgfSk7XG5cbiAgLypcclxuICAgKiBAY2xhc3MgQ29udHJvbC5MYXllcnNcclxuICAgKiBAYWthIEwuQ29udHJvbC5MYXllcnNcclxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxyXG4gICAqXHJcbiAgICogVGhlIGxheWVycyBjb250cm9sIGdpdmVzIHVzZXJzIHRoZSBhYmlsaXR5IHRvIHN3aXRjaCBiZXR3ZWVuIGRpZmZlcmVudCBiYXNlIGxheWVycyBhbmQgc3dpdGNoIG92ZXJsYXlzIG9uL29mZiAoY2hlY2sgb3V0IHRoZSBbZGV0YWlsZWQgZXhhbXBsZV0oaHR0cHM6Ly9sZWFmbGV0anMuY29tL2V4YW1wbGVzL2xheWVycy1jb250cm9sLykpLiBFeHRlbmRzIGBDb250cm9sYC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBiYXNlTGF5ZXJzID0ge1xyXG4gICAqIFx0XCJNYXBib3hcIjogbWFwYm94LFxyXG4gICAqIFx0XCJPcGVuU3RyZWV0TWFwXCI6IG9zbVxyXG4gICAqIH07XHJcbiAgICpcclxuICAgKiB2YXIgb3ZlcmxheXMgPSB7XHJcbiAgICogXHRcIk1hcmtlclwiOiBtYXJrZXIsXHJcbiAgICogXHRcIlJvYWRzXCI6IHJvYWRzTGF5ZXJcclxuICAgKiB9O1xyXG4gICAqXHJcbiAgICogTC5jb250cm9sLmxheWVycyhiYXNlTGF5ZXJzLCBvdmVybGF5cykuYWRkVG8obWFwKTtcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIFRoZSBgYmFzZUxheWVyc2AgYW5kIGBvdmVybGF5c2AgcGFyYW1ldGVycyBhcmUgb2JqZWN0IGxpdGVyYWxzIHdpdGggbGF5ZXIgbmFtZXMgYXMga2V5cyBhbmQgYExheWVyYCBvYmplY3RzIGFzIHZhbHVlczpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICoge1xyXG4gICAqICAgICBcIjxzb21lTmFtZTE+XCI6IGxheWVyMSxcclxuICAgKiAgICAgXCI8c29tZU5hbWUyPlwiOiBsYXllcjJcclxuICAgKiB9XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBUaGUgbGF5ZXIgbmFtZXMgY2FuIGNvbnRhaW4gSFRNTCwgd2hpY2ggYWxsb3dzIHlvdSB0byBhZGQgYWRkaXRpb25hbCBzdHlsaW5nIHRvIHRoZSBpdGVtczpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICoge1wiPGltZyBzcmM9J215LWxheWVyLWljb24nIC8+IDxzcGFuIGNsYXNzPSdteS1sYXllci1pdGVtJz5NeSBMYXllcjwvc3Bhbj5cIjogbXlMYXllcn1cclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcbiAgdmFyIExheWVycyA9IENvbnRyb2wuZXh0ZW5kKHtcclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIENvbnRyb2wuTGF5ZXJzIG9wdGlvbnNcclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBjb2xsYXBzZWQ6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGNvbnRyb2wgd2lsbCBiZSBjb2xsYXBzZWQgaW50byBhbiBpY29uIGFuZCBleHBhbmRlZCBvbiBtb3VzZSBob3ZlciwgdG91Y2gsIG9yIGtleWJvYXJkIGFjdGl2YXRpb24uXHJcbiAgXHRcdGNvbGxhcHNlZDogdHJ1ZSxcclxuICBcdFx0cG9zaXRpb246ICd0b3ByaWdodCcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9aSW5kZXg6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGNvbnRyb2wgd2lsbCBhc3NpZ24gekluZGV4ZXMgaW4gaW5jcmVhc2luZyBvcmRlciB0byBhbGwgb2YgaXRzIGxheWVycyBzbyB0aGF0IHRoZSBvcmRlciBpcyBwcmVzZXJ2ZWQgd2hlbiBzd2l0Y2hpbmcgdGhlbSBvbi9vZmYuXHJcbiAgXHRcdGF1dG9aSW5kZXg6IHRydWUsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGhpZGVTaW5nbGVCYXNlOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgYmFzZSBsYXllcnMgaW4gdGhlIGNvbnRyb2wgd2lsbCBiZSBoaWRkZW4gd2hlbiB0aGVyZSBpcyBvbmx5IG9uZS5cclxuICBcdFx0aGlkZVNpbmdsZUJhc2U6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBzb3J0TGF5ZXJzOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0byBzb3J0IHRoZSBsYXllcnMuIFdoZW4gYGZhbHNlYCwgbGF5ZXJzIHdpbGwga2VlcCB0aGUgb3JkZXJcclxuICBcdFx0Ly8gaW4gd2hpY2ggdGhleSB3ZXJlIGFkZGVkIHRvIHRoZSBjb250cm9sLlxyXG4gIFx0XHRzb3J0TGF5ZXJzOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gc29ydEZ1bmN0aW9uOiBGdW5jdGlvbiA9ICpcclxuICBcdFx0Ly8gQSBbY29tcGFyZSBmdW5jdGlvbl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvQXJyYXkvc29ydClcclxuICBcdFx0Ly8gdGhhdCB3aWxsIGJlIHVzZWQgZm9yIHNvcnRpbmcgdGhlIGxheWVycywgd2hlbiBgc29ydExheWVyc2AgaXMgYHRydWVgLlxyXG4gIFx0XHQvLyBUaGUgZnVuY3Rpb24gcmVjZWl2ZXMgYm90aCB0aGUgYEwuTGF5ZXJgIGluc3RhbmNlcyBhbmQgdGhlaXIgbmFtZXMsIGFzIGluXHJcbiAgXHRcdC8vIGBzb3J0RnVuY3Rpb24obGF5ZXJBLCBsYXllckIsIG5hbWVBLCBuYW1lQilgLlxyXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBpdCBzb3J0cyBsYXllcnMgYWxwaGFiZXRpY2FsbHkgYnkgdGhlaXIgbmFtZS5cclxuICBcdFx0c29ydEZ1bmN0aW9uOiBmdW5jdGlvbiAobGF5ZXJBLCBsYXllckIsIG5hbWVBLCBuYW1lQikge1xyXG4gIFx0XHRcdHJldHVybiBuYW1lQSA8IG5hbWVCID8gLTEgOiAobmFtZUIgPCBuYW1lQSA/IDEgOiAwKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoYmFzZUxheWVycywgb3ZlcmxheXMsIG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHRoaXMuX2xheWVyQ29udHJvbElucHV0cyA9IFtdO1xyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSBbXTtcclxuICBcdFx0dGhpcy5fbGFzdFpJbmRleCA9IDA7XHJcbiAgXHRcdHRoaXMuX2hhbmRsaW5nQ2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgaW4gYmFzZUxheWVycykge1xyXG4gIFx0XHRcdHRoaXMuX2FkZExheWVyKGJhc2VMYXllcnNbaV0sIGkpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRmb3IgKGkgaW4gb3ZlcmxheXMpIHtcclxuICBcdFx0XHR0aGlzLl9hZGRMYXllcihvdmVybGF5c1tpXSwgaSwgdHJ1ZSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0dGhpcy5faW5pdExheW91dCgpO1xyXG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcclxuXHJcbiAgXHRcdHRoaXMuX21hcCA9IG1hcDtcclxuICBcdFx0bWFwLm9uKCd6b29tZW5kJywgdGhpcy5fY2hlY2tEaXNhYmxlZExheWVycywgdGhpcyk7XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX2xheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdHRoaXMuX2xheWVyc1tpXS5sYXllci5vbignYWRkIHJlbW92ZScsIHRoaXMuX29uTGF5ZXJDaGFuZ2UsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fY29udGFpbmVyO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRhZGRUbzogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRDb250cm9sLnByb3RvdHlwZS5hZGRUby5jYWxsKHRoaXMsIG1hcCk7XHJcbiAgXHRcdC8vIFRyaWdnZXIgZXhwYW5kIGFmdGVyIExheWVycyBDb250cm9sIGhhcyBiZWVuIGluc2VydGVkIGludG8gRE9NIHNvIHRoYXQgaXMgbm93IGhhcyBhbiBhY3R1YWwgaGVpZ2h0LlxyXG4gIFx0XHRyZXR1cm4gdGhpcy5fZXhwYW5kSWZOb3RDb2xsYXBzZWQoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dGhpcy5fbWFwLm9mZignem9vbWVuZCcsIHRoaXMuX2NoZWNrRGlzYWJsZWRMYXllcnMsIHRoaXMpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9sYXllcnMubGVuZ3RoOyBpKyspIHtcclxuICBcdFx0XHR0aGlzLl9sYXllcnNbaV0ubGF5ZXIub2ZmKCdhZGQgcmVtb3ZlJywgdGhpcy5fb25MYXllckNoYW5nZSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBhZGRCYXNlTGF5ZXIobGF5ZXI6IExheWVyLCBuYW1lOiBTdHJpbmcpOiB0aGlzXHJcbiAgXHQvLyBBZGRzIGEgYmFzZSBsYXllciAocmFkaW8gYnV0dG9uIGVudHJ5KSB3aXRoIHRoZSBnaXZlbiBuYW1lIHRvIHRoZSBjb250cm9sLlxyXG4gIFx0YWRkQmFzZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUpIHtcclxuICBcdFx0dGhpcy5fYWRkTGF5ZXIobGF5ZXIsIG5hbWUpO1xyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkT3ZlcmxheShsYXllcjogTGF5ZXIsIG5hbWU6IFN0cmluZyk6IHRoaXNcclxuICBcdC8vIEFkZHMgYW4gb3ZlcmxheSAoY2hlY2tib3ggZW50cnkpIHdpdGggdGhlIGdpdmVuIG5hbWUgdG8gdGhlIGNvbnRyb2wuXHJcbiAgXHRhZGRPdmVybGF5OiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUpIHtcclxuICBcdFx0dGhpcy5fYWRkTGF5ZXIobGF5ZXIsIG5hbWUsIHRydWUpO1xyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgcmVtb3ZlTGF5ZXIobGF5ZXI6IExheWVyKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlIHRoZSBnaXZlbiBsYXllciBmcm9tIHRoZSBjb250cm9sLlxyXG4gIFx0cmVtb3ZlTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRsYXllci5vZmYoJ2FkZCByZW1vdmUnLCB0aGlzLl9vbkxheWVyQ2hhbmdlLCB0aGlzKTtcclxuXHJcbiAgXHRcdHZhciBvYmogPSB0aGlzLl9nZXRMYXllcihzdGFtcChsYXllcikpO1xyXG4gIFx0XHRpZiAob2JqKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzLnNwbGljZSh0aGlzLl9sYXllcnMuaW5kZXhPZihvYmopLCAxKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gKHRoaXMuX21hcCkgPyB0aGlzLl91cGRhdGUoKSA6IHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZXhwYW5kKCk6IHRoaXNcclxuICBcdC8vIEV4cGFuZCB0aGUgY29udHJvbCBjb250YWluZXIgaWYgY29sbGFwc2VkLlxyXG4gIFx0ZXhwYW5kOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQnKTtcclxuICBcdFx0dGhpcy5fc2VjdGlvbi5zdHlsZS5oZWlnaHQgPSBudWxsO1xyXG4gIFx0XHR2YXIgYWNjZXB0YWJsZUhlaWdodCA9IHRoaXMuX21hcC5nZXRTaXplKCkueSAtICh0aGlzLl9jb250YWluZXIub2Zmc2V0VG9wICsgNTApO1xyXG4gIFx0XHRpZiAoYWNjZXB0YWJsZUhlaWdodCA8IHRoaXMuX3NlY3Rpb24uY2xpZW50SGVpZ2h0KSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fc2VjdGlvbiwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtc2Nyb2xsYmFyJyk7XHJcbiAgXHRcdFx0dGhpcy5fc2VjdGlvbi5zdHlsZS5oZWlnaHQgPSBhY2NlcHRhYmxlSGVpZ2h0ICsgJ3B4JztcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9zZWN0aW9uLCAnbGVhZmxldC1jb250cm9sLWxheWVycy1zY3JvbGxiYXInKTtcclxuICBcdFx0fVxyXG4gIFx0XHR0aGlzLl9jaGVja0Rpc2FibGVkTGF5ZXJzKCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNvbGxhcHNlKCk6IHRoaXNcclxuICBcdC8vIENvbGxhcHNlIHRoZSBjb250cm9sIGNvbnRhaW5lciBpZiBleHBhbmRlZC5cclxuICBcdGNvbGxhcHNlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtZXhwYW5kZWQnKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0TGF5b3V0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBjbGFzc05hbWUgPSAnbGVhZmxldC1jb250cm9sLWxheWVycycsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lKSxcclxuICBcdFx0ICAgIGNvbGxhcHNlZCA9IHRoaXMub3B0aW9ucy5jb2xsYXBzZWQ7XHJcblxyXG4gIFx0XHQvLyBtYWtlcyB0aGlzIHdvcmsgb24gSUUgdG91Y2ggZGV2aWNlcyBieSBzdG9wcGluZyBpdCBmcm9tIGZpcmluZyBhIG1vdXNlb3V0IGV2ZW50IHdoZW4gdGhlIHRvdWNoIGlzIHJlbGVhc2VkXHJcbiAgXHRcdGNvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGFzcG9wdXAnLCB0cnVlKTtcclxuXHJcbiAgXHRcdGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGNvbnRhaW5lcik7XHJcbiAgXHRcdGRpc2FibGVTY3JvbGxQcm9wYWdhdGlvbihjb250YWluZXIpO1xyXG5cclxuICBcdFx0dmFyIHNlY3Rpb24gPSB0aGlzLl9zZWN0aW9uID0gY3JlYXRlJDEoJ3NlY3Rpb24nLCBjbGFzc05hbWUgKyAnLWxpc3QnKTtcclxuXHJcbiAgXHRcdGlmIChjb2xsYXBzZWQpIHtcclxuICBcdFx0XHR0aGlzLl9tYXAub24oJ2NsaWNrJywgdGhpcy5jb2xsYXBzZSwgdGhpcyk7XHJcblxyXG4gIFx0XHRcdG9uKGNvbnRhaW5lciwge1xyXG4gIFx0XHRcdFx0bW91c2VlbnRlcjogdGhpcy5fZXhwYW5kU2FmZWx5LFxyXG4gIFx0XHRcdFx0bW91c2VsZWF2ZTogdGhpcy5jb2xsYXBzZVxyXG4gIFx0XHRcdH0sIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbGluayA9IHRoaXMuX2xheWVyc0xpbmsgPSBjcmVhdGUkMSgnYScsIGNsYXNzTmFtZSArICctdG9nZ2xlJywgY29udGFpbmVyKTtcclxuICBcdFx0bGluay5ocmVmID0gJyMnO1xyXG4gIFx0XHRsaW5rLnRpdGxlID0gJ0xheWVycyc7XHJcbiAgXHRcdGxpbmsuc2V0QXR0cmlidXRlKCdyb2xlJywgJ2J1dHRvbicpO1xyXG5cclxuICBcdFx0b24obGluaywge1xyXG4gIFx0XHRcdGtleWRvd246IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0XHRpZiAoZS5rZXlDb2RlID09PSAxMykge1xyXG4gIFx0XHRcdFx0XHR0aGlzLl9leHBhbmRTYWZlbHkoKTtcclxuICBcdFx0XHRcdH1cclxuICBcdFx0XHR9LFxyXG4gIFx0XHRcdC8vIENlcnRhaW4gc2NyZWVuIHJlYWRlcnMgaW50ZXJjZXB0IHRoZSBrZXkgZXZlbnQgYW5kIGluc3RlYWQgc2VuZCBhIGNsaWNrIGV2ZW50XHJcbiAgXHRcdFx0Y2xpY2s6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcclxuICBcdFx0XHRcdHRoaXMuX2V4cGFuZFNhZmVseSgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fSwgdGhpcyk7XHJcblxyXG4gIFx0XHRpZiAoIWNvbGxhcHNlZCkge1xyXG4gIFx0XHRcdHRoaXMuZXhwYW5kKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2Jhc2VMYXllcnNMaXN0ID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSArICctYmFzZScsIHNlY3Rpb24pO1xyXG4gIFx0XHR0aGlzLl9zZXBhcmF0b3IgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lICsgJy1zZXBhcmF0b3InLCBzZWN0aW9uKTtcclxuICBcdFx0dGhpcy5fb3ZlcmxheXNMaXN0ID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSArICctb3ZlcmxheXMnLCBzZWN0aW9uKTtcclxuXHJcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChzZWN0aW9uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldExheWVyOiBmdW5jdGlvbiAoaWQpIHtcclxuICBcdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLl9sYXllcnMubGVuZ3RoOyBpKyspIHtcclxuXHJcbiAgXHRcdFx0aWYgKHRoaXMuX2xheWVyc1tpXSAmJiBzdGFtcCh0aGlzLl9sYXllcnNbaV0ubGF5ZXIpID09PSBpZCkge1xyXG4gIFx0XHRcdFx0cmV0dXJuIHRoaXMuX2xheWVyc1tpXTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2FkZExheWVyOiBmdW5jdGlvbiAobGF5ZXIsIG5hbWUsIG92ZXJsYXkpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdGxheWVyLm9uKCdhZGQgcmVtb3ZlJywgdGhpcy5fb25MYXllckNoYW5nZSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2xheWVycy5wdXNoKHtcclxuICBcdFx0XHRsYXllcjogbGF5ZXIsXHJcbiAgXHRcdFx0bmFtZTogbmFtZSxcclxuICBcdFx0XHRvdmVybGF5OiBvdmVybGF5XHJcbiAgXHRcdH0pO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5zb3J0TGF5ZXJzKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzLnNvcnQoYmluZChmdW5jdGlvbiAoYSwgYikge1xyXG4gIFx0XHRcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5zb3J0RnVuY3Rpb24oYS5sYXllciwgYi5sYXllciwgYS5uYW1lLCBiLm5hbWUpO1xyXG4gIFx0XHRcdH0sIHRoaXMpKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5hdXRvWkluZGV4ICYmIGxheWVyLnNldFpJbmRleCkge1xyXG4gIFx0XHRcdHRoaXMuX2xhc3RaSW5kZXgrKztcclxuICBcdFx0XHRsYXllci5zZXRaSW5kZXgodGhpcy5fbGFzdFpJbmRleCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2V4cGFuZElmTm90Q29sbGFwc2VkKCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHsgcmV0dXJuIHRoaXM7IH1cclxuXHJcbiAgXHRcdGVtcHR5KHRoaXMuX2Jhc2VMYXllcnNMaXN0KTtcclxuICBcdFx0ZW1wdHkodGhpcy5fb3ZlcmxheXNMaXN0KTtcclxuXHJcbiAgXHRcdHRoaXMuX2xheWVyQ29udHJvbElucHV0cyA9IFtdO1xyXG4gIFx0XHR2YXIgYmFzZUxheWVyc1ByZXNlbnQsIG92ZXJsYXlzUHJlc2VudCwgaSwgb2JqLCBiYXNlTGF5ZXJzQ291bnQgPSAwO1xyXG5cclxuICBcdFx0Zm9yIChpID0gMDsgaSA8IHRoaXMuX2xheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdG9iaiA9IHRoaXMuX2xheWVyc1tpXTtcclxuICBcdFx0XHR0aGlzLl9hZGRJdGVtKG9iaik7XHJcbiAgXHRcdFx0b3ZlcmxheXNQcmVzZW50ID0gb3ZlcmxheXNQcmVzZW50IHx8IG9iai5vdmVybGF5O1xyXG4gIFx0XHRcdGJhc2VMYXllcnNQcmVzZW50ID0gYmFzZUxheWVyc1ByZXNlbnQgfHwgIW9iai5vdmVybGF5O1xyXG4gIFx0XHRcdGJhc2VMYXllcnNDb3VudCArPSAhb2JqLm92ZXJsYXkgPyAxIDogMDtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gSGlkZSBiYXNlIGxheWVycyBzZWN0aW9uIGlmIHRoZXJlJ3Mgb25seSBvbmUgbGF5ZXIuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaGlkZVNpbmdsZUJhc2UpIHtcclxuICBcdFx0XHRiYXNlTGF5ZXJzUHJlc2VudCA9IGJhc2VMYXllcnNQcmVzZW50ICYmIGJhc2VMYXllcnNDb3VudCA+IDE7XHJcbiAgXHRcdFx0dGhpcy5fYmFzZUxheWVyc0xpc3Quc3R5bGUuZGlzcGxheSA9IGJhc2VMYXllcnNQcmVzZW50ID8gJycgOiAnbm9uZSc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3NlcGFyYXRvci5zdHlsZS5kaXNwbGF5ID0gb3ZlcmxheXNQcmVzZW50ICYmIGJhc2VMYXllcnNQcmVzZW50ID8gJycgOiAnbm9uZSc7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X29uTGF5ZXJDaGFuZ2U6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmICghdGhpcy5faGFuZGxpbmdDbGljaykge1xyXG4gIFx0XHRcdHRoaXMuX3VwZGF0ZSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgb2JqID0gdGhpcy5fZ2V0TGF5ZXIoc3RhbXAoZS50YXJnZXQpKTtcclxuXHJcbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgXHRcdC8vIEBzZWN0aW9uIExheWVyIGV2ZW50c1xyXG4gIFx0XHQvLyBAZXZlbnQgYmFzZWxheWVyY2hhbmdlOiBMYXllcnNDb250cm9sRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgYmFzZSBsYXllciBpcyBjaGFuZ2VkIHRocm91Z2ggdGhlIFtsYXllcnMgY29udHJvbF0oI2NvbnRyb2wtbGF5ZXJzKS5cclxuICBcdFx0Ly8gQGV2ZW50IG92ZXJsYXlhZGQ6IExheWVyc0NvbnRyb2xFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIGFuIG92ZXJsYXkgaXMgc2VsZWN0ZWQgdGhyb3VnaCB0aGUgW2xheWVycyBjb250cm9sXSgjY29udHJvbC1sYXllcnMpLlxyXG4gIFx0XHQvLyBAZXZlbnQgb3ZlcmxheXJlbW92ZTogTGF5ZXJzQ29udHJvbEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gYW4gb3ZlcmxheSBpcyBkZXNlbGVjdGVkIHRocm91Z2ggdGhlIFtsYXllcnMgY29udHJvbF0oI2NvbnRyb2wtbGF5ZXJzKS5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBDb250cm9sLkxheWVyc1xyXG4gIFx0XHR2YXIgdHlwZSA9IG9iai5vdmVybGF5ID9cclxuICBcdFx0XHQoZS50eXBlID09PSAnYWRkJyA/ICdvdmVybGF5YWRkJyA6ICdvdmVybGF5cmVtb3ZlJykgOlxyXG4gIFx0XHRcdChlLnR5cGUgPT09ICdhZGQnID8gJ2Jhc2VsYXllcmNoYW5nZScgOiBudWxsKTtcclxuXHJcbiAgXHRcdGlmICh0eXBlKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLmZpcmUodHlwZSwgb2JqKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBJRTcgYnVncyBvdXQgaWYgeW91IGNyZWF0ZSBhIHJhZGlvIGR5bmFtaWNhbGx5LCBzbyB5b3UgaGF2ZSB0byBkbyBpdCB0aGlzIGhhY2t5IHdheSAoc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMTkwNzkpXHJcbiAgXHRfY3JlYXRlUmFkaW9FbGVtZW50OiBmdW5jdGlvbiAobmFtZSwgY2hlY2tlZCkge1xyXG5cclxuICBcdFx0dmFyIHJhZGlvSHRtbCA9ICc8aW5wdXQgdHlwZT1cInJhZGlvXCIgY2xhc3M9XCJsZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNlbGVjdG9yXCIgbmFtZT1cIicgK1xyXG4gIFx0XHRcdFx0bmFtZSArICdcIicgKyAoY2hlY2tlZCA/ICcgY2hlY2tlZD1cImNoZWNrZWRcIicgOiAnJykgKyAnLz4nO1xyXG5cclxuICBcdFx0dmFyIHJhZGlvRnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICBcdFx0cmFkaW9GcmFnbWVudC5pbm5lckhUTUwgPSByYWRpb0h0bWw7XHJcblxyXG4gIFx0XHRyZXR1cm4gcmFkaW9GcmFnbWVudC5maXJzdENoaWxkO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRkSXRlbTogZnVuY3Rpb24gKG9iaikge1xyXG4gIFx0XHR2YXIgbGFiZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsYWJlbCcpLFxyXG4gIFx0XHQgICAgY2hlY2tlZCA9IHRoaXMuX21hcC5oYXNMYXllcihvYmoubGF5ZXIpLFxyXG4gIFx0XHQgICAgaW5wdXQ7XHJcblxyXG4gIFx0XHRpZiAob2JqLm92ZXJsYXkpIHtcclxuICBcdFx0XHRpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XHJcbiAgXHRcdFx0aW5wdXQudHlwZSA9ICdjaGVja2JveCc7XHJcbiAgXHRcdFx0aW5wdXQuY2xhc3NOYW1lID0gJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtc2VsZWN0b3InO1xyXG4gIFx0XHRcdGlucHV0LmRlZmF1bHRDaGVja2VkID0gY2hlY2tlZDtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRpbnB1dCA9IHRoaXMuX2NyZWF0ZVJhZGlvRWxlbWVudCgnbGVhZmxldC1iYXNlLWxheWVyc18nICsgc3RhbXAodGhpcyksIGNoZWNrZWQpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllckNvbnRyb2xJbnB1dHMucHVzaChpbnB1dCk7XHJcbiAgXHRcdGlucHV0LmxheWVySWQgPSBzdGFtcChvYmoubGF5ZXIpO1xyXG5cclxuICBcdFx0b24oaW5wdXQsICdjbGljaycsIHRoaXMuX29uSW5wdXRDbGljaywgdGhpcyk7XHJcblxyXG4gIFx0XHR2YXIgbmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcclxuICBcdFx0bmFtZS5pbm5lckhUTUwgPSAnICcgKyBvYmoubmFtZTtcclxuXHJcbiAgXHRcdC8vIEhlbHBzIGZyb20gcHJldmVudGluZyBsYXllciBjb250cm9sIGZsaWNrZXIgd2hlbiBjaGVja2JveGVzIGFyZSBkaXNhYmxlZFxyXG4gIFx0XHQvLyBodHRwczovL2dpdGh1Yi5jb20vTGVhZmxldC9MZWFmbGV0L2lzc3Vlcy8yNzcxXHJcbiAgXHRcdHZhciBob2xkZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcblxyXG4gIFx0XHRsYWJlbC5hcHBlbmRDaGlsZChob2xkZXIpO1xyXG4gIFx0XHRob2xkZXIuYXBwZW5kQ2hpbGQoaW5wdXQpO1xyXG4gIFx0XHRob2xkZXIuYXBwZW5kQ2hpbGQobmFtZSk7XHJcblxyXG4gIFx0XHR2YXIgY29udGFpbmVyID0gb2JqLm92ZXJsYXkgPyB0aGlzLl9vdmVybGF5c0xpc3QgOiB0aGlzLl9iYXNlTGF5ZXJzTGlzdDtcclxuICBcdFx0Y29udGFpbmVyLmFwcGVuZENoaWxkKGxhYmVsKTtcclxuXHJcbiAgXHRcdHRoaXMuX2NoZWNrRGlzYWJsZWRMYXllcnMoKTtcclxuICBcdFx0cmV0dXJuIGxhYmVsO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfb25JbnB1dENsaWNrOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBpbnB1dHMgPSB0aGlzLl9sYXllckNvbnRyb2xJbnB1dHMsXHJcbiAgXHRcdCAgICBpbnB1dCwgbGF5ZXI7XHJcbiAgXHRcdHZhciBhZGRlZExheWVycyA9IFtdLFxyXG4gIFx0XHQgICAgcmVtb3ZlZExheWVycyA9IFtdO1xyXG5cclxuICBcdFx0dGhpcy5faGFuZGxpbmdDbGljayA9IHRydWU7XHJcblxyXG4gIFx0XHRmb3IgKHZhciBpID0gaW5wdXRzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgXHRcdFx0aW5wdXQgPSBpbnB1dHNbaV07XHJcbiAgXHRcdFx0bGF5ZXIgPSB0aGlzLl9nZXRMYXllcihpbnB1dC5sYXllcklkKS5sYXllcjtcclxuXHJcbiAgXHRcdFx0aWYgKGlucHV0LmNoZWNrZWQpIHtcclxuICBcdFx0XHRcdGFkZGVkTGF5ZXJzLnB1c2gobGF5ZXIpO1xyXG4gIFx0XHRcdH0gZWxzZSBpZiAoIWlucHV0LmNoZWNrZWQpIHtcclxuICBcdFx0XHRcdHJlbW92ZWRMYXllcnMucHVzaChsYXllcik7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBCdWdmaXggaXNzdWUgMjMxODogU2hvdWxkIHJlbW92ZSBhbGwgb2xkIGxheWVycyBiZWZvcmUgcmVhZGRpbmcgbmV3IG9uZXNcclxuICBcdFx0Zm9yIChpID0gMDsgaSA8IHJlbW92ZWRMYXllcnMubGVuZ3RoOyBpKyspIHtcclxuICBcdFx0XHRpZiAodGhpcy5fbWFwLmhhc0xheWVyKHJlbW92ZWRMYXllcnNbaV0pKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9tYXAucmVtb3ZlTGF5ZXIocmVtb3ZlZExheWVyc1tpXSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdGZvciAoaSA9IDA7IGkgPCBhZGRlZExheWVycy5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdGlmICghdGhpcy5fbWFwLmhhc0xheWVyKGFkZGVkTGF5ZXJzW2ldKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fbWFwLmFkZExheWVyKGFkZGVkTGF5ZXJzW2ldKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX2hhbmRsaW5nQ2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgXHRcdHRoaXMuX3JlZm9jdXNPbk1hcCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfY2hlY2tEaXNhYmxlZExheWVyczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgaW5wdXRzID0gdGhpcy5fbGF5ZXJDb250cm9sSW5wdXRzLFxyXG4gIFx0XHQgICAgaW5wdXQsXHJcbiAgXHRcdCAgICBsYXllcixcclxuICBcdFx0ICAgIHpvb20gPSB0aGlzLl9tYXAuZ2V0Wm9vbSgpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IGlucHV0cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gIFx0XHRcdGlucHV0ID0gaW5wdXRzW2ldO1xyXG4gIFx0XHRcdGxheWVyID0gdGhpcy5fZ2V0TGF5ZXIoaW5wdXQubGF5ZXJJZCkubGF5ZXI7XHJcbiAgXHRcdFx0aW5wdXQuZGlzYWJsZWQgPSAobGF5ZXIub3B0aW9ucy5taW5ab29tICE9PSB1bmRlZmluZWQgJiYgem9vbSA8IGxheWVyLm9wdGlvbnMubWluWm9vbSkgfHxcclxuICBcdFx0XHQgICAgICAgICAgICAgICAgIChsYXllci5vcHRpb25zLm1heFpvb20gIT09IHVuZGVmaW5lZCAmJiB6b29tID4gbGF5ZXIub3B0aW9ucy5tYXhab29tKTtcclxuXHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2V4cGFuZElmTm90Q29sbGFwc2VkOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXAgJiYgIXRoaXMub3B0aW9ucy5jb2xsYXBzZWQpIHtcclxuICBcdFx0XHR0aGlzLmV4cGFuZCgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZXhwYW5kU2FmZWx5OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBzZWN0aW9uID0gdGhpcy5fc2VjdGlvbjtcclxuICBcdFx0b24oc2VjdGlvbiwgJ2NsaWNrJywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0XHR0aGlzLmV4cGFuZCgpO1xyXG4gIFx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHRvZmYoc2VjdGlvbiwgJ2NsaWNrJywgcHJldmVudERlZmF1bHQpO1xyXG4gIFx0XHR9KTtcclxuICBcdH1cclxuXHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLmNvbnRyb2wubGF5ZXJzKGJhc2VsYXllcnM/OiBPYmplY3QsIG92ZXJsYXlzPzogT2JqZWN0LCBvcHRpb25zPzogQ29udHJvbC5MYXllcnMgb3B0aW9ucylcclxuICAvLyBDcmVhdGVzIGEgbGF5ZXJzIGNvbnRyb2wgd2l0aCB0aGUgZ2l2ZW4gbGF5ZXJzLiBCYXNlIGxheWVycyB3aWxsIGJlIHN3aXRjaGVkIHdpdGggcmFkaW8gYnV0dG9ucywgd2hpbGUgb3ZlcmxheXMgd2lsbCBiZSBzd2l0Y2hlZCB3aXRoIGNoZWNrYm94ZXMuIE5vdGUgdGhhdCBhbGwgYmFzZSBsYXllcnMgc2hvdWxkIGJlIHBhc3NlZCBpbiB0aGUgYmFzZSBsYXllcnMgb2JqZWN0LCBidXQgb25seSBvbmUgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBtYXAgZHVyaW5nIG1hcCBpbnN0YW50aWF0aW9uLlxyXG4gIHZhciBsYXllcnMgPSBmdW5jdGlvbiAoYmFzZUxheWVycywgb3ZlcmxheXMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgTGF5ZXJzKGJhc2VMYXllcnMsIG92ZXJsYXlzLCBvcHRpb25zKTtcclxuICB9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIENvbnRyb2wuWm9vbVxyXG4gICAqIEBha2EgTC5Db250cm9sLlpvb21cclxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxyXG4gICAqXHJcbiAgICogQSBiYXNpYyB6b29tIGNvbnRyb2wgd2l0aCB0d28gYnV0dG9ucyAoem9vbSBpbiBhbmQgem9vbSBvdXQpLiBJdCBpcyBwdXQgb24gdGhlIG1hcCBieSBkZWZhdWx0IHVubGVzcyB5b3Ugc2V0IGl0cyBbYHpvb21Db250cm9sYCBvcHRpb25dKCNtYXAtem9vbWNvbnRyb2wpIHRvIGBmYWxzZWAuIEV4dGVuZHMgYENvbnRyb2xgLlxyXG4gICAqL1xyXG5cclxuICB2YXIgWm9vbSA9IENvbnRyb2wuZXh0ZW5kKHtcclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIENvbnRyb2wuWm9vbSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdHBvc2l0aW9uOiAndG9wbGVmdCcsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21JblRleHQ6IFN0cmluZyA9ICc8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4rPC9zcGFuPidcclxuICBcdFx0Ly8gVGhlIHRleHQgc2V0IG9uIHRoZSAnem9vbSBpbicgYnV0dG9uLlxyXG4gIFx0XHR6b29tSW5UZXh0OiAnPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+Kzwvc3Bhbj4nLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tSW5UaXRsZTogU3RyaW5nID0gJ1pvb20gaW4nXHJcbiAgXHRcdC8vIFRoZSB0aXRsZSBzZXQgb24gdGhlICd6b29tIGluJyBidXR0b24uXHJcbiAgXHRcdHpvb21JblRpdGxlOiAnWm9vbSBpbicsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21PdXRUZXh0OiBTdHJpbmcgPSAnPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JiN4MjIxMjs8L3NwYW4+J1xyXG4gIFx0XHQvLyBUaGUgdGV4dCBzZXQgb24gdGhlICd6b29tIG91dCcgYnV0dG9uLlxyXG4gIFx0XHR6b29tT3V0VGV4dDogJzxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPiYjeDIyMTI7PC9zcGFuPicsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpvb21PdXRUaXRsZTogU3RyaW5nID0gJ1pvb20gb3V0J1xyXG4gIFx0XHQvLyBUaGUgdGl0bGUgc2V0IG9uIHRoZSAnem9vbSBvdXQnIGJ1dHRvbi5cclxuICBcdFx0em9vbU91dFRpdGxlOiAnWm9vbSBvdXQnXHJcbiAgXHR9LFxyXG5cclxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdHZhciB6b29tTmFtZSA9ICdsZWFmbGV0LWNvbnRyb2wtem9vbScsXHJcbiAgXHRcdCAgICBjb250YWluZXIgPSBjcmVhdGUkMSgnZGl2Jywgem9vbU5hbWUgKyAnIGxlYWZsZXQtYmFyJyksXHJcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xyXG5cclxuICBcdFx0dGhpcy5fem9vbUluQnV0dG9uICA9IHRoaXMuX2NyZWF0ZUJ1dHRvbihvcHRpb25zLnpvb21JblRleHQsIG9wdGlvbnMuem9vbUluVGl0bGUsXHJcbiAgXHRcdCAgICAgICAgem9vbU5hbWUgKyAnLWluJywgIGNvbnRhaW5lciwgdGhpcy5fem9vbUluKTtcclxuICBcdFx0dGhpcy5fem9vbU91dEJ1dHRvbiA9IHRoaXMuX2NyZWF0ZUJ1dHRvbihvcHRpb25zLnpvb21PdXRUZXh0LCBvcHRpb25zLnpvb21PdXRUaXRsZSxcclxuICBcdFx0ICAgICAgICB6b29tTmFtZSArICctb3V0JywgY29udGFpbmVyLCB0aGlzLl96b29tT3V0KTtcclxuXHJcbiAgXHRcdHRoaXMuX3VwZGF0ZURpc2FibGVkKCk7XHJcbiAgXHRcdG1hcC5vbignem9vbWVuZCB6b29tbGV2ZWxzY2hhbmdlJywgdGhpcy5fdXBkYXRlRGlzYWJsZWQsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIGNvbnRhaW5lcjtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwLm9mZignem9vbWVuZCB6b29tbGV2ZWxzY2hhbmdlJywgdGhpcy5fdXBkYXRlRGlzYWJsZWQsIHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRkaXNhYmxlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX2Rpc2FibGVkID0gdHJ1ZTtcclxuICBcdFx0dGhpcy5fdXBkYXRlRGlzYWJsZWQoKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGVuYWJsZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl9kaXNhYmxlZCA9IGZhbHNlO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVEaXNhYmxlZCgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X3pvb21JbjogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9kaXNhYmxlZCAmJiB0aGlzLl9tYXAuX3pvb20gPCB0aGlzLl9tYXAuZ2V0TWF4Wm9vbSgpKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLnpvb21Jbih0aGlzLl9tYXAub3B0aW9ucy56b29tRGVsdGEgKiAoZS5zaGlmdEtleSA/IDMgOiAxKSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X3pvb21PdXQ6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fZGlzYWJsZWQgJiYgdGhpcy5fbWFwLl96b29tID4gdGhpcy5fbWFwLmdldE1pblpvb20oKSkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC56b29tT3V0KHRoaXMuX21hcC5vcHRpb25zLnpvb21EZWx0YSAqIChlLnNoaWZ0S2V5ID8gMyA6IDEpKTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfY3JlYXRlQnV0dG9uOiBmdW5jdGlvbiAoaHRtbCwgdGl0bGUsIGNsYXNzTmFtZSwgY29udGFpbmVyLCBmbikge1xyXG4gIFx0XHR2YXIgbGluayA9IGNyZWF0ZSQxKCdhJywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xyXG4gIFx0XHRsaW5rLmlubmVySFRNTCA9IGh0bWw7XHJcbiAgXHRcdGxpbmsuaHJlZiA9ICcjJztcclxuICBcdFx0bGluay50aXRsZSA9IHRpdGxlO1xyXG5cclxuICBcdFx0LypcclxuICBcdFx0ICogV2lsbCBmb3JjZSBzY3JlZW4gcmVhZGVycyBsaWtlIFZvaWNlT3ZlciB0byByZWFkIHRoaXMgYXMgXCJab29tIGluIC0gYnV0dG9uXCJcclxuICBcdFx0ICovXHJcbiAgXHRcdGxpbmsuc2V0QXR0cmlidXRlKCdyb2xlJywgJ2J1dHRvbicpO1xyXG4gIFx0XHRsaW5rLnNldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcsIHRpdGxlKTtcclxuXHJcbiAgXHRcdGRpc2FibGVDbGlja1Byb3BhZ2F0aW9uKGxpbmspO1xyXG4gIFx0XHRvbihsaW5rLCAnY2xpY2snLCBzdG9wKTtcclxuICBcdFx0b24obGluaywgJ2NsaWNrJywgZm4sIHRoaXMpO1xyXG4gIFx0XHRvbihsaW5rLCAnY2xpY2snLCB0aGlzLl9yZWZvY3VzT25NYXAsIHRoaXMpO1xyXG5cclxuICBcdFx0cmV0dXJuIGxpbms7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVEaXNhYmxlZDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxyXG4gIFx0XHQgICAgY2xhc3NOYW1lID0gJ2xlYWZsZXQtZGlzYWJsZWQnO1xyXG5cclxuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fem9vbUluQnV0dG9uLCBjbGFzc05hbWUpO1xyXG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl96b29tT3V0QnV0dG9uLCBjbGFzc05hbWUpO1xyXG4gIFx0XHR0aGlzLl96b29tSW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ2ZhbHNlJyk7XHJcbiAgXHRcdHRoaXMuX3pvb21PdXRCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ2ZhbHNlJyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fZGlzYWJsZWQgfHwgbWFwLl96b29tID09PSBtYXAuZ2V0TWluWm9vbSgpKSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fem9vbU91dEJ1dHRvbiwgY2xhc3NOYW1lKTtcclxuICBcdFx0XHR0aGlzLl96b29tT3V0QnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsICd0cnVlJyk7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKHRoaXMuX2Rpc2FibGVkIHx8IG1hcC5fem9vbSA9PT0gbWFwLmdldE1heFpvb20oKSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX3pvb21JbkJ1dHRvbiwgY2xhc3NOYW1lKTtcclxuICBcdFx0XHR0aGlzLl96b29tSW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIE1hcFxyXG4gIC8vIEBzZWN0aW9uIENvbnRyb2wgb3B0aW9uc1xyXG4gIC8vIEBvcHRpb24gem9vbUNvbnRyb2w6IEJvb2xlYW4gPSB0cnVlXHJcbiAgLy8gV2hldGhlciBhIFt6b29tIGNvbnRyb2xdKCNjb250cm9sLXpvb20pIGlzIGFkZGVkIHRvIHRoZSBtYXAgYnkgZGVmYXVsdC5cclxuICBNYXAubWVyZ2VPcHRpb25zKHtcclxuICBcdHpvb21Db250cm9sOiB0cnVlXHJcbiAgfSk7XHJcblxyXG4gIE1hcC5hZGRJbml0SG9vayhmdW5jdGlvbiAoKSB7XHJcbiAgXHRpZiAodGhpcy5vcHRpb25zLnpvb21Db250cm9sKSB7XHJcbiAgXHRcdC8vIEBzZWN0aW9uIENvbnRyb2xzXHJcbiAgXHRcdC8vIEBwcm9wZXJ0eSB6b29tQ29udHJvbDogQ29udHJvbC5ab29tXHJcbiAgXHRcdC8vIFRoZSBkZWZhdWx0IHpvb20gY29udHJvbCAob25seSBhdmFpbGFibGUgaWYgdGhlXHJcbiAgXHRcdC8vIFtgem9vbUNvbnRyb2xgIG9wdGlvbl0oI21hcC16b29tY29udHJvbCkgd2FzIGB0cnVlYCB3aGVuIGNyZWF0aW5nIHRoZSBtYXApLlxyXG4gIFx0XHR0aGlzLnpvb21Db250cm9sID0gbmV3IFpvb20oKTtcclxuICBcdFx0dGhpcy5hZGRDb250cm9sKHRoaXMuem9vbUNvbnRyb2wpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIENvbnRyb2wuWm9vbVxyXG4gIC8vIEBmYWN0b3J5IEwuY29udHJvbC56b29tKG9wdGlvbnM6IENvbnRyb2wuWm9vbSBvcHRpb25zKVxyXG4gIC8vIENyZWF0ZXMgYSB6b29tIGNvbnRyb2xcclxuICB2YXIgem9vbSA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IFpvb20ob3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgQ29udHJvbC5TY2FsZVxuICAgKiBAYWthIEwuQ29udHJvbC5TY2FsZVxuICAgKiBAaW5oZXJpdHMgQ29udHJvbFxuICAgKlxuICAgKiBBIHNpbXBsZSBzY2FsZSBjb250cm9sIHRoYXQgc2hvd3MgdGhlIHNjYWxlIG9mIHRoZSBjdXJyZW50IGNlbnRlciBvZiBzY3JlZW4gaW4gbWV0cmljIChtL2ttKSBhbmQgaW1wZXJpYWwgKG1pL2Z0KSBzeXN0ZW1zLiBFeHRlbmRzIGBDb250cm9sYC5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogYGBganNcbiAgICogTC5jb250cm9sLnNjYWxlKCkuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBTY2FsZSA9IENvbnRyb2wuZXh0ZW5kKHtcbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgQ29udHJvbC5TY2FsZSBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0cG9zaXRpb246ICdib3R0b21sZWZ0JyxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhXaWR0aDogTnVtYmVyID0gMTAwXG4gIFx0XHQvLyBNYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250cm9sIGluIHBpeGVscy4gVGhlIHdpZHRoIGlzIHNldCBkeW5hbWljYWxseSB0byBzaG93IHJvdW5kIHZhbHVlcyAoZS5nLiAxMDAsIDIwMCwgNTAwKS5cbiAgXHRcdG1heFdpZHRoOiAxMDAsXG5cbiAgXHRcdC8vIEBvcHRpb24gbWV0cmljOiBCb29sZWFuID0gVHJ1ZVxuICBcdFx0Ly8gV2hldGhlciB0byBzaG93IHRoZSBtZXRyaWMgc2NhbGUgbGluZSAobS9rbSkuXG4gIFx0XHRtZXRyaWM6IHRydWUsXG5cbiAgXHRcdC8vIEBvcHRpb24gaW1wZXJpYWw6IEJvb2xlYW4gPSBUcnVlXG4gIFx0XHQvLyBXaGV0aGVyIHRvIHNob3cgdGhlIGltcGVyaWFsIHNjYWxlIGxpbmUgKG1pL2Z0KS5cbiAgXHRcdGltcGVyaWFsOiB0cnVlXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlbklkbGU6IEJvb2xlYW4gPSBmYWxzZVxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgY29udHJvbCBpcyB1cGRhdGVkIG9uIFtgbW92ZWVuZGBdKCNtYXAtbW92ZWVuZCksIG90aGVyd2lzZSBpdCdzIGFsd2F5cyB1cC10by1kYXRlICh1cGRhdGVkIG9uIFtgbW92ZWBdKCNtYXAtbW92ZSkpLlxuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dmFyIGNsYXNzTmFtZSA9ICdsZWFmbGV0LWNvbnRyb2wtc2NhbGUnLFxuICBcdFx0ICAgIGNvbnRhaW5lciA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUpLFxuICBcdFx0ICAgIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XG5cbiAgXHRcdHRoaXMuX2FkZFNjYWxlcyhvcHRpb25zLCBjbGFzc05hbWUgKyAnLWxpbmUnLCBjb250YWluZXIpO1xuXG4gIFx0XHRtYXAub24ob3B0aW9ucy51cGRhdGVXaGVuSWRsZSA/ICdtb3ZlZW5kJyA6ICdtb3ZlJywgdGhpcy5fdXBkYXRlLCB0aGlzKTtcbiAgXHRcdG1hcC53aGVuUmVhZHkodGhpcy5fdXBkYXRlLCB0aGlzKTtcblxuICBcdFx0cmV0dXJuIGNvbnRhaW5lcjtcbiAgXHR9LFxuXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdG1hcC5vZmYodGhpcy5vcHRpb25zLnVwZGF0ZVdoZW5JZGxlID8gJ21vdmVlbmQnIDogJ21vdmUnLCB0aGlzLl91cGRhdGUsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfYWRkU2NhbGVzOiBmdW5jdGlvbiAob3B0aW9ucywgY2xhc3NOYW1lLCBjb250YWluZXIpIHtcbiAgXHRcdGlmIChvcHRpb25zLm1ldHJpYykge1xuICBcdFx0XHR0aGlzLl9tU2NhbGUgPSBjcmVhdGUkMSgnZGl2JywgY2xhc3NOYW1lLCBjb250YWluZXIpO1xuICBcdFx0fVxuICBcdFx0aWYgKG9wdGlvbnMuaW1wZXJpYWwpIHtcbiAgXHRcdFx0dGhpcy5faVNjYWxlID0gY3JlYXRlJDEoJ2RpdicsIGNsYXNzTmFtZSwgY29udGFpbmVyKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICB5ID0gbWFwLmdldFNpemUoKS55IC8gMjtcblxuICBcdFx0dmFyIG1heE1ldGVycyA9IG1hcC5kaXN0YW5jZShcbiAgXHRcdFx0bWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcoWzAsIHldKSxcbiAgXHRcdFx0bWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcoW3RoaXMub3B0aW9ucy5tYXhXaWR0aCwgeV0pKTtcblxuICBcdFx0dGhpcy5fdXBkYXRlU2NhbGVzKG1heE1ldGVycyk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVTY2FsZXM6IGZ1bmN0aW9uIChtYXhNZXRlcnMpIHtcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubWV0cmljICYmIG1heE1ldGVycykge1xuICBcdFx0XHR0aGlzLl91cGRhdGVNZXRyaWMobWF4TWV0ZXJzKTtcbiAgXHRcdH1cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaW1wZXJpYWwgJiYgbWF4TWV0ZXJzKSB7XG4gIFx0XHRcdHRoaXMuX3VwZGF0ZUltcGVyaWFsKG1heE1ldGVycyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVNZXRyaWM6IGZ1bmN0aW9uIChtYXhNZXRlcnMpIHtcbiAgXHRcdHZhciBtZXRlcnMgPSB0aGlzLl9nZXRSb3VuZE51bShtYXhNZXRlcnMpLFxuICBcdFx0ICAgIGxhYmVsID0gbWV0ZXJzIDwgMTAwMCA/IG1ldGVycyArICcgbScgOiAobWV0ZXJzIC8gMTAwMCkgKyAnIGttJztcblxuICBcdFx0dGhpcy5fdXBkYXRlU2NhbGUodGhpcy5fbVNjYWxlLCBsYWJlbCwgbWV0ZXJzIC8gbWF4TWV0ZXJzKTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZUltcGVyaWFsOiBmdW5jdGlvbiAobWF4TWV0ZXJzKSB7XG4gIFx0XHR2YXIgbWF4RmVldCA9IG1heE1ldGVycyAqIDMuMjgwODM5OSxcbiAgXHRcdCAgICBtYXhNaWxlcywgbWlsZXMsIGZlZXQ7XG5cbiAgXHRcdGlmIChtYXhGZWV0ID4gNTI4MCkge1xuICBcdFx0XHRtYXhNaWxlcyA9IG1heEZlZXQgLyA1MjgwO1xuICBcdFx0XHRtaWxlcyA9IHRoaXMuX2dldFJvdW5kTnVtKG1heE1pbGVzKTtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlU2NhbGUodGhpcy5faVNjYWxlLCBtaWxlcyArICcgbWknLCBtaWxlcyAvIG1heE1pbGVzKTtcblxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0ZmVldCA9IHRoaXMuX2dldFJvdW5kTnVtKG1heEZlZXQpO1xuICBcdFx0XHR0aGlzLl91cGRhdGVTY2FsZSh0aGlzLl9pU2NhbGUsIGZlZXQgKyAnIGZ0JywgZmVldCAvIG1heEZlZXQpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlU2NhbGU6IGZ1bmN0aW9uIChzY2FsZSwgdGV4dCwgcmF0aW8pIHtcbiAgXHRcdHNjYWxlLnN0eWxlLndpZHRoID0gTWF0aC5yb3VuZCh0aGlzLm9wdGlvbnMubWF4V2lkdGggKiByYXRpbykgKyAncHgnO1xuICBcdFx0c2NhbGUuaW5uZXJIVE1MID0gdGV4dDtcbiAgXHR9LFxuXG4gIFx0X2dldFJvdW5kTnVtOiBmdW5jdGlvbiAobnVtKSB7XG4gIFx0XHR2YXIgcG93MTAgPSBNYXRoLnBvdygxMCwgKE1hdGguZmxvb3IobnVtKSArICcnKS5sZW5ndGggLSAxKSxcbiAgXHRcdCAgICBkID0gbnVtIC8gcG93MTA7XG5cbiAgXHRcdGQgPSBkID49IDEwID8gMTAgOlxuICBcdFx0ICAgIGQgPj0gNSA/IDUgOlxuICBcdFx0ICAgIGQgPj0gMyA/IDMgOlxuICBcdFx0ICAgIGQgPj0gMiA/IDIgOiAxO1xuXG4gIFx0XHRyZXR1cm4gcG93MTAgKiBkO1xuICBcdH1cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLmNvbnRyb2wuc2NhbGUob3B0aW9ucz86IENvbnRyb2wuU2NhbGUgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhbiBzY2FsZSBjb250cm9sIHdpdGggdGhlIGdpdmVuIG9wdGlvbnMuXG4gIHZhciBzY2FsZSA9IGZ1bmN0aW9uIChvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBTY2FsZShvcHRpb25zKTtcbiAgfTtcblxuICB2YXIgdWtyYWluaWFuRmxhZyA9ICc8c3ZnIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiOFwiIHZpZXdCb3g9XCIwIDAgMTIgOFwiIGNsYXNzPVwibGVhZmxldC1hdHRyaWJ1dGlvbi1mbGFnXCI+PHBhdGggZmlsbD1cIiM0QzdCRTFcIiBkPVwiTTAgMGgxMnY0SDB6XCIvPjxwYXRoIGZpbGw9XCIjRkZENTAwXCIgZD1cIk0wIDRoMTJ2M0gwelwiLz48cGF0aCBmaWxsPVwiI0UwQkMwMFwiIGQ9XCJNMCA3aDEydjFIMHpcIi8+PC9zdmc+JztcclxuXHJcblxyXG4gIC8qXHJcbiAgICogQGNsYXNzIENvbnRyb2wuQXR0cmlidXRpb25cclxuICAgKiBAYWthIEwuQ29udHJvbC5BdHRyaWJ1dGlvblxyXG4gICAqIEBpbmhlcml0cyBDb250cm9sXHJcbiAgICpcclxuICAgKiBUaGUgYXR0cmlidXRpb24gY29udHJvbCBhbGxvd3MgeW91IHRvIGRpc3BsYXkgYXR0cmlidXRpb24gZGF0YSBpbiBhIHNtYWxsIHRleHQgYm94IG9uIGEgbWFwLiBJdCBpcyBwdXQgb24gdGhlIG1hcCBieSBkZWZhdWx0IHVubGVzcyB5b3Ugc2V0IGl0cyBbYGF0dHJpYnV0aW9uQ29udHJvbGAgb3B0aW9uXSgjbWFwLWF0dHJpYnV0aW9uY29udHJvbCkgdG8gYGZhbHNlYCwgYW5kIGl0IGZldGNoZXMgYXR0cmlidXRpb24gdGV4dHMgZnJvbSBsYXllcnMgd2l0aCB0aGUgW2BnZXRBdHRyaWJ1dGlvbmAgbWV0aG9kXSgjbGF5ZXItZ2V0YXR0cmlidXRpb24pIGF1dG9tYXRpY2FsbHkuIEV4dGVuZHMgQ29udHJvbC5cclxuICAgKi9cclxuXHJcbiAgdmFyIEF0dHJpYnV0aW9uID0gQ29udHJvbC5leHRlbmQoe1xyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgQ29udHJvbC5BdHRyaWJ1dGlvbiBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdHBvc2l0aW9uOiAnYm90dG9tcmlnaHQnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBwcmVmaXg6IFN0cmluZ3xmYWxzZSA9ICdMZWFmbGV0J1xyXG4gIFx0XHQvLyBUaGUgSFRNTCB0ZXh0IHNob3duIGJlZm9yZSB0aGUgYXR0cmlidXRpb25zLiBQYXNzIGBmYWxzZWAgdG8gZGlzYWJsZS5cclxuICBcdFx0cHJlZml4OiAnPGEgaHJlZj1cImh0dHBzOi8vbGVhZmxldGpzLmNvbVwiIHRpdGxlPVwiQSBKYXZhU2NyaXB0IGxpYnJhcnkgZm9yIGludGVyYWN0aXZlIG1hcHNcIj4nICsgKEJyb3dzZXIuaW5saW5lU3ZnID8gdWtyYWluaWFuRmxhZyArICcgJyA6ICcnKSArICdMZWFmbGV0PC9hPidcclxuICBcdH0sXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdHRoaXMuX2F0dHJpYnV0aW9ucyA9IHt9O1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRtYXAuYXR0cmlidXRpb25Db250cm9sID0gdGhpcztcclxuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsICdsZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24nKTtcclxuICBcdFx0ZGlzYWJsZUNsaWNrUHJvcGFnYXRpb24odGhpcy5fY29udGFpbmVyKTtcclxuXHJcbiAgXHRcdC8vIFRPRE8gdWdseSwgcmVmYWN0b3JcclxuICBcdFx0Zm9yICh2YXIgaSBpbiBtYXAuX2xheWVycykge1xyXG4gIFx0XHRcdGlmIChtYXAuX2xheWVyc1tpXS5nZXRBdHRyaWJ1dGlvbikge1xyXG4gIFx0XHRcdFx0dGhpcy5hZGRBdHRyaWJ1dGlvbihtYXAuX2xheWVyc1tpXS5nZXRBdHRyaWJ1dGlvbigpKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xyXG5cclxuICBcdFx0bWFwLm9uKCdsYXllcmFkZCcsIHRoaXMuX2FkZEF0dHJpYnV0aW9uLCB0aGlzKTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250YWluZXI7XHJcbiAgXHR9LFxyXG5cclxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdG1hcC5vZmYoJ2xheWVyYWRkJywgdGhpcy5fYWRkQXR0cmlidXRpb24sIHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRkQXR0cmlidXRpb246IGZ1bmN0aW9uIChldikge1xyXG4gIFx0XHRpZiAoZXYubGF5ZXIuZ2V0QXR0cmlidXRpb24pIHtcclxuICBcdFx0XHR0aGlzLmFkZEF0dHJpYnV0aW9uKGV2LmxheWVyLmdldEF0dHJpYnV0aW9uKCkpO1xyXG4gIFx0XHRcdGV2LmxheWVyLm9uY2UoJ3JlbW92ZScsIGZ1bmN0aW9uICgpIHtcclxuICBcdFx0XHRcdHRoaXMucmVtb3ZlQXR0cmlidXRpb24oZXYubGF5ZXIuZ2V0QXR0cmlidXRpb24oKSk7XHJcbiAgXHRcdFx0fSwgdGhpcyk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQcmVmaXgocHJlZml4OiBTdHJpbmd8ZmFsc2UpOiB0aGlzXHJcbiAgXHQvLyBUaGUgSFRNTCB0ZXh0IHNob3duIGJlZm9yZSB0aGUgYXR0cmlidXRpb25zLiBQYXNzIGBmYWxzZWAgdG8gZGlzYWJsZS5cclxuICBcdHNldFByZWZpeDogZnVuY3Rpb24gKHByZWZpeCkge1xyXG4gIFx0XHR0aGlzLm9wdGlvbnMucHJlZml4ID0gcHJlZml4O1xyXG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkQXR0cmlidXRpb24odGV4dDogU3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhbiBhdHRyaWJ1dGlvbiB0ZXh0IChlLmcuIGAnJmNvcHk7IE9wZW5TdHJlZXRNYXAgY29udHJpYnV0b3JzJ2ApLlxyXG4gIFx0YWRkQXR0cmlidXRpb246IGZ1bmN0aW9uICh0ZXh0KSB7XHJcbiAgXHRcdGlmICghdGV4dCkgeyByZXR1cm4gdGhpczsgfVxyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9hdHRyaWJ1dGlvbnNbdGV4dF0pIHtcclxuICBcdFx0XHR0aGlzLl9hdHRyaWJ1dGlvbnNbdGV4dF0gPSAwO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuX2F0dHJpYnV0aW9uc1t0ZXh0XSsrO1xyXG5cclxuICBcdFx0dGhpcy5fdXBkYXRlKCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCByZW1vdmVBdHRyaWJ1dGlvbih0ZXh0OiBTdHJpbmcpOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIGFuIGF0dHJpYnV0aW9uIHRleHQuXHJcbiAgXHRyZW1vdmVBdHRyaWJ1dGlvbjogZnVuY3Rpb24gKHRleHQpIHtcclxuICBcdFx0aWYgKCF0ZXh0KSB7IHJldHVybiB0aGlzOyB9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fYXR0cmlidXRpb25zW3RleHRdKSB7XHJcbiAgXHRcdFx0dGhpcy5fYXR0cmlidXRpb25zW3RleHRdLS07XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIGF0dHJpYnMgPSBbXTtcclxuXHJcbiAgXHRcdGZvciAodmFyIGkgaW4gdGhpcy5fYXR0cmlidXRpb25zKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX2F0dHJpYnV0aW9uc1tpXSkge1xyXG4gIFx0XHRcdFx0YXR0cmlicy5wdXNoKGkpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIHByZWZpeEFuZEF0dHJpYnMgPSBbXTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMucHJlZml4KSB7XHJcbiAgXHRcdFx0cHJlZml4QW5kQXR0cmlicy5wdXNoKHRoaXMub3B0aW9ucy5wcmVmaXgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChhdHRyaWJzLmxlbmd0aCkge1xyXG4gIFx0XHRcdHByZWZpeEFuZEF0dHJpYnMucHVzaChhdHRyaWJzLmpvaW4oJywgJykpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuaW5uZXJIVE1MID0gcHJlZml4QW5kQXR0cmlicy5qb2luKCcgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+fDwvc3Bhbj4gJyk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgLy8gQHNlY3Rpb24gQ29udHJvbCBvcHRpb25zXHJcbiAgLy8gQG9wdGlvbiBhdHRyaWJ1dGlvbkNvbnRyb2w6IEJvb2xlYW4gPSB0cnVlXHJcbiAgLy8gV2hldGhlciBhIFthdHRyaWJ1dGlvbiBjb250cm9sXSgjY29udHJvbC1hdHRyaWJ1dGlvbikgaXMgYWRkZWQgdG8gdGhlIG1hcCBieSBkZWZhdWx0LlxyXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xyXG4gIFx0YXR0cmlidXRpb25Db250cm9sOiB0cnVlXHJcbiAgfSk7XHJcblxyXG4gIE1hcC5hZGRJbml0SG9vayhmdW5jdGlvbiAoKSB7XHJcbiAgXHRpZiAodGhpcy5vcHRpb25zLmF0dHJpYnV0aW9uQ29udHJvbCkge1xyXG4gIFx0XHRuZXcgQXR0cmlidXRpb24oKS5hZGRUbyh0aGlzKTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBDb250cm9sLkF0dHJpYnV0aW9uXHJcbiAgLy8gQGZhY3RvcnkgTC5jb250cm9sLmF0dHJpYnV0aW9uKG9wdGlvbnM6IENvbnRyb2wuQXR0cmlidXRpb24gb3B0aW9ucylcclxuICAvLyBDcmVhdGVzIGFuIGF0dHJpYnV0aW9uIGNvbnRyb2wuXHJcbiAgdmFyIGF0dHJpYnV0aW9uID0gZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgQXR0cmlidXRpb24ob3B0aW9ucyk7XHJcbiAgfTtcblxuICBDb250cm9sLkxheWVycyA9IExheWVycztcbiAgQ29udHJvbC5ab29tID0gWm9vbTtcbiAgQ29udHJvbC5TY2FsZSA9IFNjYWxlO1xuICBDb250cm9sLkF0dHJpYnV0aW9uID0gQXR0cmlidXRpb247XG5cbiAgY29udHJvbC5sYXllcnMgPSBsYXllcnM7XG4gIGNvbnRyb2wuem9vbSA9IHpvb207XG4gIGNvbnRyb2wuc2NhbGUgPSBzY2FsZTtcbiAgY29udHJvbC5hdHRyaWJ1dGlvbiA9IGF0dHJpYnV0aW9uO1xuXG4gIC8qXG4gIFx0TC5IYW5kbGVyIGlzIGEgYmFzZSBjbGFzcyBmb3IgaGFuZGxlciBjbGFzc2VzIHRoYXQgYXJlIHVzZWQgaW50ZXJuYWxseSB0byBpbmplY3RcbiAgXHRpbnRlcmFjdGlvbiBmZWF0dXJlcyBsaWtlIGRyYWdnaW5nIHRvIGNsYXNzZXMgbGlrZSBNYXAgYW5kIE1hcmtlci5cbiAgKi9cblxuICAvLyBAY2xhc3MgSGFuZGxlclxuICAvLyBAYWthIEwuSGFuZGxlclxuICAvLyBBYnN0cmFjdCBjbGFzcyBmb3IgbWFwIGludGVyYWN0aW9uIGhhbmRsZXJzXG5cbiAgdmFyIEhhbmRsZXIgPSBDbGFzcy5leHRlbmQoe1xuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdHRoaXMuX21hcCA9IG1hcDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBlbmFibGUoKTogdGhpc1xuICBcdC8vIEVuYWJsZXMgdGhlIGhhbmRsZXJcbiAgXHRlbmFibGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9lbmFibGVkKSB7IHJldHVybiB0aGlzOyB9XG5cbiAgXHRcdHRoaXMuX2VuYWJsZWQgPSB0cnVlO1xuICBcdFx0dGhpcy5hZGRIb29rcygpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZGlzYWJsZSgpOiB0aGlzXG4gIFx0Ly8gRGlzYWJsZXMgdGhlIGhhbmRsZXJcbiAgXHRkaXNhYmxlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuIHRoaXM7IH1cblxuICBcdFx0dGhpcy5fZW5hYmxlZCA9IGZhbHNlO1xuICBcdFx0dGhpcy5yZW1vdmVIb29rcygpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZW5hYmxlZCgpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGhhbmRsZXIgaXMgZW5hYmxlZFxuICBcdGVuYWJsZWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiAhIXRoaXMuX2VuYWJsZWQ7XG4gIFx0fVxuXG4gIFx0Ly8gQHNlY3Rpb24gRXh0ZW5zaW9uIG1ldGhvZHNcbiAgXHQvLyBDbGFzc2VzIGluaGVyaXRpbmcgZnJvbSBgSGFuZGxlcmAgbXVzdCBpbXBsZW1lbnQgdGhlIHR3byBmb2xsb3dpbmcgbWV0aG9kczpcbiAgXHQvLyBAbWV0aG9kIGFkZEhvb2tzKClcbiAgXHQvLyBDYWxsZWQgd2hlbiB0aGUgaGFuZGxlciBpcyBlbmFibGVkLCBzaG91bGQgYWRkIGV2ZW50IGhvb2tzLlxuICBcdC8vIEBtZXRob2QgcmVtb3ZlSG9va3MoKVxuICBcdC8vIENhbGxlZCB3aGVuIHRoZSBoYW5kbGVyIGlzIGRpc2FibGVkLCBzaG91bGQgcmVtb3ZlIHRoZSBldmVudCBob29rcyBhZGRlZCBwcmV2aW91c2x5LlxuICB9KTtcblxuICAvLyBAc2VjdGlvbiBUaGVyZSBpcyBzdGF0aWMgZnVuY3Rpb24gd2hpY2ggY2FuIGJlIGNhbGxlZCB3aXRob3V0IGluc3RhbnRpYXRpbmcgTC5IYW5kbGVyOlxuICAvLyBAZnVuY3Rpb24gYWRkVG8obWFwOiBNYXAsIG5hbWU6IFN0cmluZyk6IHRoaXNcbiAgLy8gQWRkcyBhIG5ldyBIYW5kbGVyIHRvIHRoZSBnaXZlbiBtYXAgd2l0aCB0aGUgZ2l2ZW4gbmFtZS5cbiAgSGFuZGxlci5hZGRUbyA9IGZ1bmN0aW9uIChtYXAsIG5hbWUpIHtcbiAgXHRtYXAuYWRkSGFuZGxlcihuYW1lLCB0aGlzKTtcbiAgXHRyZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgTWl4aW4gPSB7RXZlbnRzOiBFdmVudHN9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIERyYWdnYWJsZVxyXG4gICAqIEBha2EgTC5EcmFnZ2FibGVcclxuICAgKiBAaW5oZXJpdHMgRXZlbnRlZFxyXG4gICAqXHJcbiAgICogQSBjbGFzcyBmb3IgbWFraW5nIERPTSBlbGVtZW50cyBkcmFnZ2FibGUgKGluY2x1ZGluZyB0b3VjaCBzdXBwb3J0KS5cclxuICAgKiBVc2VkIGludGVybmFsbHkgZm9yIG1hcCBhbmQgbWFya2VyIGRyYWdnaW5nLiBPbmx5IHdvcmtzIGZvciBlbGVtZW50c1xyXG4gICAqIHRoYXQgd2VyZSBwb3NpdGlvbmVkIHdpdGggW2BMLkRvbVV0aWwuc2V0UG9zaXRpb25gXSgjZG9tdXRpbC1zZXRwb3NpdGlvbikuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIGRyYWdnYWJsZSA9IG5ldyBMLkRyYWdnYWJsZShlbGVtZW50VG9EcmFnKTtcclxuICAgKiBkcmFnZ2FibGUuZW5hYmxlKCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBTVEFSVCA9IEJyb3dzZXIudG91Y2ggPyAndG91Y2hzdGFydCBtb3VzZWRvd24nIDogJ21vdXNlZG93bic7XHJcblxyXG4gIHZhciBEcmFnZ2FibGUgPSBFdmVudGVkLmV4dGVuZCh7XHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAc2VjdGlvblxyXG4gIFx0XHQvLyBAYWthIERyYWdnYWJsZSBvcHRpb25zXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xpY2tUb2xlcmFuY2U6IE51bWJlciA9IDNcclxuICBcdFx0Ly8gVGhlIG1heCBudW1iZXIgb2YgcGl4ZWxzIGEgdXNlciBjYW4gc2hpZnQgdGhlIG1vdXNlIHBvaW50ZXIgZHVyaW5nIGEgY2xpY2tcclxuICBcdFx0Ly8gZm9yIGl0IHRvIGJlIGNvbnNpZGVyZWQgYSB2YWxpZCBjbGljayAoYXMgb3Bwb3NlZCB0byBhIG1vdXNlIGRyYWcpLlxyXG4gIFx0XHRjbGlja1RvbGVyYW5jZTogM1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAY29uc3RydWN0b3IgTC5EcmFnZ2FibGUoZWw6IEhUTUxFbGVtZW50LCBkcmFnSGFuZGxlPzogSFRNTEVsZW1lbnQsIHByZXZlbnRPdXRsaW5lPzogQm9vbGVhbiwgb3B0aW9ucz86IERyYWdnYWJsZSBvcHRpb25zKVxyXG4gIFx0Ly8gQ3JlYXRlcyBhIGBEcmFnZ2FibGVgIG9iamVjdCBmb3IgbW92aW5nIGBlbGAgd2hlbiB5b3Ugc3RhcnQgZHJhZ2dpbmcgdGhlIGBkcmFnSGFuZGxlYCBlbGVtZW50IChlcXVhbHMgYGVsYCBpdHNlbGYgYnkgZGVmYXVsdCkuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAoZWxlbWVudCwgZHJhZ1N0YXJ0VGFyZ2V0LCBwcmV2ZW50T3V0bGluZSwgb3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG5cclxuICBcdFx0dGhpcy5fZWxlbWVudCA9IGVsZW1lbnQ7XHJcbiAgXHRcdHRoaXMuX2RyYWdTdGFydFRhcmdldCA9IGRyYWdTdGFydFRhcmdldCB8fCBlbGVtZW50O1xyXG4gIFx0XHR0aGlzLl9wcmV2ZW50T3V0bGluZSA9IHByZXZlbnRPdXRsaW5lO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGVuYWJsZSgpXHJcbiAgXHQvLyBFbmFibGVzIHRoZSBkcmFnZ2luZyBhYmlsaXR5XHJcbiAgXHRlbmFibGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHRvbih0aGlzLl9kcmFnU3RhcnRUYXJnZXQsIFNUQVJULCB0aGlzLl9vbkRvd24sIHRoaXMpO1xyXG5cclxuICBcdFx0dGhpcy5fZW5hYmxlZCA9IHRydWU7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZGlzYWJsZSgpXHJcbiAgXHQvLyBEaXNhYmxlcyB0aGUgZHJhZ2dpbmcgYWJpbGl0eVxyXG4gIFx0ZGlzYWJsZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHQvLyBJZiB3ZSdyZSBjdXJyZW50bHkgZHJhZ2dpbmcgdGhpcyBkcmFnZ2FibGUsXHJcbiAgXHRcdC8vIGRpc2FibGluZyBpdCBjb3VudHMgYXMgZmlyc3QgZW5kaW5nIHRoZSBkcmFnLlxyXG4gIFx0XHRpZiAoRHJhZ2dhYmxlLl9kcmFnZ2luZyA9PT0gdGhpcykge1xyXG4gIFx0XHRcdHRoaXMuZmluaXNoRHJhZyh0cnVlKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0b2ZmKHRoaXMuX2RyYWdTdGFydFRhcmdldCwgU1RBUlQsIHRoaXMuX29uRG93biwgdGhpcyk7XHJcblxyXG4gIFx0XHR0aGlzLl9lbmFibGVkID0gZmFsc2U7XHJcbiAgXHRcdHRoaXMuX21vdmVkID0gZmFsc2U7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vbkRvd246IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdC8vIElnbm9yZSB0aGUgZXZlbnQgaWYgZGlzYWJsZWQ7IHRoaXMgaGFwcGVucyBpbiBJRTExXHJcbiAgXHRcdC8vIHVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcywgc2VlICMzNjY2LlxyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xyXG5cclxuICBcdFx0aWYgKGhhc0NsYXNzKHRoaXMuX2VsZW1lbnQsICdsZWFmbGV0LXpvb20tYW5pbScpKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0aWYgKGUudG91Y2hlcyAmJiBlLnRvdWNoZXMubGVuZ3RoICE9PSAxKSB7XHJcbiAgXHRcdFx0Ly8gRmluaXNoIGRyYWdnaW5nIHRvIGF2b2lkIGNvbmZsaWN0IHdpdGggdG91Y2hab29tXHJcbiAgXHRcdFx0aWYgKERyYWdnYWJsZS5fZHJhZ2dpbmcgPT09IHRoaXMpIHtcclxuICBcdFx0XHRcdHRoaXMuZmluaXNoRHJhZygpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRyZXR1cm47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChEcmFnZ2FibGUuX2RyYWdnaW5nIHx8IGUuc2hpZnRLZXkgfHwgKChlLndoaWNoICE9PSAxKSAmJiAoZS5idXR0b24gIT09IDEpICYmICFlLnRvdWNoZXMpKSB7IHJldHVybjsgfVxyXG4gIFx0XHREcmFnZ2FibGUuX2RyYWdnaW5nID0gdGhpczsgIC8vIFByZXZlbnQgZHJhZ2dpbmcgbXVsdGlwbGUgb2JqZWN0cyBhdCBvbmNlLlxyXG5cclxuICBcdFx0aWYgKHRoaXMuX3ByZXZlbnRPdXRsaW5lKSB7XHJcbiAgXHRcdFx0cHJldmVudE91dGxpbmUodGhpcy5fZWxlbWVudCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGRpc2FibGVJbWFnZURyYWcoKTtcclxuICBcdFx0ZGlzYWJsZVRleHRTZWxlY3Rpb24oKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9tb3ZpbmcpIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgZG93bjogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGRyYWcgaXMgYWJvdXQgdG8gc3RhcnQuXHJcbiAgXHRcdHRoaXMuZmlyZSgnZG93bicpO1xyXG5cclxuICBcdFx0dmFyIGZpcnN0ID0gZS50b3VjaGVzID8gZS50b3VjaGVzWzBdIDogZSxcclxuICBcdFx0ICAgIHNpemVkUGFyZW50ID0gZ2V0U2l6ZWRQYXJlbnROb2RlKHRoaXMuX2VsZW1lbnQpO1xyXG5cclxuICBcdFx0dGhpcy5fc3RhcnRQb2ludCA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcclxuICBcdFx0dGhpcy5fc3RhcnRQb3MgPSBnZXRQb3NpdGlvbih0aGlzLl9lbGVtZW50KTtcclxuXHJcbiAgXHRcdC8vIENhY2hlIHRoZSBzY2FsZSwgc28gdGhhdCB3ZSBjYW4gY29udGludW91c2x5IGNvbXBlbnNhdGUgZm9yIGl0IGR1cmluZyBkcmFnIChfb25Nb3ZlKS5cclxuICBcdFx0dGhpcy5fcGFyZW50U2NhbGUgPSBnZXRTY2FsZShzaXplZFBhcmVudCk7XHJcblxyXG4gIFx0XHR2YXIgbW91c2VldmVudCA9IGUudHlwZSA9PT0gJ21vdXNlZG93bic7XHJcbiAgXHRcdG9uKGRvY3VtZW50LCBtb3VzZWV2ZW50ID8gJ21vdXNlbW92ZScgOiAndG91Y2htb3ZlJywgdGhpcy5fb25Nb3ZlLCB0aGlzKTtcclxuICBcdFx0b24oZG9jdW1lbnQsIG1vdXNlZXZlbnQgPyAnbW91c2V1cCcgOiAndG91Y2hlbmQgdG91Y2hjYW5jZWwnLCB0aGlzLl9vblVwLCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uTW92ZTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0Ly8gSWdub3JlIHRoZSBldmVudCBpZiBkaXNhYmxlZDsgdGhpcyBoYXBwZW5zIGluIElFMTFcclxuICBcdFx0Ly8gdW5kZXIgc29tZSBjaXJjdW1zdGFuY2VzLCBzZWUgIzM2NjYuXHJcbiAgXHRcdGlmICghdGhpcy5fZW5hYmxlZCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdGlmIChlLnRvdWNoZXMgJiYgZS50b3VjaGVzLmxlbmd0aCA+IDEpIHtcclxuICBcdFx0XHR0aGlzLl9tb3ZlZCA9IHRydWU7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgZmlyc3QgPSAoZS50b3VjaGVzICYmIGUudG91Y2hlcy5sZW5ndGggPT09IDEgPyBlLnRvdWNoZXNbMF0gOiBlKSxcclxuICBcdFx0ICAgIG9mZnNldCA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKS5fc3VidHJhY3QodGhpcy5fc3RhcnRQb2ludCk7XHJcblxyXG4gIFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkgeyByZXR1cm47IH1cclxuICBcdFx0aWYgKE1hdGguYWJzKG9mZnNldC54KSArIE1hdGguYWJzKG9mZnNldC55KSA8IHRoaXMub3B0aW9ucy5jbGlja1RvbGVyYW5jZSkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdC8vIFdlIGFzc3VtZSB0aGF0IHRoZSBwYXJlbnQgY29udGFpbmVyJ3MgcG9zaXRpb24sIGJvcmRlciBhbmQgc2NhbGUgZG8gbm90IGNoYW5nZSBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBkcmFnLlxyXG4gIFx0XHQvLyBUaGVyZWZvcmUgdGhlcmUgaXMgbm8gbmVlZCB0byBhY2NvdW50IGZvciB0aGUgcG9zaXRpb24gYW5kIGJvcmRlciAodGhleSBhcmUgZWxpbWluYXRlZCBieSB0aGUgc3VidHJhY3Rpb24pXHJcbiAgXHRcdC8vIGFuZCB3ZSBjYW4gdXNlIHRoZSBjYWNoZWQgdmFsdWUgZm9yIHRoZSBzY2FsZS5cclxuICBcdFx0b2Zmc2V0LnggLz0gdGhpcy5fcGFyZW50U2NhbGUueDtcclxuICBcdFx0b2Zmc2V0LnkgLz0gdGhpcy5fcGFyZW50U2NhbGUueTtcclxuXHJcbiAgXHRcdHByZXZlbnREZWZhdWx0KGUpO1xyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9tb3ZlZCkge1xyXG4gIFx0XHRcdC8vIEBldmVudCBkcmFnc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIGRyYWcgc3RhcnRzXHJcbiAgXHRcdFx0dGhpcy5maXJlKCdkcmFnc3RhcnQnKTtcclxuXHJcbiAgXHRcdFx0dGhpcy5fbW92ZWQgPSB0cnVlO1xyXG5cclxuICBcdFx0XHRhZGRDbGFzcyhkb2N1bWVudC5ib2R5LCAnbGVhZmxldC1kcmFnZ2luZycpO1xyXG5cclxuICBcdFx0XHR0aGlzLl9sYXN0VGFyZ2V0ID0gZS50YXJnZXQgfHwgZS5zcmNFbGVtZW50O1xyXG4gIFx0XHRcdC8vIElFIGFuZCBFZGdlIGRvIG5vdCBnaXZlIHRoZSA8dXNlPiBlbGVtZW50LCBzbyBmZXRjaCBpdFxyXG4gIFx0XHRcdC8vIGlmIG5lY2Vzc2FyeVxyXG4gIFx0XHRcdGlmICh3aW5kb3cuU1ZHRWxlbWVudEluc3RhbmNlICYmIHRoaXMuX2xhc3RUYXJnZXQgaW5zdGFuY2VvZiB3aW5kb3cuU1ZHRWxlbWVudEluc3RhbmNlKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9sYXN0VGFyZ2V0ID0gdGhpcy5fbGFzdFRhcmdldC5jb3JyZXNwb25kaW5nVXNlRWxlbWVudDtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5fbGFzdFRhcmdldCwgJ2xlYWZsZXQtZHJhZy10YXJnZXQnKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fbmV3UG9zID0gdGhpcy5fc3RhcnRQb3MuYWRkKG9mZnNldCk7XHJcbiAgXHRcdHRoaXMuX21vdmluZyA9IHRydWU7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXN0RXZlbnQgPSBlO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVQb3NpdGlvbigpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlUG9zaXRpb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGUgPSB7b3JpZ2luYWxFdmVudDogdGhpcy5fbGFzdEV2ZW50fTtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBwcmVkcmFnOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCBjb250aW51b3VzbHkgZHVyaW5nIGRyYWdnaW5nICpiZWZvcmUqIGVhY2ggY29ycmVzcG9uZGluZ1xyXG4gIFx0XHQvLyB1cGRhdGUgb2YgdGhlIGVsZW1lbnQncyBwb3NpdGlvbi5cclxuICBcdFx0dGhpcy5maXJlKCdwcmVkcmFnJywgZSk7XHJcbiAgXHRcdHNldFBvc2l0aW9uKHRoaXMuX2VsZW1lbnQsIHRoaXMuX25ld1Bvcyk7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgZHJhZzogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgY29udGludW91c2x5IGR1cmluZyBkcmFnZ2luZy5cclxuICBcdFx0dGhpcy5maXJlKCdkcmFnJywgZSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9vblVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdC8vIElnbm9yZSB0aGUgZXZlbnQgaWYgZGlzYWJsZWQ7IHRoaXMgaGFwcGVucyBpbiBJRTExXHJcbiAgXHRcdC8vIHVuZGVyIHNvbWUgY2lyY3Vtc3RhbmNlcywgc2VlICMzNjY2LlxyXG4gIFx0XHRpZiAoIXRoaXMuX2VuYWJsZWQpIHsgcmV0dXJuOyB9XHJcbiAgXHRcdHRoaXMuZmluaXNoRHJhZygpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRmaW5pc2hEcmFnOiBmdW5jdGlvbiAobm9JbmVydGlhKSB7XHJcbiAgXHRcdHJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdsZWFmbGV0LWRyYWdnaW5nJyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbGFzdFRhcmdldCkge1xyXG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2xhc3RUYXJnZXQsICdsZWFmbGV0LWRyYWctdGFyZ2V0Jyk7XHJcbiAgXHRcdFx0dGhpcy5fbGFzdFRhcmdldCA9IG51bGw7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdG9mZihkb2N1bWVudCwgJ21vdXNlbW92ZSB0b3VjaG1vdmUnLCB0aGlzLl9vbk1vdmUsIHRoaXMpO1xyXG4gIFx0XHRvZmYoZG9jdW1lbnQsICdtb3VzZXVwIHRvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25VcCwgdGhpcyk7XHJcblxyXG4gIFx0XHRlbmFibGVJbWFnZURyYWcoKTtcclxuICBcdFx0ZW5hYmxlVGV4dFNlbGVjdGlvbigpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21vdmVkICYmIHRoaXMuX21vdmluZykge1xyXG5cclxuICBcdFx0XHQvLyBAZXZlbnQgZHJhZ2VuZDogRHJhZ0VuZEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgZHJhZyBlbmRzLlxyXG4gIFx0XHRcdHRoaXMuZmlyZSgnZHJhZ2VuZCcsIHtcclxuICBcdFx0XHRcdG5vSW5lcnRpYTogbm9JbmVydGlhLFxyXG4gIFx0XHRcdFx0ZGlzdGFuY2U6IHRoaXMuX25ld1Bvcy5kaXN0YW5jZVRvKHRoaXMuX3N0YXJ0UG9zKVxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9tb3ZpbmcgPSBmYWxzZTtcclxuICBcdFx0RHJhZ2dhYmxlLl9kcmFnZ2luZyA9IGZhbHNlO1xyXG4gIFx0fVxyXG5cclxuICB9KTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgTGluZVV0aWxcclxuICAgKlxyXG4gICAqIFZhcmlvdXMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHBvbHlsaW5lIHBvaW50cyBwcm9jZXNzaW5nLCB1c2VkIGJ5IExlYWZsZXQgaW50ZXJuYWxseSB0byBtYWtlIHBvbHlsaW5lcyBsaWdodG5pbmctZmFzdC5cclxuICAgKi9cclxuXHJcbiAgLy8gU2ltcGxpZnkgcG9seWxpbmUgd2l0aCB2ZXJ0ZXggcmVkdWN0aW9uIGFuZCBEb3VnbGFzLVBldWNrZXIgc2ltcGxpZmljYXRpb24uXHJcbiAgLy8gSW1wcm92ZXMgcmVuZGVyaW5nIHBlcmZvcm1hbmNlIGRyYW1hdGljYWxseSBieSBsZXNzZW5pbmcgdGhlIG51bWJlciBvZiBwb2ludHMgdG8gZHJhdy5cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIHNpbXBsaWZ5KHBvaW50czogUG9pbnRbXSwgdG9sZXJhbmNlOiBOdW1iZXIpOiBQb2ludFtdXHJcbiAgLy8gRHJhbWF0aWNhbGx5IHJlZHVjZXMgdGhlIG51bWJlciBvZiBwb2ludHMgaW4gYSBwb2x5bGluZSB3aGlsZSByZXRhaW5pbmdcclxuICAvLyBpdHMgc2hhcGUgYW5kIHJldHVybnMgYSBuZXcgYXJyYXkgb2Ygc2ltcGxpZmllZCBwb2ludHMsIHVzaW5nIHRoZVxyXG4gIC8vIFtSYW1lci1Eb3VnbGFzLVBldWNrZXIgYWxnb3JpdGhtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SYW1lci1Eb3VnbGFzLVBldWNrZXJfYWxnb3JpdGhtKS5cclxuICAvLyBVc2VkIGZvciBhIGh1Z2UgcGVyZm9ybWFuY2UgYm9vc3Qgd2hlbiBwcm9jZXNzaW5nL2Rpc3BsYXlpbmcgTGVhZmxldCBwb2x5bGluZXMgZm9yXHJcbiAgLy8gZWFjaCB6b29tIGxldmVsIGFuZCBhbHNvIHJlZHVjaW5nIHZpc3VhbCBub2lzZS4gdG9sZXJhbmNlIGFmZmVjdHMgdGhlIGFtb3VudCBvZlxyXG4gIC8vIHNpbXBsaWZpY2F0aW9uIChsZXNzZXIgdmFsdWUgbWVhbnMgaGlnaGVyIHF1YWxpdHkgYnV0IHNsb3dlciBhbmQgd2l0aCBtb3JlIHBvaW50cykuXHJcbiAgLy8gQWxzbyByZWxlYXNlZCBhcyBhIHNlcGFyYXRlZCBtaWNyby1saWJyYXJ5IFtTaW1wbGlmeS5qc10oaHR0cHM6Ly9tb3VybmVyLmdpdGh1Yi5pby9zaW1wbGlmeS1qcy8pLlxyXG4gIGZ1bmN0aW9uIHNpbXBsaWZ5KHBvaW50cywgdG9sZXJhbmNlKSB7XHJcbiAgXHRpZiAoIXRvbGVyYW5jZSB8fCAhcG9pbnRzLmxlbmd0aCkge1xyXG4gIFx0XHRyZXR1cm4gcG9pbnRzLnNsaWNlKCk7XHJcbiAgXHR9XHJcblxyXG4gIFx0dmFyIHNxVG9sZXJhbmNlID0gdG9sZXJhbmNlICogdG9sZXJhbmNlO1xyXG5cclxuICBcdCAgICAvLyBzdGFnZSAxOiB2ZXJ0ZXggcmVkdWN0aW9uXHJcbiAgXHQgICAgcG9pbnRzID0gX3JlZHVjZVBvaW50cyhwb2ludHMsIHNxVG9sZXJhbmNlKTtcclxuXHJcbiAgXHQgICAgLy8gc3RhZ2UgMjogRG91Z2xhcy1QZXVja2VyIHNpbXBsaWZpY2F0aW9uXHJcbiAgXHQgICAgcG9pbnRzID0gX3NpbXBsaWZ5RFAocG9pbnRzLCBzcVRvbGVyYW5jZSk7XHJcblxyXG4gIFx0cmV0dXJuIHBvaW50cztcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBwb2ludFRvU2VnbWVudERpc3RhbmNlKHA6IFBvaW50LCBwMTogUG9pbnQsIHAyOiBQb2ludCk6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIGRpc3RhbmNlIGJldHdlZW4gcG9pbnQgYHBgIGFuZCBzZWdtZW50IGBwMWAgdG8gYHAyYC5cclxuICBmdW5jdGlvbiBwb2ludFRvU2VnbWVudERpc3RhbmNlKHAsIHAxLCBwMikge1xyXG4gIFx0cmV0dXJuIE1hdGguc3FydChfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocCwgcDEsIHAyLCB0cnVlKSk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY2xvc2VzdFBvaW50T25TZWdtZW50KHA6IFBvaW50LCBwMTogUG9pbnQsIHAyOiBQb2ludCk6IE51bWJlclxyXG4gIC8vIFJldHVybnMgdGhlIGNsb3Nlc3QgcG9pbnQgZnJvbSBhIHBvaW50IGBwYCBvbiBhIHNlZ21lbnQgYHAxYCB0byBgcDJgLlxyXG4gIGZ1bmN0aW9uIGNsb3Nlc3RQb2ludE9uU2VnbWVudChwLCBwMSwgcDIpIHtcclxuICBcdHJldHVybiBfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocCwgcDEsIHAyKTtcclxuICB9XHJcblxyXG4gIC8vIFJhbWVyLURvdWdsYXMtUGV1Y2tlciBzaW1wbGlmaWNhdGlvbiwgc2VlIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1JhbWVyLURvdWdsYXMtUGV1Y2tlcl9hbGdvcml0aG1cclxuICBmdW5jdGlvbiBfc2ltcGxpZnlEUChwb2ludHMsIHNxVG9sZXJhbmNlKSB7XHJcblxyXG4gIFx0dmFyIGxlbiA9IHBvaW50cy5sZW5ndGgsXHJcbiAgXHQgICAgQXJyYXlDb25zdHJ1Y3RvciA9IHR5cGVvZiBVaW50OEFycmF5ICE9PSB1bmRlZmluZWQgKyAnJyA/IFVpbnQ4QXJyYXkgOiBBcnJheSxcclxuICBcdCAgICBtYXJrZXJzID0gbmV3IEFycmF5Q29uc3RydWN0b3IobGVuKTtcclxuXHJcbiAgXHQgICAgbWFya2Vyc1swXSA9IG1hcmtlcnNbbGVuIC0gMV0gPSAxO1xyXG5cclxuICBcdF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCAwLCBsZW4gLSAxKTtcclxuXHJcbiAgXHR2YXIgaSxcclxuICBcdCAgICBuZXdQb2ludHMgPSBbXTtcclxuXHJcbiAgXHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICBcdFx0aWYgKG1hcmtlcnNbaV0pIHtcclxuICBcdFx0XHRuZXdQb2ludHMucHVzaChwb2ludHNbaV0pO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIG5ld1BvaW50cztcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCBmaXJzdCwgbGFzdCkge1xyXG5cclxuICBcdHZhciBtYXhTcURpc3QgPSAwLFxyXG4gIFx0aW5kZXgsIGksIHNxRGlzdDtcclxuXHJcbiAgXHRmb3IgKGkgPSBmaXJzdCArIDE7IGkgPD0gbGFzdCAtIDE7IGkrKykge1xyXG4gIFx0XHRzcURpc3QgPSBfc3FDbG9zZXN0UG9pbnRPblNlZ21lbnQocG9pbnRzW2ldLCBwb2ludHNbZmlyc3RdLCBwb2ludHNbbGFzdF0sIHRydWUpO1xyXG5cclxuICBcdFx0aWYgKHNxRGlzdCA+IG1heFNxRGlzdCkge1xyXG4gIFx0XHRcdGluZGV4ID0gaTtcclxuICBcdFx0XHRtYXhTcURpc3QgPSBzcURpc3Q7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRpZiAobWF4U3FEaXN0ID4gc3FUb2xlcmFuY2UpIHtcclxuICBcdFx0bWFya2Vyc1tpbmRleF0gPSAxO1xyXG5cclxuICBcdFx0X3NpbXBsaWZ5RFBTdGVwKHBvaW50cywgbWFya2Vycywgc3FUb2xlcmFuY2UsIGZpcnN0LCBpbmRleCk7XHJcbiAgXHRcdF9zaW1wbGlmeURQU3RlcChwb2ludHMsIG1hcmtlcnMsIHNxVG9sZXJhbmNlLCBpbmRleCwgbGFzdCk7XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICAvLyByZWR1Y2UgcG9pbnRzIHRoYXQgYXJlIHRvbyBjbG9zZSB0byBlYWNoIG90aGVyIHRvIGEgc2luZ2xlIHBvaW50XHJcbiAgZnVuY3Rpb24gX3JlZHVjZVBvaW50cyhwb2ludHMsIHNxVG9sZXJhbmNlKSB7XHJcbiAgXHR2YXIgcmVkdWNlZFBvaW50cyA9IFtwb2ludHNbMF1dO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAxLCBwcmV2ID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdGlmIChfc3FEaXN0KHBvaW50c1tpXSwgcG9pbnRzW3ByZXZdKSA+IHNxVG9sZXJhbmNlKSB7XHJcbiAgXHRcdFx0cmVkdWNlZFBvaW50cy5wdXNoKHBvaW50c1tpXSk7XHJcbiAgXHRcdFx0cHJldiA9IGk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICBcdGlmIChwcmV2IDwgbGVuIC0gMSkge1xyXG4gIFx0XHRyZWR1Y2VkUG9pbnRzLnB1c2gocG9pbnRzW2xlbiAtIDFdKTtcclxuICBcdH1cclxuICBcdHJldHVybiByZWR1Y2VkUG9pbnRzO1xyXG4gIH1cclxuXHJcbiAgdmFyIF9sYXN0Q29kZTtcclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGNsaXBTZWdtZW50KGE6IFBvaW50LCBiOiBQb2ludCwgYm91bmRzOiBCb3VuZHMsIHVzZUxhc3RDb2RlPzogQm9vbGVhbiwgcm91bmQ/OiBCb29sZWFuKTogUG9pbnRbXXxCb29sZWFuXHJcbiAgLy8gQ2xpcHMgdGhlIHNlZ21lbnQgYSB0byBiIGJ5IHJlY3Rhbmd1bGFyIGJvdW5kcyB3aXRoIHRoZVxyXG4gIC8vIFtDb2hlbi1TdXRoZXJsYW5kIGFsZ29yaXRobV0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ29oZW4lRTIlODAlOTNTdXRoZXJsYW5kX2FsZ29yaXRobSlcclxuICAvLyAobW9kaWZ5aW5nIHRoZSBzZWdtZW50IHBvaW50cyBkaXJlY3RseSEpLiBVc2VkIGJ5IExlYWZsZXQgdG8gb25seSBzaG93IHBvbHlsaW5lXHJcbiAgLy8gcG9pbnRzIHRoYXQgYXJlIG9uIHRoZSBzY3JlZW4gb3IgbmVhciwgaW5jcmVhc2luZyBwZXJmb3JtYW5jZS5cclxuICBmdW5jdGlvbiBjbGlwU2VnbWVudChhLCBiLCBib3VuZHMsIHVzZUxhc3RDb2RlLCByb3VuZCkge1xyXG4gIFx0dmFyIGNvZGVBID0gdXNlTGFzdENvZGUgPyBfbGFzdENvZGUgOiBfZ2V0Qml0Q29kZShhLCBib3VuZHMpLFxyXG4gIFx0ICAgIGNvZGVCID0gX2dldEJpdENvZGUoYiwgYm91bmRzKSxcclxuXHJcbiAgXHQgICAgY29kZU91dCwgcCwgbmV3Q29kZTtcclxuXHJcbiAgXHQgICAgLy8gc2F2ZSAybmQgY29kZSB0byBhdm9pZCBjYWxjdWxhdGluZyBpdCBvbiB0aGUgbmV4dCBzZWdtZW50XHJcbiAgXHQgICAgX2xhc3RDb2RlID0gY29kZUI7XHJcblxyXG4gIFx0d2hpbGUgKHRydWUpIHtcclxuICBcdFx0Ly8gaWYgYSxiIGlzIGluc2lkZSB0aGUgY2xpcCB3aW5kb3cgKHRyaXZpYWwgYWNjZXB0KVxyXG4gIFx0XHRpZiAoIShjb2RlQSB8IGNvZGVCKSkge1xyXG4gIFx0XHRcdHJldHVybiBbYSwgYl07XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdC8vIGlmIGEsYiBpcyBvdXRzaWRlIHRoZSBjbGlwIHdpbmRvdyAodHJpdmlhbCByZWplY3QpXHJcbiAgXHRcdGlmIChjb2RlQSAmIGNvZGVCKSB7XHJcbiAgXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHQvLyBvdGhlciBjYXNlc1xyXG4gIFx0XHRjb2RlT3V0ID0gY29kZUEgfHwgY29kZUI7XHJcbiAgXHRcdHAgPSBfZ2V0RWRnZUludGVyc2VjdGlvbihhLCBiLCBjb2RlT3V0LCBib3VuZHMsIHJvdW5kKTtcclxuICBcdFx0bmV3Q29kZSA9IF9nZXRCaXRDb2RlKHAsIGJvdW5kcyk7XHJcblxyXG4gIFx0XHRpZiAoY29kZU91dCA9PT0gY29kZUEpIHtcclxuICBcdFx0XHRhID0gcDtcclxuICBcdFx0XHRjb2RlQSA9IG5ld0NvZGU7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0YiA9IHA7XHJcbiAgXHRcdFx0Y29kZUIgPSBuZXdDb2RlO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgfVxyXG5cclxuICBmdW5jdGlvbiBfZ2V0RWRnZUludGVyc2VjdGlvbihhLCBiLCBjb2RlLCBib3VuZHMsIHJvdW5kKSB7XHJcbiAgXHR2YXIgZHggPSBiLnggLSBhLngsXHJcbiAgXHQgICAgZHkgPSBiLnkgLSBhLnksXHJcbiAgXHQgICAgbWluID0gYm91bmRzLm1pbixcclxuICBcdCAgICBtYXggPSBib3VuZHMubWF4LFxyXG4gIFx0ICAgIHgsIHk7XHJcblxyXG4gIFx0aWYgKGNvZGUgJiA4KSB7IC8vIHRvcFxyXG4gIFx0XHR4ID0gYS54ICsgZHggKiAobWF4LnkgLSBhLnkpIC8gZHk7XHJcbiAgXHRcdHkgPSBtYXgueTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKGNvZGUgJiA0KSB7IC8vIGJvdHRvbVxyXG4gIFx0XHR4ID0gYS54ICsgZHggKiAobWluLnkgLSBhLnkpIC8gZHk7XHJcbiAgXHRcdHkgPSBtaW4ueTtcclxuXHJcbiAgXHR9IGVsc2UgaWYgKGNvZGUgJiAyKSB7IC8vIHJpZ2h0XHJcbiAgXHRcdHggPSBtYXgueDtcclxuICBcdFx0eSA9IGEueSArIGR5ICogKG1heC54IC0gYS54KSAvIGR4O1xyXG5cclxuICBcdH0gZWxzZSBpZiAoY29kZSAmIDEpIHsgLy8gbGVmdFxyXG4gIFx0XHR4ID0gbWluLng7XHJcbiAgXHRcdHkgPSBhLnkgKyBkeSAqIChtaW4ueCAtIGEueCkgLyBkeDtcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gbmV3IFBvaW50KHgsIHksIHJvdW5kKTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9nZXRCaXRDb2RlKHAsIGJvdW5kcykge1xyXG4gIFx0dmFyIGNvZGUgPSAwO1xyXG5cclxuICBcdGlmIChwLnggPCBib3VuZHMubWluLngpIHsgLy8gbGVmdFxyXG4gIFx0XHRjb2RlIHw9IDE7XHJcbiAgXHR9IGVsc2UgaWYgKHAueCA+IGJvdW5kcy5tYXgueCkgeyAvLyByaWdodFxyXG4gIFx0XHRjb2RlIHw9IDI7XHJcbiAgXHR9XHJcblxyXG4gIFx0aWYgKHAueSA8IGJvdW5kcy5taW4ueSkgeyAvLyBib3R0b21cclxuICBcdFx0Y29kZSB8PSA0O1xyXG4gIFx0fSBlbHNlIGlmIChwLnkgPiBib3VuZHMubWF4LnkpIHsgLy8gdG9wXHJcbiAgXHRcdGNvZGUgfD0gODtcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gY29kZTtcclxuICB9XHJcblxyXG4gIC8vIHNxdWFyZSBkaXN0YW5jZSAodG8gYXZvaWQgdW5uZWNlc3NhcnkgTWF0aC5zcXJ0IGNhbGxzKVxyXG4gIGZ1bmN0aW9uIF9zcURpc3QocDEsIHAyKSB7XHJcbiAgXHR2YXIgZHggPSBwMi54IC0gcDEueCxcclxuICBcdCAgICBkeSA9IHAyLnkgLSBwMS55O1xyXG4gIFx0cmV0dXJuIGR4ICogZHggKyBkeSAqIGR5O1xyXG4gIH1cclxuXHJcbiAgLy8gcmV0dXJuIGNsb3Nlc3QgcG9pbnQgb24gc2VnbWVudCBvciBkaXN0YW5jZSB0byB0aGF0IHBvaW50XHJcbiAgZnVuY3Rpb24gX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50KHAsIHAxLCBwMiwgc3FEaXN0KSB7XHJcbiAgXHR2YXIgeCA9IHAxLngsXHJcbiAgXHQgICAgeSA9IHAxLnksXHJcbiAgXHQgICAgZHggPSBwMi54IC0geCxcclxuICBcdCAgICBkeSA9IHAyLnkgLSB5LFxyXG4gIFx0ICAgIGRvdCA9IGR4ICogZHggKyBkeSAqIGR5LFxyXG4gIFx0ICAgIHQ7XHJcblxyXG4gIFx0aWYgKGRvdCA+IDApIHtcclxuICBcdFx0dCA9ICgocC54IC0geCkgKiBkeCArIChwLnkgLSB5KSAqIGR5KSAvIGRvdDtcclxuXHJcbiAgXHRcdGlmICh0ID4gMSkge1xyXG4gIFx0XHRcdHggPSBwMi54O1xyXG4gIFx0XHRcdHkgPSBwMi55O1xyXG4gIFx0XHR9IGVsc2UgaWYgKHQgPiAwKSB7XHJcbiAgXHRcdFx0eCArPSBkeCAqIHQ7XHJcbiAgXHRcdFx0eSArPSBkeSAqIHQ7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuXHJcbiAgXHRkeCA9IHAueCAtIHg7XHJcbiAgXHRkeSA9IHAueSAtIHk7XHJcblxyXG4gIFx0cmV0dXJuIHNxRGlzdCA/IGR4ICogZHggKyBkeSAqIGR5IDogbmV3IFBvaW50KHgsIHkpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vIEBmdW5jdGlvbiBpc0ZsYXQobGF0bG5nczogTGF0TG5nW10pOiBCb29sZWFuXHJcbiAgLy8gUmV0dXJucyB0cnVlIGlmIGBsYXRsbmdzYCBpcyBhIGZsYXQgYXJyYXksIGZhbHNlIGlzIG5lc3RlZC5cclxuICBmdW5jdGlvbiBpc0ZsYXQobGF0bG5ncykge1xyXG4gIFx0cmV0dXJuICFpc0FycmF5KGxhdGxuZ3NbMF0pIHx8ICh0eXBlb2YgbGF0bG5nc1swXVswXSAhPT0gJ29iamVjdCcgJiYgdHlwZW9mIGxhdGxuZ3NbMF1bMF0gIT09ICd1bmRlZmluZWQnKTtcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIF9mbGF0KGxhdGxuZ3MpIHtcclxuICBcdGNvbnNvbGUud2FybignRGVwcmVjYXRlZCB1c2Ugb2YgX2ZsYXQsIHBsZWFzZSB1c2UgTC5MaW5lVXRpbC5pc0ZsYXQgaW5zdGVhZC4nKTtcclxuICBcdHJldHVybiBpc0ZsYXQobGF0bG5ncyk7XHJcbiAgfVxyXG5cclxuICAvKiBAZnVuY3Rpb24gcG9seWxpbmVDZW50ZXIobGF0bG5nczogTGF0TG5nW10sIGNyczogQ1JTKTogTGF0TG5nXHJcbiAgICogUmV0dXJucyB0aGUgY2VudGVyIChbY2VudHJvaWRdKGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2VudHJvaWQpKSBvZiB0aGUgcGFzc2VkIExhdExuZ3MgKGZpcnN0IHJpbmcpIGZyb20gYSBwb2x5bGluZS5cclxuICAgKi9cclxuICBmdW5jdGlvbiBwb2x5bGluZUNlbnRlcihsYXRsbmdzLCBjcnMpIHtcclxuICBcdHZhciBpLCBoYWxmRGlzdCwgc2VnRGlzdCwgZGlzdCwgcDEsIHAyLCByYXRpbywgY2VudGVyO1xyXG5cclxuICBcdGlmICghbGF0bG5ncyB8fCBsYXRsbmdzLmxlbmd0aCA9PT0gMCkge1xyXG4gIFx0XHR0aHJvdyBuZXcgRXJyb3IoJ2xhdGxuZ3Mgbm90IHBhc3NlZCcpO1xyXG4gIFx0fVxyXG5cclxuICBcdGlmICghaXNGbGF0KGxhdGxuZ3MpKSB7XHJcbiAgXHRcdGNvbnNvbGUud2FybignbGF0bG5ncyBhcmUgbm90IGZsYXQhIE9ubHkgdGhlIGZpcnN0IHJpbmcgd2lsbCBiZSB1c2VkJyk7XHJcbiAgXHRcdGxhdGxuZ3MgPSBsYXRsbmdzWzBdO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBwb2ludHMgPSBbXTtcclxuICBcdGZvciAodmFyIGogaW4gbGF0bG5ncykge1xyXG4gIFx0XHRwb2ludHMucHVzaChjcnMucHJvamVjdCh0b0xhdExuZyhsYXRsbmdzW2pdKSkpO1xyXG4gIFx0fVxyXG5cclxuICBcdHZhciBsZW4gPSBwb2ludHMubGVuZ3RoO1xyXG5cclxuICBcdGZvciAoaSA9IDAsIGhhbGZEaXN0ID0gMDsgaSA8IGxlbiAtIDE7IGkrKykge1xyXG4gIFx0XHRoYWxmRGlzdCArPSBwb2ludHNbaV0uZGlzdGFuY2VUbyhwb2ludHNbaSArIDFdKSAvIDI7XHJcbiAgXHR9XHJcblxyXG4gIFx0Ly8gVGhlIGxpbmUgaXMgc28gc21hbGwgaW4gdGhlIGN1cnJlbnQgdmlldyB0aGF0IGFsbCBwb2ludHMgYXJlIG9uIHRoZSBzYW1lIHBpeGVsLlxyXG4gIFx0aWYgKGhhbGZEaXN0ID09PSAwKSB7XHJcbiAgXHRcdGNlbnRlciA9IHBvaW50c1swXTtcclxuICBcdH0gZWxzZSB7XHJcbiAgXHRcdGZvciAoaSA9IDAsIGRpc3QgPSAwOyBpIDwgbGVuIC0gMTsgaSsrKSB7XHJcbiAgXHRcdFx0cDEgPSBwb2ludHNbaV07XHJcbiAgXHRcdFx0cDIgPSBwb2ludHNbaSArIDFdO1xyXG4gIFx0XHRcdHNlZ0Rpc3QgPSBwMS5kaXN0YW5jZVRvKHAyKTtcclxuICBcdFx0XHRkaXN0ICs9IHNlZ0Rpc3Q7XHJcblxyXG4gIFx0XHRcdGlmIChkaXN0ID4gaGFsZkRpc3QpIHtcclxuICBcdFx0XHRcdHJhdGlvID0gKGRpc3QgLSBoYWxmRGlzdCkgLyBzZWdEaXN0O1xyXG4gIFx0XHRcdFx0Y2VudGVyID0gW1xyXG4gIFx0XHRcdFx0XHRwMi54IC0gcmF0aW8gKiAocDIueCAtIHAxLngpLFxyXG4gIFx0XHRcdFx0XHRwMi55IC0gcmF0aW8gKiAocDIueSAtIHAxLnkpXHJcbiAgXHRcdFx0XHRdO1xyXG4gIFx0XHRcdFx0YnJlYWs7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gY3JzLnVucHJvamVjdCh0b1BvaW50KGNlbnRlcikpO1xyXG4gIH1cblxuICB2YXIgTGluZVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIHNpbXBsaWZ5OiBzaW1wbGlmeSxcbiAgICBwb2ludFRvU2VnbWVudERpc3RhbmNlOiBwb2ludFRvU2VnbWVudERpc3RhbmNlLFxuICAgIGNsb3Nlc3RQb2ludE9uU2VnbWVudDogY2xvc2VzdFBvaW50T25TZWdtZW50LFxuICAgIGNsaXBTZWdtZW50OiBjbGlwU2VnbWVudCxcbiAgICBfZ2V0RWRnZUludGVyc2VjdGlvbjogX2dldEVkZ2VJbnRlcnNlY3Rpb24sXG4gICAgX2dldEJpdENvZGU6IF9nZXRCaXRDb2RlLFxuICAgIF9zcUNsb3Nlc3RQb2ludE9uU2VnbWVudDogX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50LFxuICAgIGlzRmxhdDogaXNGbGF0LFxuICAgIF9mbGF0OiBfZmxhdCxcbiAgICBwb2x5bGluZUNlbnRlcjogcG9seWxpbmVDZW50ZXJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgUG9seVV0aWxcclxuICAgKiBWYXJpb3VzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBwb2x5Z29uIGdlb21ldHJpZXMuXHJcbiAgICovXHJcblxyXG4gIC8qIEBmdW5jdGlvbiBjbGlwUG9seWdvbihwb2ludHM6IFBvaW50W10sIGJvdW5kczogQm91bmRzLCByb3VuZD86IEJvb2xlYW4pOiBQb2ludFtdXHJcbiAgICogQ2xpcHMgdGhlIHBvbHlnb24gZ2VvbWV0cnkgZGVmaW5lZCBieSB0aGUgZ2l2ZW4gYHBvaW50c2AgYnkgdGhlIGdpdmVuIGJvdW5kcyAodXNpbmcgdGhlIFtTdXRoZXJsYW5kLUhvZGdtYW4gYWxnb3JpdGhtXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9TdXRoZXJsYW5kJUUyJTgwJTkzSG9kZ21hbl9hbGdvcml0aG0pKS5cclxuICAgKiBVc2VkIGJ5IExlYWZsZXQgdG8gb25seSBzaG93IHBvbHlnb24gcG9pbnRzIHRoYXQgYXJlIG9uIHRoZSBzY3JlZW4gb3IgbmVhciwgaW5jcmVhc2luZ1xyXG4gICAqIHBlcmZvcm1hbmNlLiBOb3RlIHRoYXQgcG9seWdvbiBwb2ludHMgbmVlZHMgZGlmZmVyZW50IGFsZ29yaXRobSBmb3IgY2xpcHBpbmdcclxuICAgKiB0aGFuIHBvbHlsaW5lLCBzbyB0aGVyZSdzIGEgc2VwYXJhdGUgbWV0aG9kIGZvciBpdC5cclxuICAgKi9cclxuICBmdW5jdGlvbiBjbGlwUG9seWdvbihwb2ludHMsIGJvdW5kcywgcm91bmQpIHtcclxuICBcdHZhciBjbGlwcGVkUG9pbnRzLFxyXG4gIFx0ICAgIGVkZ2VzID0gWzEsIDQsIDIsIDhdLFxyXG4gIFx0ICAgIGksIGosIGssXHJcbiAgXHQgICAgYSwgYixcclxuICBcdCAgICBsZW4sIGVkZ2UsIHA7XHJcblxyXG4gIFx0Zm9yIChpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdHBvaW50c1tpXS5fY29kZSA9IF9nZXRCaXRDb2RlKHBvaW50c1tpXSwgYm91bmRzKTtcclxuICBcdH1cclxuXHJcbiAgXHQvLyBmb3IgZWFjaCBlZGdlIChsZWZ0LCBib3R0b20sIHJpZ2h0LCB0b3ApXHJcbiAgXHRmb3IgKGsgPSAwOyBrIDwgNDsgaysrKSB7XHJcbiAgXHRcdGVkZ2UgPSBlZGdlc1trXTtcclxuICBcdFx0Y2xpcHBlZFBvaW50cyA9IFtdO1xyXG5cclxuICBcdFx0Zm9yIChpID0gMCwgbGVuID0gcG9pbnRzLmxlbmd0aCwgaiA9IGxlbiAtIDE7IGkgPCBsZW47IGogPSBpKyspIHtcclxuICBcdFx0XHRhID0gcG9pbnRzW2ldO1xyXG4gIFx0XHRcdGIgPSBwb2ludHNbal07XHJcblxyXG4gIFx0XHRcdC8vIGlmIGEgaXMgaW5zaWRlIHRoZSBjbGlwIHdpbmRvd1xyXG4gIFx0XHRcdGlmICghKGEuX2NvZGUgJiBlZGdlKSkge1xyXG4gIFx0XHRcdFx0Ly8gaWYgYiBpcyBvdXRzaWRlIHRoZSBjbGlwIHdpbmRvdyAoYS0+YiBnb2VzIG91dCBvZiBzY3JlZW4pXHJcbiAgXHRcdFx0XHRpZiAoYi5fY29kZSAmIGVkZ2UpIHtcclxuICBcdFx0XHRcdFx0cCA9IF9nZXRFZGdlSW50ZXJzZWN0aW9uKGIsIGEsIGVkZ2UsIGJvdW5kcywgcm91bmQpO1xyXG4gIFx0XHRcdFx0XHRwLl9jb2RlID0gX2dldEJpdENvZGUocCwgYm91bmRzKTtcclxuICBcdFx0XHRcdFx0Y2xpcHBlZFBvaW50cy5wdXNoKHApO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdFx0Y2xpcHBlZFBvaW50cy5wdXNoKGEpO1xyXG5cclxuICBcdFx0XHQvLyBlbHNlIGlmIGIgaXMgaW5zaWRlIHRoZSBjbGlwIHdpbmRvdyAoYS0+YiBlbnRlcnMgdGhlIHNjcmVlbilcclxuICBcdFx0XHR9IGVsc2UgaWYgKCEoYi5fY29kZSAmIGVkZ2UpKSB7XHJcbiAgXHRcdFx0XHRwID0gX2dldEVkZ2VJbnRlcnNlY3Rpb24oYiwgYSwgZWRnZSwgYm91bmRzLCByb3VuZCk7XHJcbiAgXHRcdFx0XHRwLl9jb2RlID0gX2dldEJpdENvZGUocCwgYm91bmRzKTtcclxuICBcdFx0XHRcdGNsaXBwZWRQb2ludHMucHVzaChwKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cG9pbnRzID0gY2xpcHBlZFBvaW50cztcclxuICBcdH1cclxuXHJcbiAgXHRyZXR1cm4gcG9pbnRzO1xyXG4gIH1cclxuXHJcbiAgLyogQGZ1bmN0aW9uIHBvbHlnb25DZW50ZXIobGF0bG5nczogTGF0TG5nW10gY3JzOiBDUlMpOiBMYXRMbmdcclxuICAgKiBSZXR1cm5zIHRoZSBjZW50ZXIgKFtjZW50cm9pZF0oaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9DZW50cm9pZCkpIG9mIHRoZSBwYXNzZWQgTGF0TG5ncyAoZmlyc3QgcmluZykgZnJvbSBhIHBvbHlnb24uXHJcbiAgICovXHJcbiAgZnVuY3Rpb24gcG9seWdvbkNlbnRlcihsYXRsbmdzLCBjcnMpIHtcclxuICBcdHZhciBpLCBqLCBwMSwgcDIsIGYsIGFyZWEsIHgsIHksIGNlbnRlcjtcclxuXHJcbiAgXHRpZiAoIWxhdGxuZ3MgfHwgbGF0bG5ncy5sZW5ndGggPT09IDApIHtcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdsYXRsbmdzIG5vdCBwYXNzZWQnKTtcclxuICBcdH1cclxuXHJcbiAgXHRpZiAoIWlzRmxhdChsYXRsbmdzKSkge1xyXG4gIFx0XHRjb25zb2xlLndhcm4oJ2xhdGxuZ3MgYXJlIG5vdCBmbGF0ISBPbmx5IHRoZSBmaXJzdCByaW5nIHdpbGwgYmUgdXNlZCcpO1xyXG4gIFx0XHRsYXRsbmdzID0gbGF0bG5nc1swXTtcclxuICBcdH1cclxuXHJcbiAgXHR2YXIgcG9pbnRzID0gW107XHJcbiAgXHRmb3IgKHZhciBrIGluIGxhdGxuZ3MpIHtcclxuICBcdFx0cG9pbnRzLnB1c2goY3JzLnByb2plY3QodG9MYXRMbmcobGF0bG5nc1trXSkpKTtcclxuICBcdH1cclxuXHJcbiAgXHR2YXIgbGVuID0gcG9pbnRzLmxlbmd0aDtcclxuICBcdGFyZWEgPSB4ID0geSA9IDA7XHJcblxyXG4gIFx0Ly8gcG9seWdvbiBjZW50cm9pZCBhbGdvcml0aG07XHJcbiAgXHRmb3IgKGkgPSAwLCBqID0gbGVuIC0gMTsgaSA8IGxlbjsgaiA9IGkrKykge1xyXG4gIFx0XHRwMSA9IHBvaW50c1tpXTtcclxuICBcdFx0cDIgPSBwb2ludHNbal07XHJcblxyXG4gIFx0XHRmID0gcDEueSAqIHAyLnggLSBwMi55ICogcDEueDtcclxuICBcdFx0eCArPSAocDEueCArIHAyLngpICogZjtcclxuICBcdFx0eSArPSAocDEueSArIHAyLnkpICogZjtcclxuICBcdFx0YXJlYSArPSBmICogMztcclxuICBcdH1cclxuXHJcbiAgXHRpZiAoYXJlYSA9PT0gMCkge1xyXG4gIFx0XHQvLyBQb2x5Z29uIGlzIHNvIHNtYWxsIHRoYXQgYWxsIHBvaW50cyBhcmUgb24gc2FtZSBwaXhlbC5cclxuICBcdFx0Y2VudGVyID0gcG9pbnRzWzBdO1xyXG4gIFx0fSBlbHNlIHtcclxuICBcdFx0Y2VudGVyID0gW3ggLyBhcmVhLCB5IC8gYXJlYV07XHJcbiAgXHR9XHJcbiAgXHRyZXR1cm4gY3JzLnVucHJvamVjdCh0b1BvaW50KGNlbnRlcikpO1xyXG4gIH1cblxuICB2YXIgUG9seVV0aWwgPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIGNsaXBQb2x5Z29uOiBjbGlwUG9seWdvbixcbiAgICBwb2x5Z29uQ2VudGVyOiBwb2x5Z29uQ2VudGVyXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFByb2plY3Rpb25cclxuICAgKiBAc2VjdGlvblxyXG4gICAqIExlYWZsZXQgY29tZXMgd2l0aCBhIHNldCBvZiBhbHJlYWR5IGRlZmluZWQgUHJvamVjdGlvbnMgb3V0IG9mIHRoZSBib3g6XHJcbiAgICpcclxuICAgKiBAcHJvamVjdGlvbiBMLlByb2plY3Rpb24uTG9uTGF0XHJcbiAgICpcclxuICAgKiBFcXVpcmVjdGFuZ3VsYXIsIG9yIFBsYXRlIENhcnJlZSBwcm9qZWN0aW9uIOKAlCB0aGUgbW9zdCBzaW1wbGUgcHJvamVjdGlvbixcclxuICAgKiBtb3N0bHkgdXNlZCBieSBHSVMgZW50aHVzaWFzdHMuIERpcmVjdGx5IG1hcHMgYHhgIGFzIGxvbmdpdHVkZSwgYW5kIGB5YCBhc1xyXG4gICAqIGxhdGl0dWRlLiBBbHNvIHN1aXRhYmxlIGZvciBmbGF0IHdvcmxkcywgZS5nLiBnYW1lIG1hcHMuIFVzZWQgYnkgdGhlXHJcbiAgICogYEVQU0c6NDMyNmAgYW5kIGBTaW1wbGVgIENSUy5cclxuICAgKi9cclxuXHJcbiAgdmFyIExvbkxhdCA9IHtcclxuICBcdHByb2plY3Q6IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChsYXRsbmcubG5nLCBsYXRsbmcubGF0KTtcclxuICBcdH0sXHJcblxyXG4gIFx0dW5wcm9qZWN0OiBmdW5jdGlvbiAocG9pbnQpIHtcclxuICBcdFx0cmV0dXJuIG5ldyBMYXRMbmcocG9pbnQueSwgcG9pbnQueCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdGJvdW5kczogbmV3IEJvdW5kcyhbLTE4MCwgLTkwXSwgWzE4MCwgOTBdKVxyXG4gIH07XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIFByb2plY3Rpb25cclxuICAgKiBAcHJvamVjdGlvbiBMLlByb2plY3Rpb24uTWVyY2F0b3JcclxuICAgKlxyXG4gICAqIEVsbGlwdGljYWwgTWVyY2F0b3IgcHJvamVjdGlvbiDigJQgbW9yZSBjb21wbGV4IHRoYW4gU3BoZXJpY2FsIE1lcmNhdG9yLiBBc3N1bWVzIHRoYXQgRWFydGggaXMgYW4gZWxsaXBzb2lkLiBVc2VkIGJ5IHRoZSBFUFNHOjMzOTUgQ1JTLlxyXG4gICAqL1xyXG5cclxuICB2YXIgTWVyY2F0b3IgPSB7XHJcbiAgXHRSOiA2Mzc4MTM3LFxyXG4gIFx0Ul9NSU5PUjogNjM1Njc1Mi4zMTQyNDUxNzksXHJcblxyXG4gIFx0Ym91bmRzOiBuZXcgQm91bmRzKFstMjAwMzc1MDguMzQyNzksIC0xNTQ5NjU3MC43Mzk3Ml0sIFsyMDAzNzUwOC4zNDI3OSwgMTg3NjQ2NTYuMjMxMzhdKSxcclxuXHJcbiAgXHRwcm9qZWN0OiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdHZhciBkID0gTWF0aC5QSSAvIDE4MCxcclxuICBcdFx0ICAgIHIgPSB0aGlzLlIsXHJcbiAgXHRcdCAgICB5ID0gbGF0bG5nLmxhdCAqIGQsXHJcbiAgXHRcdCAgICB0bXAgPSB0aGlzLlJfTUlOT1IgLyByLFxyXG4gIFx0XHQgICAgZSA9IE1hdGguc3FydCgxIC0gdG1wICogdG1wKSxcclxuICBcdFx0ICAgIGNvbiA9IGUgKiBNYXRoLnNpbih5KTtcclxuXHJcbiAgXHRcdHZhciB0cyA9IE1hdGgudGFuKE1hdGguUEkgLyA0IC0geSAvIDIpIC8gTWF0aC5wb3coKDEgLSBjb24pIC8gKDEgKyBjb24pLCBlIC8gMik7XHJcbiAgXHRcdHkgPSAtciAqIE1hdGgubG9nKE1hdGgubWF4KHRzLCAxRS0xMCkpO1xyXG5cclxuICBcdFx0cmV0dXJuIG5ldyBQb2ludChsYXRsbmcubG5nICogZCAqIHIsIHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHR1bnByb2plY3Q6IGZ1bmN0aW9uIChwb2ludCkge1xyXG4gIFx0XHR2YXIgZCA9IDE4MCAvIE1hdGguUEksXHJcbiAgXHRcdCAgICByID0gdGhpcy5SLFxyXG4gIFx0XHQgICAgdG1wID0gdGhpcy5SX01JTk9SIC8gcixcclxuICBcdFx0ICAgIGUgPSBNYXRoLnNxcnQoMSAtIHRtcCAqIHRtcCksXHJcbiAgXHRcdCAgICB0cyA9IE1hdGguZXhwKC1wb2ludC55IC8gciksXHJcbiAgXHRcdCAgICBwaGkgPSBNYXRoLlBJIC8gMiAtIDIgKiBNYXRoLmF0YW4odHMpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGRwaGkgPSAwLjEsIGNvbjsgaSA8IDE1ICYmIE1hdGguYWJzKGRwaGkpID4gMWUtNzsgaSsrKSB7XHJcbiAgXHRcdFx0Y29uID0gZSAqIE1hdGguc2luKHBoaSk7XHJcbiAgXHRcdFx0Y29uID0gTWF0aC5wb3coKDEgLSBjb24pIC8gKDEgKyBjb24pLCBlIC8gMik7XHJcbiAgXHRcdFx0ZHBoaSA9IE1hdGguUEkgLyAyIC0gMiAqIE1hdGguYXRhbih0cyAqIGNvbikgLSBwaGk7XHJcbiAgXHRcdFx0cGhpICs9IGRwaGk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiBuZXcgTGF0TG5nKHBoaSAqIGQsIHBvaW50LnggKiBkIC8gcik7XHJcbiAgXHR9XHJcbiAgfTtcblxuICAvKlxuICAgKiBAY2xhc3MgUHJvamVjdGlvblxuXG4gICAqIEFuIG9iamVjdCB3aXRoIG1ldGhvZHMgZm9yIHByb2plY3RpbmcgZ2VvZ3JhcGhpY2FsIGNvb3JkaW5hdGVzIG9mIHRoZSB3b3JsZCBvbnRvXG4gICAqIGEgZmxhdCBzdXJmYWNlIChhbmQgYmFjaykuIFNlZSBbTWFwIHByb2plY3Rpb25dKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL01hcF9wcm9qZWN0aW9uKS5cblxuICAgKiBAcHJvcGVydHkgYm91bmRzOiBCb3VuZHNcbiAgICogVGhlIGJvdW5kcyAoc3BlY2lmaWVkIGluIENSUyB1bml0cykgd2hlcmUgdGhlIHByb2plY3Rpb24gaXMgdmFsaWRcblxuICAgKiBAbWV0aG9kIHByb2plY3QobGF0bG5nOiBMYXRMbmcpOiBQb2ludFxuICAgKiBQcm9qZWN0cyBnZW9ncmFwaGljYWwgY29vcmRpbmF0ZXMgaW50byBhIDJEIHBvaW50LlxuICAgKiBPbmx5IGFjY2VwdHMgYWN0dWFsIGBMLkxhdExuZ2AgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxuXG4gICAqIEBtZXRob2QgdW5wcm9qZWN0KHBvaW50OiBQb2ludCk6IExhdExuZ1xuICAgKiBUaGUgaW52ZXJzZSBvZiBgcHJvamVjdGAuIFByb2plY3RzIGEgMkQgcG9pbnQgaW50byBhIGdlb2dyYXBoaWNhbCBsb2NhdGlvbi5cbiAgICogT25seSBhY2NlcHRzIGFjdHVhbCBgTC5Qb2ludGAgaW5zdGFuY2VzLCBub3QgYXJyYXlzLlxuXG4gICAqIE5vdGUgdGhhdCB0aGUgcHJvamVjdGlvbiBpbnN0YW5jZXMgZG8gbm90IGluaGVyaXQgZnJvbSBMZWFmbGV0J3MgYENsYXNzYCBvYmplY3QsXG4gICAqIGFuZCBjYW4ndCBiZSBpbnN0YW50aWF0ZWQuIEFsc28sIG5ldyBjbGFzc2VzIGNhbid0IGluaGVyaXQgZnJvbSB0aGVtLFxuICAgKiBhbmQgbWV0aG9kcyBjYW4ndCBiZSBhZGRlZCB0byB0aGVtIHdpdGggdGhlIGBpbmNsdWRlYCBmdW5jdGlvbi5cblxuICAgKi9cblxuICB2YXIgaW5kZXggPSB7XG4gICAgX19wcm90b19fOiBudWxsLFxuICAgIExvbkxhdDogTG9uTGF0LFxuICAgIE1lcmNhdG9yOiBNZXJjYXRvcixcbiAgICBTcGhlcmljYWxNZXJjYXRvcjogU3BoZXJpY2FsTWVyY2F0b3JcbiAgfTtcblxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgQ1JTXHJcbiAgICogQGNycyBMLkNSUy5FUFNHMzM5NVxyXG4gICAqXHJcbiAgICogUmFyZWx5IHVzZWQgYnkgc29tZSBjb21tZXJjaWFsIHRpbGUgcHJvdmlkZXJzLiBVc2VzIEVsbGlwdGljYWwgTWVyY2F0b3IgcHJvamVjdGlvbi5cclxuICAgKi9cclxuICB2YXIgRVBTRzMzOTUgPSBleHRlbmQoe30sIEVhcnRoLCB7XHJcbiAgXHRjb2RlOiAnRVBTRzozMzk1JyxcclxuICBcdHByb2plY3Rpb246IE1lcmNhdG9yLFxyXG5cclxuICBcdHRyYW5zZm9ybWF0aW9uOiAoZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgc2NhbGUgPSAwLjUgLyAoTWF0aC5QSSAqIE1lcmNhdG9yLlIpO1xyXG4gIFx0XHRyZXR1cm4gdG9UcmFuc2Zvcm1hdGlvbihzY2FsZSwgMC41LCAtc2NhbGUsIDAuNSk7XHJcbiAgXHR9KCkpXHJcbiAgfSk7XG5cbiAgLypcclxuICAgKiBAbmFtZXNwYWNlIENSU1xyXG4gICAqIEBjcnMgTC5DUlMuRVBTRzQzMjZcclxuICAgKlxyXG4gICAqIEEgY29tbW9uIENSUyBhbW9uZyBHSVMgZW50aHVzaWFzdHMuIFVzZXMgc2ltcGxlIEVxdWlyZWN0YW5ndWxhciBwcm9qZWN0aW9uLlxyXG4gICAqXHJcbiAgICogTGVhZmxldCAxLjAueCBjb21wbGllcyB3aXRoIHRoZSBbVE1TIGNvb3JkaW5hdGUgc2NoZW1lIGZvciBFUFNHOjQzMjZdKGh0dHBzOi8vd2lraS5vc2dlby5vcmcvd2lraS9UaWxlX01hcF9TZXJ2aWNlX1NwZWNpZmljYXRpb24jZ2xvYmFsLWdlb2RldGljKSxcclxuICAgKiB3aGljaCBpcyBhIGJyZWFraW5nIGNoYW5nZSBmcm9tIDAuNy54IGJlaGF2aW91ci4gIElmIHlvdSBhcmUgdXNpbmcgYSBgVGlsZUxheWVyYFxyXG4gICAqIHdpdGggdGhpcyBDUlMsIGVuc3VyZSB0aGF0IHRoZXJlIGFyZSB0d28gMjU2eDI1NiBwaXhlbCB0aWxlcyBjb3ZlcmluZyB0aGVcclxuICAgKiB3aG9sZSBlYXJ0aCBhdCB6b29tIGxldmVsIHplcm8sIGFuZCB0aGF0IHRoZSB0aWxlIGNvb3JkaW5hdGUgb3JpZ2luIGlzICgtMTgwLCs5MCksXHJcbiAgICogb3IgKC0xODAsLTkwKSBmb3IgYFRpbGVMYXllcmBzIHdpdGggW3RoZSBgdG1zYCBvcHRpb25dKCN0aWxlbGF5ZXItdG1zKSBzZXQuXHJcbiAgICovXHJcblxyXG4gIHZhciBFUFNHNDMyNiA9IGV4dGVuZCh7fSwgRWFydGgsIHtcclxuICBcdGNvZGU6ICdFUFNHOjQzMjYnLFxyXG4gIFx0cHJvamVjdGlvbjogTG9uTGF0LFxyXG4gIFx0dHJhbnNmb3JtYXRpb246IHRvVHJhbnNmb3JtYXRpb24oMSAvIDE4MCwgMSwgLTEgLyAxODAsIDAuNSlcclxuICB9KTtcblxuICAvKlxuICAgKiBAbmFtZXNwYWNlIENSU1xuICAgKiBAY3JzIEwuQ1JTLlNpbXBsZVxuICAgKlxuICAgKiBBIHNpbXBsZSBDUlMgdGhhdCBtYXBzIGxvbmdpdHVkZSBhbmQgbGF0aXR1ZGUgaW50byBgeGAgYW5kIGB5YCBkaXJlY3RseS5cbiAgICogTWF5IGJlIHVzZWQgZm9yIG1hcHMgb2YgZmxhdCBzdXJmYWNlcyAoZS5nLiBnYW1lIG1hcHMpLiBOb3RlIHRoYXQgdGhlIGB5YFxuICAgKiBheGlzIHNob3VsZCBzdGlsbCBiZSBpbnZlcnRlZCAoZ29pbmcgZnJvbSBib3R0b20gdG8gdG9wKS4gYGRpc3RhbmNlKClgIHJldHVybnNcbiAgICogc2ltcGxlIGV1Y2xpZGVhbiBkaXN0YW5jZS5cbiAgICovXG5cbiAgdmFyIFNpbXBsZSA9IGV4dGVuZCh7fSwgQ1JTLCB7XG4gIFx0cHJvamVjdGlvbjogTG9uTGF0LFxuICBcdHRyYW5zZm9ybWF0aW9uOiB0b1RyYW5zZm9ybWF0aW9uKDEsIDAsIC0xLCAwKSxcblxuICBcdHNjYWxlOiBmdW5jdGlvbiAoem9vbSkge1xuICBcdFx0cmV0dXJuIE1hdGgucG93KDIsIHpvb20pO1xuICBcdH0sXG5cbiAgXHR6b29tOiBmdW5jdGlvbiAoc2NhbGUpIHtcbiAgXHRcdHJldHVybiBNYXRoLmxvZyhzY2FsZSkgLyBNYXRoLkxOMjtcbiAgXHR9LFxuXG4gIFx0ZGlzdGFuY2U6IGZ1bmN0aW9uIChsYXRsbmcxLCBsYXRsbmcyKSB7XG4gIFx0XHR2YXIgZHggPSBsYXRsbmcyLmxuZyAtIGxhdGxuZzEubG5nLFxuICBcdFx0ICAgIGR5ID0gbGF0bG5nMi5sYXQgLSBsYXRsbmcxLmxhdDtcblxuICBcdFx0cmV0dXJuIE1hdGguc3FydChkeCAqIGR4ICsgZHkgKiBkeSk7XG4gIFx0fSxcblxuICBcdGluZmluaXRlOiB0cnVlXG4gIH0pO1xuXG4gIENSUy5FYXJ0aCA9IEVhcnRoO1xuICBDUlMuRVBTRzMzOTUgPSBFUFNHMzM5NTtcbiAgQ1JTLkVQU0czODU3ID0gRVBTRzM4NTc7XG4gIENSUy5FUFNHOTAwOTEzID0gRVBTRzkwMDkxMztcbiAgQ1JTLkVQU0c0MzI2ID0gRVBTRzQzMjY7XG4gIENSUy5TaW1wbGUgPSBTaW1wbGU7XG5cbiAgLypcbiAgICogQGNsYXNzIExheWVyXG4gICAqIEBpbmhlcml0cyBFdmVudGVkXG4gICAqIEBha2EgTC5MYXllclxuICAgKiBAYWthIElMYXllclxuICAgKlxuICAgKiBBIHNldCBvZiBtZXRob2RzIGZyb20gdGhlIExheWVyIGJhc2UgY2xhc3MgdGhhdCBhbGwgTGVhZmxldCBsYXllcnMgdXNlLlxuICAgKiBJbmhlcml0cyBhbGwgbWV0aG9kcywgb3B0aW9ucyBhbmQgZXZlbnRzIGZyb20gYEwuRXZlbnRlZGAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBsYXllciA9IEwubWFya2VyKGxhdGxuZykuYWRkVG8obWFwKTtcbiAgICogbGF5ZXIuYWRkVG8obWFwKTtcbiAgICogbGF5ZXIucmVtb3ZlKCk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBAZXZlbnQgYWRkOiBFdmVudFxuICAgKiBGaXJlZCBhZnRlciB0aGUgbGF5ZXIgaXMgYWRkZWQgdG8gYSBtYXBcbiAgICpcbiAgICogQGV2ZW50IHJlbW92ZTogRXZlbnRcbiAgICogRmlyZWQgYWZ0ZXIgdGhlIGxheWVyIGlzIHJlbW92ZWQgZnJvbSBhIG1hcFxuICAgKi9cblxuXG4gIHZhciBMYXllciA9IEV2ZW50ZWQuZXh0ZW5kKHtcblxuICBcdC8vIENsYXNzZXMgZXh0ZW5kaW5nIGBMLkxheWVyYCB3aWxsIGluaGVyaXQgdGhlIGZvbGxvd2luZyBvcHRpb25zOlxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gcGFuZTogU3RyaW5nID0gJ292ZXJsYXlQYW5lJ1xuICBcdFx0Ly8gQnkgZGVmYXVsdCB0aGUgbGF5ZXIgd2lsbCBiZSBhZGRlZCB0byB0aGUgbWFwJ3MgW292ZXJsYXkgcGFuZV0oI21hcC1vdmVybGF5cGFuZSkuIE92ZXJyaWRpbmcgdGhpcyBvcHRpb24gd2lsbCBjYXVzZSB0aGUgbGF5ZXIgdG8gYmUgcGxhY2VkIG9uIGFub3RoZXIgcGFuZSBieSBkZWZhdWx0LlxuICBcdFx0cGFuZTogJ292ZXJsYXlQYW5lJyxcblxuICBcdFx0Ly8gQG9wdGlvbiBhdHRyaWJ1dGlvbjogU3RyaW5nID0gbnVsbFxuICBcdFx0Ly8gU3RyaW5nIHRvIGJlIHNob3duIGluIHRoZSBhdHRyaWJ1dGlvbiBjb250cm9sLCBlLmcuIFwiwqkgT3BlblN0cmVldE1hcCBjb250cmlidXRvcnNcIi4gSXQgZGVzY3JpYmVzIHRoZSBsYXllciBkYXRhIGFuZCBpcyBvZnRlbiBhIGxlZ2FsIG9ibGlnYXRpb24gdG93YXJkcyBjb3B5cmlnaHQgaG9sZGVycyBhbmQgdGlsZSBwcm92aWRlcnMuXG4gIFx0XHRhdHRyaWJ1dGlvbjogbnVsbCxcblxuICBcdFx0YnViYmxpbmdNb3VzZUV2ZW50czogdHJ1ZVxuICBcdH0sXG5cbiAgXHQvKiBAc2VjdGlvblxuICBcdCAqIENsYXNzZXMgZXh0ZW5kaW5nIGBMLkxheWVyYCB3aWxsIGluaGVyaXQgdGhlIGZvbGxvd2luZyBtZXRob2RzOlxuICBcdCAqXG4gIFx0ICogQG1ldGhvZCBhZGRUbyhtYXA6IE1hcHxMYXllckdyb3VwKTogdGhpc1xuICBcdCAqIEFkZHMgdGhlIGxheWVyIHRvIHRoZSBnaXZlbiBtYXAgb3IgbGF5ZXIgZ3JvdXAuXG4gIFx0ICovXG4gIFx0YWRkVG86IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdG1hcC5hZGRMYXllcih0aGlzKTtcbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZTogdGhpc1xuICBcdC8vIFJlbW92ZXMgdGhlIGxheWVyIGZyb20gdGhlIG1hcCBpdCBpcyBjdXJyZW50bHkgYWN0aXZlIG9uLlxuICBcdHJlbW92ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMucmVtb3ZlRnJvbSh0aGlzLl9tYXAgfHwgdGhpcy5fbWFwVG9BZGQpO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUZyb20obWFwOiBNYXApOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgbGF5ZXIgZnJvbSB0aGUgZ2l2ZW4gbWFwXG4gIFx0Ly9cbiAgXHQvLyBAYWx0ZXJuYXRpdmVcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUZyb20oZ3JvdXA6IExheWVyR3JvdXApOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgbGF5ZXIgZnJvbSB0aGUgZ2l2ZW4gYExheWVyR3JvdXBgXG4gIFx0cmVtb3ZlRnJvbTogZnVuY3Rpb24gKG9iaikge1xuICBcdFx0aWYgKG9iaikge1xuICBcdFx0XHRvYmoucmVtb3ZlTGF5ZXIodGhpcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRQYW5lKG5hbWU/IDogU3RyaW5nKTogSFRNTEVsZW1lbnRcbiAgXHQvLyBSZXR1cm5zIHRoZSBgSFRNTEVsZW1lbnRgIHJlcHJlc2VudGluZyB0aGUgbmFtZWQgcGFuZSBvbiB0aGUgbWFwLiBJZiBgbmFtZWAgaXMgb21pdHRlZCwgcmV0dXJucyB0aGUgcGFuZSBmb3IgdGhpcyBsYXllci5cbiAgXHRnZXRQYW5lOiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0cmV0dXJuIHRoaXMuX21hcC5nZXRQYW5lKG5hbWUgPyAodGhpcy5vcHRpb25zW25hbWVdIHx8IG5hbWUpIDogdGhpcy5vcHRpb25zLnBhbmUpO1xuICBcdH0sXG5cbiAgXHRhZGRJbnRlcmFjdGl2ZVRhcmdldDogZnVuY3Rpb24gKHRhcmdldEVsKSB7XG4gIFx0XHR0aGlzLl9tYXAuX3RhcmdldHNbc3RhbXAodGFyZ2V0RWwpXSA9IHRoaXM7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0cmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQ6IGZ1bmN0aW9uICh0YXJnZXRFbCkge1xuICBcdFx0ZGVsZXRlIHRoaXMuX21hcC5fdGFyZ2V0c1tzdGFtcCh0YXJnZXRFbCldO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0QXR0cmlidXRpb246IFN0cmluZ1xuICBcdC8vIFVzZWQgYnkgdGhlIGBhdHRyaWJ1dGlvbiBjb250cm9sYCwgcmV0dXJucyB0aGUgW2F0dHJpYnV0aW9uIG9wdGlvbl0oI2dyaWRsYXllci1hdHRyaWJ1dGlvbikuXG4gIFx0Z2V0QXR0cmlidXRpb246IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMuYXR0cmlidXRpb247XG4gIFx0fSxcblxuICBcdF9sYXllckFkZDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXAgPSBlLnRhcmdldDtcblxuICBcdFx0Ly8gY2hlY2sgaW4gY2FzZSBsYXllciBnZXRzIGFkZGVkIGFuZCB0aGVuIHJlbW92ZWQgYmVmb3JlIHRoZSBtYXAgaXMgcmVhZHlcbiAgXHRcdGlmICghbWFwLmhhc0xheWVyKHRoaXMpKSB7IHJldHVybjsgfVxuXG4gIFx0XHR0aGlzLl9tYXAgPSBtYXA7XG4gIFx0XHR0aGlzLl96b29tQW5pbWF0ZWQgPSBtYXAuX3pvb21BbmltYXRlZDtcblxuICBcdFx0aWYgKHRoaXMuZ2V0RXZlbnRzKSB7XG4gIFx0XHRcdHZhciBldmVudHMgPSB0aGlzLmdldEV2ZW50cygpO1xuICBcdFx0XHRtYXAub24oZXZlbnRzLCB0aGlzKTtcbiAgXHRcdFx0dGhpcy5vbmNlKCdyZW1vdmUnLCBmdW5jdGlvbiAoKSB7XG4gIFx0XHRcdFx0bWFwLm9mZihldmVudHMsIHRoaXMpO1xuICBcdFx0XHR9LCB0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5vbkFkZChtYXApO1xuXG4gIFx0XHR0aGlzLmZpcmUoJ2FkZCcpO1xuICBcdFx0bWFwLmZpcmUoJ2xheWVyYWRkJywge2xheWVyOiB0aGlzfSk7XG4gIFx0fVxuICB9KTtcblxuICAvKiBAc2VjdGlvbiBFeHRlbnNpb24gbWV0aG9kc1xuICAgKiBAdW5pbmhlcml0YWJsZVxuICAgKlxuICAgKiBFdmVyeSBsYXllciBzaG91bGQgZXh0ZW5kIGZyb20gYEwuTGF5ZXJgIGFuZCAocmUtKWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZHMuXG4gICAqXG4gICAqIEBtZXRob2Qgb25BZGQobWFwOiBNYXApOiB0aGlzXG4gICAqIFNob3VsZCBjb250YWluIGNvZGUgdGhhdCBjcmVhdGVzIERPTSBlbGVtZW50cyBmb3IgdGhlIGxheWVyLCBhZGRzIHRoZW0gdG8gYG1hcCBwYW5lc2Agd2hlcmUgdGhleSBzaG91bGQgYmVsb25nIGFuZCBwdXRzIGxpc3RlbmVycyBvbiByZWxldmFudCBtYXAgZXZlbnRzLiBDYWxsZWQgb24gW2BtYXAuYWRkTGF5ZXIobGF5ZXIpYF0oI21hcC1hZGRsYXllcikuXG4gICAqXG4gICAqIEBtZXRob2Qgb25SZW1vdmUobWFwOiBNYXApOiB0aGlzXG4gICAqIFNob3VsZCBjb250YWluIGFsbCBjbGVhbiB1cCBjb2RlIHRoYXQgcmVtb3ZlcyB0aGUgbGF5ZXIncyBlbGVtZW50cyBmcm9tIHRoZSBET00gYW5kIHJlbW92ZXMgbGlzdGVuZXJzIHByZXZpb3VzbHkgYWRkZWQgaW4gW2BvbkFkZGBdKCNsYXllci1vbmFkZCkuIENhbGxlZCBvbiBbYG1hcC5yZW1vdmVMYXllcihsYXllcilgXSgjbWFwLXJlbW92ZWxheWVyKS5cbiAgICpcbiAgICogQG1ldGhvZCBnZXRFdmVudHMoKTogT2JqZWN0XG4gICAqIFRoaXMgb3B0aW9uYWwgbWV0aG9kIHNob3VsZCByZXR1cm4gYW4gb2JqZWN0IGxpa2UgYHsgdmlld3Jlc2V0OiB0aGlzLl9yZXNldCB9YCBmb3IgW2BhZGRFdmVudExpc3RlbmVyYF0oI2V2ZW50ZWQtYWRkZXZlbnRsaXN0ZW5lcikuIFRoZSBldmVudCBoYW5kbGVycyBpbiB0aGlzIG9iamVjdCB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgYWRkZWQgYW5kIHJlbW92ZWQgZnJvbSB0aGUgbWFwIHdpdGggeW91ciBsYXllci5cbiAgICpcbiAgICogQG1ldGhvZCBnZXRBdHRyaWJ1dGlvbigpOiBTdHJpbmdcbiAgICogVGhpcyBvcHRpb25hbCBtZXRob2Qgc2hvdWxkIHJldHVybiBhIHN0cmluZyBjb250YWluaW5nIEhUTUwgdG8gYmUgc2hvd24gb24gdGhlIGBBdHRyaWJ1dGlvbiBjb250cm9sYCB3aGVuZXZlciB0aGUgbGF5ZXIgaXMgdmlzaWJsZS5cbiAgICpcbiAgICogQG1ldGhvZCBiZWZvcmVBZGQobWFwOiBNYXApOiB0aGlzXG4gICAqIE9wdGlvbmFsIG1ldGhvZC4gQ2FsbGVkIG9uIFtgbWFwLmFkZExheWVyKGxheWVyKWBdKCNtYXAtYWRkbGF5ZXIpLCBiZWZvcmUgdGhlIGxheWVyIGlzIGFkZGVkIHRvIHRoZSBtYXAsIGJlZm9yZSBldmVudHMgYXJlIGluaXRpYWxpemVkLCB3aXRob3V0IHdhaXRpbmcgdW50aWwgdGhlIG1hcCBpcyBpbiBhIHVzYWJsZSBzdGF0ZS4gVXNlIGZvciBlYXJseSBpbml0aWFsaXphdGlvbiBvbmx5LlxuICAgKi9cblxuXG4gIC8qIEBuYW1lc3BhY2UgTWFwXG4gICAqIEBzZWN0aW9uIExheWVyIGV2ZW50c1xuICAgKlxuICAgKiBAZXZlbnQgbGF5ZXJhZGQ6IExheWVyRXZlbnRcbiAgICogRmlyZWQgd2hlbiBhIG5ldyBsYXllciBpcyBhZGRlZCB0byB0aGUgbWFwLlxuICAgKlxuICAgKiBAZXZlbnQgbGF5ZXJyZW1vdmU6IExheWVyRXZlbnRcbiAgICogRmlyZWQgd2hlbiBzb21lIGxheWVyIGlzIHJlbW92ZWQgZnJvbSB0aGUgbWFwXG4gICAqXG4gICAqIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcbiAgICovXG4gIE1hcC5pbmNsdWRlKHtcbiAgXHQvLyBAbWV0aG9kIGFkZExheWVyKGxheWVyOiBMYXllcik6IHRoaXNcbiAgXHQvLyBBZGRzIHRoZSBnaXZlbiBsYXllciB0byB0aGUgbWFwXG4gIFx0YWRkTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCFsYXllci5fbGF5ZXJBZGQpIHtcbiAgXHRcdFx0dGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgb2JqZWN0IGlzIG5vdCBhIExheWVyLicpO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgaWQgPSBzdGFtcChsYXllcik7XG4gIFx0XHRpZiAodGhpcy5fbGF5ZXJzW2lkXSkgeyByZXR1cm4gdGhpczsgfVxuICBcdFx0dGhpcy5fbGF5ZXJzW2lkXSA9IGxheWVyO1xuXG4gIFx0XHRsYXllci5fbWFwVG9BZGQgPSB0aGlzO1xuXG4gIFx0XHRpZiAobGF5ZXIuYmVmb3JlQWRkKSB7XG4gIFx0XHRcdGxheWVyLmJlZm9yZUFkZCh0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy53aGVuUmVhZHkobGF5ZXIuX2xheWVyQWRkLCBsYXllcik7XG5cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGxheWVyOiBMYXllcik6IHRoaXNcbiAgXHQvLyBSZW1vdmVzIHRoZSBnaXZlbiBsYXllciBmcm9tIHRoZSBtYXAuXG4gIFx0cmVtb3ZlTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIGlkID0gc3RhbXAobGF5ZXIpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX2xheWVyc1tpZF0pIHsgcmV0dXJuIHRoaXM7IH1cblxuICBcdFx0aWYgKHRoaXMuX2xvYWRlZCkge1xuICBcdFx0XHRsYXllci5vblJlbW92ZSh0aGlzKTtcbiAgXHRcdH1cblxuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tpZF07XG5cbiAgXHRcdGlmICh0aGlzLl9sb2FkZWQpIHtcbiAgXHRcdFx0dGhpcy5maXJlKCdsYXllcnJlbW92ZScsIHtsYXllcjogbGF5ZXJ9KTtcbiAgXHRcdFx0bGF5ZXIuZmlyZSgncmVtb3ZlJyk7XG4gIFx0XHR9XG5cbiAgXHRcdGxheWVyLl9tYXAgPSBsYXllci5fbWFwVG9BZGQgPSBudWxsO1xuXG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBoYXNMYXllcihsYXllcjogTGF5ZXIpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGdpdmVuIGxheWVyIGlzIGN1cnJlbnRseSBhZGRlZCB0byB0aGUgbWFwXG4gIFx0aGFzTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0cmV0dXJuIHN0YW1wKGxheWVyKSBpbiB0aGlzLl9sYXllcnM7XG4gIFx0fSxcblxuICBcdC8qIEBtZXRob2QgZWFjaExheWVyKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcbiAgXHQgKiBJdGVyYXRlcyBvdmVyIHRoZSBsYXllcnMgb2YgdGhlIG1hcCwgb3B0aW9uYWxseSBzcGVjaWZ5aW5nIGNvbnRleHQgb2YgdGhlIGl0ZXJhdG9yIGZ1bmN0aW9uLlxuICBcdCAqIGBgYFxuICBcdCAqIG1hcC5lYWNoTGF5ZXIoZnVuY3Rpb24obGF5ZXIpe1xuICBcdCAqICAgICBsYXllci5iaW5kUG9wdXAoJ0hlbGxvJyk7XG4gIFx0ICogfSk7XG4gIFx0ICogYGBgXG4gIFx0ICovXG4gIFx0ZWFjaExheWVyOiBmdW5jdGlvbiAobWV0aG9kLCBjb250ZXh0KSB7XG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2xheWVycykge1xuICBcdFx0XHRtZXRob2QuY2FsbChjb250ZXh0LCB0aGlzLl9sYXllcnNbaV0pO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdF9hZGRMYXllcnM6IGZ1bmN0aW9uIChsYXllcnMpIHtcbiAgXHRcdGxheWVycyA9IGxheWVycyA/IChpc0FycmF5KGxheWVycykgPyBsYXllcnMgOiBbbGF5ZXJzXSkgOiBbXTtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IGxheWVycy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHR0aGlzLmFkZExheWVyKGxheWVyc1tpXSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9hZGRab29tTGltaXQ6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCFpc05hTihsYXllci5vcHRpb25zLm1heFpvb20pIHx8ICFpc05hTihsYXllci5vcHRpb25zLm1pblpvb20pKSB7XG4gIFx0XHRcdHRoaXMuX3pvb21Cb3VuZExheWVyc1tzdGFtcChsYXllcildID0gbGF5ZXI7XG4gIFx0XHRcdHRoaXMuX3VwZGF0ZVpvb21MZXZlbHMoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3JlbW92ZVpvb21MaW1pdDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgaWQgPSBzdGFtcChsYXllcik7XG5cbiAgXHRcdGlmICh0aGlzLl96b29tQm91bmRMYXllcnNbaWRdKSB7XG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl96b29tQm91bmRMYXllcnNbaWRdO1xuICBcdFx0XHR0aGlzLl91cGRhdGVab29tTGV2ZWxzKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVab29tTGV2ZWxzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbWluWm9vbSA9IEluZmluaXR5LFxuICBcdFx0ICAgIG1heFpvb20gPSAtSW5maW5pdHksXG4gIFx0XHQgICAgb2xkWm9vbVNwYW4gPSB0aGlzLl9nZXRab29tU3BhbigpO1xuXG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX3pvb21Cb3VuZExheWVycykge1xuICBcdFx0XHR2YXIgb3B0aW9ucyA9IHRoaXMuX3pvb21Cb3VuZExheWVyc1tpXS5vcHRpb25zO1xuXG4gIFx0XHRcdG1pblpvb20gPSBvcHRpb25zLm1pblpvb20gPT09IHVuZGVmaW5lZCA/IG1pblpvb20gOiBNYXRoLm1pbihtaW5ab29tLCBvcHRpb25zLm1pblpvb20pO1xuICBcdFx0XHRtYXhab29tID0gb3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgPyBtYXhab29tIDogTWF0aC5tYXgobWF4Wm9vbSwgb3B0aW9ucy5tYXhab29tKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fbGF5ZXJzTWF4Wm9vbSA9IG1heFpvb20gPT09IC1JbmZpbml0eSA/IHVuZGVmaW5lZCA6IG1heFpvb207XG4gIFx0XHR0aGlzLl9sYXllcnNNaW5ab29tID0gbWluWm9vbSA9PT0gSW5maW5pdHkgPyB1bmRlZmluZWQgOiBtaW5ab29tO1xuXG4gIFx0XHQvLyBAc2VjdGlvbiBNYXAgc3RhdGUgY2hhbmdlIGV2ZW50c1xuICBcdFx0Ly8gQGV2ZW50IHpvb21sZXZlbHNjaGFuZ2U6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBudW1iZXIgb2Ygem9vbWxldmVscyBvbiB0aGUgbWFwIGlzIGNoYW5nZWQgZHVlXG4gIFx0XHQvLyB0byBhZGRpbmcgb3IgcmVtb3ZpbmcgYSBsYXllci5cbiAgXHRcdGlmIChvbGRab29tU3BhbiAhPT0gdGhpcy5fZ2V0Wm9vbVNwYW4oKSkge1xuICBcdFx0XHR0aGlzLmZpcmUoJ3pvb21sZXZlbHNjaGFuZ2UnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5tYXhab29tID09PSB1bmRlZmluZWQgJiYgdGhpcy5fbGF5ZXJzTWF4Wm9vbSAmJiB0aGlzLmdldFpvb20oKSA+IHRoaXMuX2xheWVyc01heFpvb20pIHtcbiAgXHRcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xheWVyc01heFpvb20pO1xuICBcdFx0fVxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5taW5ab29tID09PSB1bmRlZmluZWQgJiYgdGhpcy5fbGF5ZXJzTWluWm9vbSAmJiB0aGlzLmdldFpvb20oKSA8IHRoaXMuX2xheWVyc01pblpvb20pIHtcbiAgXHRcdFx0dGhpcy5zZXRab29tKHRoaXMuX2xheWVyc01pblpvb20pO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLypcclxuICAgKiBAY2xhc3MgTGF5ZXJHcm91cFxyXG4gICAqIEBha2EgTC5MYXllckdyb3VwXHJcbiAgICogQGluaGVyaXRzIEludGVyYWN0aXZlIGxheWVyXHJcbiAgICpcclxuICAgKiBVc2VkIHRvIGdyb3VwIHNldmVyYWwgbGF5ZXJzIGFuZCBoYW5kbGUgdGhlbSBhcyBvbmUuIElmIHlvdSBhZGQgaXQgdG8gdGhlIG1hcCxcclxuICAgKiBhbnkgbGF5ZXJzIGFkZGVkIG9yIHJlbW92ZWQgZnJvbSB0aGUgZ3JvdXAgd2lsbCBiZSBhZGRlZC9yZW1vdmVkIG9uIHRoZSBtYXAgYXNcclxuICAgKiB3ZWxsLiBFeHRlbmRzIGBMYXllcmAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLmxheWVyR3JvdXAoW21hcmtlcjEsIG1hcmtlcjJdKVxyXG4gICAqIFx0LmFkZExheWVyKHBvbHlsaW5lKVxyXG4gICAqIFx0LmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBMYXllckdyb3VwID0gTGF5ZXIuZXh0ZW5kKHtcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF5ZXJzLCBvcHRpb25zKSB7XHJcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSB7fTtcclxuXHJcbiAgXHRcdHZhciBpLCBsZW47XHJcblxyXG4gIFx0XHRpZiAobGF5ZXJzKSB7XHJcbiAgXHRcdFx0Zm9yIChpID0gMCwgbGVuID0gbGF5ZXJzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHR0aGlzLmFkZExheWVyKGxheWVyc1tpXSk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkTGF5ZXIobGF5ZXI6IExheWVyKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyB0aGUgZ2l2ZW4gbGF5ZXIgdG8gdGhlIGdyb3VwLlxyXG4gIFx0YWRkTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHR2YXIgaWQgPSB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG5cclxuICBcdFx0dGhpcy5fbGF5ZXJzW2lkXSA9IGxheWVyO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC5hZGRMYXllcihsYXllcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGxheWVyOiBMYXllcik6IHRoaXNcclxuICBcdC8vIFJlbW92ZXMgdGhlIGdpdmVuIGxheWVyIGZyb20gdGhlIGdyb3VwLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIHJlbW92ZUxheWVyKGlkOiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBSZW1vdmVzIHRoZSBsYXllciB3aXRoIHRoZSBnaXZlbiBpbnRlcm5hbCBJRCBmcm9tIHRoZSBncm91cC5cclxuICBcdHJlbW92ZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0dmFyIGlkID0gbGF5ZXIgaW4gdGhpcy5fbGF5ZXJzID8gbGF5ZXIgOiB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCAmJiB0aGlzLl9sYXllcnNbaWRdKSB7XHJcbiAgXHRcdFx0dGhpcy5fbWFwLnJlbW92ZUxheWVyKHRoaXMuX2xheWVyc1tpZF0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRkZWxldGUgdGhpcy5fbGF5ZXJzW2lkXTtcclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGhhc0xheWVyKGxheWVyOiBMYXllcik6IEJvb2xlYW5cclxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSBnaXZlbiBsYXllciBpcyBjdXJyZW50bHkgYWRkZWQgdG8gdGhlIGdyb3VwLlxyXG4gIFx0Ly8gQGFsdGVybmF0aXZlXHJcbiAgXHQvLyBAbWV0aG9kIGhhc0xheWVyKGlkOiBOdW1iZXIpOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgZ2l2ZW4gaW50ZXJuYWwgSUQgaXMgY3VycmVudGx5IGFkZGVkIHRvIHRoZSBncm91cC5cclxuICBcdGhhc0xheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0dmFyIGxheWVySWQgPSB0eXBlb2YgbGF5ZXIgPT09ICdudW1iZXInID8gbGF5ZXIgOiB0aGlzLmdldExheWVySWQobGF5ZXIpO1xyXG4gIFx0XHRyZXR1cm4gbGF5ZXJJZCBpbiB0aGlzLl9sYXllcnM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY2xlYXJMYXllcnMoKTogdGhpc1xyXG4gIFx0Ly8gUmVtb3ZlcyBhbGwgdGhlIGxheWVycyBmcm9tIHRoZSBncm91cC5cclxuICBcdGNsZWFyTGF5ZXJzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmVhY2hMYXllcih0aGlzLnJlbW92ZUxheWVyLCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpbnZva2UobWV0aG9kTmFtZTogU3RyaW5nLCDigKYpOiB0aGlzXHJcbiAgXHQvLyBDYWxscyBgbWV0aG9kTmFtZWAgb24gZXZlcnkgbGF5ZXIgY29udGFpbmVkIGluIHRoaXMgZ3JvdXAsIHBhc3NpbmcgYW55XHJcbiAgXHQvLyBhZGRpdGlvbmFsIHBhcmFtZXRlcnMuIEhhcyBubyBlZmZlY3QgaWYgdGhlIGxheWVycyBjb250YWluZWQgZG8gbm90XHJcbiAgXHQvLyBpbXBsZW1lbnQgYG1ldGhvZE5hbWVgLlxyXG4gIFx0aW52b2tlOiBmdW5jdGlvbiAobWV0aG9kTmFtZSkge1xyXG4gIFx0XHR2YXIgYXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMSksXHJcbiAgXHRcdCAgICBpLCBsYXllcjtcclxuXHJcbiAgXHRcdGZvciAoaSBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRsYXllciA9IHRoaXMuX2xheWVyc1tpXTtcclxuXHJcbiAgXHRcdFx0aWYgKGxheWVyW21ldGhvZE5hbWVdKSB7XHJcbiAgXHRcdFx0XHRsYXllclttZXRob2ROYW1lXS5hcHBseShsYXllciwgYXJncyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0dGhpcy5lYWNoTGF5ZXIobWFwLmFkZExheWVyLCBtYXApO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLmVhY2hMYXllcihtYXAucmVtb3ZlTGF5ZXIsIG1hcCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgZWFjaExheWVyKGZuOiBGdW5jdGlvbiwgY29udGV4dD86IE9iamVjdCk6IHRoaXNcclxuICBcdC8vIEl0ZXJhdGVzIG92ZXIgdGhlIGxheWVycyBvZiB0aGUgZ3JvdXAsIG9wdGlvbmFsbHkgc3BlY2lmeWluZyBjb250ZXh0IG9mIHRoZSBpdGVyYXRvciBmdW5jdGlvbi5cclxuICBcdC8vIGBgYGpzXHJcbiAgXHQvLyBncm91cC5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHQvLyBcdGxheWVyLmJpbmRQb3B1cCgnSGVsbG8nKTtcclxuICBcdC8vIH0pO1xyXG4gIFx0Ly8gYGBgXHJcbiAgXHRlYWNoTGF5ZXI6IGZ1bmN0aW9uIChtZXRob2QsIGNvbnRleHQpIHtcclxuICBcdFx0Zm9yICh2YXIgaSBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRtZXRob2QuY2FsbChjb250ZXh0LCB0aGlzLl9sYXllcnNbaV0pO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExheWVyKGlkOiBOdW1iZXIpOiBMYXllclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgbGF5ZXIgd2l0aCB0aGUgZ2l2ZW4gaW50ZXJuYWwgSUQuXHJcbiAgXHRnZXRMYXllcjogZnVuY3Rpb24gKGlkKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXllcnNbaWRdO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExheWVycygpOiBMYXllcltdXHJcbiAgXHQvLyBSZXR1cm5zIGFuIGFycmF5IG9mIGFsbCB0aGUgbGF5ZXJzIGFkZGVkIHRvIHRoZSBncm91cC5cclxuICBcdGdldExheWVyczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgbGF5ZXJzID0gW107XHJcbiAgXHRcdHRoaXMuZWFjaExheWVyKGxheWVycy5wdXNoLCBsYXllcnMpO1xyXG4gIFx0XHRyZXR1cm4gbGF5ZXJzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFpJbmRleCh6SW5kZXg6IE51bWJlcik6IHRoaXNcclxuICBcdC8vIENhbGxzIGBzZXRaSW5kZXhgIG9uIGV2ZXJ5IGxheWVyIGNvbnRhaW5lZCBpbiB0aGlzIGdyb3VwLCBwYXNzaW5nIHRoZSB6LWluZGV4LlxyXG4gIFx0c2V0WkluZGV4OiBmdW5jdGlvbiAoekluZGV4KSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLmludm9rZSgnc2V0WkluZGV4JywgekluZGV4KTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRMYXllcklkKGxheWVyOiBMYXllcik6IE51bWJlclxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgaW50ZXJuYWwgSUQgZm9yIGEgbGF5ZXJcclxuICBcdGdldExheWVySWQ6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRyZXR1cm4gc3RhbXAobGF5ZXIpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5sYXllckdyb3VwKGxheWVycz86IExheWVyW10sIG9wdGlvbnM/OiBPYmplY3QpXHJcbiAgLy8gQ3JlYXRlIGEgbGF5ZXIgZ3JvdXAsIG9wdGlvbmFsbHkgZ2l2ZW4gYW4gaW5pdGlhbCBzZXQgb2YgbGF5ZXJzIGFuZCBhbiBgb3B0aW9uc2Agb2JqZWN0LlxyXG4gIHZhciBsYXllckdyb3VwID0gZnVuY3Rpb24gKGxheWVycywgb3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBMYXllckdyb3VwKGxheWVycywgb3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBGZWF0dXJlR3JvdXBcclxuICAgKiBAYWthIEwuRmVhdHVyZUdyb3VwXHJcbiAgICogQGluaGVyaXRzIExheWVyR3JvdXBcclxuICAgKlxyXG4gICAqIEV4dGVuZGVkIGBMYXllckdyb3VwYCB0aGF0IG1ha2VzIGl0IGVhc2llciB0byBkbyB0aGUgc2FtZSB0aGluZyB0byBhbGwgaXRzIG1lbWJlciBsYXllcnM6XHJcbiAgICogICogW2BiaW5kUG9wdXBgXSgjbGF5ZXItYmluZHBvcHVwKSBiaW5kcyBhIHBvcHVwIHRvIGFsbCBvZiB0aGUgbGF5ZXJzIGF0IG9uY2UgKGxpa2V3aXNlIHdpdGggW2BiaW5kVG9vbHRpcGBdKCNsYXllci1iaW5kdG9vbHRpcCkpXHJcbiAgICogICogRXZlbnRzIGFyZSBwcm9wYWdhdGVkIHRvIHRoZSBgRmVhdHVyZUdyb3VwYCwgc28gaWYgdGhlIGdyb3VwIGhhcyBhbiBldmVudFxyXG4gICAqIGhhbmRsZXIsIGl0IHdpbGwgaGFuZGxlIGV2ZW50cyBmcm9tIGFueSBvZiB0aGUgbGF5ZXJzLiBUaGlzIGluY2x1ZGVzIG1vdXNlIGV2ZW50c1xyXG4gICAqIGFuZCBjdXN0b20gZXZlbnRzLlxyXG4gICAqICAqIEhhcyBgbGF5ZXJhZGRgIGFuZCBgbGF5ZXJyZW1vdmVgIGV2ZW50c1xyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogTC5mZWF0dXJlR3JvdXAoW21hcmtlcjEsIG1hcmtlcjIsIHBvbHlsaW5lXSlcclxuICAgKiBcdC5iaW5kUG9wdXAoJ0hlbGxvIHdvcmxkIScpXHJcbiAgICogXHQub24oJ2NsaWNrJywgZnVuY3Rpb24oKSB7IGFsZXJ0KCdDbGlja2VkIG9uIGEgbWVtYmVyIG9mIHRoZSBncm91cCEnKTsgfSlcclxuICAgKiBcdC5hZGRUbyhtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgRmVhdHVyZUdyb3VwID0gTGF5ZXJHcm91cC5leHRlbmQoe1xyXG5cclxuICBcdGFkZExheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0aWYgKHRoaXMuaGFzTGF5ZXIobGF5ZXIpKSB7XHJcbiAgXHRcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGxheWVyLmFkZEV2ZW50UGFyZW50KHRoaXMpO1xyXG5cclxuICBcdFx0TGF5ZXJHcm91cC5wcm90b3R5cGUuYWRkTGF5ZXIuY2FsbCh0aGlzLCBsYXllcik7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbGF5ZXJhZGQ6IExheWVyRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGxheWVyIGlzIGFkZGVkIHRvIHRoaXMgYEZlYXR1cmVHcm91cGBcclxuICBcdFx0cmV0dXJuIHRoaXMuZmlyZSgnbGF5ZXJhZGQnLCB7bGF5ZXI6IGxheWVyfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdHJlbW92ZUxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcclxuICBcdFx0aWYgKCF0aGlzLmhhc0xheWVyKGxheWVyKSkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChsYXllciBpbiB0aGlzLl9sYXllcnMpIHtcclxuICBcdFx0XHRsYXllciA9IHRoaXMuX2xheWVyc1tsYXllcl07XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGxheWVyLnJlbW92ZUV2ZW50UGFyZW50KHRoaXMpO1xyXG5cclxuICBcdFx0TGF5ZXJHcm91cC5wcm90b3R5cGUucmVtb3ZlTGF5ZXIuY2FsbCh0aGlzLCBsYXllcik7XHJcblxyXG4gIFx0XHQvLyBAZXZlbnQgbGF5ZXJyZW1vdmU6IExheWVyRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIGxheWVyIGlzIHJlbW92ZWQgZnJvbSB0aGlzIGBGZWF0dXJlR3JvdXBgXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ2xheWVycmVtb3ZlJywge2xheWVyOiBsYXllcn0pO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldFN0eWxlKHN0eWxlOiBQYXRoIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBnaXZlbiBwYXRoIG9wdGlvbnMgdG8gZWFjaCBsYXllciBvZiB0aGUgZ3JvdXAgdGhhdCBoYXMgYSBgc2V0U3R5bGVgIG1ldGhvZC5cclxuICBcdHNldFN0eWxlOiBmdW5jdGlvbiAoc3R5bGUpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuaW52b2tlKCdzZXRTdHlsZScsIHN0eWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvRnJvbnQoKTogdGhpc1xyXG4gIFx0Ly8gQnJpbmdzIHRoZSBsYXllciBncm91cCB0byB0aGUgdG9wIG9mIGFsbCBvdGhlciBsYXllcnNcclxuICBcdGJyaW5nVG9Gcm9udDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5pbnZva2UoJ2JyaW5nVG9Gcm9udCcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9CYWNrKCk6IHRoaXNcclxuICBcdC8vIEJyaW5ncyB0aGUgbGF5ZXIgZ3JvdXAgdG8gdGhlIGJhY2sgb2YgYWxsIG90aGVyIGxheWVyc1xyXG4gIFx0YnJpbmdUb0JhY2s6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuaW52b2tlKCdicmluZ1RvQmFjaycpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIFJldHVybnMgdGhlIExhdExuZ0JvdW5kcyBvZiB0aGUgRmVhdHVyZSBHcm91cCAoY3JlYXRlZCBmcm9tIGJvdW5kcyBhbmQgY29vcmRpbmF0ZXMgb2YgaXRzIGNoaWxkcmVuKS5cclxuICBcdGdldEJvdW5kczogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcygpO1xyXG5cclxuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XHJcbiAgXHRcdFx0dmFyIGxheWVyID0gdGhpcy5fbGF5ZXJzW2lkXTtcclxuICBcdFx0XHRib3VuZHMuZXh0ZW5kKGxheWVyLmdldEJvdW5kcyA/IGxheWVyLmdldEJvdW5kcygpIDogbGF5ZXIuZ2V0TGF0TG5nKCkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBib3VuZHM7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBmYWN0b3J5IEwuZmVhdHVyZUdyb3VwKGxheWVycz86IExheWVyW10sIG9wdGlvbnM/OiBPYmplY3QpXHJcbiAgLy8gQ3JlYXRlIGEgZmVhdHVyZSBncm91cCwgb3B0aW9uYWxseSBnaXZlbiBhbiBpbml0aWFsIHNldCBvZiBsYXllcnMgYW5kIGFuIGBvcHRpb25zYCBvYmplY3QuXHJcbiAgdmFyIGZlYXR1cmVHcm91cCA9IGZ1bmN0aW9uIChsYXllcnMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgRmVhdHVyZUdyb3VwKGxheWVycywgb3B0aW9ucyk7XHJcbiAgfTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBJY29uXHJcbiAgICogQGFrYSBMLkljb25cclxuICAgKlxyXG4gICAqIFJlcHJlc2VudHMgYW4gaWNvbiB0byBwcm92aWRlIHdoZW4gY3JlYXRpbmcgYSBtYXJrZXIuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgbXlJY29uID0gTC5pY29uKHtcclxuICAgKiAgICAgaWNvblVybDogJ215LWljb24ucG5nJyxcclxuICAgKiAgICAgaWNvblJldGluYVVybDogJ215LWljb25AMngucG5nJyxcclxuICAgKiAgICAgaWNvblNpemU6IFszOCwgOTVdLFxyXG4gICAqICAgICBpY29uQW5jaG9yOiBbMjIsIDk0XSxcclxuICAgKiAgICAgcG9wdXBBbmNob3I6IFstMywgLTc2XSxcclxuICAgKiAgICAgc2hhZG93VXJsOiAnbXktaWNvbi1zaGFkb3cucG5nJyxcclxuICAgKiAgICAgc2hhZG93UmV0aW5hVXJsOiAnbXktaWNvbi1zaGFkb3dAMngucG5nJyxcclxuICAgKiAgICAgc2hhZG93U2l6ZTogWzY4LCA5NV0sXHJcbiAgICogICAgIHNoYWRvd0FuY2hvcjogWzIyLCA5NF1cclxuICAgKiB9KTtcclxuICAgKlxyXG4gICAqIEwubWFya2VyKFs1MC41MDUsIDMwLjU3XSwge2ljb246IG15SWNvbn0pLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBgTC5JY29uLkRlZmF1bHRgIGV4dGVuZHMgYEwuSWNvbmAgYW5kIGlzIHRoZSBibHVlIGljb24gTGVhZmxldCB1c2VzIGZvciBtYXJrZXJzIGJ5IGRlZmF1bHQuXHJcbiAgICpcclxuICAgKi9cclxuXHJcbiAgdmFyIEljb24gPSBDbGFzcy5leHRlbmQoe1xyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKiBAYWthIEljb24gb3B0aW9uc1xyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gaWNvblVybDogU3RyaW5nID0gbnVsbFxyXG4gIFx0ICogKioocmVxdWlyZWQpKiogVGhlIFVSTCB0byB0aGUgaWNvbiBpbWFnZSAoYWJzb2x1dGUgb3IgcmVsYXRpdmUgdG8geW91ciBzY3JpcHQgcGF0aCkuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBpY29uUmV0aW5hVXJsOiBTdHJpbmcgPSBudWxsXHJcbiAgXHQgKiBUaGUgVVJMIHRvIGEgcmV0aW5hIHNpemVkIHZlcnNpb24gb2YgdGhlIGljb24gaW1hZ2UgKGFic29sdXRlIG9yIHJlbGF0aXZlIHRvIHlvdXJcclxuICBcdCAqIHNjcmlwdCBwYXRoKS4gVXNlZCBmb3IgUmV0aW5hIHNjcmVlbiBkZXZpY2VzLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gaWNvblNpemU6IFBvaW50ID0gbnVsbFxyXG4gIFx0ICogU2l6ZSBvZiB0aGUgaWNvbiBpbWFnZSBpbiBwaXhlbHMuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBpY29uQW5jaG9yOiBQb2ludCA9IG51bGxcclxuICBcdCAqIFRoZSBjb29yZGluYXRlcyBvZiB0aGUgXCJ0aXBcIiBvZiB0aGUgaWNvbiAocmVsYXRpdmUgdG8gaXRzIHRvcCBsZWZ0IGNvcm5lcikuIFRoZSBpY29uXHJcbiAgXHQgKiB3aWxsIGJlIGFsaWduZWQgc28gdGhhdCB0aGlzIHBvaW50IGlzIGF0IHRoZSBtYXJrZXIncyBnZW9ncmFwaGljYWwgbG9jYXRpb24uIENlbnRlcmVkXHJcbiAgXHQgKiBieSBkZWZhdWx0IGlmIHNpemUgaXMgc3BlY2lmaWVkLCBhbHNvIGNhbiBiZSBzZXQgaW4gQ1NTIHdpdGggbmVnYXRpdmUgbWFyZ2lucy5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHBvcHVwQW5jaG9yOiBQb2ludCA9IFswLCAwXVxyXG4gIFx0ICogVGhlIGNvb3JkaW5hdGVzIG9mIHRoZSBwb2ludCBmcm9tIHdoaWNoIHBvcHVwcyB3aWxsIFwib3BlblwiLCByZWxhdGl2ZSB0byB0aGUgaWNvbiBhbmNob3IuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiB0b29sdGlwQW5jaG9yOiBQb2ludCA9IFswLCAwXVxyXG4gIFx0ICogVGhlIGNvb3JkaW5hdGVzIG9mIHRoZSBwb2ludCBmcm9tIHdoaWNoIHRvb2x0aXBzIHdpbGwgXCJvcGVuXCIsIHJlbGF0aXZlIHRvIHRoZSBpY29uIGFuY2hvci5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd1VybDogU3RyaW5nID0gbnVsbFxyXG4gIFx0ICogVGhlIFVSTCB0byB0aGUgaWNvbiBzaGFkb3cgaW1hZ2UuIElmIG5vdCBzcGVjaWZpZWQsIG5vIHNoYWRvdyBpbWFnZSB3aWxsIGJlIGNyZWF0ZWQuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBzaGFkb3dSZXRpbmFVcmw6IFN0cmluZyA9IG51bGxcclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd1NpemU6IFBvaW50ID0gbnVsbFxyXG4gIFx0ICogU2l6ZSBvZiB0aGUgc2hhZG93IGltYWdlIGluIHBpeGVscy5cclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIHNoYWRvd0FuY2hvcjogUG9pbnQgPSBudWxsXHJcbiAgXHQgKiBUaGUgY29vcmRpbmF0ZXMgb2YgdGhlIFwidGlwXCIgb2YgdGhlIHNoYWRvdyAocmVsYXRpdmUgdG8gaXRzIHRvcCBsZWZ0IGNvcm5lcikgKHRoZSBzYW1lXHJcbiAgXHQgKiBhcyBpY29uQW5jaG9yIGlmIG5vdCBzcGVjaWZpZWQpLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xyXG4gIFx0ICogQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gYm90aCBpY29uIGFuZCBzaGFkb3cgaW1hZ2VzLiBFbXB0eSBieSBkZWZhdWx0LlxyXG4gIFx0ICovXHJcblxyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHRwb3B1cEFuY2hvcjogWzAsIDBdLFxyXG4gIFx0XHR0b29sdGlwQW5jaG9yOiBbMCwgMF0sXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNyb3NzT3JpZ2luOiBCb29sZWFufFN0cmluZyA9IGZhbHNlXHJcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIGNyb3NzT3JpZ2luIGF0dHJpYnV0ZSB3aWxsIGJlIGFkZGVkIHRvIHRoZSB0aWxlcy5cclxuICBcdFx0Ly8gSWYgYSBTdHJpbmcgaXMgcHJvdmlkZWQsIGFsbCB0aWxlcyB3aWxsIGhhdmUgdGhlaXIgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHNldCB0byB0aGUgU3RyaW5nIHByb3ZpZGVkLiBUaGlzIGlzIG5lZWRlZCBpZiB5b3Ugd2FudCB0byBhY2Nlc3MgdGlsZSBwaXhlbCBkYXRhLlxyXG4gIFx0XHQvLyBSZWZlciB0byBbQ09SUyBTZXR0aW5nc10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9DT1JTX3NldHRpbmdzX2F0dHJpYnV0ZXMpIGZvciB2YWxpZCBTdHJpbmcgdmFsdWVzLlxyXG4gIFx0XHRjcm9zc09yaWdpbjogZmFsc2VcclxuICBcdH0sXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjcmVhdGVJY29uKG9sZEljb24/OiBIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBDYWxsZWQgaW50ZXJuYWxseSB3aGVuIHRoZSBpY29uIGhhcyB0byBiZSBzaG93biwgcmV0dXJucyBhIGA8aW1nPmAgSFRNTCBlbGVtZW50XHJcbiAgXHQvLyBzdHlsZWQgYWNjb3JkaW5nIHRvIHRoZSBvcHRpb25zLlxyXG4gIFx0Y3JlYXRlSWNvbjogZnVuY3Rpb24gKG9sZEljb24pIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2NyZWF0ZUljb24oJ2ljb24nLCBvbGRJY29uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjcmVhdGVTaGFkb3cob2xkSWNvbj86IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnRcclxuICBcdC8vIEFzIGBjcmVhdGVJY29uYCwgYnV0IGZvciB0aGUgc2hhZG93IGJlbmVhdGggaXQuXHJcbiAgXHRjcmVhdGVTaGFkb3c6IGZ1bmN0aW9uIChvbGRJY29uKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jcmVhdGVJY29uKCdzaGFkb3cnLCBvbGRJY29uKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2NyZWF0ZUljb246IGZ1bmN0aW9uIChuYW1lLCBvbGRJY29uKSB7XHJcbiAgXHRcdHZhciBzcmMgPSB0aGlzLl9nZXRJY29uVXJsKG5hbWUpO1xyXG5cclxuICBcdFx0aWYgKCFzcmMpIHtcclxuICBcdFx0XHRpZiAobmFtZSA9PT0gJ2ljb24nKSB7XHJcbiAgXHRcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ2ljb25Vcmwgbm90IHNldCBpbiBJY29uIG9wdGlvbnMgKHNlZSB0aGUgZG9jcykuJyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdHJldHVybiBudWxsO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgaW1nID0gdGhpcy5fY3JlYXRlSW1nKHNyYywgb2xkSWNvbiAmJiBvbGRJY29uLnRhZ05hbWUgPT09ICdJTUcnID8gb2xkSWNvbiA6IG51bGwpO1xyXG4gIFx0XHR0aGlzLl9zZXRJY29uU3R5bGVzKGltZywgbmFtZSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luIHx8IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbiA9PT0gJycpIHtcclxuICBcdFx0XHRpbWcuY3Jvc3NPcmlnaW4gPSB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09IHRydWUgPyAnJyA6IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIGltZztcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldEljb25TdHlsZXM6IGZ1bmN0aW9uIChpbWcsIG5hbWUpIHtcclxuICBcdFx0dmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcbiAgXHRcdHZhciBzaXplT3B0aW9uID0gb3B0aW9uc1tuYW1lICsgJ1NpemUnXTtcclxuXHJcbiAgXHRcdGlmICh0eXBlb2Ygc2l6ZU9wdGlvbiA9PT0gJ251bWJlcicpIHtcclxuICBcdFx0XHRzaXplT3B0aW9uID0gW3NpemVPcHRpb24sIHNpemVPcHRpb25dO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgc2l6ZSA9IHRvUG9pbnQoc2l6ZU9wdGlvbiksXHJcbiAgXHRcdCAgICBhbmNob3IgPSB0b1BvaW50KG5hbWUgPT09ICdzaGFkb3cnICYmIG9wdGlvbnMuc2hhZG93QW5jaG9yIHx8IG9wdGlvbnMuaWNvbkFuY2hvciB8fFxyXG4gIFx0XHQgICAgICAgICAgICBzaXplICYmIHNpemUuZGl2aWRlQnkoMiwgdHJ1ZSkpO1xyXG5cclxuICBcdFx0aW1nLmNsYXNzTmFtZSA9ICdsZWFmbGV0LW1hcmtlci0nICsgbmFtZSArICcgJyArIChvcHRpb25zLmNsYXNzTmFtZSB8fCAnJyk7XHJcblxyXG4gIFx0XHRpZiAoYW5jaG9yKSB7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLm1hcmdpbkxlZnQgPSAoLWFuY2hvci54KSArICdweCc7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLm1hcmdpblRvcCAgPSAoLWFuY2hvci55KSArICdweCc7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChzaXplKSB7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLndpZHRoICA9IHNpemUueCArICdweCc7XHJcbiAgXHRcdFx0aW1nLnN0eWxlLmhlaWdodCA9IHNpemUueSArICdweCc7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2NyZWF0ZUltZzogZnVuY3Rpb24gKHNyYywgZWwpIHtcclxuICBcdFx0ZWwgPSBlbCB8fCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbWcnKTtcclxuICBcdFx0ZWwuc3JjID0gc3JjO1xyXG4gIFx0XHRyZXR1cm4gZWw7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRJY29uVXJsOiBmdW5jdGlvbiAobmFtZSkge1xyXG4gIFx0XHRyZXR1cm4gQnJvd3Nlci5yZXRpbmEgJiYgdGhpcy5vcHRpb25zW25hbWUgKyAnUmV0aW5hVXJsJ10gfHwgdGhpcy5vcHRpb25zW25hbWUgKyAnVXJsJ107XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLmljb24ob3B0aW9uczogSWNvbiBvcHRpb25zKVxyXG4gIC8vIENyZWF0ZXMgYW4gaWNvbiBpbnN0YW5jZSB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxyXG4gIGZ1bmN0aW9uIGljb24ob3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBJY29uKG9wdGlvbnMpO1xyXG4gIH1cblxuICAvKlxuICAgKiBAbWluaWNsYXNzIEljb24uRGVmYXVsdCAoSWNvbilcbiAgICogQGFrYSBMLkljb24uRGVmYXVsdFxuICAgKiBAc2VjdGlvblxuICAgKlxuICAgKiBBIHRyaXZpYWwgc3ViY2xhc3Mgb2YgYEljb25gLCByZXByZXNlbnRzIHRoZSBpY29uIHRvIHVzZSBpbiBgTWFya2VyYHMgd2hlblxuICAgKiBubyBpY29uIGlzIHNwZWNpZmllZC4gUG9pbnRzIHRvIHRoZSBibHVlIG1hcmtlciBpbWFnZSBkaXN0cmlidXRlZCB3aXRoIExlYWZsZXRcbiAgICogcmVsZWFzZXMuXG4gICAqXG4gICAqIEluIG9yZGVyIHRvIGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCBpY29uLCBqdXN0IGNoYW5nZSB0aGUgcHJvcGVydGllcyBvZiBgTC5JY29uLkRlZmF1bHQucHJvdG90eXBlLm9wdGlvbnNgXG4gICAqICh3aGljaCBpcyBhIHNldCBvZiBgSWNvbiBvcHRpb25zYCkuXG4gICAqXG4gICAqIElmIHlvdSB3YW50IHRvIF9jb21wbGV0ZWx5XyByZXBsYWNlIHRoZSBkZWZhdWx0IGljb24sIG92ZXJyaWRlIHRoZVxuICAgKiBgTC5NYXJrZXIucHJvdG90eXBlLm9wdGlvbnMuaWNvbmAgd2l0aCB5b3VyIG93biBpY29uIGluc3RlYWQuXG4gICAqL1xuXG4gIHZhciBJY29uRGVmYXVsdCA9IEljb24uZXh0ZW5kKHtcblxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGljb25Vcmw6ICAgICAgICdtYXJrZXItaWNvbi5wbmcnLFxuICBcdFx0aWNvblJldGluYVVybDogJ21hcmtlci1pY29uLTJ4LnBuZycsXG4gIFx0XHRzaGFkb3dVcmw6ICAgICAnbWFya2VyLXNoYWRvdy5wbmcnLFxuICBcdFx0aWNvblNpemU6ICAgIFsyNSwgNDFdLFxuICBcdFx0aWNvbkFuY2hvcjogIFsxMiwgNDFdLFxuICBcdFx0cG9wdXBBbmNob3I6IFsxLCAtMzRdLFxuICBcdFx0dG9vbHRpcEFuY2hvcjogWzE2LCAtMjhdLFxuICBcdFx0c2hhZG93U2l6ZTogIFs0MSwgNDFdXG4gIFx0fSxcblxuICBcdF9nZXRJY29uVXJsOiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0aWYgKHR5cGVvZiBJY29uRGVmYXVsdC5pbWFnZVBhdGggIT09ICdzdHJpbmcnKSB7XHQvLyBEZXByZWNhdGVkLCBiYWNrd2FyZHMtY29tcGF0aWJpbGl0eSBvbmx5XG4gIFx0XHRcdEljb25EZWZhdWx0LmltYWdlUGF0aCA9IHRoaXMuX2RldGVjdEljb25QYXRoKCk7XG4gIFx0XHR9XG5cbiAgXHRcdC8vIEBvcHRpb24gaW1hZ2VQYXRoOiBTdHJpbmdcbiAgXHRcdC8vIGBJY29uLkRlZmF1bHRgIHdpbGwgdHJ5IHRvIGF1dG8tZGV0ZWN0IHRoZSBsb2NhdGlvbiBvZiB0aGVcbiAgXHRcdC8vIGJsdWUgaWNvbiBpbWFnZXMuIElmIHlvdSBhcmUgcGxhY2luZyB0aGVzZSBpbWFnZXMgaW4gYSBub24tc3RhbmRhcmRcbiAgXHRcdC8vIHdheSwgc2V0IHRoaXMgb3B0aW9uIHRvIHBvaW50IHRvIHRoZSByaWdodCBwYXRoLlxuICBcdFx0cmV0dXJuICh0aGlzLm9wdGlvbnMuaW1hZ2VQYXRoIHx8IEljb25EZWZhdWx0LmltYWdlUGF0aCkgKyBJY29uLnByb3RvdHlwZS5fZ2V0SWNvblVybC5jYWxsKHRoaXMsIG5hbWUpO1xuICBcdH0sXG5cbiAgXHRfc3RyaXBVcmw6IGZ1bmN0aW9uIChwYXRoKSB7XHQvLyBzZXBhcmF0ZSBmdW5jdGlvbiB0byB1c2UgaW4gdGVzdHNcbiAgXHRcdHZhciBzdHJpcCA9IGZ1bmN0aW9uIChzdHIsIHJlLCBpZHgpIHtcbiAgXHRcdFx0dmFyIG1hdGNoID0gcmUuZXhlYyhzdHIpO1xuICBcdFx0XHRyZXR1cm4gbWF0Y2ggJiYgbWF0Y2hbaWR4XTtcbiAgXHRcdH07XG4gIFx0XHRwYXRoID0gc3RyaXAocGF0aCwgL151cmxcXCgoWydcIl0pPyguKylcXDFcXCkkLywgMik7XG4gIFx0XHRyZXR1cm4gcGF0aCAmJiBzdHJpcChwYXRoLCAvXiguKiltYXJrZXItaWNvblxcLnBuZyQvLCAxKTtcbiAgXHR9LFxuXG4gIFx0X2RldGVjdEljb25QYXRoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgZWwgPSBjcmVhdGUkMSgnZGl2JywgICdsZWFmbGV0LWRlZmF1bHQtaWNvbi1wYXRoJywgZG9jdW1lbnQuYm9keSk7XG4gIFx0XHR2YXIgcGF0aCA9IGdldFN0eWxlKGVsLCAnYmFja2dyb3VuZC1pbWFnZScpIHx8XG4gIFx0XHQgICAgICAgICAgIGdldFN0eWxlKGVsLCAnYmFja2dyb3VuZEltYWdlJyk7XHQvLyBJRThcblxuICBcdFx0ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbCk7XG4gIFx0XHRwYXRoID0gdGhpcy5fc3RyaXBVcmwocGF0aCk7XG4gIFx0XHRpZiAocGF0aCkgeyByZXR1cm4gcGF0aDsgfVxuICBcdFx0dmFyIGxpbmsgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdsaW5rW2hyZWYkPVwibGVhZmxldC5jc3NcIl0nKTtcbiAgXHRcdGlmICghbGluaykgeyByZXR1cm4gJyc7IH1cbiAgXHRcdHJldHVybiBsaW5rLmhyZWYuc3Vic3RyaW5nKDAsIGxpbmsuaHJlZi5sZW5ndGggLSAnbGVhZmxldC5jc3MnLmxlbmd0aCAtIDEpO1xuICBcdH1cbiAgfSk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLk1hcmtlckRyYWcgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IEwuTWFya2VyIHRvIG1ha2UgdGhlIG1hcmtlcnMgZHJhZ2dhYmxlLlxuICAgKi9cblxuXG4gIC8qIEBuYW1lc3BhY2UgTWFya2VyXG4gICAqIEBzZWN0aW9uIEludGVyYWN0aW9uIGhhbmRsZXJzXG4gICAqXG4gICAqIEludGVyYWN0aW9uIGhhbmRsZXJzIGFyZSBwcm9wZXJ0aWVzIG9mIGEgbWFya2VyIGluc3RhbmNlIHRoYXQgYWxsb3cgeW91IHRvIGNvbnRyb2wgaW50ZXJhY3Rpb24gYmVoYXZpb3IgaW4gcnVudGltZSwgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIGNlcnRhaW4gZmVhdHVyZXMgc3VjaCBhcyBkcmFnZ2luZyAoc2VlIGBIYW5kbGVyYCBtZXRob2RzKS4gRXhhbXBsZTpcbiAgICpcbiAgICogYGBganNcbiAgICogbWFya2VyLmRyYWdnaW5nLmRpc2FibGUoKTtcbiAgICogYGBgXG4gICAqXG4gICAqIEBwcm9wZXJ0eSBkcmFnZ2luZzogSGFuZGxlclxuICAgKiBNYXJrZXIgZHJhZ2dpbmcgaGFuZGxlciAoYnkgYm90aCBtb3VzZSBhbmQgdG91Y2gpLiBPbmx5IHZhbGlkIHdoZW4gdGhlIG1hcmtlciBpcyBvbiB0aGUgbWFwIChPdGhlcndpc2Ugc2V0IFtgbWFya2VyLm9wdGlvbnMuZHJhZ2dhYmxlYF0oI21hcmtlci1kcmFnZ2FibGUpKS5cbiAgICovXG5cbiAgdmFyIE1hcmtlckRyYWcgPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcmtlcikge1xuICBcdFx0dGhpcy5fbWFya2VyID0gbWFya2VyO1xuICBcdH0sXG5cbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGljb24gPSB0aGlzLl9tYXJrZXIuX2ljb247XG5cbiAgXHRcdGlmICghdGhpcy5fZHJhZ2dhYmxlKSB7XG4gIFx0XHRcdHRoaXMuX2RyYWdnYWJsZSA9IG5ldyBEcmFnZ2FibGUoaWNvbiwgaWNvbiwgdHJ1ZSk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2RyYWdnYWJsZS5vbih7XG4gIFx0XHRcdGRyYWdzdGFydDogdGhpcy5fb25EcmFnU3RhcnQsXG4gIFx0XHRcdHByZWRyYWc6IHRoaXMuX29uUHJlRHJhZyxcbiAgXHRcdFx0ZHJhZzogdGhpcy5fb25EcmFnLFxuICBcdFx0XHRkcmFnZW5kOiB0aGlzLl9vbkRyYWdFbmRcbiAgXHRcdH0sIHRoaXMpLmVuYWJsZSgpO1xuXG4gIFx0XHRhZGRDbGFzcyhpY29uLCAnbGVhZmxldC1tYXJrZXItZHJhZ2dhYmxlJyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9kcmFnZ2FibGUub2ZmKHtcbiAgXHRcdFx0ZHJhZ3N0YXJ0OiB0aGlzLl9vbkRyYWdTdGFydCxcbiAgXHRcdFx0cHJlZHJhZzogdGhpcy5fb25QcmVEcmFnLFxuICBcdFx0XHRkcmFnOiB0aGlzLl9vbkRyYWcsXG4gIFx0XHRcdGRyYWdlbmQ6IHRoaXMuX29uRHJhZ0VuZFxuICBcdFx0fSwgdGhpcykuZGlzYWJsZSgpO1xuXG4gIFx0XHRpZiAodGhpcy5fbWFya2VyLl9pY29uKSB7XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX21hcmtlci5faWNvbiwgJ2xlYWZsZXQtbWFya2VyLWRyYWdnYWJsZScpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRtb3ZlZDogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2RyYWdnYWJsZSAmJiB0aGlzLl9kcmFnZ2FibGUuX21vdmVkO1xuICBcdH0sXG5cbiAgXHRfYWRqdXN0UGFuOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIG1hcmtlciA9IHRoaXMuX21hcmtlcixcbiAgXHRcdCAgICBtYXAgPSBtYXJrZXIuX21hcCxcbiAgXHRcdCAgICBzcGVlZCA9IHRoaXMuX21hcmtlci5vcHRpb25zLmF1dG9QYW5TcGVlZCxcbiAgXHRcdCAgICBwYWRkaW5nID0gdGhpcy5fbWFya2VyLm9wdGlvbnMuYXV0b1BhblBhZGRpbmcsXG4gIFx0XHQgICAgaWNvblBvcyA9IGdldFBvc2l0aW9uKG1hcmtlci5faWNvbiksXG4gIFx0XHQgICAgYm91bmRzID0gbWFwLmdldFBpeGVsQm91bmRzKCksXG4gIFx0XHQgICAgb3JpZ2luID0gbWFwLmdldFBpeGVsT3JpZ2luKCk7XG5cbiAgXHRcdHZhciBwYW5Cb3VuZHMgPSB0b0JvdW5kcyhcbiAgXHRcdFx0Ym91bmRzLm1pbi5fc3VidHJhY3Qob3JpZ2luKS5hZGQocGFkZGluZyksXG4gIFx0XHRcdGJvdW5kcy5tYXguX3N1YnRyYWN0KG9yaWdpbikuc3VidHJhY3QocGFkZGluZylcbiAgXHRcdCk7XG5cbiAgXHRcdGlmICghcGFuQm91bmRzLmNvbnRhaW5zKGljb25Qb3MpKSB7XG4gIFx0XHRcdC8vIENvbXB1dGUgaW5jcmVtZW50YWwgbW92ZW1lbnRcbiAgXHRcdFx0dmFyIG1vdmVtZW50ID0gdG9Qb2ludChcbiAgXHRcdFx0XHQoTWF0aC5tYXgocGFuQm91bmRzLm1heC54LCBpY29uUG9zLngpIC0gcGFuQm91bmRzLm1heC54KSAvIChib3VuZHMubWF4LnggLSBwYW5Cb3VuZHMubWF4LngpIC1cbiAgXHRcdFx0XHQoTWF0aC5taW4ocGFuQm91bmRzLm1pbi54LCBpY29uUG9zLngpIC0gcGFuQm91bmRzLm1pbi54KSAvIChib3VuZHMubWluLnggLSBwYW5Cb3VuZHMubWluLngpLFxuXG4gIFx0XHRcdFx0KE1hdGgubWF4KHBhbkJvdW5kcy5tYXgueSwgaWNvblBvcy55KSAtIHBhbkJvdW5kcy5tYXgueSkgLyAoYm91bmRzLm1heC55IC0gcGFuQm91bmRzLm1heC55KSAtXG4gIFx0XHRcdFx0KE1hdGgubWluKHBhbkJvdW5kcy5taW4ueSwgaWNvblBvcy55KSAtIHBhbkJvdW5kcy5taW4ueSkgLyAoYm91bmRzLm1pbi55IC0gcGFuQm91bmRzLm1pbi55KVxuICBcdFx0XHQpLm11bHRpcGx5Qnkoc3BlZWQpO1xuXG4gIFx0XHRcdG1hcC5wYW5CeShtb3ZlbWVudCwge2FuaW1hdGU6IGZhbHNlfSk7XG5cbiAgXHRcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MuX2FkZChtb3ZlbWVudCk7XG4gIFx0XHRcdHRoaXMuX2RyYWdnYWJsZS5fc3RhcnRQb3MuX2FkZChtb3ZlbWVudCk7XG5cbiAgXHRcdFx0c2V0UG9zaXRpb24obWFya2VyLl9pY29uLCB0aGlzLl9kcmFnZ2FibGUuX25ld1Bvcyk7XG4gIFx0XHRcdHRoaXMuX29uRHJhZyhlKTtcblxuICBcdFx0XHR0aGlzLl9wYW5SZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZSh0aGlzLl9hZGp1c3RQYW4uYmluZCh0aGlzLCBlKSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbkRyYWdTdGFydDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gQHNlY3Rpb24gRHJhZ2dpbmcgZXZlbnRzXG4gIFx0XHQvLyBAZXZlbnQgZHJhZ3N0YXJ0OiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgdXNlciBzdGFydHMgZHJhZ2dpbmcgdGhlIG1hcmtlci5cblxuICBcdFx0Ly8gQGV2ZW50IG1vdmVzdGFydDogRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcmtlciBzdGFydHMgbW92aW5nIChiZWNhdXNlIG9mIGRyYWdnaW5nKS5cblxuICBcdFx0dGhpcy5fb2xkTGF0TG5nID0gdGhpcy5fbWFya2VyLmdldExhdExuZygpO1xuXG4gIFx0XHQvLyBXaGVuIHVzaW5nIEVTNiBpbXBvcnRzIGl0IGNvdWxkIG5vdCBiZSBzZXQgd2hlbiBgUG9wdXBgIHdhcyBub3QgaW1wb3J0ZWQgYXMgd2VsbFxuICBcdFx0dGhpcy5fbWFya2VyLmNsb3NlUG9wdXAgJiYgdGhpcy5fbWFya2VyLmNsb3NlUG9wdXAoKTtcblxuICBcdFx0dGhpcy5fbWFya2VyXG4gIFx0XHRcdC5maXJlKCdtb3Zlc3RhcnQnKVxuICBcdFx0XHQuZmlyZSgnZHJhZ3N0YXJ0Jyk7XG4gIFx0fSxcblxuICBcdF9vblByZURyYWc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFya2VyLm9wdGlvbnMuYXV0b1Bhbikge1xuICBcdFx0XHRjYW5jZWxBbmltRnJhbWUodGhpcy5fcGFuUmVxdWVzdCk7XG4gIFx0XHRcdHRoaXMuX3BhblJlcXVlc3QgPSByZXF1ZXN0QW5pbUZyYW1lKHRoaXMuX2FkanVzdFBhbi5iaW5kKHRoaXMsIGUpKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uRHJhZzogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXJrZXIgPSB0aGlzLl9tYXJrZXIsXG4gIFx0XHQgICAgc2hhZG93ID0gbWFya2VyLl9zaGFkb3csXG4gIFx0XHQgICAgaWNvblBvcyA9IGdldFBvc2l0aW9uKG1hcmtlci5faWNvbiksXG4gIFx0XHQgICAgbGF0bG5nID0gbWFya2VyLl9tYXAubGF5ZXJQb2ludFRvTGF0TG5nKGljb25Qb3MpO1xuXG4gIFx0XHQvLyB1cGRhdGUgc2hhZG93IHBvc2l0aW9uXG4gIFx0XHRpZiAoc2hhZG93KSB7XG4gIFx0XHRcdHNldFBvc2l0aW9uKHNoYWRvdywgaWNvblBvcyk7XG4gIFx0XHR9XG5cbiAgXHRcdG1hcmtlci5fbGF0bG5nID0gbGF0bG5nO1xuICBcdFx0ZS5sYXRsbmcgPSBsYXRsbmc7XG4gIFx0XHRlLm9sZExhdExuZyA9IHRoaXMuX29sZExhdExuZztcblxuICBcdFx0Ly8gQGV2ZW50IGRyYWc6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCByZXBlYXRlZGx5IHdoaWxlIHRoZSB1c2VyIGRyYWdzIHRoZSBtYXJrZXIuXG4gIFx0XHRtYXJrZXJcbiAgXHRcdCAgICAuZmlyZSgnbW92ZScsIGUpXG4gIFx0XHQgICAgLmZpcmUoJ2RyYWcnLCBlKTtcbiAgXHR9LFxuXG4gIFx0X29uRHJhZ0VuZDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdC8vIEBldmVudCBkcmFnZW5kOiBEcmFnRW5kRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIHVzZXIgc3RvcHMgZHJhZ2dpbmcgdGhlIG1hcmtlci5cblxuICBcdFx0IGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9wYW5SZXF1ZXN0KTtcblxuICBcdFx0Ly8gQGV2ZW50IG1vdmVlbmQ6IEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBtYXJrZXIgc3RvcHMgbW92aW5nIChiZWNhdXNlIG9mIGRyYWdnaW5nKS5cbiAgXHRcdGRlbGV0ZSB0aGlzLl9vbGRMYXRMbmc7XG4gIFx0XHR0aGlzLl9tYXJrZXJcbiAgXHRcdCAgICAuZmlyZSgnbW92ZWVuZCcpXG4gIFx0XHQgICAgLmZpcmUoJ2RyYWdlbmQnLCBlKTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIE1hcmtlclxyXG4gICAqIEBpbmhlcml0cyBJbnRlcmFjdGl2ZSBsYXllclxyXG4gICAqIEBha2EgTC5NYXJrZXJcclxuICAgKiBMLk1hcmtlciBpcyB1c2VkIHRvIGRpc3BsYXkgY2xpY2thYmxlL2RyYWdnYWJsZSBpY29ucyBvbiB0aGUgbWFwLiBFeHRlbmRzIGBMYXllcmAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLm1hcmtlcihbNTAuNSwgMzAuNV0pLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBNYXJrZXIgPSBMYXllci5leHRlbmQoe1xyXG5cclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIE1hcmtlciBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gaWNvbjogSWNvbiA9ICpcclxuICBcdFx0Ly8gSWNvbiBpbnN0YW5jZSB0byB1c2UgZm9yIHJlbmRlcmluZyB0aGUgbWFya2VyLlxyXG4gIFx0XHQvLyBTZWUgW0ljb24gZG9jdW1lbnRhdGlvbl0oI0wuSWNvbikgZm9yIGRldGFpbHMgb24gaG93IHRvIGN1c3RvbWl6ZSB0aGUgbWFya2VyIGljb24uXHJcbiAgXHRcdC8vIElmIG5vdCBzcGVjaWZpZWQsIGEgY29tbW9uIGluc3RhbmNlIG9mIGBMLkljb24uRGVmYXVsdGAgaXMgdXNlZC5cclxuICBcdFx0aWNvbjogbmV3IEljb25EZWZhdWx0KCksXHJcblxyXG4gIFx0XHQvLyBPcHRpb24gaW5oZXJpdGVkIGZyb20gXCJJbnRlcmFjdGl2ZSBsYXllclwiIGFic3RyYWN0IGNsYXNzXHJcbiAgXHRcdGludGVyYWN0aXZlOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBrZXlib2FyZDogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgbWFya2VyIGNhbiBiZSB0YWJiZWQgdG8gd2l0aCBhIGtleWJvYXJkIGFuZCBjbGlja2VkIGJ5IHByZXNzaW5nIGVudGVyLlxyXG4gIFx0XHRrZXlib2FyZDogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdGl0bGU6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBicm93c2VyIHRvb2x0aXAgdGhhdCBhcHBlYXIgb24gbWFya2VyIGhvdmVyIChubyB0b29sdGlwIGJ5IGRlZmF1bHQpLlxyXG4gIFx0XHQvLyBbVXNlZnVsIGZvciBhY2Nlc3NpYmlsaXR5XShodHRwczovL2xlYWZsZXRqcy5jb20vZXhhbXBsZXMvYWNjZXNzaWJpbGl0eS8jbWFya2Vycy1tdXN0LWJlLWxhYmVsbGVkKS5cclxuICBcdFx0dGl0bGU6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhbHQ6IFN0cmluZyA9ICdNYXJrZXInXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBgYWx0YCBhdHRyaWJ1dGUgb2YgdGhlIGljb24gaW1hZ2UuXHJcbiAgXHRcdC8vIFtVc2VmdWwgZm9yIGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vbGVhZmxldGpzLmNvbS9leGFtcGxlcy9hY2Nlc3NpYmlsaXR5LyNtYXJrZXJzLW11c3QtYmUtbGFiZWxsZWQpLlxyXG4gIFx0XHRhbHQ6ICdNYXJrZXInLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6SW5kZXhPZmZzZXQ6IE51bWJlciA9IDBcclxuICBcdFx0Ly8gQnkgZGVmYXVsdCwgbWFya2VyIGltYWdlcyB6SW5kZXggaXMgc2V0IGF1dG9tYXRpY2FsbHkgYmFzZWQgb24gaXRzIGxhdGl0dWRlLiBVc2UgdGhpcyBvcHRpb24gaWYgeW91IHdhbnQgdG8gcHV0IHRoZSBtYXJrZXIgb24gdG9wIG9mIGFsbCBvdGhlcnMgKG9yIGJlbG93KSwgc3BlY2lmeWluZyBhIGhpZ2ggdmFsdWUgbGlrZSBgMTAwMGAgKG9yIGhpZ2ggbmVnYXRpdmUgdmFsdWUsIHJlc3BlY3RpdmVseSkuXHJcbiAgXHRcdHpJbmRleE9mZnNldDogMCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXHJcbiAgXHRcdC8vIFRoZSBvcGFjaXR5IG9mIHRoZSBtYXJrZXIuXHJcbiAgXHRcdG9wYWNpdHk6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHJpc2VPbkhvdmVyOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCB0aGUgbWFya2VyIHdpbGwgZ2V0IG9uIHRvcCBvZiBvdGhlcnMgd2hlbiB5b3UgaG92ZXIgdGhlIG1vdXNlIG92ZXIgaXQuXHJcbiAgXHRcdHJpc2VPbkhvdmVyOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmlzZU9mZnNldDogTnVtYmVyID0gMjUwXHJcbiAgXHRcdC8vIFRoZSB6LWluZGV4IG9mZnNldCB1c2VkIGZvciB0aGUgYHJpc2VPbkhvdmVyYCBmZWF0dXJlLlxyXG4gIFx0XHRyaXNlT2Zmc2V0OiAyNTAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICdtYXJrZXJQYW5lJ1xyXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSBtYXJrZXJzIGljb24gd2lsbCBiZSBhZGRlZC5cclxuICBcdFx0cGFuZTogJ21hcmtlclBhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBzaGFkb3dQYW5lOiBTdHJpbmcgPSAnc2hhZG93UGFuZSdcclxuICBcdFx0Ly8gYE1hcCBwYW5lYCB3aGVyZSB0aGUgbWFya2VycyBzaGFkb3cgd2lsbCBiZSBhZGRlZC5cclxuICBcdFx0c2hhZG93UGFuZTogJ3NoYWRvd1BhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBidWJibGluZ01vdXNlRXZlbnRzOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hlbiBgdHJ1ZWAsIGEgbW91c2UgZXZlbnQgb24gdGhpcyBtYXJrZXIgd2lsbCB0cmlnZ2VyIHRoZSBzYW1lIGV2ZW50IG9uIHRoZSBtYXBcclxuICBcdFx0Ly8gKHVubGVzcyBbYEwuRG9tRXZlbnQuc3RvcFByb3BhZ2F0aW9uYF0oI2RvbWV2ZW50LXN0b3Bwcm9wYWdhdGlvbikgaXMgdXNlZCkuXHJcbiAgXHRcdGJ1YmJsaW5nTW91c2VFdmVudHM6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuT25Gb2N1czogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hlbiBgdHJ1ZWAsIHRoZSBtYXAgd2lsbCBwYW4gd2hlbmV2ZXIgdGhlIG1hcmtlciBpcyBmb2N1c2VkICh2aWFcclxuICBcdFx0Ly8gZS5nLiBwcmVzc2luZyBgdGFiYCBvbiB0aGUga2V5Ym9hcmQpIHRvIGVuc3VyZSB0aGUgbWFya2VyIGlzXHJcbiAgXHRcdC8vIHZpc2libGUgd2l0aGluIHRoZSBtYXAncyBib3VuZHNcclxuICBcdFx0YXV0b1Bhbk9uRm9jdXM6IHRydWUsXHJcblxyXG4gIFx0XHQvLyBAc2VjdGlvbiBEcmFnZ2FibGUgbWFya2VyIG9wdGlvbnNcclxuICBcdFx0Ly8gQG9wdGlvbiBkcmFnZ2FibGU6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSBtYXJrZXIgaXMgZHJhZ2dhYmxlIHdpdGggbW91c2UvdG91Y2ggb3Igbm90LlxyXG4gIFx0XHRkcmFnZ2FibGU6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0byBwYW4gdGhlIG1hcCB3aGVuIGRyYWdnaW5nIHRoaXMgbWFya2VyIG5lYXIgaXRzIGVkZ2Ugb3Igbm90LlxyXG4gIFx0XHRhdXRvUGFuOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gYXV0b1BhblBhZGRpbmc6IFBvaW50ID0gUG9pbnQoNTAsIDUwKVxyXG4gIFx0XHQvLyBEaXN0YW5jZSAoaW4gcGl4ZWxzIHRvIHRoZSBsZWZ0L3JpZ2h0IGFuZCB0byB0aGUgdG9wL2JvdHRvbSkgb2YgdGhlXHJcbiAgXHRcdC8vIG1hcCBlZGdlIHRvIHN0YXJ0IHBhbm5pbmcgdGhlIG1hcC5cclxuICBcdFx0YXV0b1BhblBhZGRpbmc6IFs1MCwgNTBdLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuU3BlZWQ6IE51bWJlciA9IDEwXHJcbiAgXHRcdC8vIE51bWJlciBvZiBwaXhlbHMgdGhlIG1hcCBzaG91bGQgcGFuIGJ5LlxyXG4gIFx0XHRhdXRvUGFuU3BlZWQ6IDEwXHJcbiAgXHR9LFxyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKlxyXG4gIFx0ICogSW4gYWRkaXRpb24gdG8gW3NoYXJlZCBsYXllciBtZXRob2RzXSgjTGF5ZXIpIGxpa2UgYGFkZFRvKClgIGFuZCBgcmVtb3ZlKClgIGFuZCBbcG9wdXAgbWV0aG9kc10oI1BvcHVwKSBsaWtlIGJpbmRQb3B1cCgpIHlvdSBjYW4gYWxzbyB1c2UgdGhlIGZvbGxvd2luZyBtZXRob2RzOlxyXG4gIFx0ICovXHJcblxyXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKGxhdGxuZywgb3B0aW9ucykge1xyXG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHR0aGlzLl96b29tQW5pbWF0ZWQgPSB0aGlzLl96b29tQW5pbWF0ZWQgJiYgbWFwLm9wdGlvbnMubWFya2VyWm9vbUFuaW1hdGlvbjtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRtYXAub24oJ3pvb21hbmltJywgdGhpcy5fYW5pbWF0ZVpvb20sIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl9pbml0SWNvbigpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHRpZiAodGhpcy5kcmFnZ2luZyAmJiB0aGlzLmRyYWdnaW5nLmVuYWJsZWQoKSkge1xyXG4gIFx0XHRcdHRoaXMub3B0aW9ucy5kcmFnZ2FibGUgPSB0cnVlO1xyXG4gIFx0XHRcdHRoaXMuZHJhZ2dpbmcucmVtb3ZlSG9va3MoKTtcclxuICBcdFx0fVxyXG4gIFx0XHRkZWxldGUgdGhpcy5kcmFnZ2luZztcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRtYXAub2ZmKCd6b29tYW5pbScsIHRoaXMuX2FuaW1hdGVab29tLCB0aGlzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fcmVtb3ZlSWNvbigpO1xyXG4gIFx0XHR0aGlzLl9yZW1vdmVTaGFkb3coKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB7XHJcbiAgXHRcdFx0em9vbTogdGhpcy51cGRhdGUsXHJcbiAgXHRcdFx0dmlld3Jlc2V0OiB0aGlzLnVwZGF0ZVxyXG4gIFx0XHR9O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldExhdExuZzogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IGdlb2dyYXBoaWNhbCBwb3NpdGlvbiBvZiB0aGUgbWFya2VyLlxyXG4gIFx0Z2V0TGF0TG5nOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXRsbmc7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TGF0TG5nKGxhdGxuZzogTGF0TG5nKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgbWFya2VyIHBvc2l0aW9uIHRvIHRoZSBnaXZlbiBwb2ludC5cclxuICBcdHNldExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR2YXIgb2xkTGF0TG5nID0gdGhpcy5fbGF0bG5nO1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG5cclxuICBcdFx0Ly8gQGV2ZW50IG1vdmU6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcmtlciBpcyBtb3ZlZCB2aWEgW2BzZXRMYXRMbmdgXSgjbWFya2VyLXNldGxhdGxuZykgb3IgYnkgW2RyYWdnaW5nXSgjbWFya2VyLWRyYWdnaW5nKS4gT2xkIGFuZCBuZXcgY29vcmRpbmF0ZXMgYXJlIGluY2x1ZGVkIGluIGV2ZW50IGFyZ3VtZW50cyBhcyBgb2xkTGF0TG5nYCwgYGxhdGxuZ2AuXHJcbiAgXHRcdHJldHVybiB0aGlzLmZpcmUoJ21vdmUnLCB7b2xkTGF0TG5nOiBvbGRMYXRMbmcsIGxhdGxuZzogdGhpcy5fbGF0bG5nfSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0WkluZGV4T2Zmc2V0KG9mZnNldDogTnVtYmVyKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgW3pJbmRleCBvZmZzZXRdKCNtYXJrZXItemluZGV4b2Zmc2V0KSBvZiB0aGUgbWFya2VyLlxyXG4gIFx0c2V0WkluZGV4T2Zmc2V0OiBmdW5jdGlvbiAob2Zmc2V0KSB7XHJcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXhPZmZzZXQgPSBvZmZzZXQ7XHJcbiAgXHRcdHJldHVybiB0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEljb246IEljb25cclxuICBcdC8vIFJldHVybnMgdGhlIGN1cnJlbnQgaWNvbiB1c2VkIGJ5IHRoZSBtYXJrZXJcclxuICBcdGdldEljb246IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMub3B0aW9ucy5pY29uO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldEljb24oaWNvbjogSWNvbik6IHRoaXNcclxuICBcdC8vIENoYW5nZXMgdGhlIG1hcmtlciBpY29uLlxyXG4gIFx0c2V0SWNvbjogZnVuY3Rpb24gKGljb24pIHtcclxuXHJcbiAgXHRcdHRoaXMub3B0aW9ucy5pY29uID0gaWNvbjtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0aGlzLl9pbml0SWNvbigpO1xyXG4gIFx0XHRcdHRoaXMudXBkYXRlKCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuYmluZFBvcHVwKHRoaXMuX3BvcHVwLCB0aGlzLl9wb3B1cC5vcHRpb25zKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGdldEVsZW1lbnQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2ljb247XHJcbiAgXHR9LFxyXG5cclxuICBcdHVwZGF0ZTogZnVuY3Rpb24gKCkge1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ljb24gJiYgdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dmFyIHBvcyA9IHRoaXMuX21hcC5sYXRMbmdUb0xheWVyUG9pbnQodGhpcy5fbGF0bG5nKS5yb3VuZCgpO1xyXG4gIFx0XHRcdHRoaXMuX3NldFBvcyhwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRJY29uOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zLFxyXG4gIFx0XHQgICAgY2xhc3NUb0FkZCA9ICdsZWFmbGV0LXpvb20tJyArICh0aGlzLl96b29tQW5pbWF0ZWQgPyAnYW5pbWF0ZWQnIDogJ2hpZGUnKTtcclxuXHJcbiAgXHRcdHZhciBpY29uID0gb3B0aW9ucy5pY29uLmNyZWF0ZUljb24odGhpcy5faWNvbiksXHJcbiAgXHRcdCAgICBhZGRJY29uID0gZmFsc2U7XHJcblxyXG4gIFx0XHQvLyBpZiB3ZSdyZSBub3QgcmV1c2luZyB0aGUgaWNvbiwgcmVtb3ZlIHRoZSBvbGQgb25lIGFuZCBpbml0IG5ldyBvbmVcclxuICBcdFx0aWYgKGljb24gIT09IHRoaXMuX2ljb24pIHtcclxuICBcdFx0XHRpZiAodGhpcy5faWNvbikge1xyXG4gIFx0XHRcdFx0dGhpcy5fcmVtb3ZlSWNvbigpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRhZGRJY29uID0gdHJ1ZTtcclxuXHJcbiAgXHRcdFx0aWYgKG9wdGlvbnMudGl0bGUpIHtcclxuICBcdFx0XHRcdGljb24udGl0bGUgPSBvcHRpb25zLnRpdGxlO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0aWYgKGljb24udGFnTmFtZSA9PT0gJ0lNRycpIHtcclxuICBcdFx0XHRcdGljb24uYWx0ID0gb3B0aW9ucy5hbHQgfHwgJyc7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRhZGRDbGFzcyhpY29uLCBjbGFzc1RvQWRkKTtcclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLmtleWJvYXJkKSB7XHJcbiAgXHRcdFx0aWNvbi50YWJJbmRleCA9ICcwJztcclxuICBcdFx0XHRpY29uLnNldEF0dHJpYnV0ZSgncm9sZScsICdidXR0b24nKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5faWNvbiA9IGljb247XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy5yaXNlT25Ib3Zlcikge1xyXG4gIFx0XHRcdHRoaXMub24oe1xyXG4gIFx0XHRcdFx0bW91c2VvdmVyOiB0aGlzLl9icmluZ1RvRnJvbnQsXHJcbiAgXHRcdFx0XHRtb3VzZW91dDogdGhpcy5fcmVzZXRaSW5kZXhcclxuICBcdFx0XHR9KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5hdXRvUGFuT25Gb2N1cykge1xyXG4gIFx0XHRcdG9uKGljb24sICdmb2N1cycsIHRoaXMuX3Bhbk9uRm9jdXMsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR2YXIgbmV3U2hhZG93ID0gb3B0aW9ucy5pY29uLmNyZWF0ZVNoYWRvdyh0aGlzLl9zaGFkb3cpLFxyXG4gIFx0XHQgICAgYWRkU2hhZG93ID0gZmFsc2U7XHJcblxyXG4gIFx0XHRpZiAobmV3U2hhZG93ICE9PSB0aGlzLl9zaGFkb3cpIHtcclxuICBcdFx0XHR0aGlzLl9yZW1vdmVTaGFkb3coKTtcclxuICBcdFx0XHRhZGRTaGFkb3cgPSB0cnVlO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAobmV3U2hhZG93KSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3MobmV3U2hhZG93LCBjbGFzc1RvQWRkKTtcclxuICBcdFx0XHRuZXdTaGFkb3cuYWx0ID0gJyc7XHJcbiAgXHRcdH1cclxuICBcdFx0dGhpcy5fc2hhZG93ID0gbmV3U2hhZG93O1xyXG5cclxuXHJcbiAgXHRcdGlmIChvcHRpb25zLm9wYWNpdHkgPCAxKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcblxyXG5cclxuICBcdFx0aWYgKGFkZEljb24pIHtcclxuICBcdFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9pY29uKTtcclxuICBcdFx0fVxyXG4gIFx0XHR0aGlzLl9pbml0SW50ZXJhY3Rpb24oKTtcclxuICBcdFx0aWYgKG5ld1NoYWRvdyAmJiBhZGRTaGFkb3cpIHtcclxuICBcdFx0XHR0aGlzLmdldFBhbmUob3B0aW9ucy5zaGFkb3dQYW5lKS5hcHBlbmRDaGlsZCh0aGlzLl9zaGFkb3cpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZW1vdmVJY29uOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMucmlzZU9uSG92ZXIpIHtcclxuICBcdFx0XHR0aGlzLm9mZih7XHJcbiAgXHRcdFx0XHRtb3VzZW92ZXI6IHRoaXMuX2JyaW5nVG9Gcm9udCxcclxuICBcdFx0XHRcdG1vdXNlb3V0OiB0aGlzLl9yZXNldFpJbmRleFxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmF1dG9QYW5PbkZvY3VzKSB7XHJcbiAgXHRcdFx0b2ZmKHRoaXMuX2ljb24sICdmb2N1cycsIHRoaXMuX3Bhbk9uRm9jdXMsIHRoaXMpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZW1vdmUodGhpcy5faWNvbik7XHJcbiAgXHRcdHRoaXMucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faWNvbik7XHJcblxyXG4gIFx0XHR0aGlzLl9pY29uID0gbnVsbDtcclxuICBcdH0sXHJcblxyXG4gIFx0X3JlbW92ZVNoYWRvdzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAodGhpcy5fc2hhZG93KSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX3NoYWRvdyk7XHJcbiAgXHRcdH1cclxuICBcdFx0dGhpcy5fc2hhZG93ID0gbnVsbDtcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldFBvczogZnVuY3Rpb24gKHBvcykge1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ljb24pIHtcclxuICBcdFx0XHRzZXRQb3NpdGlvbih0aGlzLl9pY29uLCBwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fc2hhZG93KSB7XHJcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fc2hhZG93LCBwb3MpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLl96SW5kZXggPSBwb3MueSArIHRoaXMub3B0aW9ucy56SW5kZXhPZmZzZXQ7XHJcblxyXG4gIFx0XHR0aGlzLl9yZXNldFpJbmRleCgpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlWkluZGV4OiBmdW5jdGlvbiAob2Zmc2V0KSB7XHJcbiAgXHRcdGlmICh0aGlzLl9pY29uKSB7XHJcbiAgXHRcdFx0dGhpcy5faWNvbi5zdHlsZS56SW5kZXggPSB0aGlzLl96SW5kZXggKyBvZmZzZXQ7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X2FuaW1hdGVab29tOiBmdW5jdGlvbiAob3B0KSB7XHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAuX2xhdExuZ1RvTmV3TGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcsIG9wdC56b29tLCBvcHQuY2VudGVyKS5yb3VuZCgpO1xyXG5cclxuICBcdFx0dGhpcy5fc2V0UG9zKHBvcyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0SW50ZXJhY3Rpb246IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmludGVyYWN0aXZlKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0YWRkQ2xhc3ModGhpcy5faWNvbiwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcclxuXHJcbiAgXHRcdHRoaXMuYWRkSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faWNvbik7XHJcblxyXG4gIFx0XHRpZiAoTWFya2VyRHJhZykge1xyXG4gIFx0XHRcdHZhciBkcmFnZ2FibGUgPSB0aGlzLm9wdGlvbnMuZHJhZ2dhYmxlO1xyXG4gIFx0XHRcdGlmICh0aGlzLmRyYWdnaW5nKSB7XHJcbiAgXHRcdFx0XHRkcmFnZ2FibGUgPSB0aGlzLmRyYWdnaW5nLmVuYWJsZWQoKTtcclxuICBcdFx0XHRcdHRoaXMuZHJhZ2dpbmcuZGlzYWJsZSgpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0dGhpcy5kcmFnZ2luZyA9IG5ldyBNYXJrZXJEcmFnKHRoaXMpO1xyXG5cclxuICBcdFx0XHRpZiAoZHJhZ2dhYmxlKSB7XHJcbiAgXHRcdFx0XHR0aGlzLmRyYWdnaW5nLmVuYWJsZSgpO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldE9wYWNpdHkob3BhY2l0eTogTnVtYmVyKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgb3BhY2l0eSBvZiB0aGUgbWFya2VyLlxyXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcclxuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIG9wYWNpdHkgPSB0aGlzLm9wdGlvbnMub3BhY2l0eTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9pY29uKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9pY29uLCBvcGFjaXR5KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aWYgKHRoaXMuX3NoYWRvdykge1xyXG4gIFx0XHRcdHNldE9wYWNpdHkodGhpcy5fc2hhZG93LCBvcGFjaXR5KTtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRfYnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHRoaXMuX3VwZGF0ZVpJbmRleCh0aGlzLm9wdGlvbnMucmlzZU9mZnNldCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZXNldFpJbmRleDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoMCk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9wYW5PbkZvY3VzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XHJcbiAgXHRcdGlmICghbWFwKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIGljb25PcHRzID0gdGhpcy5vcHRpb25zLmljb24ub3B0aW9ucztcclxuICBcdFx0dmFyIHNpemUgPSBpY29uT3B0cy5pY29uU2l6ZSA/IHRvUG9pbnQoaWNvbk9wdHMuaWNvblNpemUpIDogdG9Qb2ludCgwLCAwKTtcclxuICBcdFx0dmFyIGFuY2hvciA9IGljb25PcHRzLmljb25BbmNob3IgPyB0b1BvaW50KGljb25PcHRzLmljb25BbmNob3IpIDogdG9Qb2ludCgwLCAwKTtcclxuXHJcbiAgXHRcdG1hcC5wYW5JbnNpZGUodGhpcy5fbGF0bG5nLCB7XHJcbiAgXHRcdFx0cGFkZGluZ1RvcExlZnQ6IGFuY2hvcixcclxuICBcdFx0XHRwYWRkaW5nQm90dG9tUmlnaHQ6IHNpemUuc3VidHJhY3QoYW5jaG9yKVxyXG4gIFx0XHR9KTtcclxuICBcdH0sXHJcblxyXG4gIFx0X2dldFBvcHVwQW5jaG9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLm9wdGlvbnMuaWNvbi5vcHRpb25zLnBvcHVwQW5jaG9yO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0VG9vbHRpcEFuY2hvcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLmljb24ub3B0aW9ucy50b29sdGlwQW5jaG9yO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gZmFjdG9yeSBMLm1hcmtlcihsYXRsbmc6IExhdExuZywgb3B0aW9ucz8gOiBNYXJrZXIgb3B0aW9ucylcclxuXHJcbiAgLy8gQGZhY3RvcnkgTC5tYXJrZXIobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/IDogTWFya2VyIG9wdGlvbnMpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgTWFya2VyIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCBhbmQgb3B0aW9uYWxseSBhbiBvcHRpb25zIG9iamVjdC5cclxuICBmdW5jdGlvbiBtYXJrZXIobGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IE1hcmtlcihsYXRsbmcsIG9wdGlvbnMpO1xyXG4gIH1cblxuICAvKlxuICAgKiBAY2xhc3MgUGF0aFxuICAgKiBAYWthIEwuUGF0aFxuICAgKiBAaW5oZXJpdHMgSW50ZXJhY3RpdmUgbGF5ZXJcbiAgICpcbiAgICogQW4gYWJzdHJhY3QgY2xhc3MgdGhhdCBjb250YWlucyBvcHRpb25zIGFuZCBjb25zdGFudHMgc2hhcmVkIGJldHdlZW4gdmVjdG9yXG4gICAqIG92ZXJsYXlzIChQb2x5Z29uLCBQb2x5bGluZSwgQ2lyY2xlKS4gRG8gbm90IHVzZSBpdCBkaXJlY3RseS4gRXh0ZW5kcyBgTGF5ZXJgLlxuICAgKi9cblxuICB2YXIgUGF0aCA9IExheWVyLmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgUGF0aCBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiBzdHJva2U6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBXaGV0aGVyIHRvIGRyYXcgc3Ryb2tlIGFsb25nIHRoZSBwYXRoLiBTZXQgaXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIGJvcmRlcnMgb24gcG9seWdvbnMgb3IgY2lyY2xlcy5cbiAgXHRcdHN0cm9rZTogdHJ1ZSxcblxuICBcdFx0Ly8gQG9wdGlvbiBjb2xvcjogU3RyaW5nID0gJyMzMzg4ZmYnXG4gIFx0XHQvLyBTdHJva2UgY29sb3JcbiAgXHRcdGNvbG9yOiAnIzMzODhmZicsXG5cbiAgXHRcdC8vIEBvcHRpb24gd2VpZ2h0OiBOdW1iZXIgPSAzXG4gIFx0XHQvLyBTdHJva2Ugd2lkdGggaW4gcGl4ZWxzXG4gIFx0XHR3ZWlnaHQ6IDMsXG5cbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXG4gIFx0XHQvLyBTdHJva2Ugb3BhY2l0eVxuICBcdFx0b3BhY2l0eTogMSxcblxuICBcdFx0Ly8gQG9wdGlvbiBsaW5lQ2FwOiBTdHJpbmc9ICdyb3VuZCdcbiAgXHRcdC8vIEEgc3RyaW5nIHRoYXQgZGVmaW5lcyBbc2hhcGUgdG8gYmUgdXNlZCBhdCB0aGUgZW5kXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3N0cm9rZS1saW5lY2FwKSBvZiB0aGUgc3Ryb2tlLlxuICBcdFx0bGluZUNhcDogJ3JvdW5kJyxcblxuICBcdFx0Ly8gQG9wdGlvbiBsaW5lSm9pbjogU3RyaW5nID0gJ3JvdW5kJ1xuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIFtzaGFwZSB0byBiZSB1c2VkIGF0IHRoZSBjb3JuZXJzXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL3N0cm9rZS1saW5lam9pbikgb2YgdGhlIHN0cm9rZS5cbiAgXHRcdGxpbmVKb2luOiAncm91bmQnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGRhc2hBcnJheTogU3RyaW5nID0gbnVsbFxuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIHRoZSBzdHJva2UgW2Rhc2ggcGF0dGVybl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9zdHJva2UtZGFzaGFycmF5KS4gRG9lc24ndCB3b3JrIG9uIGBDYW52YXNgLXBvd2VyZWQgbGF5ZXJzIGluIFtzb21lIG9sZCBicm93c2Vyc10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJL0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC9zZXRMaW5lRGFzaCNCcm93c2VyX2NvbXBhdGliaWxpdHkpLlxuICBcdFx0ZGFzaEFycmF5OiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGRhc2hPZmZzZXQ6IFN0cmluZyA9IG51bGxcbiAgXHRcdC8vIEEgc3RyaW5nIHRoYXQgZGVmaW5lcyB0aGUgW2Rpc3RhbmNlIGludG8gdGhlIGRhc2ggcGF0dGVybiB0byBzdGFydCB0aGUgZGFzaF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0F0dHJpYnV0ZS9zdHJva2UtZGFzaG9mZnNldCkuIERvZXNuJ3Qgd29yayBvbiBgQ2FudmFzYC1wb3dlcmVkIGxheWVycyBpbiBbc29tZSBvbGQgYnJvd3NlcnNdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQvc2V0TGluZURhc2gjQnJvd3Nlcl9jb21wYXRpYmlsaXR5KS5cbiAgXHRcdGRhc2hPZmZzZXQ6IG51bGwsXG5cbiAgXHRcdC8vIEBvcHRpb24gZmlsbDogQm9vbGVhbiA9IGRlcGVuZHNcbiAgXHRcdC8vIFdoZXRoZXIgdG8gZmlsbCB0aGUgcGF0aCB3aXRoIGNvbG9yLiBTZXQgaXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIGZpbGxpbmcgb24gcG9seWdvbnMgb3IgY2lyY2xlcy5cbiAgXHRcdGZpbGw6IGZhbHNlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGZpbGxDb2xvcjogU3RyaW5nID0gKlxuICBcdFx0Ly8gRmlsbCBjb2xvci4gRGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIHRoZSBbYGNvbG9yYF0oI3BhdGgtY29sb3IpIG9wdGlvblxuICBcdFx0ZmlsbENvbG9yOiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGZpbGxPcGFjaXR5OiBOdW1iZXIgPSAwLjJcbiAgXHRcdC8vIEZpbGwgb3BhY2l0eS5cbiAgXHRcdGZpbGxPcGFjaXR5OiAwLjIsXG5cbiAgXHRcdC8vIEBvcHRpb24gZmlsbFJ1bGU6IFN0cmluZyA9ICdldmVub2RkJ1xuICBcdFx0Ly8gQSBzdHJpbmcgdGhhdCBkZWZpbmVzIFtob3cgdGhlIGluc2lkZSBvZiBhIHNoYXBlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcvQXR0cmlidXRlL2ZpbGwtcnVsZSkgaXMgZGV0ZXJtaW5lZC5cbiAgXHRcdGZpbGxSdWxlOiAnZXZlbm9kZCcsXG5cbiAgXHRcdC8vIGNsYXNzTmFtZTogJycsXG5cbiAgXHRcdC8vIE9wdGlvbiBpbmhlcml0ZWQgZnJvbSBcIkludGVyYWN0aXZlIGxheWVyXCIgYWJzdHJhY3QgY2xhc3NcbiAgXHRcdGludGVyYWN0aXZlOiB0cnVlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGJ1YmJsaW5nTW91c2VFdmVudHM6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBXaGVuIGB0cnVlYCwgYSBtb3VzZSBldmVudCBvbiB0aGlzIHBhdGggd2lsbCB0cmlnZ2VyIHRoZSBzYW1lIGV2ZW50IG9uIHRoZSBtYXBcbiAgXHRcdC8vICh1bmxlc3MgW2BMLkRvbUV2ZW50LnN0b3BQcm9wYWdhdGlvbmBdKCNkb21ldmVudC1zdG9wcHJvcGFnYXRpb24pIGlzIHVzZWQpLlxuICBcdFx0YnViYmxpbmdNb3VzZUV2ZW50czogdHJ1ZVxuICBcdH0sXG5cbiAgXHRiZWZvcmVBZGQ6IGZ1bmN0aW9uIChtYXApIHtcbiAgXHRcdC8vIFJlbmRlcmVyIGlzIHNldCBoZXJlIGJlY2F1c2Ugd2UgbmVlZCB0byBjYWxsIHJlbmRlcmVyLmdldEV2ZW50c1xuICBcdFx0Ly8gYmVmb3JlIHRoaXMuZ2V0RXZlbnRzLlxuICBcdFx0dGhpcy5fcmVuZGVyZXIgPSBtYXAuZ2V0UmVuZGVyZXIodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5faW5pdFBhdGgodGhpcyk7XG4gIFx0XHR0aGlzLl9yZXNldCgpO1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX2FkZFBhdGgodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5fcmVtb3ZlUGF0aCh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCByZWRyYXcoKTogdGhpc1xuICBcdC8vIFJlZHJhd3MgdGhlIGxheWVyLiBTb21ldGltZXMgdXNlZnVsIGFmdGVyIHlvdSBjaGFuZ2VkIHRoZSBjb29yZGluYXRlcyB0aGF0IHRoZSBwYXRoIHVzZXMuXG4gIFx0cmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl91cGRhdGVQYXRoKHRoaXMpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0U3R5bGUoc3R5bGU6IFBhdGggb3B0aW9ucyk6IHRoaXNcbiAgXHQvLyBDaGFuZ2VzIHRoZSBhcHBlYXJhbmNlIG9mIGEgUGF0aCBiYXNlZCBvbiB0aGUgb3B0aW9ucyBpbiB0aGUgYFBhdGggb3B0aW9uc2Agb2JqZWN0LlxuICBcdHNldFN0eWxlOiBmdW5jdGlvbiAoc3R5bGUpIHtcbiAgXHRcdHNldE9wdGlvbnModGhpcywgc3R5bGUpO1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl91cGRhdGVTdHlsZSh0aGlzKTtcbiAgXHRcdFx0aWYgKHRoaXMub3B0aW9ucy5zdHJva2UgJiYgc3R5bGUgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHN0eWxlLCAnd2VpZ2h0JykpIHtcbiAgXHRcdFx0XHR0aGlzLl91cGRhdGVCb3VuZHMoKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgYnJpbmdUb0Zyb250KCk6IHRoaXNcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSB0b3Agb2YgYWxsIHBhdGggbGF5ZXJzLlxuICBcdGJyaW5nVG9Gcm9udDogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl9icmluZ1RvRnJvbnQodGhpcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjaygpOiB0aGlzXG4gIFx0Ly8gQnJpbmdzIHRoZSBsYXllciB0byB0aGUgYm90dG9tIG9mIGFsbCBwYXRoIGxheWVycy5cbiAgXHRicmluZ1RvQmFjazogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX3JlbmRlcmVyKSB7XG4gIFx0XHRcdHRoaXMuX3JlbmRlcmVyLl9icmluZ1RvQmFjayh0aGlzKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHRnZXRFbGVtZW50OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fcGF0aDtcbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyBkZWZpbmVkIGluIGNoaWxkIGNsYXNzZXNcbiAgXHRcdHRoaXMuX3Byb2plY3QoKTtcbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfY2xpY2tUb2xlcmFuY2U6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdC8vIHVzZWQgd2hlbiBkb2luZyBoaXQgZGV0ZWN0aW9uIGZvciBDYW52YXMgbGF5ZXJzXG4gIFx0XHRyZXR1cm4gKHRoaXMub3B0aW9ucy5zdHJva2UgPyB0aGlzLm9wdGlvbnMud2VpZ2h0IC8gMiA6IDApICtcbiAgXHRcdCAgKHRoaXMuX3JlbmRlcmVyLm9wdGlvbnMudG9sZXJhbmNlIHx8IDApO1xuICBcdH1cbiAgfSk7XG5cbiAgLypcbiAgICogQGNsYXNzIENpcmNsZU1hcmtlclxuICAgKiBAYWthIEwuQ2lyY2xlTWFya2VyXG4gICAqIEBpbmhlcml0cyBQYXRoXG4gICAqXG4gICAqIEEgY2lyY2xlIG9mIGEgZml4ZWQgc2l6ZSB3aXRoIHJhZGl1cyBzcGVjaWZpZWQgaW4gcGl4ZWxzLiBFeHRlbmRzIGBQYXRoYC5cbiAgICovXG5cbiAgdmFyIENpcmNsZU1hcmtlciA9IFBhdGguZXh0ZW5kKHtcblxuICBcdC8vIEBzZWN0aW9uXG4gIFx0Ly8gQGFrYSBDaXJjbGVNYXJrZXIgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGZpbGw6IHRydWUsXG5cbiAgXHRcdC8vIEBvcHRpb24gcmFkaXVzOiBOdW1iZXIgPSAxMFxuICBcdFx0Ly8gUmFkaXVzIG9mIHRoZSBjaXJjbGUgbWFya2VyLCBpbiBwaXhlbHNcbiAgXHRcdHJhZGl1czogMTBcbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKGxhdGxuZywgb3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuX2xhdGxuZyA9IHRvTGF0TG5nKGxhdGxuZyk7XG4gIFx0XHR0aGlzLl9yYWRpdXMgPSB0aGlzLm9wdGlvbnMucmFkaXVzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHNldExhdExuZyhsYXRMbmc6IExhdExuZyk6IHRoaXNcbiAgXHQvLyBTZXRzIHRoZSBwb3NpdGlvbiBvZiBhIGNpcmNsZSBtYXJrZXIgdG8gYSBuZXcgbG9jYXRpb24uXG4gIFx0c2V0TGF0TG5nOiBmdW5jdGlvbiAobGF0bG5nKSB7XG4gIFx0XHR2YXIgb2xkTGF0TG5nID0gdGhpcy5fbGF0bG5nO1xuICBcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcbiAgXHRcdHRoaXMucmVkcmF3KCk7XG5cbiAgXHRcdC8vIEBldmVudCBtb3ZlOiBFdmVudFxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgbWFya2VyIGlzIG1vdmVkIHZpYSBbYHNldExhdExuZ2BdKCNjaXJjbGVtYXJrZXItc2V0bGF0bG5nKS4gT2xkIGFuZCBuZXcgY29vcmRpbmF0ZXMgYXJlIGluY2x1ZGVkIGluIGV2ZW50IGFyZ3VtZW50cyBhcyBgb2xkTGF0TG5nYCwgYGxhdGxuZ2AuXG4gIFx0XHRyZXR1cm4gdGhpcy5maXJlKCdtb3ZlJywge29sZExhdExuZzogb2xkTGF0TG5nLCBsYXRsbmc6IHRoaXMuX2xhdGxuZ30pO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldExhdExuZygpOiBMYXRMbmdcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IGdlb2dyYXBoaWNhbCBwb3NpdGlvbiBvZiB0aGUgY2lyY2xlIG1hcmtlclxuICBcdGdldExhdExuZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2xhdGxuZztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRSYWRpdXMocmFkaXVzOiBOdW1iZXIpOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgcmFkaXVzIG9mIGEgY2lyY2xlIG1hcmtlci4gVW5pdHMgYXJlIGluIHBpeGVscy5cbiAgXHRzZXRSYWRpdXM6IGZ1bmN0aW9uIChyYWRpdXMpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy5yYWRpdXMgPSB0aGlzLl9yYWRpdXMgPSByYWRpdXM7XG4gIFx0XHRyZXR1cm4gdGhpcy5yZWRyYXcoKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRSYWRpdXMoKTogTnVtYmVyXG4gIFx0Ly8gUmV0dXJucyB0aGUgY3VycmVudCByYWRpdXMgb2YgdGhlIGNpcmNsZVxuICBcdGdldFJhZGl1czogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX3JhZGl1cztcbiAgXHR9LFxuXG4gIFx0c2V0U3R5bGUgOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICBcdFx0dmFyIHJhZGl1cyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5yYWRpdXMgfHwgdGhpcy5fcmFkaXVzO1xuICBcdFx0UGF0aC5wcm90b3R5cGUuc2V0U3R5bGUuY2FsbCh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuc2V0UmFkaXVzKHJhZGl1cyk7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0X3Byb2plY3Q6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHRoaXMuX3BvaW50ID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcpO1xuICBcdFx0dGhpcy5fdXBkYXRlQm91bmRzKCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciByID0gdGhpcy5fcmFkaXVzLFxuICBcdFx0ICAgIHIyID0gdGhpcy5fcmFkaXVzWSB8fCByLFxuICBcdFx0ICAgIHcgPSB0aGlzLl9jbGlja1RvbGVyYW5jZSgpLFxuICBcdFx0ICAgIHAgPSBbciArIHcsIHIyICsgd107XG4gIFx0XHR0aGlzLl9weEJvdW5kcyA9IG5ldyBCb3VuZHModGhpcy5fcG9pbnQuc3VidHJhY3QocCksIHRoaXMuX3BvaW50LmFkZChwKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUGF0aCgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX3VwZGF0ZUNpcmNsZSh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X2VtcHR5OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fcmFkaXVzICYmICF0aGlzLl9yZW5kZXJlci5fYm91bmRzLmludGVyc2VjdHModGhpcy5fcHhCb3VuZHMpO1xuICBcdH0sXG5cbiAgXHQvLyBOZWVkZWQgYnkgdGhlIGBDYW52YXNgIHJlbmRlcmVyIGZvciBpbnRlcmFjdGl2aXR5XG4gIFx0X2NvbnRhaW5zUG9pbnQ6IGZ1bmN0aW9uIChwKSB7XG4gIFx0XHRyZXR1cm4gcC5kaXN0YW5jZVRvKHRoaXMuX3BvaW50KSA8PSB0aGlzLl9yYWRpdXMgKyB0aGlzLl9jbGlja1RvbGVyYW5jZSgpO1xuICBcdH1cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLmNpcmNsZU1hcmtlcihsYXRsbmc6IExhdExuZywgb3B0aW9ucz86IENpcmNsZU1hcmtlciBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBjaXJjbGUgbWFya2VyIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCwgYW5kIGFuIG9wdGlvbmFsIG9wdGlvbnMgb2JqZWN0LlxuICBmdW5jdGlvbiBjaXJjbGVNYXJrZXIobGF0bG5nLCBvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBDaXJjbGVNYXJrZXIobGF0bG5nLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qXG4gICAqIEBjbGFzcyBDaXJjbGVcbiAgICogQGFrYSBMLkNpcmNsZVxuICAgKiBAaW5oZXJpdHMgQ2lyY2xlTWFya2VyXG4gICAqXG4gICAqIEEgY2xhc3MgZm9yIGRyYXdpbmcgY2lyY2xlIG92ZXJsYXlzIG9uIGEgbWFwLiBFeHRlbmRzIGBDaXJjbGVNYXJrZXJgLlxuICAgKlxuICAgKiBJdCdzIGFuIGFwcHJveGltYXRpb24gYW5kIHN0YXJ0cyB0byBkaXZlcmdlIGZyb20gYSByZWFsIGNpcmNsZSBjbG9zZXIgdG8gcG9sZXMgKGR1ZSB0byBwcm9qZWN0aW9uIGRpc3RvcnRpb24pLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiBMLmNpcmNsZShbNTAuNSwgMzAuNV0sIHtyYWRpdXM6IDIwMH0pLmFkZFRvKG1hcCk7XG4gICAqIGBgYFxuICAgKi9cblxuICB2YXIgQ2lyY2xlID0gQ2lyY2xlTWFya2VyLmV4dGVuZCh7XG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKSB7XG4gIFx0XHRpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdudW1iZXInKSB7XG4gIFx0XHRcdC8vIEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggMC43LnggZmFjdG9yeSAobGF0bG5nLCByYWRpdXMsIG9wdGlvbnM/KVxuICBcdFx0XHRvcHRpb25zID0gZXh0ZW5kKHt9LCBsZWdhY3lPcHRpb25zLCB7cmFkaXVzOiBvcHRpb25zfSk7XG4gIFx0XHR9XG4gIFx0XHRzZXRPcHRpb25zKHRoaXMsIG9wdGlvbnMpO1xuICBcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcblxuICBcdFx0aWYgKGlzTmFOKHRoaXMub3B0aW9ucy5yYWRpdXMpKSB7IHRocm93IG5ldyBFcnJvcignQ2lyY2xlIHJhZGl1cyBjYW5ub3QgYmUgTmFOJyk7IH1cblxuICBcdFx0Ly8gQHNlY3Rpb25cbiAgXHRcdC8vIEBha2EgQ2lyY2xlIG9wdGlvbnNcbiAgXHRcdC8vIEBvcHRpb24gcmFkaXVzOiBOdW1iZXI7IFJhZGl1cyBvZiB0aGUgY2lyY2xlLCBpbiBtZXRlcnMuXG4gIFx0XHR0aGlzLl9tUmFkaXVzID0gdGhpcy5vcHRpb25zLnJhZGl1cztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRSYWRpdXMocmFkaXVzOiBOdW1iZXIpOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgcmFkaXVzIG9mIGEgY2lyY2xlLiBVbml0cyBhcmUgaW4gbWV0ZXJzLlxuICBcdHNldFJhZGl1czogZnVuY3Rpb24gKHJhZGl1cykge1xuICBcdFx0dGhpcy5fbVJhZGl1cyA9IHJhZGl1cztcbiAgXHRcdHJldHVybiB0aGlzLnJlZHJhdygpO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldFJhZGl1cygpOiBOdW1iZXJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjdXJyZW50IHJhZGl1cyBvZiBhIGNpcmNsZS4gVW5pdHMgYXJlIGluIG1ldGVycy5cbiAgXHRnZXRSYWRpdXM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl9tUmFkaXVzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcbiAgXHQvLyBSZXR1cm5zIHRoZSBgTGF0TG5nQm91bmRzYCBvZiB0aGUgcGF0aC5cbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBoYWxmID0gW3RoaXMuX3JhZGl1cywgdGhpcy5fcmFkaXVzWSB8fCB0aGlzLl9yYWRpdXNdO1xuXG4gIFx0XHRyZXR1cm4gbmV3IExhdExuZ0JvdW5kcyhcbiAgXHRcdFx0dGhpcy5fbWFwLmxheWVyUG9pbnRUb0xhdExuZyh0aGlzLl9wb2ludC5zdWJ0cmFjdChoYWxmKSksXG4gIFx0XHRcdHRoaXMuX21hcC5sYXllclBvaW50VG9MYXRMbmcodGhpcy5fcG9pbnQuYWRkKGhhbGYpKSk7XG4gIFx0fSxcblxuICBcdHNldFN0eWxlOiBQYXRoLnByb3RvdHlwZS5zZXRTdHlsZSxcblxuICBcdF9wcm9qZWN0OiBmdW5jdGlvbiAoKSB7XG5cbiAgXHRcdHZhciBsbmcgPSB0aGlzLl9sYXRsbmcubG5nLFxuICBcdFx0ICAgIGxhdCA9IHRoaXMuX2xhdGxuZy5sYXQsXG4gIFx0XHQgICAgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIGNycyA9IG1hcC5vcHRpb25zLmNycztcblxuICBcdFx0aWYgKGNycy5kaXN0YW5jZSA9PT0gRWFydGguZGlzdGFuY2UpIHtcbiAgXHRcdFx0dmFyIGQgPSBNYXRoLlBJIC8gMTgwLFxuICBcdFx0XHQgICAgbGF0UiA9ICh0aGlzLl9tUmFkaXVzIC8gRWFydGguUikgLyBkLFxuICBcdFx0XHQgICAgdG9wID0gbWFwLnByb2plY3QoW2xhdCArIGxhdFIsIGxuZ10pLFxuICBcdFx0XHQgICAgYm90dG9tID0gbWFwLnByb2plY3QoW2xhdCAtIGxhdFIsIGxuZ10pLFxuICBcdFx0XHQgICAgcCA9IHRvcC5hZGQoYm90dG9tKS5kaXZpZGVCeSgyKSxcbiAgXHRcdFx0ICAgIGxhdDIgPSBtYXAudW5wcm9qZWN0KHApLmxhdCxcbiAgXHRcdFx0ICAgIGxuZ1IgPSBNYXRoLmFjb3MoKE1hdGguY29zKGxhdFIgKiBkKSAtIE1hdGguc2luKGxhdCAqIGQpICogTWF0aC5zaW4obGF0MiAqIGQpKSAvXG4gIFx0XHRcdCAgICAgICAgICAgIChNYXRoLmNvcyhsYXQgKiBkKSAqIE1hdGguY29zKGxhdDIgKiBkKSkpIC8gZDtcblxuICBcdFx0XHRpZiAoaXNOYU4obG5nUikgfHwgbG5nUiA9PT0gMCkge1xuICBcdFx0XHRcdGxuZ1IgPSBsYXRSIC8gTWF0aC5jb3MoTWF0aC5QSSAvIDE4MCAqIGxhdCk7IC8vIEZhbGxiYWNrIGZvciBlZGdlIGNhc2UsICMyNDI1XG4gIFx0XHRcdH1cblxuICBcdFx0XHR0aGlzLl9wb2ludCA9IHAuc3VidHJhY3QobWFwLmdldFBpeGVsT3JpZ2luKCkpO1xuICBcdFx0XHR0aGlzLl9yYWRpdXMgPSBpc05hTihsbmdSKSA/IDAgOiBwLnggLSBtYXAucHJvamVjdChbbGF0MiwgbG5nIC0gbG5nUl0pLng7XG4gIFx0XHRcdHRoaXMuX3JhZGl1c1kgPSBwLnkgLSB0b3AueTtcblxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dmFyIGxhdGxuZzIgPSBjcnMudW5wcm9qZWN0KGNycy5wcm9qZWN0KHRoaXMuX2xhdGxuZykuc3VidHJhY3QoW3RoaXMuX21SYWRpdXMsIDBdKSk7XG5cbiAgXHRcdFx0dGhpcy5fcG9pbnQgPSBtYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2xhdGxuZyk7XG4gIFx0XHRcdHRoaXMuX3JhZGl1cyA9IHRoaXMuX3BvaW50LnggLSBtYXAubGF0TG5nVG9MYXllclBvaW50KGxhdGxuZzIpLng7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZUJvdW5kcygpO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQGZhY3RvcnkgTC5jaXJjbGUobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBDaXJjbGUgb3B0aW9ucylcbiAgLy8gSW5zdGFudGlhdGVzIGEgY2lyY2xlIG9iamVjdCBnaXZlbiBhIGdlb2dyYXBoaWNhbCBwb2ludCwgYW5kIGFuIG9wdGlvbnMgb2JqZWN0XG4gIC8vIHdoaWNoIGNvbnRhaW5zIHRoZSBjaXJjbGUgcmFkaXVzLlxuICAvLyBAYWx0ZXJuYXRpdmVcbiAgLy8gQGZhY3RvcnkgTC5jaXJjbGUobGF0bG5nOiBMYXRMbmcsIHJhZGl1czogTnVtYmVyLCBvcHRpb25zPzogQ2lyY2xlIG9wdGlvbnMpXG4gIC8vIE9ic29sZXRlIHdheSBvZiBpbnN0YW50aWF0aW5nIGEgY2lyY2xlLCBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIDAuNy54IGNvZGUuXG4gIC8vIERvIG5vdCB1c2UgaW4gbmV3IGFwcGxpY2F0aW9ucyBvciBwbHVnaW5zLlxuICBmdW5jdGlvbiBjaXJjbGUobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBDaXJjbGUobGF0bG5nLCBvcHRpb25zLCBsZWdhY3lPcHRpb25zKTtcbiAgfVxuXG4gIC8qXG4gICAqIEBjbGFzcyBQb2x5bGluZVxuICAgKiBAYWthIEwuUG9seWxpbmVcbiAgICogQGluaGVyaXRzIFBhdGhcbiAgICpcbiAgICogQSBjbGFzcyBmb3IgZHJhd2luZyBwb2x5bGluZSBvdmVybGF5cyBvbiBhIG1hcC4gRXh0ZW5kcyBgUGF0aGAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5bGluZSBmcm9tIGFuIGFycmF5IG9mIExhdExuZyBwb2ludHNcbiAgICogdmFyIGxhdGxuZ3MgPSBbXG4gICAqIFx0WzQ1LjUxLCAtMTIyLjY4XSxcbiAgICogXHRbMzcuNzcsIC0xMjIuNDNdLFxuICAgKiBcdFszNC4wNCwgLTExOC4yXVxuICAgKiBdO1xuICAgKlxuICAgKiB2YXIgcG9seWxpbmUgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtjb2xvcjogJ3JlZCd9KS5hZGRUbyhtYXApO1xuICAgKlxuICAgKiAvLyB6b29tIHRoZSBtYXAgdG8gdGhlIHBvbHlsaW5lXG4gICAqIG1hcC5maXRCb3VuZHMocG9seWxpbmUuZ2V0Qm91bmRzKCkpO1xuICAgKiBgYGBcbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHBhc3MgYSBtdWx0aS1kaW1lbnNpb25hbCBhcnJheSB0byByZXByZXNlbnQgYSBgTXVsdGlQb2x5bGluZWAgc2hhcGU6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5bGluZSBmcm9tIGFuIGFycmF5IG9mIGFycmF5cyBvZiBMYXRMbmcgcG9pbnRzXG4gICAqIHZhciBsYXRsbmdzID0gW1xuICAgKiBcdFtbNDUuNTEsIC0xMjIuNjhdLFxuICAgKiBcdCBbMzcuNzcsIC0xMjIuNDNdLFxuICAgKiBcdCBbMzQuMDQsIC0xMTguMl1dLFxuICAgKiBcdFtbNDAuNzgsIC03My45MV0sXG4gICAqIFx0IFs0MS44MywgLTg3LjYyXSxcbiAgICogXHQgWzMyLjc2LCAtOTYuNzJdXVxuICAgKiBdO1xuICAgKiBgYGBcbiAgICovXG5cblxuICB2YXIgUG9seWxpbmUgPSBQYXRoLmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgUG9seWxpbmUgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gc21vb3RoRmFjdG9yOiBOdW1iZXIgPSAxLjBcbiAgXHRcdC8vIEhvdyBtdWNoIHRvIHNpbXBsaWZ5IHRoZSBwb2x5bGluZSBvbiBlYWNoIHpvb20gbGV2ZWwuIE1vcmUgbWVhbnNcbiAgXHRcdC8vIGJldHRlciBwZXJmb3JtYW5jZSBhbmQgc21vb3RoZXIgbG9vaywgYW5kIGxlc3MgbWVhbnMgbW9yZSBhY2N1cmF0ZSByZXByZXNlbnRhdGlvbi5cbiAgXHRcdHNtb290aEZhY3RvcjogMS4wLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG5vQ2xpcDogQm9vbGVhbiA9IGZhbHNlXG4gIFx0XHQvLyBEaXNhYmxlIHBvbHlsaW5lIGNsaXBwaW5nLlxuICBcdFx0bm9DbGlwOiBmYWxzZVxuICBcdH0sXG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobGF0bG5ncywgb3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHRoaXMuX3NldExhdExuZ3MobGF0bG5ncyk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0TGF0TG5ncygpOiBMYXRMbmdbXVxuICBcdC8vIFJldHVybnMgYW4gYXJyYXkgb2YgdGhlIHBvaW50cyBpbiB0aGUgcGF0aCwgb3IgbmVzdGVkIGFycmF5cyBvZiBwb2ludHMgaW4gY2FzZSBvZiBtdWx0aS1wb2x5bGluZS5cbiAgXHRnZXRMYXRMbmdzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fbGF0bG5ncztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRMYXRMbmdzKGxhdGxuZ3M6IExhdExuZ1tdKTogdGhpc1xuICBcdC8vIFJlcGxhY2VzIGFsbCB0aGUgcG9pbnRzIGluIHRoZSBwb2x5bGluZSB3aXRoIHRoZSBnaXZlbiBhcnJheSBvZiBnZW9ncmFwaGljYWwgcG9pbnRzLlxuICBcdHNldExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHR0aGlzLl9zZXRMYXRMbmdzKGxhdGxuZ3MpO1xuICBcdFx0cmV0dXJuIHRoaXMucmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgaXNFbXB0eSgpOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIFBvbHlsaW5lIGhhcyBubyBMYXRMbmdzLlxuICBcdGlzRW1wdHk6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiAhdGhpcy5fbGF0bG5ncy5sZW5ndGg7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgY2xvc2VzdExheWVyUG9pbnQocDogUG9pbnQpOiBQb2ludFxuICBcdC8vIFJldHVybnMgdGhlIHBvaW50IGNsb3Nlc3QgdG8gYHBgIG9uIHRoZSBQb2x5bGluZS5cbiAgXHRjbG9zZXN0TGF5ZXJQb2ludDogZnVuY3Rpb24gKHApIHtcbiAgXHRcdHZhciBtaW5EaXN0YW5jZSA9IEluZmluaXR5LFxuICBcdFx0ICAgIG1pblBvaW50ID0gbnVsbCxcbiAgXHRcdCAgICBjbG9zZXN0ID0gX3NxQ2xvc2VzdFBvaW50T25TZWdtZW50LFxuICBcdFx0ICAgIHAxLCBwMjtcblxuICBcdFx0Zm9yICh2YXIgaiA9IDAsIGpMZW4gPSB0aGlzLl9wYXJ0cy5sZW5ndGg7IGogPCBqTGVuOyBqKyspIHtcbiAgXHRcdFx0dmFyIHBvaW50cyA9IHRoaXMuX3BhcnRzW2pdO1xuXG4gIFx0XHRcdGZvciAodmFyIGkgPSAxLCBsZW4gPSBwb2ludHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0XHRwMSA9IHBvaW50c1tpIC0gMV07XG4gIFx0XHRcdFx0cDIgPSBwb2ludHNbaV07XG5cbiAgXHRcdFx0XHR2YXIgc3FEaXN0ID0gY2xvc2VzdChwLCBwMSwgcDIsIHRydWUpO1xuXG4gIFx0XHRcdFx0aWYgKHNxRGlzdCA8IG1pbkRpc3RhbmNlKSB7XG4gIFx0XHRcdFx0XHRtaW5EaXN0YW5jZSA9IHNxRGlzdDtcbiAgXHRcdFx0XHRcdG1pblBvaW50ID0gY2xvc2VzdChwLCBwMSwgcDIpO1xuICBcdFx0XHRcdH1cbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0aWYgKG1pblBvaW50KSB7XG4gIFx0XHRcdG1pblBvaW50LmRpc3RhbmNlID0gTWF0aC5zcXJ0KG1pbkRpc3RhbmNlKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiBtaW5Qb2ludDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXG4gIFx0Ly8gUmV0dXJucyB0aGUgY2VudGVyIChbY2VudHJvaWRdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NlbnRyb2lkKSkgb2YgdGhlIHBvbHlsaW5lLlxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gdGhyb3dzIGVycm9yIHdoZW4gbm90IHlldCBhZGRlZCB0byBtYXAgYXMgdGhpcyBjZW50ZXIgY2FsY3VsYXRpb24gcmVxdWlyZXMgcHJvamVjdGVkIGNvb3JkaW5hdGVzXG4gIFx0XHRpZiAoIXRoaXMuX21hcCkge1xuICBcdFx0XHR0aHJvdyBuZXcgRXJyb3IoJ011c3QgYWRkIGxheWVyIHRvIG1hcCBiZWZvcmUgdXNpbmcgZ2V0Q2VudGVyKCknKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiBwb2x5bGluZUNlbnRlcih0aGlzLl9kZWZhdWx0U2hhcGUoKSwgdGhpcy5fbWFwLm9wdGlvbnMuY3JzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRCb3VuZHMoKTogTGF0TG5nQm91bmRzXG4gIFx0Ly8gUmV0dXJucyB0aGUgYExhdExuZ0JvdW5kc2Agb2YgdGhlIHBhdGguXG4gIFx0Z2V0Qm91bmRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fYm91bmRzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGFkZExhdExuZyhsYXRsbmc6IExhdExuZywgbGF0bG5ncz86IExhdExuZ1tdKTogdGhpc1xuICBcdC8vIEFkZHMgYSBnaXZlbiBwb2ludCB0byB0aGUgcG9seWxpbmUuIEJ5IGRlZmF1bHQsIGFkZHMgdG8gdGhlIGZpcnN0IHJpbmcgb2ZcbiAgXHQvLyB0aGUgcG9seWxpbmUgaW4gY2FzZSBvZiBhIG11bHRpLXBvbHlsaW5lLCBidXQgY2FuIGJlIG92ZXJyaWRkZW4gYnkgcGFzc2luZ1xuICBcdC8vIGEgc3BlY2lmaWMgcmluZyBhcyBhIExhdExuZyBhcnJheSAodGhhdCB5b3UgY2FuIGVhcmxpZXIgYWNjZXNzIHdpdGggW2BnZXRMYXRMbmdzYF0oI3BvbHlsaW5lLWdldGxhdGxuZ3MpKS5cbiAgXHRhZGRMYXRMbmc6IGZ1bmN0aW9uIChsYXRsbmcsIGxhdGxuZ3MpIHtcbiAgXHRcdGxhdGxuZ3MgPSBsYXRsbmdzIHx8IHRoaXMuX2RlZmF1bHRTaGFwZSgpO1xuICBcdFx0bGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcbiAgXHRcdGxhdGxuZ3MucHVzaChsYXRsbmcpO1xuICBcdFx0dGhpcy5fYm91bmRzLmV4dGVuZChsYXRsbmcpO1xuICBcdFx0cmV0dXJuIHRoaXMucmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdF9zZXRMYXRMbmdzOiBmdW5jdGlvbiAobGF0bG5ncykge1xuICBcdFx0dGhpcy5fYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcygpO1xuICBcdFx0dGhpcy5fbGF0bG5ncyA9IHRoaXMuX2NvbnZlcnRMYXRMbmdzKGxhdGxuZ3MpO1xuICBcdH0sXG5cbiAgXHRfZGVmYXVsdFNoYXBlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gaXNGbGF0KHRoaXMuX2xhdGxuZ3MpID8gdGhpcy5fbGF0bG5ncyA6IHRoaXMuX2xhdGxuZ3NbMF07XG4gIFx0fSxcblxuICBcdC8vIHJlY3Vyc2l2ZWx5IGNvbnZlcnQgbGF0bG5ncyBpbnB1dCBpbnRvIGFjdHVhbCBMYXRMbmcgaW5zdGFuY2VzOyBjYWxjdWxhdGUgYm91bmRzIGFsb25nIHRoZSB3YXlcbiAgXHRfY29udmVydExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHR2YXIgcmVzdWx0ID0gW10sXG4gIFx0XHQgICAgZmxhdCA9IGlzRmxhdChsYXRsbmdzKTtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IGxhdGxuZ3MubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0aWYgKGZsYXQpIHtcbiAgXHRcdFx0XHRyZXN1bHRbaV0gPSB0b0xhdExuZyhsYXRsbmdzW2ldKTtcbiAgXHRcdFx0XHR0aGlzLl9ib3VuZHMuZXh0ZW5kKHJlc3VsdFtpXSk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cmVzdWx0W2ldID0gdGhpcy5fY29udmVydExhdExuZ3MobGF0bG5nc1tpXSk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHJlc3VsdDtcbiAgXHR9LFxuXG4gIFx0X3Byb2plY3Q6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBweEJvdW5kcyA9IG5ldyBCb3VuZHMoKTtcbiAgXHRcdHRoaXMuX3JpbmdzID0gW107XG4gIFx0XHR0aGlzLl9wcm9qZWN0TGF0bG5ncyh0aGlzLl9sYXRsbmdzLCB0aGlzLl9yaW5ncywgcHhCb3VuZHMpO1xuXG4gIFx0XHRpZiAodGhpcy5fYm91bmRzLmlzVmFsaWQoKSAmJiBweEJvdW5kcy5pc1ZhbGlkKCkpIHtcbiAgXHRcdFx0dGhpcy5fcmF3UHhCb3VuZHMgPSBweEJvdW5kcztcbiAgXHRcdFx0dGhpcy5fdXBkYXRlQm91bmRzKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVCb3VuZHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciB3ID0gdGhpcy5fY2xpY2tUb2xlcmFuY2UoKSxcbiAgXHRcdCAgICBwID0gbmV3IFBvaW50KHcsIHcpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX3Jhd1B4Qm91bmRzKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fcHhCb3VuZHMgPSBuZXcgQm91bmRzKFtcbiAgXHRcdFx0dGhpcy5fcmF3UHhCb3VuZHMubWluLnN1YnRyYWN0KHApLFxuICBcdFx0XHR0aGlzLl9yYXdQeEJvdW5kcy5tYXguYWRkKHApXG4gIFx0XHRdKTtcbiAgXHR9LFxuXG4gIFx0Ly8gcmVjdXJzaXZlbHkgdHVybnMgbGF0bG5ncyBpbnRvIGEgc2V0IG9mIHJpbmdzIHdpdGggcHJvamVjdGVkIGNvb3JkaW5hdGVzXG4gIFx0X3Byb2plY3RMYXRsbmdzOiBmdW5jdGlvbiAobGF0bG5ncywgcmVzdWx0LCBwcm9qZWN0ZWRCb3VuZHMpIHtcbiAgXHRcdHZhciBmbGF0ID0gbGF0bG5nc1swXSBpbnN0YW5jZW9mIExhdExuZyxcbiAgXHRcdCAgICBsZW4gPSBsYXRsbmdzLmxlbmd0aCxcbiAgXHRcdCAgICBpLCByaW5nO1xuXG4gIFx0XHRpZiAoZmxhdCkge1xuICBcdFx0XHRyaW5nID0gW107XG4gIFx0XHRcdGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRcdHJpbmdbaV0gPSB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KGxhdGxuZ3NbaV0pO1xuICBcdFx0XHRcdHByb2plY3RlZEJvdW5kcy5leHRlbmQocmluZ1tpXSk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0cmVzdWx0LnB1c2gocmluZyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0XHR0aGlzLl9wcm9qZWN0TGF0bG5ncyhsYXRsbmdzW2ldLCByZXN1bHQsIHByb2plY3RlZEJvdW5kcyk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0Ly8gY2xpcCBwb2x5bGluZSBieSByZW5kZXJlciBib3VuZHMgc28gdGhhdCB3ZSBoYXZlIGxlc3MgdG8gcmVuZGVyIGZvciBwZXJmb3JtYW5jZVxuICBcdF9jbGlwUG9pbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgYm91bmRzID0gdGhpcy5fcmVuZGVyZXIuX2JvdW5kcztcblxuICBcdFx0dGhpcy5fcGFydHMgPSBbXTtcbiAgXHRcdGlmICghdGhpcy5fcHhCb3VuZHMgfHwgIXRoaXMuX3B4Qm91bmRzLmludGVyc2VjdHMoYm91bmRzKSkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubm9DbGlwKSB7XG4gIFx0XHRcdHRoaXMuX3BhcnRzID0gdGhpcy5fcmluZ3M7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dmFyIHBhcnRzID0gdGhpcy5fcGFydHMsXG4gIFx0XHQgICAgaSwgaiwgaywgbGVuLCBsZW4yLCBzZWdtZW50LCBwb2ludHM7XG5cbiAgXHRcdGZvciAoaSA9IDAsIGsgPSAwLCBsZW4gPSB0aGlzLl9yaW5ncy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRwb2ludHMgPSB0aGlzLl9yaW5nc1tpXTtcblxuICBcdFx0XHRmb3IgKGogPSAwLCBsZW4yID0gcG9pbnRzLmxlbmd0aDsgaiA8IGxlbjIgLSAxOyBqKyspIHtcbiAgXHRcdFx0XHRzZWdtZW50ID0gY2xpcFNlZ21lbnQocG9pbnRzW2pdLCBwb2ludHNbaiArIDFdLCBib3VuZHMsIGosIHRydWUpO1xuXG4gIFx0XHRcdFx0aWYgKCFzZWdtZW50KSB7IGNvbnRpbnVlOyB9XG5cbiAgXHRcdFx0XHRwYXJ0c1trXSA9IHBhcnRzW2tdIHx8IFtdO1xuICBcdFx0XHRcdHBhcnRzW2tdLnB1c2goc2VnbWVudFswXSk7XG5cbiAgXHRcdFx0XHQvLyBpZiBzZWdtZW50IGdvZXMgb3V0IG9mIHNjcmVlbiwgb3IgaXQncyB0aGUgbGFzdCBvbmUsIGl0J3MgdGhlIGVuZCBvZiB0aGUgbGluZSBwYXJ0XG4gIFx0XHRcdFx0aWYgKChzZWdtZW50WzFdICE9PSBwb2ludHNbaiArIDFdKSB8fCAoaiA9PT0gbGVuMiAtIDIpKSB7XG4gIFx0XHRcdFx0XHRwYXJ0c1trXS5wdXNoKHNlZ21lbnRbMV0pO1xuICBcdFx0XHRcdFx0aysrO1xuICBcdFx0XHRcdH1cbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBzaW1wbGlmeSBlYWNoIGNsaXBwZWQgcGFydCBvZiB0aGUgcG9seWxpbmUgZm9yIHBlcmZvcm1hbmNlXG4gIFx0X3NpbXBsaWZ5UG9pbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgcGFydHMgPSB0aGlzLl9wYXJ0cyxcbiAgXHRcdCAgICB0b2xlcmFuY2UgPSB0aGlzLm9wdGlvbnMuc21vb3RoRmFjdG9yO1xuXG4gIFx0XHRmb3IgKHZhciBpID0gMCwgbGVuID0gcGFydHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0cGFydHNbaV0gPSBzaW1wbGlmeShwYXJ0c1tpXSwgdG9sZXJhbmNlKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKCF0aGlzLl9tYXApIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRoaXMuX2NsaXBQb2ludHMoKTtcbiAgXHRcdHRoaXMuX3NpbXBsaWZ5UG9pbnRzKCk7XG4gIFx0XHR0aGlzLl91cGRhdGVQYXRoKCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVQYXRoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW5kZXJlci5fdXBkYXRlUG9seSh0aGlzKTtcbiAgXHR9LFxuXG4gIFx0Ly8gTmVlZGVkIGJ5IHRoZSBgQ2FudmFzYCByZW5kZXJlciBmb3IgaW50ZXJhY3Rpdml0eVxuICBcdF9jb250YWluc1BvaW50OiBmdW5jdGlvbiAocCwgY2xvc2VkKSB7XG4gIFx0XHR2YXIgaSwgaiwgaywgbGVuLCBsZW4yLCBwYXJ0LFxuICBcdFx0ICAgIHcgPSB0aGlzLl9jbGlja1RvbGVyYW5jZSgpO1xuXG4gIFx0XHRpZiAoIXRoaXMuX3B4Qm91bmRzIHx8ICF0aGlzLl9weEJvdW5kcy5jb250YWlucyhwKSkgeyByZXR1cm4gZmFsc2U7IH1cblxuICBcdFx0Ly8gaGl0IGRldGVjdGlvbiBmb3IgcG9seWxpbmVzXG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSB0aGlzLl9wYXJ0cy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRwYXJ0ID0gdGhpcy5fcGFydHNbaV07XG5cbiAgXHRcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBhcnQubGVuZ3RoLCBrID0gbGVuMiAtIDE7IGogPCBsZW4yOyBrID0gaisrKSB7XG4gIFx0XHRcdFx0aWYgKCFjbG9zZWQgJiYgKGogPT09IDApKSB7IGNvbnRpbnVlOyB9XG5cbiAgXHRcdFx0XHRpZiAocG9pbnRUb1NlZ21lbnREaXN0YW5jZShwLCBwYXJ0W2tdLCBwYXJ0W2pdKSA8PSB3KSB7XG4gIFx0XHRcdFx0XHRyZXR1cm4gdHJ1ZTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHRcdHJldHVybiBmYWxzZTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBmYWN0b3J5IEwucG9seWxpbmUobGF0bG5nczogTGF0TG5nW10sIG9wdGlvbnM/OiBQb2x5bGluZSBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBwb2x5bGluZSBvYmplY3QgZ2l2ZW4gYW4gYXJyYXkgb2YgZ2VvZ3JhcGhpY2FsIHBvaW50cyBhbmRcbiAgLy8gb3B0aW9uYWxseSBhbiBvcHRpb25zIG9iamVjdC4gWW91IGNhbiBjcmVhdGUgYSBgUG9seWxpbmVgIG9iamVjdCB3aXRoXG4gIC8vIG11bHRpcGxlIHNlcGFyYXRlIGxpbmVzIChgTXVsdGlQb2x5bGluZWApIGJ5IHBhc3NpbmcgYW4gYXJyYXkgb2YgYXJyYXlzXG4gIC8vIG9mIGdlb2dyYXBoaWMgcG9pbnRzLlxuICBmdW5jdGlvbiBwb2x5bGluZShsYXRsbmdzLCBvcHRpb25zKSB7XG4gIFx0cmV0dXJuIG5ldyBQb2x5bGluZShsYXRsbmdzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8vIFJldHJvY29tcGF0LiBBbGxvdyBwbHVnaW5zIHRvIHN1cHBvcnQgTGVhZmxldCB2ZXJzaW9ucyBiZWZvcmUgYW5kIGFmdGVyIDEuMS5cbiAgUG9seWxpbmUuX2ZsYXQgPSBfZmxhdDtcblxuICAvKlxuICAgKiBAY2xhc3MgUG9seWdvblxuICAgKiBAYWthIEwuUG9seWdvblxuICAgKiBAaW5oZXJpdHMgUG9seWxpbmVcbiAgICpcbiAgICogQSBjbGFzcyBmb3IgZHJhd2luZyBwb2x5Z29uIG92ZXJsYXlzIG9uIGEgbWFwLiBFeHRlbmRzIGBQb2x5bGluZWAuXG4gICAqXG4gICAqIE5vdGUgdGhhdCBwb2ludHMgeW91IHBhc3Mgd2hlbiBjcmVhdGluZyBhIHBvbHlnb24gc2hvdWxkbid0IGhhdmUgYW4gYWRkaXRpb25hbCBsYXN0IHBvaW50IGVxdWFsIHRvIHRoZSBmaXJzdCBvbmUg4oCUIGl0J3MgYmV0dGVyIHRvIGZpbHRlciBvdXQgc3VjaCBwb2ludHMuXG4gICAqXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGNyZWF0ZSBhIHJlZCBwb2x5Z29uIGZyb20gYW4gYXJyYXkgb2YgTGF0TG5nIHBvaW50c1xuICAgKiB2YXIgbGF0bG5ncyA9IFtbMzcsIC0xMDkuMDVdLFs0MSwgLTEwOS4wM10sWzQxLCAtMTAyLjA1XSxbMzcsIC0xMDIuMDRdXTtcbiAgICpcbiAgICogdmFyIHBvbHlnb24gPSBMLnBvbHlnb24obGF0bG5ncywge2NvbG9yOiAncmVkJ30pLmFkZFRvKG1hcCk7XG4gICAqXG4gICAqIC8vIHpvb20gdGhlIG1hcCB0byB0aGUgcG9seWdvblxuICAgKiBtYXAuZml0Qm91bmRzKHBvbHlnb24uZ2V0Qm91bmRzKCkpO1xuICAgKiBgYGBcbiAgICpcbiAgICogWW91IGNhbiBhbHNvIHBhc3MgYW4gYXJyYXkgb2YgYXJyYXlzIG9mIGxhdGxuZ3MsIHdpdGggdGhlIGZpcnN0IGFycmF5IHJlcHJlc2VudGluZyB0aGUgb3V0ZXIgc2hhcGUgYW5kIHRoZSBvdGhlciBhcnJheXMgcmVwcmVzZW50aW5nIGhvbGVzIGluIHRoZSBvdXRlciBzaGFwZTpcbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIGxhdGxuZ3MgPSBbXG4gICAqICAgW1szNywgLTEwOS4wNV0sWzQxLCAtMTA5LjAzXSxbNDEsIC0xMDIuMDVdLFszNywgLTEwMi4wNF1dLCAvLyBvdXRlciByaW5nXG4gICAqICAgW1szNy4yOSwgLTEwOC41OF0sWzQwLjcxLCAtMTA4LjU4XSxbNDAuNzEsIC0xMDIuNTBdLFszNy4yOSwgLTEwMi41MF1dIC8vIGhvbGVcbiAgICogXTtcbiAgICogYGBgXG4gICAqXG4gICAqIEFkZGl0aW9uYWxseSwgeW91IGNhbiBwYXNzIGEgbXVsdGktZGltZW5zaW9uYWwgYXJyYXkgdG8gcmVwcmVzZW50IGEgTXVsdGlQb2x5Z29uIHNoYXBlLlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbGF0bG5ncyA9IFtcbiAgICogICBbIC8vIGZpcnN0IHBvbHlnb25cbiAgICogICAgIFtbMzcsIC0xMDkuMDVdLFs0MSwgLTEwOS4wM10sWzQxLCAtMTAyLjA1XSxbMzcsIC0xMDIuMDRdXSwgLy8gb3V0ZXIgcmluZ1xuICAgKiAgICAgW1szNy4yOSwgLTEwOC41OF0sWzQwLjcxLCAtMTA4LjU4XSxbNDAuNzEsIC0xMDIuNTBdLFszNy4yOSwgLTEwMi41MF1dIC8vIGhvbGVcbiAgICogICBdLFxuICAgKiAgIFsgLy8gc2Vjb25kIHBvbHlnb25cbiAgICogICAgIFtbNDEsIC0xMTEuMDNdLFs0NSwgLTExMS4wNF0sWzQ1LCAtMTA0LjA1XSxbNDEsIC0xMDQuMDVdXVxuICAgKiAgIF1cbiAgICogXTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBQb2x5Z29uID0gUG9seWxpbmUuZXh0ZW5kKHtcblxuICBcdG9wdGlvbnM6IHtcbiAgXHRcdGZpbGw6IHRydWVcbiAgXHR9LFxuXG4gIFx0aXNFbXB0eTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuICF0aGlzLl9sYXRsbmdzLmxlbmd0aCB8fCAhdGhpcy5fbGF0bG5nc1swXS5sZW5ndGg7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0Q2VudGVyKCk6IExhdExuZ1xuICBcdC8vIFJldHVybnMgdGhlIGNlbnRlciAoW2NlbnRyb2lkXShodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0NlbnRyb2lkKSkgb2YgdGhlIFBvbHlnb24uXG4gIFx0Z2V0Q2VudGVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHQvLyB0aHJvd3MgZXJyb3Igd2hlbiBub3QgeWV0IGFkZGVkIHRvIG1hcCBhcyB0aGlzIGNlbnRlciBjYWxjdWxhdGlvbiByZXF1aXJlcyBwcm9qZWN0ZWQgY29vcmRpbmF0ZXNcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRocm93IG5ldyBFcnJvcignTXVzdCBhZGQgbGF5ZXIgdG8gbWFwIGJlZm9yZSB1c2luZyBnZXRDZW50ZXIoKScpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHBvbHlnb25DZW50ZXIodGhpcy5fZGVmYXVsdFNoYXBlKCksIHRoaXMuX21hcC5vcHRpb25zLmNycyk7XG4gIFx0fSxcblxuICBcdF9jb252ZXJ0TGF0TG5nczogZnVuY3Rpb24gKGxhdGxuZ3MpIHtcbiAgXHRcdHZhciByZXN1bHQgPSBQb2x5bGluZS5wcm90b3R5cGUuX2NvbnZlcnRMYXRMbmdzLmNhbGwodGhpcywgbGF0bG5ncyksXG4gIFx0XHQgICAgbGVuID0gcmVzdWx0Lmxlbmd0aDtcblxuICBcdFx0Ly8gcmVtb3ZlIGxhc3QgcG9pbnQgaWYgaXQgZXF1YWxzIGZpcnN0IG9uZVxuICBcdFx0aWYgKGxlbiA+PSAyICYmIHJlc3VsdFswXSBpbnN0YW5jZW9mIExhdExuZyAmJiByZXN1bHRbMF0uZXF1YWxzKHJlc3VsdFtsZW4gLSAxXSkpIHtcbiAgXHRcdFx0cmVzdWx0LnBvcCgpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHJlc3VsdDtcbiAgXHR9LFxuXG4gIFx0X3NldExhdExuZ3M6IGZ1bmN0aW9uIChsYXRsbmdzKSB7XG4gIFx0XHRQb2x5bGluZS5wcm90b3R5cGUuX3NldExhdExuZ3MuY2FsbCh0aGlzLCBsYXRsbmdzKTtcbiAgXHRcdGlmIChpc0ZsYXQodGhpcy5fbGF0bG5ncykpIHtcbiAgXHRcdFx0dGhpcy5fbGF0bG5ncyA9IFt0aGlzLl9sYXRsbmdzXTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2RlZmF1bHRTaGFwZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIGlzRmxhdCh0aGlzLl9sYXRsbmdzWzBdKSA/IHRoaXMuX2xhdGxuZ3NbMF0gOiB0aGlzLl9sYXRsbmdzWzBdWzBdO1xuICBcdH0sXG5cbiAgXHRfY2xpcFBvaW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gcG9seWdvbnMgbmVlZCBhIGRpZmZlcmVudCBjbGlwcGluZyBhbGdvcml0aG0gc28gd2UgcmVkZWZpbmUgdGhhdFxuXG4gIFx0XHR2YXIgYm91bmRzID0gdGhpcy5fcmVuZGVyZXIuX2JvdW5kcyxcbiAgXHRcdCAgICB3ID0gdGhpcy5vcHRpb25zLndlaWdodCxcbiAgXHRcdCAgICBwID0gbmV3IFBvaW50KHcsIHcpO1xuXG4gIFx0XHQvLyBpbmNyZWFzZSBjbGlwIHBhZGRpbmcgYnkgc3Ryb2tlIHdpZHRoIHRvIGF2b2lkIHN0cm9rZSBvbiBjbGlwIGVkZ2VzXG4gIFx0XHRib3VuZHMgPSBuZXcgQm91bmRzKGJvdW5kcy5taW4uc3VidHJhY3QocCksIGJvdW5kcy5tYXguYWRkKHApKTtcblxuICBcdFx0dGhpcy5fcGFydHMgPSBbXTtcbiAgXHRcdGlmICghdGhpcy5fcHhCb3VuZHMgfHwgIXRoaXMuX3B4Qm91bmRzLmludGVyc2VjdHMoYm91bmRzKSkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMubm9DbGlwKSB7XG4gIFx0XHRcdHRoaXMuX3BhcnRzID0gdGhpcy5fcmluZ3M7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0Zm9yICh2YXIgaSA9IDAsIGxlbiA9IHRoaXMuX3JpbmdzLmxlbmd0aCwgY2xpcHBlZDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGNsaXBwZWQgPSBjbGlwUG9seWdvbih0aGlzLl9yaW5nc1tpXSwgYm91bmRzLCB0cnVlKTtcbiAgXHRcdFx0aWYgKGNsaXBwZWQubGVuZ3RoKSB7XG4gIFx0XHRcdFx0dGhpcy5fcGFydHMucHVzaChjbGlwcGVkKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fcmVuZGVyZXIuX3VwZGF0ZVBvbHkodGhpcywgdHJ1ZSk7XG4gIFx0fSxcblxuICBcdC8vIE5lZWRlZCBieSB0aGUgYENhbnZhc2AgcmVuZGVyZXIgZm9yIGludGVyYWN0aXZpdHlcbiAgXHRfY29udGFpbnNQb2ludDogZnVuY3Rpb24gKHApIHtcbiAgXHRcdHZhciBpbnNpZGUgPSBmYWxzZSxcbiAgXHRcdCAgICBwYXJ0LCBwMSwgcDIsIGksIGosIGssIGxlbiwgbGVuMjtcblxuICBcdFx0aWYgKCF0aGlzLl9weEJvdW5kcyB8fCAhdGhpcy5fcHhCb3VuZHMuY29udGFpbnMocCkpIHsgcmV0dXJuIGZhbHNlOyB9XG5cbiAgXHRcdC8vIHJheSBjYXN0aW5nIGFsZ29yaXRobSBmb3IgZGV0ZWN0aW5nIGlmIHBvaW50IGlzIGluIHBvbHlnb25cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IHRoaXMuX3BhcnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdHBhcnQgPSB0aGlzLl9wYXJ0c1tpXTtcblxuICBcdFx0XHRmb3IgKGogPSAwLCBsZW4yID0gcGFydC5sZW5ndGgsIGsgPSBsZW4yIC0gMTsgaiA8IGxlbjI7IGsgPSBqKyspIHtcbiAgXHRcdFx0XHRwMSA9IHBhcnRbal07XG4gIFx0XHRcdFx0cDIgPSBwYXJ0W2tdO1xuXG4gIFx0XHRcdFx0aWYgKCgocDEueSA+IHAueSkgIT09IChwMi55ID4gcC55KSkgJiYgKHAueCA8IChwMi54IC0gcDEueCkgKiAocC55IC0gcDEueSkgLyAocDIueSAtIHAxLnkpICsgcDEueCkpIHtcbiAgXHRcdFx0XHRcdGluc2lkZSA9ICFpbnNpZGU7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIGFsc28gY2hlY2sgaWYgaXQncyBvbiBwb2x5Z29uIHN0cm9rZVxuICBcdFx0cmV0dXJuIGluc2lkZSB8fCBQb2x5bGluZS5wcm90b3R5cGUuX2NvbnRhaW5zUG9pbnQuY2FsbCh0aGlzLCBwLCB0cnVlKTtcbiAgXHR9XG5cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLnBvbHlnb24obGF0bG5nczogTGF0TG5nW10sIG9wdGlvbnM/OiBQb2x5bGluZSBvcHRpb25zKVxuICBmdW5jdGlvbiBwb2x5Z29uKGxhdGxuZ3MsIG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IFBvbHlnb24obGF0bG5ncywgb3B0aW9ucyk7XG4gIH1cblxuICAvKlxyXG4gICAqIEBjbGFzcyBHZW9KU09OXHJcbiAgICogQGFrYSBMLkdlb0pTT05cclxuICAgKiBAaW5oZXJpdHMgRmVhdHVyZUdyb3VwXHJcbiAgICpcclxuICAgKiBSZXByZXNlbnRzIGEgR2VvSlNPTiBvYmplY3Qgb3IgYW4gYXJyYXkgb2YgR2VvSlNPTiBvYmplY3RzLiBBbGxvd3MgeW91IHRvIHBhcnNlXHJcbiAgICogR2VvSlNPTiBkYXRhIGFuZCBkaXNwbGF5IGl0IG9uIHRoZSBtYXAuIEV4dGVuZHMgYEZlYXR1cmVHcm91cGAuXHJcbiAgICpcclxuICAgKiBAZXhhbXBsZVxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiBMLmdlb0pTT04oZGF0YSwge1xyXG4gICAqIFx0c3R5bGU6IGZ1bmN0aW9uIChmZWF0dXJlKSB7XHJcbiAgICogXHRcdHJldHVybiB7Y29sb3I6IGZlYXR1cmUucHJvcGVydGllcy5jb2xvcn07XHJcbiAgICogXHR9XHJcbiAgICogfSkuYmluZFBvcHVwKGZ1bmN0aW9uIChsYXllcikge1xyXG4gICAqIFx0cmV0dXJuIGxheWVyLmZlYXR1cmUucHJvcGVydGllcy5kZXNjcmlwdGlvbjtcclxuICAgKiB9KS5hZGRUbyhtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgR2VvSlNPTiA9IEZlYXR1cmVHcm91cC5leHRlbmQoe1xyXG5cclxuICBcdC8qIEBzZWN0aW9uXHJcbiAgXHQgKiBAYWthIEdlb0pTT04gb3B0aW9uc1xyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gcG9pbnRUb0xheWVyOiBGdW5jdGlvbiA9ICpcclxuICBcdCAqIEEgYEZ1bmN0aW9uYCBkZWZpbmluZyBob3cgR2VvSlNPTiBwb2ludHMgc3Bhd24gTGVhZmxldCBsYXllcnMuIEl0IGlzIGludGVybmFsbHlcclxuICBcdCAqIGNhbGxlZCB3aGVuIGRhdGEgaXMgYWRkZWQsIHBhc3NpbmcgdGhlIEdlb0pTT04gcG9pbnQgZmVhdHVyZSBhbmQgaXRzIGBMYXRMbmdgLlxyXG4gIFx0ICogVGhlIGRlZmF1bHQgaXMgdG8gc3Bhd24gYSBkZWZhdWx0IGBNYXJrZXJgOlxyXG4gIFx0ICogYGBganNcclxuICBcdCAqIGZ1bmN0aW9uKGdlb0pzb25Qb2ludCwgbGF0bG5nKSB7XHJcbiAgXHQgKiBcdHJldHVybiBMLm1hcmtlcihsYXRsbmcpO1xyXG4gIFx0ICogfVxyXG4gIFx0ICogYGBgXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBzdHlsZTogRnVuY3Rpb24gPSAqXHJcbiAgXHQgKiBBIGBGdW5jdGlvbmAgZGVmaW5pbmcgdGhlIGBQYXRoIG9wdGlvbnNgIGZvciBzdHlsaW5nIEdlb0pTT04gbGluZXMgYW5kIHBvbHlnb25zLFxyXG4gIFx0ICogY2FsbGVkIGludGVybmFsbHkgd2hlbiBkYXRhIGlzIGFkZGVkLlxyXG4gIFx0ICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgdG8gbm90IG92ZXJyaWRlIGFueSBkZWZhdWx0czpcclxuICBcdCAqIGBgYGpzXHJcbiAgXHQgKiBmdW5jdGlvbiAoZ2VvSnNvbkZlYXR1cmUpIHtcclxuICBcdCAqIFx0cmV0dXJuIHt9XHJcbiAgXHQgKiB9XHJcbiAgXHQgKiBgYGBcclxuICBcdCAqXHJcbiAgXHQgKiBAb3B0aW9uIG9uRWFjaEZlYXR1cmU6IEZ1bmN0aW9uID0gKlxyXG4gIFx0ICogQSBgRnVuY3Rpb25gIHRoYXQgd2lsbCBiZSBjYWxsZWQgb25jZSBmb3IgZWFjaCBjcmVhdGVkIGBGZWF0dXJlYCwgYWZ0ZXIgaXQgaGFzXHJcbiAgXHQgKiBiZWVuIGNyZWF0ZWQgYW5kIHN0eWxlZC4gVXNlZnVsIGZvciBhdHRhY2hpbmcgZXZlbnRzIGFuZCBwb3B1cHMgdG8gZmVhdHVyZXMuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0byBkbyBub3RoaW5nIHdpdGggdGhlIG5ld2x5IGNyZWF0ZWQgbGF5ZXJzOlxyXG4gIFx0ICogYGBganNcclxuICBcdCAqIGZ1bmN0aW9uIChmZWF0dXJlLCBsYXllcikge31cclxuICBcdCAqIGBgYFxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gZmlsdGVyOiBGdW5jdGlvbiA9ICpcclxuICBcdCAqIEEgYEZ1bmN0aW9uYCB0aGF0IHdpbGwgYmUgdXNlZCB0byBkZWNpZGUgd2hldGhlciB0byBpbmNsdWRlIGEgZmVhdHVyZSBvciBub3QuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0byBpbmNsdWRlIGFsbCBmZWF0dXJlczpcclxuICBcdCAqIGBgYGpzXHJcbiAgXHQgKiBmdW5jdGlvbiAoZ2VvSnNvbkZlYXR1cmUpIHtcclxuICBcdCAqIFx0cmV0dXJuIHRydWU7XHJcbiAgXHQgKiB9XHJcbiAgXHQgKiBgYGBcclxuICBcdCAqIE5vdGU6IGR5bmFtaWNhbGx5IGNoYW5naW5nIHRoZSBgZmlsdGVyYCBvcHRpb24gd2lsbCBoYXZlIGVmZmVjdCBvbmx5IG9uIG5ld2x5XHJcbiAgXHQgKiBhZGRlZCBkYXRhLiBJdCB3aWxsIF9ub3RfIHJlLWV2YWx1YXRlIGFscmVhZHkgaW5jbHVkZWQgZmVhdHVyZXMuXHJcbiAgXHQgKlxyXG4gIFx0ICogQG9wdGlvbiBjb29yZHNUb0xhdExuZzogRnVuY3Rpb24gPSAqXHJcbiAgXHQgKiBBIGBGdW5jdGlvbmAgdGhhdCB3aWxsIGJlIHVzZWQgZm9yIGNvbnZlcnRpbmcgR2VvSlNPTiBjb29yZGluYXRlcyB0byBgTGF0TG5nYHMuXHJcbiAgXHQgKiBUaGUgZGVmYXVsdCBpcyB0aGUgYGNvb3Jkc1RvTGF0TG5nYCBzdGF0aWMgbWV0aG9kLlxyXG4gIFx0ICpcclxuICBcdCAqIEBvcHRpb24gbWFya2Vyc0luaGVyaXRPcHRpb25zOiBCb29sZWFuID0gZmFsc2VcclxuICBcdCAqIFdoZXRoZXIgZGVmYXVsdCBNYXJrZXJzIGZvciBcIlBvaW50XCIgdHlwZSBGZWF0dXJlcyBpbmhlcml0IGZyb20gZ3JvdXAgb3B0aW9ucy5cclxuICBcdCAqL1xyXG5cclxuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChnZW9qc29uLCBvcHRpb25zKSB7XHJcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR0aGlzLl9sYXllcnMgPSB7fTtcclxuXHJcbiAgXHRcdGlmIChnZW9qc29uKSB7XHJcbiAgXHRcdFx0dGhpcy5hZGREYXRhKGdlb2pzb24pO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYWRkRGF0YSggPEdlb0pTT04+IGRhdGEgKTogdGhpc1xyXG4gIFx0Ly8gQWRkcyBhIEdlb0pTT04gb2JqZWN0IHRvIHRoZSBsYXllci5cclxuICBcdGFkZERhdGE6IGZ1bmN0aW9uIChnZW9qc29uKSB7XHJcbiAgXHRcdHZhciBmZWF0dXJlcyA9IGlzQXJyYXkoZ2VvanNvbikgPyBnZW9qc29uIDogZ2VvanNvbi5mZWF0dXJlcyxcclxuICBcdFx0ICAgIGksIGxlbiwgZmVhdHVyZTtcclxuXHJcbiAgXHRcdGlmIChmZWF0dXJlcykge1xyXG4gIFx0XHRcdGZvciAoaSA9IDAsIGxlbiA9IGZlYXR1cmVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0XHQvLyBvbmx5IGFkZCB0aGlzIGlmIGdlb21ldHJ5IG9yIGdlb21ldHJpZXMgYXJlIHNldCBhbmQgbm90IG51bGxcclxuICBcdFx0XHRcdGZlYXR1cmUgPSBmZWF0dXJlc1tpXTtcclxuICBcdFx0XHRcdGlmIChmZWF0dXJlLmdlb21ldHJpZXMgfHwgZmVhdHVyZS5nZW9tZXRyeSB8fCBmZWF0dXJlLmZlYXR1cmVzIHx8IGZlYXR1cmUuY29vcmRpbmF0ZXMpIHtcclxuICBcdFx0XHRcdFx0dGhpcy5hZGREYXRhKGZlYXR1cmUpO1xyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7XHJcblxyXG4gIFx0XHRpZiAob3B0aW9ucy5maWx0ZXIgJiYgIW9wdGlvbnMuZmlsdGVyKGdlb2pzb24pKSB7IHJldHVybiB0aGlzOyB9XHJcblxyXG4gIFx0XHR2YXIgbGF5ZXIgPSBnZW9tZXRyeVRvTGF5ZXIoZ2VvanNvbiwgb3B0aW9ucyk7XHJcbiAgXHRcdGlmICghbGF5ZXIpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcztcclxuICBcdFx0fVxyXG4gIFx0XHRsYXllci5mZWF0dXJlID0gYXNGZWF0dXJlKGdlb2pzb24pO1xyXG5cclxuICBcdFx0bGF5ZXIuZGVmYXVsdE9wdGlvbnMgPSBsYXllci5vcHRpb25zO1xyXG4gIFx0XHR0aGlzLnJlc2V0U3R5bGUobGF5ZXIpO1xyXG5cclxuICBcdFx0aWYgKG9wdGlvbnMub25FYWNoRmVhdHVyZSkge1xyXG4gIFx0XHRcdG9wdGlvbnMub25FYWNoRmVhdHVyZShnZW9qc29uLCBsYXllcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzLmFkZExheWVyKGxheWVyKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCByZXNldFN0eWxlKCA8UGF0aD4gbGF5ZXI/ICk6IHRoaXNcclxuICBcdC8vIFJlc2V0cyB0aGUgZ2l2ZW4gdmVjdG9yIGxheWVyJ3Mgc3R5bGUgdG8gdGhlIG9yaWdpbmFsIEdlb0pTT04gc3R5bGUsIHVzZWZ1bCBmb3IgcmVzZXR0aW5nIHN0eWxlIGFmdGVyIGhvdmVyIGV2ZW50cy5cclxuICBcdC8vIElmIGBsYXllcmAgaXMgb21pdHRlZCwgdGhlIHN0eWxlIG9mIGFsbCBmZWF0dXJlcyBpbiB0aGUgY3VycmVudCBsYXllciBpcyByZXNldC5cclxuICBcdHJlc2V0U3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRpZiAobGF5ZXIgPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdHJldHVybiB0aGlzLmVhY2hMYXllcih0aGlzLnJlc2V0U3R5bGUsIHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdC8vIHJlc2V0IGFueSBjdXN0b20gc3R5bGVzXHJcbiAgXHRcdGxheWVyLm9wdGlvbnMgPSBleHRlbmQoe30sIGxheWVyLmRlZmF1bHRPcHRpb25zKTtcclxuICBcdFx0dGhpcy5fc2V0TGF5ZXJTdHlsZShsYXllciwgdGhpcy5vcHRpb25zLnN0eWxlKTtcclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0U3R5bGUoIDxGdW5jdGlvbj4gc3R5bGUgKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyBzdHlsZXMgb2YgR2VvSlNPTiB2ZWN0b3IgbGF5ZXJzIHdpdGggdGhlIGdpdmVuIHN0eWxlIGZ1bmN0aW9uLlxyXG4gIFx0c2V0U3R5bGU6IGZ1bmN0aW9uIChzdHlsZSkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdFx0dGhpcy5fc2V0TGF5ZXJTdHlsZShsYXllciwgc3R5bGUpO1xyXG4gIFx0XHR9LCB0aGlzKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3NldExheWVyU3R5bGU6IGZ1bmN0aW9uIChsYXllciwgc3R5bGUpIHtcclxuICBcdFx0aWYgKGxheWVyLnNldFN0eWxlKSB7XHJcbiAgXHRcdFx0aWYgKHR5cGVvZiBzdHlsZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gIFx0XHRcdFx0c3R5bGUgPSBzdHlsZShsYXllci5mZWF0dXJlKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bGF5ZXIuc2V0U3R5bGUoc3R5bGUpO1xyXG4gIFx0XHR9XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBzZWN0aW9uXHJcbiAgLy8gVGhlcmUgYXJlIHNldmVyYWwgc3RhdGljIGZ1bmN0aW9ucyB3aGljaCBjYW4gYmUgY2FsbGVkIHdpdGhvdXQgaW5zdGFudGlhdGluZyBMLkdlb0pTT046XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBnZW9tZXRyeVRvTGF5ZXIoZmVhdHVyZURhdGE6IE9iamVjdCwgb3B0aW9ucz86IEdlb0pTT04gb3B0aW9ucyk6IExheWVyXHJcbiAgLy8gQ3JlYXRlcyBhIGBMYXllcmAgZnJvbSBhIGdpdmVuIEdlb0pTT04gZmVhdHVyZS4gQ2FuIHVzZSBhIGN1c3RvbVxyXG4gIC8vIFtgcG9pbnRUb0xheWVyYF0oI2dlb2pzb24tcG9pbnR0b2xheWVyKSBhbmQvb3IgW2Bjb29yZHNUb0xhdExuZ2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5nKVxyXG4gIC8vIGZ1bmN0aW9ucyBpZiBwcm92aWRlZCBhcyBvcHRpb25zLlxyXG4gIGZ1bmN0aW9uIGdlb21ldHJ5VG9MYXllcihnZW9qc29uLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0dmFyIGdlb21ldHJ5ID0gZ2VvanNvbi50eXBlID09PSAnRmVhdHVyZScgPyBnZW9qc29uLmdlb21ldHJ5IDogZ2VvanNvbixcclxuICBcdCAgICBjb29yZHMgPSBnZW9tZXRyeSA/IGdlb21ldHJ5LmNvb3JkaW5hdGVzIDogbnVsbCxcclxuICBcdCAgICBsYXllcnMgPSBbXSxcclxuICBcdCAgICBwb2ludFRvTGF5ZXIgPSBvcHRpb25zICYmIG9wdGlvbnMucG9pbnRUb0xheWVyLFxyXG4gIFx0ICAgIF9jb29yZHNUb0xhdExuZyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5jb29yZHNUb0xhdExuZyB8fCBjb29yZHNUb0xhdExuZyxcclxuICBcdCAgICBsYXRsbmcsIGxhdGxuZ3MsIGksIGxlbjtcclxuXHJcbiAgXHRpZiAoIWNvb3JkcyAmJiAhZ2VvbWV0cnkpIHtcclxuICBcdFx0cmV0dXJuIG51bGw7XHJcbiAgXHR9XHJcblxyXG4gIFx0c3dpdGNoIChnZW9tZXRyeS50eXBlKSB7XHJcbiAgXHRjYXNlICdQb2ludCc6XHJcbiAgXHRcdGxhdGxuZyA9IF9jb29yZHNUb0xhdExuZyhjb29yZHMpO1xyXG4gIFx0XHRyZXR1cm4gX3BvaW50VG9MYXllcihwb2ludFRvTGF5ZXIsIGdlb2pzb24sIGxhdGxuZywgb3B0aW9ucyk7XHJcblxyXG4gIFx0Y2FzZSAnTXVsdGlQb2ludCc6XHJcbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvb3Jkcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdGxhdGxuZyA9IF9jb29yZHNUb0xhdExuZyhjb29yZHNbaV0pO1xyXG4gIFx0XHRcdGxheWVycy5wdXNoKF9wb2ludFRvTGF5ZXIocG9pbnRUb0xheWVyLCBnZW9qc29uLCBsYXRsbmcsIG9wdGlvbnMpKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gbmV3IEZlYXR1cmVHcm91cChsYXllcnMpO1xyXG5cclxuICBcdGNhc2UgJ0xpbmVTdHJpbmcnOlxyXG4gIFx0Y2FzZSAnTXVsdGlMaW5lU3RyaW5nJzpcclxuICBcdFx0bGF0bG5ncyA9IGNvb3Jkc1RvTGF0TG5ncyhjb29yZHMsIGdlb21ldHJ5LnR5cGUgPT09ICdMaW5lU3RyaW5nJyA/IDAgOiAxLCBfY29vcmRzVG9MYXRMbmcpO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvbHlsaW5lKGxhdGxuZ3MsIG9wdGlvbnMpO1xyXG5cclxuICBcdGNhc2UgJ1BvbHlnb24nOlxyXG4gIFx0Y2FzZSAnTXVsdGlQb2x5Z29uJzpcclxuICBcdFx0bGF0bG5ncyA9IGNvb3Jkc1RvTGF0TG5ncyhjb29yZHMsIGdlb21ldHJ5LnR5cGUgPT09ICdQb2x5Z29uJyA/IDEgOiAyLCBfY29vcmRzVG9MYXRMbmcpO1xyXG4gIFx0XHRyZXR1cm4gbmV3IFBvbHlnb24obGF0bG5ncywgb3B0aW9ucyk7XHJcblxyXG4gIFx0Y2FzZSAnR2VvbWV0cnlDb2xsZWN0aW9uJzpcclxuICBcdFx0Zm9yIChpID0gMCwgbGVuID0gZ2VvbWV0cnkuZ2VvbWV0cmllcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRcdHZhciBnZW9MYXllciA9IGdlb21ldHJ5VG9MYXllcih7XHJcbiAgXHRcdFx0XHRnZW9tZXRyeTogZ2VvbWV0cnkuZ2VvbWV0cmllc1tpXSxcclxuICBcdFx0XHRcdHR5cGU6ICdGZWF0dXJlJyxcclxuICBcdFx0XHRcdHByb3BlcnRpZXM6IGdlb2pzb24ucHJvcGVydGllc1xyXG4gIFx0XHRcdH0sIG9wdGlvbnMpO1xyXG5cclxuICBcdFx0XHRpZiAoZ2VvTGF5ZXIpIHtcclxuICBcdFx0XHRcdGxheWVycy5wdXNoKGdlb0xheWVyKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIG5ldyBGZWF0dXJlR3JvdXAobGF5ZXJzKTtcclxuXHJcbiAgXHRjYXNlICdGZWF0dXJlQ29sbGVjdGlvbic6XHJcbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGdlb21ldHJ5LmZlYXR1cmVzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdFx0dmFyIGZlYXR1cmVMYXllciA9IGdlb21ldHJ5VG9MYXllcihnZW9tZXRyeS5mZWF0dXJlc1tpXSwgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHRcdGlmIChmZWF0dXJlTGF5ZXIpIHtcclxuICBcdFx0XHRcdGxheWVycy5wdXNoKGZlYXR1cmVMYXllcik7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBuZXcgRmVhdHVyZUdyb3VwKGxheWVycyk7XHJcblxyXG4gIFx0ZGVmYXVsdDpcclxuICBcdFx0dGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEdlb0pTT04gb2JqZWN0LicpO1xyXG4gIFx0fVxyXG4gIH1cclxuXHJcbiAgZnVuY3Rpb24gX3BvaW50VG9MYXllcihwb2ludFRvTGF5ZXJGbiwgZ2VvanNvbiwgbGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gcG9pbnRUb0xheWVyRm4gP1xyXG4gIFx0XHRwb2ludFRvTGF5ZXJGbihnZW9qc29uLCBsYXRsbmcpIDpcclxuICBcdFx0bmV3IE1hcmtlcihsYXRsbmcsIG9wdGlvbnMgJiYgb3B0aW9ucy5tYXJrZXJzSW5oZXJpdE9wdGlvbnMgJiYgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICAvLyBAZnVuY3Rpb24gY29vcmRzVG9MYXRMbmcoY29vcmRzOiBBcnJheSk6IExhdExuZ1xyXG4gIC8vIENyZWF0ZXMgYSBgTGF0TG5nYCBvYmplY3QgZnJvbSBhbiBhcnJheSBvZiAyIG51bWJlcnMgKGxvbmdpdHVkZSwgbGF0aXR1ZGUpXHJcbiAgLy8gb3IgMyBudW1iZXJzIChsb25naXR1ZGUsIGxhdGl0dWRlLCBhbHRpdHVkZSkgdXNlZCBpbiBHZW9KU09OIGZvciBwb2ludHMuXHJcbiAgZnVuY3Rpb24gY29vcmRzVG9MYXRMbmcoY29vcmRzKSB7XHJcbiAgXHRyZXR1cm4gbmV3IExhdExuZyhjb29yZHNbMV0sIGNvb3Jkc1swXSwgY29vcmRzWzJdKTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBjb29yZHNUb0xhdExuZ3MoY29vcmRzOiBBcnJheSwgbGV2ZWxzRGVlcD86IE51bWJlciwgY29vcmRzVG9MYXRMbmc/OiBGdW5jdGlvbik6IEFycmF5XHJcbiAgLy8gQ3JlYXRlcyBhIG11bHRpZGltZW5zaW9uYWwgYXJyYXkgb2YgYExhdExuZ2BzIGZyb20gYSBHZW9KU09OIGNvb3JkaW5hdGVzIGFycmF5LlxyXG4gIC8vIGBsZXZlbHNEZWVwYCBzcGVjaWZpZXMgdGhlIG5lc3RpbmcgbGV2ZWwgKDAgaXMgZm9yIGFuIGFycmF5IG9mIHBvaW50cywgMSBmb3IgYW4gYXJyYXkgb2YgYXJyYXlzIG9mIHBvaW50cywgZXRjLiwgMCBieSBkZWZhdWx0KS5cclxuICAvLyBDYW4gdXNlIGEgY3VzdG9tIFtgY29vcmRzVG9MYXRMbmdgXSgjZ2VvanNvbi1jb29yZHN0b2xhdGxuZykgZnVuY3Rpb24uXHJcbiAgZnVuY3Rpb24gY29vcmRzVG9MYXRMbmdzKGNvb3JkcywgbGV2ZWxzRGVlcCwgX2Nvb3Jkc1RvTGF0TG5nKSB7XHJcbiAgXHR2YXIgbGF0bG5ncyA9IFtdO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBjb29yZHMubGVuZ3RoLCBsYXRsbmc7IGkgPCBsZW47IGkrKykge1xyXG4gIFx0XHRsYXRsbmcgPSBsZXZlbHNEZWVwID9cclxuICBcdFx0XHRjb29yZHNUb0xhdExuZ3MoY29vcmRzW2ldLCBsZXZlbHNEZWVwIC0gMSwgX2Nvb3Jkc1RvTGF0TG5nKSA6XHJcbiAgXHRcdFx0KF9jb29yZHNUb0xhdExuZyB8fCBjb29yZHNUb0xhdExuZykoY29vcmRzW2ldKTtcclxuXHJcbiAgXHRcdGxhdGxuZ3MucHVzaChsYXRsbmcpO1xyXG4gIFx0fVxyXG5cclxuICBcdHJldHVybiBsYXRsbmdzO1xyXG4gIH1cclxuXHJcbiAgLy8gQGZ1bmN0aW9uIGxhdExuZ1RvQ29vcmRzKGxhdGxuZzogTGF0TG5nLCBwcmVjaXNpb24/OiBOdW1iZXJ8ZmFsc2UpOiBBcnJheVxyXG4gIC8vIFJldmVyc2Ugb2YgW2Bjb29yZHNUb0xhdExuZ2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5nKVxyXG4gIC8vIENvb3JkaW5hdGVzIHZhbHVlcyBhcmUgcm91bmRlZCB3aXRoIFtgZm9ybWF0TnVtYF0oI3V0aWwtZm9ybWF0bnVtKSBmdW5jdGlvbi5cclxuICBmdW5jdGlvbiBsYXRMbmdUb0Nvb3JkcyhsYXRsbmcsIHByZWNpc2lvbikge1xyXG4gIFx0bGF0bG5nID0gdG9MYXRMbmcobGF0bG5nKTtcclxuICBcdHJldHVybiBsYXRsbmcuYWx0ICE9PSB1bmRlZmluZWQgP1xyXG4gIFx0XHRbZm9ybWF0TnVtKGxhdGxuZy5sbmcsIHByZWNpc2lvbiksIGZvcm1hdE51bShsYXRsbmcubGF0LCBwcmVjaXNpb24pLCBmb3JtYXROdW0obGF0bG5nLmFsdCwgcHJlY2lzaW9uKV0gOlxyXG4gIFx0XHRbZm9ybWF0TnVtKGxhdGxuZy5sbmcsIHByZWNpc2lvbiksIGZvcm1hdE51bShsYXRsbmcubGF0LCBwcmVjaXNpb24pXTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBsYXRMbmdzVG9Db29yZHMobGF0bG5nczogQXJyYXksIGxldmVsc0RlZXA/OiBOdW1iZXIsIGNsb3NlZD86IEJvb2xlYW4sIHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IEFycmF5XHJcbiAgLy8gUmV2ZXJzZSBvZiBbYGNvb3Jkc1RvTGF0TG5nc2BdKCNnZW9qc29uLWNvb3Jkc3RvbGF0bG5ncylcclxuICAvLyBgY2xvc2VkYCBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGZpcnN0IHBvaW50IHNob3VsZCBiZSBhcHBlbmRlZCB0byB0aGUgZW5kIG9mIHRoZSBhcnJheSB0byBjbG9zZSB0aGUgZmVhdHVyZSwgb25seSB1c2VkIHdoZW4gYGxldmVsc0RlZXBgIGlzIDAuIEZhbHNlIGJ5IGRlZmF1bHQuXHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uLlxyXG4gIGZ1bmN0aW9uIGxhdExuZ3NUb0Nvb3JkcyhsYXRsbmdzLCBsZXZlbHNEZWVwLCBjbG9zZWQsIHByZWNpc2lvbikge1xyXG4gIFx0dmFyIGNvb3JkcyA9IFtdO1xyXG5cclxuICBcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXRsbmdzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgXHRcdC8vIENoZWNrIGZvciBmbGF0IGFycmF5cyByZXF1aXJlZCB0byBlbnN1cmUgdW5iYWxhbmNlZCBhcnJheXMgYXJlIGNvcnJlY3RseSBjb252ZXJ0ZWQgaW4gcmVjdXJzaW9uXHJcbiAgXHRcdGNvb3Jkcy5wdXNoKGxldmVsc0RlZXAgP1xyXG4gIFx0XHRcdGxhdExuZ3NUb0Nvb3JkcyhsYXRsbmdzW2ldLCBpc0ZsYXQobGF0bG5nc1tpXSkgPyAwIDogbGV2ZWxzRGVlcCAtIDEsIGNsb3NlZCwgcHJlY2lzaW9uKSA6XHJcbiAgXHRcdFx0bGF0TG5nVG9Db29yZHMobGF0bG5nc1tpXSwgcHJlY2lzaW9uKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0aWYgKCFsZXZlbHNEZWVwICYmIGNsb3NlZCkge1xyXG4gIFx0XHRjb29yZHMucHVzaChjb29yZHNbMF0uc2xpY2UoKSk7XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIGNvb3JkcztcclxuICB9XHJcblxyXG4gIGZ1bmN0aW9uIGdldEZlYXR1cmUobGF5ZXIsIG5ld0dlb21ldHJ5KSB7XHJcbiAgXHRyZXR1cm4gbGF5ZXIuZmVhdHVyZSA/XHJcbiAgXHRcdGV4dGVuZCh7fSwgbGF5ZXIuZmVhdHVyZSwge2dlb21ldHJ5OiBuZXdHZW9tZXRyeX0pIDpcclxuICBcdFx0YXNGZWF0dXJlKG5ld0dlb21ldHJ5KTtcclxuICB9XHJcblxyXG4gIC8vIEBmdW5jdGlvbiBhc0ZlYXR1cmUoZ2VvanNvbjogT2JqZWN0KTogT2JqZWN0XHJcbiAgLy8gTm9ybWFsaXplIEdlb0pTT04gZ2VvbWV0cmllcy9mZWF0dXJlcyBpbnRvIEdlb0pTT04gZmVhdHVyZXMuXHJcbiAgZnVuY3Rpb24gYXNGZWF0dXJlKGdlb2pzb24pIHtcclxuICBcdGlmIChnZW9qc29uLnR5cGUgPT09ICdGZWF0dXJlJyB8fCBnZW9qc29uLnR5cGUgPT09ICdGZWF0dXJlQ29sbGVjdGlvbicpIHtcclxuICBcdFx0cmV0dXJuIGdlb2pzb247XHJcbiAgXHR9XHJcblxyXG4gIFx0cmV0dXJuIHtcclxuICBcdFx0dHlwZTogJ0ZlYXR1cmUnLFxyXG4gIFx0XHRwcm9wZXJ0aWVzOiB7fSxcclxuICBcdFx0Z2VvbWV0cnk6IGdlb2pzb25cclxuICBcdH07XHJcbiAgfVxyXG5cclxuICB2YXIgUG9pbnRUb0dlb0pTT04gPSB7XHJcbiAgXHR0b0dlb0pTT046IGZ1bmN0aW9uIChwcmVjaXNpb24pIHtcclxuICBcdFx0cmV0dXJuIGdldEZlYXR1cmUodGhpcywge1xyXG4gIFx0XHRcdHR5cGU6ICdQb2ludCcsXHJcbiAgXHRcdFx0Y29vcmRpbmF0ZXM6IGxhdExuZ1RvQ29vcmRzKHRoaXMuZ2V0TGF0TG5nKCksIHByZWNpc2lvbilcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBNYXJrZXJcclxuICAvLyBAc2VjdGlvbiBPdGhlciBtZXRob2RzXHJcbiAgLy8gQG1ldGhvZCB0b0dlb0pTT04ocHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogT2JqZWN0XHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgLy8gUmV0dXJucyBhIFtgR2VvSlNPTmBdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dlb0pTT04pIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtYXJrZXIgKGFzIGEgR2VvSlNPTiBgUG9pbnRgIEZlYXR1cmUpLlxyXG4gIE1hcmtlci5pbmNsdWRlKFBvaW50VG9HZW9KU09OKTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBDaXJjbGVNYXJrZXJcclxuICAvLyBAbWV0aG9kIHRvR2VvSlNPTihwcmVjaXNpb24/OiBOdW1iZXJ8ZmFsc2UpOiBPYmplY3RcclxuICAvLyBDb29yZGluYXRlcyB2YWx1ZXMgYXJlIHJvdW5kZWQgd2l0aCBbYGZvcm1hdE51bWBdKCN1dGlsLWZvcm1hdG51bSkgZnVuY3Rpb24gd2l0aCBnaXZlbiBgcHJlY2lzaW9uYC5cclxuICAvLyBSZXR1cm5zIGEgW2BHZW9KU09OYF0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR2VvSlNPTikgcmVwcmVzZW50YXRpb24gb2YgdGhlIGNpcmNsZSBtYXJrZXIgKGFzIGEgR2VvSlNPTiBgUG9pbnRgIEZlYXR1cmUpLlxyXG4gIENpcmNsZS5pbmNsdWRlKFBvaW50VG9HZW9KU09OKTtcclxuICBDaXJjbGVNYXJrZXIuaW5jbHVkZShQb2ludFRvR2VvSlNPTik7XHJcblxyXG5cclxuICAvLyBAbmFtZXNwYWNlIFBvbHlsaW5lXHJcbiAgLy8gQG1ldGhvZCB0b0dlb0pTT04ocHJlY2lzaW9uPzogTnVtYmVyfGZhbHNlKTogT2JqZWN0XHJcbiAgLy8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgLy8gUmV0dXJucyBhIFtgR2VvSlNPTmBdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dlb0pTT04pIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwb2x5bGluZSAoYXMgYSBHZW9KU09OIGBMaW5lU3RyaW5nYCBvciBgTXVsdGlMaW5lU3RyaW5nYCBGZWF0dXJlKS5cclxuICBQb2x5bGluZS5pbmNsdWRlKHtcclxuICBcdHRvR2VvSlNPTjogZnVuY3Rpb24gKHByZWNpc2lvbikge1xyXG4gIFx0XHR2YXIgbXVsdGkgPSAhaXNGbGF0KHRoaXMuX2xhdGxuZ3MpO1xyXG5cclxuICBcdFx0dmFyIGNvb3JkcyA9IGxhdExuZ3NUb0Nvb3Jkcyh0aGlzLl9sYXRsbmdzLCBtdWx0aSA/IDEgOiAwLCBmYWxzZSwgcHJlY2lzaW9uKTtcclxuXHJcbiAgXHRcdHJldHVybiBnZXRGZWF0dXJlKHRoaXMsIHtcclxuICBcdFx0XHR0eXBlOiAobXVsdGkgPyAnTXVsdGknIDogJycpICsgJ0xpbmVTdHJpbmcnLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgUG9seWdvblxyXG4gIC8vIEBtZXRob2QgdG9HZW9KU09OKHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IE9iamVjdFxyXG4gIC8vIENvb3JkaW5hdGVzIHZhbHVlcyBhcmUgcm91bmRlZCB3aXRoIFtgZm9ybWF0TnVtYF0oI3V0aWwtZm9ybWF0bnVtKSBmdW5jdGlvbiB3aXRoIGdpdmVuIGBwcmVjaXNpb25gLlxyXG4gIC8vIFJldHVybnMgYSBbYEdlb0pTT05gXShodHRwczovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9HZW9KU09OKSByZXByZXNlbnRhdGlvbiBvZiB0aGUgcG9seWdvbiAoYXMgYSBHZW9KU09OIGBQb2x5Z29uYCBvciBgTXVsdGlQb2x5Z29uYCBGZWF0dXJlKS5cclxuICBQb2x5Z29uLmluY2x1ZGUoe1xyXG4gIFx0dG9HZW9KU09OOiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHZhciBob2xlcyA9ICFpc0ZsYXQodGhpcy5fbGF0bG5ncyksXHJcbiAgXHRcdCAgICBtdWx0aSA9IGhvbGVzICYmICFpc0ZsYXQodGhpcy5fbGF0bG5nc1swXSk7XHJcblxyXG4gIFx0XHR2YXIgY29vcmRzID0gbGF0TG5nc1RvQ29vcmRzKHRoaXMuX2xhdGxuZ3MsIG11bHRpID8gMiA6IGhvbGVzID8gMSA6IDAsIHRydWUsIHByZWNpc2lvbik7XHJcblxyXG4gIFx0XHRpZiAoIWhvbGVzKSB7XHJcbiAgXHRcdFx0Y29vcmRzID0gW2Nvb3Jkc107XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiBnZXRGZWF0dXJlKHRoaXMsIHtcclxuICBcdFx0XHR0eXBlOiAobXVsdGkgPyAnTXVsdGknIDogJycpICsgJ1BvbHlnb24nLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAbmFtZXNwYWNlIExheWVyR3JvdXBcclxuICBMYXllckdyb3VwLmluY2x1ZGUoe1xyXG4gIFx0dG9NdWx0aVBvaW50OiBmdW5jdGlvbiAocHJlY2lzaW9uKSB7XHJcbiAgXHRcdHZhciBjb29yZHMgPSBbXTtcclxuXHJcbiAgXHRcdHRoaXMuZWFjaExheWVyKGZ1bmN0aW9uIChsYXllcikge1xyXG4gIFx0XHRcdGNvb3Jkcy5wdXNoKGxheWVyLnRvR2VvSlNPTihwcmVjaXNpb24pLmdlb21ldHJ5LmNvb3JkaW5hdGVzKTtcclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRyZXR1cm4gZ2V0RmVhdHVyZSh0aGlzLCB7XHJcbiAgXHRcdFx0dHlwZTogJ011bHRpUG9pbnQnLFxyXG4gIFx0XHRcdGNvb3JkaW5hdGVzOiBjb29yZHNcclxuICBcdFx0fSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9HZW9KU09OKHByZWNpc2lvbj86IE51bWJlcnxmYWxzZSk6IE9iamVjdFxyXG4gIFx0Ly8gQ29vcmRpbmF0ZXMgdmFsdWVzIGFyZSByb3VuZGVkIHdpdGggW2Bmb3JtYXROdW1gXSgjdXRpbC1mb3JtYXRudW0pIGZ1bmN0aW9uIHdpdGggZ2l2ZW4gYHByZWNpc2lvbmAuXHJcbiAgXHQvLyBSZXR1cm5zIGEgW2BHZW9KU09OYF0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvR2VvSlNPTikgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxheWVyIGdyb3VwIChhcyBhIEdlb0pTT04gYEZlYXR1cmVDb2xsZWN0aW9uYCwgYEdlb21ldHJ5Q29sbGVjdGlvbmAsIG9yIGBNdWx0aVBvaW50YCkuXHJcbiAgXHR0b0dlb0pTT046IGZ1bmN0aW9uIChwcmVjaXNpb24pIHtcclxuXHJcbiAgXHRcdHZhciB0eXBlID0gdGhpcy5mZWF0dXJlICYmIHRoaXMuZmVhdHVyZS5nZW9tZXRyeSAmJiB0aGlzLmZlYXR1cmUuZ2VvbWV0cnkudHlwZTtcclxuXHJcbiAgXHRcdGlmICh0eXBlID09PSAnTXVsdGlQb2ludCcpIHtcclxuICBcdFx0XHRyZXR1cm4gdGhpcy50b011bHRpUG9pbnQocHJlY2lzaW9uKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGlzR2VvbWV0cnlDb2xsZWN0aW9uID0gdHlwZSA9PT0gJ0dlb21ldHJ5Q29sbGVjdGlvbicsXHJcbiAgXHRcdCAgICBqc29ucyA9IFtdO1xyXG5cclxuICBcdFx0dGhpcy5lYWNoTGF5ZXIoZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdFx0aWYgKGxheWVyLnRvR2VvSlNPTikge1xyXG4gIFx0XHRcdFx0dmFyIGpzb24gPSBsYXllci50b0dlb0pTT04ocHJlY2lzaW9uKTtcclxuICBcdFx0XHRcdGlmIChpc0dlb21ldHJ5Q29sbGVjdGlvbikge1xyXG4gIFx0XHRcdFx0XHRqc29ucy5wdXNoKGpzb24uZ2VvbWV0cnkpO1xyXG4gIFx0XHRcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRcdFx0dmFyIGZlYXR1cmUgPSBhc0ZlYXR1cmUoanNvbik7XHJcbiAgXHRcdFx0XHRcdC8vIFNxdWFzaCBuZXN0ZWQgZmVhdHVyZSBjb2xsZWN0aW9uc1xyXG4gIFx0XHRcdFx0XHRpZiAoZmVhdHVyZS50eXBlID09PSAnRmVhdHVyZUNvbGxlY3Rpb24nKSB7XHJcbiAgXHRcdFx0XHRcdFx0anNvbnMucHVzaC5hcHBseShqc29ucywgZmVhdHVyZS5mZWF0dXJlcyk7XHJcbiAgXHRcdFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHRcdFx0anNvbnMucHVzaChmZWF0dXJlKTtcclxuICBcdFx0XHRcdFx0fVxyXG4gIFx0XHRcdFx0fVxyXG4gIFx0XHRcdH1cclxuICBcdFx0fSk7XHJcblxyXG4gIFx0XHRpZiAoaXNHZW9tZXRyeUNvbGxlY3Rpb24pIHtcclxuICBcdFx0XHRyZXR1cm4gZ2V0RmVhdHVyZSh0aGlzLCB7XHJcbiAgXHRcdFx0XHRnZW9tZXRyaWVzOiBqc29ucyxcclxuICBcdFx0XHRcdHR5cGU6ICdHZW9tZXRyeUNvbGxlY3Rpb24nXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB7XHJcbiAgXHRcdFx0dHlwZTogJ0ZlYXR1cmVDb2xsZWN0aW9uJyxcclxuICBcdFx0XHRmZWF0dXJlczoganNvbnNcclxuICBcdFx0fTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBHZW9KU09OXHJcbiAgLy8gQGZhY3RvcnkgTC5nZW9KU09OKGdlb2pzb24/OiBPYmplY3QsIG9wdGlvbnM/OiBHZW9KU09OIG9wdGlvbnMpXHJcbiAgLy8gQ3JlYXRlcyBhIEdlb0pTT04gbGF5ZXIuIE9wdGlvbmFsbHkgYWNjZXB0cyBhbiBvYmplY3QgaW5cclxuICAvLyBbR2VvSlNPTiBmb3JtYXRdKGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3OTQ2KSB0byBkaXNwbGF5IG9uIHRoZSBtYXBcclxuICAvLyAoeW91IGNhbiBhbHRlcm5hdGl2ZWx5IGFkZCBpdCBsYXRlciB3aXRoIGBhZGREYXRhYCBtZXRob2QpIGFuZCBhbiBgb3B0aW9uc2Agb2JqZWN0LlxyXG4gIGZ1bmN0aW9uIGdlb0pTT04oZ2VvanNvbiwgb3B0aW9ucykge1xyXG4gIFx0cmV0dXJuIG5ldyBHZW9KU09OKGdlb2pzb24sIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eS5cclxuICB2YXIgZ2VvSnNvbiA9IGdlb0pTT047XG5cbiAgLypcclxuICAgKiBAY2xhc3MgSW1hZ2VPdmVybGF5XHJcbiAgICogQGFrYSBMLkltYWdlT3ZlcmxheVxyXG4gICAqIEBpbmhlcml0cyBJbnRlcmFjdGl2ZSBsYXllclxyXG4gICAqXHJcbiAgICogVXNlZCB0byBsb2FkIGFuZCBkaXNwbGF5IGEgc2luZ2xlIGltYWdlIG92ZXIgc3BlY2lmaWMgYm91bmRzIG9mIHRoZSBtYXAuIEV4dGVuZHMgYExheWVyYC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciBpbWFnZVVybCA9ICdodHRwczovL21hcHMubGliLnV0ZXhhcy5lZHUvbWFwcy9oaXN0b3JpY2FsL25ld2Fya19ual8xOTIyLmpwZycsXHJcbiAgICogXHRpbWFnZUJvdW5kcyA9IFtbNDAuNzEyMjE2LCAtNzQuMjI2NTVdLCBbNDAuNzczOTQxLCAtNzQuMTI1NDRdXTtcclxuICAgKiBMLmltYWdlT3ZlcmxheShpbWFnZVVybCwgaW1hZ2VCb3VuZHMpLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBJbWFnZU92ZXJsYXkgPSBMYXllci5leHRlbmQoe1xyXG5cclxuICBcdC8vIEBzZWN0aW9uXHJcbiAgXHQvLyBAYWthIEltYWdlT3ZlcmxheSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMS4wXHJcbiAgXHRcdC8vIFRoZSBvcGFjaXR5IG9mIHRoZSBpbWFnZSBvdmVybGF5LlxyXG4gIFx0XHRvcGFjaXR5OiAxLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhbHQ6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFRleHQgZm9yIHRoZSBgYWx0YCBhdHRyaWJ1dGUgb2YgdGhlIGltYWdlICh1c2VmdWwgZm9yIGFjY2Vzc2liaWxpdHkpLlxyXG4gIFx0XHRhbHQ6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBpbnRlcmFjdGl2ZTogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIGltYWdlIG92ZXJsYXkgd2lsbCBlbWl0IFttb3VzZSBldmVudHNdKCNpbnRlcmFjdGl2ZS1sYXllcikgd2hlbiBjbGlja2VkIG9yIGhvdmVyZWQuXHJcbiAgXHRcdGludGVyYWN0aXZlOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY3Jvc3NPcmlnaW46IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGltYWdlLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgdGhlIGltYWdlIHdpbGwgaGF2ZSBpdHMgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHNldCB0byB0aGUgU3RyaW5nIHByb3ZpZGVkLiBUaGlzIGlzIG5lZWRlZCBpZiB5b3Ugd2FudCB0byBhY2Nlc3MgaW1hZ2UgcGl4ZWwgZGF0YS5cclxuICBcdFx0Ly8gUmVmZXIgdG8gW0NPUlMgU2V0dGluZ3NdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvQ09SU19zZXR0aW5nc19hdHRyaWJ1dGVzKSBmb3IgdmFsaWQgU3RyaW5nIHZhbHVlcy5cclxuICBcdFx0Y3Jvc3NPcmlnaW46IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBlcnJvck92ZXJsYXlVcmw6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIFVSTCB0byB0aGUgb3ZlcmxheSBpbWFnZSB0byBzaG93IGluIHBsYWNlIG9mIHRoZSBvdmVybGF5IHRoYXQgZmFpbGVkIHRvIGxvYWQuXHJcbiAgXHRcdGVycm9yT3ZlcmxheVVybDogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHpJbmRleDogTnVtYmVyID0gMVxyXG4gIFx0XHQvLyBUaGUgZXhwbGljaXQgW3pJbmRleF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQ1NTL0NTU19Qb3NpdGlvbmluZy9VbmRlcnN0YW5kaW5nX3pfaW5kZXgpIG9mIHRoZSBvdmVybGF5IGxheWVyLlxyXG4gIFx0XHR6SW5kZXg6IDEsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGNsYXNzTmFtZTogU3RyaW5nID0gJydcclxuICBcdFx0Ly8gQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIGltYWdlLiBFbXB0eSBieSBkZWZhdWx0LlxyXG4gIFx0XHRjbGFzc05hbWU6ICcnXHJcbiAgXHR9LFxyXG5cclxuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uICh1cmwsIGJvdW5kcywgb3B0aW9ucykgeyAvLyAoU3RyaW5nLCBMYXRMbmdCb3VuZHMsIE9iamVjdClcclxuICBcdFx0dGhpcy5fdXJsID0gdXJsO1xyXG4gIFx0XHR0aGlzLl9ib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9pbWFnZSkge1xyXG4gIFx0XHRcdHRoaXMuX2luaXRJbWFnZSgpO1xyXG5cclxuICBcdFx0XHRpZiAodGhpcy5vcHRpb25zLm9wYWNpdHkgPCAxKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl91cGRhdGVPcGFjaXR5KCk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmludGVyYWN0aXZlKSB7XHJcbiAgXHRcdFx0YWRkQ2xhc3ModGhpcy5faW1hZ2UsICdsZWFmbGV0LWludGVyYWN0aXZlJyk7XHJcbiAgXHRcdFx0dGhpcy5hZGRJbnRlcmFjdGl2ZVRhcmdldCh0aGlzLl9pbWFnZSk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHRoaXMuZ2V0UGFuZSgpLmFwcGVuZENoaWxkKHRoaXMuX2ltYWdlKTtcclxuICBcdFx0dGhpcy5fcmVzZXQoKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmVtb3ZlKHRoaXMuX2ltYWdlKTtcclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5pbnRlcmFjdGl2ZSkge1xyXG4gIFx0XHRcdHRoaXMucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQodGhpcy5faW1hZ2UpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0T3BhY2l0eShvcGFjaXR5OiBOdW1iZXIpOiB0aGlzXHJcbiAgXHQvLyBTZXRzIHRoZSBvcGFjaXR5IG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcclxuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX2ltYWdlKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRzZXRTdHlsZTogZnVuY3Rpb24gKHN0eWxlT3B0cykge1xyXG4gIFx0XHRpZiAoc3R5bGVPcHRzLm9wYWNpdHkpIHtcclxuICBcdFx0XHR0aGlzLnNldE9wYWNpdHkoc3R5bGVPcHRzLm9wYWNpdHkpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9Gcm9udCgpOiB0aGlzXHJcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSB0b3Agb2YgYWxsIG92ZXJsYXlzLlxyXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0Zyb250KHRoaXMuX2ltYWdlKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjaygpOiB0aGlzXHJcbiAgXHQvLyBCcmluZ3MgdGhlIGxheWVyIHRvIHRoZSBib3R0b20gb2YgYWxsIG92ZXJsYXlzLlxyXG4gIFx0YnJpbmdUb0JhY2s6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRvQmFjayh0aGlzLl9pbWFnZSk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0VXJsKHVybDogU3RyaW5nKTogdGhpc1xyXG4gIFx0Ly8gQ2hhbmdlcyB0aGUgVVJMIG9mIHRoZSBpbWFnZS5cclxuICBcdHNldFVybDogZnVuY3Rpb24gKHVybCkge1xyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5faW1hZ2UpIHtcclxuICBcdFx0XHR0aGlzLl9pbWFnZS5zcmMgPSB1cmw7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0Qm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xyXG4gIFx0Ly8gVXBkYXRlIHRoZSBib3VuZHMgdGhhdCB0aGlzIEltYWdlT3ZlcmxheSBjb3ZlcnNcclxuICBcdHNldEJvdW5kczogZnVuY3Rpb24gKGJvdW5kcykge1xyXG4gIFx0XHR0aGlzLl9ib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyhib3VuZHMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX3Jlc2V0KCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgZXZlbnRzID0ge1xyXG4gIFx0XHRcdHpvb206IHRoaXMuX3Jlc2V0LFxyXG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXRcclxuICBcdFx0fTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcclxuICBcdFx0XHRldmVudHMuem9vbWFuaW0gPSB0aGlzLl9hbmltYXRlWm9vbTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIGV2ZW50cztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRaSW5kZXgodmFsdWU6IE51bWJlcik6IHRoaXNcclxuICBcdC8vIENoYW5nZXMgdGhlIFt6SW5kZXhdKCNpbWFnZW92ZXJsYXktemluZGV4KSBvZiB0aGUgaW1hZ2Ugb3ZlcmxheS5cclxuICBcdHNldFpJbmRleDogZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXggPSB2YWx1ZTtcclxuICBcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGdldEJvdW5kcygpOiBMYXRMbmdCb3VuZHNcclxuICBcdC8vIEdldCB0aGUgYm91bmRzIHRoYXQgdGhpcyBJbWFnZU92ZXJsYXkgY292ZXJzXHJcbiAgXHRnZXRCb3VuZHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0cmV0dXJuIHRoaXMuX2JvdW5kcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50KCk6IEhUTUxFbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYEhUTUxJbWFnZUVsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvSFRNTEltYWdlRWxlbWVudClcclxuICBcdC8vIHVzZWQgYnkgdGhpcyBvdmVybGF5LlxyXG4gIFx0Z2V0RWxlbWVudDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5faW1hZ2U7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9pbml0SW1hZ2U6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIHdhc0VsZW1lbnRTdXBwbGllZCA9IHRoaXMuX3VybC50YWdOYW1lID09PSAnSU1HJztcclxuICBcdFx0dmFyIGltZyA9IHRoaXMuX2ltYWdlID0gd2FzRWxlbWVudFN1cHBsaWVkID8gdGhpcy5fdXJsIDogY3JlYXRlJDEoJ2ltZycpO1xyXG5cclxuICBcdFx0YWRkQ2xhc3MoaW1nLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7IGFkZENsYXNzKGltZywgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lKSB7IGFkZENsYXNzKGltZywgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cclxuXHJcbiAgXHRcdGltZy5vbnNlbGVjdHN0YXJ0ID0gZmFsc2VGbjtcclxuICBcdFx0aW1nLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2FkOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBJbWFnZU92ZXJsYXkgbGF5ZXIgaGFzIGxvYWRlZCBpdHMgaW1hZ2VcclxuICBcdFx0aW1nLm9ubG9hZCA9IGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbG9hZCcpO1xyXG4gIFx0XHRpbWcub25lcnJvciA9IGJpbmQodGhpcy5fb3ZlcmxheU9uRXJyb3IsIHRoaXMsICdlcnJvcicpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbiB8fCB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09ICcnKSB7XHJcbiAgXHRcdFx0aW1nLmNyb3NzT3JpZ2luID0gdGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luID09PSB0cnVlID8gJycgOiB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW47XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuekluZGV4KSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh3YXNFbGVtZW50U3VwcGxpZWQpIHtcclxuICBcdFx0XHR0aGlzLl91cmwgPSBpbWcuc3JjO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0aW1nLnNyYyA9IHRoaXMuX3VybDtcclxuICBcdFx0aW1nLmFsdCA9IHRoaXMub3B0aW9ucy5hbHQ7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIHNjYWxlID0gdGhpcy5fbWFwLmdldFpvb21TY2FsZShlLnpvb20pLFxyXG4gIFx0XHQgICAgb2Zmc2V0ID0gdGhpcy5fbWFwLl9sYXRMbmdCb3VuZHNUb05ld0xheWVyQm91bmRzKHRoaXMuX2JvdW5kcywgZS56b29tLCBlLmNlbnRlcikubWluO1xyXG5cclxuICBcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX2ltYWdlLCBvZmZzZXQsIHNjYWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBpbWFnZSA9IHRoaXMuX2ltYWdlLFxyXG4gIFx0XHQgICAgYm91bmRzID0gbmV3IEJvdW5kcyhcclxuICBcdFx0ICAgICAgICB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2JvdW5kcy5nZXROb3J0aFdlc3QoKSksXHJcbiAgXHRcdCAgICAgICAgdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9ib3VuZHMuZ2V0U291dGhFYXN0KCkpKSxcclxuICBcdFx0ICAgIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xyXG5cclxuICBcdFx0c2V0UG9zaXRpb24oaW1hZ2UsIGJvdW5kcy5taW4pO1xyXG5cclxuICBcdFx0aW1hZ2Uuc3R5bGUud2lkdGggID0gc2l6ZS54ICsgJ3B4JztcclxuICBcdFx0aW1hZ2Uuc3R5bGUuaGVpZ2h0ID0gc2l6ZS55ICsgJ3B4JztcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0c2V0T3BhY2l0eSh0aGlzLl9pbWFnZSwgdGhpcy5vcHRpb25zLm9wYWNpdHkpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdXBkYXRlWkluZGV4OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9pbWFnZSAmJiB0aGlzLm9wdGlvbnMuekluZGV4ICE9PSB1bmRlZmluZWQgJiYgdGhpcy5vcHRpb25zLnpJbmRleCAhPT0gbnVsbCkge1xyXG4gIFx0XHRcdHRoaXMuX2ltYWdlLnN0eWxlLnpJbmRleCA9IHRoaXMub3B0aW9ucy56SW5kZXg7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X292ZXJsYXlPbkVycm9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdC8vIEBldmVudCBlcnJvcjogRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiB0aGUgSW1hZ2VPdmVybGF5IGxheWVyIGZhaWxzIHRvIGxvYWQgaXRzIGltYWdlXHJcbiAgXHRcdHRoaXMuZmlyZSgnZXJyb3InKTtcclxuXHJcbiAgXHRcdHZhciBlcnJvclVybCA9IHRoaXMub3B0aW9ucy5lcnJvck92ZXJsYXlVcmw7XHJcbiAgXHRcdGlmIChlcnJvclVybCAmJiB0aGlzLl91cmwgIT09IGVycm9yVXJsKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXJsID0gZXJyb3JVcmw7XHJcbiAgXHRcdFx0dGhpcy5faW1hZ2Uuc3JjID0gZXJyb3JVcmw7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDZW50ZXIoKTogTGF0TG5nXHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBjZW50ZXIgb2YgdGhlIEltYWdlT3ZlcmxheS5cclxuICBcdGdldENlbnRlcjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fYm91bmRzLmdldENlbnRlcigpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvLyBAZmFjdG9yeSBMLmltYWdlT3ZlcmxheShpbWFnZVVybDogU3RyaW5nLCBib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IEltYWdlT3ZlcmxheSBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiB0aGUgVVJMIG9mIHRoZSBpbWFnZSBhbmQgdGhlXHJcbiAgLy8gZ2VvZ3JhcGhpY2FsIGJvdW5kcyBpdCBpcyB0aWVkIHRvLlxyXG4gIHZhciBpbWFnZU92ZXJsYXkgPSBmdW5jdGlvbiAodXJsLCBib3VuZHMsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgSW1hZ2VPdmVybGF5KHVybCwgYm91bmRzLCBvcHRpb25zKTtcclxuICB9O1xuXG4gIC8qXHJcbiAgICogQGNsYXNzIFZpZGVvT3ZlcmxheVxyXG4gICAqIEBha2EgTC5WaWRlb092ZXJsYXlcclxuICAgKiBAaW5oZXJpdHMgSW1hZ2VPdmVybGF5XHJcbiAgICpcclxuICAgKiBVc2VkIHRvIGxvYWQgYW5kIGRpc3BsYXkgYSB2aWRlbyBwbGF5ZXIgb3ZlciBzcGVjaWZpYyBib3VuZHMgb2YgdGhlIG1hcC4gRXh0ZW5kcyBgSW1hZ2VPdmVybGF5YC5cclxuICAgKlxyXG4gICAqIEEgdmlkZW8gb3ZlcmxheSB1c2VzIHRoZSBbYDx2aWRlbz5gXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdmlkZW8pXHJcbiAgICogSFRNTDUgZWxlbWVudC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBgYGBqc1xyXG4gICAqIHZhciB2aWRlb1VybCA9ICdodHRwczovL3d3dy5tYXBib3guY29tL2JpdGVzLzAwMTg4L3BhdHJpY2lhX25hc2Eud2VibScsXHJcbiAgICogXHR2aWRlb0JvdW5kcyA9IFtbIDMyLCAtMTMwXSwgWyAxMywgLTEwMF1dO1xyXG4gICAqIEwudmlkZW9PdmVybGF5KHZpZGVvVXJsLCB2aWRlb0JvdW5kcyApLmFkZFRvKG1hcCk7XHJcbiAgICogYGBgXHJcbiAgICovXHJcblxyXG4gIHZhciBWaWRlb092ZXJsYXkgPSBJbWFnZU92ZXJsYXkuZXh0ZW5kKHtcclxuXHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBWaWRlb092ZXJsYXkgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9wbGF5OiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyBzdGFydHMgcGxheWluZyBhdXRvbWF0aWNhbGx5IHdoZW4gbG9hZGVkLlxyXG4gIFx0XHQvLyBPbiBzb21lIGJyb3dzZXJzIGF1dG9wbGF5IHdpbGwgb25seSB3b3JrIHdpdGggYG11dGVkOiB0cnVlYFxyXG4gIFx0XHRhdXRvcGxheTogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbG9vcDogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgdmlkZW8gd2lsbCBsb29wIGJhY2sgdG8gdGhlIGJlZ2lubmluZyB3aGVuIHBsYXllZC5cclxuICBcdFx0bG9vcDogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24ga2VlcEFzcGVjdFJhdGlvOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyB3aWxsIHNhdmUgYXNwZWN0IHJhdGlvIGFmdGVyIHRoZSBwcm9qZWN0aW9uLlxyXG4gIFx0XHQvLyBSZWxldmFudCBmb3Igc3VwcG9ydGVkIGJyb3dzZXJzLiBTZWUgW2Jyb3dzZXIgY29tcGF0aWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL29iamVjdC1maXQpXHJcbiAgXHRcdGtlZXBBc3BlY3RSYXRpbzogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbXV0ZWQ6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBXaGV0aGVyIHRoZSB2aWRlbyBzdGFydHMgb24gbXV0ZSB3aGVuIGxvYWRlZC5cclxuICBcdFx0bXV0ZWQ6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBwbGF5c0lubGluZTogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gTW9iaWxlIGJyb3dzZXJzIHdpbGwgcGxheSB0aGUgdmlkZW8gcmlnaHQgd2hlcmUgaXQgaXMgaW5zdGVhZCBvZiBvcGVuIGl0IHVwIGluIGZ1bGxzY3JlZW4gbW9kZS5cclxuICBcdFx0cGxheXNJbmxpbmU6IHRydWVcclxuICBcdH0sXHJcblxyXG4gIFx0X2luaXRJbWFnZTogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgd2FzRWxlbWVudFN1cHBsaWVkID0gdGhpcy5fdXJsLnRhZ05hbWUgPT09ICdWSURFTyc7XHJcbiAgXHRcdHZhciB2aWQgPSB0aGlzLl9pbWFnZSA9IHdhc0VsZW1lbnRTdXBwbGllZCA/IHRoaXMuX3VybCA6IGNyZWF0ZSQxKCd2aWRlbycpO1xyXG5cclxuICBcdFx0YWRkQ2xhc3ModmlkLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7IGFkZENsYXNzKHZpZCwgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lKSB7IGFkZENsYXNzKHZpZCwgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cclxuXHJcbiAgXHRcdHZpZC5vbnNlbGVjdHN0YXJ0ID0gZmFsc2VGbjtcclxuICBcdFx0dmlkLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcclxuXHJcbiAgXHRcdC8vIEBldmVudCBsb2FkOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSB2aWRlbyBoYXMgZmluaXNoZWQgbG9hZGluZyB0aGUgZmlyc3QgZnJhbWVcclxuICBcdFx0dmlkLm9ubG9hZGVkZGF0YSA9IGJpbmQodGhpcy5maXJlLCB0aGlzLCAnbG9hZCcpO1xyXG5cclxuICBcdFx0aWYgKHdhc0VsZW1lbnRTdXBwbGllZCkge1xyXG4gIFx0XHRcdHZhciBzb3VyY2VFbGVtZW50cyA9IHZpZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc291cmNlJyk7XHJcbiAgXHRcdFx0dmFyIHNvdXJjZXMgPSBbXTtcclxuICBcdFx0XHRmb3IgKHZhciBqID0gMDsgaiA8IHNvdXJjZUVsZW1lbnRzLmxlbmd0aDsgaisrKSB7XHJcbiAgXHRcdFx0XHRzb3VyY2VzLnB1c2goc291cmNlRWxlbWVudHNbal0uc3JjKTtcclxuICBcdFx0XHR9XHJcblxyXG4gIFx0XHRcdHRoaXMuX3VybCA9IChzb3VyY2VFbGVtZW50cy5sZW5ndGggPiAwKSA/IHNvdXJjZXMgOiBbdmlkLnNyY107XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAoIWlzQXJyYXkodGhpcy5fdXJsKSkgeyB0aGlzLl91cmwgPSBbdGhpcy5fdXJsXTsgfVxyXG5cclxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMua2VlcEFzcGVjdFJhdGlvICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2aWQuc3R5bGUsICdvYmplY3RGaXQnKSkge1xyXG4gIFx0XHRcdHZpZC5zdHlsZVsnb2JqZWN0Rml0J10gPSAnZmlsbCc7XHJcbiAgXHRcdH1cclxuICBcdFx0dmlkLmF1dG9wbGF5ID0gISF0aGlzLm9wdGlvbnMuYXV0b3BsYXk7XHJcbiAgXHRcdHZpZC5sb29wID0gISF0aGlzLm9wdGlvbnMubG9vcDtcclxuICBcdFx0dmlkLm11dGVkID0gISF0aGlzLm9wdGlvbnMubXV0ZWQ7XHJcbiAgXHRcdHZpZC5wbGF5c0lubGluZSA9ICEhdGhpcy5vcHRpb25zLnBsYXlzSW5saW5lO1xyXG4gIFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuX3VybC5sZW5ndGg7IGkrKykge1xyXG4gIFx0XHRcdHZhciBzb3VyY2UgPSBjcmVhdGUkMSgnc291cmNlJyk7XHJcbiAgXHRcdFx0c291cmNlLnNyYyA9IHRoaXMuX3VybFtpXTtcclxuICBcdFx0XHR2aWQuYXBwZW5kQ2hpbGQoc291cmNlKTtcclxuICBcdFx0fVxyXG4gIFx0fVxyXG5cclxuICBcdC8vIEBtZXRob2QgZ2V0RWxlbWVudCgpOiBIVE1MVmlkZW9FbGVtZW50XHJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYEhUTUxWaWRlb0VsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvSFRNTFZpZGVvRWxlbWVudClcclxuICBcdC8vIHVzZWQgYnkgdGhpcyBvdmVybGF5LlxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC52aWRlb092ZXJsYXkodmlkZW86IFN0cmluZ3xBcnJheXxIVE1MVmlkZW9FbGVtZW50LCBib3VuZHM6IExhdExuZ0JvdW5kcywgb3B0aW9ucz86IFZpZGVvT3ZlcmxheSBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiB0aGUgVVJMIG9mIHRoZSB2aWRlbyAob3IgYXJyYXkgb2YgVVJMcywgb3IgZXZlbiBhIHZpZGVvIGVsZW1lbnQpIGFuZCB0aGVcclxuICAvLyBnZW9ncmFwaGljYWwgYm91bmRzIGl0IGlzIHRpZWQgdG8uXHJcblxyXG4gIGZ1bmN0aW9uIHZpZGVvT3ZlcmxheSh2aWRlbywgYm91bmRzLCBvcHRpb25zKSB7XHJcbiAgXHRyZXR1cm4gbmV3IFZpZGVvT3ZlcmxheSh2aWRlbywgYm91bmRzLCBvcHRpb25zKTtcclxuICB9XG5cbiAgLypcbiAgICogQGNsYXNzIFNWR092ZXJsYXlcbiAgICogQGFrYSBMLlNWR092ZXJsYXlcbiAgICogQGluaGVyaXRzIEltYWdlT3ZlcmxheVxuICAgKlxuICAgKiBVc2VkIHRvIGxvYWQsIGRpc3BsYXkgYW5kIHByb3ZpZGUgRE9NIGFjY2VzcyB0byBhbiBTVkcgZmlsZSBvdmVyIHNwZWNpZmljIGJvdW5kcyBvZiB0aGUgbWFwLiBFeHRlbmRzIGBJbWFnZU92ZXJsYXlgLlxuICAgKlxuICAgKiBBbiBTVkcgb3ZlcmxheSB1c2VzIHRoZSBbYDxzdmc+YF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvU1ZHL0VsZW1lbnQvc3ZnKSBlbGVtZW50LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgc3ZnRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIsIFwic3ZnXCIpO1xuICAgKiBzdmdFbGVtZW50LnNldEF0dHJpYnV0ZSgneG1sbnMnLCBcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIpO1xuICAgKiBzdmdFbGVtZW50LnNldEF0dHJpYnV0ZSgndmlld0JveCcsIFwiMCAwIDIwMCAyMDBcIik7XG4gICAqIHN2Z0VsZW1lbnQuaW5uZXJIVE1MID0gJzxyZWN0IHdpZHRoPVwiMjAwXCIgaGVpZ2h0PVwiMjAwXCIvPjxyZWN0IHg9XCI3NVwiIHk9XCIyM1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIHN0eWxlPVwiZmlsbDpyZWRcIi8+PHJlY3QgeD1cIjc1XCIgeT1cIjEyM1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIHN0eWxlPVwiZmlsbDojMDAxM2ZmXCIvPic7XG4gICAqIHZhciBzdmdFbGVtZW50Qm91bmRzID0gWyBbIDMyLCAtMTMwIF0sIFsgMTMsIC0xMDAgXSBdO1xuICAgKiBMLnN2Z092ZXJsYXkoc3ZnRWxlbWVudCwgc3ZnRWxlbWVudEJvdW5kcykuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIHZhciBTVkdPdmVybGF5ID0gSW1hZ2VPdmVybGF5LmV4dGVuZCh7XG4gIFx0X2luaXRJbWFnZTogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGVsID0gdGhpcy5faW1hZ2UgPSB0aGlzLl91cmw7XG5cbiAgXHRcdGFkZENsYXNzKGVsLCAnbGVhZmxldC1pbWFnZS1sYXllcicpO1xuICBcdFx0aWYgKHRoaXMuX3pvb21BbmltYXRlZCkgeyBhZGRDbGFzcyhlbCwgJ2xlYWZsZXQtem9vbS1hbmltYXRlZCcpOyB9XG4gIFx0XHRpZiAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSkgeyBhZGRDbGFzcyhlbCwgdGhpcy5vcHRpb25zLmNsYXNzTmFtZSk7IH1cblxuICBcdFx0ZWwub25zZWxlY3RzdGFydCA9IGZhbHNlRm47XG4gIFx0XHRlbC5vbm1vdXNlbW92ZSA9IGZhbHNlRm47XG4gIFx0fVxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50KCk6IFNWR0VsZW1lbnRcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBbYFNWR0VsZW1lbnRgXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvU1ZHRWxlbWVudClcbiAgXHQvLyB1c2VkIGJ5IHRoaXMgb3ZlcmxheS5cbiAgfSk7XG5cblxuICAvLyBAZmFjdG9yeSBMLnN2Z092ZXJsYXkoc3ZnOiBTdHJpbmd8U1ZHRWxlbWVudCwgYm91bmRzOiBMYXRMbmdCb3VuZHMsIG9wdGlvbnM/OiBTVkdPdmVybGF5IG9wdGlvbnMpXG4gIC8vIEluc3RhbnRpYXRlcyBhbiBpbWFnZSBvdmVybGF5IG9iamVjdCBnaXZlbiBhbiBTVkcgZWxlbWVudCBhbmQgdGhlIGdlb2dyYXBoaWNhbCBib3VuZHMgaXQgaXMgdGllZCB0by5cbiAgLy8gQSB2aWV3Qm94IGF0dHJpYnV0ZSBpcyByZXF1aXJlZCBvbiB0aGUgU1ZHIGVsZW1lbnQgdG8gem9vbSBpbiBhbmQgb3V0IHByb3Blcmx5LlxuXG4gIGZ1bmN0aW9uIHN2Z092ZXJsYXkoZWwsIGJvdW5kcywgb3B0aW9ucykge1xuICBcdHJldHVybiBuZXcgU1ZHT3ZlcmxheShlbCwgYm91bmRzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIERpdk92ZXJsYXlcclxuICAgKiBAaW5oZXJpdHMgSW50ZXJhY3RpdmUgbGF5ZXJcclxuICAgKiBAYWthIEwuRGl2T3ZlcmxheVxyXG4gICAqIEJhc2UgbW9kZWwgZm9yIEwuUG9wdXAgYW5kIEwuVG9vbHRpcC4gSW5oZXJpdCBmcm9tIGl0IGZvciBjdXN0b20gb3ZlcmxheXMgbGlrZSBwbHVnaW5zLlxyXG4gICAqL1xyXG5cclxuICAvLyBAbmFtZXNwYWNlIERpdk92ZXJsYXlcclxuICB2YXIgRGl2T3ZlcmxheSA9IExheWVyLmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgRGl2T3ZlcmxheSBvcHRpb25zXHJcbiAgXHRvcHRpb25zOiB7XHJcbiAgXHRcdC8vIEBvcHRpb24gaW50ZXJhY3RpdmU6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBJZiB0cnVlLCB0aGUgcG9wdXAvdG9vbHRpcCB3aWxsIGxpc3RlbiB0byB0aGUgbW91c2UgZXZlbnRzLlxyXG4gIFx0XHRpbnRlcmFjdGl2ZTogZmFsc2UsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIG9mZnNldDogUG9pbnQgPSBQb2ludCgwLCAwKVxyXG4gIFx0XHQvLyBUaGUgb2Zmc2V0IG9mIHRoZSBvdmVybGF5IHBvc2l0aW9uLlxyXG4gIFx0XHRvZmZzZXQ6IFswLCAwXSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyBBIGN1c3RvbSBDU1MgY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIG92ZXJsYXkuXHJcbiAgXHRcdGNsYXNzTmFtZTogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9IHVuZGVmaW5lZFxyXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSBvdmVybGF5IHdpbGwgYmUgYWRkZWQuXHJcbiAgXHRcdHBhbmU6IHVuZGVmaW5lZCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fEZ1bmN0aW9uID0gJydcclxuICBcdFx0Ly8gU2V0cyB0aGUgSFRNTCBjb250ZW50IG9mIHRoZSBvdmVybGF5IHdoaWxlIGluaXRpYWxpemluZy4gSWYgYSBmdW5jdGlvbiBpcyBwYXNzZWQgdGhlIHNvdXJjZSBsYXllciB3aWxsIGJlXHJcbiAgXHRcdC8vIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uIFRoZSBmdW5jdGlvbiBzaG91bGQgcmV0dXJuIGEgYFN0cmluZ2Agb3IgYEhUTUxFbGVtZW50YCB0byBiZSB1c2VkIGluIHRoZSBvdmVybGF5LlxyXG4gIFx0XHRjb250ZW50OiAnJ1xyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucywgc291cmNlKSB7XHJcbiAgXHRcdGlmIChvcHRpb25zICYmIChvcHRpb25zIGluc3RhbmNlb2YgTGF0TG5nIHx8IGlzQXJyYXkob3B0aW9ucykpKSB7XHJcbiAgXHRcdFx0dGhpcy5fbGF0bG5nID0gdG9MYXRMbmcob3B0aW9ucyk7XHJcbiAgXHRcdFx0c2V0T3B0aW9ucyh0aGlzLCBzb3VyY2UpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcbiAgXHRcdFx0dGhpcy5fc291cmNlID0gc291cmNlO1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY29udGVudCkge1xyXG4gIFx0XHRcdHRoaXMuX2NvbnRlbnQgPSB0aGlzLm9wdGlvbnMuY29udGVudDtcclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG9wZW5PbihtYXA6IE1hcCk6IHRoaXNcclxuICBcdC8vIEFkZHMgdGhlIG92ZXJsYXkgdG8gdGhlIG1hcC5cclxuICBcdC8vIEFsdGVybmF0aXZlIHRvIGBtYXAub3BlblBvcHVwKHBvcHVwKWAvYC5vcGVuVG9vbHRpcCh0b29sdGlwKWAuXHJcbiAgXHRvcGVuT246IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwID0gYXJndW1lbnRzLmxlbmd0aCA/IG1hcCA6IHRoaXMuX3NvdXJjZS5fbWFwOyAvLyBleHBlcmltZW50YWwsIG5vdCB0aGUgcGFydCBvZiBwdWJsaWMgYXBpXHJcbiAgXHRcdGlmICghbWFwLmhhc0xheWVyKHRoaXMpKSB7XHJcbiAgXHRcdFx0bWFwLmFkZExheWVyKHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb3NlKCk6IHRoaXNcclxuICBcdC8vIENsb3NlcyB0aGUgb3ZlcmxheS5cclxuICBcdC8vIEFsdGVybmF0aXZlIHRvIGBtYXAuY2xvc2VQb3B1cChwb3B1cClgL2AuY2xvc2VUb29sdGlwKHRvb2x0aXApYFxyXG4gIFx0Ly8gYW5kIGBsYXllci5jbG9zZVBvcHVwKClgL2AuY2xvc2VUb29sdGlwKClgLlxyXG4gIFx0Y2xvc2U6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKHRoaXMuX21hcCkge1xyXG4gIFx0XHRcdHRoaXMuX21hcC5yZW1vdmVMYXllcih0aGlzKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCB0b2dnbGUobGF5ZXI/OiBMYXllcik6IHRoaXNcclxuICBcdC8vIE9wZW5zIG9yIGNsb3NlcyB0aGUgb3ZlcmxheSBib3VuZCB0byBsYXllciBkZXBlbmRpbmcgb24gaXRzIGN1cnJlbnQgc3RhdGUuXHJcbiAgXHQvLyBBcmd1bWVudCBtYXkgYmUgb21pdHRlZCBvbmx5IGZvciBvdmVybGF5IGJvdW5kIHRvIGxheWVyLlxyXG4gIFx0Ly8gQWx0ZXJuYXRpdmUgdG8gYGxheWVyLnRvZ2dsZVBvcHVwKClgL2AudG9nZ2xlVG9vbHRpcCgpYC5cclxuICBcdHRvZ2dsZTogZnVuY3Rpb24gKGxheWVyKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0aGlzLmNsb3NlKCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0aWYgKGFyZ3VtZW50cy5sZW5ndGgpIHtcclxuICBcdFx0XHRcdHRoaXMuX3NvdXJjZSA9IGxheWVyO1xyXG4gIFx0XHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0XHRsYXllciA9IHRoaXMuX3NvdXJjZTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0dGhpcy5fcHJlcGFyZU9wZW4oKTtcclxuXHJcbiAgXHRcdFx0Ly8gb3BlbiB0aGUgb3ZlcmxheSBvbiB0aGUgbWFwXHJcbiAgXHRcdFx0dGhpcy5vcGVuT24obGF5ZXIuX21hcCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XHJcbiAgXHRcdHRoaXMuX3pvb21BbmltYXRlZCA9IG1hcC5fem9vbUFuaW1hdGVkO1xyXG5cclxuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHtcclxuICBcdFx0XHR0aGlzLl9pbml0TGF5b3V0KCk7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmIChtYXAuX2ZhZGVBbmltYXRlZCkge1xyXG4gIFx0XHRcdHNldE9wYWNpdHkodGhpcy5fY29udGFpbmVyLCAwKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3JlbW92ZVRpbWVvdXQpO1xyXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG5cclxuICBcdFx0aWYgKG1hcC5fZmFkZUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9jb250YWluZXIsIDEpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLmJyaW5nVG9Gcm9udCgpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5pbnRlcmFjdGl2ZSkge1xyXG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcclxuICBcdFx0XHR0aGlzLmFkZEludGVyYWN0aXZlVGFyZ2V0KHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0b25SZW1vdmU6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0aWYgKG1hcC5fZmFkZUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aGlzLl9jb250YWluZXIsIDApO1xyXG4gIFx0XHRcdHRoaXMuX3JlbW92ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQocmVtb3ZlLCB1bmRlZmluZWQsIHRoaXMuX2NvbnRhaW5lciksIDIwMCk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuaW50ZXJhY3RpdmUpIHtcclxuICBcdFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9jb250YWluZXIsICdsZWFmbGV0LWludGVyYWN0aXZlJyk7XHJcbiAgXHRcdFx0dGhpcy5yZW1vdmVJbnRlcmFjdGl2ZVRhcmdldCh0aGlzLl9jb250YWluZXIpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBuYW1lc3BhY2UgRGl2T3ZlcmxheVxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRMYXRMbmc6IExhdExuZ1xyXG4gIFx0Ly8gUmV0dXJucyB0aGUgZ2VvZ3JhcGhpY2FsIHBvaW50IG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0Z2V0TGF0TG5nOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9sYXRsbmc7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0TGF0TG5nKGxhdGxuZzogTGF0TG5nKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgZ2VvZ3JhcGhpY2FsIHBvaW50IHdoZXJlIHRoZSBvdmVybGF5IHdpbGwgb3Blbi5cclxuICBcdHNldExhdExuZzogZnVuY3Rpb24gKGxhdGxuZykge1xyXG4gIFx0XHR0aGlzLl9sYXRsbmcgPSB0b0xhdExuZyhsYXRsbmcpO1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUG9zaXRpb24oKTtcclxuICBcdFx0XHR0aGlzLl9hZGp1c3RQYW4oKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250ZW50OiBTdHJpbmd8SFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIGNvbnRlbnQgb2YgdGhlIG92ZXJsYXkuXHJcbiAgXHRnZXRDb250ZW50OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9jb250ZW50O1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHNldENvbnRlbnQoaHRtbENvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudHxGdW5jdGlvbik6IHRoaXNcclxuICBcdC8vIFNldHMgdGhlIEhUTUwgY29udGVudCBvZiB0aGUgb3ZlcmxheS4gSWYgYSBmdW5jdGlvbiBpcyBwYXNzZWQgdGhlIHNvdXJjZSBsYXllciB3aWxsIGJlIHBhc3NlZCB0byB0aGUgZnVuY3Rpb24uXHJcbiAgXHQvLyBUaGUgZnVuY3Rpb24gc2hvdWxkIHJldHVybiBhIGBTdHJpbmdgIG9yIGBIVE1MRWxlbWVudGAgdG8gYmUgdXNlZCBpbiB0aGUgb3ZlcmxheS5cclxuICBcdHNldENvbnRlbnQ6IGZ1bmN0aW9uIChjb250ZW50KSB7XHJcbiAgXHRcdHRoaXMuX2NvbnRlbnQgPSBjb250ZW50O1xyXG4gIFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRFbGVtZW50OiBTdHJpbmd8SFRNTEVsZW1lbnRcclxuICBcdC8vIFJldHVybnMgdGhlIEhUTUwgY29udGFpbmVyIG9mIHRoZSBvdmVybGF5LlxyXG4gIFx0Z2V0RWxlbWVudDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5fY29udGFpbmVyO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVwZGF0ZTogbnVsbFxyXG4gIFx0Ly8gVXBkYXRlcyB0aGUgb3ZlcmxheSBjb250ZW50LCBsYXlvdXQgYW5kIHBvc2l0aW9uLiBVc2VmdWwgZm9yIHVwZGF0aW5nIHRoZSBvdmVybGF5IGFmdGVyIHNvbWV0aGluZyBpbnNpZGUgY2hhbmdlZCwgZS5nLiBpbWFnZSBsb2FkZWQuXHJcbiAgXHR1cGRhdGU6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9tYXApIHsgcmV0dXJuOyB9XHJcblxyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xyXG5cclxuICBcdFx0dGhpcy5fdXBkYXRlQ29udGVudCgpO1xyXG4gIFx0XHR0aGlzLl91cGRhdGVMYXlvdXQoKTtcclxuICBcdFx0dGhpcy5fdXBkYXRlUG9zaXRpb24oKTtcclxuXHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zdHlsZS52aXNpYmlsaXR5ID0gJyc7XHJcblxyXG4gIFx0XHR0aGlzLl9hZGp1c3RQYW4oKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciBldmVudHMgPSB7XHJcbiAgXHRcdFx0em9vbTogdGhpcy5fdXBkYXRlUG9zaXRpb24sXHJcbiAgXHRcdFx0dmlld3Jlc2V0OiB0aGlzLl91cGRhdGVQb3NpdGlvblxyXG4gIFx0XHR9O1xyXG5cclxuICBcdFx0aWYgKHRoaXMuX3pvb21BbmltYXRlZCkge1xyXG4gIFx0XHRcdGV2ZW50cy56b29tYW5pbSA9IHRoaXMuX2FuaW1hdGVab29tO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiBldmVudHM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgaXNPcGVuOiBCb29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCB3aGVuIHRoZSBvdmVybGF5IGlzIHZpc2libGUgb24gdGhlIG1hcC5cclxuICBcdGlzT3BlbjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRyZXR1cm4gISF0aGlzLl9tYXAgJiYgdGhpcy5fbWFwLmhhc0xheWVyKHRoaXMpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGJyaW5nVG9Gcm9udDogdGhpc1xyXG4gIFx0Ly8gQnJpbmdzIHRoaXMgb3ZlcmxheSBpbiBmcm9udCBvZiBvdGhlciBvdmVybGF5cyAoaW4gdGhlIHNhbWUgbWFwIHBhbmUpLlxyXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0Zyb250KHRoaXMuX2NvbnRhaW5lcik7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgYnJpbmdUb0JhY2s6IHRoaXNcclxuICBcdC8vIEJyaW5ncyB0aGlzIG92ZXJsYXkgdG8gdGhlIGJhY2sgb2Ygb3RoZXIgb3ZlcmxheXMgKGluIHRoZSBzYW1lIG1hcCBwYW5lKS5cclxuICBcdGJyaW5nVG9CYWNrOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9tYXApIHtcclxuICBcdFx0XHR0b0JhY2sodGhpcy5fY29udGFpbmVyKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gcHJlcGFyZSBib3VuZCBvdmVybGF5IHRvIG9wZW46IHVwZGF0ZSBsYXRsbmcgcG9zIC8gY29udGVudCBzb3VyY2UgKGZvciBGZWF0dXJlR3JvdXApXHJcbiAgXHRfcHJlcGFyZU9wZW46IGZ1bmN0aW9uIChsYXRsbmcpIHtcclxuICBcdFx0dmFyIHNvdXJjZSA9IHRoaXMuX3NvdXJjZTtcclxuICBcdFx0aWYgKCFzb3VyY2UuX21hcCkgeyByZXR1cm4gZmFsc2U7IH1cclxuXHJcbiAgXHRcdGlmIChzb3VyY2UgaW5zdGFuY2VvZiBGZWF0dXJlR3JvdXApIHtcclxuICBcdFx0XHRzb3VyY2UgPSBudWxsO1xyXG4gIFx0XHRcdHZhciBsYXllcnMgPSB0aGlzLl9zb3VyY2UuX2xheWVycztcclxuICBcdFx0XHRmb3IgKHZhciBpZCBpbiBsYXllcnMpIHtcclxuICBcdFx0XHRcdGlmIChsYXllcnNbaWRdLl9tYXApIHtcclxuICBcdFx0XHRcdFx0c291cmNlID0gbGF5ZXJzW2lkXTtcclxuICBcdFx0XHRcdFx0YnJlYWs7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHRcdGlmICghc291cmNlKSB7IHJldHVybiBmYWxzZTsgfSAvLyBVbmFibGUgdG8gZ2V0IHNvdXJjZSBsYXllci5cclxuXHJcbiAgXHRcdFx0Ly8gc2V0IG92ZXJsYXkgc291cmNlIHRvIHRoaXMgbGF5ZXJcclxuICBcdFx0XHR0aGlzLl9zb3VyY2UgPSBzb3VyY2U7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICghbGF0bG5nKSB7XHJcbiAgXHRcdFx0aWYgKHNvdXJjZS5nZXRDZW50ZXIpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRDZW50ZXIoKTtcclxuICBcdFx0XHR9IGVsc2UgaWYgKHNvdXJjZS5nZXRMYXRMbmcpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRMYXRMbmcoKTtcclxuICBcdFx0XHR9IGVsc2UgaWYgKHNvdXJjZS5nZXRCb3VuZHMpIHtcclxuICBcdFx0XHRcdGxhdGxuZyA9IHNvdXJjZS5nZXRCb3VuZHMoKS5nZXRDZW50ZXIoKTtcclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0dGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gZ2V0IHNvdXJjZSBsYXllciBMYXRMbmcuJyk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuc2V0TGF0TG5nKGxhdGxuZyk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0Ly8gdXBkYXRlIHRoZSBvdmVybGF5IChjb250ZW50LCBsYXlvdXQsIGV0Yy4uLilcclxuICBcdFx0XHR0aGlzLnVwZGF0ZSgpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gdHJ1ZTtcclxuICBcdH0sXHJcblxyXG4gIFx0X3VwZGF0ZUNvbnRlbnQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9jb250ZW50KSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0dmFyIG5vZGUgPSB0aGlzLl9jb250ZW50Tm9kZTtcclxuICBcdFx0dmFyIGNvbnRlbnQgPSAodHlwZW9mIHRoaXMuX2NvbnRlbnQgPT09ICdmdW5jdGlvbicpID8gdGhpcy5fY29udGVudCh0aGlzLl9zb3VyY2UgfHwgdGhpcykgOiB0aGlzLl9jb250ZW50O1xyXG5cclxuICBcdFx0aWYgKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykge1xyXG4gIFx0XHRcdG5vZGUuaW5uZXJIVE1MID0gY29udGVudDtcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHR3aGlsZSAobm9kZS5oYXNDaGlsZE5vZGVzKCkpIHtcclxuICBcdFx0XHRcdG5vZGUucmVtb3ZlQ2hpbGQobm9kZS5maXJzdENoaWxkKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0bm9kZS5hcHBlbmRDaGlsZChjb250ZW50KTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBEaXZPdmVybGF5XHJcbiAgXHRcdC8vIEBzZWN0aW9uIERpdk92ZXJsYXkgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBjb250ZW50dXBkYXRlOiBFdmVudFxyXG4gIFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBjb250ZW50IG9mIHRoZSBvdmVybGF5IGlzIHVwZGF0ZWRcclxuICBcdFx0dGhpcy5maXJlKCdjb250ZW50dXBkYXRlJyk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVQb3NpdGlvbjogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcCkgeyByZXR1cm47IH1cclxuXHJcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAubGF0TG5nVG9MYXllclBvaW50KHRoaXMuX2xhdGxuZyksXHJcbiAgXHRcdCAgICBvZmZzZXQgPSB0b1BvaW50KHRoaXMub3B0aW9ucy5vZmZzZXQpLFxyXG4gIFx0XHQgICAgYW5jaG9yID0gdGhpcy5fZ2V0QW5jaG9yKCk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7XHJcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCBwb3MuYWRkKGFuY2hvcikpO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdG9mZnNldCA9IG9mZnNldC5hZGQocG9zKS5hZGQoYW5jaG9yKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIGJvdHRvbSA9IHRoaXMuX2NvbnRhaW5lckJvdHRvbSA9IC1vZmZzZXQueSxcclxuICBcdFx0ICAgIGxlZnQgPSB0aGlzLl9jb250YWluZXJMZWZ0ID0gLU1hdGgucm91bmQodGhpcy5fY29udGFpbmVyV2lkdGggLyAyKSArIG9mZnNldC54O1xyXG5cclxuICBcdFx0Ly8gYm90dG9tIHBvc2l0aW9uIHRoZSBvdmVybGF5IGluIGNhc2UgdGhlIGhlaWdodCBvZiB0aGUgb3ZlcmxheSBjaGFuZ2VzIChpbWFnZXMgbG9hZGluZyBldGMpXHJcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zdHlsZS5ib3R0b20gPSBib3R0b20gKyAncHgnO1xyXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc3R5bGUubGVmdCA9IGxlZnQgKyAncHgnO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0QW5jaG9yOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiBbMCwgMF07XHJcbiAgXHR9XHJcblxyXG4gIH0pO1xyXG5cclxuICBNYXAuaW5jbHVkZSh7XHJcbiAgXHRfaW5pdE92ZXJsYXk6IGZ1bmN0aW9uIChPdmVybGF5Q2xhc3MsIGNvbnRlbnQsIGxhdGxuZywgb3B0aW9ucykge1xyXG4gIFx0XHR2YXIgb3ZlcmxheSA9IGNvbnRlbnQ7XHJcbiAgXHRcdGlmICghKG92ZXJsYXkgaW5zdGFuY2VvZiBPdmVybGF5Q2xhc3MpKSB7XHJcbiAgXHRcdFx0b3ZlcmxheSA9IG5ldyBPdmVybGF5Q2xhc3Mob3B0aW9ucykuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRpZiAobGF0bG5nKSB7XHJcbiAgXHRcdFx0b3ZlcmxheS5zZXRMYXRMbmcobGF0bG5nKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gb3ZlcmxheTtcclxuICBcdH1cclxuICB9KTtcclxuXHJcblxyXG4gIExheWVyLmluY2x1ZGUoe1xyXG4gIFx0X2luaXRPdmVybGF5OiBmdW5jdGlvbiAoT3ZlcmxheUNsYXNzLCBvbGQsIGNvbnRlbnQsIG9wdGlvbnMpIHtcclxuICBcdFx0dmFyIG92ZXJsYXkgPSBjb250ZW50O1xyXG4gIFx0XHRpZiAob3ZlcmxheSBpbnN0YW5jZW9mIE92ZXJsYXlDbGFzcykge1xyXG4gIFx0XHRcdHNldE9wdGlvbnMob3ZlcmxheSwgb3B0aW9ucyk7XHJcbiAgXHRcdFx0b3ZlcmxheS5fc291cmNlID0gdGhpcztcclxuICBcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRvdmVybGF5ID0gKG9sZCAmJiAhb3B0aW9ucykgPyBvbGQgOiBuZXcgT3ZlcmxheUNsYXNzKG9wdGlvbnMsIHRoaXMpO1xyXG4gIFx0XHRcdG92ZXJsYXkuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gb3ZlcmxheTtcclxuICBcdH1cclxuICB9KTtcblxuICAvKlxyXG4gICAqIEBjbGFzcyBQb3B1cFxyXG4gICAqIEBpbmhlcml0cyBEaXZPdmVybGF5XHJcbiAgICogQGFrYSBMLlBvcHVwXHJcbiAgICogVXNlZCB0byBvcGVuIHBvcHVwcyBpbiBjZXJ0YWluIHBsYWNlcyBvZiB0aGUgbWFwLiBVc2UgW01hcC5vcGVuUG9wdXBdKCNtYXAtb3BlbnBvcHVwKSB0b1xyXG4gICAqIG9wZW4gcG9wdXBzIHdoaWxlIG1ha2luZyBzdXJlIHRoYXQgb25seSBvbmUgcG9wdXAgaXMgb3BlbiBhdCBvbmUgdGltZVxyXG4gICAqIChyZWNvbW1lbmRlZCBmb3IgdXNhYmlsaXR5KSwgb3IgdXNlIFtNYXAuYWRkTGF5ZXJdKCNtYXAtYWRkbGF5ZXIpIHRvIG9wZW4gYXMgbWFueSBhcyB5b3Ugd2FudC5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBJZiB5b3Ugd2FudCB0byBqdXN0IGJpbmQgYSBwb3B1cCB0byBtYXJrZXIgY2xpY2sgYW5kIHRoZW4gb3BlbiBpdCwgaXQncyByZWFsbHkgZWFzeTpcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogbWFya2VyLmJpbmRQb3B1cChwb3B1cENvbnRlbnQpLm9wZW5Qb3B1cCgpO1xyXG4gICAqIGBgYFxyXG4gICAqIFBhdGggb3ZlcmxheXMgbGlrZSBwb2x5bGluZXMgYWxzbyBoYXZlIGEgYGJpbmRQb3B1cGAgbWV0aG9kLlxyXG4gICAqXHJcbiAgICogQSBwb3B1cCBjYW4gYmUgYWxzbyBzdGFuZGFsb25lOlxyXG4gICAqXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9wdXAgPSBMLnBvcHVwKClcclxuICAgKiBcdC5zZXRMYXRMbmcobGF0bG5nKVxyXG4gICAqIFx0LnNldENvbnRlbnQoJzxwPkhlbGxvIHdvcmxkITxiciAvPlRoaXMgaXMgYSBuaWNlIHBvcHVwLjwvcD4nKVxyXG4gICAqIFx0Lm9wZW5PbihtYXApO1xyXG4gICAqIGBgYFxyXG4gICAqIG9yXHJcbiAgICogYGBganNcclxuICAgKiB2YXIgcG9wdXAgPSBMLnBvcHVwKGxhdGxuZywge2NvbnRlbnQ6ICc8cD5IZWxsbyB3b3JsZCE8YnIgLz5UaGlzIGlzIGEgbmljZSBwb3B1cC48L3A+JylcclxuICAgKiBcdC5vcGVuT24obWFwKTtcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgUG9wdXBcclxuICB2YXIgUG9wdXAgPSBEaXZPdmVybGF5LmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgUG9wdXAgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICdwb3B1cFBhbmUnXHJcbiAgXHRcdC8vIGBNYXAgcGFuZWAgd2hlcmUgdGhlIHBvcHVwIHdpbGwgYmUgYWRkZWQuXHJcbiAgXHRcdHBhbmU6ICdwb3B1cFBhbmUnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBvZmZzZXQ6IFBvaW50ID0gUG9pbnQoMCwgNylcclxuICBcdFx0Ly8gVGhlIG9mZnNldCBvZiB0aGUgcG9wdXAgcG9zaXRpb24uXHJcbiAgXHRcdG9mZnNldDogWzAsIDddLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhXaWR0aDogTnVtYmVyID0gMzAwXHJcbiAgXHRcdC8vIE1heCB3aWR0aCBvZiB0aGUgcG9wdXAsIGluIHBpeGVscy5cclxuICBcdFx0bWF4V2lkdGg6IDMwMCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbWluV2lkdGg6IE51bWJlciA9IDUwXHJcbiAgXHRcdC8vIE1pbiB3aWR0aCBvZiB0aGUgcG9wdXAsIGluIHBpeGVscy5cclxuICBcdFx0bWluV2lkdGg6IDUwLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBtYXhIZWlnaHQ6IE51bWJlciA9IG51bGxcclxuICBcdFx0Ly8gSWYgc2V0LCBjcmVhdGVzIGEgc2Nyb2xsYWJsZSBjb250YWluZXIgb2YgdGhlIGdpdmVuIGhlaWdodFxyXG4gIFx0XHQvLyBpbnNpZGUgYSBwb3B1cCBpZiBpdHMgY29udGVudCBleGNlZWRzIGl0LlxyXG4gIFx0XHQvLyBUaGUgc2Nyb2xsYWJsZSBjb250YWluZXIgY2FuIGJlIHN0eWxlZCB1c2luZyB0aGVcclxuICBcdFx0Ly8gYGxlYWZsZXQtcG9wdXAtc2Nyb2xsZWRgIENTUyBjbGFzcyBzZWxlY3Rvci5cclxuICBcdFx0bWF4SGVpZ2h0OiBudWxsLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuOiBCb29sZWFuID0gdHJ1ZVxyXG4gIFx0XHQvLyBTZXQgaXQgdG8gYGZhbHNlYCBpZiB5b3UgZG9uJ3Qgd2FudCB0aGUgbWFwIHRvIGRvIHBhbm5pbmcgYW5pbWF0aW9uXHJcbiAgXHRcdC8vIHRvIGZpdCB0aGUgb3BlbmVkIHBvcHVwLlxyXG4gIFx0XHRhdXRvUGFuOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvUGFuUGFkZGluZ1RvcExlZnQ6IFBvaW50ID0gbnVsbFxyXG4gIFx0XHQvLyBUaGUgbWFyZ2luIGJldHdlZW4gdGhlIHBvcHVwIGFuZCB0aGUgdG9wIGxlZnQgY29ybmVyIG9mIHRoZSBtYXBcclxuICBcdFx0Ly8gdmlldyBhZnRlciBhdXRvcGFubmluZyB3YXMgcGVyZm9ybWVkLlxyXG4gIFx0XHRhdXRvUGFuUGFkZGluZ1RvcExlZnQ6IG51bGwsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGF1dG9QYW5QYWRkaW5nQm90dG9tUmlnaHQ6IFBvaW50ID0gbnVsbFxyXG4gIFx0XHQvLyBUaGUgbWFyZ2luIGJldHdlZW4gdGhlIHBvcHVwIGFuZCB0aGUgYm90dG9tIHJpZ2h0IGNvcm5lciBvZiB0aGUgbWFwXHJcbiAgXHRcdC8vIHZpZXcgYWZ0ZXIgYXV0b3Bhbm5pbmcgd2FzIHBlcmZvcm1lZC5cclxuICBcdFx0YXV0b1BhblBhZGRpbmdCb3R0b21SaWdodDogbnVsbCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gYXV0b1BhblBhZGRpbmc6IFBvaW50ID0gUG9pbnQoNSwgNSlcclxuICBcdFx0Ly8gRXF1aXZhbGVudCBvZiBzZXR0aW5nIGJvdGggdG9wIGxlZnQgYW5kIGJvdHRvbSByaWdodCBhdXRvcGFuIHBhZGRpbmcgdG8gdGhlIHNhbWUgdmFsdWUuXHJcbiAgXHRcdGF1dG9QYW5QYWRkaW5nOiBbNSwgNV0sXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIGtlZXBJblZpZXc6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBTZXQgaXQgdG8gYHRydWVgIGlmIHlvdSB3YW50IHRvIHByZXZlbnQgdXNlcnMgZnJvbSBwYW5uaW5nIHRoZSBwb3B1cFxyXG4gIFx0XHQvLyBvZmYgb2YgdGhlIHNjcmVlbiB3aGlsZSBpdCBpcyBvcGVuLlxyXG4gIFx0XHRrZWVwSW5WaWV3OiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xvc2VCdXR0b246IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIENvbnRyb2xzIHRoZSBwcmVzZW5jZSBvZiBhIGNsb3NlIGJ1dHRvbiBpbiB0aGUgcG9wdXAuXHJcbiAgXHRcdGNsb3NlQnV0dG9uOiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBhdXRvQ2xvc2U6IEJvb2xlYW4gPSB0cnVlXHJcbiAgXHRcdC8vIFNldCBpdCB0byBgZmFsc2VgIGlmIHlvdSB3YW50IHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mXHJcbiAgXHRcdC8vIHRoZSBwb3B1cCBjbG9zaW5nIHdoZW4gYW5vdGhlciBwb3B1cCBpcyBvcGVuZWQuXHJcbiAgXHRcdGF1dG9DbG9zZTogdHJ1ZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY2xvc2VPbkVzY2FwZUtleTogQm9vbGVhbiA9IHRydWVcclxuICBcdFx0Ly8gU2V0IGl0IHRvIGBmYWxzZWAgaWYgeW91IHdhbnQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2ZcclxuICBcdFx0Ly8gdGhlIEVTQyBrZXkgZm9yIGNsb3Npbmcgb2YgdGhlIHBvcHVwLlxyXG4gIFx0XHRjbG9zZU9uRXNjYXBlS2V5OiB0cnVlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBjbG9zZU9uQ2xpY2s6IEJvb2xlYW4gPSAqXHJcbiAgXHRcdC8vIFNldCBpdCBpZiB5b3Ugd2FudCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgcG9wdXAgY2xvc2luZyB3aGVuIHVzZXIgY2xpY2tzXHJcbiAgXHRcdC8vIG9uIHRoZSBtYXAuIERlZmF1bHRzIHRvIHRoZSBtYXAncyBbYGNsb3NlUG9wdXBPbkNsaWNrYF0oI21hcC1jbG9zZXBvcHVwb25jbGljaykgb3B0aW9uLlxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBjbGFzc05hbWU6IFN0cmluZyA9ICcnXHJcbiAgXHRcdC8vIEEgY3VzdG9tIENTUyBjbGFzcyBuYW1lIHRvIGFzc2lnbiB0byB0aGUgcG9wdXAuXHJcbiAgXHRcdGNsYXNzTmFtZTogJydcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG5hbWVzcGFjZSBQb3B1cFxyXG4gIFx0Ly8gQG1ldGhvZCBvcGVuT24obWFwOiBNYXApOiB0aGlzXHJcbiAgXHQvLyBBbHRlcm5hdGl2ZSB0byBgbWFwLm9wZW5Qb3B1cChwb3B1cClgLlxyXG4gIFx0Ly8gQWRkcyB0aGUgcG9wdXAgdG8gdGhlIG1hcCBhbmQgY2xvc2VzIHRoZSBwcmV2aW91cyBvbmUuXHJcbiAgXHRvcGVuT246IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0bWFwID0gYXJndW1lbnRzLmxlbmd0aCA/IG1hcCA6IHRoaXMuX3NvdXJjZS5fbWFwOyAvLyBleHBlcmltZW50YWwsIG5vdCB0aGUgcGFydCBvZiBwdWJsaWMgYXBpXHJcblxyXG4gIFx0XHRpZiAoIW1hcC5oYXNMYXllcih0aGlzKSAmJiBtYXAuX3BvcHVwICYmIG1hcC5fcG9wdXAub3B0aW9ucy5hdXRvQ2xvc2UpIHtcclxuICBcdFx0XHRtYXAucmVtb3ZlTGF5ZXIobWFwLl9wb3B1cCk7XHJcbiAgXHRcdH1cclxuICBcdFx0bWFwLl9wb3B1cCA9IHRoaXM7XHJcblxyXG4gIFx0XHRyZXR1cm4gRGl2T3ZlcmxheS5wcm90b3R5cGUub3Blbk9uLmNhbGwodGhpcywgbWFwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0b25BZGQ6IGZ1bmN0aW9uIChtYXApIHtcclxuICBcdFx0RGl2T3ZlcmxheS5wcm90b3R5cGUub25BZGQuY2FsbCh0aGlzLCBtYXApO1xyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBNYXBcclxuICBcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBwb3B1cG9wZW46IFBvcHVwRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGlzIG9wZW5lZCBpbiB0aGUgbWFwXHJcbiAgXHRcdG1hcC5maXJlKCdwb3B1cG9wZW4nLCB7cG9wdXA6IHRoaXN9KTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLl9zb3VyY2UpIHtcclxuICBcdFx0XHQvLyBAbmFtZXNwYWNlIExheWVyXHJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdFx0Ly8gQGV2ZW50IHBvcHVwb3BlbjogUG9wdXBFdmVudFxyXG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gYSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGlzIG9wZW5lZFxyXG4gIFx0XHRcdHRoaXMuX3NvdXJjZS5maXJlKCdwb3B1cG9wZW4nLCB7cG9wdXA6IHRoaXN9LCB0cnVlKTtcclxuICBcdFx0XHQvLyBGb3Igbm9uLXBhdGggbGF5ZXJzLCB3ZSB0b2dnbGUgdGhlIHBvcHVwIHdoZW4gY2xpY2tpbmdcclxuICBcdFx0XHQvLyBhZ2FpbiB0aGUgbGF5ZXIsIHNvIHByZXZlbnQgdGhlIG1hcCB0byByZW9wZW4gaXQuXHJcbiAgXHRcdFx0aWYgKCEodGhpcy5fc291cmNlIGluc3RhbmNlb2YgUGF0aCkpIHtcclxuICBcdFx0XHRcdHRoaXMuX3NvdXJjZS5vbigncHJlY2xpY2snLCBzdG9wUHJvcGFnYXRpb24pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRvblJlbW92ZTogZnVuY3Rpb24gKG1hcCkge1xyXG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vblJlbW92ZS5jYWxsKHRoaXMsIG1hcCk7XHJcblxyXG4gIFx0XHQvLyBAbmFtZXNwYWNlIE1hcFxyXG4gIFx0XHQvLyBAc2VjdGlvbiBQb3B1cCBldmVudHNcclxuICBcdFx0Ly8gQGV2ZW50IHBvcHVwY2xvc2U6IFBvcHVwRXZlbnRcclxuICBcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGluIHRoZSBtYXAgaXMgY2xvc2VkXHJcbiAgXHRcdG1hcC5maXJlKCdwb3B1cGNsb3NlJywge3BvcHVwOiB0aGlzfSk7XHJcblxyXG4gIFx0XHRpZiAodGhpcy5fc291cmNlKSB7XHJcbiAgXHRcdFx0Ly8gQG5hbWVzcGFjZSBMYXllclxyXG4gIFx0XHRcdC8vIEBzZWN0aW9uIFBvcHVwIGV2ZW50c1xyXG4gIFx0XHRcdC8vIEBldmVudCBwb3B1cGNsb3NlOiBQb3B1cEV2ZW50XHJcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIHBvcHVwIGJvdW5kIHRvIHRoaXMgbGF5ZXIgaXMgY2xvc2VkXHJcbiAgXHRcdFx0dGhpcy5fc291cmNlLmZpcmUoJ3BvcHVwY2xvc2UnLCB7cG9wdXA6IHRoaXN9LCB0cnVlKTtcclxuICBcdFx0XHRpZiAoISh0aGlzLl9zb3VyY2UgaW5zdGFuY2VvZiBQYXRoKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5fc291cmNlLm9mZigncHJlY2xpY2snLCBzdG9wUHJvcGFnYXRpb24pO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG4gIFx0fSxcclxuXHJcbiAgXHRnZXRFdmVudHM6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGV2ZW50cyA9IERpdk92ZXJsYXkucHJvdG90eXBlLmdldEV2ZW50cy5jYWxsKHRoaXMpO1xyXG5cclxuICBcdFx0aWYgKHRoaXMub3B0aW9ucy5jbG9zZU9uQ2xpY2sgIT09IHVuZGVmaW5lZCA/IHRoaXMub3B0aW9ucy5jbG9zZU9uQ2xpY2sgOiB0aGlzLl9tYXAub3B0aW9ucy5jbG9zZVBvcHVwT25DbGljaykge1xyXG4gIFx0XHRcdGV2ZW50cy5wcmVjbGljayA9IHRoaXMuY2xvc2U7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMua2VlcEluVmlldykge1xyXG4gIFx0XHRcdGV2ZW50cy5tb3ZlZW5kID0gdGhpcy5fYWRqdXN0UGFuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gZXZlbnRzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfaW5pdExheW91dDogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgcHJlZml4ID0gJ2xlYWZsZXQtcG9wdXAnLFxyXG4gIFx0XHQgICAgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsXHJcbiAgXHRcdFx0cHJlZml4ICsgJyAnICsgKHRoaXMub3B0aW9ucy5jbGFzc05hbWUgfHwgJycpICtcclxuICBcdFx0XHQnIGxlYWZsZXQtem9vbS1hbmltYXRlZCcpO1xyXG5cclxuICBcdFx0dmFyIHdyYXBwZXIgPSB0aGlzLl93cmFwcGVyID0gY3JlYXRlJDEoJ2RpdicsIHByZWZpeCArICctY29udGVudC13cmFwcGVyJywgY29udGFpbmVyKTtcclxuICBcdFx0dGhpcy5fY29udGVudE5vZGUgPSBjcmVhdGUkMSgnZGl2JywgcHJlZml4ICsgJy1jb250ZW50Jywgd3JhcHBlcik7XHJcblxyXG4gIFx0XHRkaXNhYmxlQ2xpY2tQcm9wYWdhdGlvbihjb250YWluZXIpO1xyXG4gIFx0XHRkaXNhYmxlU2Nyb2xsUHJvcGFnYXRpb24odGhpcy5fY29udGVudE5vZGUpO1xyXG4gIFx0XHRvbihjb250YWluZXIsICdjb250ZXh0bWVudScsIHN0b3BQcm9wYWdhdGlvbik7XHJcblxyXG4gIFx0XHR0aGlzLl90aXBDb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgcHJlZml4ICsgJy10aXAtY29udGFpbmVyJywgY29udGFpbmVyKTtcclxuICBcdFx0dGhpcy5fdGlwID0gY3JlYXRlJDEoJ2RpdicsIHByZWZpeCArICctdGlwJywgdGhpcy5fdGlwQ29udGFpbmVyKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY2xvc2VCdXR0b24pIHtcclxuICBcdFx0XHR2YXIgY2xvc2VCdXR0b24gPSB0aGlzLl9jbG9zZUJ1dHRvbiA9IGNyZWF0ZSQxKCdhJywgcHJlZml4ICsgJy1jbG9zZS1idXR0b24nLCBjb250YWluZXIpO1xyXG4gIFx0XHRcdGNsb3NlQnV0dG9uLnNldEF0dHJpYnV0ZSgncm9sZScsICdidXR0b24nKTsgLy8gb3ZlcnJpZGVzIHRoZSBpbXBsaWNpdCByb2xlPWxpbmsgb2YgPGE+IGVsZW1lbnRzICM3Mzk5XHJcbiAgXHRcdFx0Y2xvc2VCdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgJ0Nsb3NlIHBvcHVwJyk7XHJcbiAgXHRcdFx0Y2xvc2VCdXR0b24uaHJlZiA9ICcjY2xvc2UnO1xyXG4gIFx0XHRcdGNsb3NlQnV0dG9uLmlubmVySFRNTCA9ICc8c3BhbiBhcmlhLWhpZGRlbj1cInRydWVcIj4mIzIxNTs8L3NwYW4+JztcclxuXHJcbiAgXHRcdFx0b24oY2xvc2VCdXR0b24sICdjbGljaycsIGZ1bmN0aW9uIChldikge1xyXG4gIFx0XHRcdFx0cHJldmVudERlZmF1bHQoZXYpO1xyXG4gIFx0XHRcdFx0dGhpcy5jbG9zZSgpO1xyXG4gIFx0XHRcdH0sIHRoaXMpO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF91cGRhdGVMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX2NvbnRlbnROb2RlLFxyXG4gIFx0XHQgICAgc3R5bGUgPSBjb250YWluZXIuc3R5bGU7XHJcblxyXG4gIFx0XHRzdHlsZS53aWR0aCA9ICcnO1xyXG4gIFx0XHRzdHlsZS53aGl0ZVNwYWNlID0gJ25vd3JhcCc7XHJcblxyXG4gIFx0XHR2YXIgd2lkdGggPSBjb250YWluZXIub2Zmc2V0V2lkdGg7XHJcbiAgXHRcdHdpZHRoID0gTWF0aC5taW4od2lkdGgsIHRoaXMub3B0aW9ucy5tYXhXaWR0aCk7XHJcbiAgXHRcdHdpZHRoID0gTWF0aC5tYXgod2lkdGgsIHRoaXMub3B0aW9ucy5taW5XaWR0aCk7XHJcblxyXG4gIFx0XHRzdHlsZS53aWR0aCA9ICh3aWR0aCArIDEpICsgJ3B4JztcclxuICBcdFx0c3R5bGUud2hpdGVTcGFjZSA9ICcnO1xyXG5cclxuICBcdFx0c3R5bGUuaGVpZ2h0ID0gJyc7XHJcblxyXG4gIFx0XHR2YXIgaGVpZ2h0ID0gY29udGFpbmVyLm9mZnNldEhlaWdodCxcclxuICBcdFx0ICAgIG1heEhlaWdodCA9IHRoaXMub3B0aW9ucy5tYXhIZWlnaHQsXHJcbiAgXHRcdCAgICBzY3JvbGxlZENsYXNzID0gJ2xlYWZsZXQtcG9wdXAtc2Nyb2xsZWQnO1xyXG5cclxuICBcdFx0aWYgKG1heEhlaWdodCAmJiBoZWlnaHQgPiBtYXhIZWlnaHQpIHtcclxuICBcdFx0XHRzdHlsZS5oZWlnaHQgPSBtYXhIZWlnaHQgKyAncHgnO1xyXG4gIFx0XHRcdGFkZENsYXNzKGNvbnRhaW5lciwgc2Nyb2xsZWRDbGFzcyk7XHJcbiAgXHRcdH0gZWxzZSB7XHJcbiAgXHRcdFx0cmVtb3ZlQ2xhc3MoY29udGFpbmVyLCBzY3JvbGxlZENsYXNzKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fY29udGFpbmVyV2lkdGggPSB0aGlzLl9jb250YWluZXIub2Zmc2V0V2lkdGg7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dmFyIHBvcyA9IHRoaXMuX21hcC5fbGF0TG5nVG9OZXdMYXllclBvaW50KHRoaXMuX2xhdGxuZywgZS56b29tLCBlLmNlbnRlciksXHJcbiAgXHRcdCAgICBhbmNob3IgPSB0aGlzLl9nZXRBbmNob3IoKTtcclxuICBcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCBwb3MuYWRkKGFuY2hvcikpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfYWRqdXN0UGFuOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmF1dG9QYW4pIHsgcmV0dXJuOyB9XHJcbiAgXHRcdGlmICh0aGlzLl9tYXAuX3BhbkFuaW0pIHsgdGhpcy5fbWFwLl9wYW5BbmltLnN0b3AoKTsgfVxyXG5cclxuICBcdFx0Ly8gV2UgY2FuIGVuZGxlc3NseSByZWN1cnNlIGlmIGtlZXBJblZpZXcgaXMgc2V0IGFuZCB0aGUgdmlldyByZXNldHMuXHJcbiAgXHRcdC8vIExldCdzIGd1YXJkIGFnYWluc3QgdGhhdCBieSBleGl0aW5nIGVhcmx5IGlmIHdlJ3JlIHJlc3BvbmRpbmcgdG8gb3VyIG93biBhdXRvcGFuLlxyXG4gIFx0XHRpZiAodGhpcy5fYXV0b3Bhbm5pbmcpIHtcclxuICBcdFx0XHR0aGlzLl9hdXRvcGFubmluZyA9IGZhbHNlO1xyXG4gIFx0XHRcdHJldHVybjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcclxuICBcdFx0ICAgIG1hcmdpbkJvdHRvbSA9IHBhcnNlSW50KGdldFN0eWxlKHRoaXMuX2NvbnRhaW5lciwgJ21hcmdpbkJvdHRvbScpLCAxMCkgfHwgMCxcclxuICBcdFx0ICAgIGNvbnRhaW5lckhlaWdodCA9IHRoaXMuX2NvbnRhaW5lci5vZmZzZXRIZWlnaHQgKyBtYXJnaW5Cb3R0b20sXHJcbiAgXHRcdCAgICBjb250YWluZXJXaWR0aCA9IHRoaXMuX2NvbnRhaW5lcldpZHRoLFxyXG4gIFx0XHQgICAgbGF5ZXJQb3MgPSBuZXcgUG9pbnQodGhpcy5fY29udGFpbmVyTGVmdCwgLWNvbnRhaW5lckhlaWdodCAtIHRoaXMuX2NvbnRhaW5lckJvdHRvbSk7XHJcblxyXG4gIFx0XHRsYXllclBvcy5fYWRkKGdldFBvc2l0aW9uKHRoaXMuX2NvbnRhaW5lcikpO1xyXG5cclxuICBcdFx0dmFyIGNvbnRhaW5lclBvcyA9IG1hcC5sYXllclBvaW50VG9Db250YWluZXJQb2ludChsYXllclBvcyksXHJcbiAgXHRcdCAgICBwYWRkaW5nID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmcpLFxyXG4gIFx0XHQgICAgcGFkZGluZ1RMID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmdUb3BMZWZ0IHx8IHBhZGRpbmcpLFxyXG4gIFx0XHQgICAgcGFkZGluZ0JSID0gdG9Qb2ludCh0aGlzLm9wdGlvbnMuYXV0b1BhblBhZGRpbmdCb3R0b21SaWdodCB8fCBwYWRkaW5nKSxcclxuICBcdFx0ICAgIHNpemUgPSBtYXAuZ2V0U2l6ZSgpLFxyXG4gIFx0XHQgICAgZHggPSAwLFxyXG4gIFx0XHQgICAgZHkgPSAwO1xyXG5cclxuICBcdFx0aWYgKGNvbnRhaW5lclBvcy54ICsgY29udGFpbmVyV2lkdGggKyBwYWRkaW5nQlIueCA+IHNpemUueCkgeyAvLyByaWdodFxyXG4gIFx0XHRcdGR4ID0gY29udGFpbmVyUG9zLnggKyBjb250YWluZXJXaWR0aCAtIHNpemUueCArIHBhZGRpbmdCUi54O1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChjb250YWluZXJQb3MueCAtIGR4IC0gcGFkZGluZ1RMLnggPCAwKSB7IC8vIGxlZnRcclxuICBcdFx0XHRkeCA9IGNvbnRhaW5lclBvcy54IC0gcGFkZGluZ1RMLng7XHJcbiAgXHRcdH1cclxuICBcdFx0aWYgKGNvbnRhaW5lclBvcy55ICsgY29udGFpbmVySGVpZ2h0ICsgcGFkZGluZ0JSLnkgPiBzaXplLnkpIHsgLy8gYm90dG9tXHJcbiAgXHRcdFx0ZHkgPSBjb250YWluZXJQb3MueSArIGNvbnRhaW5lckhlaWdodCAtIHNpemUueSArIHBhZGRpbmdCUi55O1xyXG4gIFx0XHR9XHJcbiAgXHRcdGlmIChjb250YWluZXJQb3MueSAtIGR5IC0gcGFkZGluZ1RMLnkgPCAwKSB7IC8vIHRvcFxyXG4gIFx0XHRcdGR5ID0gY29udGFpbmVyUG9zLnkgLSBwYWRkaW5nVEwueTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gQG5hbWVzcGFjZSBNYXBcclxuICBcdFx0Ly8gQHNlY3Rpb24gUG9wdXAgZXZlbnRzXHJcbiAgXHRcdC8vIEBldmVudCBhdXRvcGFuc3RhcnQ6IEV2ZW50XHJcbiAgXHRcdC8vIEZpcmVkIHdoZW4gdGhlIG1hcCBzdGFydHMgYXV0b3Bhbm5pbmcgd2hlbiBvcGVuaW5nIGEgcG9wdXAuXHJcbiAgXHRcdGlmIChkeCB8fCBkeSkge1xyXG4gIFx0XHRcdC8vIFRyYWNrIHRoYXQgd2UncmUgYXV0b3Bhbm5pbmcsIGFzIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSByZS1yYW4gb24gbW92ZWVuZFxyXG4gIFx0XHRcdGlmICh0aGlzLm9wdGlvbnMua2VlcEluVmlldykge1xyXG4gIFx0XHRcdFx0dGhpcy5fYXV0b3Bhbm5pbmcgPSB0cnVlO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0bWFwXHJcbiAgXHRcdFx0ICAgIC5maXJlKCdhdXRvcGFuc3RhcnQnKVxyXG4gIFx0XHRcdCAgICAucGFuQnkoW2R4LCBkeV0pO1xyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRBbmNob3I6IGZ1bmN0aW9uICgpIHtcclxuICBcdFx0Ly8gV2hlcmUgc2hvdWxkIHdlIGFuY2hvciB0aGUgcG9wdXAgb24gdGhlIHNvdXJjZSBsYXllcj9cclxuICBcdFx0cmV0dXJuIHRvUG9pbnQodGhpcy5fc291cmNlICYmIHRoaXMuX3NvdXJjZS5fZ2V0UG9wdXBBbmNob3IgPyB0aGlzLl9zb3VyY2UuX2dldFBvcHVwQW5jaG9yKCkgOiBbMCwgMF0pO1xyXG4gIFx0fVxyXG5cclxuICB9KTtcclxuXHJcbiAgLy8gQG5hbWVzcGFjZSBQb3B1cFxyXG4gIC8vIEBmYWN0b3J5IEwucG9wdXAob3B0aW9ucz86IFBvcHVwIG9wdGlvbnMsIHNvdXJjZT86IExheWVyKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIGBQb3B1cGAgb2JqZWN0IGdpdmVuIGFuIG9wdGlvbmFsIGBvcHRpb25zYCBvYmplY3QgdGhhdCBkZXNjcmliZXMgaXRzIGFwcGVhcmFuY2UgYW5kIGxvY2F0aW9uIGFuZCBhbiBvcHRpb25hbCBgc291cmNlYCBvYmplY3QgdGhhdCBpcyB1c2VkIHRvIHRhZyB0aGUgcG9wdXAgd2l0aCBhIHJlZmVyZW5jZSB0byB0aGUgTGF5ZXIgdG8gd2hpY2ggaXQgcmVmZXJzLlxyXG4gIC8vIEBhbHRlcm5hdGl2ZVxyXG4gIC8vIEBmYWN0b3J5IEwucG9wdXAobGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQb3B1cCBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIGBQb3B1cGAgb2JqZWN0IGdpdmVuIGBsYXRsbmdgIHdoZXJlIHRoZSBwb3B1cCB3aWxsIG9wZW4gYW5kIGFuIG9wdGlvbmFsIGBvcHRpb25zYCBvYmplY3QgdGhhdCBkZXNjcmliZXMgaXRzIGFwcGVhcmFuY2UgYW5kIGxvY2F0aW9uLlxyXG4gIHZhciBwb3B1cCA9IGZ1bmN0aW9uIChvcHRpb25zLCBzb3VyY2UpIHtcclxuICBcdHJldHVybiBuZXcgUG9wdXAob3B0aW9ucywgc291cmNlKTtcclxuICB9O1xyXG5cclxuXHJcbiAgLyogQG5hbWVzcGFjZSBNYXBcclxuICAgKiBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXHJcbiAgICogQG9wdGlvbiBjbG9zZVBvcHVwT25DbGljazogQm9vbGVhbiA9IHRydWVcclxuICAgKiBTZXQgaXQgdG8gYGZhbHNlYCBpZiB5b3UgZG9uJ3Qgd2FudCBwb3B1cHMgdG8gY2xvc2Ugd2hlbiB1c2VyIGNsaWNrcyB0aGUgbWFwLlxyXG4gICAqL1xyXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xyXG4gIFx0Y2xvc2VQb3B1cE9uQ2xpY2s6IHRydWVcclxuICB9KTtcclxuXHJcblxyXG4gIC8vIEBuYW1lc3BhY2UgTWFwXHJcbiAgLy8gQHNlY3Rpb24gTWV0aG9kcyBmb3IgTGF5ZXJzIGFuZCBDb250cm9sc1xyXG4gIE1hcC5pbmNsdWRlKHtcclxuICBcdC8vIEBtZXRob2Qgb3BlblBvcHVwKHBvcHVwOiBQb3B1cCk6IHRoaXNcclxuICBcdC8vIE9wZW5zIHRoZSBzcGVjaWZpZWQgcG9wdXAgd2hpbGUgY2xvc2luZyB0aGUgcHJldmlvdXNseSBvcGVuZWQgKHRvIG1ha2Ugc3VyZSBvbmx5IG9uZSBpcyBvcGVuZWQgYXQgb25lIHRpbWUgZm9yIHVzYWJpbGl0eSkuXHJcbiAgXHQvLyBAYWx0ZXJuYXRpdmVcclxuICBcdC8vIEBtZXRob2Qgb3BlblBvcHVwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudCwgbGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBQb3B1cCBvcHRpb25zKTogdGhpc1xyXG4gIFx0Ly8gQ3JlYXRlcyBhIHBvcHVwIHdpdGggdGhlIHNwZWNpZmllZCBjb250ZW50IGFuZCBvcHRpb25zIGFuZCBvcGVucyBpdCBpbiB0aGUgZ2l2ZW4gcG9pbnQgb24gYSBtYXAuXHJcbiAgXHRvcGVuUG9wdXA6IGZ1bmN0aW9uIChwb3B1cCwgbGF0bG5nLCBvcHRpb25zKSB7XHJcbiAgXHRcdHRoaXMuX2luaXRPdmVybGF5KFBvcHVwLCBwb3B1cCwgbGF0bG5nLCBvcHRpb25zKVxyXG4gIFx0XHQgIC5vcGVuT24odGhpcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBjbG9zZVBvcHVwKHBvcHVwPzogUG9wdXApOiB0aGlzXHJcbiAgXHQvLyBDbG9zZXMgdGhlIHBvcHVwIHByZXZpb3VzbHkgb3BlbmVkIHdpdGggW29wZW5Qb3B1cF0oI21hcC1vcGVucG9wdXApIChvciB0aGUgZ2l2ZW4gb25lKS5cclxuICBcdGNsb3NlUG9wdXA6IGZ1bmN0aW9uIChwb3B1cCkge1xyXG4gIFx0XHRwb3B1cCA9IGFyZ3VtZW50cy5sZW5ndGggPyBwb3B1cCA6IHRoaXMuX3BvcHVwO1xyXG4gIFx0XHRpZiAocG9wdXApIHtcclxuICBcdFx0XHRwb3B1cC5jbG9zZSgpO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuICAvKlxyXG4gICAqIEBuYW1lc3BhY2UgTGF5ZXJcclxuICAgKiBAc2VjdGlvbiBQb3B1cCBtZXRob2RzIGV4YW1wbGVcclxuICAgKlxyXG4gICAqIEFsbCBsYXllcnMgc2hhcmUgYSBzZXQgb2YgbWV0aG9kcyBjb252ZW5pZW50IGZvciBiaW5kaW5nIHBvcHVwcyB0byBpdC5cclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIGxheWVyID0gTC5Qb2x5Z29uKGxhdGxuZ3MpLmJpbmRQb3B1cCgnSGkgVGhlcmUhJykuYWRkVG8obWFwKTtcclxuICAgKiBsYXllci5vcGVuUG9wdXAoKTtcclxuICAgKiBsYXllci5jbG9zZVBvcHVwKCk7XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiBQb3B1cHMgd2lsbCBhbHNvIGJlIGF1dG9tYXRpY2FsbHkgb3BlbmVkIHdoZW4gdGhlIGxheWVyIGlzIGNsaWNrZWQgb24gYW5kIGNsb3NlZCB3aGVuIHRoZSBsYXllciBpcyByZW1vdmVkIGZyb20gdGhlIG1hcCBvciBhbm90aGVyIHBvcHVwIGlzIG9wZW5lZC5cclxuICAgKi9cclxuXHJcbiAgLy8gQHNlY3Rpb24gUG9wdXAgbWV0aG9kc1xyXG4gIExheWVyLmluY2x1ZGUoe1xyXG5cclxuICBcdC8vIEBtZXRob2QgYmluZFBvcHVwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudHxGdW5jdGlvbnxQb3B1cCwgb3B0aW9ucz86IFBvcHVwIG9wdGlvbnMpOiB0aGlzXHJcbiAgXHQvLyBCaW5kcyBhIHBvcHVwIHRvIHRoZSBsYXllciB3aXRoIHRoZSBwYXNzZWQgYGNvbnRlbnRgIGFuZCBzZXRzIHVwIHRoZVxyXG4gIFx0Ly8gbmVjZXNzYXJ5IGV2ZW50IGxpc3RlbmVycy4gSWYgYSBgRnVuY3Rpb25gIGlzIHBhc3NlZCBpdCB3aWxsIHJlY2VpdmVcclxuICBcdC8vIHRoZSBsYXllciBhcyB0aGUgZmlyc3QgYXJndW1lbnQgYW5kIHNob3VsZCByZXR1cm4gYSBgU3RyaW5nYCBvciBgSFRNTEVsZW1lbnRgLlxyXG4gIFx0YmluZFBvcHVwOiBmdW5jdGlvbiAoY29udGVudCwgb3B0aW9ucykge1xyXG4gIFx0XHR0aGlzLl9wb3B1cCA9IHRoaXMuX2luaXRPdmVybGF5KFBvcHVwLCB0aGlzLl9wb3B1cCwgY29udGVudCwgb3B0aW9ucyk7XHJcbiAgXHRcdGlmICghdGhpcy5fcG9wdXBIYW5kbGVyc0FkZGVkKSB7XHJcbiAgXHRcdFx0dGhpcy5vbih7XHJcbiAgXHRcdFx0XHRjbGljazogdGhpcy5fb3BlblBvcHVwLFxyXG4gIFx0XHRcdFx0a2V5cHJlc3M6IHRoaXMuX29uS2V5UHJlc3MsXHJcbiAgXHRcdFx0XHRyZW1vdmU6IHRoaXMuY2xvc2VQb3B1cCxcclxuICBcdFx0XHRcdG1vdmU6IHRoaXMuX21vdmVQb3B1cFxyXG4gIFx0XHRcdH0pO1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwSGFuZGxlcnNBZGRlZCA9IHRydWU7XHJcbiAgXHRcdH1cclxuXHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIHVuYmluZFBvcHVwKCk6IHRoaXNcclxuICBcdC8vIFJlbW92ZXMgdGhlIHBvcHVwIHByZXZpb3VzbHkgYm91bmQgd2l0aCBgYmluZFBvcHVwYC5cclxuICBcdHVuYmluZFBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMub2ZmKHtcclxuICBcdFx0XHRcdGNsaWNrOiB0aGlzLl9vcGVuUG9wdXAsXHJcbiAgXHRcdFx0XHRrZXlwcmVzczogdGhpcy5fb25LZXlQcmVzcyxcclxuICBcdFx0XHRcdHJlbW92ZTogdGhpcy5jbG9zZVBvcHVwLFxyXG4gIFx0XHRcdFx0bW92ZTogdGhpcy5fbW92ZVBvcHVwXHJcbiAgXHRcdFx0fSk7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXBIYW5kbGVyc0FkZGVkID0gZmFsc2U7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXAgPSBudWxsO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIG9wZW5Qb3B1cChsYXRsbmc/OiBMYXRMbmcpOiB0aGlzXHJcbiAgXHQvLyBPcGVucyB0aGUgYm91bmQgcG9wdXAgYXQgdGhlIHNwZWNpZmllZCBgbGF0bG5nYCBvciBhdCB0aGUgZGVmYXVsdCBwb3B1cCBhbmNob3IgaWYgbm8gYGxhdGxuZ2AgaXMgcGFzc2VkLlxyXG4gIFx0b3BlblBvcHVwOiBmdW5jdGlvbiAobGF0bG5nKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdGlmICghKHRoaXMgaW5zdGFuY2VvZiBGZWF0dXJlR3JvdXApKSB7XHJcbiAgXHRcdFx0XHR0aGlzLl9wb3B1cC5fc291cmNlID0gdGhpcztcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0aWYgKHRoaXMuX3BvcHVwLl9wcmVwYXJlT3BlbihsYXRsbmcgfHwgdGhpcy5fbGF0bG5nKSkge1xyXG4gIFx0XHRcdFx0Ly8gb3BlbiB0aGUgcG9wdXAgb24gdGhlIG1hcFxyXG4gIFx0XHRcdFx0dGhpcy5fcG9wdXAub3Blbk9uKHRoaXMuX21hcCk7XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHRcdHJldHVybiB0aGlzO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBAbWV0aG9kIGNsb3NlUG9wdXAoKTogdGhpc1xyXG4gIFx0Ly8gQ2xvc2VzIHRoZSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGlmIGl0IGlzIG9wZW4uXHJcbiAgXHRjbG9zZVBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwLmNsb3NlKCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgdG9nZ2xlUG9wdXAoKTogdGhpc1xyXG4gIFx0Ly8gT3BlbnMgb3IgY2xvc2VzIHRoZSBwb3B1cCBib3VuZCB0byB0aGlzIGxheWVyIGRlcGVuZGluZyBvbiBpdHMgY3VycmVudCBzdGF0ZS5cclxuICBcdHRvZ2dsZVBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdGlmICh0aGlzLl9wb3B1cCkge1xyXG4gIFx0XHRcdHRoaXMuX3BvcHVwLnRvZ2dsZSh0aGlzKTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBpc1BvcHVwT3BlbigpOiBib29sZWFuXHJcbiAgXHQvLyBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllciBpcyBjdXJyZW50bHkgb3Blbi5cclxuICBcdGlzUG9wdXBPcGVuOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiAodGhpcy5fcG9wdXAgPyB0aGlzLl9wb3B1cC5pc09wZW4oKSA6IGZhbHNlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRQb3B1cENvbnRlbnQoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fFBvcHVwKTogdGhpc1xyXG4gIFx0Ly8gU2V0cyB0aGUgY29udGVudCBvZiB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllci5cclxuICBcdHNldFBvcHVwQ29udGVudDogZnVuY3Rpb24gKGNvbnRlbnQpIHtcclxuICBcdFx0aWYgKHRoaXMuX3BvcHVwKSB7XHJcbiAgXHRcdFx0dGhpcy5fcG9wdXAuc2V0Q29udGVudChjb250ZW50KTtcclxuICBcdFx0fVxyXG4gIFx0XHRyZXR1cm4gdGhpcztcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRQb3B1cCgpOiBQb3B1cFxyXG4gIFx0Ly8gUmV0dXJucyB0aGUgcG9wdXAgYm91bmQgdG8gdGhpcyBsYXllci5cclxuICBcdGdldFBvcHVwOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHJldHVybiB0aGlzLl9wb3B1cDtcclxuICBcdH0sXHJcblxyXG4gIFx0X29wZW5Qb3B1cDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0aWYgKCF0aGlzLl9wb3B1cCB8fCAhdGhpcy5fbWFwKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcbiAgXHRcdC8vIHByZXZlbnQgbWFwIGNsaWNrXHJcbiAgXHRcdHN0b3AoZSk7XHJcblxyXG4gIFx0XHR2YXIgdGFyZ2V0ID0gZS5sYXllciB8fCBlLnRhcmdldDtcclxuICBcdFx0aWYgKHRoaXMuX3BvcHVwLl9zb3VyY2UgPT09IHRhcmdldCAmJiAhKHRhcmdldCBpbnN0YW5jZW9mIFBhdGgpKSB7XHJcbiAgXHRcdFx0Ly8gdHJlYXQgaXQgbGlrZSBhIG1hcmtlciBhbmQgZmlndXJlIG91dFxyXG4gIFx0XHRcdC8vIGlmIHdlIHNob3VsZCB0b2dnbGUgaXQgb3Blbi9jbG9zZWRcclxuICBcdFx0XHRpZiAodGhpcy5fbWFwLmhhc0xheWVyKHRoaXMuX3BvcHVwKSkge1xyXG4gIFx0XHRcdFx0dGhpcy5jbG9zZVBvcHVwKCk7XHJcbiAgXHRcdFx0fSBlbHNlIHtcclxuICBcdFx0XHRcdHRoaXMub3BlblBvcHVwKGUubGF0bG5nKTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcbiAgXHRcdHRoaXMuX3BvcHVwLl9zb3VyY2UgPSB0YXJnZXQ7XHJcbiAgXHRcdHRoaXMub3BlblBvcHVwKGUubGF0bG5nKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X21vdmVQb3B1cDogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0dGhpcy5fcG9wdXAuc2V0TGF0TG5nKGUubGF0bG5nKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uS2V5UHJlc3M6IGZ1bmN0aW9uIChlKSB7XHJcbiAgXHRcdGlmIChlLm9yaWdpbmFsRXZlbnQua2V5Q29kZSA9PT0gMTMpIHtcclxuICBcdFx0XHR0aGlzLl9vcGVuUG9wdXAoZSk7XHJcbiAgXHRcdH1cclxuICBcdH1cclxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgVG9vbHRpcFxuICAgKiBAaW5oZXJpdHMgRGl2T3ZlcmxheVxuICAgKiBAYWthIEwuVG9vbHRpcFxuICAgKiBVc2VkIHRvIGRpc3BsYXkgc21hbGwgdGV4dHMgb24gdG9wIG9mIG1hcCBsYXllcnMuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIElmIHlvdSB3YW50IHRvIGp1c3QgYmluZCBhIHRvb2x0aXAgdG8gbWFya2VyOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiBtYXJrZXIuYmluZFRvb2x0aXAoXCJteSB0b29sdGlwIHRleHRcIikub3BlblRvb2x0aXAoKTtcbiAgICogYGBgXG4gICAqIFBhdGggb3ZlcmxheXMgbGlrZSBwb2x5bGluZXMgYWxzbyBoYXZlIGEgYGJpbmRUb29sdGlwYCBtZXRob2QuXG4gICAqXG4gICAqIEEgdG9vbHRpcCBjYW4gYmUgYWxzbyBzdGFuZGFsb25lOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgdG9vbHRpcCA9IEwudG9vbHRpcCgpXG4gICAqIFx0LnNldExhdExuZyhsYXRsbmcpXG4gICAqIFx0LnNldENvbnRlbnQoJ0hlbGxvIHdvcmxkITxiciAvPlRoaXMgaXMgYSBuaWNlIHRvb2x0aXAuJylcbiAgICogXHQuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqIG9yXG4gICAqIGBgYGpzXG4gICAqIHZhciB0b29sdGlwID0gTC50b29sdGlwKGxhdGxuZywge2NvbnRlbnQ6ICdIZWxsbyB3b3JsZCE8YnIgLz5UaGlzIGlzIGEgbmljZSB0b29sdGlwLid9KVxuICAgKiBcdC5hZGRUbyhtYXApO1xuICAgKiBgYGBcbiAgICpcbiAgICpcbiAgICogTm90ZSBhYm91dCB0b29sdGlwIG9mZnNldC4gTGVhZmxldCB0YWtlcyB0d28gb3B0aW9ucyBpbiBjb25zaWRlcmF0aW9uXG4gICAqIGZvciBjb21wdXRpbmcgdG9vbHRpcCBvZmZzZXR0aW5nOlxuICAgKiAtIHRoZSBgb2Zmc2V0YCBUb29sdGlwIG9wdGlvbjogaXQgZGVmYXVsdHMgdG8gWzAsIDBdLCBhbmQgaXQncyBzcGVjaWZpYyB0byBvbmUgdG9vbHRpcC5cbiAgICogICBBZGQgYSBwb3NpdGl2ZSB4IG9mZnNldCB0byBtb3ZlIHRoZSB0b29sdGlwIHRvIHRoZSByaWdodCwgYW5kIGEgcG9zaXRpdmUgeSBvZmZzZXQgdG9cbiAgICogICBtb3ZlIGl0IHRvIHRoZSBib3R0b20uIE5lZ2F0aXZlcyB3aWxsIG1vdmUgdG8gdGhlIGxlZnQgYW5kIHRvcC5cbiAgICogLSB0aGUgYHRvb2x0aXBBbmNob3JgIEljb24gb3B0aW9uOiB0aGlzIHdpbGwgb25seSBiZSBjb25zaWRlcmVkIGZvciBNYXJrZXIuIFlvdVxuICAgKiAgIHNob3VsZCBhZGFwdCB0aGlzIHZhbHVlIGlmIHlvdSB1c2UgYSBjdXN0b20gaWNvbi5cbiAgICovXG5cblxuICAvLyBAbmFtZXNwYWNlIFRvb2x0aXBcbiAgdmFyIFRvb2x0aXAgPSBEaXZPdmVybGF5LmV4dGVuZCh7XG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBha2EgVG9vbHRpcCBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiBwYW5lOiBTdHJpbmcgPSAndG9vbHRpcFBhbmUnXG4gIFx0XHQvLyBgTWFwIHBhbmVgIHdoZXJlIHRoZSB0b29sdGlwIHdpbGwgYmUgYWRkZWQuXG4gIFx0XHRwYW5lOiAndG9vbHRpcFBhbmUnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG9mZnNldDogUG9pbnQgPSBQb2ludCgwLCAwKVxuICBcdFx0Ly8gT3B0aW9uYWwgb2Zmc2V0IG9mIHRoZSB0b29sdGlwIHBvc2l0aW9uLlxuICBcdFx0b2Zmc2V0OiBbMCwgMF0sXG5cbiAgXHRcdC8vIEBvcHRpb24gZGlyZWN0aW9uOiBTdHJpbmcgPSAnYXV0bydcbiAgXHRcdC8vIERpcmVjdGlvbiB3aGVyZSB0byBvcGVuIHRoZSB0b29sdGlwLiBQb3NzaWJsZSB2YWx1ZXMgYXJlOiBgcmlnaHRgLCBgbGVmdGAsXG4gIFx0XHQvLyBgdG9wYCwgYGJvdHRvbWAsIGBjZW50ZXJgLCBgYXV0b2AuXG4gIFx0XHQvLyBgYXV0b2Agd2lsbCBkeW5hbWljYWxseSBzd2l0Y2ggYmV0d2VlbiBgcmlnaHRgIGFuZCBgbGVmdGAgYWNjb3JkaW5nIHRvIHRoZSB0b29sdGlwXG4gIFx0XHQvLyBwb3NpdGlvbiBvbiB0aGUgbWFwLlxuICBcdFx0ZGlyZWN0aW9uOiAnYXV0bycsXG5cbiAgXHRcdC8vIEBvcHRpb24gcGVybWFuZW50OiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIFdoZXRoZXIgdG8gb3BlbiB0aGUgdG9vbHRpcCBwZXJtYW5lbnRseSBvciBvbmx5IG9uIG1vdXNlb3Zlci5cbiAgXHRcdHBlcm1hbmVudDogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gc3RpY2t5OiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIElmIHRydWUsIHRoZSB0b29sdGlwIHdpbGwgZm9sbG93IHRoZSBtb3VzZSBpbnN0ZWFkIG9mIGJlaW5nIGZpeGVkIGF0IHRoZSBmZWF0dXJlIGNlbnRlci5cbiAgXHRcdHN0aWNreTogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gb3BhY2l0eTogTnVtYmVyID0gMC45XG4gIFx0XHQvLyBUb29sdGlwIGNvbnRhaW5lciBvcGFjaXR5LlxuICBcdFx0b3BhY2l0eTogMC45XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vbkFkZC5jYWxsKHRoaXMsIG1hcCk7XG4gIFx0XHR0aGlzLnNldE9wYWNpdHkodGhpcy5vcHRpb25zLm9wYWNpdHkpO1xuXG4gIFx0XHQvLyBAbmFtZXNwYWNlIE1hcFxuICBcdFx0Ly8gQHNlY3Rpb24gVG9vbHRpcCBldmVudHNcbiAgXHRcdC8vIEBldmVudCB0b29sdGlwb3BlbjogVG9vbHRpcEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBpcyBvcGVuZWQgaW4gdGhlIG1hcC5cbiAgXHRcdG1hcC5maXJlKCd0b29sdGlwb3BlbicsIHt0b29sdGlwOiB0aGlzfSk7XG5cbiAgXHRcdGlmICh0aGlzLl9zb3VyY2UpIHtcbiAgXHRcdFx0dGhpcy5hZGRFdmVudFBhcmVudCh0aGlzLl9zb3VyY2UpO1xuXG4gIFx0XHRcdC8vIEBuYW1lc3BhY2UgTGF5ZXJcbiAgXHRcdFx0Ly8gQHNlY3Rpb24gVG9vbHRpcCBldmVudHNcbiAgXHRcdFx0Ly8gQGV2ZW50IHRvb2x0aXBvcGVuOiBUb29sdGlwRXZlbnRcbiAgXHRcdFx0Ly8gRmlyZWQgd2hlbiBhIHRvb2x0aXAgYm91bmQgdG8gdGhpcyBsYXllciBpcyBvcGVuZWQuXG4gIFx0XHRcdHRoaXMuX3NvdXJjZS5maXJlKCd0b29sdGlwb3BlbicsIHt0b29sdGlwOiB0aGlzfSwgdHJ1ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHREaXZPdmVybGF5LnByb3RvdHlwZS5vblJlbW92ZS5jYWxsKHRoaXMsIG1hcCk7XG5cbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwXG4gIFx0XHQvLyBAc2VjdGlvbiBUb29sdGlwIGV2ZW50c1xuICBcdFx0Ly8gQGV2ZW50IHRvb2x0aXBjbG9zZTogVG9vbHRpcEV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBpbiB0aGUgbWFwIGlzIGNsb3NlZC5cbiAgXHRcdG1hcC5maXJlKCd0b29sdGlwY2xvc2UnLCB7dG9vbHRpcDogdGhpc30pO1xuXG4gIFx0XHRpZiAodGhpcy5fc291cmNlKSB7XG4gIFx0XHRcdHRoaXMucmVtb3ZlRXZlbnRQYXJlbnQodGhpcy5fc291cmNlKTtcblxuICBcdFx0XHQvLyBAbmFtZXNwYWNlIExheWVyXG4gIFx0XHRcdC8vIEBzZWN0aW9uIFRvb2x0aXAgZXZlbnRzXG4gIFx0XHRcdC8vIEBldmVudCB0b29sdGlwY2xvc2U6IFRvb2x0aXBFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGlzIGNsb3NlZC5cbiAgXHRcdFx0dGhpcy5fc291cmNlLmZpcmUoJ3Rvb2x0aXBjbG9zZScsIHt0b29sdGlwOiB0aGlzfSwgdHJ1ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGV2ZW50cyA9IERpdk92ZXJsYXkucHJvdG90eXBlLmdldEV2ZW50cy5jYWxsKHRoaXMpO1xuXG4gIFx0XHRpZiAoIXRoaXMub3B0aW9ucy5wZXJtYW5lbnQpIHtcbiAgXHRcdFx0ZXZlbnRzLnByZWNsaWNrID0gdGhpcy5jbG9zZTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIGV2ZW50cztcbiAgXHR9LFxuXG4gIFx0X2luaXRMYXlvdXQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBwcmVmaXggPSAnbGVhZmxldC10b29sdGlwJyxcbiAgXHRcdCAgICBjbGFzc05hbWUgPSBwcmVmaXggKyAnICcgKyAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSB8fCAnJykgKyAnIGxlYWZsZXQtem9vbS0nICsgKHRoaXMuX3pvb21BbmltYXRlZCA/ICdhbmltYXRlZCcgOiAnaGlkZScpO1xuXG4gIFx0XHR0aGlzLl9jb250ZW50Tm9kZSA9IHRoaXMuX2NvbnRhaW5lciA9IGNyZWF0ZSQxKCdkaXYnLCBjbGFzc05hbWUpO1xuXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKCdyb2xlJywgJ3Rvb2x0aXAnKTtcbiAgXHRcdHRoaXMuX2NvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2lkJywgJ2xlYWZsZXQtdG9vbHRpcC0nICsgc3RhbXAodGhpcykpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlTGF5b3V0OiBmdW5jdGlvbiAoKSB7fSxcblxuICBcdF9hZGp1c3RQYW46IGZ1bmN0aW9uICgpIHt9LFxuXG4gIFx0X3NldFBvc2l0aW9uOiBmdW5jdGlvbiAocG9zKSB7XG4gIFx0XHR2YXIgc3ViWCwgc3ViWSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyLFxuICBcdFx0ICAgIGNlbnRlclBvaW50ID0gbWFwLmxhdExuZ1RvQ29udGFpbmVyUG9pbnQobWFwLmdldENlbnRlcigpKSxcbiAgXHRcdCAgICB0b29sdGlwUG9pbnQgPSBtYXAubGF5ZXJQb2ludFRvQ29udGFpbmVyUG9pbnQocG9zKSxcbiAgXHRcdCAgICBkaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uLFxuICBcdFx0ICAgIHRvb2x0aXBXaWR0aCA9IGNvbnRhaW5lci5vZmZzZXRXaWR0aCxcbiAgXHRcdCAgICB0b29sdGlwSGVpZ2h0ID0gY29udGFpbmVyLm9mZnNldEhlaWdodCxcbiAgXHRcdCAgICBvZmZzZXQgPSB0b1BvaW50KHRoaXMub3B0aW9ucy5vZmZzZXQpLFxuICBcdFx0ICAgIGFuY2hvciA9IHRoaXMuX2dldEFuY2hvcigpO1xuXG4gIFx0XHRpZiAoZGlyZWN0aW9uID09PSAndG9wJykge1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoIC8gMjtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQ7XG4gIFx0XHR9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ2JvdHRvbScpIHtcbiAgXHRcdFx0c3ViWCA9IHRvb2x0aXBXaWR0aCAvIDI7XG4gIFx0XHRcdHN1YlkgPSAwO1xuICBcdFx0fSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdjZW50ZXInKSB7XG4gIFx0XHRcdHN1YlggPSB0b29sdGlwV2lkdGggLyAyO1xuICBcdFx0XHRzdWJZID0gdG9vbHRpcEhlaWdodCAvIDI7XG4gIFx0XHR9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gJ3JpZ2h0Jykge1xuICBcdFx0XHRzdWJYID0gMDtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fSBlbHNlIGlmIChkaXJlY3Rpb24gPT09ICdsZWZ0Jykge1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoO1xuICBcdFx0XHRzdWJZID0gdG9vbHRpcEhlaWdodCAvIDI7XG4gIFx0XHR9IGVsc2UgaWYgKHRvb2x0aXBQb2ludC54IDwgY2VudGVyUG9pbnQueCkge1xuICBcdFx0XHRkaXJlY3Rpb24gPSAncmlnaHQnO1xuICBcdFx0XHRzdWJYID0gMDtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0ZGlyZWN0aW9uID0gJ2xlZnQnO1xuICBcdFx0XHRzdWJYID0gdG9vbHRpcFdpZHRoICsgKG9mZnNldC54ICsgYW5jaG9yLngpICogMjtcbiAgXHRcdFx0c3ViWSA9IHRvb2x0aXBIZWlnaHQgLyAyO1xuICBcdFx0fVxuXG4gIFx0XHRwb3MgPSBwb3Muc3VidHJhY3QodG9Qb2ludChzdWJYLCBzdWJZLCB0cnVlKSkuYWRkKG9mZnNldCkuYWRkKGFuY2hvcik7XG5cbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC1yaWdodCcpO1xuICBcdFx0cmVtb3ZlQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC10b29sdGlwLWxlZnQnKTtcbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC10b3AnKTtcbiAgXHRcdHJlbW92ZUNsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC1ib3R0b20nKTtcbiAgXHRcdGFkZENsYXNzKGNvbnRhaW5lciwgJ2xlYWZsZXQtdG9vbHRpcC0nICsgZGlyZWN0aW9uKTtcbiAgXHRcdHNldFBvc2l0aW9uKGNvbnRhaW5lciwgcG9zKTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZVBvc2l0aW9uOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgcG9zID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcpO1xuICBcdFx0dGhpcy5fc2V0UG9zaXRpb24ocG9zKTtcbiAgXHR9LFxuXG4gIFx0c2V0T3BhY2l0eTogZnVuY3Rpb24gKG9wYWNpdHkpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy5vcGFjaXR5ID0gb3BhY2l0eTtcblxuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcikge1xuICBcdFx0XHRzZXRPcGFjaXR5KHRoaXMuX2NvbnRhaW5lciwgb3BhY2l0eSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBwb3MgPSB0aGlzLl9tYXAuX2xhdExuZ1RvTmV3TGF5ZXJQb2ludCh0aGlzLl9sYXRsbmcsIGUuem9vbSwgZS5jZW50ZXIpO1xuICBcdFx0dGhpcy5fc2V0UG9zaXRpb24ocG9zKTtcbiAgXHR9LFxuXG4gIFx0X2dldEFuY2hvcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gV2hlcmUgc2hvdWxkIHdlIGFuY2hvciB0aGUgdG9vbHRpcCBvbiB0aGUgc291cmNlIGxheWVyP1xuICBcdFx0cmV0dXJuIHRvUG9pbnQodGhpcy5fc291cmNlICYmIHRoaXMuX3NvdXJjZS5fZ2V0VG9vbHRpcEFuY2hvciAmJiAhdGhpcy5vcHRpb25zLnN0aWNreSA/IHRoaXMuX3NvdXJjZS5fZ2V0VG9vbHRpcEFuY2hvcigpIDogWzAsIDBdKTtcbiAgXHR9XG5cbiAgfSk7XG5cbiAgLy8gQG5hbWVzcGFjZSBUb29sdGlwXG4gIC8vIEBmYWN0b3J5IEwudG9vbHRpcChvcHRpb25zPzogVG9vbHRpcCBvcHRpb25zLCBzb3VyY2U/OiBMYXllcilcbiAgLy8gSW5zdGFudGlhdGVzIGEgYFRvb2x0aXBgIG9iamVjdCBnaXZlbiBhbiBvcHRpb25hbCBgb3B0aW9uc2Agb2JqZWN0IHRoYXQgZGVzY3JpYmVzIGl0cyBhcHBlYXJhbmNlIGFuZCBsb2NhdGlvbiBhbmQgYW4gb3B0aW9uYWwgYHNvdXJjZWAgb2JqZWN0IHRoYXQgaXMgdXNlZCB0byB0YWcgdGhlIHRvb2x0aXAgd2l0aCBhIHJlZmVyZW5jZSB0byB0aGUgTGF5ZXIgdG8gd2hpY2ggaXQgcmVmZXJzLlxuICAvLyBAYWx0ZXJuYXRpdmVcbiAgLy8gQGZhY3RvcnkgTC50b29sdGlwKGxhdGxuZzogTGF0TG5nLCBvcHRpb25zPzogVG9vbHRpcCBvcHRpb25zKVxuICAvLyBJbnN0YW50aWF0ZXMgYSBgVG9vbHRpcGAgb2JqZWN0IGdpdmVuIGBsYXRsbmdgIHdoZXJlIHRoZSB0b29sdGlwIHdpbGwgb3BlbiBhbmQgYW4gb3B0aW9uYWwgYG9wdGlvbnNgIG9iamVjdCB0aGF0IGRlc2NyaWJlcyBpdHMgYXBwZWFyYW5jZSBhbmQgbG9jYXRpb24uXG4gIHZhciB0b29sdGlwID0gZnVuY3Rpb24gKG9wdGlvbnMsIHNvdXJjZSkge1xuICBcdHJldHVybiBuZXcgVG9vbHRpcChvcHRpb25zLCBzb3VyY2UpO1xuICB9O1xuXG4gIC8vIEBuYW1lc3BhY2UgTWFwXG4gIC8vIEBzZWN0aW9uIE1ldGhvZHMgZm9yIExheWVycyBhbmQgQ29udHJvbHNcbiAgTWFwLmluY2x1ZGUoe1xuXG4gIFx0Ly8gQG1ldGhvZCBvcGVuVG9vbHRpcCh0b29sdGlwOiBUb29sdGlwKTogdGhpc1xuICBcdC8vIE9wZW5zIHRoZSBzcGVjaWZpZWQgdG9vbHRpcC5cbiAgXHQvLyBAYWx0ZXJuYXRpdmVcbiAgXHQvLyBAbWV0aG9kIG9wZW5Ub29sdGlwKGNvbnRlbnQ6IFN0cmluZ3xIVE1MRWxlbWVudCwgbGF0bG5nOiBMYXRMbmcsIG9wdGlvbnM/OiBUb29sdGlwIG9wdGlvbnMpOiB0aGlzXG4gIFx0Ly8gQ3JlYXRlcyBhIHRvb2x0aXAgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbnRlbnQgYW5kIG9wdGlvbnMgYW5kIG9wZW4gaXQuXG4gIFx0b3BlblRvb2x0aXA6IGZ1bmN0aW9uICh0b29sdGlwLCBsYXRsbmcsIG9wdGlvbnMpIHtcbiAgXHRcdHRoaXMuX2luaXRPdmVybGF5KFRvb2x0aXAsIHRvb2x0aXAsIGxhdGxuZywgb3B0aW9ucylcbiAgXHRcdCAgLm9wZW5Pbih0aGlzKTtcblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgY2xvc2VUb29sdGlwKHRvb2x0aXA6IFRvb2x0aXApOiB0aGlzXG4gIFx0Ly8gQ2xvc2VzIHRoZSB0b29sdGlwIGdpdmVuIGFzIHBhcmFtZXRlci5cbiAgXHRjbG9zZVRvb2x0aXA6IGZ1bmN0aW9uICh0b29sdGlwKSB7XG4gIFx0XHR0b29sdGlwLmNsb3NlKCk7XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9XG5cbiAgfSk7XG5cbiAgLypcbiAgICogQG5hbWVzcGFjZSBMYXllclxuICAgKiBAc2VjdGlvbiBUb29sdGlwIG1ldGhvZHMgZXhhbXBsZVxuICAgKlxuICAgKiBBbGwgbGF5ZXJzIHNoYXJlIGEgc2V0IG9mIG1ldGhvZHMgY29udmVuaWVudCBmb3IgYmluZGluZyB0b29sdGlwcyB0byBpdC5cbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIGxheWVyID0gTC5Qb2x5Z29uKGxhdGxuZ3MpLmJpbmRUb29sdGlwKCdIaSBUaGVyZSEnKS5hZGRUbyhtYXApO1xuICAgKiBsYXllci5vcGVuVG9vbHRpcCgpO1xuICAgKiBsYXllci5jbG9zZVRvb2x0aXAoKTtcbiAgICogYGBgXG4gICAqL1xuXG4gIC8vIEBzZWN0aW9uIFRvb2x0aXAgbWV0aG9kc1xuICBMYXllci5pbmNsdWRlKHtcblxuICBcdC8vIEBtZXRob2QgYmluZFRvb2x0aXAoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fEZ1bmN0aW9ufFRvb2x0aXAsIG9wdGlvbnM/OiBUb29sdGlwIG9wdGlvbnMpOiB0aGlzXG4gIFx0Ly8gQmluZHMgYSB0b29sdGlwIHRvIHRoZSBsYXllciB3aXRoIHRoZSBwYXNzZWQgYGNvbnRlbnRgIGFuZCBzZXRzIHVwIHRoZVxuICBcdC8vIG5lY2Vzc2FyeSBldmVudCBsaXN0ZW5lcnMuIElmIGEgYEZ1bmN0aW9uYCBpcyBwYXNzZWQgaXQgd2lsbCByZWNlaXZlXG4gIFx0Ly8gdGhlIGxheWVyIGFzIHRoZSBmaXJzdCBhcmd1bWVudCBhbmQgc2hvdWxkIHJldHVybiBhIGBTdHJpbmdgIG9yIGBIVE1MRWxlbWVudGAuXG4gIFx0YmluZFRvb2x0aXA6IGZ1bmN0aW9uIChjb250ZW50LCBvcHRpb25zKSB7XG5cbiAgXHRcdGlmICh0aGlzLl90b29sdGlwICYmIHRoaXMuaXNUb29sdGlwT3BlbigpKSB7XG4gIFx0XHRcdHRoaXMudW5iaW5kVG9vbHRpcCgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl90b29sdGlwID0gdGhpcy5faW5pdE92ZXJsYXkoVG9vbHRpcCwgdGhpcy5fdG9vbHRpcCwgY29udGVudCwgb3B0aW9ucyk7XG4gIFx0XHR0aGlzLl9pbml0VG9vbHRpcEludGVyYWN0aW9ucygpO1xuXG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnBlcm1hbmVudCAmJiB0aGlzLl9tYXAgJiYgdGhpcy5fbWFwLmhhc0xheWVyKHRoaXMpKSB7XG4gIFx0XHRcdHRoaXMub3BlblRvb2x0aXAoKTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgdW5iaW5kVG9vbHRpcCgpOiB0aGlzXG4gIFx0Ly8gUmVtb3ZlcyB0aGUgdG9vbHRpcCBwcmV2aW91c2x5IGJvdW5kIHdpdGggYGJpbmRUb29sdGlwYC5cbiAgXHR1bmJpbmRUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHR0aGlzLl9pbml0VG9vbHRpcEludGVyYWN0aW9ucyh0cnVlKTtcbiAgXHRcdFx0dGhpcy5jbG9zZVRvb2x0aXAoKTtcbiAgXHRcdFx0dGhpcy5fdG9vbHRpcCA9IG51bGw7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0X2luaXRUb29sdGlwSW50ZXJhY3Rpb25zOiBmdW5jdGlvbiAocmVtb3ZlKSB7XG4gIFx0XHRpZiAoIXJlbW92ZSAmJiB0aGlzLl90b29sdGlwSGFuZGxlcnNBZGRlZCkgeyByZXR1cm47IH1cbiAgXHRcdHZhciBvbk9mZiA9IHJlbW92ZSA/ICdvZmYnIDogJ29uJyxcbiAgXHRcdCAgICBldmVudHMgPSB7XG4gIFx0XHRcdHJlbW92ZTogdGhpcy5jbG9zZVRvb2x0aXAsXG4gIFx0XHRcdG1vdmU6IHRoaXMuX21vdmVUb29sdGlwXG4gIFx0XHQgICAgfTtcbiAgXHRcdGlmICghdGhpcy5fdG9vbHRpcC5vcHRpb25zLnBlcm1hbmVudCkge1xuICBcdFx0XHRldmVudHMubW91c2VvdmVyID0gdGhpcy5fb3BlblRvb2x0aXA7XG4gIFx0XHRcdGV2ZW50cy5tb3VzZW91dCA9IHRoaXMuY2xvc2VUb29sdGlwO1xuICBcdFx0XHRldmVudHMuY2xpY2sgPSB0aGlzLl9vcGVuVG9vbHRpcDtcbiAgXHRcdFx0aWYgKHRoaXMuX21hcCkge1xuICBcdFx0XHRcdHRoaXMuX2FkZEZvY3VzTGlzdGVuZXJzKCk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0ZXZlbnRzLmFkZCA9IHRoaXMuX2FkZEZvY3VzTGlzdGVuZXJzO1xuICBcdFx0XHR9XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRldmVudHMuYWRkID0gdGhpcy5fb3BlblRvb2x0aXA7XG4gIFx0XHR9XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnN0aWNreSkge1xuICBcdFx0XHRldmVudHMubW91c2Vtb3ZlID0gdGhpcy5fbW92ZVRvb2x0aXA7XG4gIFx0XHR9XG4gIFx0XHR0aGlzW29uT2ZmXShldmVudHMpO1xuICBcdFx0dGhpcy5fdG9vbHRpcEhhbmRsZXJzQWRkZWQgPSAhcmVtb3ZlO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIG9wZW5Ub29sdGlwKGxhdGxuZz86IExhdExuZyk6IHRoaXNcbiAgXHQvLyBPcGVucyB0aGUgYm91bmQgdG9vbHRpcCBhdCB0aGUgc3BlY2lmaWVkIGBsYXRsbmdgIG9yIGF0IHRoZSBkZWZhdWx0IHRvb2x0aXAgYW5jaG9yIGlmIG5vIGBsYXRsbmdgIGlzIHBhc3NlZC5cbiAgXHRvcGVuVG9vbHRpcDogZnVuY3Rpb24gKGxhdGxuZykge1xuICBcdFx0aWYgKHRoaXMuX3Rvb2x0aXApIHtcbiAgXHRcdFx0aWYgKCEodGhpcyBpbnN0YW5jZW9mIEZlYXR1cmVHcm91cCkpIHtcbiAgXHRcdFx0XHR0aGlzLl90b29sdGlwLl9zb3VyY2UgPSB0aGlzO1xuICBcdFx0XHR9XG4gIFx0XHRcdGlmICh0aGlzLl90b29sdGlwLl9wcmVwYXJlT3BlbihsYXRsbmcpKSB7XG4gIFx0XHRcdFx0Ly8gb3BlbiB0aGUgdG9vbHRpcCBvbiB0aGUgbWFwXG4gIFx0XHRcdFx0dGhpcy5fdG9vbHRpcC5vcGVuT24odGhpcy5fbWFwKTtcblxuICBcdFx0XHRcdGlmICh0aGlzLmdldEVsZW1lbnQpIHtcbiAgXHRcdFx0XHRcdHRoaXMuX3NldEFyaWFEZXNjcmliZWRCeU9uTGF5ZXIodGhpcyk7XG4gIFx0XHRcdFx0fSBlbHNlIGlmICh0aGlzLmVhY2hMYXllcikge1xuICBcdFx0XHRcdFx0dGhpcy5lYWNoTGF5ZXIodGhpcy5fc2V0QXJpYURlc2NyaWJlZEJ5T25MYXllciwgdGhpcyk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBjbG9zZVRvb2x0aXAoKTogdGhpc1xuICBcdC8vIENsb3NlcyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGlmIGl0IGlzIG9wZW4uXG4gIFx0Y2xvc2VUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHRyZXR1cm4gdGhpcy5fdG9vbHRpcC5jbG9zZSgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIHRvZ2dsZVRvb2x0aXAoKTogdGhpc1xuICBcdC8vIE9wZW5zIG9yIGNsb3NlcyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyIGRlcGVuZGluZyBvbiBpdHMgY3VycmVudCBzdGF0ZS5cbiAgXHR0b2dnbGVUb29sdGlwOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fdG9vbHRpcCkge1xuICBcdFx0XHR0aGlzLl90b29sdGlwLnRvZ2dsZSh0aGlzKTtcbiAgXHRcdH1cbiAgXHRcdHJldHVybiB0aGlzO1xuICBcdH0sXG5cbiAgXHQvLyBAbWV0aG9kIGlzVG9vbHRpcE9wZW4oKTogYm9vbGVhblxuICBcdC8vIFJldHVybnMgYHRydWVgIGlmIHRoZSB0b29sdGlwIGJvdW5kIHRvIHRoaXMgbGF5ZXIgaXMgY3VycmVudGx5IG9wZW4uXG4gIFx0aXNUb29sdGlwT3BlbjogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX3Rvb2x0aXAuaXNPcGVuKCk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0VG9vbHRpcENvbnRlbnQoY29udGVudDogU3RyaW5nfEhUTUxFbGVtZW50fFRvb2x0aXApOiB0aGlzXG4gIFx0Ly8gU2V0cyB0aGUgY29udGVudCBvZiB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyLlxuICBcdHNldFRvb2x0aXBDb250ZW50OiBmdW5jdGlvbiAoY29udGVudCkge1xuICBcdFx0aWYgKHRoaXMuX3Rvb2x0aXApIHtcbiAgXHRcdFx0dGhpcy5fdG9vbHRpcC5zZXRDb250ZW50KGNvbnRlbnQpO1xuICBcdFx0fVxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgZ2V0VG9vbHRpcCgpOiBUb29sdGlwXG4gIFx0Ly8gUmV0dXJucyB0aGUgdG9vbHRpcCBib3VuZCB0byB0aGlzIGxheWVyLlxuICBcdGdldFRvb2x0aXA6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl90b29sdGlwO1xuICBcdH0sXG5cbiAgXHRfYWRkRm9jdXNMaXN0ZW5lcnM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLmdldEVsZW1lbnQpIHtcbiAgXHRcdFx0dGhpcy5fYWRkRm9jdXNMaXN0ZW5lcnNPbkxheWVyKHRoaXMpO1xuICBcdFx0fSBlbHNlIGlmICh0aGlzLmVhY2hMYXllcikge1xuICBcdFx0XHR0aGlzLmVhY2hMYXllcih0aGlzLl9hZGRGb2N1c0xpc3RlbmVyc09uTGF5ZXIsIHRoaXMpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfYWRkRm9jdXNMaXN0ZW5lcnNPbkxheWVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBlbCA9IGxheWVyLmdldEVsZW1lbnQoKTtcbiAgXHRcdGlmIChlbCkge1xuICBcdFx0XHRvbihlbCwgJ2ZvY3VzJywgZnVuY3Rpb24gKCkge1xuICBcdFx0XHRcdHRoaXMuX3Rvb2x0aXAuX3NvdXJjZSA9IGxheWVyO1xuICBcdFx0XHRcdHRoaXMub3BlblRvb2x0aXAoKTtcbiAgXHRcdFx0fSwgdGhpcyk7XG4gIFx0XHRcdG9uKGVsLCAnYmx1cicsIHRoaXMuY2xvc2VUb29sdGlwLCB0aGlzKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldEFyaWFEZXNjcmliZWRCeU9uTGF5ZXI6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIGVsID0gbGF5ZXIuZ2V0RWxlbWVudCgpO1xuICBcdFx0aWYgKGVsKSB7XG4gIFx0XHRcdGVsLnNldEF0dHJpYnV0ZSgnYXJpYS1kZXNjcmliZWRieScsIHRoaXMuX3Rvb2x0aXAuX2NvbnRhaW5lci5pZCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuXG4gIFx0X29wZW5Ub29sdGlwOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0aWYgKCF0aGlzLl90b29sdGlwIHx8ICF0aGlzLl9tYXAgfHwgKHRoaXMuX21hcC5kcmFnZ2luZyAmJiB0aGlzLl9tYXAuZHJhZ2dpbmcubW92aW5nKCkpKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3Rvb2x0aXAuX3NvdXJjZSA9IGUubGF5ZXIgfHwgZS50YXJnZXQ7XG5cbiAgXHRcdHRoaXMub3BlblRvb2x0aXAodGhpcy5fdG9vbHRpcC5vcHRpb25zLnN0aWNreSA/IGUubGF0bG5nIDogdW5kZWZpbmVkKTtcbiAgXHR9LFxuXG4gIFx0X21vdmVUb29sdGlwOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIGxhdGxuZyA9IGUubGF0bG5nLCBjb250YWluZXJQb2ludCwgbGF5ZXJQb2ludDtcbiAgXHRcdGlmICh0aGlzLl90b29sdGlwLm9wdGlvbnMuc3RpY2t5ICYmIGUub3JpZ2luYWxFdmVudCkge1xuICBcdFx0XHRjb250YWluZXJQb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlLm9yaWdpbmFsRXZlbnQpO1xuICBcdFx0XHRsYXllclBvaW50ID0gdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KGNvbnRhaW5lclBvaW50KTtcbiAgXHRcdFx0bGF0bG5nID0gdGhpcy5fbWFwLmxheWVyUG9pbnRUb0xhdExuZyhsYXllclBvaW50KTtcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3Rvb2x0aXAuc2V0TGF0TG5nKGxhdGxuZyk7XG4gIFx0fVxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgRGl2SWNvblxuICAgKiBAYWthIEwuRGl2SWNvblxuICAgKiBAaW5oZXJpdHMgSWNvblxuICAgKlxuICAgKiBSZXByZXNlbnRzIGEgbGlnaHR3ZWlnaHQgaWNvbiBmb3IgbWFya2VycyB0aGF0IHVzZXMgYSBzaW1wbGUgYDxkaXY+YFxuICAgKiBlbGVtZW50IGluc3RlYWQgb2YgYW4gaW1hZ2UuIEluaGVyaXRzIGZyb20gYEljb25gIGJ1dCBpZ25vcmVzIHRoZSBgaWNvblVybGAgYW5kIHNoYWRvdyBvcHRpb25zLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGBqc1xuICAgKiB2YXIgbXlJY29uID0gTC5kaXZJY29uKHtjbGFzc05hbWU6ICdteS1kaXYtaWNvbid9KTtcbiAgICogLy8geW91IGNhbiBzZXQgLm15LWRpdi1pY29uIHN0eWxlcyBpbiBDU1NcbiAgICpcbiAgICogTC5tYXJrZXIoWzUwLjUwNSwgMzAuNTddLCB7aWNvbjogbXlJY29ufSkuYWRkVG8obWFwKTtcbiAgICogYGBgXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGl0IGhhcyBhICdsZWFmbGV0LWRpdi1pY29uJyBDU1MgY2xhc3MgYW5kIGlzIHN0eWxlZCBhcyBhIGxpdHRsZSB3aGl0ZSBzcXVhcmUgd2l0aCBhIHNoYWRvdy5cbiAgICovXG5cbiAgdmFyIERpdkljb24gPSBJY29uLmV4dGVuZCh7XG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQHNlY3Rpb25cbiAgXHRcdC8vIEBha2EgRGl2SWNvbiBvcHRpb25zXG4gIFx0XHRpY29uU2l6ZTogWzEyLCAxMl0sIC8vIGFsc28gY2FuIGJlIHNldCB0aHJvdWdoIENTU1xuXG4gIFx0XHQvLyBpY29uQW5jaG9yOiAoUG9pbnQpLFxuICBcdFx0Ly8gcG9wdXBBbmNob3I6IChQb2ludCksXG5cbiAgXHRcdC8vIEBvcHRpb24gaHRtbDogU3RyaW5nfEhUTUxFbGVtZW50ID0gJydcbiAgXHRcdC8vIEN1c3RvbSBIVE1MIGNvZGUgdG8gcHV0IGluc2lkZSB0aGUgZGl2IGVsZW1lbnQsIGVtcHR5IGJ5IGRlZmF1bHQuIEFsdGVybmF0aXZlbHksXG4gIFx0XHQvLyBhbiBpbnN0YW5jZSBvZiBgSFRNTEVsZW1lbnRgLlxuICBcdFx0aHRtbDogZmFsc2UsXG5cbiAgXHRcdC8vIEBvcHRpb24gYmdQb3M6IFBvaW50ID0gWzAsIDBdXG4gIFx0XHQvLyBPcHRpb25hbCByZWxhdGl2ZSBwb3NpdGlvbiBvZiB0aGUgYmFja2dyb3VuZCwgaW4gcGl4ZWxzXG4gIFx0XHRiZ1BvczogbnVsbCxcblxuICBcdFx0Y2xhc3NOYW1lOiAnbGVhZmxldC1kaXYtaWNvbidcbiAgXHR9LFxuXG4gIFx0Y3JlYXRlSWNvbjogZnVuY3Rpb24gKG9sZEljb24pIHtcbiAgXHRcdHZhciBkaXYgPSAob2xkSWNvbiAmJiBvbGRJY29uLnRhZ05hbWUgPT09ICdESVYnKSA/IG9sZEljb24gOiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKSxcbiAgXHRcdCAgICBvcHRpb25zID0gdGhpcy5vcHRpb25zO1xuXG4gIFx0XHRpZiAob3B0aW9ucy5odG1sIGluc3RhbmNlb2YgRWxlbWVudCkge1xuICBcdFx0XHRlbXB0eShkaXYpO1xuICBcdFx0XHRkaXYuYXBwZW5kQ2hpbGQob3B0aW9ucy5odG1sKTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdGRpdi5pbm5lckhUTUwgPSBvcHRpb25zLmh0bWwgIT09IGZhbHNlID8gb3B0aW9ucy5odG1sIDogJyc7XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChvcHRpb25zLmJnUG9zKSB7XG4gIFx0XHRcdHZhciBiZ1BvcyA9IHRvUG9pbnQob3B0aW9ucy5iZ1Bvcyk7XG4gIFx0XHRcdGRpdi5zdHlsZS5iYWNrZ3JvdW5kUG9zaXRpb24gPSAoLWJnUG9zLngpICsgJ3B4ICcgKyAoLWJnUG9zLnkpICsgJ3B4JztcbiAgXHRcdH1cbiAgXHRcdHRoaXMuX3NldEljb25TdHlsZXMoZGl2LCAnaWNvbicpO1xuXG4gIFx0XHRyZXR1cm4gZGl2O1xuICBcdH0sXG5cbiAgXHRjcmVhdGVTaGFkb3c6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiBudWxsO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQGZhY3RvcnkgTC5kaXZJY29uKG9wdGlvbnM6IERpdkljb24gb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIGBEaXZJY29uYCBpbnN0YW5jZSB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBkaXZJY29uKG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IERpdkljb24ob3B0aW9ucyk7XG4gIH1cblxuICBJY29uLkRlZmF1bHQgPSBJY29uRGVmYXVsdDtcblxuICAvKlxuICAgKiBAY2xhc3MgR3JpZExheWVyXG4gICAqIEBpbmhlcml0cyBMYXllclxuICAgKiBAYWthIEwuR3JpZExheWVyXG4gICAqXG4gICAqIEdlbmVyaWMgY2xhc3MgZm9yIGhhbmRsaW5nIGEgdGlsZWQgZ3JpZCBvZiBIVE1MIGVsZW1lbnRzLiBUaGlzIGlzIHRoZSBiYXNlIGNsYXNzIGZvciBhbGwgdGlsZSBsYXllcnMgYW5kIHJlcGxhY2VzIGBUaWxlTGF5ZXIuQ2FudmFzYC5cbiAgICogR3JpZExheWVyIGNhbiBiZSBleHRlbmRlZCB0byBjcmVhdGUgYSB0aWxlZCBncmlkIG9mIEhUTUwgZWxlbWVudHMgbGlrZSBgPGNhbnZhcz5gLCBgPGltZz5gIG9yIGA8ZGl2PmAuIEdyaWRMYXllciB3aWxsIGhhbmRsZSBjcmVhdGluZyBhbmQgYW5pbWF0aW5nIHRoZXNlIERPTSBlbGVtZW50cyBmb3IgeW91LlxuICAgKlxuICAgKlxuICAgKiBAc2VjdGlvbiBTeW5jaHJvbm91cyB1c2FnZVxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBUbyBjcmVhdGUgYSBjdXN0b20gbGF5ZXIsIGV4dGVuZCBHcmlkTGF5ZXIgYW5kIGltcGxlbWVudCB0aGUgYGNyZWF0ZVRpbGUoKWAgbWV0aG9kLCB3aGljaCB3aWxsIGJlIHBhc3NlZCBhIGBQb2ludGAgb2JqZWN0IHdpdGggdGhlIGB4YCwgYHlgLCBhbmQgYHpgICh6b29tIGxldmVsKSBjb29yZGluYXRlcyB0byBkcmF3IHlvdXIgdGlsZS5cbiAgICpcbiAgICogYGBganNcbiAgICogdmFyIENhbnZhc0xheWVyID0gTC5HcmlkTGF5ZXIuZXh0ZW5kKHtcbiAgICogICAgIGNyZWF0ZVRpbGU6IGZ1bmN0aW9uKGNvb3Jkcyl7XG4gICAqICAgICAgICAgLy8gY3JlYXRlIGEgPGNhbnZhcz4gZWxlbWVudCBmb3IgZHJhd2luZ1xuICAgKiAgICAgICAgIHZhciB0aWxlID0gTC5Eb21VdGlsLmNyZWF0ZSgnY2FudmFzJywgJ2xlYWZsZXQtdGlsZScpO1xuICAgKlxuICAgKiAgICAgICAgIC8vIHNldHVwIHRpbGUgd2lkdGggYW5kIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIG9wdGlvbnNcbiAgICogICAgICAgICB2YXIgc2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgICogICAgICAgICB0aWxlLndpZHRoID0gc2l6ZS54O1xuICAgKiAgICAgICAgIHRpbGUuaGVpZ2h0ID0gc2l6ZS55O1xuICAgKlxuICAgKiAgICAgICAgIC8vIGdldCBhIGNhbnZhcyBjb250ZXh0IGFuZCBkcmF3IHNvbWV0aGluZyBvbiBpdCB1c2luZyBjb29yZHMueCwgY29vcmRzLnkgYW5kIGNvb3Jkcy56XG4gICAqICAgICAgICAgdmFyIGN0eCA9IHRpbGUuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICpcbiAgICogICAgICAgICAvLyByZXR1cm4gdGhlIHRpbGUgc28gaXQgY2FuIGJlIHJlbmRlcmVkIG9uIHNjcmVlblxuICAgKiAgICAgICAgIHJldHVybiB0aWxlO1xuICAgKiAgICAgfVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIEBzZWN0aW9uIEFzeW5jaHJvbm91cyB1c2FnZVxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBUaWxlIGNyZWF0aW9uIGNhbiBhbHNvIGJlIGFzeW5jaHJvbm91cywgdGhpcyBpcyB1c2VmdWwgd2hlbiB1c2luZyBhIHRoaXJkLXBhcnR5IGRyYXdpbmcgbGlicmFyeS4gT25jZSB0aGUgdGlsZSBpcyBmaW5pc2hlZCBkcmF3aW5nIGl0IGNhbiBiZSBwYXNzZWQgdG8gdGhlIGBkb25lKClgIGNhbGxiYWNrLlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgQ2FudmFzTGF5ZXIgPSBMLkdyaWRMYXllci5leHRlbmQoe1xuICAgKiAgICAgY3JlYXRlVGlsZTogZnVuY3Rpb24oY29vcmRzLCBkb25lKXtcbiAgICogICAgICAgICB2YXIgZXJyb3I7XG4gICAqXG4gICAqICAgICAgICAgLy8gY3JlYXRlIGEgPGNhbnZhcz4gZWxlbWVudCBmb3IgZHJhd2luZ1xuICAgKiAgICAgICAgIHZhciB0aWxlID0gTC5Eb21VdGlsLmNyZWF0ZSgnY2FudmFzJywgJ2xlYWZsZXQtdGlsZScpO1xuICAgKlxuICAgKiAgICAgICAgIC8vIHNldHVwIHRpbGUgd2lkdGggYW5kIGhlaWdodCBhY2NvcmRpbmcgdG8gdGhlIG9wdGlvbnNcbiAgICogICAgICAgICB2YXIgc2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgICogICAgICAgICB0aWxlLndpZHRoID0gc2l6ZS54O1xuICAgKiAgICAgICAgIHRpbGUuaGVpZ2h0ID0gc2l6ZS55O1xuICAgKlxuICAgKiAgICAgICAgIC8vIGRyYXcgc29tZXRoaW5nIGFzeW5jaHJvbm91c2x5IGFuZCBwYXNzIHRoZSB0aWxlIHRvIHRoZSBkb25lKCkgY2FsbGJhY2tcbiAgICogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgKiAgICAgICAgICAgICBkb25lKGVycm9yLCB0aWxlKTtcbiAgICogICAgICAgICB9LCAxMDAwKTtcbiAgICpcbiAgICogICAgICAgICByZXR1cm4gdGlsZTtcbiAgICogICAgIH1cbiAgICogfSk7XG4gICAqIGBgYFxuICAgKlxuICAgKiBAc2VjdGlvblxuICAgKi9cblxuXG4gIHZhciBHcmlkTGF5ZXIgPSBMYXllci5leHRlbmQoe1xuXG4gIFx0Ly8gQHNlY3Rpb25cbiAgXHQvLyBAYWthIEdyaWRMYXllciBvcHRpb25zXG4gIFx0b3B0aW9uczoge1xuICBcdFx0Ly8gQG9wdGlvbiB0aWxlU2l6ZTogTnVtYmVyfFBvaW50ID0gMjU2XG4gIFx0XHQvLyBXaWR0aCBhbmQgaGVpZ2h0IG9mIHRpbGVzIGluIHRoZSBncmlkLiBVc2UgYSBudW1iZXIgaWYgd2lkdGggYW5kIGhlaWdodCBhcmUgZXF1YWwsIG9yIGBMLnBvaW50KHdpZHRoLCBoZWlnaHQpYCBvdGhlcndpc2UuXG4gIFx0XHR0aWxlU2l6ZTogMjU2LFxuXG4gIFx0XHQvLyBAb3B0aW9uIG9wYWNpdHk6IE51bWJlciA9IDEuMFxuICBcdFx0Ly8gT3BhY2l0eSBvZiB0aGUgdGlsZXMuIENhbiBiZSB1c2VkIGluIHRoZSBgY3JlYXRlVGlsZSgpYCBmdW5jdGlvbi5cbiAgXHRcdG9wYWNpdHk6IDEsXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlbklkbGU6IEJvb2xlYW4gPSAoZGVwZW5kcylcbiAgXHRcdC8vIExvYWQgbmV3IHRpbGVzIG9ubHkgd2hlbiBwYW5uaW5nIGVuZHMuXG4gIFx0XHQvLyBgdHJ1ZWAgYnkgZGVmYXVsdCBvbiBtb2JpbGUgYnJvd3NlcnMsIGluIG9yZGVyIHRvIGF2b2lkIHRvbyBtYW55IHJlcXVlc3RzIGFuZCBrZWVwIHNtb290aCBuYXZpZ2F0aW9uLlxuICBcdFx0Ly8gYGZhbHNlYCBvdGhlcndpc2UgaW4gb3JkZXIgdG8gZGlzcGxheSBuZXcgdGlsZXMgX2R1cmluZ18gcGFubmluZywgc2luY2UgaXQgaXMgZWFzeSB0byBwYW4gb3V0c2lkZSB0aGVcbiAgXHRcdC8vIFtga2VlcEJ1ZmZlcmBdKCNncmlkbGF5ZXIta2VlcGJ1ZmZlcikgb3B0aW9uIGluIGRlc2t0b3AgYnJvd3NlcnMuXG4gIFx0XHR1cGRhdGVXaGVuSWRsZTogQnJvd3Nlci5tb2JpbGUsXG5cbiAgXHRcdC8vIEBvcHRpb24gdXBkYXRlV2hlblpvb21pbmc6IEJvb2xlYW4gPSB0cnVlXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBhIHNtb290aCB6b29tIGFuaW1hdGlvbiAoZHVyaW5nIGEgW3RvdWNoIHpvb21dKCNtYXAtdG91Y2h6b29tKSBvciBhIFtgZmx5VG8oKWBdKCNtYXAtZmx5dG8pKSB3aWxsIHVwZGF0ZSBncmlkIGxheWVycyBldmVyeSBpbnRlZ2VyIHpvb20gbGV2ZWwuIFNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB3aWxsIHVwZGF0ZSB0aGUgZ3JpZCBsYXllciBvbmx5IHdoZW4gdGhlIHNtb290aCBhbmltYXRpb24gZW5kcy5cbiAgXHRcdHVwZGF0ZVdoZW5ab29taW5nOiB0cnVlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHVwZGF0ZUludGVydmFsOiBOdW1iZXIgPSAyMDBcbiAgXHRcdC8vIFRpbGVzIHdpbGwgbm90IHVwZGF0ZSBtb3JlIHRoYW4gb25jZSBldmVyeSBgdXBkYXRlSW50ZXJ2YWxgIG1pbGxpc2Vjb25kcyB3aGVuIHBhbm5pbmcuXG4gIFx0XHR1cGRhdGVJbnRlcnZhbDogMjAwLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHpJbmRleDogTnVtYmVyID0gMVxuICBcdFx0Ly8gVGhlIGV4cGxpY2l0IHpJbmRleCBvZiB0aGUgdGlsZSBsYXllci5cbiAgXHRcdHpJbmRleDogMSxcblxuICBcdFx0Ly8gQG9wdGlvbiBib3VuZHM6IExhdExuZ0JvdW5kcyA9IHVuZGVmaW5lZFxuICBcdFx0Ly8gSWYgc2V0LCB0aWxlcyB3aWxsIG9ubHkgYmUgbG9hZGVkIGluc2lkZSB0aGUgc2V0IGBMYXRMbmdCb3VuZHNgLlxuICBcdFx0Ym91bmRzOiBudWxsLFxuXG4gIFx0XHQvLyBAb3B0aW9uIG1pblpvb206IE51bWJlciA9IDBcbiAgXHRcdC8vIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgZG93biB0byB3aGljaCB0aGlzIGxheWVyIHdpbGwgYmUgZGlzcGxheWVkIChpbmNsdXNpdmUpLlxuICBcdFx0bWluWm9vbTogMCxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhab29tOiBOdW1iZXIgPSB1bmRlZmluZWRcbiAgXHRcdC8vIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdXAgdG8gd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIGRpc3BsYXllZCAoaW5jbHVzaXZlKS5cbiAgXHRcdG1heFpvb206IHVuZGVmaW5lZCxcblxuICBcdFx0Ly8gQG9wdGlvbiBtYXhOYXRpdmVab29tOiBOdW1iZXIgPSB1bmRlZmluZWRcbiAgXHRcdC8vIE1heGltdW0gem9vbSBudW1iZXIgdGhlIHRpbGUgc291cmNlIGhhcyBhdmFpbGFibGUuIElmIGl0IGlzIHNwZWNpZmllZCxcbiAgXHRcdC8vIHRoZSB0aWxlcyBvbiBhbGwgem9vbSBsZXZlbHMgaGlnaGVyIHRoYW4gYG1heE5hdGl2ZVpvb21gIHdpbGwgYmUgbG9hZGVkXG4gIFx0XHQvLyBmcm9tIGBtYXhOYXRpdmVab29tYCBsZXZlbCBhbmQgYXV0by1zY2FsZWQuXG4gIFx0XHRtYXhOYXRpdmVab29tOiB1bmRlZmluZWQsXG5cbiAgXHRcdC8vIEBvcHRpb24gbWluTmF0aXZlWm9vbTogTnVtYmVyID0gdW5kZWZpbmVkXG4gIFx0XHQvLyBNaW5pbXVtIHpvb20gbnVtYmVyIHRoZSB0aWxlIHNvdXJjZSBoYXMgYXZhaWxhYmxlLiBJZiBpdCBpcyBzcGVjaWZpZWQsXG4gIFx0XHQvLyB0aGUgdGlsZXMgb24gYWxsIHpvb20gbGV2ZWxzIGxvd2VyIHRoYW4gYG1pbk5hdGl2ZVpvb21gIHdpbGwgYmUgbG9hZGVkXG4gIFx0XHQvLyBmcm9tIGBtaW5OYXRpdmVab29tYCBsZXZlbCBhbmQgYXV0by1zY2FsZWQuXG4gIFx0XHRtaW5OYXRpdmVab29tOiB1bmRlZmluZWQsXG5cbiAgXHRcdC8vIEBvcHRpb24gbm9XcmFwOiBCb29sZWFuID0gZmFsc2VcbiAgXHRcdC8vIFdoZXRoZXIgdGhlIGxheWVyIGlzIHdyYXBwZWQgYXJvdW5kIHRoZSBhbnRpbWVyaWRpYW4uIElmIGB0cnVlYCwgdGhlXG4gIFx0XHQvLyBHcmlkTGF5ZXIgd2lsbCBvbmx5IGJlIGRpc3BsYXllZCBvbmNlIGF0IGxvdyB6b29tIGxldmVscy4gSGFzIG5vXG4gIFx0XHQvLyBlZmZlY3Qgd2hlbiB0aGUgW21hcCBDUlNdKCNtYXAtY3JzKSBkb2Vzbid0IHdyYXAgYXJvdW5kLiBDYW4gYmUgdXNlZFxuICBcdFx0Ly8gaW4gY29tYmluYXRpb24gd2l0aCBbYGJvdW5kc2BdKCNncmlkbGF5ZXItYm91bmRzKSB0byBwcmV2ZW50IHJlcXVlc3RpbmdcbiAgXHRcdC8vIHRpbGVzIG91dHNpZGUgdGhlIENSUyBsaW1pdHMuXG4gIFx0XHRub1dyYXA6IGZhbHNlLFxuXG4gIFx0XHQvLyBAb3B0aW9uIHBhbmU6IFN0cmluZyA9ICd0aWxlUGFuZSdcbiAgXHRcdC8vIGBNYXAgcGFuZWAgd2hlcmUgdGhlIGdyaWQgbGF5ZXIgd2lsbCBiZSBhZGRlZC5cbiAgXHRcdHBhbmU6ICd0aWxlUGFuZScsXG5cbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSAnJ1xuICBcdFx0Ly8gQSBjdXN0b20gY2xhc3MgbmFtZSB0byBhc3NpZ24gdG8gdGhlIHRpbGUgbGF5ZXIuIEVtcHR5IGJ5IGRlZmF1bHQuXG4gIFx0XHRjbGFzc05hbWU6ICcnLFxuXG4gIFx0XHQvLyBAb3B0aW9uIGtlZXBCdWZmZXI6IE51bWJlciA9IDJcbiAgXHRcdC8vIFdoZW4gcGFubmluZyB0aGUgbWFwLCBrZWVwIHRoaXMgbWFueSByb3dzIGFuZCBjb2x1bW5zIG9mIHRpbGVzIGJlZm9yZSB1bmxvYWRpbmcgdGhlbS5cbiAgXHRcdGtlZXBCdWZmZXI6IDJcbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgXHRcdHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XG4gIFx0fSxcblxuICBcdG9uQWRkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9pbml0Q29udGFpbmVyKCk7XG5cbiAgXHRcdHRoaXMuX2xldmVscyA9IHt9O1xuICBcdFx0dGhpcy5fdGlsZXMgPSB7fTtcblxuICBcdFx0dGhpcy5fcmVzZXRWaWV3KCk7IC8vIGltcGxpY2l0IF91cGRhdGUoKSBjYWxsXG4gIFx0fSxcblxuICBcdGJlZm9yZUFkZDogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0bWFwLl9hZGRab29tTGltaXQodGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAobWFwKSB7XG4gIFx0XHR0aGlzLl9yZW1vdmVBbGxUaWxlcygpO1xuICBcdFx0cmVtb3ZlKHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRtYXAuX3JlbW92ZVpvb21MaW1pdCh0aGlzKTtcbiAgXHRcdHRoaXMuX2NvbnRhaW5lciA9IG51bGw7XG4gIFx0XHR0aGlzLl90aWxlWm9vbSA9IHVuZGVmaW5lZDtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvRnJvbnQ6IHRoaXNcbiAgXHQvLyBCcmluZ3MgdGhlIHRpbGUgbGF5ZXIgdG8gdGhlIHRvcCBvZiBhbGwgdGlsZSBsYXllcnMuXG4gIFx0YnJpbmdUb0Zyb250OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRvRnJvbnQodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdFx0dGhpcy5fc2V0QXV0b1pJbmRleChNYXRoLm1heCk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBicmluZ1RvQmFjazogdGhpc1xuICBcdC8vIEJyaW5ncyB0aGUgdGlsZSBsYXllciB0byB0aGUgYm90dG9tIG9mIGFsbCB0aWxlIGxheWVycy5cbiAgXHRicmluZ1RvQmFjazogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX21hcCkge1xuICBcdFx0XHR0b0JhY2sodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdFx0dGhpcy5fc2V0QXV0b1pJbmRleChNYXRoLm1pbik7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBnZXRDb250YWluZXI6IEhUTUxFbGVtZW50XG4gIFx0Ly8gUmV0dXJucyB0aGUgSFRNTCBlbGVtZW50IHRoYXQgY29udGFpbnMgdGhlIHRpbGVzIGZvciB0aGlzIGxheWVyLlxuICBcdGdldENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcbiAgXHR9LFxuXG4gIFx0Ly8gQG1ldGhvZCBzZXRPcGFjaXR5KG9wYWNpdHk6IE51bWJlcik6IHRoaXNcbiAgXHQvLyBDaGFuZ2VzIHRoZSBbb3BhY2l0eV0oI2dyaWRsYXllci1vcGFjaXR5KSBvZiB0aGUgZ3JpZCBsYXllci5cbiAgXHRzZXRPcGFjaXR5OiBmdW5jdGlvbiAob3BhY2l0eSkge1xuICBcdFx0dGhpcy5vcHRpb25zLm9wYWNpdHkgPSBvcGFjaXR5O1xuICBcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0WkluZGV4KHpJbmRleDogTnVtYmVyKTogdGhpc1xuICBcdC8vIENoYW5nZXMgdGhlIFt6SW5kZXhdKCNncmlkbGF5ZXItemluZGV4KSBvZiB0aGUgZ3JpZCBsYXllci5cbiAgXHRzZXRaSW5kZXg6IGZ1bmN0aW9uICh6SW5kZXgpIHtcbiAgXHRcdHRoaXMub3B0aW9ucy56SW5kZXggPSB6SW5kZXg7XG4gIFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoKTtcblxuICBcdFx0cmV0dXJuIHRoaXM7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgaXNMb2FkaW5nOiBCb29sZWFuXG4gIFx0Ly8gUmV0dXJucyBgdHJ1ZWAgaWYgYW55IHRpbGUgaW4gdGhlIGdyaWQgbGF5ZXIgaGFzIG5vdCBmaW5pc2hlZCBsb2FkaW5nLlxuICBcdGlzTG9hZGluZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2xvYWRpbmc7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2QgcmVkcmF3OiB0aGlzXG4gIFx0Ly8gQ2F1c2VzIHRoZSBsYXllciB0byBjbGVhciBhbGwgdGhlIHRpbGVzIGFuZCByZXF1ZXN0IHRoZW0gYWdhaW4uXG4gIFx0cmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZUFsbFRpbGVzKCk7XG4gIFx0XHRcdHZhciB0aWxlWm9vbSA9IHRoaXMuX2NsYW1wWm9vbSh0aGlzLl9tYXAuZ2V0Wm9vbSgpKTtcbiAgXHRcdFx0aWYgKHRpbGVab29tICE9PSB0aGlzLl90aWxlWm9vbSkge1xuICBcdFx0XHRcdHRoaXMuX3RpbGVab29tID0gdGlsZVpvb207XG4gIFx0XHRcdFx0dGhpcy5fdXBkYXRlTGV2ZWxzKCk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0dGhpcy5fdXBkYXRlKCk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdGhpcztcbiAgXHR9LFxuXG4gIFx0Z2V0RXZlbnRzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgZXZlbnRzID0ge1xuICBcdFx0XHR2aWV3cHJlcmVzZXQ6IHRoaXMuX2ludmFsaWRhdGVBbGwsXG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXRWaWV3LFxuICBcdFx0XHR6b29tOiB0aGlzLl9yZXNldFZpZXcsXG4gIFx0XHRcdG1vdmVlbmQ6IHRoaXMuX29uTW92ZUVuZFxuICBcdFx0fTtcblxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMudXBkYXRlV2hlbklkbGUpIHtcbiAgXHRcdFx0Ly8gdXBkYXRlIHRpbGVzIG9uIG1vdmUsIGJ1dCBub3QgbW9yZSBvZnRlbiB0aGFuIG9uY2UgcGVyIGdpdmVuIGludGVydmFsXG4gIFx0XHRcdGlmICghdGhpcy5fb25Nb3ZlKSB7XG4gIFx0XHRcdFx0dGhpcy5fb25Nb3ZlID0gdGhyb3R0bGUodGhpcy5fb25Nb3ZlRW5kLCB0aGlzLm9wdGlvbnMudXBkYXRlSW50ZXJ2YWwsIHRoaXMpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0ZXZlbnRzLm1vdmUgPSB0aGlzLl9vbk1vdmU7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcbiAgXHRcdFx0ZXZlbnRzLnpvb21hbmltID0gdGhpcy5fYW5pbWF0ZVpvb207XG4gIFx0XHR9XG5cbiAgXHRcdHJldHVybiBldmVudHM7XG4gIFx0fSxcblxuICBcdC8vIEBzZWN0aW9uIEV4dGVuc2lvbiBtZXRob2RzXG4gIFx0Ly8gTGF5ZXJzIGV4dGVuZGluZyBgR3JpZExheWVyYCBzaGFsbCByZWltcGxlbWVudCB0aGUgZm9sbG93aW5nIG1ldGhvZC5cbiAgXHQvLyBAbWV0aG9kIGNyZWF0ZVRpbGUoY29vcmRzOiBPYmplY3QsIGRvbmU/OiBGdW5jdGlvbik6IEhUTUxFbGVtZW50XG4gIFx0Ly8gQ2FsbGVkIG9ubHkgaW50ZXJuYWxseSwgbXVzdCBiZSBvdmVycmlkZGVuIGJ5IGNsYXNzZXMgZXh0ZW5kaW5nIGBHcmlkTGF5ZXJgLlxuICBcdC8vIFJldHVybnMgdGhlIGBIVE1MRWxlbWVudGAgY29ycmVzcG9uZGluZyB0byB0aGUgZ2l2ZW4gYGNvb3Jkc2AuIElmIHRoZSBgZG9uZWAgY2FsbGJhY2tcbiAgXHQvLyBpcyBzcGVjaWZpZWQsIGl0IG11c3QgYmUgY2FsbGVkIHdoZW4gdGhlIHRpbGUgaGFzIGZpbmlzaGVkIGxvYWRpbmcgYW5kIGRyYXdpbmcuXG4gIFx0Y3JlYXRlVGlsZTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICBcdH0sXG5cbiAgXHQvLyBAc2VjdGlvblxuICBcdC8vIEBtZXRob2QgZ2V0VGlsZVNpemU6IFBvaW50XG4gIFx0Ly8gTm9ybWFsaXplcyB0aGUgW3RpbGVTaXplIG9wdGlvbl0oI2dyaWRsYXllci10aWxlc2l6ZSkgaW50byBhIHBvaW50LiBVc2VkIGJ5IHRoZSBgY3JlYXRlVGlsZSgpYCBtZXRob2QuXG4gIFx0Z2V0VGlsZVNpemU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBzID0gdGhpcy5vcHRpb25zLnRpbGVTaXplO1xuICBcdFx0cmV0dXJuIHMgaW5zdGFuY2VvZiBQb2ludCA/IHMgOiBuZXcgUG9pbnQocywgcyk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVaSW5kZXg6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9jb250YWluZXIgJiYgdGhpcy5vcHRpb25zLnpJbmRleCAhPT0gdW5kZWZpbmVkICYmIHRoaXMub3B0aW9ucy56SW5kZXggIT09IG51bGwpIHtcbiAgXHRcdFx0dGhpcy5fY29udGFpbmVyLnN0eWxlLnpJbmRleCA9IHRoaXMub3B0aW9ucy56SW5kZXg7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9zZXRBdXRvWkluZGV4OiBmdW5jdGlvbiAoY29tcGFyZSkge1xuICBcdFx0Ly8gZ28gdGhyb3VnaCBhbGwgb3RoZXIgbGF5ZXJzIG9mIHRoZSBzYW1lIHBhbmUsIHNldCB6SW5kZXggdG8gbWF4ICsgMSAoZnJvbnQpIG9yIG1pbiAtIDEgKGJhY2spXG5cbiAgXHRcdHZhciBsYXllcnMgPSB0aGlzLmdldFBhbmUoKS5jaGlsZHJlbixcbiAgXHRcdCAgICBlZGdlWkluZGV4ID0gLWNvbXBhcmUoLUluZmluaXR5LCBJbmZpbml0eSk7IC8vIC1JbmZpbml0eSBmb3IgbWF4LCBJbmZpbml0eSBmb3IgbWluXG5cbiAgXHRcdGZvciAodmFyIGkgPSAwLCBsZW4gPSBsYXllcnMubGVuZ3RoLCB6SW5kZXg7IGkgPCBsZW47IGkrKykge1xuXG4gIFx0XHRcdHpJbmRleCA9IGxheWVyc1tpXS5zdHlsZS56SW5kZXg7XG5cbiAgXHRcdFx0aWYgKGxheWVyc1tpXSAhPT0gdGhpcy5fY29udGFpbmVyICYmIHpJbmRleCkge1xuICBcdFx0XHRcdGVkZ2VaSW5kZXggPSBjb21wYXJlKGVkZ2VaSW5kZXgsICt6SW5kZXgpO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChpc0Zpbml0ZShlZGdlWkluZGV4KSkge1xuICBcdFx0XHR0aGlzLm9wdGlvbnMuekluZGV4ID0gZWRnZVpJbmRleCArIGNvbXBhcmUoLTEsIDEpO1xuICBcdFx0XHR0aGlzLl91cGRhdGVaSW5kZXgoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZU9wYWNpdHk6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fbWFwKSB7IHJldHVybjsgfVxuXG4gIFx0XHQvLyBJRSBkb2Vzbid0IGluaGVyaXQgZmlsdGVyIG9wYWNpdHkgcHJvcGVybHksIHNvIHdlJ3JlIGZvcmNlZCB0byBzZXQgaXQgb24gdGlsZXNcbiAgXHRcdGlmIChCcm93c2VyLmllbHQ5KSB7IHJldHVybjsgfVxuXG4gIFx0XHRzZXRPcGFjaXR5KHRoaXMuX2NvbnRhaW5lciwgdGhpcy5vcHRpb25zLm9wYWNpdHkpO1xuXG4gIFx0XHR2YXIgbm93ID0gK25ldyBEYXRlKCksXG4gIFx0XHQgICAgbmV4dEZyYW1lID0gZmFsc2UsXG4gIFx0XHQgICAgd2lsbFBydW5lID0gZmFsc2U7XG5cbiAgXHRcdGZvciAodmFyIGtleSBpbiB0aGlzLl90aWxlcykge1xuICBcdFx0XHR2YXIgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRcdGlmICghdGlsZS5jdXJyZW50IHx8ICF0aWxlLmxvYWRlZCkgeyBjb250aW51ZTsgfVxuXG4gIFx0XHRcdHZhciBmYWRlID0gTWF0aC5taW4oMSwgKG5vdyAtIHRpbGUubG9hZGVkKSAvIDIwMCk7XG5cbiAgXHRcdFx0c2V0T3BhY2l0eSh0aWxlLmVsLCBmYWRlKTtcbiAgXHRcdFx0aWYgKGZhZGUgPCAxKSB7XG4gIFx0XHRcdFx0bmV4dEZyYW1lID0gdHJ1ZTtcbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRpZiAodGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0XHRcdHdpbGxQcnVuZSA9IHRydWU7XG4gIFx0XHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRcdHRoaXMuX29uT3BhcXVlVGlsZSh0aWxlKTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdFx0dGlsZS5hY3RpdmUgPSB0cnVlO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmICh3aWxsUHJ1bmUgJiYgIXRoaXMuX25vUHJ1bmUpIHsgdGhpcy5fcHJ1bmVUaWxlcygpOyB9XG5cbiAgXHRcdGlmIChuZXh0RnJhbWUpIHtcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZhZGVGcmFtZSk7XG4gIFx0XHRcdHRoaXMuX2ZhZGVGcmFtZSA9IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fdXBkYXRlT3BhY2l0eSwgdGhpcyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbk9wYXF1ZVRpbGU6IGZhbHNlRm4sXG5cbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX2NvbnRhaW5lcikgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlJDEoJ2RpdicsICdsZWFmbGV0LWxheWVyICcgKyAodGhpcy5vcHRpb25zLmNsYXNzTmFtZSB8fCAnJykpO1xuICBcdFx0dGhpcy5fdXBkYXRlWkluZGV4KCk7XG5cbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMub3BhY2l0eSA8IDEpIHtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlT3BhY2l0eSgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlTGV2ZWxzOiBmdW5jdGlvbiAoKSB7XG5cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fdGlsZVpvb20sXG4gIFx0XHQgICAgbWF4Wm9vbSA9IHRoaXMub3B0aW9ucy5tYXhab29tO1xuXG4gIFx0XHRpZiAoem9vbSA9PT0gdW5kZWZpbmVkKSB7IHJldHVybiB1bmRlZmluZWQ7IH1cblxuICBcdFx0Zm9yICh2YXIgeiBpbiB0aGlzLl9sZXZlbHMpIHtcbiAgXHRcdFx0eiA9IE51bWJlcih6KTtcbiAgXHRcdFx0aWYgKHRoaXMuX2xldmVsc1t6XS5lbC5jaGlsZHJlbi5sZW5ndGggfHwgeiA9PT0gem9vbSkge1xuICBcdFx0XHRcdHRoaXMuX2xldmVsc1t6XS5lbC5zdHlsZS56SW5kZXggPSBtYXhab29tIC0gTWF0aC5hYnMoem9vbSAtIHopO1xuICBcdFx0XHRcdHRoaXMuX29uVXBkYXRlTGV2ZWwoeik7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cmVtb3ZlKHRoaXMuX2xldmVsc1t6XS5lbCk7XG4gIFx0XHRcdFx0dGhpcy5fcmVtb3ZlVGlsZXNBdFpvb20oeik7XG4gIFx0XHRcdFx0dGhpcy5fb25SZW1vdmVMZXZlbCh6KTtcbiAgXHRcdFx0XHRkZWxldGUgdGhpcy5fbGV2ZWxzW3pdO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBsZXZlbCA9IHRoaXMuX2xldmVsc1t6b29tXSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXA7XG5cbiAgXHRcdGlmICghbGV2ZWwpIHtcbiAgXHRcdFx0bGV2ZWwgPSB0aGlzLl9sZXZlbHNbem9vbV0gPSB7fTtcblxuICBcdFx0XHRsZXZlbC5lbCA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC10aWxlLWNvbnRhaW5lciBsZWFmbGV0LXpvb20tYW5pbWF0ZWQnLCB0aGlzLl9jb250YWluZXIpO1xuICBcdFx0XHRsZXZlbC5lbC5zdHlsZS56SW5kZXggPSBtYXhab29tO1xuXG4gIFx0XHRcdGxldmVsLm9yaWdpbiA9IG1hcC5wcm9qZWN0KG1hcC51bnByb2plY3QobWFwLmdldFBpeGVsT3JpZ2luKCkpLCB6b29tKS5yb3VuZCgpO1xuICBcdFx0XHRsZXZlbC56b29tID0gem9vbTtcblxuICBcdFx0XHR0aGlzLl9zZXRab29tVHJhbnNmb3JtKGxldmVsLCBtYXAuZ2V0Q2VudGVyKCksIG1hcC5nZXRab29tKCkpO1xuXG4gIFx0XHRcdC8vIGZvcmNlIHRoZSBicm93c2VyIHRvIGNvbnNpZGVyIHRoZSBuZXdseSBhZGRlZCBlbGVtZW50IGZvciB0cmFuc2l0aW9uXG4gIFx0XHRcdGZhbHNlRm4obGV2ZWwuZWwub2Zmc2V0V2lkdGgpO1xuXG4gIFx0XHRcdHRoaXMuX29uQ3JlYXRlTGV2ZWwobGV2ZWwpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9sZXZlbCA9IGxldmVsO1xuXG4gIFx0XHRyZXR1cm4gbGV2ZWw7XG4gIFx0fSxcblxuICBcdF9vblVwZGF0ZUxldmVsOiBmYWxzZUZuLFxuXG4gIFx0X29uUmVtb3ZlTGV2ZWw6IGZhbHNlRm4sXG5cbiAgXHRfb25DcmVhdGVMZXZlbDogZmFsc2VGbixcblxuICBcdF9wcnVuZVRpbGVzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCkge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBrZXksIHRpbGU7XG5cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fbWFwLmdldFpvb20oKTtcbiAgXHRcdGlmICh6b29tID4gdGhpcy5vcHRpb25zLm1heFpvb20gfHxcbiAgXHRcdFx0em9vbSA8IHRoaXMub3B0aW9ucy5taW5ab29tKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZUFsbFRpbGVzKCk7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0Zm9yIChrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRcdHRpbGUucmV0YWluID0gdGlsZS5jdXJyZW50O1xuICBcdFx0fVxuXG4gIFx0XHRmb3IgKGtleSBpbiB0aGlzLl90aWxlcykge1xuICBcdFx0XHR0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcbiAgXHRcdFx0aWYgKHRpbGUuY3VycmVudCAmJiAhdGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0XHR2YXIgY29vcmRzID0gdGlsZS5jb29yZHM7XG4gIFx0XHRcdFx0aWYgKCF0aGlzLl9yZXRhaW5QYXJlbnQoY29vcmRzLngsIGNvb3Jkcy55LCBjb29yZHMueiwgY29vcmRzLnogLSA1KSkge1xuICBcdFx0XHRcdFx0dGhpcy5fcmV0YWluQ2hpbGRyZW4oY29vcmRzLngsIGNvb3Jkcy55LCBjb29yZHMueiwgY29vcmRzLnogKyAyKTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0Zm9yIChrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0aWYgKCF0aGlzLl90aWxlc1trZXldLnJldGFpbikge1xuICBcdFx0XHRcdHRoaXMuX3JlbW92ZVRpbGUoa2V5KTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVtb3ZlVGlsZXNBdFpvb206IGZ1bmN0aW9uICh6b29tKSB7XG4gIFx0XHRmb3IgKHZhciBrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0aWYgKHRoaXMuX3RpbGVzW2tleV0uY29vcmRzLnogIT09IHpvb20pIHtcbiAgXHRcdFx0XHRjb250aW51ZTtcbiAgXHRcdFx0fVxuICBcdFx0XHR0aGlzLl9yZW1vdmVUaWxlKGtleSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZW1vdmVBbGxUaWxlczogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIga2V5IGluIHRoaXMuX3RpbGVzKSB7XG4gIFx0XHRcdHRoaXMuX3JlbW92ZVRpbGUoa2V5KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2ludmFsaWRhdGVBbGw6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGZvciAodmFyIHogaW4gdGhpcy5fbGV2ZWxzKSB7XG4gIFx0XHRcdHJlbW92ZSh0aGlzLl9sZXZlbHNbel0uZWwpO1xuICBcdFx0XHR0aGlzLl9vblJlbW92ZUxldmVsKE51bWJlcih6KSk7XG4gIFx0XHRcdGRlbGV0ZSB0aGlzLl9sZXZlbHNbel07XG4gIFx0XHR9XG4gIFx0XHR0aGlzLl9yZW1vdmVBbGxUaWxlcygpO1xuXG4gIFx0XHR0aGlzLl90aWxlWm9vbSA9IHVuZGVmaW5lZDtcbiAgXHR9LFxuXG4gIFx0X3JldGFpblBhcmVudDogZnVuY3Rpb24gKHgsIHksIHosIG1pblpvb20pIHtcbiAgXHRcdHZhciB4MiA9IE1hdGguZmxvb3IoeCAvIDIpLFxuICBcdFx0ICAgIHkyID0gTWF0aC5mbG9vcih5IC8gMiksXG4gIFx0XHQgICAgejIgPSB6IC0gMSxcbiAgXHRcdCAgICBjb29yZHMyID0gbmV3IFBvaW50KCt4MiwgK3kyKTtcbiAgXHRcdGNvb3JkczIueiA9ICt6MjtcblxuICBcdFx0dmFyIGtleSA9IHRoaXMuX3RpbGVDb29yZHNUb0tleShjb29yZHMyKSxcbiAgXHRcdCAgICB0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcblxuICBcdFx0aWYgKHRpbGUgJiYgdGlsZS5hY3RpdmUpIHtcbiAgXHRcdFx0dGlsZS5yZXRhaW4gPSB0cnVlO1xuICBcdFx0XHRyZXR1cm4gdHJ1ZTtcblxuICBcdFx0fSBlbHNlIGlmICh0aWxlICYmIHRpbGUubG9hZGVkKSB7XG4gIFx0XHRcdHRpbGUucmV0YWluID0gdHJ1ZTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHoyID4gbWluWm9vbSkge1xuICBcdFx0XHRyZXR1cm4gdGhpcy5fcmV0YWluUGFyZW50KHgyLCB5MiwgejIsIG1pblpvb20pO1xuICBcdFx0fVxuXG4gIFx0XHRyZXR1cm4gZmFsc2U7XG4gIFx0fSxcblxuICBcdF9yZXRhaW5DaGlsZHJlbjogZnVuY3Rpb24gKHgsIHksIHosIG1heFpvb20pIHtcblxuICBcdFx0Zm9yICh2YXIgaSA9IDIgKiB4OyBpIDwgMiAqIHggKyAyOyBpKyspIHtcbiAgXHRcdFx0Zm9yICh2YXIgaiA9IDIgKiB5OyBqIDwgMiAqIHkgKyAyOyBqKyspIHtcblxuICBcdFx0XHRcdHZhciBjb29yZHMgPSBuZXcgUG9pbnQoaSwgaik7XG4gIFx0XHRcdFx0Y29vcmRzLnogPSB6ICsgMTtcblxuICBcdFx0XHRcdHZhciBrZXkgPSB0aGlzLl90aWxlQ29vcmRzVG9LZXkoY29vcmRzKSxcbiAgXHRcdFx0XHQgICAgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG5cbiAgXHRcdFx0XHRpZiAodGlsZSAmJiB0aWxlLmFjdGl2ZSkge1xuICBcdFx0XHRcdFx0dGlsZS5yZXRhaW4gPSB0cnVlO1xuICBcdFx0XHRcdFx0Y29udGludWU7XG5cbiAgXHRcdFx0XHR9IGVsc2UgaWYgKHRpbGUgJiYgdGlsZS5sb2FkZWQpIHtcbiAgXHRcdFx0XHRcdHRpbGUucmV0YWluID0gdHJ1ZTtcbiAgXHRcdFx0XHR9XG5cbiAgXHRcdFx0XHRpZiAoeiArIDEgPCBtYXhab29tKSB7XG4gIFx0XHRcdFx0XHR0aGlzLl9yZXRhaW5DaGlsZHJlbihpLCBqLCB6ICsgMSwgbWF4Wm9vbSk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZXNldFZpZXc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgYW5pbWF0aW5nID0gZSAmJiAoZS5waW5jaCB8fCBlLmZseVRvKTtcbiAgXHRcdHRoaXMuX3NldFZpZXcodGhpcy5fbWFwLmdldENlbnRlcigpLCB0aGlzLl9tYXAuZ2V0Wm9vbSgpLCBhbmltYXRpbmcsIGFuaW1hdGluZyk7XG4gIFx0fSxcblxuICBcdF9hbmltYXRlWm9vbTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHRoaXMuX3NldFZpZXcoZS5jZW50ZXIsIGUuem9vbSwgdHJ1ZSwgZS5ub1VwZGF0ZSk7XG4gIFx0fSxcblxuICBcdF9jbGFtcFpvb206IGZ1bmN0aW9uICh6b29tKSB7XG4gIFx0XHR2YXIgb3B0aW9ucyA9IHRoaXMub3B0aW9ucztcblxuICBcdFx0aWYgKHVuZGVmaW5lZCAhPT0gb3B0aW9ucy5taW5OYXRpdmVab29tICYmIHpvb20gPCBvcHRpb25zLm1pbk5hdGl2ZVpvb20pIHtcbiAgXHRcdFx0cmV0dXJuIG9wdGlvbnMubWluTmF0aXZlWm9vbTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKHVuZGVmaW5lZCAhPT0gb3B0aW9ucy5tYXhOYXRpdmVab29tICYmIG9wdGlvbnMubWF4TmF0aXZlWm9vbSA8IHpvb20pIHtcbiAgXHRcdFx0cmV0dXJuIG9wdGlvbnMubWF4TmF0aXZlWm9vbTtcbiAgXHRcdH1cblxuICBcdFx0cmV0dXJuIHpvb207XG4gIFx0fSxcblxuICBcdF9zZXRWaWV3OiBmdW5jdGlvbiAoY2VudGVyLCB6b29tLCBub1BydW5lLCBub1VwZGF0ZSkge1xuICBcdFx0dmFyIHRpbGVab29tID0gTWF0aC5yb3VuZCh6b29tKTtcbiAgXHRcdGlmICgodGhpcy5vcHRpb25zLm1heFpvb20gIT09IHVuZGVmaW5lZCAmJiB0aWxlWm9vbSA+IHRoaXMub3B0aW9ucy5tYXhab29tKSB8fFxuICBcdFx0ICAgICh0aGlzLm9wdGlvbnMubWluWm9vbSAhPT0gdW5kZWZpbmVkICYmIHRpbGVab29tIDwgdGhpcy5vcHRpb25zLm1pblpvb20pKSB7XG4gIFx0XHRcdHRpbGVab29tID0gdW5kZWZpbmVkO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGlsZVpvb20gPSB0aGlzLl9jbGFtcFpvb20odGlsZVpvb20pO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgdGlsZVpvb21DaGFuZ2VkID0gdGhpcy5vcHRpb25zLnVwZGF0ZVdoZW5ab29taW5nICYmICh0aWxlWm9vbSAhPT0gdGhpcy5fdGlsZVpvb20pO1xuXG4gIFx0XHRpZiAoIW5vVXBkYXRlIHx8IHRpbGVab29tQ2hhbmdlZCkge1xuXG4gIFx0XHRcdHRoaXMuX3RpbGVab29tID0gdGlsZVpvb207XG5cbiAgXHRcdFx0aWYgKHRoaXMuX2Fib3J0TG9hZGluZykge1xuICBcdFx0XHRcdHRoaXMuX2Fib3J0TG9hZGluZygpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0dGhpcy5fdXBkYXRlTGV2ZWxzKCk7XG4gIFx0XHRcdHRoaXMuX3Jlc2V0R3JpZCgpO1xuXG4gIFx0XHRcdGlmICh0aWxlWm9vbSAhPT0gdW5kZWZpbmVkKSB7XG4gIFx0XHRcdFx0dGhpcy5fdXBkYXRlKGNlbnRlcik7XG4gIFx0XHRcdH1cblxuICBcdFx0XHRpZiAoIW5vUHJ1bmUpIHtcbiAgXHRcdFx0XHR0aGlzLl9wcnVuZVRpbGVzKCk7XG4gIFx0XHRcdH1cblxuICBcdFx0XHQvLyBGbGFnIHRvIHByZXZlbnQgX3VwZGF0ZU9wYWNpdHkgZnJvbSBwcnVuaW5nIHRpbGVzIGR1cmluZ1xuICBcdFx0XHQvLyBhIHpvb20gYW5pbSBvciBhIHBpbmNoIGdlc3R1cmVcbiAgXHRcdFx0dGhpcy5fbm9QcnVuZSA9ICEhbm9QcnVuZTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fc2V0Wm9vbVRyYW5zZm9ybXMoY2VudGVyLCB6b29tKTtcbiAgXHR9LFxuXG4gIFx0X3NldFpvb21UcmFuc2Zvcm1zOiBmdW5jdGlvbiAoY2VudGVyLCB6b29tKSB7XG4gIFx0XHRmb3IgKHZhciBpIGluIHRoaXMuX2xldmVscykge1xuICBcdFx0XHR0aGlzLl9zZXRab29tVHJhbnNmb3JtKHRoaXMuX2xldmVsc1tpXSwgY2VudGVyLCB6b29tKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldFpvb21UcmFuc2Zvcm06IGZ1bmN0aW9uIChsZXZlbCwgY2VudGVyLCB6b29tKSB7XG4gIFx0XHR2YXIgc2NhbGUgPSB0aGlzLl9tYXAuZ2V0Wm9vbVNjYWxlKHpvb20sIGxldmVsLnpvb20pLFxuICBcdFx0ICAgIHRyYW5zbGF0ZSA9IGxldmVsLm9yaWdpbi5tdWx0aXBseUJ5KHNjYWxlKVxuICBcdFx0ICAgICAgICAuc3VidHJhY3QodGhpcy5fbWFwLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pKS5yb3VuZCgpO1xuXG4gIFx0XHRpZiAoQnJvd3Nlci5hbnkzZCkge1xuICBcdFx0XHRzZXRUcmFuc2Zvcm0obGV2ZWwuZWwsIHRyYW5zbGF0ZSwgc2NhbGUpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0c2V0UG9zaXRpb24obGV2ZWwuZWwsIHRyYW5zbGF0ZSk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZXNldEdyaWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgY3JzID0gbWFwLm9wdGlvbnMuY3JzLFxuICBcdFx0ICAgIHRpbGVTaXplID0gdGhpcy5fdGlsZVNpemUgPSB0aGlzLmdldFRpbGVTaXplKCksXG4gIFx0XHQgICAgdGlsZVpvb20gPSB0aGlzLl90aWxlWm9vbTtcblxuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX21hcC5nZXRQaXhlbFdvcmxkQm91bmRzKHRoaXMuX3RpbGVab29tKTtcbiAgXHRcdGlmIChib3VuZHMpIHtcbiAgXHRcdFx0dGhpcy5fZ2xvYmFsVGlsZVJhbmdlID0gdGhpcy5fcHhCb3VuZHNUb1RpbGVSYW5nZShib3VuZHMpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl93cmFwWCA9IGNycy53cmFwTG5nICYmICF0aGlzLm9wdGlvbnMubm9XcmFwICYmIFtcbiAgXHRcdFx0TWF0aC5mbG9vcihtYXAucHJvamVjdChbMCwgY3JzLndyYXBMbmdbMF1dLCB0aWxlWm9vbSkueCAvIHRpbGVTaXplLngpLFxuICBcdFx0XHRNYXRoLmNlaWwobWFwLnByb2plY3QoWzAsIGNycy53cmFwTG5nWzFdXSwgdGlsZVpvb20pLnggLyB0aWxlU2l6ZS55KVxuICBcdFx0XTtcbiAgXHRcdHRoaXMuX3dyYXBZID0gY3JzLndyYXBMYXQgJiYgIXRoaXMub3B0aW9ucy5ub1dyYXAgJiYgW1xuICBcdFx0XHRNYXRoLmZsb29yKG1hcC5wcm9qZWN0KFtjcnMud3JhcExhdFswXSwgMF0sIHRpbGVab29tKS55IC8gdGlsZVNpemUueCksXG4gIFx0XHRcdE1hdGguY2VpbChtYXAucHJvamVjdChbY3JzLndyYXBMYXRbMV0sIDBdLCB0aWxlWm9vbSkueSAvIHRpbGVTaXplLnkpXG4gIFx0XHRdO1xuICBcdH0sXG5cbiAgXHRfb25Nb3ZlRW5kOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCB8fCB0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfZ2V0VGlsZWRQaXhlbEJvdW5kczogZnVuY3Rpb24gKGNlbnRlcikge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICBtYXBab29tID0gbWFwLl9hbmltYXRpbmdab29tID8gTWF0aC5tYXgobWFwLl9hbmltYXRlVG9ab29tLCBtYXAuZ2V0Wm9vbSgpKSA6IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgc2NhbGUgPSBtYXAuZ2V0Wm9vbVNjYWxlKG1hcFpvb20sIHRoaXMuX3RpbGVab29tKSxcbiAgXHRcdCAgICBwaXhlbENlbnRlciA9IG1hcC5wcm9qZWN0KGNlbnRlciwgdGhpcy5fdGlsZVpvb20pLmZsb29yKCksXG4gIFx0XHQgICAgaGFsZlNpemUgPSBtYXAuZ2V0U2l6ZSgpLmRpdmlkZUJ5KHNjYWxlICogMik7XG5cbiAgXHRcdHJldHVybiBuZXcgQm91bmRzKHBpeGVsQ2VudGVyLnN1YnRyYWN0KGhhbGZTaXplKSwgcGl4ZWxDZW50ZXIuYWRkKGhhbGZTaXplKSk7XG4gIFx0fSxcblxuICBcdC8vIFByaXZhdGUgbWV0aG9kIHRvIGxvYWQgdGlsZXMgaW4gdGhlIGdyaWQncyBhY3RpdmUgem9vbSBsZXZlbCBhY2NvcmRpbmcgdG8gbWFwIGJvdW5kc1xuICBcdF91cGRhdGU6IGZ1bmN0aW9uIChjZW50ZXIpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XG4gIFx0XHRpZiAoIW1hcCkgeyByZXR1cm47IH1cbiAgXHRcdHZhciB6b29tID0gdGhpcy5fY2xhbXBab29tKG1hcC5nZXRab29tKCkpO1xuXG4gIFx0XHRpZiAoY2VudGVyID09PSB1bmRlZmluZWQpIHsgY2VudGVyID0gbWFwLmdldENlbnRlcigpOyB9XG4gIFx0XHRpZiAodGhpcy5fdGlsZVpvb20gPT09IHVuZGVmaW5lZCkgeyByZXR1cm47IH1cdC8vIGlmIG91dCBvZiBtaW56b29tL21heHpvb21cblxuICBcdFx0dmFyIHBpeGVsQm91bmRzID0gdGhpcy5fZ2V0VGlsZWRQaXhlbEJvdW5kcyhjZW50ZXIpLFxuICBcdFx0ICAgIHRpbGVSYW5nZSA9IHRoaXMuX3B4Qm91bmRzVG9UaWxlUmFuZ2UocGl4ZWxCb3VuZHMpLFxuICBcdFx0ICAgIHRpbGVDZW50ZXIgPSB0aWxlUmFuZ2UuZ2V0Q2VudGVyKCksXG4gIFx0XHQgICAgcXVldWUgPSBbXSxcbiAgXHRcdCAgICBtYXJnaW4gPSB0aGlzLm9wdGlvbnMua2VlcEJ1ZmZlcixcbiAgXHRcdCAgICBub1BydW5lUmFuZ2UgPSBuZXcgQm91bmRzKHRpbGVSYW5nZS5nZXRCb3R0b21MZWZ0KCkuc3VidHJhY3QoW21hcmdpbiwgLW1hcmdpbl0pLFxuICBcdFx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGlsZVJhbmdlLmdldFRvcFJpZ2h0KCkuYWRkKFttYXJnaW4sIC1tYXJnaW5dKSk7XG5cbiAgXHRcdC8vIFNhbml0eSBjaGVjazogcGFuaWMgaWYgdGhlIHRpbGUgcmFuZ2UgY29udGFpbnMgSW5maW5pdHkgc29tZXdoZXJlLlxuICBcdFx0aWYgKCEoaXNGaW5pdGUodGlsZVJhbmdlLm1pbi54KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1pbi55KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1heC54KSAmJlxuICBcdFx0ICAgICAgaXNGaW5pdGUodGlsZVJhbmdlLm1heC55KSkpIHsgdGhyb3cgbmV3IEVycm9yKCdBdHRlbXB0ZWQgdG8gbG9hZCBhbiBpbmZpbml0ZSBudW1iZXIgb2YgdGlsZXMnKTsgfVxuXG4gIFx0XHRmb3IgKHZhciBrZXkgaW4gdGhpcy5fdGlsZXMpIHtcbiAgXHRcdFx0dmFyIGMgPSB0aGlzLl90aWxlc1trZXldLmNvb3JkcztcbiAgXHRcdFx0aWYgKGMueiAhPT0gdGhpcy5fdGlsZVpvb20gfHwgIW5vUHJ1bmVSYW5nZS5jb250YWlucyhuZXcgUG9pbnQoYy54LCBjLnkpKSkge1xuICBcdFx0XHRcdHRoaXMuX3RpbGVzW2tleV0uY3VycmVudCA9IGZhbHNlO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIF91cGRhdGUganVzdCBsb2FkcyBtb3JlIHRpbGVzLiBJZiB0aGUgdGlsZSB6b29tIGxldmVsIGRpZmZlcnMgdG9vIG11Y2hcbiAgXHRcdC8vIGZyb20gdGhlIG1hcCdzLCBsZXQgX3NldFZpZXcgcmVzZXQgbGV2ZWxzIGFuZCBwcnVuZSBvbGQgdGlsZXMuXG4gIFx0XHRpZiAoTWF0aC5hYnMoem9vbSAtIHRoaXMuX3RpbGVab29tKSA+IDEpIHsgdGhpcy5fc2V0VmlldyhjZW50ZXIsIHpvb20pOyByZXR1cm47IH1cblxuICBcdFx0Ly8gY3JlYXRlIGEgcXVldWUgb2YgY29vcmRpbmF0ZXMgdG8gbG9hZCB0aWxlcyBmcm9tXG4gIFx0XHRmb3IgKHZhciBqID0gdGlsZVJhbmdlLm1pbi55OyBqIDw9IHRpbGVSYW5nZS5tYXgueTsgaisrKSB7XG4gIFx0XHRcdGZvciAodmFyIGkgPSB0aWxlUmFuZ2UubWluLng7IGkgPD0gdGlsZVJhbmdlLm1heC54OyBpKyspIHtcbiAgXHRcdFx0XHR2YXIgY29vcmRzID0gbmV3IFBvaW50KGksIGopO1xuICBcdFx0XHRcdGNvb3Jkcy56ID0gdGhpcy5fdGlsZVpvb207XG5cbiAgXHRcdFx0XHRpZiAoIXRoaXMuX2lzVmFsaWRUaWxlKGNvb3JkcykpIHsgY29udGludWU7IH1cblxuICBcdFx0XHRcdHZhciB0aWxlID0gdGhpcy5fdGlsZXNbdGhpcy5fdGlsZUNvb3Jkc1RvS2V5KGNvb3JkcyldO1xuICBcdFx0XHRcdGlmICh0aWxlKSB7XG4gIFx0XHRcdFx0XHR0aWxlLmN1cnJlbnQgPSB0cnVlO1xuICBcdFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0XHRxdWV1ZS5wdXNoKGNvb3Jkcyk7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdC8vIHNvcnQgdGlsZSBxdWV1ZSB0byBsb2FkIHRpbGVzIGluIG9yZGVyIG9mIHRoZWlyIGRpc3RhbmNlIHRvIGNlbnRlclxuICBcdFx0cXVldWUuc29ydChmdW5jdGlvbiAoYSwgYikge1xuICBcdFx0XHRyZXR1cm4gYS5kaXN0YW5jZVRvKHRpbGVDZW50ZXIpIC0gYi5kaXN0YW5jZVRvKHRpbGVDZW50ZXIpO1xuICBcdFx0fSk7XG5cbiAgXHRcdGlmIChxdWV1ZS5sZW5ndGggIT09IDApIHtcbiAgXHRcdFx0Ly8gaWYgaXQncyB0aGUgZmlyc3QgYmF0Y2ggb2YgdGlsZXMgdG8gbG9hZFxuICBcdFx0XHRpZiAoIXRoaXMuX2xvYWRpbmcpIHtcbiAgXHRcdFx0XHR0aGlzLl9sb2FkaW5nID0gdHJ1ZTtcbiAgXHRcdFx0XHQvLyBAZXZlbnQgbG9hZGluZzogRXZlbnRcbiAgXHRcdFx0XHQvLyBGaXJlZCB3aGVuIHRoZSBncmlkIGxheWVyIHN0YXJ0cyBsb2FkaW5nIHRpbGVzLlxuICBcdFx0XHRcdHRoaXMuZmlyZSgnbG9hZGluZycpO1xuICBcdFx0XHR9XG5cbiAgXHRcdFx0Ly8gY3JlYXRlIERPTSBmcmFnbWVudCB0byBhcHBlbmQgdGlsZXMgaW4gb25lIGJhdGNoXG4gIFx0XHRcdHZhciBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtcblxuICBcdFx0XHRmb3IgKGkgPSAwOyBpIDwgcXVldWUubGVuZ3RoOyBpKyspIHtcbiAgXHRcdFx0XHR0aGlzLl9hZGRUaWxlKHF1ZXVlW2ldLCBmcmFnbWVudCk7XG4gIFx0XHRcdH1cblxuICBcdFx0XHR0aGlzLl9sZXZlbC5lbC5hcHBlbmRDaGlsZChmcmFnbWVudCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9pc1ZhbGlkVGlsZTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIGNycyA9IHRoaXMuX21hcC5vcHRpb25zLmNycztcblxuICBcdFx0aWYgKCFjcnMuaW5maW5pdGUpIHtcbiAgXHRcdFx0Ly8gZG9uJ3QgbG9hZCB0aWxlIGlmIGl0J3Mgb3V0IG9mIGJvdW5kcyBhbmQgbm90IHdyYXBwZWRcbiAgXHRcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX2dsb2JhbFRpbGVSYW5nZTtcbiAgXHRcdFx0aWYgKCghY3JzLndyYXBMbmcgJiYgKGNvb3Jkcy54IDwgYm91bmRzLm1pbi54IHx8IGNvb3Jkcy54ID4gYm91bmRzLm1heC54KSkgfHxcbiAgXHRcdFx0ICAgICghY3JzLndyYXBMYXQgJiYgKGNvb3Jkcy55IDwgYm91bmRzLm1pbi55IHx8IGNvb3Jkcy55ID4gYm91bmRzLm1heC55KSkpIHsgcmV0dXJuIGZhbHNlOyB9XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5vcHRpb25zLmJvdW5kcykgeyByZXR1cm4gdHJ1ZTsgfVxuXG4gIFx0XHQvLyBkb24ndCBsb2FkIHRpbGUgaWYgaXQgZG9lc24ndCBpbnRlcnNlY3QgdGhlIGJvdW5kcyBpbiBvcHRpb25zXG4gIFx0XHR2YXIgdGlsZUJvdW5kcyA9IHRoaXMuX3RpbGVDb29yZHNUb0JvdW5kcyhjb29yZHMpO1xuICBcdFx0cmV0dXJuIHRvTGF0TG5nQm91bmRzKHRoaXMub3B0aW9ucy5ib3VuZHMpLm92ZXJsYXBzKHRpbGVCb3VuZHMpO1xuICBcdH0sXG5cbiAgXHRfa2V5VG9Cb3VuZHM6IGZ1bmN0aW9uIChrZXkpIHtcbiAgXHRcdHJldHVybiB0aGlzLl90aWxlQ29vcmRzVG9Cb3VuZHModGhpcy5fa2V5VG9UaWxlQ29vcmRzKGtleSkpO1xuICBcdH0sXG5cbiAgXHRfdGlsZUNvb3Jkc1RvTndTZTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcCxcbiAgXHRcdCAgICB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKSxcbiAgXHRcdCAgICBud1BvaW50ID0gY29vcmRzLnNjYWxlQnkodGlsZVNpemUpLFxuICBcdFx0ICAgIHNlUG9pbnQgPSBud1BvaW50LmFkZCh0aWxlU2l6ZSksXG4gIFx0XHQgICAgbncgPSBtYXAudW5wcm9qZWN0KG53UG9pbnQsIGNvb3Jkcy56KSxcbiAgXHRcdCAgICBzZSA9IG1hcC51bnByb2plY3Qoc2VQb2ludCwgY29vcmRzLnopO1xuICBcdFx0cmV0dXJuIFtudywgc2VdO1xuICBcdH0sXG5cbiAgXHQvLyBjb252ZXJ0cyB0aWxlIGNvb3JkaW5hdGVzIHRvIGl0cyBnZW9ncmFwaGljYWwgYm91bmRzXG4gIFx0X3RpbGVDb29yZHNUb0JvdW5kczogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0dmFyIGJwID0gdGhpcy5fdGlsZUNvb3Jkc1RvTndTZShjb29yZHMpLFxuICBcdFx0ICAgIGJvdW5kcyA9IG5ldyBMYXRMbmdCb3VuZHMoYnBbMF0sIGJwWzFdKTtcblxuICBcdFx0aWYgKCF0aGlzLm9wdGlvbnMubm9XcmFwKSB7XG4gIFx0XHRcdGJvdW5kcyA9IHRoaXMuX21hcC53cmFwTGF0TG5nQm91bmRzKGJvdW5kcyk7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gYm91bmRzO1xuICBcdH0sXG4gIFx0Ly8gY29udmVydHMgdGlsZSBjb29yZGluYXRlcyB0byBrZXkgZm9yIHRoZSB0aWxlIGNhY2hlXG4gIFx0X3RpbGVDb29yZHNUb0tleTogZnVuY3Rpb24gKGNvb3Jkcykge1xuICBcdFx0cmV0dXJuIGNvb3Jkcy54ICsgJzonICsgY29vcmRzLnkgKyAnOicgKyBjb29yZHMuejtcbiAgXHR9LFxuXG4gIFx0Ly8gY29udmVydHMgdGlsZSBjYWNoZSBrZXkgdG8gY29vcmRpbmF0ZXNcbiAgXHRfa2V5VG9UaWxlQ29vcmRzOiBmdW5jdGlvbiAoa2V5KSB7XG4gIFx0XHR2YXIgayA9IGtleS5zcGxpdCgnOicpLFxuICBcdFx0ICAgIGNvb3JkcyA9IG5ldyBQb2ludCgra1swXSwgK2tbMV0pO1xuICBcdFx0Y29vcmRzLnogPSAra1syXTtcbiAgXHRcdHJldHVybiBjb29yZHM7XG4gIFx0fSxcblxuICBcdF9yZW1vdmVUaWxlOiBmdW5jdGlvbiAoa2V5KSB7XG4gIFx0XHR2YXIgdGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRpZiAoIXRpbGUpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHJlbW92ZSh0aWxlLmVsKTtcblxuICBcdFx0ZGVsZXRlIHRoaXMuX3RpbGVzW2tleV07XG5cbiAgXHRcdC8vIEBldmVudCB0aWxldW5sb2FkOiBUaWxlRXZlbnRcbiAgXHRcdC8vIEZpcmVkIHdoZW4gYSB0aWxlIGlzIHJlbW92ZWQgKGUuZy4gd2hlbiBhIHRpbGUgZ29lcyBvZmYgdGhlIHNjcmVlbikuXG4gIFx0XHR0aGlzLmZpcmUoJ3RpbGV1bmxvYWQnLCB7XG4gIFx0XHRcdHRpbGU6IHRpbGUuZWwsXG4gIFx0XHRcdGNvb3JkczogdGhpcy5fa2V5VG9UaWxlQ29vcmRzKGtleSlcbiAgXHRcdH0pO1xuICBcdH0sXG5cbiAgXHRfaW5pdFRpbGU6IGZ1bmN0aW9uICh0aWxlKSB7XG4gIFx0XHRhZGRDbGFzcyh0aWxlLCAnbGVhZmxldC10aWxlJyk7XG5cbiAgXHRcdHZhciB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcbiAgXHRcdHRpbGUuc3R5bGUud2lkdGggPSB0aWxlU2l6ZS54ICsgJ3B4JztcbiAgXHRcdHRpbGUuc3R5bGUuaGVpZ2h0ID0gdGlsZVNpemUueSArICdweCc7XG5cbiAgXHRcdHRpbGUub25zZWxlY3RzdGFydCA9IGZhbHNlRm47XG4gIFx0XHR0aWxlLm9ubW91c2Vtb3ZlID0gZmFsc2VGbjtcblxuICBcdFx0Ly8gdXBkYXRlIG9wYWNpdHkgb24gdGlsZXMgaW4gSUU3LTggYmVjYXVzZSBvZiBmaWx0ZXIgaW5oZXJpdGFuY2UgcHJvYmxlbXNcbiAgXHRcdGlmIChCcm93c2VyLmllbHQ5ICYmIHRoaXMub3B0aW9ucy5vcGFjaXR5IDwgMSkge1xuICBcdFx0XHRzZXRPcGFjaXR5KHRpbGUsIHRoaXMub3B0aW9ucy5vcGFjaXR5KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2FkZFRpbGU6IGZ1bmN0aW9uIChjb29yZHMsIGNvbnRhaW5lcikge1xuICBcdFx0dmFyIHRpbGVQb3MgPSB0aGlzLl9nZXRUaWxlUG9zKGNvb3JkcyksXG4gIFx0XHQgICAga2V5ID0gdGhpcy5fdGlsZUNvb3Jkc1RvS2V5KGNvb3Jkcyk7XG5cbiAgXHRcdHZhciB0aWxlID0gdGhpcy5jcmVhdGVUaWxlKHRoaXMuX3dyYXBDb29yZHMoY29vcmRzKSwgYmluZCh0aGlzLl90aWxlUmVhZHksIHRoaXMsIGNvb3JkcykpO1xuXG4gIFx0XHR0aGlzLl9pbml0VGlsZSh0aWxlKTtcblxuICBcdFx0Ly8gaWYgY3JlYXRlVGlsZSBpcyBkZWZpbmVkIHdpdGggYSBzZWNvbmQgYXJndW1lbnQgKFwiZG9uZVwiIGNhbGxiYWNrKSxcbiAgXHRcdC8vIHdlIGtub3cgdGhhdCB0aWxlIGlzIGFzeW5jIGFuZCB3aWxsIGJlIHJlYWR5IGxhdGVyOyBvdGhlcndpc2VcbiAgXHRcdGlmICh0aGlzLmNyZWF0ZVRpbGUubGVuZ3RoIDwgMikge1xuICBcdFx0XHQvLyBtYXJrIHRpbGUgYXMgcmVhZHksIGJ1dCBkZWxheSBvbmUgZnJhbWUgZm9yIG9wYWNpdHkgYW5pbWF0aW9uIHRvIGhhcHBlblxuICBcdFx0XHRyZXF1ZXN0QW5pbUZyYW1lKGJpbmQodGhpcy5fdGlsZVJlYWR5LCB0aGlzLCBjb29yZHMsIG51bGwsIHRpbGUpKTtcbiAgXHRcdH1cblxuICBcdFx0c2V0UG9zaXRpb24odGlsZSwgdGlsZVBvcyk7XG5cbiAgXHRcdC8vIHNhdmUgdGlsZSBpbiBjYWNoZVxuICBcdFx0dGhpcy5fdGlsZXNba2V5XSA9IHtcbiAgXHRcdFx0ZWw6IHRpbGUsXG4gIFx0XHRcdGNvb3JkczogY29vcmRzLFxuICBcdFx0XHRjdXJyZW50OiB0cnVlXG4gIFx0XHR9O1xuXG4gIFx0XHRjb250YWluZXIuYXBwZW5kQ2hpbGQodGlsZSk7XG4gIFx0XHQvLyBAZXZlbnQgdGlsZWxvYWRzdGFydDogVGlsZUV2ZW50XG4gIFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSBpcyByZXF1ZXN0ZWQgYW5kIHN0YXJ0cyBsb2FkaW5nLlxuICBcdFx0dGhpcy5maXJlKCd0aWxlbG9hZHN0YXJ0Jywge1xuICBcdFx0XHR0aWxlOiB0aWxlLFxuICBcdFx0XHRjb29yZHM6IGNvb3Jkc1xuICBcdFx0fSk7XG4gIFx0fSxcblxuICBcdF90aWxlUmVhZHk6IGZ1bmN0aW9uIChjb29yZHMsIGVyciwgdGlsZSkge1xuICBcdFx0aWYgKGVycikge1xuICBcdFx0XHQvLyBAZXZlbnQgdGlsZWVycm9yOiBUaWxlRXJyb3JFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIHRoZXJlIGlzIGFuIGVycm9yIGxvYWRpbmcgYSB0aWxlLlxuICBcdFx0XHR0aGlzLmZpcmUoJ3RpbGVlcnJvcicsIHtcbiAgXHRcdFx0XHRlcnJvcjogZXJyLFxuICBcdFx0XHRcdHRpbGU6IHRpbGUsXG4gIFx0XHRcdFx0Y29vcmRzOiBjb29yZHNcbiAgXHRcdFx0fSk7XG4gIFx0XHR9XG5cbiAgXHRcdHZhciBrZXkgPSB0aGlzLl90aWxlQ29vcmRzVG9LZXkoY29vcmRzKTtcblxuICBcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2tleV07XG4gIFx0XHRpZiAoIXRpbGUpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHRpbGUubG9hZGVkID0gK25ldyBEYXRlKCk7XG4gIFx0XHRpZiAodGhpcy5fbWFwLl9mYWRlQW5pbWF0ZWQpIHtcbiAgXHRcdFx0c2V0T3BhY2l0eSh0aWxlLmVsLCAwKTtcbiAgXHRcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX2ZhZGVGcmFtZSk7XG4gIFx0XHRcdHRoaXMuX2ZhZGVGcmFtZSA9IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fdXBkYXRlT3BhY2l0eSwgdGhpcyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aWxlLmFjdGl2ZSA9IHRydWU7XG4gIFx0XHRcdHRoaXMuX3BydW5lVGlsZXMoKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKCFlcnIpIHtcbiAgXHRcdFx0YWRkQ2xhc3ModGlsZS5lbCwgJ2xlYWZsZXQtdGlsZS1sb2FkZWQnKTtcblxuICBcdFx0XHQvLyBAZXZlbnQgdGlsZWxvYWQ6IFRpbGVFdmVudFxuICBcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSBsb2Fkcy5cbiAgXHRcdFx0dGhpcy5maXJlKCd0aWxlbG9hZCcsIHtcbiAgXHRcdFx0XHR0aWxlOiB0aWxlLmVsLFxuICBcdFx0XHRcdGNvb3JkczogY29vcmRzXG4gIFx0XHRcdH0pO1xuICBcdFx0fVxuXG4gIFx0XHRpZiAodGhpcy5fbm9UaWxlc1RvTG9hZCgpKSB7XG4gIFx0XHRcdHRoaXMuX2xvYWRpbmcgPSBmYWxzZTtcbiAgXHRcdFx0Ly8gQGV2ZW50IGxvYWQ6IEV2ZW50XG4gIFx0XHRcdC8vIEZpcmVkIHdoZW4gdGhlIGdyaWQgbGF5ZXIgbG9hZGVkIGFsbCB2aXNpYmxlIHRpbGVzLlxuICBcdFx0XHR0aGlzLmZpcmUoJ2xvYWQnKTtcblxuICBcdFx0XHRpZiAoQnJvd3Nlci5pZWx0OSB8fCAhdGhpcy5fbWFwLl9mYWRlQW5pbWF0ZWQpIHtcbiAgXHRcdFx0XHRyZXF1ZXN0QW5pbUZyYW1lKHRoaXMuX3BydW5lVGlsZXMsIHRoaXMpO1xuICBcdFx0XHR9IGVsc2Uge1xuICBcdFx0XHRcdC8vIFdhaXQgYSBiaXQgbW9yZSB0aGFuIDAuMiBzZWNzICh0aGUgZHVyYXRpb24gb2YgdGhlIHRpbGUgZmFkZS1pbilcbiAgXHRcdFx0XHQvLyB0byB0cmlnZ2VyIGEgcHJ1bmluZy5cbiAgXHRcdFx0XHRzZXRUaW1lb3V0KGJpbmQodGhpcy5fcHJ1bmVUaWxlcywgdGhpcyksIDI1MCk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2dldFRpbGVQb3M6IGZ1bmN0aW9uIChjb29yZHMpIHtcbiAgXHRcdHJldHVybiBjb29yZHMuc2NhbGVCeSh0aGlzLmdldFRpbGVTaXplKCkpLnN1YnRyYWN0KHRoaXMuX2xldmVsLm9yaWdpbik7XG4gIFx0fSxcblxuICBcdF93cmFwQ29vcmRzOiBmdW5jdGlvbiAoY29vcmRzKSB7XG4gIFx0XHR2YXIgbmV3Q29vcmRzID0gbmV3IFBvaW50KFxuICBcdFx0XHR0aGlzLl93cmFwWCA/IHdyYXBOdW0oY29vcmRzLngsIHRoaXMuX3dyYXBYKSA6IGNvb3Jkcy54LFxuICBcdFx0XHR0aGlzLl93cmFwWSA/IHdyYXBOdW0oY29vcmRzLnksIHRoaXMuX3dyYXBZKSA6IGNvb3Jkcy55KTtcbiAgXHRcdG5ld0Nvb3Jkcy56ID0gY29vcmRzLno7XG4gIFx0XHRyZXR1cm4gbmV3Q29vcmRzO1xuICBcdH0sXG5cbiAgXHRfcHhCb3VuZHNUb1RpbGVSYW5nZTogZnVuY3Rpb24gKGJvdW5kcykge1xuICBcdFx0dmFyIHRpbGVTaXplID0gdGhpcy5nZXRUaWxlU2l6ZSgpO1xuICBcdFx0cmV0dXJuIG5ldyBCb3VuZHMoXG4gIFx0XHRcdGJvdW5kcy5taW4udW5zY2FsZUJ5KHRpbGVTaXplKS5mbG9vcigpLFxuICBcdFx0XHRib3VuZHMubWF4LnVuc2NhbGVCeSh0aWxlU2l6ZSkuY2VpbCgpLnN1YnRyYWN0KFsxLCAxXSkpO1xuICBcdH0sXG5cbiAgXHRfbm9UaWxlc1RvTG9hZDogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIga2V5IGluIHRoaXMuX3RpbGVzKSB7XG4gIFx0XHRcdGlmICghdGhpcy5fdGlsZXNba2V5XS5sb2FkZWQpIHsgcmV0dXJuIGZhbHNlOyB9XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gdHJ1ZTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBmYWN0b3J5IEwuZ3JpZExheWVyKG9wdGlvbnM/OiBHcmlkTGF5ZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiBHcmlkTGF5ZXIgd2l0aCB0aGUgc3VwcGxpZWQgb3B0aW9ucy5cbiAgZnVuY3Rpb24gZ3JpZExheWVyKG9wdGlvbnMpIHtcbiAgXHRyZXR1cm4gbmV3IEdyaWRMYXllcihvcHRpb25zKTtcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIFRpbGVMYXllclxyXG4gICAqIEBpbmhlcml0cyBHcmlkTGF5ZXJcclxuICAgKiBAYWthIEwuVGlsZUxheWVyXHJcbiAgICogVXNlZCB0byBsb2FkIGFuZCBkaXNwbGF5IHRpbGUgbGF5ZXJzIG9uIHRoZSBtYXAuIE5vdGUgdGhhdCBtb3N0IHRpbGUgc2VydmVycyByZXF1aXJlIGF0dHJpYnV0aW9uLCB3aGljaCB5b3UgY2FuIHNldCB1bmRlciBgTGF5ZXJgLiBFeHRlbmRzIGBHcmlkTGF5ZXJgLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmc/e2Zvb30nLCB7Zm9vOiAnYmFyJywgYXR0cmlidXRpb246ICcmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycyd9KS5hZGRUbyhtYXApO1xuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIEBzZWN0aW9uIFVSTCB0ZW1wbGF0ZVxyXG4gICAqIEBleGFtcGxlXHJcbiAgICpcclxuICAgKiBBIHN0cmluZyBvZiB0aGUgZm9sbG93aW5nIGZvcm06XHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKiAnaHR0cHM6Ly97c30uc29tZWRvbWFpbi5jb20vYmxhYmxhL3t6fS97eH0ve3l9e3J9LnBuZydcclxuICAgKiBgYGBcclxuICAgKlxyXG4gICAqIGB7c31gIG1lYW5zIG9uZSBvZiB0aGUgYXZhaWxhYmxlIHN1YmRvbWFpbnMgKHVzZWQgc2VxdWVudGlhbGx5IHRvIGhlbHAgd2l0aCBicm93c2VyIHBhcmFsbGVsIHJlcXVlc3RzIHBlciBkb21haW4gbGltaXRhdGlvbjsgc3ViZG9tYWluIHZhbHVlcyBhcmUgc3BlY2lmaWVkIGluIG9wdGlvbnM7IGBhYCwgYGJgIG9yIGBjYCBieSBkZWZhdWx0LCBjYW4gYmUgb21pdHRlZCksIGB7en1gIOKAlCB6b29tIGxldmVsLCBge3h9YCBhbmQgYHt5fWAg4oCUIHRpbGUgY29vcmRpbmF0ZXMuIGB7cn1gIGNhbiBiZSB1c2VkIHRvIGFkZCBcIiZjb21tYXQ7MnhcIiB0byB0aGUgVVJMIHRvIGxvYWQgcmV0aW5hIHRpbGVzLlxyXG4gICAqXHJcbiAgICogWW91IGNhbiB1c2UgY3VzdG9tIGtleXMgaW4gdGhlIHRlbXBsYXRlLCB3aGljaCB3aWxsIGJlIFtldmFsdWF0ZWRdKCN1dGlsLXRlbXBsYXRlKSBmcm9tIFRpbGVMYXllciBvcHRpb25zLCBsaWtlIHRoaXM6XHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKiBMLnRpbGVMYXllcignaHR0cHM6Ly97c30uc29tZWRvbWFpbi5jb20ve2Zvb30ve3p9L3t4fS97eX0ucG5nJywge2ZvbzogJ2Jhcid9KTtcclxuICAgKiBgYGBcclxuICAgKi9cclxuXHJcblxyXG4gIHZhciBUaWxlTGF5ZXIgPSBHcmlkTGF5ZXIuZXh0ZW5kKHtcclxuXHJcbiAgXHQvLyBAc2VjdGlvblxyXG4gIFx0Ly8gQGFrYSBUaWxlTGF5ZXIgb3B0aW9uc1xyXG4gIFx0b3B0aW9uczoge1xyXG4gIFx0XHQvLyBAb3B0aW9uIG1pblpvb206IE51bWJlciA9IDBcclxuICBcdFx0Ly8gVGhlIG1pbmltdW0gem9vbSBsZXZlbCBkb3duIHRvIHdoaWNoIHRoaXMgbGF5ZXIgd2lsbCBiZSBkaXNwbGF5ZWQgKGluY2x1c2l2ZSkuXHJcbiAgXHRcdG1pblpvb206IDAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIG1heFpvb206IE51bWJlciA9IDE4XHJcbiAgXHRcdC8vIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdXAgdG8gd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIGRpc3BsYXllZCAoaW5jbHVzaXZlKS5cclxuICBcdFx0bWF4Wm9vbTogMTgsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHN1YmRvbWFpbnM6IFN0cmluZ3xTdHJpbmdbXSA9ICdhYmMnXHJcbiAgXHRcdC8vIFN1YmRvbWFpbnMgb2YgdGhlIHRpbGUgc2VydmljZS4gQ2FuIGJlIHBhc3NlZCBpbiB0aGUgZm9ybSBvZiBvbmUgc3RyaW5nICh3aGVyZSBlYWNoIGxldHRlciBpcyBhIHN1YmRvbWFpbiBuYW1lKSBvciBhbiBhcnJheSBvZiBzdHJpbmdzLlxyXG4gIFx0XHRzdWJkb21haW5zOiAnYWJjJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gZXJyb3JUaWxlVXJsOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyBVUkwgdG8gdGhlIHRpbGUgaW1hZ2UgdG8gc2hvdyBpbiBwbGFjZSBvZiB0aGUgdGlsZSB0aGF0IGZhaWxlZCB0byBsb2FkLlxyXG4gIFx0XHRlcnJvclRpbGVVcmw6ICcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tT2Zmc2V0OiBOdW1iZXIgPSAwXHJcbiAgXHRcdC8vIFRoZSB6b29tIG51bWJlciB1c2VkIGluIHRpbGUgVVJMcyB3aWxsIGJlIG9mZnNldCB3aXRoIHRoaXMgdmFsdWUuXHJcbiAgXHRcdHpvb21PZmZzZXQ6IDAsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHRtczogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgaW52ZXJzZXMgWSBheGlzIG51bWJlcmluZyBmb3IgdGlsZXMgKHR1cm4gdGhpcyBvbiBmb3IgW1RNU10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvVGlsZV9NYXBfU2VydmljZSkgc2VydmljZXMpLlxyXG4gIFx0XHR0bXM6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB6b29tUmV2ZXJzZTogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIHNldCB0byB0cnVlLCB0aGUgem9vbSBudW1iZXIgdXNlZCBpbiB0aWxlIFVSTHMgd2lsbCBiZSByZXZlcnNlZCAoYG1heFpvb20gLSB6b29tYCBpbnN0ZWFkIG9mIGB6b29tYClcclxuICBcdFx0em9vbVJldmVyc2U6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiBkZXRlY3RSZXRpbmE6IEJvb2xlYW4gPSBmYWxzZVxyXG4gIFx0XHQvLyBJZiBgdHJ1ZWAgYW5kIHVzZXIgaXMgb24gYSByZXRpbmEgZGlzcGxheSwgaXQgd2lsbCByZXF1ZXN0IGZvdXIgdGlsZXMgb2YgaGFsZiB0aGUgc3BlY2lmaWVkIHNpemUgYW5kIGEgYmlnZ2VyIHpvb20gbGV2ZWwgaW4gcGxhY2Ugb2Ygb25lIHRvIHV0aWxpemUgdGhlIGhpZ2ggcmVzb2x1dGlvbi5cclxuICBcdFx0ZGV0ZWN0UmV0aW5hOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gY3Jvc3NPcmlnaW46IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgY3Jvc3NPcmlnaW4gYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHRpbGVzLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgYWxsIHRpbGVzIHdpbGwgaGF2ZSB0aGVpciBjcm9zc09yaWdpbiBhdHRyaWJ1dGUgc2V0IHRvIHRoZSBTdHJpbmcgcHJvdmlkZWQuIFRoaXMgaXMgbmVlZGVkIGlmIHlvdSB3YW50IHRvIGFjY2VzcyB0aWxlIHBpeGVsIGRhdGEuXHJcbiAgXHRcdC8vIFJlZmVyIHRvIFtDT1JTIFNldHRpbmdzXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0NPUlNfc2V0dGluZ3NfYXR0cmlidXRlcykgZm9yIHZhbGlkIFN0cmluZyB2YWx1ZXMuXHJcbiAgXHRcdGNyb3NzT3JpZ2luOiBmYWxzZSxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gcmVmZXJyZXJQb2xpY3k6IEJvb2xlYW58U3RyaW5nID0gZmFsc2VcclxuICBcdFx0Ly8gV2hldGhlciB0aGUgcmVmZXJyZXJQb2xpY3kgYXR0cmlidXRlIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHRpbGVzLlxyXG4gIFx0XHQvLyBJZiBhIFN0cmluZyBpcyBwcm92aWRlZCwgYWxsIHRpbGVzIHdpbGwgaGF2ZSB0aGVpciByZWZlcnJlclBvbGljeSBhdHRyaWJ1dGUgc2V0IHRvIHRoZSBTdHJpbmcgcHJvdmlkZWQuXHJcbiAgXHRcdC8vIFRoaXMgbWF5IGJlIG5lZWRlZCBpZiB5b3VyIG1hcCdzIHJlbmRlcmluZyBjb250ZXh0IGhhcyBhIHN0cmljdCBkZWZhdWx0IGJ1dCB5b3VyIHRpbGUgcHJvdmlkZXIgZXhwZWN0cyBhIHZhbGlkIHJlZmVycmVyXHJcbiAgXHRcdC8vIChlLmcuIHRvIHZhbGlkYXRlIGFuIEFQSSB0b2tlbikuXHJcbiAgXHRcdC8vIFJlZmVyIHRvIFtIVE1MSW1hZ2VFbGVtZW50LnJlZmVycmVyUG9saWN5XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvSFRNTEltYWdlRWxlbWVudC9yZWZlcnJlclBvbGljeSkgZm9yIHZhbGlkIFN0cmluZyB2YWx1ZXMuXHJcbiAgXHRcdHJlZmVycmVyUG9saWN5OiBmYWxzZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHRvcHRpb25zID0gc2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcclxuXHJcbiAgXHRcdC8vIGRldGVjdGluZyByZXRpbmEgZGlzcGxheXMsIGFkanVzdGluZyB0aWxlU2l6ZSBhbmQgem9vbSBsZXZlbHNcclxuICBcdFx0aWYgKG9wdGlvbnMuZGV0ZWN0UmV0aW5hICYmIEJyb3dzZXIucmV0aW5hICYmIG9wdGlvbnMubWF4Wm9vbSA+IDApIHtcclxuXHJcbiAgXHRcdFx0b3B0aW9ucy50aWxlU2l6ZSA9IE1hdGguZmxvb3Iob3B0aW9ucy50aWxlU2l6ZSAvIDIpO1xyXG5cclxuICBcdFx0XHRpZiAoIW9wdGlvbnMuem9vbVJldmVyc2UpIHtcclxuICBcdFx0XHRcdG9wdGlvbnMuem9vbU9mZnNldCsrO1xyXG4gIFx0XHRcdFx0b3B0aW9ucy5tYXhab29tID0gTWF0aC5tYXgob3B0aW9ucy5taW5ab29tLCBvcHRpb25zLm1heFpvb20gLSAxKTtcclxuICBcdFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdFx0b3B0aW9ucy56b29tT2Zmc2V0LS07XHJcbiAgXHRcdFx0XHRvcHRpb25zLm1pblpvb20gPSBNYXRoLm1pbihvcHRpb25zLm1heFpvb20sIG9wdGlvbnMubWluWm9vbSArIDEpO1xyXG4gIFx0XHRcdH1cclxuXHJcbiAgXHRcdFx0b3B0aW9ucy5taW5ab29tID0gTWF0aC5tYXgoMCwgb3B0aW9ucy5taW5ab29tKTtcclxuICBcdFx0fSBlbHNlIGlmICghb3B0aW9ucy56b29tUmV2ZXJzZSkge1xyXG4gIFx0XHRcdC8vIG1ha2Ugc3VyZSBtYXhab29tIGlzIGd0ZSBtaW5ab29tXHJcbiAgXHRcdFx0b3B0aW9ucy5tYXhab29tID0gTWF0aC5tYXgob3B0aW9ucy5taW5ab29tLCBvcHRpb25zLm1heFpvb20pO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdC8vIG1ha2Ugc3VyZSBtaW5ab29tIGlzIGx0ZSBtYXhab29tXHJcbiAgXHRcdFx0b3B0aW9ucy5taW5ab29tID0gTWF0aC5taW4ob3B0aW9ucy5tYXhab29tLCBvcHRpb25zLm1pblpvb20pO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRpZiAodHlwZW9mIG9wdGlvbnMuc3ViZG9tYWlucyA9PT0gJ3N0cmluZycpIHtcclxuICBcdFx0XHRvcHRpb25zLnN1YmRvbWFpbnMgPSBvcHRpb25zLnN1YmRvbWFpbnMuc3BsaXQoJycpO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHR0aGlzLm9uKCd0aWxldW5sb2FkJywgdGhpcy5fb25UaWxlUmVtb3ZlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQG1ldGhvZCBzZXRVcmwodXJsOiBTdHJpbmcsIG5vUmVkcmF3PzogQm9vbGVhbik6IHRoaXNcclxuICBcdC8vIFVwZGF0ZXMgdGhlIGxheWVyJ3MgVVJMIHRlbXBsYXRlIGFuZCByZWRyYXdzIGl0ICh1bmxlc3MgYG5vUmVkcmF3YCBpcyBzZXQgdG8gYHRydWVgKS5cclxuICBcdC8vIElmIHRoZSBVUkwgZG9lcyBub3QgY2hhbmdlLCB0aGUgbGF5ZXIgd2lsbCBub3QgYmUgcmVkcmF3biB1bmxlc3NcclxuICBcdC8vIHRoZSBub1JlZHJhdyBwYXJhbWV0ZXIgaXMgc2V0IHRvIGZhbHNlLlxyXG4gIFx0c2V0VXJsOiBmdW5jdGlvbiAodXJsLCBub1JlZHJhdykge1xyXG4gIFx0XHRpZiAodGhpcy5fdXJsID09PSB1cmwgJiYgbm9SZWRyYXcgPT09IHVuZGVmaW5lZCkge1xyXG4gIFx0XHRcdG5vUmVkcmF3ID0gdHJ1ZTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0dGhpcy5fdXJsID0gdXJsO1xyXG5cclxuICBcdFx0aWYgKCFub1JlZHJhdykge1xyXG4gIFx0XHRcdHRoaXMucmVkcmF3KCk7XHJcbiAgXHRcdH1cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2QgY3JlYXRlVGlsZShjb29yZHM6IE9iamVjdCwgZG9uZT86IEZ1bmN0aW9uKTogSFRNTEVsZW1lbnRcclxuICBcdC8vIENhbGxlZCBvbmx5IGludGVybmFsbHksIG92ZXJyaWRlcyBHcmlkTGF5ZXIncyBbYGNyZWF0ZVRpbGUoKWBdKCNncmlkbGF5ZXItY3JlYXRldGlsZSlcclxuICBcdC8vIHRvIHJldHVybiBhbiBgPGltZz5gIEhUTUwgZWxlbWVudCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBpbWFnZSBVUkwgZ2l2ZW4gYGNvb3Jkc2AuIFRoZSBgZG9uZWBcclxuICBcdC8vIGNhbGxiYWNrIGlzIGNhbGxlZCB3aGVuIHRoZSB0aWxlIGhhcyBiZWVuIGxvYWRlZC5cclxuICBcdGNyZWF0ZVRpbGU6IGZ1bmN0aW9uIChjb29yZHMsIGRvbmUpIHtcclxuICBcdFx0dmFyIHRpbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbWcnKTtcclxuXHJcbiAgXHRcdG9uKHRpbGUsICdsb2FkJywgYmluZCh0aGlzLl90aWxlT25Mb2FkLCB0aGlzLCBkb25lLCB0aWxlKSk7XHJcbiAgXHRcdG9uKHRpbGUsICdlcnJvcicsIGJpbmQodGhpcy5fdGlsZU9uRXJyb3IsIHRoaXMsIGRvbmUsIHRpbGUpKTtcclxuXHJcbiAgXHRcdGlmICh0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gfHwgdGhpcy5vcHRpb25zLmNyb3NzT3JpZ2luID09PSAnJykge1xyXG4gIFx0XHRcdHRpbGUuY3Jvc3NPcmlnaW4gPSB0aGlzLm9wdGlvbnMuY3Jvc3NPcmlnaW4gPT09IHRydWUgPyAnJyA6IHRoaXMub3B0aW9ucy5jcm9zc09yaWdpbjtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gZm9yIHRoaXMgbmV3IG9wdGlvbiB3ZSBmb2xsb3cgdGhlIGRvY3VtZW50ZWQgYmVoYXZpb3JcclxuICBcdFx0Ly8gbW9yZSBjbG9zZWx5IGJ5IG9ubHkgc2V0dGluZyB0aGUgcHJvcGVydHkgd2hlbiBzdHJpbmdcclxuICBcdFx0aWYgKHR5cGVvZiB0aGlzLm9wdGlvbnMucmVmZXJyZXJQb2xpY3kgPT09ICdzdHJpbmcnKSB7XHJcbiAgXHRcdFx0dGlsZS5yZWZlcnJlclBvbGljeSA9IHRoaXMub3B0aW9ucy5yZWZlcnJlclBvbGljeTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0Ly8gVGhlIGFsdCBhdHRyaWJ1dGUgaXMgc2V0IHRvIHRoZSBlbXB0eSBzdHJpbmcsXHJcbiAgXHRcdC8vIGFsbG93aW5nIHNjcmVlbiByZWFkZXJzIHRvIGlnbm9yZSB0aGUgZGVjb3JhdGl2ZSBpbWFnZSB0aWxlcy5cclxuICBcdFx0Ly8gaHR0cHM6Ly93d3cudzMub3JnL1dBSS90dXRvcmlhbHMvaW1hZ2VzL2RlY29yYXRpdmUvXHJcbiAgXHRcdC8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sLWFyaWEvI2VsLWltZy1lbXB0eS1hbHRcclxuICBcdFx0dGlsZS5hbHQgPSAnJztcclxuXHJcbiAgXHRcdHRpbGUuc3JjID0gdGhpcy5nZXRUaWxlVXJsKGNvb3Jkcyk7XHJcblxyXG4gIFx0XHRyZXR1cm4gdGlsZTtcclxuICBcdH0sXHJcblxyXG4gIFx0Ly8gQHNlY3Rpb24gRXh0ZW5zaW9uIG1ldGhvZHNcclxuICBcdC8vIEB1bmluaGVyaXRhYmxlXHJcbiAgXHQvLyBMYXllcnMgZXh0ZW5kaW5nIGBUaWxlTGF5ZXJgIG1pZ2h0IHJlaW1wbGVtZW50IHRoZSBmb2xsb3dpbmcgbWV0aG9kLlxyXG4gIFx0Ly8gQG1ldGhvZCBnZXRUaWxlVXJsKGNvb3JkczogT2JqZWN0KTogU3RyaW5nXHJcbiAgXHQvLyBDYWxsZWQgb25seSBpbnRlcm5hbGx5LCByZXR1cm5zIHRoZSBVUkwgZm9yIGEgdGlsZSBnaXZlbiBpdHMgY29vcmRpbmF0ZXMuXHJcbiAgXHQvLyBDbGFzc2VzIGV4dGVuZGluZyBgVGlsZUxheWVyYCBjYW4gb3ZlcnJpZGUgdGhpcyBmdW5jdGlvbiB0byBwcm92aWRlIGN1c3RvbSB0aWxlIFVSTCBuYW1pbmcgc2NoZW1lcy5cclxuICBcdGdldFRpbGVVcmw6IGZ1bmN0aW9uIChjb29yZHMpIHtcclxuICBcdFx0dmFyIGRhdGEgPSB7XHJcbiAgXHRcdFx0cjogQnJvd3Nlci5yZXRpbmEgPyAnQDJ4JyA6ICcnLFxyXG4gIFx0XHRcdHM6IHRoaXMuX2dldFN1YmRvbWFpbihjb29yZHMpLFxyXG4gIFx0XHRcdHg6IGNvb3Jkcy54LFxyXG4gIFx0XHRcdHk6IGNvb3Jkcy55LFxyXG4gIFx0XHRcdHo6IHRoaXMuX2dldFpvb21Gb3JVcmwoKVxyXG4gIFx0XHR9O1xyXG4gIFx0XHRpZiAodGhpcy5fbWFwICYmICF0aGlzLl9tYXAub3B0aW9ucy5jcnMuaW5maW5pdGUpIHtcclxuICBcdFx0XHR2YXIgaW52ZXJ0ZWRZID0gdGhpcy5fZ2xvYmFsVGlsZVJhbmdlLm1heC55IC0gY29vcmRzLnk7XHJcbiAgXHRcdFx0aWYgKHRoaXMub3B0aW9ucy50bXMpIHtcclxuICBcdFx0XHRcdGRhdGFbJ3knXSA9IGludmVydGVkWTtcclxuICBcdFx0XHR9XHJcbiAgXHRcdFx0ZGF0YVsnLXknXSA9IGludmVydGVkWTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRlbXBsYXRlKHRoaXMuX3VybCwgZXh0ZW5kKGRhdGEsIHRoaXMub3B0aW9ucykpO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfdGlsZU9uTG9hZDogZnVuY3Rpb24gKGRvbmUsIHRpbGUpIHtcclxuICBcdFx0Ly8gRm9yIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvaXNzdWVzLzMzMzJcclxuICBcdFx0aWYgKEJyb3dzZXIuaWVsdDkpIHtcclxuICBcdFx0XHRzZXRUaW1lb3V0KGJpbmQoZG9uZSwgdGhpcywgbnVsbCwgdGlsZSksIDApO1xyXG4gIFx0XHR9IGVsc2Uge1xyXG4gIFx0XHRcdGRvbmUobnVsbCwgdGlsZSk7XHJcbiAgXHRcdH1cclxuICBcdH0sXHJcblxyXG4gIFx0X3RpbGVPbkVycm9yOiBmdW5jdGlvbiAoZG9uZSwgdGlsZSwgZSkge1xyXG4gIFx0XHR2YXIgZXJyb3JVcmwgPSB0aGlzLm9wdGlvbnMuZXJyb3JUaWxlVXJsO1xyXG4gIFx0XHRpZiAoZXJyb3JVcmwgJiYgdGlsZS5nZXRBdHRyaWJ1dGUoJ3NyYycpICE9PSBlcnJvclVybCkge1xyXG4gIFx0XHRcdHRpbGUuc3JjID0gZXJyb3JVcmw7XHJcbiAgXHRcdH1cclxuICBcdFx0ZG9uZShlLCB0aWxlKTtcclxuICBcdH0sXHJcblxyXG4gIFx0X29uVGlsZVJlbW92ZTogZnVuY3Rpb24gKGUpIHtcclxuICBcdFx0ZS50aWxlLm9ubG9hZCA9IG51bGw7XHJcbiAgXHR9LFxyXG5cclxuICBcdF9nZXRab29tRm9yVXJsOiBmdW5jdGlvbiAoKSB7XHJcbiAgXHRcdHZhciB6b29tID0gdGhpcy5fdGlsZVpvb20sXHJcbiAgXHRcdG1heFpvb20gPSB0aGlzLm9wdGlvbnMubWF4Wm9vbSxcclxuICBcdFx0em9vbVJldmVyc2UgPSB0aGlzLm9wdGlvbnMuem9vbVJldmVyc2UsXHJcbiAgXHRcdHpvb21PZmZzZXQgPSB0aGlzLm9wdGlvbnMuem9vbU9mZnNldDtcclxuXHJcbiAgXHRcdGlmICh6b29tUmV2ZXJzZSkge1xyXG4gIFx0XHRcdHpvb20gPSBtYXhab29tIC0gem9vbTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHpvb20gKyB6b29tT2Zmc2V0O1xyXG4gIFx0fSxcclxuXHJcbiAgXHRfZ2V0U3ViZG9tYWluOiBmdW5jdGlvbiAodGlsZVBvaW50KSB7XHJcbiAgXHRcdHZhciBpbmRleCA9IE1hdGguYWJzKHRpbGVQb2ludC54ICsgdGlsZVBvaW50LnkpICUgdGhpcy5vcHRpb25zLnN1YmRvbWFpbnMubGVuZ3RoO1xyXG4gIFx0XHRyZXR1cm4gdGhpcy5vcHRpb25zLnN1YmRvbWFpbnNbaW5kZXhdO1xyXG4gIFx0fSxcclxuXHJcbiAgXHQvLyBzdG9wcyBsb2FkaW5nIGFsbCB0aWxlcyBpbiB0aGUgYmFja2dyb3VuZCBsYXllclxyXG4gIFx0X2Fib3J0TG9hZGluZzogZnVuY3Rpb24gKCkge1xyXG4gIFx0XHR2YXIgaSwgdGlsZTtcclxuICBcdFx0Zm9yIChpIGluIHRoaXMuX3RpbGVzKSB7XHJcbiAgXHRcdFx0aWYgKHRoaXMuX3RpbGVzW2ldLmNvb3Jkcy56ICE9PSB0aGlzLl90aWxlWm9vbSkge1xyXG4gIFx0XHRcdFx0dGlsZSA9IHRoaXMuX3RpbGVzW2ldLmVsO1xyXG5cclxuICBcdFx0XHRcdHRpbGUub25sb2FkID0gZmFsc2VGbjtcclxuICBcdFx0XHRcdHRpbGUub25lcnJvciA9IGZhbHNlRm47XHJcblxyXG4gIFx0XHRcdFx0aWYgKCF0aWxlLmNvbXBsZXRlKSB7XHJcbiAgXHRcdFx0XHRcdHRpbGUuc3JjID0gZW1wdHlJbWFnZVVybDtcclxuICBcdFx0XHRcdFx0dmFyIGNvb3JkcyA9IHRoaXMuX3RpbGVzW2ldLmNvb3JkcztcclxuICBcdFx0XHRcdFx0cmVtb3ZlKHRpbGUpO1xyXG4gIFx0XHRcdFx0XHRkZWxldGUgdGhpcy5fdGlsZXNbaV07XHJcbiAgXHRcdFx0XHRcdC8vIEBldmVudCB0aWxlYWJvcnQ6IFRpbGVFdmVudFxyXG4gIFx0XHRcdFx0XHQvLyBGaXJlZCB3aGVuIGEgdGlsZSB3YXMgbG9hZGluZyBidXQgaXMgbm93IG5vdCB3YW50ZWQuXHJcbiAgXHRcdFx0XHRcdHRoaXMuZmlyZSgndGlsZWFib3J0Jywge1xyXG4gIFx0XHRcdFx0XHRcdHRpbGU6IHRpbGUsXHJcbiAgXHRcdFx0XHRcdFx0Y29vcmRzOiBjb29yZHNcclxuICBcdFx0XHRcdFx0fSk7XHJcbiAgXHRcdFx0XHR9XHJcbiAgXHRcdFx0fVxyXG4gIFx0XHR9XHJcbiAgXHR9LFxyXG5cclxuICBcdF9yZW1vdmVUaWxlOiBmdW5jdGlvbiAoa2V5KSB7XHJcbiAgXHRcdHZhciB0aWxlID0gdGhpcy5fdGlsZXNba2V5XTtcclxuICBcdFx0aWYgKCF0aWxlKSB7IHJldHVybjsgfVxyXG5cclxuICBcdFx0Ly8gQ2FuY2VscyBhbnkgcGVuZGluZyBodHRwIHJlcXVlc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGlsZVxyXG4gIFx0XHR0aWxlLmVsLnNldEF0dHJpYnV0ZSgnc3JjJywgZW1wdHlJbWFnZVVybCk7XHJcblxyXG4gIFx0XHRyZXR1cm4gR3JpZExheWVyLnByb3RvdHlwZS5fcmVtb3ZlVGlsZS5jYWxsKHRoaXMsIGtleSk7XHJcbiAgXHR9LFxyXG5cclxuICBcdF90aWxlUmVhZHk6IGZ1bmN0aW9uIChjb29yZHMsIGVyciwgdGlsZSkge1xyXG4gIFx0XHRpZiAoIXRoaXMuX21hcCB8fCAodGlsZSAmJiB0aWxlLmdldEF0dHJpYnV0ZSgnc3JjJykgPT09IGVtcHR5SW1hZ2VVcmwpKSB7XHJcbiAgXHRcdFx0cmV0dXJuO1xyXG4gIFx0XHR9XHJcblxyXG4gIFx0XHRyZXR1cm4gR3JpZExheWVyLnByb3RvdHlwZS5fdGlsZVJlYWR5LmNhbGwodGhpcywgY29vcmRzLCBlcnIsIHRpbGUpO1xyXG4gIFx0fVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgLy8gQGZhY3RvcnkgTC50aWxlbGF5ZXIodXJsVGVtcGxhdGU6IFN0cmluZywgb3B0aW9ucz86IFRpbGVMYXllciBvcHRpb25zKVxyXG4gIC8vIEluc3RhbnRpYXRlcyBhIHRpbGUgbGF5ZXIgb2JqZWN0IGdpdmVuIGEgYFVSTCB0ZW1wbGF0ZWAgYW5kIG9wdGlvbmFsbHkgYW4gb3B0aW9ucyBvYmplY3QuXHJcblxyXG4gIGZ1bmN0aW9uIHRpbGVMYXllcih1cmwsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgVGlsZUxheWVyKHVybCwgb3B0aW9ucyk7XHJcbiAgfVxuXG4gIC8qXHJcbiAgICogQGNsYXNzIFRpbGVMYXllci5XTVNcclxuICAgKiBAaW5oZXJpdHMgVGlsZUxheWVyXHJcbiAgICogQGFrYSBMLlRpbGVMYXllci5XTVNcclxuICAgKiBVc2VkIHRvIGRpc3BsYXkgW1dNU10oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvV2ViX01hcF9TZXJ2aWNlKSBzZXJ2aWNlcyBhcyB0aWxlIGxheWVycyBvbiB0aGUgbWFwLiBFeHRlbmRzIGBUaWxlTGF5ZXJgLlxyXG4gICAqXHJcbiAgICogQGV4YW1wbGVcclxuICAgKlxyXG4gICAqIGBgYGpzXHJcbiAgICogdmFyIG5leHJhZCA9IEwudGlsZUxheWVyLndtcyhcImh0dHA6Ly9tZXNvbmV0LmFncm9uLmlhc3RhdGUuZWR1L2NnaS1iaW4vd21zL25leHJhZC9uMHIuY2dpXCIsIHtcclxuICAgKiBcdGxheWVyczogJ25leHJhZC1uMHItOTAwOTEzJyxcclxuICAgKiBcdGZvcm1hdDogJ2ltYWdlL3BuZycsXHJcbiAgICogXHR0cmFuc3BhcmVudDogdHJ1ZSxcclxuICAgKiBcdGF0dHJpYnV0aW9uOiBcIldlYXRoZXIgZGF0YSDCqSAyMDEyIElFTSBOZXhyYWRcIlxyXG4gICAqIH0pO1xyXG4gICAqIGBgYFxyXG4gICAqL1xyXG5cclxuICB2YXIgVGlsZUxheWVyV01TID0gVGlsZUxheWVyLmV4dGVuZCh7XHJcblxyXG4gIFx0Ly8gQHNlY3Rpb25cclxuICBcdC8vIEBha2EgVGlsZUxheWVyLldNUyBvcHRpb25zXHJcbiAgXHQvLyBJZiBhbnkgY3VzdG9tIG9wdGlvbnMgbm90IGRvY3VtZW50ZWQgaGVyZSBhcmUgdXNlZCwgdGhleSB3aWxsIGJlIHNlbnQgdG8gdGhlXHJcbiAgXHQvLyBXTVMgc2VydmVyIGFzIGV4dHJhIHBhcmFtZXRlcnMgaW4gZWFjaCByZXF1ZXN0IFVSTC4gVGhpcyBjYW4gYmUgdXNlZnVsIGZvclxyXG4gIFx0Ly8gW25vbi1zdGFuZGFyZCB2ZW5kb3IgV01TIHBhcmFtZXRlcnNdKGh0dHBzOi8vZG9jcy5nZW9zZXJ2ZXIub3JnL3N0YWJsZS9lbi91c2VyL3NlcnZpY2VzL3dtcy92ZW5kb3IuaHRtbCkuXHJcbiAgXHRkZWZhdWx0V21zUGFyYW1zOiB7XHJcbiAgXHRcdHNlcnZpY2U6ICdXTVMnLFxyXG4gIFx0XHRyZXF1ZXN0OiAnR2V0TWFwJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gbGF5ZXJzOiBTdHJpbmcgPSAnJ1xyXG4gIFx0XHQvLyAqKihyZXF1aXJlZCkqKiBDb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBXTVMgbGF5ZXJzIHRvIHNob3cuXHJcbiAgXHRcdGxheWVyczogJycsXHJcblxyXG4gIFx0XHQvLyBAb3B0aW9uIHN0eWxlczogU3RyaW5nID0gJydcclxuICBcdFx0Ly8gQ29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgV01TIHN0eWxlcy5cclxuICBcdFx0c3R5bGVzOiAnJyxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gZm9ybWF0OiBTdHJpbmcgPSAnaW1hZ2UvanBlZydcclxuICBcdFx0Ly8gV01TIGltYWdlIGZvcm1hdCAodXNlIGAnaW1hZ2UvcG5nJ2AgZm9yIGxheWVycyB3aXRoIHRyYW5zcGFyZW5jeSkuXHJcbiAgXHRcdGZvcm1hdDogJ2ltYWdlL2pwZWcnLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB0cmFuc3BhcmVudDogQm9vbGVhbiA9IGZhbHNlXHJcbiAgXHRcdC8vIElmIGB0cnVlYCwgdGhlIFdNUyBzZXJ2aWNlIHdpbGwgcmV0dXJuIGltYWdlcyB3aXRoIHRyYW5zcGFyZW5jeS5cclxuICBcdFx0dHJhbnNwYXJlbnQ6IGZhbHNlLFxyXG5cclxuICBcdFx0Ly8gQG9wdGlvbiB2ZXJzaW9uOiBTdHJpbmcgPSAnMS4xLjEnXHJcbiAgXHRcdC8vIFZlcnNpb24gb2YgdGhlIFdNUyBzZXJ2aWNlIHRvIHVzZVxyXG4gIFx0XHR2ZXJzaW9uOiAnMS4xLjEnXHJcbiAgXHR9LFxyXG5cclxuICBcdG9wdGlvbnM6IHtcclxuICBcdFx0Ly8gQG9wdGlvbiBjcnM6IENSUyA9IG51bGxcclxuICBcdFx0Ly8gQ29vcmRpbmF0ZSBSZWZlcmVuY2UgU3lzdGVtIHRvIHVzZSBmb3IgdGhlIFdNUyByZXF1ZXN0cywgZGVmYXVsdHMgdG9cclxuICBcdFx0Ly8gbWFwIENSUy4gRG9uJ3QgY2hhbmdlIHRoaXMgaWYgeW91J3JlIG5vdCBzdXJlIHdoYXQgaXQgbWVhbnMuXHJcbiAgXHRcdGNyczogbnVsbCxcclxuXHJcbiAgXHRcdC8vIEBvcHRpb24gdXBwZXJjYXNlOiBCb29sZWFuID0gZmFsc2VcclxuICBcdFx0Ly8gSWYgYHRydWVgLCBXTVMgcmVxdWVzdCBwYXJhbWV0ZXIga2V5cyB3aWxsIGJlIHVwcGVyY2FzZS5cclxuICBcdFx0dXBwZXJjYXNlOiBmYWxzZVxyXG4gIFx0fSxcclxuXHJcbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XHJcblxyXG4gIFx0XHR0aGlzLl91cmwgPSB1cmw7XHJcblxyXG4gIFx0XHR2YXIgd21zUGFyYW1zID0gZXh0ZW5kKHt9LCB0aGlzLmRlZmF1bHRXbXNQYXJhbXMpO1xyXG5cclxuICBcdFx0Ly8gYWxsIGtleXMgdGhhdCBhcmUgbm90IFRpbGVMYXllciBvcHRpb25zIGdvIHRvIFdNUyBwYXJhbXNcclxuICBcdFx0Zm9yICh2YXIgaSBpbiBvcHRpb25zKSB7XHJcbiAgXHRcdFx0aWYgKCEoaSBpbiB0aGlzLm9wdGlvbnMpKSB7XHJcbiAgXHRcdFx0XHR3bXNQYXJhbXNbaV0gPSBvcHRpb25zW2ldO1xyXG4gIFx0XHRcdH1cclxuICBcdFx0fVxyXG5cclxuICBcdFx0b3B0aW9ucyA9IHNldE9wdGlvbnModGhpcywgb3B0aW9ucyk7XHJcblxyXG4gIFx0XHR2YXIgcmVhbFJldGluYSA9IG9wdGlvbnMuZGV0ZWN0UmV0aW5hICYmIEJyb3dzZXIucmV0aW5hID8gMiA6IDE7XHJcbiAgXHRcdHZhciB0aWxlU2l6ZSA9IHRoaXMuZ2V0VGlsZVNpemUoKTtcclxuICBcdFx0d21zUGFyYW1zLndpZHRoID0gdGlsZVNpemUueCAqIHJlYWxSZXRpbmE7XHJcbiAgXHRcdHdtc1BhcmFtcy5oZWlnaHQgPSB0aWxlU2l6ZS55ICogcmVhbFJldGluYTtcclxuXHJcbiAgXHRcdHRoaXMud21zUGFyYW1zID0gd21zUGFyYW1zO1xyXG4gIFx0fSxcclxuXHJcbiAgXHRvbkFkZDogZnVuY3Rpb24gKG1hcCkge1xyXG5cclxuICBcdFx0dGhpcy5fY3JzID0gdGhpcy5vcHRpb25zLmNycyB8fCBtYXAub3B0aW9ucy5jcnM7XHJcbiAgXHRcdHRoaXMuX3dtc1ZlcnNpb24gPSBwYXJzZUZsb2F0KHRoaXMud21zUGFyYW1zLnZlcnNpb24pO1xyXG5cclxuICBcdFx0dmFyIHByb2plY3Rpb25LZXkgPSB0aGlzLl93bXNWZXJzaW9uID49IDEuMyA/ICdjcnMnIDogJ3Nycyc7XHJcbiAgXHRcdHRoaXMud21zUGFyYW1zW3Byb2plY3Rpb25LZXldID0gdGhpcy5fY3JzLmNvZGU7XHJcblxyXG4gIFx0XHRUaWxlTGF5ZXIucHJvdG90eXBlLm9uQWRkLmNhbGwodGhpcywgbWFwKTtcclxuICBcdH0sXHJcblxyXG4gIFx0Z2V0VGlsZVVybDogZnVuY3Rpb24gKGNvb3Jkcykge1xyXG5cclxuICBcdFx0dmFyIHRpbGVCb3VuZHMgPSB0aGlzLl90aWxlQ29vcmRzVG9Od1NlKGNvb3JkcyksXHJcbiAgXHRcdCAgICBjcnMgPSB0aGlzLl9jcnMsXHJcbiAgXHRcdCAgICBib3VuZHMgPSB0b0JvdW5kcyhjcnMucHJvamVjdCh0aWxlQm91bmRzWzBdKSwgY3JzLnByb2plY3QodGlsZUJvdW5kc1sxXSkpLFxyXG4gIFx0XHQgICAgbWluID0gYm91bmRzLm1pbixcclxuICBcdFx0ICAgIG1heCA9IGJvdW5kcy5tYXgsXHJcbiAgXHRcdCAgICBiYm94ID0gKHRoaXMuX3dtc1ZlcnNpb24gPj0gMS4zICYmIHRoaXMuX2NycyA9PT0gRVBTRzQzMjYgP1xyXG4gIFx0XHQgICAgW21pbi55LCBtaW4ueCwgbWF4LnksIG1heC54XSA6XHJcbiAgXHRcdCAgICBbbWluLngsIG1pbi55LCBtYXgueCwgbWF4LnldKS5qb2luKCcsJyksXHJcbiAgXHRcdCAgICB1cmwgPSBUaWxlTGF5ZXIucHJvdG90eXBlLmdldFRpbGVVcmwuY2FsbCh0aGlzLCBjb29yZHMpO1xyXG4gIFx0XHRyZXR1cm4gdXJsICtcclxuICBcdFx0XHRnZXRQYXJhbVN0cmluZyh0aGlzLndtc1BhcmFtcywgdXJsLCB0aGlzLm9wdGlvbnMudXBwZXJjYXNlKSArXHJcbiAgXHRcdFx0KHRoaXMub3B0aW9ucy51cHBlcmNhc2UgPyAnJkJCT1g9JyA6ICcmYmJveD0nKSArIGJib3g7XHJcbiAgXHR9LFxyXG5cclxuICBcdC8vIEBtZXRob2Qgc2V0UGFyYW1zKHBhcmFtczogT2JqZWN0LCBub1JlZHJhdz86IEJvb2xlYW4pOiB0aGlzXHJcbiAgXHQvLyBNZXJnZXMgYW4gb2JqZWN0IHdpdGggdGhlIG5ldyBwYXJhbWV0ZXJzIGFuZCByZS1yZXF1ZXN0cyB0aWxlcyBvbiB0aGUgY3VycmVudCBzY3JlZW4gKHVubGVzcyBgbm9SZWRyYXdgIHdhcyBzZXQgdG8gdHJ1ZSkuXHJcbiAgXHRzZXRQYXJhbXM6IGZ1bmN0aW9uIChwYXJhbXMsIG5vUmVkcmF3KSB7XHJcblxyXG4gIFx0XHRleHRlbmQodGhpcy53bXNQYXJhbXMsIHBhcmFtcyk7XHJcblxyXG4gIFx0XHRpZiAoIW5vUmVkcmF3KSB7XHJcbiAgXHRcdFx0dGhpcy5yZWRyYXcoKTtcclxuICBcdFx0fVxyXG5cclxuICBcdFx0cmV0dXJuIHRoaXM7XHJcbiAgXHR9XHJcbiAgfSk7XHJcblxyXG5cclxuICAvLyBAZmFjdG9yeSBMLnRpbGVMYXllci53bXMoYmFzZVVybDogU3RyaW5nLCBvcHRpb25zOiBUaWxlTGF5ZXIuV01TIG9wdGlvbnMpXHJcbiAgLy8gSW5zdGFudGlhdGVzIGEgV01TIHRpbGUgbGF5ZXIgb2JqZWN0IGdpdmVuIGEgYmFzZSBVUkwgb2YgdGhlIFdNUyBzZXJ2aWNlIGFuZCBhIFdNUyBwYXJhbWV0ZXJzL29wdGlvbnMgb2JqZWN0LlxyXG4gIGZ1bmN0aW9uIHRpbGVMYXllcldNUyh1cmwsIG9wdGlvbnMpIHtcclxuICBcdHJldHVybiBuZXcgVGlsZUxheWVyV01TKHVybCwgb3B0aW9ucyk7XHJcbiAgfVxuXG4gIFRpbGVMYXllci5XTVMgPSBUaWxlTGF5ZXJXTVM7XG4gIHRpbGVMYXllci53bXMgPSB0aWxlTGF5ZXJXTVM7XG5cbiAgLypcbiAgICogQGNsYXNzIFJlbmRlcmVyXG4gICAqIEBpbmhlcml0cyBMYXllclxuICAgKiBAYWthIEwuUmVuZGVyZXJcbiAgICpcbiAgICogQmFzZSBjbGFzcyBmb3IgdmVjdG9yIHJlbmRlcmVyIGltcGxlbWVudGF0aW9ucyAoYFNWR2AsIGBDYW52YXNgKS4gSGFuZGxlcyB0aGVcbiAgICogRE9NIGNvbnRhaW5lciBvZiB0aGUgcmVuZGVyZXIsIGl0cyBib3VuZHMsIGFuZCBpdHMgem9vbSBhbmltYXRpb24uXG4gICAqXG4gICAqIEEgYFJlbmRlcmVyYCB3b3JrcyBhcyBhbiBpbXBsaWNpdCBsYXllciBncm91cCBmb3IgYWxsIGBQYXRoYHMgLSB0aGUgcmVuZGVyZXJcbiAgICogaXRzZWxmIGNhbiBiZSBhZGRlZCBvciByZW1vdmVkIHRvIHRoZSBtYXAuIEFsbCBwYXRocyB1c2UgYSByZW5kZXJlciwgd2hpY2ggY2FuXG4gICAqIGJlIGltcGxpY2l0ICh0aGUgbWFwIHdpbGwgZGVjaWRlIHRoZSB0eXBlIG9mIHJlbmRlcmVyIGFuZCB1c2UgaXQgYXV0b21hdGljYWxseSlcbiAgICogb3IgZXhwbGljaXQgKHVzaW5nIHRoZSBbYHJlbmRlcmVyYF0oI3BhdGgtcmVuZGVyZXIpIG9wdGlvbiBvZiB0aGUgcGF0aCkuXG4gICAqXG4gICAqIERvIG5vdCB1c2UgdGhpcyBjbGFzcyBkaXJlY3RseSwgdXNlIGBTVkdgIGFuZCBgQ2FudmFzYCBpbnN0ZWFkLlxuICAgKlxuICAgKiBAZXZlbnQgdXBkYXRlOiBFdmVudFxuICAgKiBGaXJlZCB3aGVuIHRoZSByZW5kZXJlciB1cGRhdGVzIGl0cyBib3VuZHMsIGNlbnRlciBhbmQgem9vbSwgZm9yIGV4YW1wbGUgd2hlblxuICAgKiBpdHMgbWFwIGhhcyBtb3ZlZFxuICAgKi9cblxuICB2YXIgUmVuZGVyZXIgPSBMYXllci5leHRlbmQoe1xuXG4gIFx0Ly8gQHNlY3Rpb25cbiAgXHQvLyBAYWthIFJlbmRlcmVyIG9wdGlvbnNcbiAgXHRvcHRpb25zOiB7XG4gIFx0XHQvLyBAb3B0aW9uIHBhZGRpbmc6IE51bWJlciA9IDAuMVxuICBcdFx0Ly8gSG93IG11Y2ggdG8gZXh0ZW5kIHRoZSBjbGlwIGFyZWEgYXJvdW5kIHRoZSBtYXAgdmlldyAocmVsYXRpdmUgdG8gaXRzIHNpemUpXG4gIFx0XHQvLyBlLmcuIDAuMSB3b3VsZCBiZSAxMCUgb2YgbWFwIHZpZXcgaW4gZWFjaCBkaXJlY3Rpb25cbiAgXHRcdHBhZGRpbmc6IDAuMVxuICBcdH0sXG5cbiAgXHRpbml0aWFsaXplOiBmdW5jdGlvbiAob3B0aW9ucykge1xuICBcdFx0c2V0T3B0aW9ucyh0aGlzLCBvcHRpb25zKTtcbiAgXHRcdHN0YW1wKHRoaXMpO1xuICBcdFx0dGhpcy5fbGF5ZXJzID0gdGhpcy5fbGF5ZXJzIHx8IHt9O1xuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKCF0aGlzLl9jb250YWluZXIpIHtcbiAgXHRcdFx0dGhpcy5faW5pdENvbnRhaW5lcigpOyAvLyBkZWZpbmVkIGJ5IHJlbmRlcmVyIGltcGxlbWVudGF0aW9uc1xuXG4gIFx0XHRcdGlmICh0aGlzLl96b29tQW5pbWF0ZWQpIHtcbiAgXHRcdFx0XHRhZGRDbGFzcyh0aGlzLl9jb250YWluZXIsICdsZWFmbGV0LXpvb20tYW5pbWF0ZWQnKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuXG4gIFx0XHR0aGlzLmdldFBhbmUoKS5hcHBlbmRDaGlsZCh0aGlzLl9jb250YWluZXIpO1xuICBcdFx0dGhpcy5fdXBkYXRlKCk7XG4gIFx0XHR0aGlzLm9uKCd1cGRhdGUnLCB0aGlzLl91cGRhdGVQYXRocywgdGhpcyk7XG4gIFx0fSxcblxuICBcdG9uUmVtb3ZlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLm9mZigndXBkYXRlJywgdGhpcy5fdXBkYXRlUGF0aHMsIHRoaXMpO1xuICBcdFx0dGhpcy5fZGVzdHJveUNvbnRhaW5lcigpO1xuICBcdH0sXG5cbiAgXHRnZXRFdmVudHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBldmVudHMgPSB7XG4gIFx0XHRcdHZpZXdyZXNldDogdGhpcy5fcmVzZXQsXG4gIFx0XHRcdHpvb206IHRoaXMuX29uWm9vbSxcbiAgXHRcdFx0bW92ZWVuZDogdGhpcy5fdXBkYXRlLFxuICBcdFx0XHR6b29tZW5kOiB0aGlzLl9vblpvb21FbmRcbiAgXHRcdH07XG4gIFx0XHRpZiAodGhpcy5fem9vbUFuaW1hdGVkKSB7XG4gIFx0XHRcdGV2ZW50cy56b29tYW5pbSA9IHRoaXMuX29uQW5pbVpvb207XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gZXZlbnRzO1xuICBcdH0sXG5cbiAgXHRfb25BbmltWm9vbTogZnVuY3Rpb24gKGV2KSB7XG4gIFx0XHR0aGlzLl91cGRhdGVUcmFuc2Zvcm0oZXYuY2VudGVyLCBldi56b29tKTtcbiAgXHR9LFxuXG4gIFx0X29uWm9vbTogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fdXBkYXRlVHJhbnNmb3JtKHRoaXMuX21hcC5nZXRDZW50ZXIoKSwgdGhpcy5fbWFwLmdldFpvb20oKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVUcmFuc2Zvcm06IGZ1bmN0aW9uIChjZW50ZXIsIHpvb20pIHtcbiAgXHRcdHZhciBzY2FsZSA9IHRoaXMuX21hcC5nZXRab29tU2NhbGUoem9vbSwgdGhpcy5fem9vbSksXG4gIFx0XHQgICAgdmlld0hhbGYgPSB0aGlzLl9tYXAuZ2V0U2l6ZSgpLm11bHRpcGx5QnkoMC41ICsgdGhpcy5vcHRpb25zLnBhZGRpbmcpLFxuICBcdFx0ICAgIGN1cnJlbnRDZW50ZXJQb2ludCA9IHRoaXMuX21hcC5wcm9qZWN0KHRoaXMuX2NlbnRlciwgem9vbSksXG5cbiAgXHRcdCAgICB0b3BMZWZ0T2Zmc2V0ID0gdmlld0hhbGYubXVsdGlwbHlCeSgtc2NhbGUpLmFkZChjdXJyZW50Q2VudGVyUG9pbnQpXG4gIFx0XHRcdFx0ICAuc3VidHJhY3QodGhpcy5fbWFwLl9nZXROZXdQaXhlbE9yaWdpbihjZW50ZXIsIHpvb20pKTtcblxuICBcdFx0aWYgKEJyb3dzZXIuYW55M2QpIHtcbiAgXHRcdFx0c2V0VHJhbnNmb3JtKHRoaXMuX2NvbnRhaW5lciwgdG9wTGVmdE9mZnNldCwgc2NhbGUpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0c2V0UG9zaXRpb24odGhpcy5fY29udGFpbmVyLCB0b3BMZWZ0T2Zmc2V0KTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl91cGRhdGUoKTtcbiAgXHRcdHRoaXMuX3VwZGF0ZVRyYW5zZm9ybSh0aGlzLl9jZW50ZXIsIHRoaXMuX3pvb20pO1xuXG4gIFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9sYXllcnMpIHtcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2lkXS5fcmVzZXQoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uWm9vbUVuZDogZnVuY3Rpb24gKCkge1xuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XG4gIFx0XHRcdHRoaXMuX2xheWVyc1tpZF0uX3Byb2plY3QoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZVBhdGhzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRmb3IgKHZhciBpZCBpbiB0aGlzLl9sYXllcnMpIHtcbiAgXHRcdFx0dGhpcy5fbGF5ZXJzW2lkXS5fdXBkYXRlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdC8vIFVwZGF0ZSBwaXhlbCBib3VuZHMgb2YgcmVuZGVyZXIgY29udGFpbmVyIChmb3IgcG9zaXRpb25pbmcvc2l6aW5nL2NsaXBwaW5nIGxhdGVyKVxuICBcdFx0Ly8gU3ViY2xhc3NlcyBhcmUgcmVzcG9uc2libGUgb2YgZmlyaW5nIHRoZSAndXBkYXRlJyBldmVudC5cbiAgXHRcdHZhciBwID0gdGhpcy5vcHRpb25zLnBhZGRpbmcsXG4gIFx0XHQgICAgc2l6ZSA9IHRoaXMuX21hcC5nZXRTaXplKCksXG4gIFx0XHQgICAgbWluID0gdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXllclBvaW50KHNpemUubXVsdGlwbHlCeSgtcCkpLnJvdW5kKCk7XG5cbiAgXHRcdHRoaXMuX2JvdW5kcyA9IG5ldyBCb3VuZHMobWluLCBtaW4uYWRkKHNpemUubXVsdGlwbHlCeSgxICsgcCAqIDIpKS5yb3VuZCgpKTtcblxuICBcdFx0dGhpcy5fY2VudGVyID0gdGhpcy5fbWFwLmdldENlbnRlcigpO1xuICBcdFx0dGhpcy5fem9vbSA9IHRoaXMuX21hcC5nZXRab29tKCk7XG4gIFx0fVxuICB9KTtcblxuICAvKlxuICAgKiBAY2xhc3MgQ2FudmFzXG4gICAqIEBpbmhlcml0cyBSZW5kZXJlclxuICAgKiBAYWthIEwuQ2FudmFzXG4gICAqXG4gICAqIEFsbG93cyB2ZWN0b3IgbGF5ZXJzIHRvIGJlIGRpc3BsYXllZCB3aXRoIFtgPGNhbnZhcz5gXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvQ2FudmFzX0FQSSkuXG4gICAqIEluaGVyaXRzIGBSZW5kZXJlcmAuXG4gICAqXG4gICAqIER1ZSB0byBbdGVjaG5pY2FsIGxpbWl0YXRpb25zXShodHRwczovL2Nhbml1c2UuY29tL2NhbnZhcyksIENhbnZhcyBpcyBub3RcbiAgICogYXZhaWxhYmxlIGluIGFsbCB3ZWIgYnJvd3NlcnMsIG5vdGFibHkgSUU4LCBhbmQgb3ZlcmxhcHBpbmcgZ2VvbWV0cmllcyBtaWdodFxuICAgKiBub3QgZGlzcGxheSBwcm9wZXJseSBpbiBzb21lIGVkZ2UgY2FzZXMuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIFVzZSBDYW52YXMgYnkgZGVmYXVsdCBmb3IgYWxsIHBhdGhzIGluIHRoZSBtYXA6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJywge1xuICAgKiBcdHJlbmRlcmVyOiBMLmNhbnZhcygpXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogVXNlIGEgQ2FudmFzIHJlbmRlcmVyIHdpdGggZXh0cmEgcGFkZGluZyBmb3Igc3BlY2lmaWMgdmVjdG9yIGdlb21ldHJpZXM6XG4gICAqXG4gICAqIGBgYGpzXG4gICAqIHZhciBtYXAgPSBMLm1hcCgnbWFwJyk7XG4gICAqIHZhciBteVJlbmRlcmVyID0gTC5jYW52YXMoeyBwYWRkaW5nOiAwLjUgfSk7XG4gICAqIHZhciBsaW5lID0gTC5wb2x5bGluZSggY29vcmRpbmF0ZXMsIHsgcmVuZGVyZXI6IG15UmVuZGVyZXIgfSApO1xuICAgKiB2YXIgY2lyY2xlID0gTC5jaXJjbGUoIGNlbnRlciwgeyByZW5kZXJlcjogbXlSZW5kZXJlciB9ICk7XG4gICAqIGBgYFxuICAgKi9cblxuICB2YXIgQ2FudmFzID0gUmVuZGVyZXIuZXh0ZW5kKHtcblxuICBcdC8vIEBzZWN0aW9uXG4gIFx0Ly8gQGFrYSBDYW52YXMgb3B0aW9uc1xuICBcdG9wdGlvbnM6IHtcbiAgXHRcdC8vIEBvcHRpb24gdG9sZXJhbmNlOiBOdW1iZXIgPSAwXG4gIFx0XHQvLyBIb3cgbXVjaCB0byBleHRlbmQgdGhlIGNsaWNrIHRvbGVyYW5jZSBhcm91bmQgYSBwYXRoL29iamVjdCBvbiB0aGUgbWFwLlxuICBcdFx0dG9sZXJhbmNlOiAwXG4gIFx0fSxcblxuICBcdGdldEV2ZW50czogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGV2ZW50cyA9IFJlbmRlcmVyLnByb3RvdHlwZS5nZXRFdmVudHMuY2FsbCh0aGlzKTtcbiAgXHRcdGV2ZW50cy52aWV3cHJlcmVzZXQgPSB0aGlzLl9vblZpZXdQcmVSZXNldDtcbiAgXHRcdHJldHVybiBldmVudHM7XG4gIFx0fSxcblxuICBcdF9vblZpZXdQcmVSZXNldDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gU2V0IGEgZmxhZyBzbyB0aGF0IGEgdmlld3ByZXJlc2V0K21vdmVlbmQrdmlld3Jlc2V0IG9ubHkgdXBkYXRlcyZyZWRyYXdzIG9uY2VcbiAgXHRcdHRoaXMuX3Bvc3Rwb25lVXBkYXRlUGF0aHMgPSB0cnVlO1xuICBcdH0sXG5cbiAgXHRvbkFkZDogZnVuY3Rpb24gKCkge1xuICBcdFx0UmVuZGVyZXIucHJvdG90eXBlLm9uQWRkLmNhbGwodGhpcyk7XG5cbiAgXHRcdC8vIFJlZHJhdyB2ZWN0b3JzIHNpbmNlIGNhbnZhcyBpcyBjbGVhcmVkIHVwb24gcmVtb3ZhbCxcbiAgXHRcdC8vIGluIGNhc2Ugb2YgcmVtb3ZpbmcgdGhlIHJlbmRlcmVyIGl0c2VsZiBmcm9tIHRoZSBtYXAuXG4gIFx0XHR0aGlzLl9kcmF3KCk7XG4gIFx0fSxcblxuICBcdF9pbml0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgY29udGFpbmVyID0gdGhpcy5fY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG5cbiAgXHRcdG9uKGNvbnRhaW5lciwgJ21vdXNlbW92ZScsIHRoaXMuX29uTW91c2VNb3ZlLCB0aGlzKTtcbiAgXHRcdG9uKGNvbnRhaW5lciwgJ2NsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIGNvbnRleHRtZW51JywgdGhpcy5fb25DbGljaywgdGhpcyk7XG4gIFx0XHRvbihjb250YWluZXIsICdtb3VzZW91dCcsIHRoaXMuX2hhbmRsZU1vdXNlT3V0LCB0aGlzKTtcbiAgXHRcdGNvbnRhaW5lclsnX2xlYWZsZXRfZGlzYWJsZV9ldmVudHMnXSA9IHRydWU7XG5cbiAgXHRcdHRoaXMuX2N0eCA9IGNvbnRhaW5lci5nZXRDb250ZXh0KCcyZCcpO1xuICBcdH0sXG5cbiAgXHRfZGVzdHJveUNvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0Y2FuY2VsQW5pbUZyYW1lKHRoaXMuX3JlZHJhd1JlcXVlc3QpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2N0eDtcbiAgXHRcdHJlbW92ZSh0aGlzLl9jb250YWluZXIpO1xuICBcdFx0b2ZmKHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRkZWxldGUgdGhpcy5fY29udGFpbmVyO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aHM6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9wb3N0cG9uZVVwZGF0ZVBhdGhzKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgbGF5ZXI7XG4gIFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMgPSBudWxsO1xuICBcdFx0Zm9yICh2YXIgaWQgaW4gdGhpcy5fbGF5ZXJzKSB7XG4gIFx0XHRcdGxheWVyID0gdGhpcy5fbGF5ZXJzW2lkXTtcbiAgXHRcdFx0bGF5ZXIuX3VwZGF0ZSgpO1xuICBcdFx0fVxuICBcdFx0dGhpcy5fcmVkcmF3KCk7XG4gIFx0fSxcblxuICBcdF91cGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20gJiYgdGhpcy5fYm91bmRzKSB7IHJldHVybjsgfVxuXG4gIFx0XHRSZW5kZXJlci5wcm90b3R5cGUuX3VwZGF0ZS5jYWxsKHRoaXMpO1xuXG4gIFx0XHR2YXIgYiA9IHRoaXMuX2JvdW5kcyxcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXIsXG4gIFx0XHQgICAgc2l6ZSA9IGIuZ2V0U2l6ZSgpLFxuICBcdFx0ICAgIG0gPSBCcm93c2VyLnJldGluYSA/IDIgOiAxO1xuXG4gIFx0XHRzZXRQb3NpdGlvbihjb250YWluZXIsIGIubWluKTtcblxuICBcdFx0Ly8gc2V0IGNhbnZhcyBzaXplIChhbHNvIGNsZWFyaW5nIGl0KTsgdXNlIGRvdWJsZSBzaXplIG9uIHJldGluYVxuICBcdFx0Y29udGFpbmVyLndpZHRoID0gbSAqIHNpemUueDtcbiAgXHRcdGNvbnRhaW5lci5oZWlnaHQgPSBtICogc2l6ZS55O1xuICBcdFx0Y29udGFpbmVyLnN0eWxlLndpZHRoID0gc2l6ZS54ICsgJ3B4JztcbiAgXHRcdGNvbnRhaW5lci5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xuXG4gIFx0XHRpZiAoQnJvd3Nlci5yZXRpbmEpIHtcbiAgXHRcdFx0dGhpcy5fY3R4LnNjYWxlKDIsIDIpO1xuICBcdFx0fVxuXG4gIFx0XHQvLyB0cmFuc2xhdGUgc28gd2UgdXNlIHRoZSBzYW1lIHBhdGggY29vcmRpbmF0ZXMgYWZ0ZXIgY2FudmFzIGVsZW1lbnQgbW92ZXNcbiAgXHRcdHRoaXMuX2N0eC50cmFuc2xhdGUoLWIubWluLngsIC1iLm1pbi55KTtcblxuICBcdFx0Ly8gVGVsbCBwYXRocyB0byByZWRyYXcgdGhlbXNlbHZlc1xuICBcdFx0dGhpcy5maXJlKCd1cGRhdGUnKTtcbiAgXHR9LFxuXG4gIFx0X3Jlc2V0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRSZW5kZXJlci5wcm90b3R5cGUuX3Jlc2V0LmNhbGwodGhpcyk7XG5cbiAgXHRcdGlmICh0aGlzLl9wb3N0cG9uZVVwZGF0ZVBhdGhzKSB7XG4gIFx0XHRcdHRoaXMuX3Bvc3Rwb25lVXBkYXRlUGF0aHMgPSBmYWxzZTtcbiAgXHRcdFx0dGhpcy5fdXBkYXRlUGF0aHMoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X2luaXRQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHRoaXMuX3VwZGF0ZURhc2hBcnJheShsYXllcik7XG4gIFx0XHR0aGlzLl9sYXllcnNbc3RhbXAobGF5ZXIpXSA9IGxheWVyO1xuXG4gIFx0XHR2YXIgb3JkZXIgPSBsYXllci5fb3JkZXIgPSB7XG4gIFx0XHRcdGxheWVyOiBsYXllcixcbiAgXHRcdFx0cHJldjogdGhpcy5fZHJhd0xhc3QsXG4gIFx0XHRcdG5leHQ6IG51bGxcbiAgXHRcdH07XG4gIFx0XHRpZiAodGhpcy5fZHJhd0xhc3QpIHsgdGhpcy5fZHJhd0xhc3QubmV4dCA9IG9yZGVyOyB9XG4gIFx0XHR0aGlzLl9kcmF3TGFzdCA9IG9yZGVyO1xuICBcdFx0dGhpcy5fZHJhd0ZpcnN0ID0gdGhpcy5fZHJhd0ZpcnN0IHx8IHRoaXMuX2RyYXdMYXN0O1xuICBcdH0sXG5cbiAgXHRfYWRkUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0aGlzLl9yZXF1ZXN0UmVkcmF3KGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X3JlbW92ZVBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIG9yZGVyID0gbGF5ZXIuX29yZGVyO1xuICBcdFx0dmFyIG5leHQgPSBvcmRlci5uZXh0O1xuICBcdFx0dmFyIHByZXYgPSBvcmRlci5wcmV2O1xuXG4gIFx0XHRpZiAobmV4dCkge1xuICBcdFx0XHRuZXh0LnByZXYgPSBwcmV2O1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0dGhpcy5fZHJhd0xhc3QgPSBwcmV2O1xuICBcdFx0fVxuICBcdFx0aWYgKHByZXYpIHtcbiAgXHRcdFx0cHJldi5uZXh0ID0gbmV4dDtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdHRoaXMuX2RyYXdGaXJzdCA9IG5leHQ7XG4gIFx0XHR9XG5cbiAgXHRcdGRlbGV0ZSBsYXllci5fb3JkZXI7XG5cbiAgXHRcdGRlbGV0ZSB0aGlzLl9sYXllcnNbc3RhbXAobGF5ZXIpXTtcblxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdC8vIFJlZHJhdyB0aGUgdW5pb24gb2YgdGhlIGxheWVyJ3Mgb2xkIHBpeGVsXG4gIFx0XHQvLyBib3VuZHMgYW5kIHRoZSBuZXcgcGl4ZWwgYm91bmRzLlxuICBcdFx0dGhpcy5fZXh0ZW5kUmVkcmF3Qm91bmRzKGxheWVyKTtcbiAgXHRcdGxheWVyLl9wcm9qZWN0KCk7XG4gIFx0XHRsYXllci5fdXBkYXRlKCk7XG4gIFx0XHQvLyBUaGUgcmVkcmF3IHdpbGwgZXh0ZW5kIHRoZSByZWRyYXcgYm91bmRzXG4gIFx0XHQvLyB3aXRoIHRoZSBuZXcgcGl4ZWwgYm91bmRzLlxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVTdHlsZTogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0aGlzLl91cGRhdGVEYXNoQXJyYXkobGF5ZXIpO1xuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fSxcblxuICBcdF91cGRhdGVEYXNoQXJyYXk6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKHR5cGVvZiBsYXllci5vcHRpb25zLmRhc2hBcnJheSA9PT0gJ3N0cmluZycpIHtcbiAgXHRcdFx0dmFyIHBhcnRzID0gbGF5ZXIub3B0aW9ucy5kYXNoQXJyYXkuc3BsaXQoL1ssIF0rLyksXG4gIFx0XHRcdCAgICBkYXNoQXJyYXkgPSBbXSxcbiAgXHRcdFx0ICAgIGRhc2hWYWx1ZSxcbiAgXHRcdFx0ICAgIGk7XG4gIFx0XHRcdGZvciAoaSA9IDA7IGkgPCBwYXJ0cy5sZW5ndGg7IGkrKykge1xuICBcdFx0XHRcdGRhc2hWYWx1ZSA9IE51bWJlcihwYXJ0c1tpXSk7XG4gIFx0XHRcdFx0Ly8gSWdub3JlIGRhc2ggYXJyYXkgY29udGFpbmluZyBpbnZhbGlkIGxlbmd0aHNcbiAgXHRcdFx0XHRpZiAoaXNOYU4oZGFzaFZhbHVlKSkgeyByZXR1cm47IH1cbiAgXHRcdFx0XHRkYXNoQXJyYXkucHVzaChkYXNoVmFsdWUpO1xuICBcdFx0XHR9XG4gIFx0XHRcdGxheWVyLm9wdGlvbnMuX2Rhc2hBcnJheSA9IGRhc2hBcnJheTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdGxheWVyLm9wdGlvbnMuX2Rhc2hBcnJheSA9IGxheWVyLm9wdGlvbnMuZGFzaEFycmF5O1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVxdWVzdFJlZHJhdzogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRpZiAoIXRoaXMuX21hcCkgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fZXh0ZW5kUmVkcmF3Qm91bmRzKGxheWVyKTtcbiAgXHRcdHRoaXMuX3JlZHJhd1JlcXVlc3QgPSB0aGlzLl9yZWRyYXdSZXF1ZXN0IHx8IHJlcXVlc3RBbmltRnJhbWUodGhpcy5fcmVkcmF3LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X2V4dGVuZFJlZHJhd0JvdW5kczogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRpZiAobGF5ZXIuX3B4Qm91bmRzKSB7XG4gIFx0XHRcdHZhciBwYWRkaW5nID0gKGxheWVyLm9wdGlvbnMud2VpZ2h0IHx8IDApICsgMTtcbiAgXHRcdFx0dGhpcy5fcmVkcmF3Qm91bmRzID0gdGhpcy5fcmVkcmF3Qm91bmRzIHx8IG5ldyBCb3VuZHMoKTtcbiAgXHRcdFx0dGhpcy5fcmVkcmF3Qm91bmRzLmV4dGVuZChsYXllci5fcHhCb3VuZHMubWluLnN1YnRyYWN0KFtwYWRkaW5nLCBwYWRkaW5nXSkpO1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMuZXh0ZW5kKGxheWVyLl9weEJvdW5kcy5tYXguYWRkKFtwYWRkaW5nLCBwYWRkaW5nXSkpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfcmVkcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZWRyYXdSZXF1ZXN0ID0gbnVsbDtcblxuICBcdFx0aWYgKHRoaXMuX3JlZHJhd0JvdW5kcykge1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMubWluLl9mbG9vcigpO1xuICBcdFx0XHR0aGlzLl9yZWRyYXdCb3VuZHMubWF4Ll9jZWlsKCk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2NsZWFyKCk7IC8vIGNsZWFyIGxheWVycyBpbiByZWRyYXcgYm91bmRzXG4gIFx0XHR0aGlzLl9kcmF3KCk7IC8vIGRyYXcgbGF5ZXJzXG5cbiAgXHRcdHRoaXMuX3JlZHJhd0JvdW5kcyA9IG51bGw7XG4gIFx0fSxcblxuICBcdF9jbGVhcjogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGJvdW5kcyA9IHRoaXMuX3JlZHJhd0JvdW5kcztcbiAgXHRcdGlmIChib3VuZHMpIHtcbiAgXHRcdFx0dmFyIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xuICBcdFx0XHR0aGlzLl9jdHguY2xlYXJSZWN0KGJvdW5kcy5taW4ueCwgYm91bmRzLm1pbi55LCBzaXplLngsIHNpemUueSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9jdHguc2F2ZSgpO1xuICBcdFx0XHR0aGlzLl9jdHguc2V0VHJhbnNmb3JtKDEsIDAsIDAsIDEsIDAsIDApO1xuICBcdFx0XHR0aGlzLl9jdHguY2xlYXJSZWN0KDAsIDAsIHRoaXMuX2NvbnRhaW5lci53aWR0aCwgdGhpcy5fY29udGFpbmVyLmhlaWdodCk7XG4gIFx0XHRcdHRoaXMuX2N0eC5yZXN0b3JlKCk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9kcmF3OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbGF5ZXIsIGJvdW5kcyA9IHRoaXMuX3JlZHJhd0JvdW5kcztcbiAgXHRcdHRoaXMuX2N0eC5zYXZlKCk7XG4gIFx0XHRpZiAoYm91bmRzKSB7XG4gIFx0XHRcdHZhciBzaXplID0gYm91bmRzLmdldFNpemUoKTtcbiAgXHRcdFx0dGhpcy5fY3R4LmJlZ2luUGF0aCgpO1xuICBcdFx0XHR0aGlzLl9jdHgucmVjdChib3VuZHMubWluLngsIGJvdW5kcy5taW4ueSwgc2l6ZS54LCBzaXplLnkpO1xuICBcdFx0XHR0aGlzLl9jdHguY2xpcCgpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9kcmF3aW5nID0gdHJ1ZTtcblxuICBcdFx0Zm9yICh2YXIgb3JkZXIgPSB0aGlzLl9kcmF3Rmlyc3Q7IG9yZGVyOyBvcmRlciA9IG9yZGVyLm5leHQpIHtcbiAgXHRcdFx0bGF5ZXIgPSBvcmRlci5sYXllcjtcbiAgXHRcdFx0aWYgKCFib3VuZHMgfHwgKGxheWVyLl9weEJvdW5kcyAmJiBsYXllci5fcHhCb3VuZHMuaW50ZXJzZWN0cyhib3VuZHMpKSkge1xuICBcdFx0XHRcdGxheWVyLl91cGRhdGVQYXRoKCk7XG4gIFx0XHRcdH1cbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fZHJhd2luZyA9IGZhbHNlO1xuXG4gIFx0XHR0aGlzLl9jdHgucmVzdG9yZSgpOyAgLy8gUmVzdG9yZSBzdGF0ZSBiZWZvcmUgY2xpcHBpbmcuXG4gIFx0fSxcblxuICBcdF91cGRhdGVQb2x5OiBmdW5jdGlvbiAobGF5ZXIsIGNsb3NlZCkge1xuICBcdFx0aWYgKCF0aGlzLl9kcmF3aW5nKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgaSwgaiwgbGVuMiwgcCxcbiAgXHRcdCAgICBwYXJ0cyA9IGxheWVyLl9wYXJ0cyxcbiAgXHRcdCAgICBsZW4gPSBwYXJ0cy5sZW5ndGgsXG4gIFx0XHQgICAgY3R4ID0gdGhpcy5fY3R4O1xuXG4gIFx0XHRpZiAoIWxlbikgeyByZXR1cm47IH1cblxuICBcdFx0Y3R4LmJlZ2luUGF0aCgpO1xuXG4gIFx0XHRmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0Zm9yIChqID0gMCwgbGVuMiA9IHBhcnRzW2ldLmxlbmd0aDsgaiA8IGxlbjI7IGorKykge1xuICBcdFx0XHRcdHAgPSBwYXJ0c1tpXVtqXTtcbiAgXHRcdFx0XHRjdHhbaiA/ICdsaW5lVG8nIDogJ21vdmVUbyddKHAueCwgcC55KTtcbiAgXHRcdFx0fVxuICBcdFx0XHRpZiAoY2xvc2VkKSB7XG4gIFx0XHRcdFx0Y3R4LmNsb3NlUGF0aCgpO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2ZpbGxTdHJva2UoY3R4LCBsYXllcik7XG5cbiAgXHRcdC8vIFRPRE8gb3B0aW1pemF0aW9uOiAxIGZpbGwvc3Ryb2tlIGZvciBhbGwgZmVhdHVyZXMgd2l0aCBlcXVhbCBzdHlsZSBpbnN0ZWFkIG9mIDEgZm9yIGVhY2ggZmVhdHVyZVxuICBcdH0sXG5cbiAgXHRfdXBkYXRlQ2lyY2xlOiBmdW5jdGlvbiAobGF5ZXIpIHtcblxuICBcdFx0aWYgKCF0aGlzLl9kcmF3aW5nIHx8IGxheWVyLl9lbXB0eSgpKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgcCA9IGxheWVyLl9wb2ludCxcbiAgXHRcdCAgICBjdHggPSB0aGlzLl9jdHgsXG4gIFx0XHQgICAgciA9IE1hdGgubWF4KE1hdGgucm91bmQobGF5ZXIuX3JhZGl1cyksIDEpLFxuICBcdFx0ICAgIHMgPSAoTWF0aC5tYXgoTWF0aC5yb3VuZChsYXllci5fcmFkaXVzWSksIDEpIHx8IHIpIC8gcjtcblxuICBcdFx0aWYgKHMgIT09IDEpIHtcbiAgXHRcdFx0Y3R4LnNhdmUoKTtcbiAgXHRcdFx0Y3R4LnNjYWxlKDEsIHMpO1xuICBcdFx0fVxuXG4gIFx0XHRjdHguYmVnaW5QYXRoKCk7XG4gIFx0XHRjdHguYXJjKHAueCwgcC55IC8gcywgciwgMCwgTWF0aC5QSSAqIDIsIGZhbHNlKTtcblxuICBcdFx0aWYgKHMgIT09IDEpIHtcbiAgXHRcdFx0Y3R4LnJlc3RvcmUoKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fZmlsbFN0cm9rZShjdHgsIGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X2ZpbGxTdHJva2U6IGZ1bmN0aW9uIChjdHgsIGxheWVyKSB7XG4gIFx0XHR2YXIgb3B0aW9ucyA9IGxheWVyLm9wdGlvbnM7XG5cbiAgXHRcdGlmIChvcHRpb25zLmZpbGwpIHtcbiAgXHRcdFx0Y3R4Lmdsb2JhbEFscGhhID0gb3B0aW9ucy5maWxsT3BhY2l0eTtcbiAgXHRcdFx0Y3R4LmZpbGxTdHlsZSA9IG9wdGlvbnMuZmlsbENvbG9yIHx8IG9wdGlvbnMuY29sb3I7XG4gIFx0XHRcdGN0eC5maWxsKG9wdGlvbnMuZmlsbFJ1bGUgfHwgJ2V2ZW5vZGQnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuc3Ryb2tlICYmIG9wdGlvbnMud2VpZ2h0ICE9PSAwKSB7XG4gIFx0XHRcdGlmIChjdHguc2V0TGluZURhc2gpIHtcbiAgXHRcdFx0XHRjdHguc2V0TGluZURhc2gobGF5ZXIub3B0aW9ucyAmJiBsYXllci5vcHRpb25zLl9kYXNoQXJyYXkgfHwgW10pO1xuICBcdFx0XHR9XG4gIFx0XHRcdGN0eC5nbG9iYWxBbHBoYSA9IG9wdGlvbnMub3BhY2l0eTtcbiAgXHRcdFx0Y3R4LmxpbmVXaWR0aCA9IG9wdGlvbnMud2VpZ2h0O1xuICBcdFx0XHRjdHguc3Ryb2tlU3R5bGUgPSBvcHRpb25zLmNvbG9yO1xuICBcdFx0XHRjdHgubGluZUNhcCA9IG9wdGlvbnMubGluZUNhcDtcbiAgXHRcdFx0Y3R4LmxpbmVKb2luID0gb3B0aW9ucy5saW5lSm9pbjtcbiAgXHRcdFx0Y3R4LnN0cm9rZSgpO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHQvLyBDYW52YXMgb2J2aW91c2x5IGRvZXNuJ3QgaGF2ZSBtb3VzZSBldmVudHMgZm9yIGluZGl2aWR1YWwgZHJhd24gb2JqZWN0cyxcbiAgXHQvLyBzbyB3ZSBlbXVsYXRlIHRoYXQgYnkgY2FsY3VsYXRpbmcgd2hhdCdzIHVuZGVyIHRoZSBtb3VzZSBvbiBtb3VzZW1vdmUvY2xpY2sgbWFudWFsbHlcblxuICBcdF9vbkNsaWNrOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIHBvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0xheWVyUG9pbnQoZSksIGxheWVyLCBjbGlja2VkTGF5ZXI7XG5cbiAgXHRcdGZvciAodmFyIG9yZGVyID0gdGhpcy5fZHJhd0ZpcnN0OyBvcmRlcjsgb3JkZXIgPSBvcmRlci5uZXh0KSB7XG4gIFx0XHRcdGxheWVyID0gb3JkZXIubGF5ZXI7XG4gIFx0XHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlICYmIGxheWVyLl9jb250YWluc1BvaW50KHBvaW50KSkge1xuICBcdFx0XHRcdGlmICghKGUudHlwZSA9PT0gJ2NsaWNrJyB8fCBlLnR5cGUgPT09ICdwcmVjbGljaycpIHx8ICF0aGlzLl9tYXAuX2RyYWdnYWJsZU1vdmVkKGxheWVyKSkge1xuICBcdFx0XHRcdFx0Y2xpY2tlZExheWVyID0gbGF5ZXI7XG4gIFx0XHRcdFx0fVxuICBcdFx0XHR9XG4gIFx0XHR9XG4gIFx0XHR0aGlzLl9maXJlRXZlbnQoY2xpY2tlZExheWVyID8gW2NsaWNrZWRMYXllcl0gOiBmYWxzZSwgZSk7XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghdGhpcy5fbWFwIHx8IHRoaXMuX21hcC5kcmFnZ2luZy5tb3ZpbmcoKSB8fCB0aGlzLl9tYXAuX2FuaW1hdGluZ1pvb20pIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBwb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9MYXllclBvaW50KGUpO1xuICBcdFx0dGhpcy5faGFuZGxlTW91c2VIb3ZlcihlLCBwb2ludCk7XG4gIFx0fSxcblxuXG4gIFx0X2hhbmRsZU1vdXNlT3V0OiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIGxheWVyID0gdGhpcy5faG92ZXJlZExheWVyO1xuICBcdFx0aWYgKGxheWVyKSB7XG4gIFx0XHRcdC8vIGlmIHdlJ3JlIGxlYXZpbmcgdGhlIGxheWVyLCBmaXJlIG1vdXNlb3V0XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcbiAgXHRcdFx0dGhpcy5fZmlyZUV2ZW50KFtsYXllcl0sIGUsICdtb3VzZW91dCcpO1xuICBcdFx0XHR0aGlzLl9ob3ZlcmVkTGF5ZXIgPSBudWxsO1xuICBcdFx0XHR0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkID0gZmFsc2U7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9oYW5kbGVNb3VzZUhvdmVyOiBmdW5jdGlvbiAoZSwgcG9pbnQpIHtcbiAgXHRcdGlmICh0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkKSB7XG4gIFx0XHRcdHJldHVybjtcbiAgXHRcdH1cblxuICBcdFx0dmFyIGxheWVyLCBjYW5kaWRhdGVIb3ZlcmVkTGF5ZXI7XG5cbiAgXHRcdGZvciAodmFyIG9yZGVyID0gdGhpcy5fZHJhd0ZpcnN0OyBvcmRlcjsgb3JkZXIgPSBvcmRlci5uZXh0KSB7XG4gIFx0XHRcdGxheWVyID0gb3JkZXIubGF5ZXI7XG4gIFx0XHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlICYmIGxheWVyLl9jb250YWluc1BvaW50KHBvaW50KSkge1xuICBcdFx0XHRcdGNhbmRpZGF0ZUhvdmVyZWRMYXllciA9IGxheWVyO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdGlmIChjYW5kaWRhdGVIb3ZlcmVkTGF5ZXIgIT09IHRoaXMuX2hvdmVyZWRMYXllcikge1xuICBcdFx0XHR0aGlzLl9oYW5kbGVNb3VzZU91dChlKTtcblxuICBcdFx0XHRpZiAoY2FuZGlkYXRlSG92ZXJlZExheWVyKSB7XG4gIFx0XHRcdFx0YWRkQ2xhc3ModGhpcy5fY29udGFpbmVyLCAnbGVhZmxldC1pbnRlcmFjdGl2ZScpOyAvLyBjaGFuZ2UgY3Vyc29yXG4gIFx0XHRcdFx0dGhpcy5fZmlyZUV2ZW50KFtjYW5kaWRhdGVIb3ZlcmVkTGF5ZXJdLCBlLCAnbW91c2VvdmVyJyk7XG4gIFx0XHRcdFx0dGhpcy5faG92ZXJlZExheWVyID0gY2FuZGlkYXRlSG92ZXJlZExheWVyO1xuICBcdFx0XHR9XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX2ZpcmVFdmVudCh0aGlzLl9ob3ZlcmVkTGF5ZXIgPyBbdGhpcy5faG92ZXJlZExheWVyXSA6IGZhbHNlLCBlKTtcblxuICBcdFx0dGhpcy5fbW91c2VIb3ZlclRocm90dGxlZCA9IHRydWU7XG4gIFx0XHRzZXRUaW1lb3V0KGJpbmQoZnVuY3Rpb24gKCkge1xuICBcdFx0XHR0aGlzLl9tb3VzZUhvdmVyVGhyb3R0bGVkID0gZmFsc2U7XG4gIFx0XHR9LCB0aGlzKSwgMzIpO1xuICBcdH0sXG5cbiAgXHRfZmlyZUV2ZW50OiBmdW5jdGlvbiAobGF5ZXJzLCBlLCB0eXBlKSB7XG4gIFx0XHR0aGlzLl9tYXAuX2ZpcmVET01FdmVudChlLCB0eXBlIHx8IGUudHlwZSwgbGF5ZXJzKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgb3JkZXIgPSBsYXllci5fb3JkZXI7XG5cbiAgXHRcdGlmICghb3JkZXIpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBuZXh0ID0gb3JkZXIubmV4dDtcbiAgXHRcdHZhciBwcmV2ID0gb3JkZXIucHJldjtcblxuICBcdFx0aWYgKG5leHQpIHtcbiAgXHRcdFx0bmV4dC5wcmV2ID0gcHJldjtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdC8vIEFscmVhZHkgbGFzdFxuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG4gIFx0XHRpZiAocHJldikge1xuICBcdFx0XHRwcmV2Lm5leHQgPSBuZXh0O1xuICBcdFx0fSBlbHNlIGlmIChuZXh0KSB7XG4gIFx0XHRcdC8vIFVwZGF0ZSBmaXJzdCBlbnRyeSB1bmxlc3MgdGhpcyBpcyB0aGVcbiAgXHRcdFx0Ly8gc2luZ2xlIGVudHJ5XG4gIFx0XHRcdHRoaXMuX2RyYXdGaXJzdCA9IG5leHQ7XG4gIFx0XHR9XG5cbiAgXHRcdG9yZGVyLnByZXYgPSB0aGlzLl9kcmF3TGFzdDtcbiAgXHRcdHRoaXMuX2RyYXdMYXN0Lm5leHQgPSBvcmRlcjtcblxuICBcdFx0b3JkZXIubmV4dCA9IG51bGw7XG4gIFx0XHR0aGlzLl9kcmF3TGFzdCA9IG9yZGVyO1xuXG4gIFx0XHR0aGlzLl9yZXF1ZXN0UmVkcmF3KGxheWVyKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9CYWNrOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBvcmRlciA9IGxheWVyLl9vcmRlcjtcblxuICBcdFx0aWYgKCFvcmRlcikgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIG5leHQgPSBvcmRlci5uZXh0O1xuICBcdFx0dmFyIHByZXYgPSBvcmRlci5wcmV2O1xuXG4gIFx0XHRpZiAocHJldikge1xuICBcdFx0XHRwcmV2Lm5leHQgPSBuZXh0O1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0Ly8gQWxyZWFkeSBmaXJzdFxuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG4gIFx0XHRpZiAobmV4dCkge1xuICBcdFx0XHRuZXh0LnByZXYgPSBwcmV2O1xuICBcdFx0fSBlbHNlIGlmIChwcmV2KSB7XG4gIFx0XHRcdC8vIFVwZGF0ZSBsYXN0IGVudHJ5IHVubGVzcyB0aGlzIGlzIHRoZVxuICBcdFx0XHQvLyBzaW5nbGUgZW50cnlcbiAgXHRcdFx0dGhpcy5fZHJhd0xhc3QgPSBwcmV2O1xuICBcdFx0fVxuXG4gIFx0XHRvcmRlci5wcmV2ID0gbnVsbDtcblxuICBcdFx0b3JkZXIubmV4dCA9IHRoaXMuX2RyYXdGaXJzdDtcbiAgXHRcdHRoaXMuX2RyYXdGaXJzdC5wcmV2ID0gb3JkZXI7XG4gIFx0XHR0aGlzLl9kcmF3Rmlyc3QgPSBvcmRlcjtcblxuICBcdFx0dGhpcy5fcmVxdWVzdFJlZHJhdyhsYXllcik7XG4gIFx0fVxuICB9KTtcblxuICAvLyBAZmFjdG9yeSBMLmNhbnZhcyhvcHRpb25zPzogUmVuZGVyZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIENhbnZhcyByZW5kZXJlciB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBjYW52YXMob3B0aW9ucykge1xuICBcdHJldHVybiBCcm93c2VyLmNhbnZhcyA/IG5ldyBDYW52YXMob3B0aW9ucykgOiBudWxsO1xuICB9XG5cbiAgLypcbiAgICogVGhhbmtzIHRvIERtaXRyeSBCYXJhbm92c2t5IGFuZCBoaXMgUmFwaGFlbCBsaWJyYXJ5IGZvciBpbnNwaXJhdGlvbiFcbiAgICovXG5cblxuICB2YXIgdm1sQ3JlYXRlID0gKGZ1bmN0aW9uICgpIHtcbiAgXHR0cnkge1xuICBcdFx0ZG9jdW1lbnQubmFtZXNwYWNlcy5hZGQoJ2x2bWwnLCAndXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwnKTtcbiAgXHRcdHJldHVybiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0XHRyZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnPGx2bWw6JyArIG5hbWUgKyAnIGNsYXNzPVwibHZtbFwiPicpO1xuICBcdFx0fTtcbiAgXHR9IGNhdGNoIChlKSB7XG4gIFx0XHQvLyBEbyBub3QgcmV0dXJuIGZuIGZyb20gY2F0Y2ggYmxvY2sgc28gYGVgIGNhbiBiZSBnYXJiYWdlIGNvbGxlY3RlZFxuICBcdFx0Ly8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFmbGV0L0xlYWZsZXQvcHVsbC83Mjc5XG4gIFx0fVxuICBcdHJldHVybiBmdW5jdGlvbiAobmFtZSkge1xuICBcdFx0cmV0dXJuIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJzwnICsgbmFtZSArICcgeG1sbnM9XCJ1cm46c2NoZW1hcy1taWNyb3NvZnQuY29tOnZtbFwiIGNsYXNzPVwibHZtbFwiPicpO1xuICBcdH07XG4gIH0pKCk7XG5cblxuICAvKlxuICAgKiBAY2xhc3MgU1ZHXG4gICAqXG4gICAqXG4gICAqIFZNTCB3YXMgZGVwcmVjYXRlZCBpbiAyMDEyLCB3aGljaCBtZWFucyBWTUwgZnVuY3Rpb25hbGl0eSBleGlzdHMgb25seSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICogd2l0aCBvbGQgdmVyc2lvbnMgb2YgSW50ZXJuZXQgRXhwbG9yZXIuXG4gICAqL1xuXG4gIC8vIG1peGluIHRvIHJlZGVmaW5lIHNvbWUgU1ZHIG1ldGhvZHMgdG8gaGFuZGxlIFZNTCBzeW50YXggd2hpY2ggaXMgc2ltaWxhciBidXQgd2l0aCBzb21lIGRpZmZlcmVuY2VzXG4gIHZhciB2bWxNaXhpbiA9IHtcblxuICBcdF9pbml0Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9jb250YWluZXIgPSBjcmVhdGUkMSgnZGl2JywgJ2xlYWZsZXQtdm1sLWNvbnRhaW5lcicpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwLl9hbmltYXRpbmdab29tKSB7IHJldHVybjsgfVxuICBcdFx0UmVuZGVyZXIucHJvdG90eXBlLl91cGRhdGUuY2FsbCh0aGlzKTtcbiAgXHRcdHRoaXMuZmlyZSgndXBkYXRlJyk7XG4gIFx0fSxcblxuICBcdF9pbml0UGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR2YXIgY29udGFpbmVyID0gbGF5ZXIuX2NvbnRhaW5lciA9IHZtbENyZWF0ZSgnc2hhcGUnKTtcblxuICBcdFx0YWRkQ2xhc3MoY29udGFpbmVyLCAnbGVhZmxldC12bWwtc2hhcGUgJyArICh0aGlzLm9wdGlvbnMuY2xhc3NOYW1lIHx8ICcnKSk7XG5cbiAgXHRcdGNvbnRhaW5lci5jb29yZHNpemUgPSAnMSAxJztcblxuICBcdFx0bGF5ZXIuX3BhdGggPSB2bWxDcmVhdGUoJ3BhdGgnKTtcbiAgXHRcdGNvbnRhaW5lci5hcHBlbmRDaGlsZChsYXllci5fcGF0aCk7XG5cbiAgXHRcdHRoaXMuX3VwZGF0ZVN0eWxlKGxheWVyKTtcbiAgXHRcdHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildID0gbGF5ZXI7XG4gIFx0fSxcblxuICBcdF9hZGRQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBjb250YWluZXIgPSBsYXllci5fY29udGFpbmVyO1xuICBcdFx0dGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKGNvbnRhaW5lcik7XG5cbiAgXHRcdGlmIChsYXllci5vcHRpb25zLmludGVyYWN0aXZlKSB7XG4gIFx0XHRcdGxheWVyLmFkZEludGVyYWN0aXZlVGFyZ2V0KGNvbnRhaW5lcik7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9yZW1vdmVQYXRoOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHZhciBjb250YWluZXIgPSBsYXllci5fY29udGFpbmVyO1xuICBcdFx0cmVtb3ZlKGNvbnRhaW5lcik7XG4gIFx0XHRsYXllci5yZW1vdmVJbnRlcmFjdGl2ZVRhcmdldChjb250YWluZXIpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlU3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHN0cm9rZSA9IGxheWVyLl9zdHJva2UsXG4gIFx0XHQgICAgZmlsbCA9IGxheWVyLl9maWxsLFxuICBcdFx0ICAgIG9wdGlvbnMgPSBsYXllci5vcHRpb25zLFxuICBcdFx0ICAgIGNvbnRhaW5lciA9IGxheWVyLl9jb250YWluZXI7XG5cbiAgXHRcdGNvbnRhaW5lci5zdHJva2VkID0gISFvcHRpb25zLnN0cm9rZTtcbiAgXHRcdGNvbnRhaW5lci5maWxsZWQgPSAhIW9wdGlvbnMuZmlsbDtcblxuICBcdFx0aWYgKG9wdGlvbnMuc3Ryb2tlKSB7XG4gIFx0XHRcdGlmICghc3Ryb2tlKSB7XG4gIFx0XHRcdFx0c3Ryb2tlID0gbGF5ZXIuX3N0cm9rZSA9IHZtbENyZWF0ZSgnc3Ryb2tlJyk7XG4gIFx0XHRcdH1cbiAgXHRcdFx0Y29udGFpbmVyLmFwcGVuZENoaWxkKHN0cm9rZSk7XG4gIFx0XHRcdHN0cm9rZS53ZWlnaHQgPSBvcHRpb25zLndlaWdodCArICdweCc7XG4gIFx0XHRcdHN0cm9rZS5jb2xvciA9IG9wdGlvbnMuY29sb3I7XG4gIFx0XHRcdHN0cm9rZS5vcGFjaXR5ID0gb3B0aW9ucy5vcGFjaXR5O1xuXG4gIFx0XHRcdGlmIChvcHRpb25zLmRhc2hBcnJheSkge1xuICBcdFx0XHRcdHN0cm9rZS5kYXNoU3R5bGUgPSBpc0FycmF5KG9wdGlvbnMuZGFzaEFycmF5KSA/XG4gIFx0XHRcdFx0ICAgIG9wdGlvbnMuZGFzaEFycmF5LmpvaW4oJyAnKSA6XG4gIFx0XHRcdFx0ICAgIG9wdGlvbnMuZGFzaEFycmF5LnJlcGxhY2UoLyggKiwgKikvZywgJyAnKTtcbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRzdHJva2UuZGFzaFN0eWxlID0gJyc7XG4gIFx0XHRcdH1cbiAgXHRcdFx0c3Ryb2tlLmVuZGNhcCA9IG9wdGlvbnMubGluZUNhcC5yZXBsYWNlKCdidXR0JywgJ2ZsYXQnKTtcbiAgXHRcdFx0c3Ryb2tlLmpvaW5zdHlsZSA9IG9wdGlvbnMubGluZUpvaW47XG5cbiAgXHRcdH0gZWxzZSBpZiAoc3Ryb2tlKSB7XG4gIFx0XHRcdGNvbnRhaW5lci5yZW1vdmVDaGlsZChzdHJva2UpO1xuICBcdFx0XHRsYXllci5fc3Ryb2tlID0gbnVsbDtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuZmlsbCkge1xuICBcdFx0XHRpZiAoIWZpbGwpIHtcbiAgXHRcdFx0XHRmaWxsID0gbGF5ZXIuX2ZpbGwgPSB2bWxDcmVhdGUoJ2ZpbGwnKTtcbiAgXHRcdFx0fVxuICBcdFx0XHRjb250YWluZXIuYXBwZW5kQ2hpbGQoZmlsbCk7XG4gIFx0XHRcdGZpbGwuY29sb3IgPSBvcHRpb25zLmZpbGxDb2xvciB8fCBvcHRpb25zLmNvbG9yO1xuICBcdFx0XHRmaWxsLm9wYWNpdHkgPSBvcHRpb25zLmZpbGxPcGFjaXR5O1xuXG4gIFx0XHR9IGVsc2UgaWYgKGZpbGwpIHtcbiAgXHRcdFx0Y29udGFpbmVyLnJlbW92ZUNoaWxkKGZpbGwpO1xuICBcdFx0XHRsYXllci5fZmlsbCA9IG51bGw7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVDaXJjbGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHAgPSBsYXllci5fcG9pbnQucm91bmQoKSxcbiAgXHRcdCAgICByID0gTWF0aC5yb3VuZChsYXllci5fcmFkaXVzKSxcbiAgXHRcdCAgICByMiA9IE1hdGgucm91bmQobGF5ZXIuX3JhZGl1c1kgfHwgcik7XG5cbiAgXHRcdHRoaXMuX3NldFBhdGgobGF5ZXIsIGxheWVyLl9lbXB0eSgpID8gJ00wIDAnIDpcbiAgXHRcdFx0J0FMICcgKyBwLnggKyAnLCcgKyBwLnkgKyAnICcgKyByICsgJywnICsgcjIgKyAnIDAsJyArICg2NTUzNSAqIDM2MCkpO1xuICBcdH0sXG5cbiAgXHRfc2V0UGF0aDogZnVuY3Rpb24gKGxheWVyLCBwYXRoKSB7XG4gIFx0XHRsYXllci5fcGF0aC52ID0gcGF0aDtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0b0Zyb250KGxheWVyLl9jb250YWluZXIpO1xuICBcdH0sXG5cbiAgXHRfYnJpbmdUb0JhY2s6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dG9CYWNrKGxheWVyLl9jb250YWluZXIpO1xuICBcdH1cbiAgfTtcblxuICB2YXIgY3JlYXRlID0gQnJvd3Nlci52bWwgPyB2bWxDcmVhdGUgOiBzdmdDcmVhdGU7XG5cbiAgLypcbiAgICogQGNsYXNzIFNWR1xuICAgKiBAaW5oZXJpdHMgUmVuZGVyZXJcbiAgICogQGFrYSBMLlNWR1xuICAgKlxuICAgKiBBbGxvd3MgdmVjdG9yIGxheWVycyB0byBiZSBkaXNwbGF5ZWQgd2l0aCBbU1ZHXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9TVkcpLlxuICAgKiBJbmhlcml0cyBgUmVuZGVyZXJgLlxuICAgKlxuICAgKiBEdWUgdG8gW3RlY2huaWNhbCBsaW1pdGF0aW9uc10oaHR0cHM6Ly9jYW5pdXNlLmNvbS9zdmcpLCBTVkcgaXMgbm90XG4gICAqIGF2YWlsYWJsZSBpbiBhbGwgd2ViIGJyb3dzZXJzLCBub3RhYmx5IEFuZHJvaWQgMi54IGFuZCAzLnguXG4gICAqXG4gICAqIEFsdGhvdWdoIFNWRyBpcyBub3QgYXZhaWxhYmxlIG9uIElFNyBhbmQgSUU4LCB0aGVzZSBicm93c2VycyBzdXBwb3J0XG4gICAqIFtWTUxdKGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1ZlY3Rvcl9NYXJrdXBfTGFuZ3VhZ2UpXG4gICAqIChhIG5vdyBkZXByZWNhdGVkIHRlY2hub2xvZ3kpLCBhbmQgdGhlIFNWRyByZW5kZXJlciB3aWxsIGZhbGwgYmFjayB0byBWTUwgaW5cbiAgICogdGhpcyBjYXNlLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBVc2UgU1ZHIGJ5IGRlZmF1bHQgZm9yIGFsbCBwYXRocyBpbiB0aGUgbWFwOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbWFwID0gTC5tYXAoJ21hcCcsIHtcbiAgICogXHRyZW5kZXJlcjogTC5zdmcoKVxuICAgKiB9KTtcbiAgICogYGBgXG4gICAqXG4gICAqIFVzZSBhIFNWRyByZW5kZXJlciB3aXRoIGV4dHJhIHBhZGRpbmcgZm9yIHNwZWNpZmljIHZlY3RvciBnZW9tZXRyaWVzOlxuICAgKlxuICAgKiBgYGBqc1xuICAgKiB2YXIgbWFwID0gTC5tYXAoJ21hcCcpO1xuICAgKiB2YXIgbXlSZW5kZXJlciA9IEwuc3ZnKHsgcGFkZGluZzogMC41IH0pO1xuICAgKiB2YXIgbGluZSA9IEwucG9seWxpbmUoIGNvb3JkaW5hdGVzLCB7IHJlbmRlcmVyOiBteVJlbmRlcmVyIH0gKTtcbiAgICogdmFyIGNpcmNsZSA9IEwuY2lyY2xlKCBjZW50ZXIsIHsgcmVuZGVyZXI6IG15UmVuZGVyZXIgfSApO1xuICAgKiBgYGBcbiAgICovXG5cbiAgdmFyIFNWRyA9IFJlbmRlcmVyLmV4dGVuZCh7XG5cbiAgXHRfaW5pdENvbnRhaW5lcjogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fY29udGFpbmVyID0gY3JlYXRlKCdzdmcnKTtcblxuICBcdFx0Ly8gbWFrZXMgaXQgcG9zc2libGUgdG8gY2xpY2sgdGhyb3VnaCBzdmcgcm9vdDsgd2UnbGwgcmVzZXQgaXQgYmFjayBpbiBpbmRpdmlkdWFsIHBhdGhzXG4gIFx0XHR0aGlzLl9jb250YWluZXIuc2V0QXR0cmlidXRlKCdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG5cbiAgXHRcdHRoaXMuX3Jvb3RHcm91cCA9IGNyZWF0ZSgnZycpO1xuICBcdFx0dGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuX3Jvb3RHcm91cCk7XG4gIFx0fSxcblxuICBcdF9kZXN0cm95Q29udGFpbmVyOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZW1vdmUodGhpcy5fY29udGFpbmVyKTtcbiAgXHRcdG9mZih0aGlzLl9jb250YWluZXIpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2NvbnRhaW5lcjtcbiAgXHRcdGRlbGV0ZSB0aGlzLl9yb290R3JvdXA7XG4gIFx0XHRkZWxldGUgdGhpcy5fc3ZnU2l6ZTtcbiAgXHR9LFxuXG4gIFx0X3VwZGF0ZTogZnVuY3Rpb24gKCkge1xuICBcdFx0aWYgKHRoaXMuX21hcC5fYW5pbWF0aW5nWm9vbSAmJiB0aGlzLl9ib3VuZHMpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdFJlbmRlcmVyLnByb3RvdHlwZS5fdXBkYXRlLmNhbGwodGhpcyk7XG5cbiAgXHRcdHZhciBiID0gdGhpcy5fYm91bmRzLFxuICBcdFx0ICAgIHNpemUgPSBiLmdldFNpemUoKSxcbiAgXHRcdCAgICBjb250YWluZXIgPSB0aGlzLl9jb250YWluZXI7XG5cbiAgXHRcdC8vIHNldCBzaXplIG9mIHN2Zy1jb250YWluZXIgaWYgY2hhbmdlZFxuICBcdFx0aWYgKCF0aGlzLl9zdmdTaXplIHx8ICF0aGlzLl9zdmdTaXplLmVxdWFscyhzaXplKSkge1xuICBcdFx0XHR0aGlzLl9zdmdTaXplID0gc2l6ZTtcbiAgXHRcdFx0Y29udGFpbmVyLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCBzaXplLngpO1xuICBcdFx0XHRjb250YWluZXIuc2V0QXR0cmlidXRlKCdoZWlnaHQnLCBzaXplLnkpO1xuICBcdFx0fVxuXG4gIFx0XHQvLyBtb3ZlbWVudDogdXBkYXRlIGNvbnRhaW5lciB2aWV3Qm94IHNvIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBjaGFuZ2UgY29vcmRpbmF0ZXMgb2YgaW5kaXZpZHVhbCBsYXllcnNcbiAgXHRcdHNldFBvc2l0aW9uKGNvbnRhaW5lciwgYi5taW4pO1xuICBcdFx0Y29udGFpbmVyLnNldEF0dHJpYnV0ZSgndmlld0JveCcsIFtiLm1pbi54LCBiLm1pbi55LCBzaXplLngsIHNpemUueV0uam9pbignICcpKTtcblxuICBcdFx0dGhpcy5maXJlKCd1cGRhdGUnKTtcbiAgXHR9LFxuXG4gIFx0Ly8gbWV0aG9kcyBiZWxvdyBhcmUgY2FsbGVkIGJ5IHZlY3RvciBsYXllcnMgaW1wbGVtZW50YXRpb25zXG5cbiAgXHRfaW5pdFBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHBhdGggPSBsYXllci5fcGF0aCA9IGNyZWF0ZSgncGF0aCcpO1xuXG4gIFx0XHQvLyBAbmFtZXNwYWNlIFBhdGhcbiAgXHRcdC8vIEBvcHRpb24gY2xhc3NOYW1lOiBTdHJpbmcgPSBudWxsXG4gIFx0XHQvLyBDdXN0b20gY2xhc3MgbmFtZSBzZXQgb24gYW4gZWxlbWVudC4gT25seSBmb3IgU1ZHIHJlbmRlcmVyLlxuICBcdFx0aWYgKGxheWVyLm9wdGlvbnMuY2xhc3NOYW1lKSB7XG4gIFx0XHRcdGFkZENsYXNzKHBhdGgsIGxheWVyLm9wdGlvbnMuY2xhc3NOYW1lKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKGxheWVyLm9wdGlvbnMuaW50ZXJhY3RpdmUpIHtcbiAgXHRcdFx0YWRkQ2xhc3MocGF0aCwgJ2xlYWZsZXQtaW50ZXJhY3RpdmUnKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fdXBkYXRlU3R5bGUobGF5ZXIpO1xuICBcdFx0dGhpcy5fbGF5ZXJzW3N0YW1wKGxheWVyKV0gPSBsYXllcjtcbiAgXHR9LFxuXG4gIFx0X2FkZFBhdGg6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0aWYgKCF0aGlzLl9yb290R3JvdXApIHsgdGhpcy5faW5pdENvbnRhaW5lcigpOyB9XG4gIFx0XHR0aGlzLl9yb290R3JvdXAuYXBwZW5kQ2hpbGQobGF5ZXIuX3BhdGgpO1xuICBcdFx0bGF5ZXIuYWRkSW50ZXJhY3RpdmVUYXJnZXQobGF5ZXIuX3BhdGgpO1xuICBcdH0sXG5cbiAgXHRfcmVtb3ZlUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRyZW1vdmUobGF5ZXIuX3BhdGgpO1xuICBcdFx0bGF5ZXIucmVtb3ZlSW50ZXJhY3RpdmVUYXJnZXQobGF5ZXIuX3BhdGgpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX2xheWVyc1tzdGFtcChsYXllcildO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlUGF0aDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHRsYXllci5fcHJvamVjdCgpO1xuICBcdFx0bGF5ZXIuX3VwZGF0ZSgpO1xuICBcdH0sXG5cbiAgXHRfdXBkYXRlU3R5bGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHBhdGggPSBsYXllci5fcGF0aCxcbiAgXHRcdCAgICBvcHRpb25zID0gbGF5ZXIub3B0aW9ucztcblxuICBcdFx0aWYgKCFwYXRoKSB7IHJldHVybjsgfVxuXG4gIFx0XHRpZiAob3B0aW9ucy5zdHJva2UpIHtcbiAgXHRcdFx0cGF0aC5zZXRBdHRyaWJ1dGUoJ3N0cm9rZScsIG9wdGlvbnMuY29sb3IpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLW9wYWNpdHknLCBvcHRpb25zLm9wYWNpdHkpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLXdpZHRoJywgb3B0aW9ucy53ZWlnaHQpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWxpbmVjYXAnLCBvcHRpb25zLmxpbmVDYXApO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWxpbmVqb2luJywgb3B0aW9ucy5saW5lSm9pbik7XG5cbiAgXHRcdFx0aWYgKG9wdGlvbnMuZGFzaEFycmF5KSB7XG4gIFx0XHRcdFx0cGF0aC5zZXRBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknLCBvcHRpb25zLmRhc2hBcnJheSk7XG4gIFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0cGF0aC5yZW1vdmVBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknKTtcbiAgXHRcdFx0fVxuXG4gIFx0XHRcdGlmIChvcHRpb25zLmRhc2hPZmZzZXQpIHtcbiAgXHRcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWRhc2hvZmZzZXQnLCBvcHRpb25zLmRhc2hPZmZzZXQpO1xuICBcdFx0XHR9IGVsc2Uge1xuICBcdFx0XHRcdHBhdGgucmVtb3ZlQXR0cmlidXRlKCdzdHJva2UtZGFzaG9mZnNldCcpO1xuICBcdFx0XHR9XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnc3Ryb2tlJywgJ25vbmUnKTtcbiAgXHRcdH1cblxuICBcdFx0aWYgKG9wdGlvbnMuZmlsbCkge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsIG9wdGlvbnMuZmlsbENvbG9yIHx8IG9wdGlvbnMuY29sb3IpO1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbC1vcGFjaXR5Jywgb3B0aW9ucy5maWxsT3BhY2l0eSk7XG4gIFx0XHRcdHBhdGguc2V0QXR0cmlidXRlKCdmaWxsLXJ1bGUnLCBvcHRpb25zLmZpbGxSdWxlIHx8ICdldmVub2RkJyk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsICdub25lJyk7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF91cGRhdGVQb2x5OiBmdW5jdGlvbiAobGF5ZXIsIGNsb3NlZCkge1xuICBcdFx0dGhpcy5fc2V0UGF0aChsYXllciwgcG9pbnRzVG9QYXRoKGxheWVyLl9wYXJ0cywgY2xvc2VkKSk7XG4gIFx0fSxcblxuICBcdF91cGRhdGVDaXJjbGU6IGZ1bmN0aW9uIChsYXllcikge1xuICBcdFx0dmFyIHAgPSBsYXllci5fcG9pbnQsXG4gIFx0XHQgICAgciA9IE1hdGgubWF4KE1hdGgucm91bmQobGF5ZXIuX3JhZGl1cyksIDEpLFxuICBcdFx0ICAgIHIyID0gTWF0aC5tYXgoTWF0aC5yb3VuZChsYXllci5fcmFkaXVzWSksIDEpIHx8IHIsXG4gIFx0XHQgICAgYXJjID0gJ2EnICsgciArICcsJyArIHIyICsgJyAwIDEsMCAnO1xuXG4gIFx0XHQvLyBkcmF3aW5nIGEgY2lyY2xlIHdpdGggdHdvIGhhbGYtYXJjc1xuICBcdFx0dmFyIGQgPSBsYXllci5fZW1wdHkoKSA/ICdNMCAwJyA6XG4gIFx0XHRcdCdNJyArIChwLnggLSByKSArICcsJyArIHAueSArXG4gIFx0XHRcdGFyYyArIChyICogMikgKyAnLDAgJyArXG4gIFx0XHRcdGFyYyArICgtciAqIDIpICsgJywwICc7XG5cbiAgXHRcdHRoaXMuX3NldFBhdGgobGF5ZXIsIGQpO1xuICBcdH0sXG5cbiAgXHRfc2V0UGF0aDogZnVuY3Rpb24gKGxheWVyLCBwYXRoKSB7XG4gIFx0XHRsYXllci5fcGF0aC5zZXRBdHRyaWJ1dGUoJ2QnLCBwYXRoKTtcbiAgXHR9LFxuXG4gIFx0Ly8gU1ZHIGRvZXMgbm90IGhhdmUgdGhlIGNvbmNlcHQgb2YgekluZGV4IHNvIHdlIHJlc29ydCB0byBjaGFuZ2luZyB0aGUgRE9NIG9yZGVyIG9mIGVsZW1lbnRzXG4gIFx0X2JyaW5nVG9Gcm9udDogZnVuY3Rpb24gKGxheWVyKSB7XG4gIFx0XHR0b0Zyb250KGxheWVyLl9wYXRoKTtcbiAgXHR9LFxuXG4gIFx0X2JyaW5nVG9CYWNrOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdHRvQmFjayhsYXllci5fcGF0aCk7XG4gIFx0fVxuICB9KTtcblxuICBpZiAoQnJvd3Nlci52bWwpIHtcbiAgXHRTVkcuaW5jbHVkZSh2bWxNaXhpbik7XG4gIH1cblxuICAvLyBAbmFtZXNwYWNlIFNWR1xuICAvLyBAZmFjdG9yeSBMLnN2ZyhvcHRpb25zPzogUmVuZGVyZXIgb3B0aW9ucylcbiAgLy8gQ3JlYXRlcyBhIFNWRyByZW5kZXJlciB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLlxuICBmdW5jdGlvbiBzdmcob3B0aW9ucykge1xuICBcdHJldHVybiBCcm93c2VyLnN2ZyB8fCBCcm93c2VyLnZtbCA/IG5ldyBTVkcob3B0aW9ucykgOiBudWxsO1xuICB9XG5cbiAgTWFwLmluY2x1ZGUoe1xuICBcdC8vIEBuYW1lc3BhY2UgTWFwOyBAbWV0aG9kIGdldFJlbmRlcmVyKGxheWVyOiBQYXRoKTogUmVuZGVyZXJcbiAgXHQvLyBSZXR1cm5zIHRoZSBpbnN0YW5jZSBvZiBgUmVuZGVyZXJgIHRoYXQgc2hvdWxkIGJlIHVzZWQgdG8gcmVuZGVyIHRoZSBnaXZlblxuICBcdC8vIGBQYXRoYC4gSXQgd2lsbCBlbnN1cmUgdGhhdCB0aGUgYHJlbmRlcmVyYCBvcHRpb25zIG9mIHRoZSBtYXAgYW5kIHBhdGhzXG4gIFx0Ly8gYXJlIHJlc3BlY3RlZCwgYW5kIHRoYXQgdGhlIHJlbmRlcmVycyBkbyBleGlzdCBvbiB0aGUgbWFwLlxuICBcdGdldFJlbmRlcmVyOiBmdW5jdGlvbiAobGF5ZXIpIHtcbiAgXHRcdC8vIEBuYW1lc3BhY2UgUGF0aDsgQG9wdGlvbiByZW5kZXJlcjogUmVuZGVyZXJcbiAgXHRcdC8vIFVzZSB0aGlzIHNwZWNpZmljIGluc3RhbmNlIG9mIGBSZW5kZXJlcmAgZm9yIHRoaXMgcGF0aC4gVGFrZXNcbiAgXHRcdC8vIHByZWNlZGVuY2Ugb3ZlciB0aGUgbWFwJ3MgW2RlZmF1bHQgcmVuZGVyZXJdKCNtYXAtcmVuZGVyZXIpLlxuICBcdFx0dmFyIHJlbmRlcmVyID0gbGF5ZXIub3B0aW9ucy5yZW5kZXJlciB8fCB0aGlzLl9nZXRQYW5lUmVuZGVyZXIobGF5ZXIub3B0aW9ucy5wYW5lKSB8fCB0aGlzLm9wdGlvbnMucmVuZGVyZXIgfHwgdGhpcy5fcmVuZGVyZXI7XG5cbiAgXHRcdGlmICghcmVuZGVyZXIpIHtcbiAgXHRcdFx0cmVuZGVyZXIgPSB0aGlzLl9yZW5kZXJlciA9IHRoaXMuX2NyZWF0ZVJlbmRlcmVyKCk7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5oYXNMYXllcihyZW5kZXJlcikpIHtcbiAgXHRcdFx0dGhpcy5hZGRMYXllcihyZW5kZXJlcik7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gcmVuZGVyZXI7XG4gIFx0fSxcblxuICBcdF9nZXRQYW5lUmVuZGVyZXI6IGZ1bmN0aW9uIChuYW1lKSB7XG4gIFx0XHRpZiAobmFtZSA9PT0gJ292ZXJsYXlQYW5lJyB8fCBuYW1lID09PSB1bmRlZmluZWQpIHtcbiAgXHRcdFx0cmV0dXJuIGZhbHNlO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgcmVuZGVyZXIgPSB0aGlzLl9wYW5lUmVuZGVyZXJzW25hbWVdO1xuICBcdFx0aWYgKHJlbmRlcmVyID09PSB1bmRlZmluZWQpIHtcbiAgXHRcdFx0cmVuZGVyZXIgPSB0aGlzLl9jcmVhdGVSZW5kZXJlcih7cGFuZTogbmFtZX0pO1xuICBcdFx0XHR0aGlzLl9wYW5lUmVuZGVyZXJzW25hbWVdID0gcmVuZGVyZXI7XG4gIFx0XHR9XG4gIFx0XHRyZXR1cm4gcmVuZGVyZXI7XG4gIFx0fSxcblxuICBcdF9jcmVhdGVSZW5kZXJlcjogZnVuY3Rpb24gKG9wdGlvbnMpIHtcbiAgXHRcdC8vIEBuYW1lc3BhY2UgTWFwOyBAb3B0aW9uIHByZWZlckNhbnZhczogQm9vbGVhbiA9IGZhbHNlXG4gIFx0XHQvLyBXaGV0aGVyIGBQYXRoYHMgc2hvdWxkIGJlIHJlbmRlcmVkIG9uIGEgYENhbnZhc2AgcmVuZGVyZXIuXG4gIFx0XHQvLyBCeSBkZWZhdWx0LCBhbGwgYFBhdGhgcyBhcmUgcmVuZGVyZWQgaW4gYSBgU1ZHYCByZW5kZXJlci5cbiAgXHRcdHJldHVybiAodGhpcy5vcHRpb25zLnByZWZlckNhbnZhcyAmJiBjYW52YXMob3B0aW9ucykpIHx8IHN2ZyhvcHRpb25zKTtcbiAgXHR9XG4gIH0pO1xuXG4gIC8qXG4gICAqIEwuUmVjdGFuZ2xlIGV4dGVuZHMgUG9seWdvbiBhbmQgY3JlYXRlcyBhIHJlY3RhbmdsZSB3aGVuIHBhc3NlZCBhIExhdExuZ0JvdW5kcyBvYmplY3QuXG4gICAqL1xuXG4gIC8qXG4gICAqIEBjbGFzcyBSZWN0YW5nbGVcbiAgICogQGFrYSBMLlJlY3RhbmdsZVxuICAgKiBAaW5oZXJpdHMgUG9seWdvblxuICAgKlxuICAgKiBBIGNsYXNzIGZvciBkcmF3aW5nIHJlY3RhbmdsZSBvdmVybGF5cyBvbiBhIG1hcC4gRXh0ZW5kcyBgUG9seWdvbmAuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqXG4gICAqIGBgYGpzXG4gICAqIC8vIGRlZmluZSByZWN0YW5nbGUgZ2VvZ3JhcGhpY2FsIGJvdW5kc1xuICAgKiB2YXIgYm91bmRzID0gW1s1NC41NTkzMjIsIC01Ljc2NzgyMl0sIFs1Ni4xMjEwNjA0LCAtMy4wMjEyNDBdXTtcbiAgICpcbiAgICogLy8gY3JlYXRlIGFuIG9yYW5nZSByZWN0YW5nbGVcbiAgICogTC5yZWN0YW5nbGUoYm91bmRzLCB7Y29sb3I6IFwiI2ZmNzgwMFwiLCB3ZWlnaHQ6IDF9KS5hZGRUbyhtYXApO1xuICAgKlxuICAgKiAvLyB6b29tIHRoZSBtYXAgdG8gdGhlIHJlY3RhbmdsZSBib3VuZHNcbiAgICogbWFwLmZpdEJvdW5kcyhib3VuZHMpO1xuICAgKiBgYGBcbiAgICpcbiAgICovXG5cblxuICB2YXIgUmVjdGFuZ2xlID0gUG9seWdvbi5leHRlbmQoe1xuICBcdGluaXRpYWxpemU6IGZ1bmN0aW9uIChsYXRMbmdCb3VuZHMsIG9wdGlvbnMpIHtcbiAgXHRcdFBvbHlnb24ucHJvdG90eXBlLmluaXRpYWxpemUuY2FsbCh0aGlzLCB0aGlzLl9ib3VuZHNUb0xhdExuZ3MobGF0TG5nQm91bmRzKSwgb3B0aW9ucyk7XG4gIFx0fSxcblxuICBcdC8vIEBtZXRob2Qgc2V0Qm91bmRzKGxhdExuZ0JvdW5kczogTGF0TG5nQm91bmRzKTogdGhpc1xuICBcdC8vIFJlZHJhd3MgdGhlIHJlY3RhbmdsZSB3aXRoIHRoZSBwYXNzZWQgYm91bmRzLlxuICBcdHNldEJvdW5kczogZnVuY3Rpb24gKGxhdExuZ0JvdW5kcykge1xuICBcdFx0cmV0dXJuIHRoaXMuc2V0TGF0TG5ncyh0aGlzLl9ib3VuZHNUb0xhdExuZ3MobGF0TG5nQm91bmRzKSk7XG4gIFx0fSxcblxuICBcdF9ib3VuZHNUb0xhdExuZ3M6IGZ1bmN0aW9uIChsYXRMbmdCb3VuZHMpIHtcbiAgXHRcdGxhdExuZ0JvdW5kcyA9IHRvTGF0TG5nQm91bmRzKGxhdExuZ0JvdW5kcyk7XG4gIFx0XHRyZXR1cm4gW1xuICBcdFx0XHRsYXRMbmdCb3VuZHMuZ2V0U291dGhXZXN0KCksXG4gIFx0XHRcdGxhdExuZ0JvdW5kcy5nZXROb3J0aFdlc3QoKSxcbiAgXHRcdFx0bGF0TG5nQm91bmRzLmdldE5vcnRoRWFzdCgpLFxuICBcdFx0XHRsYXRMbmdCb3VuZHMuZ2V0U291dGhFYXN0KClcbiAgXHRcdF07XG4gIFx0fVxuICB9KTtcblxuXG4gIC8vIEBmYWN0b3J5IEwucmVjdGFuZ2xlKGxhdExuZ0JvdW5kczogTGF0TG5nQm91bmRzLCBvcHRpb25zPzogUG9seWxpbmUgb3B0aW9ucylcbiAgZnVuY3Rpb24gcmVjdGFuZ2xlKGxhdExuZ0JvdW5kcywgb3B0aW9ucykge1xuICBcdHJldHVybiBuZXcgUmVjdGFuZ2xlKGxhdExuZ0JvdW5kcywgb3B0aW9ucyk7XG4gIH1cblxuICBTVkcuY3JlYXRlID0gY3JlYXRlO1xuICBTVkcucG9pbnRzVG9QYXRoID0gcG9pbnRzVG9QYXRoO1xuXG4gIEdlb0pTT04uZ2VvbWV0cnlUb0xheWVyID0gZ2VvbWV0cnlUb0xheWVyO1xuICBHZW9KU09OLmNvb3Jkc1RvTGF0TG5nID0gY29vcmRzVG9MYXRMbmc7XG4gIEdlb0pTT04uY29vcmRzVG9MYXRMbmdzID0gY29vcmRzVG9MYXRMbmdzO1xuICBHZW9KU09OLmxhdExuZ1RvQ29vcmRzID0gbGF0TG5nVG9Db29yZHM7XG4gIEdlb0pTT04ubGF0TG5nc1RvQ29vcmRzID0gbGF0TG5nc1RvQ29vcmRzO1xuICBHZW9KU09OLmdldEZlYXR1cmUgPSBnZXRGZWF0dXJlO1xuICBHZW9KU09OLmFzRmVhdHVyZSA9IGFzRmVhdHVyZTtcblxuICAvKlxuICAgKiBMLkhhbmRsZXIuQm94Wm9vbSBpcyB1c2VkIHRvIGFkZCBzaGlmdC1kcmFnIHpvb20gaW50ZXJhY3Rpb24gdG8gdGhlIG1hcFxuICAgKiAoem9vbSB0byBhIHNlbGVjdGVkIGJvdW5kaW5nIGJveCksIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuICBNYXAubWVyZ2VPcHRpb25zKHtcbiAgXHQvLyBAb3B0aW9uIGJveFpvb206IEJvb2xlYW4gPSB0cnVlXG4gIFx0Ly8gV2hldGhlciB0aGUgbWFwIGNhbiBiZSB6b29tZWQgdG8gYSByZWN0YW5ndWxhciBhcmVhIHNwZWNpZmllZCBieVxuICBcdC8vIGRyYWdnaW5nIHRoZSBtb3VzZSB3aGlsZSBwcmVzc2luZyB0aGUgc2hpZnQga2V5LlxuICBcdGJveFpvb206IHRydWVcbiAgfSk7XG5cbiAgdmFyIEJveFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dGhpcy5fbWFwID0gbWFwO1xuICBcdFx0dGhpcy5fY29udGFpbmVyID0gbWFwLl9jb250YWluZXI7XG4gIFx0XHR0aGlzLl9wYW5lID0gbWFwLl9wYW5lcy5vdmVybGF5UGFuZTtcbiAgXHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcbiAgXHRcdG1hcC5vbigndW5sb2FkJywgdGhpcy5fZGVzdHJveSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdGFkZEhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRvbih0aGlzLl9jb250YWluZXIsICdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlRG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRvZmYodGhpcy5fY29udGFpbmVyLCAnbW91c2Vkb3duJywgdGhpcy5fb25Nb3VzZURvd24sIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRtb3ZlZDogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX21vdmVkO1xuICBcdH0sXG5cbiAgXHRfZGVzdHJveTogZnVuY3Rpb24gKCkge1xuICBcdFx0cmVtb3ZlKHRoaXMuX3BhbmUpO1xuICBcdFx0ZGVsZXRlIHRoaXMuX3BhbmU7XG4gIFx0fSxcblxuICBcdF9yZXNldFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XG4gIFx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xuICBcdH0sXG5cbiAgXHRfY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICh0aGlzLl9yZXNldFN0YXRlVGltZW91dCAhPT0gMCkge1xuICBcdFx0XHRjbGVhclRpbWVvdXQodGhpcy5fcmVzZXRTdGF0ZVRpbWVvdXQpO1xuICBcdFx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlRG93bjogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghZS5zaGlmdEtleSB8fCAoKGUud2hpY2ggIT09IDEpICYmIChlLmJ1dHRvbiAhPT0gMSkpKSB7IHJldHVybiBmYWxzZTsgfVxuXG4gIFx0XHQvLyBDbGVhciB0aGUgZGVmZXJyZWQgcmVzZXRTdGF0ZSBpZiBpdCBoYXNuJ3QgZXhlY3V0ZWQgeWV0LCBvdGhlcndpc2UgaXRcbiAgXHRcdC8vIHdpbGwgaW50ZXJydXB0IHRoZSBpbnRlcmFjdGlvbiBhbmQgb3JwaGFuIGEgYm94IGVsZW1lbnQgaW4gdGhlIGNvbnRhaW5lci5cbiAgXHRcdHRoaXMuX2NsZWFyRGVmZXJyZWRSZXNldFN0YXRlKCk7XG4gIFx0XHR0aGlzLl9yZXNldFN0YXRlKCk7XG5cbiAgXHRcdGRpc2FibGVUZXh0U2VsZWN0aW9uKCk7XG4gIFx0XHRkaXNhYmxlSW1hZ2VEcmFnKCk7XG5cbiAgXHRcdHRoaXMuX3N0YXJ0UG9pbnQgPSB0aGlzLl9tYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZSk7XG5cbiAgXHRcdG9uKGRvY3VtZW50LCB7XG4gIFx0XHRcdGNvbnRleHRtZW51OiBzdG9wLFxuICBcdFx0XHRtb3VzZW1vdmU6IHRoaXMuX29uTW91c2VNb3ZlLFxuICBcdFx0XHRtb3VzZXVwOiB0aGlzLl9vbk1vdXNlVXAsXG4gIFx0XHRcdGtleWRvd246IHRoaXMuX29uS2V5RG93blxuICBcdFx0fSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9vbk1vdXNlTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0dGhpcy5fbW92ZWQgPSB0cnVlO1xuXG4gIFx0XHRcdHRoaXMuX2JveCA9IGNyZWF0ZSQxKCdkaXYnLCAnbGVhZmxldC16b29tLWJveCcsIHRoaXMuX2NvbnRhaW5lcik7XG4gIFx0XHRcdGFkZENsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XG5cbiAgXHRcdFx0dGhpcy5fbWFwLmZpcmUoJ2JveHpvb21zdGFydCcpO1xuICBcdFx0fVxuXG4gIFx0XHR0aGlzLl9wb2ludCA9IHRoaXMuX21hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlKTtcblxuICBcdFx0dmFyIGJvdW5kcyA9IG5ldyBCb3VuZHModGhpcy5fcG9pbnQsIHRoaXMuX3N0YXJ0UG9pbnQpLFxuICBcdFx0ICAgIHNpemUgPSBib3VuZHMuZ2V0U2l6ZSgpO1xuXG4gIFx0XHRzZXRQb3NpdGlvbih0aGlzLl9ib3gsIGJvdW5kcy5taW4pO1xuXG4gIFx0XHR0aGlzLl9ib3guc3R5bGUud2lkdGggID0gc2l6ZS54ICsgJ3B4JztcbiAgXHRcdHRoaXMuX2JveC5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xuICBcdH0sXG5cbiAgXHRfZmluaXNoOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0cmVtb3ZlKHRoaXMuX2JveCk7XG4gIFx0XHRcdHJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XG4gIFx0XHR9XG5cbiAgXHRcdGVuYWJsZVRleHRTZWxlY3Rpb24oKTtcbiAgXHRcdGVuYWJsZUltYWdlRHJhZygpO1xuXG4gIFx0XHRvZmYoZG9jdW1lbnQsIHtcbiAgXHRcdFx0Y29udGV4dG1lbnU6IHN0b3AsXG4gIFx0XHRcdG1vdXNlbW92ZTogdGhpcy5fb25Nb3VzZU1vdmUsXG4gIFx0XHRcdG1vdXNldXA6IHRoaXMuX29uTW91c2VVcCxcbiAgXHRcdFx0a2V5ZG93bjogdGhpcy5fb25LZXlEb3duXG4gIFx0XHR9LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW91c2VVcDogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdGlmICgoZS53aGljaCAhPT0gMSkgJiYgKGUuYnV0dG9uICE9PSAxKSkgeyByZXR1cm47IH1cblxuICBcdFx0dGhpcy5fZmluaXNoKCk7XG5cbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHsgcmV0dXJuOyB9XG4gIFx0XHQvLyBQb3N0cG9uZSB0byBuZXh0IEpTIHRpY2sgc28gaW50ZXJuYWwgY2xpY2sgZXZlbnQgaGFuZGxpbmdcbiAgXHRcdC8vIHN0aWxsIHNlZSBpdCBhcyBcIm1vdmVkXCIuXG4gIFx0XHR0aGlzLl9jbGVhckRlZmVycmVkUmVzZXRTdGF0ZSgpO1xuICBcdFx0dGhpcy5fcmVzZXRTdGF0ZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQodGhpcy5fcmVzZXRTdGF0ZSwgdGhpcyksIDApO1xuXG4gIFx0XHR2YXIgYm91bmRzID0gbmV3IExhdExuZ0JvdW5kcyhcbiAgXHRcdCAgICAgICAgdGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcodGhpcy5fc3RhcnRQb2ludCksXG4gIFx0XHQgICAgICAgIHRoaXMuX21hcC5jb250YWluZXJQb2ludFRvTGF0TG5nKHRoaXMuX3BvaW50KSk7XG5cbiAgXHRcdHRoaXMuX21hcFxuICBcdFx0XHQuZml0Qm91bmRzKGJvdW5kcylcbiAgXHRcdFx0LmZpcmUoJ2JveHpvb21lbmQnLCB7Ym94Wm9vbUJvdW5kczogYm91bmRzfSk7XG4gIFx0fSxcblxuICBcdF9vbktleURvd246IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoZS5rZXlDb2RlID09PSAyNykge1xuICBcdFx0XHR0aGlzLl9maW5pc2goKTtcbiAgXHRcdFx0dGhpcy5fY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGUoKTtcbiAgXHRcdFx0dGhpcy5fcmVzZXRTdGF0ZSgpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IGJveFpvb206IEhhbmRsZXJcbiAgLy8gQm94IChzaGlmdC1kcmFnIHdpdGggbW91c2UpIHpvb20gaGFuZGxlci5cbiAgTWFwLmFkZEluaXRIb29rKCdhZGRIYW5kbGVyJywgJ2JveFpvb20nLCBCb3hab29tKTtcblxuICAvKlxuICAgKiBMLkhhbmRsZXIuRG91YmxlQ2xpY2tab29tIGlzIHVzZWQgdG8gaGFuZGxlIGRvdWJsZS1jbGljayB6b29tIG9uIHRoZSBtYXAsIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBvcHRpb24gZG91YmxlQ2xpY2tab29tOiBCb29sZWFufFN0cmluZyA9IHRydWVcbiAgXHQvLyBXaGV0aGVyIHRoZSBtYXAgY2FuIGJlIHpvb21lZCBpbiBieSBkb3VibGUgY2xpY2tpbmcgb24gaXQgYW5kXG4gIFx0Ly8gem9vbWVkIG91dCBieSBkb3VibGUgY2xpY2tpbmcgd2hpbGUgaG9sZGluZyBzaGlmdC4gSWYgcGFzc2VkXG4gIFx0Ly8gYCdjZW50ZXInYCwgZG91YmxlLWNsaWNrIHpvb20gd2lsbCB6b29tIHRvIHRoZSBjZW50ZXIgb2YgdGhlXG4gIFx0Ly8gIHZpZXcgcmVnYXJkbGVzcyBvZiB3aGVyZSB0aGUgbW91c2Ugd2FzLlxuICBcdGRvdWJsZUNsaWNrWm9vbTogdHJ1ZVxuICB9KTtcblxuICB2YXIgRG91YmxlQ2xpY2tab29tID0gSGFuZGxlci5leHRlbmQoe1xuICBcdGFkZEhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9tYXAub24oJ2RibGNsaWNrJywgdGhpcy5fb25Eb3VibGVDbGljaywgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9tYXAub2ZmKCdkYmxjbGljaycsIHRoaXMuX29uRG91YmxlQ2xpY2ssIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Eb3VibGVDbGljazogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgb2xkWm9vbSA9IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgZGVsdGEgPSBtYXAub3B0aW9ucy56b29tRGVsdGEsXG4gIFx0XHQgICAgem9vbSA9IGUub3JpZ2luYWxFdmVudC5zaGlmdEtleSA/IG9sZFpvb20gLSBkZWx0YSA6IG9sZFpvb20gKyBkZWx0YTtcblxuICBcdFx0aWYgKG1hcC5vcHRpb25zLmRvdWJsZUNsaWNrWm9vbSA9PT0gJ2NlbnRlcicpIHtcbiAgXHRcdFx0bWFwLnNldFpvb20oem9vbSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRtYXAuc2V0Wm9vbUFyb3VuZChlLmNvbnRhaW5lclBvaW50LCB6b29tKTtcbiAgXHRcdH1cbiAgXHR9XG4gIH0pO1xuXG4gIC8vIEBzZWN0aW9uIEhhbmRsZXJzXG4gIC8vXG4gIC8vIE1hcCBwcm9wZXJ0aWVzIGluY2x1ZGUgaW50ZXJhY3Rpb24gaGFuZGxlcnMgdGhhdCBhbGxvdyB5b3UgdG8gY29udHJvbFxuICAvLyBpbnRlcmFjdGlvbiBiZWhhdmlvciBpbiBydW50aW1lLCBlbmFibGluZyBvciBkaXNhYmxpbmcgY2VydGFpbiBmZWF0dXJlcyBzdWNoXG4gIC8vIGFzIGRyYWdnaW5nIG9yIHRvdWNoIHpvb20gKHNlZSBgSGFuZGxlcmAgbWV0aG9kcykuIEZvciBleGFtcGxlOlxuICAvL1xuICAvLyBgYGBqc1xuICAvLyBtYXAuZG91YmxlQ2xpY2tab29tLmRpc2FibGUoKTtcbiAgLy8gYGBgXG4gIC8vXG4gIC8vIEBwcm9wZXJ0eSBkb3VibGVDbGlja1pvb206IEhhbmRsZXJcbiAgLy8gRG91YmxlIGNsaWNrIHpvb20gaGFuZGxlci5cbiAgTWFwLmFkZEluaXRIb29rKCdhZGRIYW5kbGVyJywgJ2RvdWJsZUNsaWNrWm9vbScsIERvdWJsZUNsaWNrWm9vbSk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLk1hcERyYWcgaXMgdXNlZCB0byBtYWtlIHRoZSBtYXAgZHJhZ2dhYmxlICh3aXRoIHBhbm5pbmcgaW5lcnRpYSksIGVuYWJsZWQgYnkgZGVmYXVsdC5cbiAgICovXG5cbiAgLy8gQG5hbWVzcGFjZSBNYXBcbiAgLy8gQHNlY3Rpb24gSW50ZXJhY3Rpb24gT3B0aW9uc1xuICBNYXAubWVyZ2VPcHRpb25zKHtcbiAgXHQvLyBAb3B0aW9uIGRyYWdnaW5nOiBCb29sZWFuID0gdHJ1ZVxuICBcdC8vIFdoZXRoZXIgdGhlIG1hcCBpcyBkcmFnZ2FibGUgd2l0aCBtb3VzZS90b3VjaCBvciBub3QuXG4gIFx0ZHJhZ2dpbmc6IHRydWUsXG5cbiAgXHQvLyBAc2VjdGlvbiBQYW5uaW5nIEluZXJ0aWEgT3B0aW9uc1xuICBcdC8vIEBvcHRpb24gaW5lcnRpYTogQm9vbGVhbiA9ICpcbiAgXHQvLyBJZiBlbmFibGVkLCBwYW5uaW5nIG9mIHRoZSBtYXAgd2lsbCBoYXZlIGFuIGluZXJ0aWEgZWZmZWN0IHdoZXJlXG4gIFx0Ly8gdGhlIG1hcCBidWlsZHMgbW9tZW50dW0gd2hpbGUgZHJhZ2dpbmcgYW5kIGNvbnRpbnVlcyBtb3ZpbmcgaW5cbiAgXHQvLyB0aGUgc2FtZSBkaXJlY3Rpb24gZm9yIHNvbWUgdGltZS4gRmVlbHMgZXNwZWNpYWxseSBuaWNlIG9uIHRvdWNoXG4gIFx0Ly8gZGV2aWNlcy4gRW5hYmxlZCBieSBkZWZhdWx0LlxuICBcdGluZXJ0aWE6IHRydWUsXG5cbiAgXHQvLyBAb3B0aW9uIGluZXJ0aWFEZWNlbGVyYXRpb246IE51bWJlciA9IDMwMDBcbiAgXHQvLyBUaGUgcmF0ZSB3aXRoIHdoaWNoIHRoZSBpbmVydGlhbCBtb3ZlbWVudCBzbG93cyBkb3duLCBpbiBwaXhlbHMvc2Vjb25kwrIuXG4gIFx0aW5lcnRpYURlY2VsZXJhdGlvbjogMzQwMCwgLy8gcHgvc14yXG5cbiAgXHQvLyBAb3B0aW9uIGluZXJ0aWFNYXhTcGVlZDogTnVtYmVyID0gSW5maW5pdHlcbiAgXHQvLyBNYXggc3BlZWQgb2YgdGhlIGluZXJ0aWFsIG1vdmVtZW50LCBpbiBwaXhlbHMvc2Vjb25kLlxuICBcdGluZXJ0aWFNYXhTcGVlZDogSW5maW5pdHksIC8vIHB4L3NcblxuICBcdC8vIEBvcHRpb24gZWFzZUxpbmVhcml0eTogTnVtYmVyID0gMC4yXG4gIFx0ZWFzZUxpbmVhcml0eTogMC4yLFxuXG4gIFx0Ly8gVE9ETyByZWZhY3RvciwgbW92ZSB0byBDUlNcbiAgXHQvLyBAb3B0aW9uIHdvcmxkQ29weUp1bXA6IEJvb2xlYW4gPSBmYWxzZVxuICBcdC8vIFdpdGggdGhpcyBvcHRpb24gZW5hYmxlZCwgdGhlIG1hcCB0cmFja3Mgd2hlbiB5b3UgcGFuIHRvIGFub3RoZXIgXCJjb3B5XCJcbiAgXHQvLyBvZiB0aGUgd29ybGQgYW5kIHNlYW1sZXNzbHkganVtcHMgdG8gdGhlIG9yaWdpbmFsIG9uZSBzbyB0aGF0IGFsbCBvdmVybGF5c1xuICBcdC8vIGxpa2UgbWFya2VycyBhbmQgdmVjdG9yIGxheWVycyBhcmUgc3RpbGwgdmlzaWJsZS5cbiAgXHR3b3JsZENvcHlKdW1wOiBmYWxzZSxcblxuICBcdC8vIEBvcHRpb24gbWF4Qm91bmRzVmlzY29zaXR5OiBOdW1iZXIgPSAwLjBcbiAgXHQvLyBJZiBgbWF4Qm91bmRzYCBpcyBzZXQsIHRoaXMgb3B0aW9uIHdpbGwgY29udHJvbCBob3cgc29saWQgdGhlIGJvdW5kc1xuICBcdC8vIGFyZSB3aGVuIGRyYWdnaW5nIHRoZSBtYXAgYXJvdW5kLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiBgMC4wYCBhbGxvd3MgdGhlXG4gIFx0Ly8gdXNlciB0byBkcmFnIG91dHNpZGUgdGhlIGJvdW5kcyBhdCBub3JtYWwgc3BlZWQsIGhpZ2hlciB2YWx1ZXMgd2lsbFxuICBcdC8vIHNsb3cgZG93biBtYXAgZHJhZ2dpbmcgb3V0c2lkZSBib3VuZHMsIGFuZCBgMS4wYCBtYWtlcyB0aGUgYm91bmRzIGZ1bGx5XG4gIFx0Ly8gc29saWQsIHByZXZlbnRpbmcgdGhlIHVzZXIgZnJvbSBkcmFnZ2luZyBvdXRzaWRlIHRoZSBib3VuZHMuXG4gIFx0bWF4Qm91bmRzVmlzY29zaXR5OiAwLjBcbiAgfSk7XG5cbiAgdmFyIERyYWcgPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fZHJhZ2dhYmxlKSB7XG4gIFx0XHRcdHZhciBtYXAgPSB0aGlzLl9tYXA7XG5cbiAgXHRcdFx0dGhpcy5fZHJhZ2dhYmxlID0gbmV3IERyYWdnYWJsZShtYXAuX21hcFBhbmUsIG1hcC5fY29udGFpbmVyKTtcblxuICBcdFx0XHR0aGlzLl9kcmFnZ2FibGUub24oe1xuICBcdFx0XHRcdGRyYWdzdGFydDogdGhpcy5fb25EcmFnU3RhcnQsXG4gIFx0XHRcdFx0ZHJhZzogdGhpcy5fb25EcmFnLFxuICBcdFx0XHRcdGRyYWdlbmQ6IHRoaXMuX29uRHJhZ0VuZFxuICBcdFx0XHR9LCB0aGlzKTtcblxuICBcdFx0XHR0aGlzLl9kcmFnZ2FibGUub24oJ3ByZWRyYWcnLCB0aGlzLl9vblByZURyYWdMaW1pdCwgdGhpcyk7XG4gIFx0XHRcdGlmIChtYXAub3B0aW9ucy53b3JsZENvcHlKdW1wKSB7XG4gIFx0XHRcdFx0dGhpcy5fZHJhZ2dhYmxlLm9uKCdwcmVkcmFnJywgdGhpcy5fb25QcmVEcmFnV3JhcCwgdGhpcyk7XG4gIFx0XHRcdFx0bWFwLm9uKCd6b29tZW5kJywgdGhpcy5fb25ab29tRW5kLCB0aGlzKTtcblxuICBcdFx0XHRcdG1hcC53aGVuUmVhZHkodGhpcy5fb25ab29tRW5kLCB0aGlzKTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdFx0YWRkQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LWdyYWIgbGVhZmxldC10b3VjaC1kcmFnJyk7XG4gIFx0XHR0aGlzLl9kcmFnZ2FibGUuZW5hYmxlKCk7XG4gIFx0XHR0aGlzLl9wb3NpdGlvbnMgPSBbXTtcbiAgXHRcdHRoaXMuX3RpbWVzID0gW107XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZW1vdmVDbGFzcyh0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ2xlYWZsZXQtZ3JhYicpO1xuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LXRvdWNoLWRyYWcnKTtcbiAgXHRcdHRoaXMuX2RyYWdnYWJsZS5kaXNhYmxlKCk7XG4gIFx0fSxcblxuICBcdG1vdmVkOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRyZXR1cm4gdGhpcy5fZHJhZ2dhYmxlICYmIHRoaXMuX2RyYWdnYWJsZS5fbW92ZWQ7XG4gIFx0fSxcblxuICBcdG1vdmluZzogZnVuY3Rpb24gKCkge1xuICBcdFx0cmV0dXJuIHRoaXMuX2RyYWdnYWJsZSAmJiB0aGlzLl9kcmFnZ2FibGUuX21vdmluZztcbiAgXHR9LFxuXG4gIFx0X29uRHJhZ1N0YXJ0OiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwO1xuXG4gIFx0XHRtYXAuX3N0b3AoKTtcbiAgXHRcdGlmICh0aGlzLl9tYXAub3B0aW9ucy5tYXhCb3VuZHMgJiYgdGhpcy5fbWFwLm9wdGlvbnMubWF4Qm91bmRzVmlzY29zaXR5KSB7XG4gIFx0XHRcdHZhciBib3VuZHMgPSB0b0xhdExuZ0JvdW5kcyh0aGlzLl9tYXAub3B0aW9ucy5tYXhCb3VuZHMpO1xuXG4gIFx0XHRcdHRoaXMuX29mZnNldExpbWl0ID0gdG9Cb3VuZHMoXG4gIFx0XHRcdFx0dGhpcy5fbWFwLmxhdExuZ1RvQ29udGFpbmVyUG9pbnQoYm91bmRzLmdldE5vcnRoV2VzdCgpKS5tdWx0aXBseUJ5KC0xKSxcbiAgXHRcdFx0XHR0aGlzLl9tYXAubGF0TG5nVG9Db250YWluZXJQb2ludChib3VuZHMuZ2V0U291dGhFYXN0KCkpLm11bHRpcGx5QnkoLTEpXG4gIFx0XHRcdFx0XHQuYWRkKHRoaXMuX21hcC5nZXRTaXplKCkpKTtcblxuICBcdFx0XHR0aGlzLl92aXNjb3NpdHkgPSBNYXRoLm1pbigxLjAsIE1hdGgubWF4KDAuMCwgdGhpcy5fbWFwLm9wdGlvbnMubWF4Qm91bmRzVmlzY29zaXR5KSk7XG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9vZmZzZXRMaW1pdCA9IG51bGw7XG4gIFx0XHR9XG5cbiAgXHRcdG1hcFxuICBcdFx0ICAgIC5maXJlKCdtb3Zlc3RhcnQnKVxuICBcdFx0ICAgIC5maXJlKCdkcmFnc3RhcnQnKTtcblxuICBcdFx0aWYgKG1hcC5vcHRpb25zLmluZXJ0aWEpIHtcbiAgXHRcdFx0dGhpcy5fcG9zaXRpb25zID0gW107XG4gIFx0XHRcdHRoaXMuX3RpbWVzID0gW107XG4gIFx0XHR9XG4gIFx0fSxcblxuICBcdF9vbkRyYWc6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAodGhpcy5fbWFwLm9wdGlvbnMuaW5lcnRpYSkge1xuICBcdFx0XHR2YXIgdGltZSA9IHRoaXMuX2xhc3RUaW1lID0gK25ldyBEYXRlKCksXG4gIFx0XHRcdCAgICBwb3MgPSB0aGlzLl9sYXN0UG9zID0gdGhpcy5fZHJhZ2dhYmxlLl9hYnNQb3MgfHwgdGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3M7XG5cbiAgXHRcdFx0dGhpcy5fcG9zaXRpb25zLnB1c2gocG9zKTtcbiAgXHRcdFx0dGhpcy5fdGltZXMucHVzaCh0aW1lKTtcblxuICBcdFx0XHR0aGlzLl9wcnVuZVBvc2l0aW9ucyh0aW1lKTtcbiAgXHRcdH1cblxuICBcdFx0dGhpcy5fbWFwXG4gIFx0XHQgICAgLmZpcmUoJ21vdmUnLCBlKVxuICBcdFx0ICAgIC5maXJlKCdkcmFnJywgZSk7XG4gIFx0fSxcblxuICBcdF9wcnVuZVBvc2l0aW9uczogZnVuY3Rpb24gKHRpbWUpIHtcbiAgXHRcdHdoaWxlICh0aGlzLl9wb3NpdGlvbnMubGVuZ3RoID4gMSAmJiB0aW1lIC0gdGhpcy5fdGltZXNbMF0gPiA1MCkge1xuICBcdFx0XHR0aGlzLl9wb3NpdGlvbnMuc2hpZnQoKTtcbiAgXHRcdFx0dGhpcy5fdGltZXMuc2hpZnQoKTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X29uWm9vbUVuZDogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIHB4Q2VudGVyID0gdGhpcy5fbWFwLmdldFNpemUoKS5kaXZpZGVCeSgyKSxcbiAgXHRcdCAgICBweFdvcmxkQ2VudGVyID0gdGhpcy5fbWFwLmxhdExuZ1RvTGF5ZXJQb2ludChbMCwgMF0pO1xuXG4gIFx0XHR0aGlzLl9pbml0aWFsV29ybGRPZmZzZXQgPSBweFdvcmxkQ2VudGVyLnN1YnRyYWN0KHB4Q2VudGVyKS54O1xuICBcdFx0dGhpcy5fd29ybGRXaWR0aCA9IHRoaXMuX21hcC5nZXRQaXhlbFdvcmxkQm91bmRzKCkuZ2V0U2l6ZSgpLng7XG4gIFx0fSxcblxuICBcdF92aXNjb3VzTGltaXQ6IGZ1bmN0aW9uICh2YWx1ZSwgdGhyZXNob2xkKSB7XG4gIFx0XHRyZXR1cm4gdmFsdWUgLSAodmFsdWUgLSB0aHJlc2hvbGQpICogdGhpcy5fdmlzY29zaXR5O1xuICBcdH0sXG5cbiAgXHRfb25QcmVEcmFnTGltaXQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fdmlzY29zaXR5IHx8ICF0aGlzLl9vZmZzZXRMaW1pdCkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIG9mZnNldCA9IHRoaXMuX2RyYWdnYWJsZS5fbmV3UG9zLnN1YnRyYWN0KHRoaXMuX2RyYWdnYWJsZS5fc3RhcnRQb3MpO1xuXG4gIFx0XHR2YXIgbGltaXQgPSB0aGlzLl9vZmZzZXRMaW1pdDtcbiAgXHRcdGlmIChvZmZzZXQueCA8IGxpbWl0Lm1pbi54KSB7IG9mZnNldC54ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC54LCBsaW1pdC5taW4ueCk7IH1cbiAgXHRcdGlmIChvZmZzZXQueSA8IGxpbWl0Lm1pbi55KSB7IG9mZnNldC55ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC55LCBsaW1pdC5taW4ueSk7IH1cbiAgXHRcdGlmIChvZmZzZXQueCA+IGxpbWl0Lm1heC54KSB7IG9mZnNldC54ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC54LCBsaW1pdC5tYXgueCk7IH1cbiAgXHRcdGlmIChvZmZzZXQueSA+IGxpbWl0Lm1heC55KSB7IG9mZnNldC55ID0gdGhpcy5fdmlzY291c0xpbWl0KG9mZnNldC55LCBsaW1pdC5tYXgueSk7IH1cblxuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MgPSB0aGlzLl9kcmFnZ2FibGUuX3N0YXJ0UG9zLmFkZChvZmZzZXQpO1xuICBcdH0sXG5cbiAgXHRfb25QcmVEcmFnV3JhcDogZnVuY3Rpb24gKCkge1xuICBcdFx0Ly8gVE9ETyByZWZhY3RvciB0byBiZSBhYmxlIHRvIGFkanVzdCBtYXAgcGFuZSBwb3NpdGlvbiBhZnRlciB6b29tXG4gIFx0XHR2YXIgd29ybGRXaWR0aCA9IHRoaXMuX3dvcmxkV2lkdGgsXG4gIFx0XHQgICAgaGFsZldpZHRoID0gTWF0aC5yb3VuZCh3b3JsZFdpZHRoIC8gMiksXG4gIFx0XHQgICAgZHggPSB0aGlzLl9pbml0aWFsV29ybGRPZmZzZXQsXG4gIFx0XHQgICAgeCA9IHRoaXMuX2RyYWdnYWJsZS5fbmV3UG9zLngsXG4gIFx0XHQgICAgbmV3WDEgPSAoeCAtIGhhbGZXaWR0aCArIGR4KSAlIHdvcmxkV2lkdGggKyBoYWxmV2lkdGggLSBkeCxcbiAgXHRcdCAgICBuZXdYMiA9ICh4ICsgaGFsZldpZHRoICsgZHgpICUgd29ybGRXaWR0aCAtIGhhbGZXaWR0aCAtIGR4LFxuICBcdFx0ICAgIG5ld1ggPSBNYXRoLmFicyhuZXdYMSArIGR4KSA8IE1hdGguYWJzKG5ld1gyICsgZHgpID8gbmV3WDEgOiBuZXdYMjtcblxuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9hYnNQb3MgPSB0aGlzLl9kcmFnZ2FibGUuX25ld1Bvcy5jbG9uZSgpO1xuICBcdFx0dGhpcy5fZHJhZ2dhYmxlLl9uZXdQb3MueCA9IG5ld1g7XG4gIFx0fSxcblxuICBcdF9vbkRyYWdFbmQ6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIG9wdGlvbnMgPSBtYXAub3B0aW9ucyxcblxuICBcdFx0ICAgIG5vSW5lcnRpYSA9ICFvcHRpb25zLmluZXJ0aWEgfHwgZS5ub0luZXJ0aWEgfHwgdGhpcy5fdGltZXMubGVuZ3RoIDwgMjtcblxuICBcdFx0bWFwLmZpcmUoJ2RyYWdlbmQnLCBlKTtcblxuICBcdFx0aWYgKG5vSW5lcnRpYSkge1xuICBcdFx0XHRtYXAuZmlyZSgnbW92ZWVuZCcpO1xuXG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHR0aGlzLl9wcnVuZVBvc2l0aW9ucygrbmV3IERhdGUoKSk7XG5cbiAgXHRcdFx0dmFyIGRpcmVjdGlvbiA9IHRoaXMuX2xhc3RQb3Muc3VidHJhY3QodGhpcy5fcG9zaXRpb25zWzBdKSxcbiAgXHRcdFx0ICAgIGR1cmF0aW9uID0gKHRoaXMuX2xhc3RUaW1lIC0gdGhpcy5fdGltZXNbMF0pIC8gMTAwMCxcbiAgXHRcdFx0ICAgIGVhc2UgPSBvcHRpb25zLmVhc2VMaW5lYXJpdHksXG5cbiAgXHRcdFx0ICAgIHNwZWVkVmVjdG9yID0gZGlyZWN0aW9uLm11bHRpcGx5QnkoZWFzZSAvIGR1cmF0aW9uKSxcbiAgXHRcdFx0ICAgIHNwZWVkID0gc3BlZWRWZWN0b3IuZGlzdGFuY2VUbyhbMCwgMF0pLFxuXG4gIFx0XHRcdCAgICBsaW1pdGVkU3BlZWQgPSBNYXRoLm1pbihvcHRpb25zLmluZXJ0aWFNYXhTcGVlZCwgc3BlZWQpLFxuICBcdFx0XHQgICAgbGltaXRlZFNwZWVkVmVjdG9yID0gc3BlZWRWZWN0b3IubXVsdGlwbHlCeShsaW1pdGVkU3BlZWQgLyBzcGVlZCksXG5cbiAgXHRcdFx0ICAgIGRlY2VsZXJhdGlvbkR1cmF0aW9uID0gbGltaXRlZFNwZWVkIC8gKG9wdGlvbnMuaW5lcnRpYURlY2VsZXJhdGlvbiAqIGVhc2UpLFxuICBcdFx0XHQgICAgb2Zmc2V0ID0gbGltaXRlZFNwZWVkVmVjdG9yLm11bHRpcGx5QnkoLWRlY2VsZXJhdGlvbkR1cmF0aW9uIC8gMikucm91bmQoKTtcblxuICBcdFx0XHRpZiAoIW9mZnNldC54ICYmICFvZmZzZXQueSkge1xuICBcdFx0XHRcdG1hcC5maXJlKCdtb3ZlZW5kJyk7XG5cbiAgXHRcdFx0fSBlbHNlIHtcbiAgXHRcdFx0XHRvZmZzZXQgPSBtYXAuX2xpbWl0T2Zmc2V0KG9mZnNldCwgbWFwLm9wdGlvbnMubWF4Qm91bmRzKTtcblxuICBcdFx0XHRcdHJlcXVlc3RBbmltRnJhbWUoZnVuY3Rpb24gKCkge1xuICBcdFx0XHRcdFx0bWFwLnBhbkJ5KG9mZnNldCwge1xuICBcdFx0XHRcdFx0XHRkdXJhdGlvbjogZGVjZWxlcmF0aW9uRHVyYXRpb24sXG4gIFx0XHRcdFx0XHRcdGVhc2VMaW5lYXJpdHk6IGVhc2UsXG4gIFx0XHRcdFx0XHRcdG5vTW92ZVN0YXJ0OiB0cnVlLFxuICBcdFx0XHRcdFx0XHRhbmltYXRlOiB0cnVlXG4gIFx0XHRcdFx0XHR9KTtcbiAgXHRcdFx0XHR9KTtcbiAgXHRcdFx0fVxuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IGRyYWdnaW5nOiBIYW5kbGVyXG4gIC8vIE1hcCBkcmFnZ2luZyBoYW5kbGVyIChieSBib3RoIG1vdXNlIGFuZCB0b3VjaCkuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICdkcmFnZ2luZycsIERyYWcpO1xuXG4gIC8qXG4gICAqIEwuTWFwLktleWJvYXJkIGlzIGhhbmRsaW5nIGtleWJvYXJkIGludGVyYWN0aW9uIHdpdGggdGhlIG1hcCwgZW5hYmxlZCBieSBkZWZhdWx0LlxuICAgKi9cblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBLZXlib2FyZCBOYXZpZ2F0aW9uIE9wdGlvbnNcbiAgTWFwLm1lcmdlT3B0aW9ucyh7XG4gIFx0Ly8gQG9wdGlvbiBrZXlib2FyZDogQm9vbGVhbiA9IHRydWVcbiAgXHQvLyBNYWtlcyB0aGUgbWFwIGZvY3VzYWJsZSBhbmQgYWxsb3dzIHVzZXJzIHRvIG5hdmlnYXRlIHRoZSBtYXAgd2l0aCBrZXlib2FyZFxuICBcdC8vIGFycm93cyBhbmQgYCtgL2AtYCBrZXlzLlxuICBcdGtleWJvYXJkOiB0cnVlLFxuXG4gIFx0Ly8gQG9wdGlvbiBrZXlib2FyZFBhbkRlbHRhOiBOdW1iZXIgPSA4MFxuICBcdC8vIEFtb3VudCBvZiBwaXhlbHMgdG8gcGFuIHdoZW4gcHJlc3NpbmcgYW4gYXJyb3cga2V5LlxuICBcdGtleWJvYXJkUGFuRGVsdGE6IDgwXG4gIH0pO1xuXG4gIHZhciBLZXlib2FyZCA9IEhhbmRsZXIuZXh0ZW5kKHtcblxuICBcdGtleUNvZGVzOiB7XG4gIFx0XHRsZWZ0OiAgICBbMzddLFxuICBcdFx0cmlnaHQ6ICAgWzM5XSxcbiAgXHRcdGRvd246ICAgIFs0MF0sXG4gIFx0XHR1cDogICAgICBbMzhdLFxuICBcdFx0em9vbUluOiAgWzE4NywgMTA3LCA2MSwgMTcxXSxcbiAgXHRcdHpvb21PdXQ6IFsxODksIDEwOSwgNTQsIDE3M11cbiAgXHR9LFxuXG4gIFx0aW5pdGlhbGl6ZTogZnVuY3Rpb24gKG1hcCkge1xuICBcdFx0dGhpcy5fbWFwID0gbWFwO1xuXG4gIFx0XHR0aGlzLl9zZXRQYW5EZWx0YShtYXAub3B0aW9ucy5rZXlib2FyZFBhbkRlbHRhKTtcbiAgXHRcdHRoaXMuX3NldFpvb21EZWx0YShtYXAub3B0aW9ucy56b29tRGVsdGEpO1xuICBcdH0sXG5cbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0dmFyIGNvbnRhaW5lciA9IHRoaXMuX21hcC5fY29udGFpbmVyO1xuXG4gIFx0XHQvLyBtYWtlIHRoZSBjb250YWluZXIgZm9jdXNhYmxlIGJ5IHRhYmJpbmdcbiAgXHRcdGlmIChjb250YWluZXIudGFiSW5kZXggPD0gMCkge1xuICBcdFx0XHRjb250YWluZXIudGFiSW5kZXggPSAnMCc7XG4gIFx0XHR9XG5cbiAgXHRcdG9uKGNvbnRhaW5lciwge1xuICBcdFx0XHRmb2N1czogdGhpcy5fb25Gb2N1cyxcbiAgXHRcdFx0Ymx1cjogdGhpcy5fb25CbHVyLFxuICBcdFx0XHRtb3VzZWRvd246IHRoaXMuX29uTW91c2VEb3duXG4gIFx0XHR9LCB0aGlzKTtcblxuICBcdFx0dGhpcy5fbWFwLm9uKHtcbiAgXHRcdFx0Zm9jdXM6IHRoaXMuX2FkZEhvb2tzLFxuICBcdFx0XHRibHVyOiB0aGlzLl9yZW1vdmVIb29rc1xuICBcdFx0fSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdHJlbW92ZUhvb2tzOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHR0aGlzLl9yZW1vdmVIb29rcygpO1xuXG4gIFx0XHRvZmYodGhpcy5fbWFwLl9jb250YWluZXIsIHtcbiAgXHRcdFx0Zm9jdXM6IHRoaXMuX29uRm9jdXMsXG4gIFx0XHRcdGJsdXI6IHRoaXMuX29uQmx1cixcbiAgXHRcdFx0bW91c2Vkb3duOiB0aGlzLl9vbk1vdXNlRG93blxuICBcdFx0fSwgdGhpcyk7XG5cbiAgXHRcdHRoaXMuX21hcC5vZmYoe1xuICBcdFx0XHRmb2N1czogdGhpcy5fYWRkSG9va3MsXG4gIFx0XHRcdGJsdXI6IHRoaXMuX3JlbW92ZUhvb2tzXG4gIFx0XHR9LCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW91c2VEb3duOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRpZiAodGhpcy5fZm9jdXNlZCkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIGJvZHkgPSBkb2N1bWVudC5ib2R5LFxuICBcdFx0ICAgIGRvY0VsID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LFxuICBcdFx0ICAgIHRvcCA9IGJvZHkuc2Nyb2xsVG9wIHx8IGRvY0VsLnNjcm9sbFRvcCxcbiAgXHRcdCAgICBsZWZ0ID0gYm9keS5zY3JvbGxMZWZ0IHx8IGRvY0VsLnNjcm9sbExlZnQ7XG5cbiAgXHRcdHRoaXMuX21hcC5fY29udGFpbmVyLmZvY3VzKCk7XG5cbiAgXHRcdHdpbmRvdy5zY3JvbGxUbyhsZWZ0LCB0b3ApO1xuICBcdH0sXG5cbiAgXHRfb25Gb2N1czogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fZm9jdXNlZCA9IHRydWU7XG4gIFx0XHR0aGlzLl9tYXAuZmlyZSgnZm9jdXMnKTtcbiAgXHR9LFxuXG4gIFx0X29uQmx1cjogZnVuY3Rpb24gKCkge1xuICBcdFx0dGhpcy5fZm9jdXNlZCA9IGZhbHNlO1xuICBcdFx0dGhpcy5fbWFwLmZpcmUoJ2JsdXInKTtcbiAgXHR9LFxuXG4gIFx0X3NldFBhbkRlbHRhOiBmdW5jdGlvbiAocGFuRGVsdGEpIHtcbiAgXHRcdHZhciBrZXlzID0gdGhpcy5fcGFuS2V5cyA9IHt9LFxuICBcdFx0ICAgIGNvZGVzID0gdGhpcy5rZXlDb2RlcyxcbiAgXHRcdCAgICBpLCBsZW47XG5cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLmxlZnQubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0a2V5c1tjb2Rlcy5sZWZ0W2ldXSA9IFstMSAqIHBhbkRlbHRhLCAwXTtcbiAgXHRcdH1cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLnJpZ2h0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGtleXNbY29kZXMucmlnaHRbaV1dID0gW3BhbkRlbHRhLCAwXTtcbiAgXHRcdH1cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLmRvd24ubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgXHRcdFx0a2V5c1tjb2Rlcy5kb3duW2ldXSA9IFswLCBwYW5EZWx0YV07XG4gIFx0XHR9XG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSBjb2Rlcy51cC5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRrZXlzW2NvZGVzLnVwW2ldXSA9IFswLCAtMSAqIHBhbkRlbHRhXTtcbiAgXHRcdH1cbiAgXHR9LFxuXG4gIFx0X3NldFpvb21EZWx0YTogZnVuY3Rpb24gKHpvb21EZWx0YSkge1xuICBcdFx0dmFyIGtleXMgPSB0aGlzLl96b29tS2V5cyA9IHt9LFxuICBcdFx0ICAgIGNvZGVzID0gdGhpcy5rZXlDb2RlcyxcbiAgXHRcdCAgICBpLCBsZW47XG5cbiAgXHRcdGZvciAoaSA9IDAsIGxlbiA9IGNvZGVzLnpvb21Jbi5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xuICBcdFx0XHRrZXlzW2NvZGVzLnpvb21JbltpXV0gPSB6b29tRGVsdGE7XG4gIFx0XHR9XG4gIFx0XHRmb3IgKGkgPSAwLCBsZW4gPSBjb2Rlcy56b29tT3V0Lmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gIFx0XHRcdGtleXNbY29kZXMuem9vbU91dFtpXV0gPSAtem9vbURlbHRhO1xuICBcdFx0fVxuICBcdH0sXG5cbiAgXHRfYWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9uKGRvY3VtZW50LCAna2V5ZG93bicsIHRoaXMuX29uS2V5RG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9yZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b2ZmKGRvY3VtZW50LCAna2V5ZG93bicsIHRoaXMuX29uS2V5RG93biwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9vbktleURvd246IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoZS5hbHRLZXkgfHwgZS5jdHJsS2V5IHx8IGUubWV0YUtleSkgeyByZXR1cm47IH1cblxuICBcdFx0dmFyIGtleSA9IGUua2V5Q29kZSxcbiAgXHRcdCAgICBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgb2Zmc2V0O1xuXG4gIFx0XHRpZiAoa2V5IGluIHRoaXMuX3BhbktleXMpIHtcbiAgXHRcdFx0aWYgKCFtYXAuX3BhbkFuaW0gfHwgIW1hcC5fcGFuQW5pbS5faW5Qcm9ncmVzcykge1xuICBcdFx0XHRcdG9mZnNldCA9IHRoaXMuX3BhbktleXNba2V5XTtcbiAgXHRcdFx0XHRpZiAoZS5zaGlmdEtleSkge1xuICBcdFx0XHRcdFx0b2Zmc2V0ID0gdG9Qb2ludChvZmZzZXQpLm11bHRpcGx5QnkoMyk7XG4gIFx0XHRcdFx0fVxuXG4gIFx0XHRcdFx0aWYgKG1hcC5vcHRpb25zLm1heEJvdW5kcykge1xuICBcdFx0XHRcdFx0b2Zmc2V0ID0gbWFwLl9saW1pdE9mZnNldCh0b1BvaW50KG9mZnNldCksIG1hcC5vcHRpb25zLm1heEJvdW5kcyk7XG4gIFx0XHRcdFx0fVxuXG4gIFx0XHRcdFx0aWYgKG1hcC5vcHRpb25zLndvcmxkQ29weUp1bXApIHtcbiAgXHRcdFx0XHRcdHZhciBuZXdMYXRMbmcgPSBtYXAud3JhcExhdExuZyhtYXAudW5wcm9qZWN0KG1hcC5wcm9qZWN0KG1hcC5nZXRDZW50ZXIoKSkuYWRkKG9mZnNldCkpKTtcbiAgXHRcdFx0XHRcdG1hcC5wYW5UbyhuZXdMYXRMbmcpO1xuICBcdFx0XHRcdH0gZWxzZSB7XG4gIFx0XHRcdFx0XHRtYXAucGFuQnkob2Zmc2V0KTtcbiAgXHRcdFx0XHR9XG4gIFx0XHRcdH1cbiAgXHRcdH0gZWxzZSBpZiAoa2V5IGluIHRoaXMuX3pvb21LZXlzKSB7XG4gIFx0XHRcdG1hcC5zZXRab29tKG1hcC5nZXRab29tKCkgKyAoZS5zaGlmdEtleSA/IDMgOiAxKSAqIHRoaXMuX3pvb21LZXlzW2tleV0pO1xuXG4gIFx0XHR9IGVsc2UgaWYgKGtleSA9PT0gMjcgJiYgbWFwLl9wb3B1cCAmJiBtYXAuX3BvcHVwLm9wdGlvbnMuY2xvc2VPbkVzY2FwZUtleSkge1xuICBcdFx0XHRtYXAuY2xvc2VQb3B1cCgpO1xuXG4gIFx0XHR9IGVsc2Uge1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHN0b3AoZSk7XG4gIFx0fVxuICB9KTtcblxuICAvLyBAc2VjdGlvbiBIYW5kbGVyc1xuICAvLyBAc2VjdGlvbiBIYW5kbGVyc1xuICAvLyBAcHJvcGVydHkga2V5Ym9hcmQ6IEhhbmRsZXJcbiAgLy8gS2V5Ym9hcmQgbmF2aWdhdGlvbiBoYW5kbGVyLlxuICBNYXAuYWRkSW5pdEhvb2soJ2FkZEhhbmRsZXInLCAna2V5Ym9hcmQnLCBLZXlib2FyZCk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLlNjcm9sbFdoZWVsWm9vbSBpcyB1c2VkIGJ5IEwuTWFwIHRvIGVuYWJsZSBtb3VzZSBzY3JvbGwgd2hlZWwgem9vbSBvbiB0aGUgbWFwLlxuICAgKi9cblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBzZWN0aW9uIE1vdXNlIHdoZWVsIG9wdGlvbnNcbiAgXHQvLyBAb3B0aW9uIHNjcm9sbFdoZWVsWm9vbTogQm9vbGVhbnxTdHJpbmcgPSB0cnVlXG4gIFx0Ly8gV2hldGhlciB0aGUgbWFwIGNhbiBiZSB6b29tZWQgYnkgdXNpbmcgdGhlIG1vdXNlIHdoZWVsLiBJZiBwYXNzZWQgYCdjZW50ZXInYCxcbiAgXHQvLyBpdCB3aWxsIHpvb20gdG8gdGhlIGNlbnRlciBvZiB0aGUgdmlldyByZWdhcmRsZXNzIG9mIHdoZXJlIHRoZSBtb3VzZSB3YXMuXG4gIFx0c2Nyb2xsV2hlZWxab29tOiB0cnVlLFxuXG4gIFx0Ly8gQG9wdGlvbiB3aGVlbERlYm91bmNlVGltZTogTnVtYmVyID0gNDBcbiAgXHQvLyBMaW1pdHMgdGhlIHJhdGUgYXQgd2hpY2ggYSB3aGVlbCBjYW4gZmlyZSAoaW4gbWlsbGlzZWNvbmRzKS4gQnkgZGVmYXVsdFxuICBcdC8vIHVzZXIgY2FuJ3Qgem9vbSB2aWEgd2hlZWwgbW9yZSBvZnRlbiB0aGFuIG9uY2UgcGVyIDQwIG1zLlxuICBcdHdoZWVsRGVib3VuY2VUaW1lOiA0MCxcblxuICBcdC8vIEBvcHRpb24gd2hlZWxQeFBlclpvb21MZXZlbDogTnVtYmVyID0gNjBcbiAgXHQvLyBIb3cgbWFueSBzY3JvbGwgcGl4ZWxzIChhcyByZXBvcnRlZCBieSBbTC5Eb21FdmVudC5nZXRXaGVlbERlbHRhXSgjZG9tZXZlbnQtZ2V0d2hlZWxkZWx0YSkpXG4gIFx0Ly8gbWVhbiBhIGNoYW5nZSBvZiBvbmUgZnVsbCB6b29tIGxldmVsLiBTbWFsbGVyIHZhbHVlcyB3aWxsIG1ha2Ugd2hlZWwtem9vbWluZ1xuICBcdC8vIGZhc3RlciAoYW5kIHZpY2UgdmVyc2EpLlxuICBcdHdoZWVsUHhQZXJab29tTGV2ZWw6IDYwXG4gIH0pO1xuXG4gIHZhciBTY3JvbGxXaGVlbFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9uKHRoaXMuX21hcC5fY29udGFpbmVyLCAnd2hlZWwnLCB0aGlzLl9vbldoZWVsU2Nyb2xsLCB0aGlzKTtcblxuICBcdFx0dGhpcy5fZGVsdGEgPSAwO1xuICBcdH0sXG5cbiAgXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b2ZmKHRoaXMuX21hcC5fY29udGFpbmVyLCAnd2hlZWwnLCB0aGlzLl9vbldoZWVsU2Nyb2xsLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uV2hlZWxTY3JvbGw6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHR2YXIgZGVsdGEgPSBnZXRXaGVlbERlbHRhKGUpO1xuXG4gIFx0XHR2YXIgZGVib3VuY2UgPSB0aGlzLl9tYXAub3B0aW9ucy53aGVlbERlYm91bmNlVGltZTtcblxuICBcdFx0dGhpcy5fZGVsdGEgKz0gZGVsdGE7XG4gIFx0XHR0aGlzLl9sYXN0TW91c2VQb3MgPSB0aGlzLl9tYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZSk7XG5cbiAgXHRcdGlmICghdGhpcy5fc3RhcnRUaW1lKSB7XG4gIFx0XHRcdHRoaXMuX3N0YXJ0VGltZSA9ICtuZXcgRGF0ZSgpO1xuICBcdFx0fVxuXG4gIFx0XHR2YXIgbGVmdCA9IE1hdGgubWF4KGRlYm91bmNlIC0gKCtuZXcgRGF0ZSgpIC0gdGhpcy5fc3RhcnRUaW1lKSwgMCk7XG5cbiAgXHRcdGNsZWFyVGltZW91dCh0aGlzLl90aW1lcik7XG4gIFx0XHR0aGlzLl90aW1lciA9IHNldFRpbWVvdXQoYmluZCh0aGlzLl9wZXJmb3JtWm9vbSwgdGhpcyksIGxlZnQpO1xuXG4gIFx0XHRzdG9wKGUpO1xuICBcdH0sXG5cbiAgXHRfcGVyZm9ybVpvb206IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHZhciBtYXAgPSB0aGlzLl9tYXAsXG4gIFx0XHQgICAgem9vbSA9IG1hcC5nZXRab29tKCksXG4gIFx0XHQgICAgc25hcCA9IHRoaXMuX21hcC5vcHRpb25zLnpvb21TbmFwIHx8IDA7XG5cbiAgXHRcdG1hcC5fc3RvcCgpOyAvLyBzdG9wIHBhbm5pbmcgYW5kIGZseSBhbmltYXRpb25zIGlmIGFueVxuXG4gIFx0XHQvLyBtYXAgdGhlIGRlbHRhIHdpdGggYSBzaWdtb2lkIGZ1bmN0aW9uIHRvIC00Li40IHJhbmdlIGxlYW5pbmcgb24gLTEuLjFcbiAgXHRcdHZhciBkMiA9IHRoaXMuX2RlbHRhIC8gKHRoaXMuX21hcC5vcHRpb25zLndoZWVsUHhQZXJab29tTGV2ZWwgKiA0KSxcbiAgXHRcdCAgICBkMyA9IDQgKiBNYXRoLmxvZygyIC8gKDEgKyBNYXRoLmV4cCgtTWF0aC5hYnMoZDIpKSkpIC8gTWF0aC5MTjIsXG4gIFx0XHQgICAgZDQgPSBzbmFwID8gTWF0aC5jZWlsKGQzIC8gc25hcCkgKiBzbmFwIDogZDMsXG4gIFx0XHQgICAgZGVsdGEgPSBtYXAuX2xpbWl0Wm9vbSh6b29tICsgKHRoaXMuX2RlbHRhID4gMCA/IGQ0IDogLWQ0KSkgLSB6b29tO1xuXG4gIFx0XHR0aGlzLl9kZWx0YSA9IDA7XG4gIFx0XHR0aGlzLl9zdGFydFRpbWUgPSBudWxsO1xuXG4gIFx0XHRpZiAoIWRlbHRhKSB7IHJldHVybjsgfVxuXG4gIFx0XHRpZiAobWFwLm9wdGlvbnMuc2Nyb2xsV2hlZWxab29tID09PSAnY2VudGVyJykge1xuICBcdFx0XHRtYXAuc2V0Wm9vbSh6b29tICsgZGVsdGEpO1xuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0bWFwLnNldFpvb21Bcm91bmQodGhpcy5fbGFzdE1vdXNlUG9zLCB6b29tICsgZGVsdGEpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHNjcm9sbFdoZWVsWm9vbTogSGFuZGxlclxuICAvLyBTY3JvbGwgd2hlZWwgem9vbSBoYW5kbGVyLlxuICBNYXAuYWRkSW5pdEhvb2soJ2FkZEhhbmRsZXInLCAnc2Nyb2xsV2hlZWxab29tJywgU2Nyb2xsV2hlZWxab29tKTtcblxuICAvKlxuICAgKiBMLk1hcC5UYXBIb2xkIGlzIHVzZWQgdG8gc2ltdWxhdGUgYGNvbnRleHRtZW51YCBldmVudCBvbiBsb25nIGhvbGQsXG4gICAqIHdoaWNoIG90aGVyd2lzZSBpcyBub3QgZmlyZWQgYnkgbW9iaWxlIFNhZmFyaS5cbiAgICovXG5cbiAgdmFyIHRhcEhvbGREZWxheSA9IDYwMDtcblxuICAvLyBAbmFtZXNwYWNlIE1hcFxuICAvLyBAc2VjdGlvbiBJbnRlcmFjdGlvbiBPcHRpb25zXG4gIE1hcC5tZXJnZU9wdGlvbnMoe1xuICBcdC8vIEBzZWN0aW9uIFRvdWNoIGludGVyYWN0aW9uIG9wdGlvbnNcbiAgXHQvLyBAb3B0aW9uIHRhcEhvbGQ6IEJvb2xlYW5cbiAgXHQvLyBFbmFibGVzIHNpbXVsYXRpb24gb2YgYGNvbnRleHRtZW51YCBldmVudCwgZGVmYXVsdCBpcyBgdHJ1ZWAgZm9yIG1vYmlsZSBTYWZhcmkuXG4gIFx0dGFwSG9sZDogQnJvd3Nlci50b3VjaE5hdGl2ZSAmJiBCcm93c2VyLnNhZmFyaSAmJiBCcm93c2VyLm1vYmlsZSxcblxuICBcdC8vIEBvcHRpb24gdGFwVG9sZXJhbmNlOiBOdW1iZXIgPSAxNVxuICBcdC8vIFRoZSBtYXggbnVtYmVyIG9mIHBpeGVscyBhIHVzZXIgY2FuIHNoaWZ0IGhpcyBmaW5nZXIgZHVyaW5nIHRvdWNoXG4gIFx0Ly8gZm9yIGl0IHRvIGJlIGNvbnNpZGVyZWQgYSB2YWxpZCB0YXAuXG4gIFx0dGFwVG9sZXJhbmNlOiAxNVxuICB9KTtcblxuICB2YXIgVGFwSG9sZCA9IEhhbmRsZXIuZXh0ZW5kKHtcbiAgXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0b24odGhpcy5fbWFwLl9jb250YWluZXIsICd0b3VjaHN0YXJ0JywgdGhpcy5fb25Eb3duLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0cmVtb3ZlSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdG9mZih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vbkRvd24sIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Eb3duOiBmdW5jdGlvbiAoZSkge1xuICBcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX2hvbGRUaW1lb3V0KTtcbiAgXHRcdGlmIChlLnRvdWNoZXMubGVuZ3RoICE9PSAxKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgZmlyc3QgPSBlLnRvdWNoZXNbMF07XG4gIFx0XHR0aGlzLl9zdGFydFBvcyA9IHRoaXMuX25ld1BvcyA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcblxuICBcdFx0dGhpcy5faG9sZFRpbWVvdXQgPSBzZXRUaW1lb3V0KGJpbmQoZnVuY3Rpb24gKCkge1xuICBcdFx0XHR0aGlzLl9jYW5jZWwoKTtcbiAgXHRcdFx0aWYgKCF0aGlzLl9pc1RhcFZhbGlkKCkpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdFx0Ly8gcHJldmVudCBzaW11bGF0ZWQgbW91c2UgZXZlbnRzIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby90b3VjaC1ldmVudHMvI21vdXNlLWV2ZW50c1xuICBcdFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kJywgcHJldmVudERlZmF1bHQpO1xuICBcdFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fY2FuY2VsQ2xpY2tQcmV2ZW50KTtcbiAgXHRcdFx0dGhpcy5fc2ltdWxhdGVFdmVudCgnY29udGV4dG1lbnUnLCBmaXJzdCk7XG4gIFx0XHR9LCB0aGlzKSwgdGFwSG9sZERlbGF5KTtcblxuICBcdFx0b24oZG9jdW1lbnQsICd0b3VjaGVuZCB0b3VjaGNhbmNlbCBjb250ZXh0bWVudScsIHRoaXMuX2NhbmNlbCwgdGhpcyk7XG4gIFx0XHRvbihkb2N1bWVudCwgJ3RvdWNobW92ZScsIHRoaXMuX29uTW92ZSwgdGhpcyk7XG4gIFx0fSxcblxuICBcdF9jYW5jZWxDbGlja1ByZXZlbnQ6IGZ1bmN0aW9uIGNhbmNlbENsaWNrUHJldmVudCgpIHtcbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNoZW5kJywgcHJldmVudERlZmF1bHQpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2hlbmQgdG91Y2hjYW5jZWwnLCBjYW5jZWxDbGlja1ByZXZlbnQpO1xuICBcdH0sXG5cbiAgXHRfY2FuY2VsOiBmdW5jdGlvbiAoKSB7XG4gIFx0XHRjbGVhclRpbWVvdXQodGhpcy5faG9sZFRpbWVvdXQpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2hlbmQgdG91Y2hjYW5jZWwgY29udGV4dG1lbnUnLCB0aGlzLl9jYW5jZWwsIHRoaXMpO1xuICBcdFx0b2ZmKGRvY3VtZW50LCAndG91Y2htb3ZlJywgdGhpcy5fb25Nb3ZlLCB0aGlzKTtcbiAgXHR9LFxuXG4gIFx0X29uTW92ZTogZnVuY3Rpb24gKGUpIHtcbiAgXHRcdHZhciBmaXJzdCA9IGUudG91Y2hlc1swXTtcbiAgXHRcdHRoaXMuX25ld1BvcyA9IG5ldyBQb2ludChmaXJzdC5jbGllbnRYLCBmaXJzdC5jbGllbnRZKTtcbiAgXHR9LFxuXG4gIFx0X2lzVGFwVmFsaWQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdHJldHVybiB0aGlzLl9uZXdQb3MuZGlzdGFuY2VUbyh0aGlzLl9zdGFydFBvcykgPD0gdGhpcy5fbWFwLm9wdGlvbnMudGFwVG9sZXJhbmNlO1xuICBcdH0sXG5cbiAgXHRfc2ltdWxhdGVFdmVudDogZnVuY3Rpb24gKHR5cGUsIGUpIHtcbiAgXHRcdHZhciBzaW11bGF0ZWRFdmVudCA9IG5ldyBNb3VzZUV2ZW50KHR5cGUsIHtcbiAgXHRcdFx0YnViYmxlczogdHJ1ZSxcbiAgXHRcdFx0Y2FuY2VsYWJsZTogdHJ1ZSxcbiAgXHRcdFx0dmlldzogd2luZG93LFxuICBcdFx0XHQvLyBkZXRhaWw6IDEsXG4gIFx0XHRcdHNjcmVlblg6IGUuc2NyZWVuWCxcbiAgXHRcdFx0c2NyZWVuWTogZS5zY3JlZW5ZLFxuICBcdFx0XHRjbGllbnRYOiBlLmNsaWVudFgsXG4gIFx0XHRcdGNsaWVudFk6IGUuY2xpZW50WSxcbiAgXHRcdFx0Ly8gYnV0dG9uOiAyLFxuICBcdFx0XHQvLyBidXR0b25zOiAyXG4gIFx0XHR9KTtcblxuICBcdFx0c2ltdWxhdGVkRXZlbnQuX3NpbXVsYXRlZCA9IHRydWU7XG5cbiAgXHRcdGUudGFyZ2V0LmRpc3BhdGNoRXZlbnQoc2ltdWxhdGVkRXZlbnQpO1xuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHRhcEhvbGQ6IEhhbmRsZXJcbiAgLy8gTG9uZyB0YXAgaGFuZGxlciB0byBzaW11bGF0ZSBgY29udGV4dG1lbnVgIGV2ZW50ICh1c2VmdWwgaW4gbW9iaWxlIFNhZmFyaSkuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICd0YXBIb2xkJywgVGFwSG9sZCk7XG5cbiAgLypcbiAgICogTC5IYW5kbGVyLlRvdWNoWm9vbSBpcyB1c2VkIGJ5IEwuTWFwIHRvIGFkZCBwaW5jaCB6b29tIG9uIHN1cHBvcnRlZCBtb2JpbGUgYnJvd3NlcnMuXG4gICAqL1xuXG4gIC8vIEBuYW1lc3BhY2UgTWFwXG4gIC8vIEBzZWN0aW9uIEludGVyYWN0aW9uIE9wdGlvbnNcbiAgTWFwLm1lcmdlT3B0aW9ucyh7XG4gIFx0Ly8gQHNlY3Rpb24gVG91Y2ggaW50ZXJhY3Rpb24gb3B0aW9uc1xuICBcdC8vIEBvcHRpb24gdG91Y2hab29tOiBCb29sZWFufFN0cmluZyA9ICpcbiAgXHQvLyBXaGV0aGVyIHRoZSBtYXAgY2FuIGJlIHpvb21lZCBieSB0b3VjaC1kcmFnZ2luZyB3aXRoIHR3byBmaW5nZXJzLiBJZlxuICBcdC8vIHBhc3NlZCBgJ2NlbnRlcidgLCBpdCB3aWxsIHpvb20gdG8gdGhlIGNlbnRlciBvZiB0aGUgdmlldyByZWdhcmRsZXNzIG9mXG4gIFx0Ly8gd2hlcmUgdGhlIHRvdWNoIGV2ZW50cyAoZmluZ2Vycykgd2VyZS4gRW5hYmxlZCBmb3IgdG91Y2gtY2FwYWJsZSB3ZWJcbiAgXHQvLyBicm93c2Vycy5cbiAgXHR0b3VjaFpvb206IEJyb3dzZXIudG91Y2gsXG5cbiAgXHQvLyBAb3B0aW9uIGJvdW5jZUF0Wm9vbUxpbWl0czogQm9vbGVhbiA9IHRydWVcbiAgXHQvLyBTZXQgaXQgdG8gZmFsc2UgaWYgeW91IGRvbid0IHdhbnQgdGhlIG1hcCB0byB6b29tIGJleW9uZCBtaW4vbWF4IHpvb21cbiAgXHQvLyBhbmQgdGhlbiBib3VuY2UgYmFjayB3aGVuIHBpbmNoLXpvb21pbmcuXG4gIFx0Ym91bmNlQXRab29tTGltaXRzOiB0cnVlXG4gIH0pO1xuXG4gIHZhciBUb3VjaFpvb20gPSBIYW5kbGVyLmV4dGVuZCh7XG4gIFx0YWRkSG9va3M6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGFkZENsYXNzKHRoaXMuX21hcC5fY29udGFpbmVyLCAnbGVhZmxldC10b3VjaC16b29tJyk7XG4gIFx0XHRvbih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vblRvdWNoU3RhcnQsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuICBcdFx0cmVtb3ZlQ2xhc3ModGhpcy5fbWFwLl9jb250YWluZXIsICdsZWFmbGV0LXRvdWNoLXpvb20nKTtcbiAgXHRcdG9mZih0aGlzLl9tYXAuX2NvbnRhaW5lciwgJ3RvdWNoc3RhcnQnLCB0aGlzLl9vblRvdWNoU3RhcnQsIHRoaXMpO1xuICBcdH0sXG5cbiAgXHRfb25Ub3VjaFN0YXJ0OiBmdW5jdGlvbiAoZSkge1xuICBcdFx0dmFyIG1hcCA9IHRoaXMuX21hcDtcbiAgXHRcdGlmICghZS50b3VjaGVzIHx8IGUudG91Y2hlcy5sZW5ndGggIT09IDIgfHwgbWFwLl9hbmltYXRpbmdab29tIHx8IHRoaXMuX3pvb21pbmcpIHsgcmV0dXJuOyB9XG5cbiAgXHRcdHZhciBwMSA9IG1hcC5tb3VzZUV2ZW50VG9Db250YWluZXJQb2ludChlLnRvdWNoZXNbMF0pLFxuICBcdFx0ICAgIHAyID0gbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUudG91Y2hlc1sxXSk7XG5cbiAgXHRcdHRoaXMuX2NlbnRlclBvaW50ID0gbWFwLmdldFNpemUoKS5fZGl2aWRlQnkoMik7XG4gIFx0XHR0aGlzLl9zdGFydExhdExuZyA9IG1hcC5jb250YWluZXJQb2ludFRvTGF0TG5nKHRoaXMuX2NlbnRlclBvaW50KTtcbiAgXHRcdGlmIChtYXAub3B0aW9ucy50b3VjaFpvb20gIT09ICdjZW50ZXInKSB7XG4gIFx0XHRcdHRoaXMuX3BpbmNoU3RhcnRMYXRMbmcgPSBtYXAuY29udGFpbmVyUG9pbnRUb0xhdExuZyhwMS5hZGQocDIpLl9kaXZpZGVCeSgyKSk7XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3N0YXJ0RGlzdCA9IHAxLmRpc3RhbmNlVG8ocDIpO1xuICBcdFx0dGhpcy5fc3RhcnRab29tID0gbWFwLmdldFpvb20oKTtcblxuICBcdFx0dGhpcy5fbW92ZWQgPSBmYWxzZTtcbiAgXHRcdHRoaXMuX3pvb21pbmcgPSB0cnVlO1xuXG4gIFx0XHRtYXAuX3N0b3AoKTtcblxuICBcdFx0b24oZG9jdW1lbnQsICd0b3VjaG1vdmUnLCB0aGlzLl9vblRvdWNoTW92ZSwgdGhpcyk7XG4gIFx0XHRvbihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25Ub3VjaEVuZCwgdGhpcyk7XG5cbiAgXHRcdHByZXZlbnREZWZhdWx0KGUpO1xuICBcdH0sXG5cbiAgXHRfb25Ub3VjaE1vdmU6IGZ1bmN0aW9uIChlKSB7XG4gIFx0XHRpZiAoIWUudG91Y2hlcyB8fCBlLnRvdWNoZXMubGVuZ3RoICE9PSAyIHx8ICF0aGlzLl96b29taW5nKSB7IHJldHVybjsgfVxuXG4gIFx0XHR2YXIgbWFwID0gdGhpcy5fbWFwLFxuICBcdFx0ICAgIHAxID0gbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUudG91Y2hlc1swXSksXG4gIFx0XHQgICAgcDIgPSBtYXAubW91c2VFdmVudFRvQ29udGFpbmVyUG9pbnQoZS50b3VjaGVzWzFdKSxcbiAgXHRcdCAgICBzY2FsZSA9IHAxLmRpc3RhbmNlVG8ocDIpIC8gdGhpcy5fc3RhcnREaXN0O1xuXG4gIFx0XHR0aGlzLl96b29tID0gbWFwLmdldFNjYWxlWm9vbShzY2FsZSwgdGhpcy5fc3RhcnRab29tKTtcblxuICBcdFx0aWYgKCFtYXAub3B0aW9ucy5ib3VuY2VBdFpvb21MaW1pdHMgJiYgKFxuICBcdFx0XHQodGhpcy5fem9vbSA8IG1hcC5nZXRNaW5ab29tKCkgJiYgc2NhbGUgPCAxKSB8fFxuICBcdFx0XHQodGhpcy5fem9vbSA+IG1hcC5nZXRNYXhab29tKCkgJiYgc2NhbGUgPiAxKSkpIHtcbiAgXHRcdFx0dGhpcy5fem9vbSA9IG1hcC5fbGltaXRab29tKHRoaXMuX3pvb20pO1xuICBcdFx0fVxuXG4gIFx0XHRpZiAobWFwLm9wdGlvbnMudG91Y2hab29tID09PSAnY2VudGVyJykge1xuICBcdFx0XHR0aGlzLl9jZW50ZXIgPSB0aGlzLl9zdGFydExhdExuZztcbiAgXHRcdFx0aWYgKHNjYWxlID09PSAxKSB7IHJldHVybjsgfVxuICBcdFx0fSBlbHNlIHtcbiAgXHRcdFx0Ly8gR2V0IGRlbHRhIGZyb20gcGluY2ggdG8gY2VudGVyLCBzbyBjZW50ZXJMYXRMbmcgaXMgZGVsdGEgYXBwbGllZCB0byBpbml0aWFsIHBpbmNoTGF0TG5nXG4gIFx0XHRcdHZhciBkZWx0YSA9IHAxLl9hZGQocDIpLl9kaXZpZGVCeSgyKS5fc3VidHJhY3QodGhpcy5fY2VudGVyUG9pbnQpO1xuICBcdFx0XHRpZiAoc2NhbGUgPT09IDEgJiYgZGVsdGEueCA9PT0gMCAmJiBkZWx0YS55ID09PSAwKSB7IHJldHVybjsgfVxuICBcdFx0XHR0aGlzLl9jZW50ZXIgPSBtYXAudW5wcm9qZWN0KG1hcC5wcm9qZWN0KHRoaXMuX3BpbmNoU3RhcnRMYXRMbmcsIHRoaXMuX3pvb20pLnN1YnRyYWN0KGRlbHRhKSwgdGhpcy5fem9vbSk7XG4gIFx0XHR9XG5cbiAgXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcbiAgXHRcdFx0bWFwLl9tb3ZlU3RhcnQodHJ1ZSwgZmFsc2UpO1xuICBcdFx0XHR0aGlzLl9tb3ZlZCA9IHRydWU7XG4gIFx0XHR9XG5cbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltUmVxdWVzdCk7XG5cbiAgXHRcdHZhciBtb3ZlRm4gPSBiaW5kKG1hcC5fbW92ZSwgbWFwLCB0aGlzLl9jZW50ZXIsIHRoaXMuX3pvb20sIHtwaW5jaDogdHJ1ZSwgcm91bmQ6IGZhbHNlfSwgdW5kZWZpbmVkKTtcbiAgXHRcdHRoaXMuX2FuaW1SZXF1ZXN0ID0gcmVxdWVzdEFuaW1GcmFtZShtb3ZlRm4sIHRoaXMsIHRydWUpO1xuXG4gIFx0XHRwcmV2ZW50RGVmYXVsdChlKTtcbiAgXHR9LFxuXG4gIFx0X29uVG91Y2hFbmQ6IGZ1bmN0aW9uICgpIHtcbiAgXHRcdGlmICghdGhpcy5fbW92ZWQgfHwgIXRoaXMuX3pvb21pbmcpIHtcbiAgXHRcdFx0dGhpcy5fem9vbWluZyA9IGZhbHNlO1xuICBcdFx0XHRyZXR1cm47XG4gIFx0XHR9XG5cbiAgXHRcdHRoaXMuX3pvb21pbmcgPSBmYWxzZTtcbiAgXHRcdGNhbmNlbEFuaW1GcmFtZSh0aGlzLl9hbmltUmVxdWVzdCk7XG5cbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNobW92ZScsIHRoaXMuX29uVG91Y2hNb3ZlLCB0aGlzKTtcbiAgXHRcdG9mZihkb2N1bWVudCwgJ3RvdWNoZW5kIHRvdWNoY2FuY2VsJywgdGhpcy5fb25Ub3VjaEVuZCwgdGhpcyk7XG5cbiAgXHRcdC8vIFBpbmNoIHVwZGF0ZXMgR3JpZExheWVycycgbGV2ZWxzIG9ubHkgd2hlbiB6b29tU25hcCBpcyBvZmYsIHNvIHpvb21TbmFwIGJlY29tZXMgbm9VcGRhdGUuXG4gIFx0XHRpZiAodGhpcy5fbWFwLm9wdGlvbnMuem9vbUFuaW1hdGlvbikge1xuICBcdFx0XHR0aGlzLl9tYXAuX2FuaW1hdGVab29tKHRoaXMuX2NlbnRlciwgdGhpcy5fbWFwLl9saW1pdFpvb20odGhpcy5fem9vbSksIHRydWUsIHRoaXMuX21hcC5vcHRpb25zLnpvb21TbmFwKTtcbiAgXHRcdH0gZWxzZSB7XG4gIFx0XHRcdHRoaXMuX21hcC5fcmVzZXRWaWV3KHRoaXMuX2NlbnRlciwgdGhpcy5fbWFwLl9saW1pdFpvb20odGhpcy5fem9vbSkpO1xuICBcdFx0fVxuICBcdH1cbiAgfSk7XG5cbiAgLy8gQHNlY3Rpb24gSGFuZGxlcnNcbiAgLy8gQHByb3BlcnR5IHRvdWNoWm9vbTogSGFuZGxlclxuICAvLyBUb3VjaCB6b29tIGhhbmRsZXIuXG4gIE1hcC5hZGRJbml0SG9vaygnYWRkSGFuZGxlcicsICd0b3VjaFpvb20nLCBUb3VjaFpvb20pO1xuXG4gIE1hcC5Cb3hab29tID0gQm94Wm9vbTtcbiAgTWFwLkRvdWJsZUNsaWNrWm9vbSA9IERvdWJsZUNsaWNrWm9vbTtcbiAgTWFwLkRyYWcgPSBEcmFnO1xuICBNYXAuS2V5Ym9hcmQgPSBLZXlib2FyZDtcbiAgTWFwLlNjcm9sbFdoZWVsWm9vbSA9IFNjcm9sbFdoZWVsWm9vbTtcbiAgTWFwLlRhcEhvbGQgPSBUYXBIb2xkO1xuICBNYXAuVG91Y2hab29tID0gVG91Y2hab29tO1xuXG4gIGV4cG9ydHMuQm91bmRzID0gQm91bmRzO1xuICBleHBvcnRzLkJyb3dzZXIgPSBCcm93c2VyO1xuICBleHBvcnRzLkNSUyA9IENSUztcbiAgZXhwb3J0cy5DYW52YXMgPSBDYW52YXM7XG4gIGV4cG9ydHMuQ2lyY2xlID0gQ2lyY2xlO1xuICBleHBvcnRzLkNpcmNsZU1hcmtlciA9IENpcmNsZU1hcmtlcjtcbiAgZXhwb3J0cy5DbGFzcyA9IENsYXNzO1xuICBleHBvcnRzLkNvbnRyb2wgPSBDb250cm9sO1xuICBleHBvcnRzLkRpdkljb24gPSBEaXZJY29uO1xuICBleHBvcnRzLkRpdk92ZXJsYXkgPSBEaXZPdmVybGF5O1xuICBleHBvcnRzLkRvbUV2ZW50ID0gRG9tRXZlbnQ7XG4gIGV4cG9ydHMuRG9tVXRpbCA9IERvbVV0aWw7XG4gIGV4cG9ydHMuRHJhZ2dhYmxlID0gRHJhZ2dhYmxlO1xuICBleHBvcnRzLkV2ZW50ZWQgPSBFdmVudGVkO1xuICBleHBvcnRzLkZlYXR1cmVHcm91cCA9IEZlYXR1cmVHcm91cDtcbiAgZXhwb3J0cy5HZW9KU09OID0gR2VvSlNPTjtcbiAgZXhwb3J0cy5HcmlkTGF5ZXIgPSBHcmlkTGF5ZXI7XG4gIGV4cG9ydHMuSGFuZGxlciA9IEhhbmRsZXI7XG4gIGV4cG9ydHMuSWNvbiA9IEljb247XG4gIGV4cG9ydHMuSW1hZ2VPdmVybGF5ID0gSW1hZ2VPdmVybGF5O1xuICBleHBvcnRzLkxhdExuZyA9IExhdExuZztcbiAgZXhwb3J0cy5MYXRMbmdCb3VuZHMgPSBMYXRMbmdCb3VuZHM7XG4gIGV4cG9ydHMuTGF5ZXIgPSBMYXllcjtcbiAgZXhwb3J0cy5MYXllckdyb3VwID0gTGF5ZXJHcm91cDtcbiAgZXhwb3J0cy5MaW5lVXRpbCA9IExpbmVVdGlsO1xuICBleHBvcnRzLk1hcCA9IE1hcDtcbiAgZXhwb3J0cy5NYXJrZXIgPSBNYXJrZXI7XG4gIGV4cG9ydHMuTWl4aW4gPSBNaXhpbjtcbiAgZXhwb3J0cy5QYXRoID0gUGF0aDtcbiAgZXhwb3J0cy5Qb2ludCA9IFBvaW50O1xuICBleHBvcnRzLlBvbHlVdGlsID0gUG9seVV0aWw7XG4gIGV4cG9ydHMuUG9seWdvbiA9IFBvbHlnb247XG4gIGV4cG9ydHMuUG9seWxpbmUgPSBQb2x5bGluZTtcbiAgZXhwb3J0cy5Qb3B1cCA9IFBvcHVwO1xuICBleHBvcnRzLlBvc0FuaW1hdGlvbiA9IFBvc0FuaW1hdGlvbjtcbiAgZXhwb3J0cy5Qcm9qZWN0aW9uID0gaW5kZXg7XG4gIGV4cG9ydHMuUmVjdGFuZ2xlID0gUmVjdGFuZ2xlO1xuICBleHBvcnRzLlJlbmRlcmVyID0gUmVuZGVyZXI7XG4gIGV4cG9ydHMuU1ZHID0gU1ZHO1xuICBleHBvcnRzLlNWR092ZXJsYXkgPSBTVkdPdmVybGF5O1xuICBleHBvcnRzLlRpbGVMYXllciA9IFRpbGVMYXllcjtcbiAgZXhwb3J0cy5Ub29sdGlwID0gVG9vbHRpcDtcbiAgZXhwb3J0cy5UcmFuc2Zvcm1hdGlvbiA9IFRyYW5zZm9ybWF0aW9uO1xuICBleHBvcnRzLlV0aWwgPSBVdGlsO1xuICBleHBvcnRzLlZpZGVvT3ZlcmxheSA9IFZpZGVvT3ZlcmxheTtcbiAgZXhwb3J0cy5iaW5kID0gYmluZDtcbiAgZXhwb3J0cy5ib3VuZHMgPSB0b0JvdW5kcztcbiAgZXhwb3J0cy5jYW52YXMgPSBjYW52YXM7XG4gIGV4cG9ydHMuY2lyY2xlID0gY2lyY2xlO1xuICBleHBvcnRzLmNpcmNsZU1hcmtlciA9IGNpcmNsZU1hcmtlcjtcbiAgZXhwb3J0cy5jb250cm9sID0gY29udHJvbDtcbiAgZXhwb3J0cy5kaXZJY29uID0gZGl2SWNvbjtcbiAgZXhwb3J0cy5leHRlbmQgPSBleHRlbmQ7XG4gIGV4cG9ydHMuZmVhdHVyZUdyb3VwID0gZmVhdHVyZUdyb3VwO1xuICBleHBvcnRzLmdlb0pTT04gPSBnZW9KU09OO1xuICBleHBvcnRzLmdlb0pzb24gPSBnZW9Kc29uO1xuICBleHBvcnRzLmdyaWRMYXllciA9IGdyaWRMYXllcjtcbiAgZXhwb3J0cy5pY29uID0gaWNvbjtcbiAgZXhwb3J0cy5pbWFnZU92ZXJsYXkgPSBpbWFnZU92ZXJsYXk7XG4gIGV4cG9ydHMubGF0TG5nID0gdG9MYXRMbmc7XG4gIGV4cG9ydHMubGF0TG5nQm91bmRzID0gdG9MYXRMbmdCb3VuZHM7XG4gIGV4cG9ydHMubGF5ZXJHcm91cCA9IGxheWVyR3JvdXA7XG4gIGV4cG9ydHMubWFwID0gY3JlYXRlTWFwO1xuICBleHBvcnRzLm1hcmtlciA9IG1hcmtlcjtcbiAgZXhwb3J0cy5wb2ludCA9IHRvUG9pbnQ7XG4gIGV4cG9ydHMucG9seWdvbiA9IHBvbHlnb247XG4gIGV4cG9ydHMucG9seWxpbmUgPSBwb2x5bGluZTtcbiAgZXhwb3J0cy5wb3B1cCA9IHBvcHVwO1xuICBleHBvcnRzLnJlY3RhbmdsZSA9IHJlY3RhbmdsZTtcbiAgZXhwb3J0cy5zZXRPcHRpb25zID0gc2V0T3B0aW9ucztcbiAgZXhwb3J0cy5zdGFtcCA9IHN0YW1wO1xuICBleHBvcnRzLnN2ZyA9IHN2ZztcbiAgZXhwb3J0cy5zdmdPdmVybGF5ID0gc3ZnT3ZlcmxheTtcbiAgZXhwb3J0cy50aWxlTGF5ZXIgPSB0aWxlTGF5ZXI7XG4gIGV4cG9ydHMudG9vbHRpcCA9IHRvb2x0aXA7XG4gIGV4cG9ydHMudHJhbnNmb3JtYXRpb24gPSB0b1RyYW5zZm9ybWF0aW9uO1xuICBleHBvcnRzLnZlcnNpb24gPSB2ZXJzaW9uO1xuICBleHBvcnRzLnZpZGVvT3ZlcmxheSA9IHZpZGVvT3ZlcmxheTtcblxuICB2YXIgb2xkTCA9IHdpbmRvdy5MO1xuICBleHBvcnRzLm5vQ29uZmxpY3QgPSBmdW5jdGlvbigpIHtcbiAgXHR3aW5kb3cuTCA9IG9sZEw7XG4gIFx0cmV0dXJuIHRoaXM7XG4gIH1cbiAgLy8gQWx3YXlzIGV4cG9ydCB1cyB0byB3aW5kb3cgZ2xvYmFsIChzZWUgIzIzNjQpXG4gIHdpbmRvdy5MID0gZXhwb3J0cztcblxufSkpO1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9bGVhZmxldC1zcmMuanMubWFwXG4iLCIvKiohXG4qIEBsaWNlbnNlXG4qIFRoZSBNSVQgTGljZW5zZSAoTUlUKVxuKiBcbiogQ29weXJpZ2h0IChjKSAyMDE3IE3DpW5zIEJlY2ttYW4gLSB3d3cuc3BhdGlhbGlsbHVzaW9ucy5jb21cbiogXG4qIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbiogb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuKiBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4qIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbiogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4qIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4qIFxuKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcbiogY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbiogXG4qIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1JcbiogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4qIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuKiBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4qIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4qIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFXG4qIFNPRlRXQVJFLlxuKiBcbiogTW9yZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgYXQgd3d3LnNwYXRpYWxpbGx1c2lvbnMuY29tIFxuKi9cbiFmdW5jdGlvbihJLHQpe1wib2JqZWN0XCI9PXR5cGVvZiBleHBvcnRzJiZcInVuZGVmaW5lZFwiIT10eXBlb2YgbW9kdWxlP21vZHVsZS5leHBvcnRzPXQoKTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKFwibWlsc3ltYm9sXCIsdCk6SS5tcz10KCl9KHRoaXMsZnVuY3Rpb24oKXtcInVzZSBzdHJpY3RcIjt2YXIgdD17QmxhY2s6e0NpdmlsaWFuOlwiYmxhY2tcIixGcmllbmQ6XCJibGFja1wiLEhvc3RpbGU6XCJibGFja1wiLE5ldXRyYWw6XCJibGFja1wiLFVua25vd246XCJibGFja1wifSxEYXJrOntDaXZpbGlhbjpcInJnYig4MCwwLDgwKVwiLEZyaWVuZDpcInJnYigwLDEwNywxNDApXCIsSG9zdGlsZTpcInJnYigyMDAsMCwwKVwiLE5ldXRyYWw6XCJyZ2IoMCwxNjAsMClcIixVbmtub3duOlwicmdiKDIyNSwyMjAsMClcIn0sRnJhbWVDb2xvcjp7Q2l2aWxpYW46XCJyZ2IoMjU1LDAsMjU1KVwiLEZyaWVuZDpcInJnYigwLCAyNTUsIDI1NSlcIixIb3N0aWxlOlwicmdiKDI1NSwgMCwgMClcIixOZXV0cmFsOlwicmdiKDAsIDI1NSwgMClcIixVbmtub3duOlwicmdiKDI1NSwgMjU1LCAwKVwifSxJY29uQ29sb3I6e0NpdmlsaWFuOlwicmdiKDI1NSwwLDI1NSlcIixGcmllbmQ6XCJyZ2IoMCwgMjU1LCAyNTUpXCIsSG9zdGlsZTpcInJnYigyNTUsIDAsIDApXCIsTmV1dHJhbDpcInJnYigwLCAyNTUsIDApXCIsVW5rbm93bjpcInJnYigyNTUsIDI1NSwgMClcIn0sTGlnaHQ6e0NpdmlsaWFuOlwicmdiKDI1NSwxNjEsMjU1KVwiLEZyaWVuZDpcInJnYigxMjgsMjI0LDI1NSlcIixIb3N0aWxlOlwicmdiKDI1NSwxMjgsMTI4KVwiLE5ldXRyYWw6XCJyZ2IoMTcwLDI1NSwxNzApXCIsVW5rbm93bjpcInJnYigyNTUsMjU1LDEyOClcIn0sTWVkaXVtOntDaXZpbGlhbjpcInJnYigxMjgsMCwxMjgpXCIsRnJpZW5kOlwicmdiKDAsMTY4LDIyMClcIixIb3N0aWxlOlwicmdiKDI1NSw0OCw0OSlcIixOZXV0cmFsOlwicmdiKDAsMjI2LDExMClcIixVbmtub3duOlwicmdiKDI1NSwyNTUsMClcIn0sTm9uZTp7Q2l2aWxpYW46ITEsRnJpZW5kOiExLEhvc3RpbGU6ITEsTmV1dHJhbDohMSxVbmtub3duOiExfSxPZmZXaGl0ZTp7Q2l2aWxpYW46XCJyZ2IoMjM5LCAyMzksIDIzOSlcIixGcmllbmQ6XCJyZ2IoMjM5LCAyMzksIDIzOSlcIixIb3N0aWxlOlwicmdiKDIzOSwgMjM5LCAyMzkpXCIsTmV1dHJhbDpcInJnYigyMzksIDIzOSwgMjM5KVwiLFVua25vd246XCJyZ2IoMjM5LCAyMzksIDIzOSlcIn0sV2hpdGU6e0NpdmlsaWFuOlwid2hpdGVcIixGcmllbmQ6XCJ3aGl0ZVwiLEhvc3RpbGU6XCJ3aGl0ZVwiLE5ldXRyYWw6XCJ3aGl0ZVwiLFVua25vd246XCJ3aGl0ZVwifX07ZnVuY3Rpb24gRShJKXt2YXIgdCxFPVtdLFI9W10sZT10aGlzLmNvbG9ycy5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO2lmKCF0aGlzLm1ldGFkYXRhLmZyYW1lJiZ0aGlzLnN0eWxlLmljb258fHZvaWQgMD09PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcudHlwZSlyZXR1cm57cHJlOkUscG9zdDpSLGJib3g6dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveH07dmFyIEEsQz17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9O3N3aXRjaChDLnR5cGUpe2Nhc2VcInBhdGhcIjpDLmQ9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZy5kO2JyZWFrO2Nhc2VcImNpcmNsZVwiOkMuY3g9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZy5jeCxDLmN5PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuY3ksQy5yPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5Lmcucn0oQy5maWxsPXRoaXMuY29sb3JzLmZpbGxDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxDLmZpbGxvcGFjaXR5PXRoaXMuc3R5bGUuZmlsbE9wYWNpdHksQy5zdHJva2U9ZSxDLnN0cm9rZXdpZHRoPTEwPD10aGlzLnN0eWxlLnNpemU/dGhpcy5zdHlsZS5zdHJva2VXaWR0aDoxMCx0aGlzLnN0eWxlLmZyYW1lJiYwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSYmKFwicGF0aFwiPT1DLnR5cGUmJnRoaXMubWV0YWRhdGEuZmlsbCYmIXRoaXMuc3R5bGUubW9ub0NvbG9yPygoQT17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9KS5kPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuZCtcIiBaXCIsQS5zdHJva2V3aWR0aD0xMDw9dGhpcy5zdHlsZS5zaXplP3RoaXMuc3R5bGUuc3Ryb2tlV2lkdGg6MTApOkE9QyxFLnB1c2goSS5vdXRsaW5lKEEsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSk7aWYoXCJcIj09dGhpcy5zdHlsZS5tb25vQ29sb3ImJnRoaXMuc3R5bGUuZmlsbHx8IXRoaXMubWV0YWRhdGEubm90cHJlc2VudHx8KEMuc3Ryb2tlZGFzaGFycmF5PXRoaXMubWV0YWRhdGEubm90cHJlc2VudCksUi5wdXNoKEMpLHRoaXMubWV0YWRhdGEuc3BhY2UmJih0PXtGcmllbmQ6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTSAxMDAsMzAgQyA5MCwzMCA4MCwzNSA2OC42NTYyNSw1MCBsIDYyLjY4NzUsMCBDIDEyMCwzNSAxMTAsMzAgMTAwLDMwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTTY3LDUwIEwxMDAsMjAgMTMzLDUwIHpcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNNDUsNTAgbDAsLTIwIDExMCwwIDAsMjAgelwifSxVbmtub3duOnt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOmUsZDpcIk0gMTAwIDIyLjUgQyA4NSAyMi41IDcwIDMxLjY2OTIxMSA2NiA1MCBMIDEzNCA1MCBDIDEzMCAzMS42NjkyMDQgMTE1IDIyLjUgMTAwIDIyLjUgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLm1ldGFkYXRhLmFjdGl2aXR5JiYodD17RnJpZW5kOnt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOmUsZDpcIm0gMTYwLDEzNSAwLDE1IDE1LDAgMCwtMTUgeiBtIC0xMzUsMCAxNSwwIDAsMTUgLTE1LDAgeiBtIDEzNSwtODUgMCwxNSAxNSwwIDAsLTE1IHogbSAtMTM1LDAgMTUsMCAwLDE1IC0xNSwwIHpcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNIDEwMCAyOCBMIDg5LjQwNjI1IDM4LjU5Mzc1IEwgMTAwIDQ5LjIxODc1IEwgMTEwLjU5Mzc1IDM4LjU5Mzc1IEwgMTAwIDI4IHogTSAzOC42ODc1IDg5LjMxMjUgTCAyOC4wNjI1IDk5LjkzNzUgTCAzOC42ODc1IDExMC41MzEyNSBMIDQ5LjI4MTI1IDk5LjkzNzUgTCAzOC42ODc1IDg5LjMxMjUgeiBNIDE2MS40MDYyNSA4OS40MDYyNSBMIDE1MC43ODEyNSAxMDAgTCAxNjEuNDA2MjUgMTEwLjU5Mzc1IEwgMTcyIDEwMCBMIDE2MS40MDYyNSA4OS40MDYyNSB6IE0gOTkuOTM3NSAxNTAuNzE4NzUgTCA4OS4zMTI1IDE2MS4zMTI1IEwgOTkuOTM3NSAxNzEuOTM3NSBMIDExMC41MzEyNSAxNjEuMzEyNSBMIDk5LjkzNzUgMTUwLjcxODc1XCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxNDAsMTQwIDE1LDAgMCwxNSAtMTUsMCB6IG0gLTgwLDAgMCwxNSAtMTUsMCAwLC0xNSB6IG0gODAsLTgwIDAsLTE1IDE1LDAgMCwxNSB6IG0gLTgwLDAgLTE1LDAgMCwtMTUgMTUsMCB6XCJ9LFVua25vd246e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwiTSAxMDcuOTY4NzUgMzEuNDY4NzUgTCA5Mi4wMzEyNSAzMS43MTg3NSBMIDkyLjAzMTI1IDQ2LjQzNzUgTCAxMDcuNzE4NzUgNDYuNDM3NSBMIDEwNy45Njg3NSAzMS40Njg3NSB6IE0gNDcuMDMxMjUgOTIuNSBMIDMxLjA5Mzc1IDkyLjc1IEwgMzEuMDkzNzUgMTA3LjUgTCA0Ni43ODEyNSAxMDcuNSBMIDQ3LjAzMTI1IDkyLjUgeiBNIDE2OC40Mzc1IDkyLjUgTCAxNTIuNSA5Mi43NSBMIDE1Mi41IDEwNy41IEwgMTY4LjE4NzUgMTA3LjUgTCAxNjguNDM3NSA5Mi41IHogTSAxMDcuOTY4NzUgMTUzLjU2MjUgTCA5Mi4wMzEyNSAxNTMuODEyNSBMIDkyLjAzMTI1IDE2OC41MzEyNSBMIDEwNy43MTg3NSAxNjguNTMxMjUgTCAxMDcuOTY4NzUgMTUzLjU2MjUgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLm1ldGFkYXRhLmN5YmVyc3BhY2UmJih0PXtGcmllbmQ6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxMzUsMTUwIDQwLC00MCAwLDQwIHpcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJtIDE1MCw3OCAwLDQ0IDIyLC0yMiB6XCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ZSxkOlwibSAxMTUsMTU1IDQwLC00MCAwLDQwIHpcIn0sVW5rbm93bjp7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDplLGQ6XCJNIDE1MCA2NS43IEwgMTUwIDEzNCBDIDE3NiAxMjMgMTc2IDc3LjIgMTUwIDY1LjcgelwifX0sUi5wdXNoKHRbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0pKSx0aGlzLnN0eWxlLmZpbGwmJnRoaXMuc3R5bGUuZnJhbWUmJnRoaXMubWV0YWRhdGEubm90cHJlc2VudCYmIXRoaXMubWV0YWRhdGEudW5mcmFtZWQpe3N3aXRjaCgoQz17dHlwZTp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnR5cGV9KS50eXBlKXtjYXNlXCJwYXRoXCI6Qy5kPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuZDticmVhaztjYXNlXCJjaXJjbGVcIjpDLmN4PXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmcuY3gsQy5jeT10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLmN5LEMucj10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nLnJ9Qy5maWxsPSExLEMuc3Ryb2tlPXRoaXMuY29sb3JzLndoaXRlW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dLEMuc3Ryb2tld2lkdGg9cGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKSsxLEMuc3Ryb2tlZGFzaGFycmF5PXRoaXMubWV0YWRhdGEubm90cHJlc2VudCxSLnB1c2goQyl9cmV0dXJue3ByZTpFLHBvc3Q6UixiYm94OnRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3h9fWZ1bmN0aW9uIFIoSSl7dmFyIHQsRSxSPVtdLGU9W10sQT1uZXcgSS5CQm94KHt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSksQz1bXSxUPVtdLFM9W10sTj1bXTtpZih0aGlzLnN0eWxlLmljb24pe3ZhciBPPXRoaXMuY29sb3JzLmZpbGxDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxHPXRoaXMuY29sb3JzLmZpbGxDb2xvci5OZXV0cmFsO0U9dGhpcy5jb2xvcnMuaWNvbkNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO3ZhciBvPXRoaXMuY29sb3JzLmljb25GaWxsQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0sTT10aGlzLmNvbG9ycy5ub25lW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dLGk9dGhpcy5jb2xvcnMuYmxhY2tbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl0sTD10aGlzLmNvbG9ycy53aGl0ZVt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxzPSh0aGlzLm1ldGFkYXRhLlNURDI1MjU/XCIyNTI1XCI6XCJBUFA2XCIpK1wiLFwiK3RoaXMubWV0YWRhdGEuZGltZW5zaW9uK3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24rdGhpcy5tZXRhZGF0YS5ub3RwcmVzZW50K3RoaXMubWV0YWRhdGEubnVtYmVyU0lEQytcIixmcmFtZTpcIit0aGlzLnN0eWxlLmZyYW1lK1wiLGFsdGVybmF0ZU1lZGFsOlwiK3RoaXMuc3R5bGUuYWx0ZXJuYXRlTWVkYWwrXCIsY29sb3JzOntmaWxsY29sb3I6XCIrTytcIixuZXV0cmFsQ29sb3JcIitHK1wiLGljb25Db2xvcjpcIitFK1wiLGljb25GaWxsQ29sb3I6XCIrbytcIixub25lOlwiK00rXCIsYmxhY2s6XCIraStcIix3aGl0ZTpcIitMK1wifVwiO2lmKEM9SS5faWNvbkNhY2hlLmhhc093blByb3BlcnR5KHMpP0kuX2ljb25DYWNoZVtzXS5pY29uUGFydHM6KEkuX2ljb25DYWNoZVtzXT17fSxJLl9pY29uQ2FjaGVbc10uaWNvblBhcnRzPUkuX2dldEljb25QYXJ0cyh0aGlzLm1ldGFkYXRhLHRoaXMuY29sb3JzLHRoaXMubWV0YWRhdGEuU1REMjUyNSx0aGlzLnN0eWxlLm1vbm9Db2xvcix0aGlzLnN0eWxlLmFsdGVybmF0ZU1lZGFsKSksdGhpcy5tZXRhZGF0YS5udW1iZXJTSURDfHwoLTEhPVtcIldNR1gtLVwiLFwiV01NWC0tXCIsXCJXTUZYLS1cIixcIldNWC0tLVwiLFwiV01TWC0tXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkKSYmKEEueTE9MTAsXCJVbmtub3duXCIhPXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24mJihBLngyPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3gueDIrMjApKSxJLl9pY29uQ2FjaGVbc10uaGFzT3duUHJvcGVydHkoXCJsZXR0ZXJTSURDXCIpPyh0PUkuX2ljb25DYWNoZVtzXS5sZXR0ZXJTSURDLmljb25zLE49SS5faWNvbkNhY2hlW3NdLmxldHRlclNJREMuYmJveCk6XCJmdW5jdGlvblwiPT10eXBlb2YgSS5fZ2V0SWNvbnMubGV0dGVyPyhJLl9pY29uQ2FjaGVbc10ubGV0dGVyU0lEQz1JLl9nZXRJY29ucy5sZXR0ZXIoSSxDLHRoaXMubWV0YWRhdGEuU1REMjUyNSksdD1JLl9pY29uQ2FjaGVbc10ubGV0dGVyU0lEQy5pY29ucyxOPUkuX2ljb25DYWNoZVtzXS5sZXR0ZXJTSURDLmJib3gpOmNvbnNvbGUud2FybihcIm1zLl9nZXRJY29ucy5sZXR0ZXIoKSBpcyBub3QgcHJlc2VudCwgeW91IHdpbGwgbmVlZCB0byBsb2FkIGZ1bmN0aW9uYWxpdHkgZm9yIGxldHRlciBiYXNlZCBTSURDc1wiKSksdGhpcy5tZXRhZGF0YS5udW1iZXJTSURDKXt2YXIgbj1TdHJpbmcodGhpcy5vcHRpb25zLnNpZGMpLnN1YnN0cig0LDIpO0kuX2ljb25DYWNoZVtzXS5oYXNPd25Qcm9wZXJ0eShcIm51bWJlclNJRENcIik/SS5faWNvbkNhY2hlW3NdLm51bWJlclNJREMuc3ltYm9sU2V0Lmhhc093blByb3BlcnR5KG4pPyh0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpcImZ1bmN0aW9uXCI9PXR5cGVvZiBJLl9nZXRJY29ucy5udW1iZXI/KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXT1JLl9nZXRJY29ucy5udW1iZXIoSSxuLEMsdGhpcy5tZXRhZGF0YS5TVEQyNTI1KSx0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0SWNvbnMubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIik6KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDPXt9LEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldD17fSxcImZ1bmN0aW9uXCI9PXR5cGVvZiBJLl9nZXRJY29ucy5udW1iZXI/KEkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXT1JLl9nZXRJY29ucy5udW1iZXIoSSxuLEMsdGhpcy5tZXRhZGF0YS5TVEQyNTI1KSx0PUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5pY29ucyxUPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMSxTPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5tMixOPUkuX2ljb25DYWNoZVtzXS5udW1iZXJTSURDLnN5bWJvbFNldFtuXS5iYm94KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0SWNvbnMubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIikpfXZhciBhPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDpFPXRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwibSA5NC44MjA2LDc4LjEzNzIgYyAtMC40NTQyLDYuODk4MyAwLjY1MzIsMTQuMzIzIDUuMzQyNCwxOS42OTg1IDQuNTA5LDUuNjkzMyAxMS4zMDksOS4zNTczIDE0Ljk4LDE1LjcyODMgMy4xNjQsNi4zNTMgLTAuMDksMTQuMjQ1IC01LjkwMywxNy44MjIgLTcuMjY4LDQuODE3IC0xOC42MjE5LDIuNzg1IC0yMi43MzI4LC01LjI0OSAtMS41NTExLC0yLjc5NiAtMi4zODI4LC01LjkzMSAtMi44ODE1LC05LjA3MSAtMy41MDQ4LDAuNDE2IC03LjAwOTMsMC44MzUgLTEwLjUxNDIsMS4yNTIgMC44MjM5LDguNTU1IDUuMjI2MywxNy4yODcgMTMuMjU0NCwyMS4xMTEgNy44MjMyLDMuNzM2IDE3LjE4OTEsMy43ODMgMjUuMzI5MSwxLjA1MiA4Ljg0NiwtMy4xMDMgMTUuNzM3LC0xMS45NTggMTUuMTcxLC0yMS41MzcgMC4wNSwtNi45NTEgLTQuMjcyLC0xMi44NSAtOS4xMzQsLTE3LjQwMyAtNC41MjYsLTQuNjk0OSAtMTEuMDQ4LC04LjM4NjIgLTEyLjQwMSwtMTUuMjc0OCAtMS4yMTUsLTIuMzYzOSAtMC44ODksLTguMTI5IC0wLjg4OSwtOC4xMjkgeiBtIC0wLjYyNTMsLTIwLjUxNzcgMCwxMS42NTA5IDExLjY1MjcsMCAwLC0xMS42NTA5IHpcIn1dO2lmKHRoaXMubWV0YWRhdGEubnVtYmVyU0lEQyl7dmFyIGw9dFt0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNildO2lmKHZvaWQgMD09PWwmJjk1PD10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDQsMikmJihsPXRbdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDQpK1wiMDBcIl0pLHZvaWQgMD09PWwpXCIwMDAwMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDYpJiZcIlwiIT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNikmJihlLnB1c2goYSksdGhpcy52YWxpZEljb249ITEpO2Vsc2V7dmFyIHI9TnVtYmVyKHRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoMCw2KSk7dGhpcy5tZXRhZGF0YS5kaXNtb3VudGVkJiYxMTAzMDE8PXImJnI8PTExMDQwMyYmKFwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpJiZcIjAwXCIhPXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSYmKGw9W0kuX3NjYWxlKC41LGwpXSksXCIwMFwiPT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDYsMikmJlwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig4LDIpJiYobD1bSS5fdHJhbnNsYXRlKDAsLTEwLEkuX3NjYWxlKC43LGwpKV0pLFwiMDBcIiE9dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpJiZcIjAwXCI9PXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSYmKGw9W0kuX3RyYW5zbGF0ZSgwLDEwLEkuX3NjYWxlKC43LGwpKV0pKSxlLnB1c2gobCl9aWYoTi5oYXNPd25Qcm9wZXJ0eSh0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNikpJiYoQT1uZXcgSS5CQm94KE5bdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cigwLDYpXSkpLFwiOTVcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLkhFQURRVUFSVEVSUyBPUiBIRUFEUVVBUlRFUlMgRUxFTUVOVFwiXSksXCI5NlwiPT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDQsMikmJmUucHVzaChDW1wiR1IuSUMuRkYuRElWSVNJT04gQU5EIEJFTE9XIFNVUFBPUlRcIl0pLFwiOTdcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0pLFwiOThcIj09dGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig0LDIpJiZlLnB1c2goQ1tcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSksXCIwMFwiIT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDYsMikpe3ZhciBQPVRbdGhpcy5tZXRhZGF0YS5mdW5jdGlvbmlkLnN1YnN0cig2LDIpXTt2b2lkIDA9PT1QP3RoaXMudmFsaWRJY29uPSExOmUucHVzaChQKX1pZihcIjAwXCIhPXRoaXMubWV0YWRhdGEuZnVuY3Rpb25pZC5zdWJzdHIoOCwyKSl7dmFyIHk9U1t0aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDgsMildO3ZvaWQgMD09PXk/dGhpcy52YWxpZEljb249ITE6ZS5wdXNoKHkpfX1lbHNle3ZhciBjPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigwLDEpK1wiLVwiK3RoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpK1wiLVwiK3RoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig0LDYpO3QuaGFzT3duUHJvcGVydHkoYyk/ZS5wdXNoKHRbY10pOlwiLS0tLS0tXCIhPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig0LDYpJiZcIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KSYmKGUucHVzaChhKSx0aGlzLnZhbGlkSWNvbj0hMSksTltjXSYmKEE9bmV3IEkuQkJveChOW2NdKSl9fXJldHVybiB0aGlzLnN0eWxlLmZyYW1lJiZ0aGlzLm1ldGFkYXRhLmZpbGwmJiF0aGlzLnN0eWxlLm1vbm9Db2xvciYmIXRoaXMubWV0YWRhdGEuY29udHJvbE1lYXN1cmV8fDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpBfX1mdW5jdGlvbiBlKEkpe3ZhciB0LEU9W10sUj1bXSxlPW5ldyBJLkJCb3godGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCksQT10aGlzLnN0eWxlLmZyYW1lQ29sb3I/dGhpcy5zdHlsZS5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxDPW5ldyBJLkJCb3gsVD1OdW1iZXIodGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RofHxJLl9ocVN0YWZmTGVuZ3RoKTtpZih0aGlzLm1ldGFkYXRhLmhlYWRxdWFydGVycyYmMDxUKXt2YXIgUz0xMDA7LTE8W1wiQWlyRnJpZW5kXCIsXCJBaXJOZXV0cmFsXCIsXCJHcm91bmRGcmllbmRcIixcIkdyb3VuZE5ldXRyYWxcIixcIlNlYU5ldXRyYWxcIixcIlN1YnN1cmZhY2VOZXV0cmFsXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5kaW1lbnNpb24rdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbikmJihTPWUueTIpLHRoaXMubWV0YWRhdGEuZGltZW5zaW9uVHlwZSt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uVHlwZT09XCJTdWJzdXJmYWNlRnJpZW5kXCImJihTPWUueTEpLHQ9e3R5cGU6XCJwYXRoXCIsZDpcIk1cIitlLngxK1wiLFwiK1MrXCIgTFwiK2UueDErXCIsXCIrKGUueTIrVCl9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLnkyPWUueTIrVH1pZih0aGlzLm1ldGFkYXRhLnRhc2tGb3JjZSl7dmFyIE49e1wiQ29ycHMvTUVGXCI6MTEwLEFybXk6MTQ1LFwiQXJteSBHcm91cC9mcm9udFwiOjE4MCxcIlJlZ2lvbi9UaGVhdGVyXCI6MjE1fTt0PXt0eXBlOlwicGF0aFwiLGQ6XCJNXCIrKDEwMC0oTj1OW3RoaXMubWV0YWRhdGEuZWNoZWxvbl18fDkwKS8yKStcIixcIitlLnkxK1wiIExcIisoMTAwLU4vMikrXCIsXCIrKGUueTEtNDApK1wiIFwiKygxMDArTi8yKStcIixcIisoZS55MS00MCkrXCIgXCIrKDEwMCtOLzIpK1wiLFwiK2UueTF9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLngxPU1hdGgubWluKGUueDEsMTAwLU4vMiksQy54Mj1NYXRoLm1heChlLngyLDEwMCtOLzIpLEMueTE9ZS55MS00MH1pZih0aGlzLm1ldGFkYXRhLmluc3RhbGxhdGlvbil7dmFyIE89MDstMTxbXCJBaXJIb3N0aWxlXCIsXCJHcm91bmRIb3N0aWxlXCIsXCJTZWFIb3N0aWxlXCJdLmluZGV4T2YodGhpcy5tZXRhZGF0YS5kaW1lbnNpb24rdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbikmJihPPTE0KSwtMTxbXCJBaXJVbmtub3duXCIsXCJHcm91bmRVbmtub3duXCIsXCJTZWFVbmtub3duXCIsXCJBaXJGcmllbmRcIixcIlNlYUZyaWVuZFwiXS5pbmRleE9mKHRoaXMubWV0YWRhdGEuZGltZW5zaW9uK3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24pJiYoTz0yKSx0PXt0eXBlOlwicGF0aFwiLGZpbGw6QSxkOlwiTTg1LFwiKyhlLnkxK08tdGhpcy5zdHlsZS5zdHJva2VXaWR0aC8yKStcIiA4NSxcIisoZS55MS0xMCkrXCIgMTE1LFwiKyhlLnkxLTEwKStcIiAxMTUsXCIrKGUueTErTy10aGlzLnN0eWxlLnN0cm9rZVdpZHRoLzIpK1wiIDEwMCxcIisoZS55MS10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStcIiBaXCJ9LDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUodCx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLFIucHVzaCh0KSxDLm1lcmdlKHt5MTplLnkxLTEwfSl9aWYodGhpcy5tZXRhZGF0YS5mZWludER1bW15KXt2YXIgRz1lLnkxLTAtZS53aWR0aCgpLzI7dD17dHlwZTpcInBhdGhcIixzdHJva2VkYXNoYXJyYXk6SS5fZGFzaEFycmF5cy5mZWludER1bW15LGQ6XCJNMTAwLFwiK0crXCIgTFwiK2UueDErXCIsXCIrKGUueTEtMCkrXCIgTTEwMCxcIitHK1wiIExcIitlLngyK1wiLFwiKyhlLnkxLTApfSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZFLnB1c2goSS5vdXRsaW5lKHQsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSxSLnB1c2godCksQy5tZXJnZSh7eTE6R30pfWlmKHRoaXMubWV0YWRhdGEuZWNoZWxvbil7dmFyIG89dGhpcy5tZXRhZGF0YS5pbnN0YWxsYXRpb24/MTU6MCxNPXtcIlRlYW0vQ3Jld1wiOntnOlt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTplLnkxLTIwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGQ6XCJNODAsXCIrKGUueTEtMTApK1wiTDEyMCxcIisoZS55MS0zMCl9XSxiYm94Ont5MTplLnkxLTQwLW99fSxTcXVhZDp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTAwLGN5OmUueTEtMjAscjo3LjV9XSxiYm94Ont5MTplLnkxLTIwLTcuNS1vfX0sU2VjdGlvbjp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTE1LGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4Ojg1LGN5OmUueTEtMjAscjo3LjV9XSxiYm94Ont5MTplLnkxLTIwLTcuNS1vfX0sXCJQbGF0b29uL2RldGFjaG1lbnRcIjp7Zzpbe3R5cGU6XCJjaXJjbGVcIixmaWxsOkEsY3g6MTAwLGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4OjcwLGN5OmUueTEtMjAscjo3LjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDpBLGN4OjEzMCxjeTplLnkxLTIwLHI6Ny41fV0sYmJveDp7eTE6ZS55MS0yMC03LjUtb319LFwiQ29tcGFueS9iYXR0ZXJ5L3Ryb29wXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLFwiKyhlLnkxLTEwKStcIkwxMDAsXCIrKGUueTEtMzUpfV0sYmJveDp7eTE6ZS55MS00MC1vfX0sXCJCYXR0YWxpb24vc3F1YWRyb25cIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk05MCxcIisoZS55MS0xMCkrXCJMOTAsXCIrKGUueTEtMzUpfSx7dHlwZTpcInBhdGhcIixkOlwiTTExMCxcIisoZS55MS0xMCkrXCJMMTEwLFwiKyhlLnkxLTM1KX1dLGJib3g6e3kxOmUueTEtNDAtb319LFwiUmVnaW1lbnQvZ3JvdXBcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrKGUueTEtMTApK1wiTDEwMCxcIisoZS55MS0zNSl9LHt0eXBlOlwicGF0aFwiLGQ6XCJNMTIwLFwiKyhlLnkxLTEwKStcIkwxMjAsXCIrKGUueTEtMzUpfSx7dHlwZTpcInBhdGhcIixkOlwiTTgwLFwiKyhlLnkxLTEwKStcIkw4MCxcIisoZS55MS0zNSl9XSxiYm94Ont5MTplLnkxLTQwLW99fSxCcmlnYWRlOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTg3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjVcIn1dLGJib3g6e3kxOmUueTEtMTUtMjUtb319LERpdmlzaW9uOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTcwLFwiKyhlLnkxLTEwKStcIiBsMjUsLTI1IG0wLDI1IGwtMjUsLTI1ICAgTTEwNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjcwLHgyOjEzMH19LFwiQ29ycHMvTUVGXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNNTIuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICBNODcuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICBNMTIyLjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjVcIn1dLGJib3g6e3kxOmUueTEtMTUtMjUtbyx4MTo1Mi41LHgyOjE0Ny41fX0sQXJteTp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0zNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE03MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0xMDUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTE0MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjM1LHgyOjE2NX19LFwiQXJteSBHcm91cC9mcm9udFwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTTE3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTUyLjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTg3LjUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTEyMi41LFwiKyhlLnkxLTEwKStcIiBsMjUsLTI1IG0wLDI1IGwtMjUsLTI1ICAgICAgIE0xNTcuNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjE3LjUseDI6MTgyLjV9fSxcIlJlZ2lvbi9UaGVhdGVyXCI6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNMCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0zNSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE03MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgIE0xMDUsXCIrKGUueTEtMTApK1wiIGwyNSwtMjUgbTAsMjUgbC0yNSwtMjUgICAgTTE0MCxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNSAgICAgTTE3NSxcIisoZS55MS0xMCkrXCIgbDI1LC0yNSBtMCwyNSBsLTI1LC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjAseDI6MjAwfX0sQ29tbWFuZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk03MCxcIisoZS55MS0yMi41KStcIiBsMjUsMCBtLTEyLjUsMTIuNSBsMCwtMjUgICBNMTA1LFwiKyhlLnkxLTIyLjUpK1wiIGwyNSwwIG0tMTIuNSwxMi41IGwwLC0yNVwifV0sYmJveDp7eTE6ZS55MS0xNS0yNS1vLHgxOjcwLHgyOjEzMH19fTtNLmhhc093blByb3BlcnR5KHRoaXMubWV0YWRhdGEuZWNoZWxvbikmJih0PU1bdGhpcy5tZXRhZGF0YS5lY2hlbG9uXS5nLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUoe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTotbyxkcmF3OnR9LHRoaXMuc3R5bGUub3V0bGluZVdpZHRoLHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsXCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUub3V0bGluZUNvbG9yP3RoaXMuc3R5bGUub3V0bGluZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuc3R5bGUub3V0bGluZUNvbG9yKSksUi5wdXNoKHt0eXBlOlwidHJhbnNsYXRlXCIseDowLHk6LW8sZHJhdzp0fSksQy5tZXJnZShNW3RoaXMubWV0YWRhdGEuZWNoZWxvbl0uYmJveCkpfWlmKHRoaXMubWV0YWRhdGEubW9iaWxpdHkpe3RoaXMuc3R5bGUuZnJhbWV8fChlLnkyPXRoaXMuYmJveC55MiksXCJOZXV0cmFsXCI9PXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb24mJihcIlRvd2VkXCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHkmJlwiU2hvcnQgdG93ZWQgYXJyYXlcIiE9dGhpcy5tZXRhZGF0YS5tb2JpbGl0eSYmXCJMb25nIHRvd2VkIEFycmF5XCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHl8fChlLnkyKz04KSxcIk92ZXIgc25vdyAocHJpbWUgbW92ZXIpXCIhPXRoaXMubWV0YWRhdGEubW9iaWxpdHkmJlwiU2xlZFwiIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fHwoZS55Mis9MTMpKTt2YXIgaT17XCJXaGVlbGVkIGxpbWl0ZWQgY3Jvc3MgY291bnRyeVwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA1MywxIGwgOTQsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjU4LGN5Ojgscjo4fSx7dHlwZTpcImNpcmNsZVwiLGN4OjE0MixjeTo4LHI6OH1dLGJib3g6e3kyOmUueTIrMTZ9fSxcIldoZWVsZWQgY3Jvc3MgY291bnRyeVwiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA1MywxIGwgOTQsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjU4LGN5Ojgscjo4fSx7dHlwZTpcImNpcmNsZVwiLGN4OjE0MixjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6OCxyOjh9XSxiYm94Ont5MjplLnkyKzE2fX0sVHJhY2tlZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTMsMSBsIDEwMCwwIGMxNSwwIDE1LDE1IDAsMTUgbCAtMTAwLDAgYy0xNSwwIC0xNSwtMTUgMCwtMTVcIn1dLGJib3g6e3kyOmUueTIrMTgseDE6NDIseDI6MTY4fX0sXCJXaGVlbGVkIGFuZCB0cmFja2VkIGNvbWJpbmF0aW9uXCI6e2c6W3t0eXBlOlwiY2lyY2xlXCIsY3g6NTgsY3k6OCxyOjh9LHt0eXBlOlwicGF0aFwiLGQ6XCJNIDgzLDEgbCA3MCwwIGMxNSwwIDE1LDE1IDAsMTUgbCAtNzAsMCBjLTE1LDAgLTE1LC0xNSAwLC0xNVwifV0sYmJveDp7eTI6ZS55MisxNix4MjoxNjh9fSxUb3dlZDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNjMsMSBsIDc0LDBcIn0se3R5cGU6XCJjaXJjbGVcIixjeDo1OCxjeTozLHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxNDIsY3k6MyxyOjh9XSxiYm94Ont5MjplLnkyKzEwfX0sUmFpbDp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTMsMSBsIDk2LDBcIn0se3R5cGU6XCJjaXJjbGVcIixjeDo1OCxjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDo3MyxjeTo4LHI6OH0se3R5cGU6XCJjaXJjbGVcIixjeDoxMjcsY3k6OCxyOjh9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTQyLGN5Ojgscjo4fV0sYmJveDp7eTI6ZS55MisxNn19LFwiT3ZlciBzbm93IChwcmltZSBtb3ZlcilcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTAsLTkgbDEwLDEwIDkwLDBcIn1dLGJib3g6e3kyOmUueTIrOX19LFNsZWQ6e2c6W3t0eXBlOlwicGF0aFwiLGQ6XCJNIDE0NSwtMTIgIGMxNSwwIDE1LDE1IDAsMTUgbCAtOTAsMCBjLTE1LDAgLTE1LC0xNSAwLC0xNVwifV0sYmJveDp7eTI6ZS55MisxNSx4MTo0Mix4MjoxNjh9fSxcIlBhY2sgYW5pbWFsc1wiOntnOlt7dHlwZTpcInBhdGhcIixkOlwiTSA4MCwyMCBsIDEwLC0yMCAxMCwyMCAxMCwtMjAgMTAsMjBcIn1dLGJib3g6e3kyOmUueTIrMjB9fSxCYXJnZTp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNTAsMSBsIDEwMCwwIGMwLDEwIC0xMDAsMTAgLTEwMCwwXCJ9XSxiYm94Ont5MjplLnkyKzEwfX0sQW1waGliaW91czp7Zzpbe3R5cGU6XCJwYXRoXCIsZDpcIk0gNjUsMTAgYyAwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDBcXHQwLC0xMCAxMCwtMTAgMTAsMFwifV0sYmJveDp7eTI6ZS55MisyMH19LFwiU2hvcnQgdG93ZWQgYXJyYXlcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpBLGQ6XCJNIDUwLDUgbCAxMDAsMCBNNTAsMCBsMTAsMCAwLDEwIC0xMCwwIHogTTE1MCwwIGwtMTAsMCAwLDEwIDEwLDAgeiBNMTAwLDAgbDUsNSAtNSw1IC01LC01IHpcIn1dLGJib3g6e3kyOmUueTIrMTB9fSxcIkxvbmcgdG93ZWQgQXJyYXlcIjp7Zzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpBLGQ6XCJNIDUwLDUgbCAxMDAsMCBNNTAsMCBsMTAsMCAwLDEwIC0xMCwwIHogTTE1MCwwIGwtMTAsMCAwLDEwIDEwLDAgeiBNMTA1LDAgbC0xMCwwIDAsMTAgMTAsMCB6IE03NSwwIGw1LDUgLTUsNSAtNSwtNSB6ICBNMTI1LDAgbDUsNSAtNSw1IC01LC01IHpcIn1dLGJib3g6e3kyOmUueTIrMTB9fX07aS5oYXNPd25Qcm9wZXJ0eSh0aGlzLm1ldGFkYXRhLm1vYmlsaXR5KSYmKHQ9aVt0aGlzLm1ldGFkYXRhLm1vYmlsaXR5XS5nLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJkUucHVzaChJLm91dGxpbmUoe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTplLnkyLGRyYXc6dH0sdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKSxSLnB1c2goe3R5cGU6XCJ0cmFuc2xhdGVcIix4OjAseTplLnkyLGRyYXc6dH0pLEMubWVyZ2UoaVt0aGlzLm1ldGFkYXRhLm1vYmlsaXR5XS5iYm94KSl9aWYodGhpcy5tZXRhZGF0YS5sZWFkZXJzaGlwKXt2YXIgTD17RnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDQ1LDYwIDU1LC0yNSA1NSwyNVwifX1bdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl07TCYmKEUucHVzaChMKSxDLm1lcmdlKHt5MTplLnkxLTIwfSkpfWZvcih2YXIgcz0wO3M8RS5sZW5ndGg7cysrKUVbc10uaGFzT3duUHJvcGVydHkoXCJmaWxsXCIpfHwoRVtzXS5maWxsPSExKSxFW3NdLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoRVtzXS5zdHJva2U9QSksRVtzXS5oYXNPd25Qcm9wZXJ0eShcInN0cm9rZXdpZHRoXCIpfHwoRVtzXS5zdHJva2V3aWR0aD10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKTtmb3Iocz0wO3M8Ui5sZW5ndGg7cysrKVJbc10uaGFzT3duUHJvcGVydHkoXCJmaWxsXCIpfHwoUltzXS5maWxsPSExKSxSW3NdLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoUltzXS5zdHJva2U9QSksUltzXS5oYXNPd25Qcm9wZXJ0eShcInN0cm9rZXdpZHRoXCIpfHwoUltzXS5zdHJva2V3aWR0aD10aGlzLnN0eWxlLnN0cm9rZVdpZHRoKTtyZXR1cm57cHJlOkUscG9zdDpSLGJib3g6Q319ZnVuY3Rpb24gQShJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCxlPVIueTEsQT1SLnkyO2lmKHRoaXMubWV0YWRhdGEuY29uZGl0aW9uKWlmKHRoaXMubWV0YWRhdGEuZmlsbCYmXCJcIj09PXRoaXMuc3R5bGUubW9ub0NvbG9yJiYhdGhpcy5zdHlsZS5zaW1wbGVTdGF0dXNNb2RpZmllcil7IXRoaXMubWV0YWRhdGEuZnJhbWUmJnRoaXMubWV0YWRhdGEuaWNvbkJvdHRvbSYmKEE9dGhpcy5tZXRhZGF0YS5pY29uQm90dG9tKSx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudCYmKEErPTM1KSxBKz10aGlzLm1ldGFkYXRhLm1vYmlsaXR5PzI1OjUsRS5wdXNoKHt0eXBlOlwicGF0aFwiLHN0cm9rZXdpZHRoOnRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsZmlsbDp7RnVsbHlDYXBhYmxlOlwicmdiKDAsMjU1LDApXCIsRGFtYWdlZDpcInJnYigyNTUsMjU1LDApXCIsRGVzdHJveWVkOlwicmdiKDI1NSwwLDApXCIsRnVsbFRvQ2FwYWNpdHk6XCJyZ2IoMCwgMTgwLCAyNDApXCJ9W3RoaXMubWV0YWRhdGEuY29uZGl0aW9uXSxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwiTVwiK1IueDErXCIsXCIrQStcIiBsXCIrUi53aWR0aCgpK1wiLDAgMCwyNSAtXCIrUi53aWR0aCgpK1wiLDAgelwifSksQSs9MjUsMDx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCYmdC5wdXNoKEkub3V0bGluZShFLHRoaXMuc3R5bGUub3V0bGluZVdpZHRoLHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsXCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUub3V0bGluZUNvbG9yP3RoaXMuc3R5bGUub3V0bGluZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dOnRoaXMuc3R5bGUub3V0bGluZUNvbG9yKSl9ZWxzZVwiRGFtYWdlZFwiIT10aGlzLm1ldGFkYXRhLmNvbmRpdGlvbiYmXCJEZXN0cm95ZWRcIiE9dGhpcy5tZXRhZGF0YS5jb25kaXRpb258fChFLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0xNTAsMjAgTDUwLDE4MFwiLHN0cm9rZXdpZHRoOjIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXX0pLGU9MjAsQT0xODApLFwiRGVzdHJveWVkXCI9PXRoaXMubWV0YWRhdGEuY29uZGl0aW9uJiZFLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk01MCwyMCBMMTUwLDE4MFwiLHN0cm9rZXdpZHRoOjIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXX0pLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJnQucHVzaChJLm91dGxpbmUoRSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpO3JldHVybntwcmU6dCxwb3N0OkUsYmJveDp7eTE6ZSx5MjpBfX19ZnVuY3Rpb24gQyhJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5iYm94LGU9Ui54MSxBPVIueDIsQz1SLnkxLFQ9Ui55MjtpZihcIlwiIT09dGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRCYXIpe0MtPTY7dmFyIFM9dGhpcy5zdHlsZS5mb250ZmFtaWx5LE49dGhpcy5jb2xvcnMuaWNvbkNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dfHx0aGlzLmNvbG9ycy5pY29uQ29sb3IuRnJpZW5kO0UucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5lbmdhZ2VtZW50QmFyLHg6MTAwLHk6Ui55MS0xMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6MjIsZm9udGZhbWlseTpTLGZvbnR3ZWlnaHQ6XCJib2xkXCIsZmlsbDpOLHN0cm9rZTohMX0pO3ZhciBPPSExO2lmKHRoaXMubWV0YWRhdGEuZmlsbCYmXCJcIj09PXRoaXMuc3R5bGUubW9ub0NvbG9yKXtPPXtUQVJHRVQ6XCJyZ2IoMjU1LCAwLCAwKVwiLFwiTk9OLVRBUkdFVFwiOlwicmdiKDI1NSwgMjU1LCAyNTUpXCIsRVhQSVJFRDpcInJnYigyNTUsIDEyMCwgMClcIn1bdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRUeXBlLnRvVXBwZXJDYXNlKCldfHx0aGlzLmNvbG9ycy5maWxsQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl19dmFyIEcsbz1NYXRoLm1heChSLndpZHRoKCksMTYqdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRCYXIubGVuZ3RoKTtpZihlPU1hdGgubWluKGUsMTAwLW8vMiksQT1NYXRoLm1heChBLDEwMCtvLzIpLEUudW5zaGlmdCh7dHlwZTpcInBhdGhcIixzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGZpbGw6TyxzdHJva2U6dGhpcy5jb2xvcnMuZnJhbWVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXSxkOlwiTVwiKygxMDAtby8yKStcIixcIitDK1wiIGxcIitvK1wiLDAgMCwtMjUgLVwiK28rXCIsMCB6XCJ9KSxDLT0yNSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKUc9dGhpcy5tZXRhZGF0YS5maWxsJiZcIlwiPT09dGhpcy5zdHlsZS5tb25vQ29sb3I/RVswXTpFLHQucHVzaChJLm91dGxpbmUoRyx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpfXJldHVybntwcmU6dCxwb3N0OkUsYmJveDp7eDE6ZSx4MjpBLHkxOkMseTI6VH19fWZ1bmN0aW9uIFQoSSl7dmFyIHQ9W10sRT1bXSxSPXRoaXMubWV0YWRhdGEuYmFzZUdlb21ldHJ5LmJib3gsZT10aGlzLmNvbG9ycy5mcmFtZUNvbG9yW3RoaXMubWV0YWRhdGEuYWZmaWxpYXRpb25dO2lmKHRoaXMubWV0YWRhdGEuZGltZW5zaW9uVW5rbm93biYmZSYmRS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6XCI/XCIseDoxMDAseToxMjcsZmlsbDplLGZvbnRmYW1pbHk6dGhpcy5zdHlsZS5mb250ZmFtaWx5LGZvbnRzaXplOjgwLGZvbnR3ZWlnaHQ6XCJib2xkXCIsdGV4dGFuY2hvcjpcIm1pZGRsZVwifSksdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuZyYmZSl7dmFyIEE9MTA7KFwiVW5rbm93blwiPT10aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9ufHxcIkhvc3RpbGVcIj09dGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbiYmXCJTdWJzdXJmYWNlXCIhPXRoaXMubWV0YWRhdGEuZGltZW5zaW9uKSYmKEE9LTEwKSxcIkV4ZXJjaXNlXCI9PXRoaXMubWV0YWRhdGEuY29udGV4dCYmKHRoaXMubWV0YWRhdGEuam9rZXJ8fHRoaXMubWV0YWRhdGEuZmFrZXJ8fEUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OlwiWFwiLHg6Ui54MitBLHk6NjAsZmlsbDplLGZvbnRmYW1pbHk6dGhpcy5zdHlsZS5mb250ZmFtaWx5LGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCIsdGV4dGFuY2hvcjpcInN0YXJ0XCJ9KSx0aGlzLm1ldGFkYXRhLmpva2VyJiZFLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpcIkpcIix4OlIueDIrQSx5OjYwLGZpbGw6ZSxmb250ZmFtaWx5OnRoaXMuc3R5bGUuZm9udGZhbWlseSxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHRhbmNob3I6XCJzdGFydFwifSksdGhpcy5tZXRhZGF0YS5mYWtlciYmRS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6XCJLXCIseDpSLngyK0EseTo2MCxmaWxsOmUsZm9udGZhbWlseTp0aGlzLnN0eWxlLmZvbnRmYW1pbHksZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIix0ZXh0YW5jaG9yOlwic3RhcnRcIn0pLFI9e3gyOlIueDIrQSsyMix5MTozNX0pLFwiU2ltdWxhdGlvblwiPT10aGlzLm1ldGFkYXRhLmNvbnRleHQmJihFLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpcIlNcIix4OlIueDIrQSx5OjYwLGZpbGw6ZSxmb250ZmFtaWx5OnRoaXMuc3R5bGUuZm9udGZhbWlseSxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHRhbmNob3I6XCJzdGFydFwifSksUj1uZXcgSS5CQm94KHt4MjpSLngyK0ErMjIseTE6MzV9KSl9cmV0dXJuIDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJnQucHVzaChJLm91dGxpbmUoRSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6dCxwb3N0OkUsYmJveDpSfX1mdW5jdGlvbiBTKEkpe3ZhciB0LEUsUj1bXSxlPVtdLEE9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveCxTPShcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5pbmZvQ29sb3I/dGhpcy5zdHlsZS5pbmZvQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5pbmZvQ29sb3IpfHx0aGlzLmNvbG9ycy5pY29uQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl18fHRoaXMuY29sb3JzLmljb25Db2xvci5GcmllbmQsTj10aGlzLnN0eWxlLmZvbnRmYW1pbHksTz10aGlzLnN0eWxlLmluZm9TaXplLEM9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmQ/dGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZFt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLmluZm9CYWNrZ3JvdW5kLFQ9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmQ/dGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZFt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLmluZm9CYWNrZ3JvdW5kLEc9bmV3IEkuQkJveCxvPTIwO2Z1bmN0aW9uIE0oSSl7dmFyIHQsRT1bXTtmb3IodmFyIFIgaW4gSSlpZih0aGlzLm9wdGlvbnMuaGFzT3duUHJvcGVydHkoUikmJlwiXCIhPXRoaXMub3B0aW9uc1tSXSl7aWYoIUkuaGFzT3duUHJvcGVydHkoUikpY29udGludWU7Zm9yKHZhciBlPTA7ZTwoSVtSXS5sZW5ndGh8fDEpO2UrKyl7dmFyIEE7aWYodD17eTI6KEE9QXJyYXkuaXNBcnJheShJW1JdKT9JW1JdW2VdOklbUl0pLnkseTE6QS55LUEuZm9udHNpemV9LFwic3RhcnRcIj09QS50ZXh0YW5jaG9yJiYodC54MT1BLngsdC54Mj1BLngraSh0aGlzLm9wdGlvbnNbUl0pKihBLmZvbnRzaXplL08pKSxcIm1pZGRsZVwiPT1BLnRleHRhbmNob3Ipe3ZhciBDPWkodGhpcy5vcHRpb25zW1JdKSooQS5mb250c2l6ZS9PKTt0LngxPUEueC1DLzIsdC54Mj1BLngrQy8yfVwiZW5kXCI9PUEudGV4dGFuY2hvciYmKHQueDE9QS54LWkodGhpcy5vcHRpb25zW1JdKSooQS5mb250c2l6ZS9PKSx0LngyPUEueCksRy5tZXJnZSh0KTt2YXIgVD17dHlwZTpcInRleHRcIixmb250ZmFtaWx5Ok4sZmlsbDpTfTtBLmhhc093blByb3BlcnR5KFwiZmlsbFwiKSYmKFQuZmlsbD1BLmZpbGwpLEEuaGFzT3duUHJvcGVydHkoXCJzdHJva2VcIikmJihULnN0cm9rZT1BLnN0cm9rZSksQS5oYXNPd25Qcm9wZXJ0eShcInRleHRhbmNob3JcIikmJihULnRleHRhbmNob3I9QS50ZXh0YW5jaG9yKSxBLmhhc093blByb3BlcnR5KFwiZm9udHNpemVcIikmJihULmZvbnRzaXplPUEuZm9udHNpemUpLEEuaGFzT3duUHJvcGVydHkoXCJmb250d2VpZ2h0XCIpJiYoVC5mb250d2VpZ2h0PUEuZm9udHdlaWdodCksVC54PUEueCxULnk9QS55LFQudGV4dD10aGlzLm9wdGlvbnNbUl0sRS5wdXNoKFQpfX1yZXR1cm4gRX1mdW5jdGlvbiBpKEkpe2lmKDA9PUkubGVuZ3RoKXJldHVybiAwO2Zvcih2YXIgdD17XCIgXCI6OSxcIiFcIjoxMCwnXCInOjE1LFwiI1wiOjE3LCQ6MTcsXCIlXCI6MjcsXCImXCI6MjIsXCInXCI6OCxcIihcIjoxMCxcIilcIjoxMCxcIipcIjoxMixcIitcIjoxOCxcIixcIjo5LFwiLVwiOjEwLFwiLlwiOjksXCIvXCI6OSwwOjE3LDE6MTcsMjoxNywzOjE3LDQ6MTcsNToxNyw2OjE3LDc6MTcsODoxNyw5OjE3LFwiOlwiOjEwLFwiO1wiOjEwLFwiPFwiOjE4LFwiPVwiOjE4LFwiPlwiOjE4LFwiP1wiOjE5LFwiQFwiOjMwLEE6MjIsQjoyMixDOjIyLEQ6MjIsRToyMSxGOjE5LEc6MjQsSDoyMixJOjksSjoxNyxLOjIyLEw6MTksTToyNSxOOjIyLE86MjQsUDoyMSxROjI0LFI6MjIsUzoyMSxUOjE5LFU6MjIsVjoyMSxXOjI5LFg6MjEsWToyMSxaOjE5LFwiW1wiOjEwLFwiXVwiOjEwLFwiXlwiOjE4LF86MTcsXCJgXCI6MTAsYToxNyxiOjE5LGM6MTcsZDoxOSxlOjE3LGY6MTAsZzoxOSxoOjE5LGk6OSxqOjksazoxNyxsOjksbToyNyxuOjE5LG86MTkscDoxOSxxOjE5LHI6MTIsczoxNyx0OjEwLHU6MTksdjoxNyx3OjI0LHg6MTcseToxNyx6OjE1LFwie1wiOjEyLFwifFwiOjksXCJ9XCI6MTIsXCJ+XCI6MTh9LEU9MCxSPTA7UjxJLmxlbmd0aDtSKyspRSs9Ty8zMCoodFtJW1JdXT90W0lbUl1dOjI4LjUpO3JldHVybiBFKz1vfWlmKHRoaXMubWV0YWRhdGEubnVtYmVyU0lEQyl7aWYoIUkuX2xhYmVsQ2FjaGUuaGFzT3duUHJvcGVydHkoXCJudW1iZXJcIikpZm9yKHQgaW4gSS5fbGFiZWxDYWNoZS5udW1iZXI9e30sSS5fbGFiZWxPdmVycmlkZXMubnVtYmVyKUkuX2xhYmVsT3ZlcnJpZGVzLm51bWJlci5oYXNPd25Qcm9wZXJ0eSh0KSYmSS5fbGFiZWxPdmVycmlkZXMubnVtYmVyW3RdLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLm51bWJlcik7aWYoRT10aGlzLm1ldGFkYXRhLmZ1bmN0aW9uaWQuc3Vic3RyKDAsNiksdGhpcy5tZXRhZGF0YS5jb250cm9sTWVhc3VyZSYmSS5fbGFiZWxDYWNoZS5udW1iZXIuaGFzT3duUHJvcGVydHkoRSkpcmV0dXJuIGUucHVzaChNLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLm51bWJlcltFXSkpLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpHfX1lbHNle2lmKCFJLl9sYWJlbENhY2hlLmhhc093blByb3BlcnR5KFwibGV0dGVyXCIpKWZvcih0IGluIEkuX2xhYmVsQ2FjaGUubGV0dGVyPXt9LEkuX2xhYmVsT3ZlcnJpZGVzLmxldHRlcilJLl9sYWJlbE92ZXJyaWRlcy5sZXR0ZXIuaGFzT3duUHJvcGVydHkodCkmJkkuX2xhYmVsT3ZlcnJpZGVzLmxldHRlclt0XS5jYWxsKHRoaXMsSS5fbGFiZWxDYWNoZS5sZXR0ZXIpO2lmKEU9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDAsMSkrXCItXCIrdGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDIsMSkrXCItXCIrdGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDQsNiksSS5fbGFiZWxDYWNoZS5sZXR0ZXIuaGFzT3duUHJvcGVydHkoRSkpcmV0dXJuIGUucHVzaChNLmNhbGwodGhpcyxJLl9sYWJlbENhY2hlLmxldHRlcltFXSkpLDA8dGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgmJlIucHVzaChJLm91dGxpbmUoZSx0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLFwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj90aGlzLnN0eWxlLm91dGxpbmVDb2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXTp0aGlzLnN0eWxlLm91dGxpbmVDb2xvcikpLHtwcmU6Uixwb3N0OmUsYmJveDpHfX12YXIgTCxzLG4sYT10aGlzLm9wdGlvbnMucXVhbnRpdHl8fHRoaXMub3B0aW9ucy5yZWluZm9yY2VkUmVkdWNlZHx8dGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHN8fHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb258fHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nfHx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzc3x8dGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudHx8dGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmhvc3RpbGV8fHRoaXMub3B0aW9ucy5pZmZTaWZ8fHRoaXMub3B0aW9ucy5zaWdpbnR8fHRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbnx8dGhpcy5vcHRpb25zLnR5cGV8fHRoaXMub3B0aW9ucy5kdGd8fHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRofHx0aGlzLm9wdGlvbnMubG9jYXRpb258fHRoaXMub3B0aW9ucy5zcGVlZHx8dGhpcy5vcHRpb25zLnNwZWNpYWxIZWFkcXVhcnRlcnN8fHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGV8fHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWV8fHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyfHx0aGlzLm9wdGlvbnMuYXV4aWxpYXJ5RXF1aXBtZW50SW5kaWNhdG9yfHx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudHx8dGhpcy5vcHRpb25zLmluc3RhbGxhdGlvbkNvbXBvc2l0aW9ufHx0aGlzLm9wdGlvbnMuZ3VhcmRlZFVuaXR8fHRoaXMub3B0aW9ucy5zcGVjaWFsRGVzaWduYXRvcjtpZih0aGlzLnN0eWxlLmluZm9GaWVsZHMmJmEpe3RoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzJiZlLnB1c2goKEw9dGhpcy5vcHRpb25zLnNwZWNpYWxIZWFkcXVhcnRlcnMscz00MixuPTExNSwxPT1MLmxlbmd0aCYmKHM9NDUsbj0xMTUpLDM9PUwubGVuZ3RoJiYocz0zNSxuPTExMCksNDw9TC5sZW5ndGgmJihzPTMyLG49MTEwKSx7dHlwZTpcInRleHRcIix0ZXh0OkwseDoxMDAseTpuLHRleHRhbmNob3I6XCJtaWRkbGVcIixmb250c2l6ZTpzLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9KSksdGhpcy5vcHRpb25zLnF1YW50aXR5JiYhdGhpcy5tZXRhZGF0YS5kaXNtb3VudGVkJiYoZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6dGhpcy5vcHRpb25zLnF1YW50aXR5LHg6MTAwLHk6QS55MS0xMCx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLEcueTE9QS55MS0xMC1PKSx0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudCYmKGUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5oZWFkcXVhcnRlcnNFbGVtZW50LHg6MTAwLHk6QS55MiszNSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6MzUsZm9udGZhbWlseTpOLGZvbnR3ZWlnaHQ6XCJib2xkXCIsZmlsbDpTLHN0cm9rZTohMX0pLEcueTI9QS55MiszNSk7dmFyIGwscj17TDE6XCJcIixMMjpcIlwiLEwzOlwiXCIsTDQ6XCJcIixMNTpcIlwiLFIxOlwiXCIsUjI6XCJcIixSMzpcIlwiLFI0OlwiXCIsUjU6XCJcIn07aWYoaXNOYU4odGhpcy5vcHRpb25zLnNpZGMpfHxcIkFpclwiIT10aGlzLm1ldGFkYXRhLmJhc2VEaW1lbnNpb258fChyLlIxPXRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbixyLlIyPXRoaXMub3B0aW9ucy5pZmZTaWYsci5SMz10aGlzLm9wdGlvbnMudHlwZSwodGhpcy5vcHRpb25zLnNwZWVkfHx0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCkmJihsPVtdLHRoaXMub3B0aW9ucy5zcGVlZCYmbC5wdXNoKHRoaXMub3B0aW9ucy5zcGVlZCksdGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGgmJmwucHVzaCh0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCksci5SND1sLmpvaW4oXCIvXCIpKSwodGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHN8fHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24pJiYobD1bXSx0aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyYmbC5wdXNoKHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzKSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksci5SNT1sLmpvaW4oXCIvXCIpKSksKGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJHcm91bmRcIj09dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9uKSYmKHIuTDE9dGhpcy5vcHRpb25zLmR0ZywodGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGh8fHRoaXMub3B0aW9ucy5sb2NhdGlvbikmJihsPVtdLHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRoJiZsLnB1c2godGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGgpLHRoaXMub3B0aW9ucy5sb2NhdGlvbiYmbC5wdXNoKHRoaXMub3B0aW9ucy5sb2NhdGlvbiksci5MMj1sLmpvaW4oXCIvXCIpKSxyLkw0PXRoaXMub3B0aW9ucy51bmlxdWVEZXNpZ25hdGlvbixyLkw1PXRoaXMub3B0aW9ucy5zcGVlZCxyLlIyPXRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzLHIuUjQ9dGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbiwodGhpcy5vcHRpb25zLmV2YWx1YXRpb25SYXRpbmd8fHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzfHx0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50fHx0aGlzLm9wdGlvbnMuaG9zdGlsZXx8dGhpcy5vcHRpb25zLmlmZlNpZikmJihsPVtdLHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nJiZsLnB1c2godGhpcy5vcHRpb25zLmV2YWx1YXRpb25SYXRpbmcpLHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzJiZsLnB1c2godGhpcy5vcHRpb25zLmNvbWJhdEVmZmVjdGl2ZW5lc3MpLHRoaXMub3B0aW9ucy5zaWduYXR1cmVFcXVpcG1lbnQmJmwucHVzaCh0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50KSx0aGlzLm9wdGlvbnMuaG9zdGlsZSYmbC5wdXNoKHRoaXMub3B0aW9ucy5ob3N0aWxlKSx0aGlzLm9wdGlvbnMuaWZmU2lmJiZsLnB1c2godGhpcy5vcHRpb25zLmlmZlNpZiksci5SNT1sLmpvaW4oXCIvXCIpKSxpc05hTih0aGlzLm9wdGlvbnMuc2lkYyl8fHRoaXMubWV0YWRhdGEudW5pdD8oKHRoaXMub3B0aW9ucy50eXBlfHx0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlfHx0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lKSYmKGw9W10sdGhpcy5vcHRpb25zLnR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMudHlwZSksdGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZSYmbC5wdXNoKHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUpLHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWUmJmwucHVzaCh0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lKSxyLkwzPWwuam9pbihcIi9cIikpLHIuUjE9dGhpcy5vcHRpb25zLnJlaW5mb3JjZWRSZWR1Y2VkLHRoaXMubWV0YWRhdGEuYWN0aXZpdHkmJihyLlIxPXRoaXMub3B0aW9ucy5jb3VudHJ5KSwodGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXIpJiYobD1bXSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksdGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXImJmwucHVzaCh0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciksci5SMz1sLmpvaW4oXCIvXCIpKSk6KCh0aGlzLm9wdGlvbnMudHlwZXx8dGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZXx8dGhpcy5vcHRpb25zLmNvbW1vbklkZW50aWZpZXJ8fHRoaXMub3B0aW9ucy5pbnN0YWxsYXRpb25Db21wb3NpdGlvbikmJihsPVtdLHRoaXMub3B0aW9ucy50eXBlJiZsLnB1c2godGhpcy5vcHRpb25zLnR5cGUpLHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlKSx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyKSx0aGlzLm9wdGlvbnMuaW5zdGFsbGF0aW9uQ29tcG9zaXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMuaW5zdGFsbGF0aW9uQ29tcG9zaXRpb24pLHIuTDM9bC5qb2luKFwiL1wiKSksci5SMT10aGlzLm9wdGlvbnMuY291bnRyeSwodGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbnx8dGhpcy5vcHRpb25zLmVxdWlwbWVudFRlYXJkb3duVGltZSkmJihsPVtdLHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uKSx0aGlzLm9wdGlvbnMuZXF1aXBtZW50VGVhcmRvd25UaW1lJiZsLnB1c2godGhpcy5vcHRpb25zLmVxdWlwbWVudFRlYXJkb3duVGltZSksci5SMz1sLmpvaW4oXCIvXCIpKSkpLHRoaXMubWV0YWRhdGEuZGlzbW91bnRlZCYmKHRoaXMub3B0aW9ucy5xdWFudGl0eSYmKGUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnRoaXMub3B0aW9ucy5xdWFudGl0eSx4OjEwMCx5OkEueTIrTyx0ZXh0YW5jaG9yOlwibWlkZGxlXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLEcueTI9QS55MitPKSxyLkwxPXRoaXMub3B0aW9ucy5kdGcsKHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRofHx0aGlzLm9wdGlvbnMubG9jYXRpb24pJiYobD1bXSx0aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCYmbC5wdXNoKHRoaXMub3B0aW9ucy5hbHRpdHVkZURlcHRoKSx0aGlzLm9wdGlvbnMubG9jYXRpb24mJmwucHVzaCh0aGlzLm9wdGlvbnMubG9jYXRpb24pLHIuTDI9bC5qb2luKFwiL1wiKSksKHRoaXMub3B0aW9ucy50eXBlfHx0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlfHx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllcikmJihsPVtdLHRoaXMub3B0aW9ucy50eXBlJiZsLnB1c2godGhpcy5vcHRpb25zLnR5cGUpLHRoaXMub3B0aW9ucy5wbGF0Zm9ybVR5cGUmJmwucHVzaCh0aGlzLm9wdGlvbnMucGxhdGZvcm1UeXBlKSx0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllciYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21tb25JZGVudGlmaWVyKSxyLkwzPWwuam9pbihcIi9cIikpLHIuTDQ9dGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uLHIuTDU9dGhpcy5vcHRpb25zLnNwZWVkLHIuUjE9dGhpcy5vcHRpb25zLmNvdW50cnksci5SMj10aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiYobD1bXSx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksci5SMz1sLmpvaW4oXCIvXCIpKSxyLlI0PXRoaXMub3B0aW9ucy5oaWdoZXJGb3JtYXRpb24sKHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nfHx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzc3x8dGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudHx8dGhpcy5vcHRpb25zLmhvc3RpbGV8fHRoaXMub3B0aW9ucy5pZmZTaWYpJiYobD1bXSx0aGlzLm9wdGlvbnMuZXZhbHVhdGlvblJhdGluZyYmbC5wdXNoKHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nKSx0aGlzLm9wdGlvbnMuY29tYmF0RWZmZWN0aXZlbmVzcyYmbC5wdXNoKHRoaXMub3B0aW9ucy5jb21iYXRFZmZlY3RpdmVuZXNzKSx0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50JiZsLnB1c2godGhpcy5vcHRpb25zLnNpZ25hdHVyZUVxdWlwbWVudCksdGhpcy5vcHRpb25zLmhvc3RpbGUmJmwucHVzaCh0aGlzLm9wdGlvbnMuaG9zdGlsZSksdGhpcy5vcHRpb25zLmlmZlNpZiYmbC5wdXNoKHRoaXMub3B0aW9ucy5pZmZTaWYpLHIuUjU9bC5qb2luKFwiL1wiKSkpLGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJTZWFcIiE9dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9ufHwoKHRoaXMub3B0aW9ucy5ndWFyZGVkVW5pdHx8dGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yKSYmKGw9W10sdGhpcy5vcHRpb25zLmd1YXJkZWRVbml0JiZsLnB1c2godGhpcy5vcHRpb25zLmd1YXJkZWRVbml0KSx0aGlzLm9wdGlvbnMuc3BlY2lhbERlc2lnbmF0b3ImJmwucHVzaCh0aGlzLm9wdGlvbnMuc3BlY2lhbERlc2lnbmF0b3IpLHIuTDE9bC5qb2luKFwiL1wiKSksci5SMT10aGlzLm9wdGlvbnMudW5pcXVlRGVzaWduYXRpb24sci5SMj10aGlzLm9wdGlvbnMudHlwZSxyLlIzPXRoaXMub3B0aW9ucy5pZmZTaWYsKHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzfHx0aGlzLm9wdGlvbnMuYWRkaXRpb25hbEluZm9ybWF0aW9uKSYmKGw9W10sdGhpcy5vcHRpb25zLnN0YWZmQ29tbWVudHMmJmwucHVzaCh0aGlzLm9wdGlvbnMuc3RhZmZDb21tZW50cyksdGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiYmbC5wdXNoKHRoaXMub3B0aW9ucy5hZGRpdGlvbmFsSW5mb3JtYXRpb24pLHIuUjQ9bC5qb2luKFwiL1wiKSksKHRoaXMub3B0aW9ucy5sb2NhdGlvbnx8dGhpcy5vcHRpb25zLnNwZWVkKSYmKGw9W10sdGhpcy5vcHRpb25zLmxvY2F0aW9uJiZsLnB1c2godGhpcy5vcHRpb25zLmxvY2F0aW9uKSx0aGlzLm9wdGlvbnMuc3BlZWQmJmwucHVzaCh0aGlzLm9wdGlvbnMuc3BlZWQpLHIuUjU9bC5qb2luKFwiL1wiKSkpLGlzTmFOKHRoaXMub3B0aW9ucy5zaWRjKXx8XCJTdWJzdXJmYWNlXCIhPXRoaXMubWV0YWRhdGEuYmFzZURpbWVuc2lvbnx8KHIuTDE9dGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yLHIuUjE9dGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uLHIuUjI9dGhpcy5vcHRpb25zLnR5cGUsci5SMz10aGlzLm9wdGlvbnMuYWx0aXR1ZGVEZXB0aCxyLlI0PXRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzLHIuUjU9dGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbiksRy54MT1BLngxLU1hdGgubWF4KHRoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzPyhpKHRoaXMub3B0aW9ucy5zcGVjaWFsSGVhZHF1YXJ0ZXJzKS10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LndpZHRoKCkpLzI6MCx0aGlzLm9wdGlvbnMucXVhbnRpdHk/KGkodGhpcy5vcHRpb25zLnF1YW50aXR5KS10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LndpZHRoKCkpLzI6MCxpKHIuTDEpLGkoci5MMiksaShyLkwzKSxpKHIuTDQpLGkoci5MNSkpLEcueDI9QS54MitNYXRoLm1heCh0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycz8oaSh0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycyktdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC53aWR0aCgpKS8yOjAsdGhpcy5vcHRpb25zLnF1YW50aXR5PyhpKHRoaXMub3B0aW9ucy5xdWFudGl0eSktdGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC53aWR0aCgpKS8yOjAsaShyLlIxKSxpKHIuUjIpLGkoci5SMyksaShyLlI0KSxpKHIuUjUpKSwoci5MMXx8ci5SMSkmJihHLnkxPU1hdGgubWluKEcueTEsMTAwLTIuNSpPKSksKHIuTDJ8fHIuUjIpJiYoRy55MT1NYXRoLm1pbihHLnkxLDEwMC0xLjUqTykpLChyLkw0fHxyLlI0KSYmKEcueTI9TWF0aC5tYXgoRy55MiwxMDArMS43Kk8pKSwoci5MNXx8ci5SNSkmJihHLnkyPU1hdGgubWF4KEcueTIsMTAwKzIuNypPKSksdGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZCl7dmFyIFA9e3gxOjEwMCx5MToxZTMseTI6MH0seT17eDI6MTAwLHkxOjFlMyx5MjowfTtyLkwxJiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MMSkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwLTIuNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMC0xLjUqTytvLzIpfSksci5MMiYmKFA9e3gxOk1hdGgubWluKFAueDEsQS54MS1pKHIuTDIpKSx4MjpBLngxLW8vMix5MTpNYXRoLm1pbihQLnkxLDEwMC0xLjUqTykseTI6TWF0aC5tYXgoUC55MiwxMDAtLjUqTytvLzIpfSksci5MMyYmKFA9e3gxOk1hdGgubWluKFAueDEsQS54MS1pKHIuTDMpKSx4MjpBLngxLW8vMix5MTpNYXRoLm1pbihQLnkxLDEwMC0uNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMCsuNSpPK28vMil9KSxyLkw0JiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MNCkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwKy41Kk8pLHkyOk1hdGgubWF4KFAueTIsMTAwKzEuNSpPK28vMil9KSxyLkw1JiYoUD17eDE6TWF0aC5taW4oUC54MSxBLngxLWkoci5MNSkpLHgyOkEueDEtby8yLHkxOk1hdGgubWluKFAueTEsMTAwKzEuNSpPKSx5MjpNYXRoLm1heChQLnkyLDEwMCsyLjUqTytvLzIpfSksUC5oYXNPd25Qcm9wZXJ0eShcIngyXCIpJiYoRy54MS09Ty8yLGUucHVzaCh7dHlwZTpcInBhdGhcIixkOlwiTSBcIisoUC54MS1PLzIpK1wiLFwiKyhQLnkxK08vMikrXCIgXCIrUC54MStcIixcIitQLnkxK1wiIFwiK1AueDIrXCIsXCIrUC55MStcIiBcIitQLngyK1wiLFwiK1AueTIrXCIgXCIrKFAueDEtTy8yKStcIixcIitQLnkyK1wielwiLGZpbGw6QyxzdHJva2U6VHx8ITF9KSksci5SMSYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjEpKSx5MTpNYXRoLm1pbih5LnkxLDEwMC0yLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDAtMS41Kk8rby8yKX0pLHIuUjImJih5PXt4MTpBLngyK28vMix4MjpNYXRoLm1heCh5LngyLEEueDIraShyLlIyKSkseTE6TWF0aC5taW4oeS55MSwxMDAtMS41Kk8pLHkyOk1hdGgubWF4KHkueTIsMTAwLS41Kk8rby8yKX0pLHIuUjMmJih5PXt4MTpBLngyK28vMix4MjpNYXRoLm1heCh5LngyLEEueDIraShyLlIzKSkseTE6TWF0aC5taW4oeS55MSwxMDAtLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDArLjUqTytvLzIpfSksci5SNCYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjQpKSx5MTpNYXRoLm1pbih5LnkxLDEwMCsuNSpPKSx5MjpNYXRoLm1heCh5LnkyLDEwMCsxLjUqTytvLzIpfSksci5SNSYmKHk9e3gxOkEueDIrby8yLHgyOk1hdGgubWF4KHkueDIsQS54MitpKHIuUjUpKSx5MTpNYXRoLm1pbih5LnkxLDEwMCsxLjUqTykseTI6TWF0aC5tYXgoeS55MiwxMDArMi41Kk8rby8yKX0pLHkuaGFzT3duUHJvcGVydHkoXCJ4MVwiKSYmKEcueDIrPU8vMixlLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0gXCIreS54MStcIixcIit5LnkxK1wiIFwiKyh5LngyK08vMikrXCIsXCIreS55MStcIiBcIisoeS54MitPLzIpK1wiLFwiKyh5LnkyLU8vMikrXCIgXCIreS54MitcIixcIit5LnkyK1wiIFwiK3kueDErXCIsXCIreS55MitcInpcIixmaWxsOkMsc3Ryb2tlOlR8fCExfSkpfXIuTDEmJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuTDEseDpBLngxLW8seToxMDAtMS41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkwyJiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkwyLHg6QS54MS1vLHk6MTAwLS41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkwzJiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkwzLHg6QS54MS1vLHk6MTAwKy41Kk8sdGV4dGFuY2hvcjpcImVuZFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLkw0JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLkw0LHg6QS54MS1vLHk6MTAwKzEuNSpPLHRleHRhbmNob3I6XCJlbmRcIixmb250c2l6ZTpPLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExfSksci5MNSYmZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6ci5MNSx4OkEueDEtbyx5OjEwMCsyLjUqTyx0ZXh0YW5jaG9yOlwiZW5kXCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLHIuUjEmJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuUjEseDpBLngyK28seToxMDAtMS41Kk8sdGV4dGFuY2hvcjpcInN0YXJ0XCIsZm9udHNpemU6Tyxmb250ZmFtaWx5Ok4sZmlsbDpTLHN0cm9rZTohMX0pLHIuUjImJmUucHVzaCh7dHlwZTpcInRleHRcIix0ZXh0OnIuUjIseDpBLngyK28seToxMDAtLjUqTyx0ZXh0YW5jaG9yOlwic3RhcnRcIixmb250c2l6ZTpPLGZvbnRmYW1pbHk6TixmaWxsOlMsc3Ryb2tlOiExfSksci5SMyYmZS5wdXNoKHt0eXBlOlwidGV4dFwiLHRleHQ6ci5SMyx4OkEueDIrbyx5OjEwMCsuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLlI0JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLlI0LHg6QS54MitvLHk6MTAwKzEuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSxyLlI1JiZlLnB1c2goe3R5cGU6XCJ0ZXh0XCIsdGV4dDpyLlI1LHg6QS54MitvLHk6MTAwKzIuNSpPLHRleHRhbmNob3I6XCJzdGFydFwiLGZvbnRzaXplOk8sZm9udGZhbWlseTpOLGZpbGw6UyxzdHJva2U6ITF9KSwwPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZSLnB1c2goSS5vdXRsaW5lKGUsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKX1yZXR1cm57cHJlOlIscG9zdDplLGJib3g6R319ZnVuY3Rpb24gTihJKXt2YXIgdD1bXSxFPVtdLFI9dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveDtcIlwiPT10aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5nJiYoUj10aGlzLmJib3gpO3ZhciBlLEE9bmV3IEkuQkJveCxDPXRoaXMuY29sb3JzLmljb25Db2xvclt0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uXXx8dGhpcy5jb2xvcnMuaWNvbkNvbG9yLkZyaWVuZDtpZih0aGlzLnN0eWxlLmluZm9GaWVsZHMmJlwiXCIhPT10aGlzLm9wdGlvbnMuZGlyZWN0aW9uKXtpZigwPT10aGlzLm9wdGlvbnMuc3BlZWRMZWFkZXIpe2U9W3t0eXBlOlwicm90YXRlXCIsZGVncmVlOnRoaXMub3B0aW9ucy5kaXJlY3Rpb24seDoxMDAseToxMDAsZHJhdzpbe3R5cGU6XCJwYXRoXCIsZmlsbDpDLHN0cm9rZTpDLHN0cm9rZXdpZHRoOnRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgsZDpcIk0xMDAsMTAwIGwwLC03NSAtNSwzIDUsLTE1IDUsMTUgLTUsLTNcIn1dfV0sQS55MT1NYXRoLm1pbigxMDAtOTUqTWF0aC5jb3ModGhpcy5vcHRpb25zLmRpcmVjdGlvbi8zNjAqTWF0aC5QSSoyKSwxMDApLEEueTI9TWF0aC5tYXgoMTAwLTk1Kk1hdGguY29zKHRoaXMub3B0aW9ucy5kaXJlY3Rpb24vMzYwKk1hdGguUEkqMiksMTAwKSxBLngxPU1hdGgubWluKDEwMCs5NSpNYXRoLnNpbih0aGlzLm9wdGlvbnMuZGlyZWN0aW9uLzM2MCpNYXRoLlBJKjIpLDEwMCksQS54Mj1NYXRoLm1heCgxMDArOTUqTWF0aC5zaW4odGhpcy5vcHRpb25zLmRpcmVjdGlvbi8zNjAqTWF0aC5QSSoyKSwxMDApLFwiR3JvdW5kXCIhPXRoaXMubWV0YWRhdGEuYmFzZURpbWVuc2lvbiYmXCJcIiE9dGhpcy5tZXRhZGF0YS5iYXNlRGltZW5zaW9ufHwodGhpcy5tZXRhZGF0YS5oZWFkcXVhcnRlcnM/KGU9W3t0eXBlOlwidHJhbnNsYXRlXCIseDpSLngxLTEwMCx5OlIueTItKDEwMC0odGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RofHxJLl9ocVN0YWZmTGVuZ3RoKSksZHJhdzplfV0sQS54MSs9Ui54MS0xMDAsQS54Mis9Ui54MS0xMDApOmU9W3t0eXBlOlwidHJhbnNsYXRlXCIseDowLHk6Ui55MixkcmF3OmV9LHt0eXBlOlwicGF0aFwiLGZpbGw6QyxzdHJva2U6QyxzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGQ6XCJNIDEwMCxcIitSLnkyK1wibDAsMTAwXCJ9XSksQS55Mis9Ui55MitwYXJzZUZsb2F0KHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgpLEUucHVzaChlKX1lbHNle3ZhciBUPXRoaXMub3B0aW9ucy5zcGVlZExlYWRlciooMTAwL3RoaXMuc3R5bGUuc2l6ZSksUz10aGlzLm9wdGlvbnMuZGlyZWN0aW9uKk1hdGguUEkvMTgwLE49LVQqTWF0aC5jb3MoUyksTz1UKk1hdGguc2luKFMpO0EueDE9TWF0aC5taW4oMTAwLDEwMCtPKSxBLngyPU1hdGgubWF4KDEwMCwxMDArTyksQS55MT1NYXRoLm1pbigxMDAsMTAwK04pLEEueTI9TWF0aC5tYXgoMTAwLDEwMCtOKSxlPXt0eXBlOlwicGF0aFwiLGZpbGw6QyxzdHJva2U6QyxzdHJva2V3aWR0aDp0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLGQ6XCJNIDEwMCwxMDAgIGxcIitPK1wiLFwiK059LHQucHVzaChlKX0wPHRoaXMuc3R5bGUub3V0bGluZVdpZHRoJiZ0LnVuc2hpZnQoSS5vdXRsaW5lKGUsdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgsdGhpcy5zdHlsZS5zdHJva2VXaWR0aCxcIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5vdXRsaW5lQ29sb3I/dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3JbdGhpcy5tZXRhZGF0YS5hZmZpbGlhdGlvbl06dGhpcy5zdHlsZS5vdXRsaW5lQ29sb3IpKX1yZXR1cm57cHJlOnQscG9zdDpFLGJib3g6QX19ZnVuY3Rpb24gSShJKXtyZXR1cm4gdm9pZCAwPT09SSYmKEk9e30pLHt4MTp2b2lkIDAhPT1JLngxP0kueDE6MTAwLHkxOnZvaWQgMCE9PUkueTE/SS55MToxMDAseDI6dm9pZCAwIT09SS54Mj9JLngyOjEwMCx5Mjp2b2lkIDAhPT1JLnkyP0kueTI6MTAwLHdpZHRoOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueDItdGhpcy54MX0saGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMueTItdGhpcy55MX0sZ2V0U2l6ZTpmdW5jdGlvbigpe3JldHVybntoZWlnaHQ6dGhpcy55Mi10aGlzLnkxLHdpZHRoOnRoaXMueDItdGhpcy54MX19LG1lcmdlOmZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLngxPUkueDE8PXRoaXMueDE/SS54MTp0aGlzLngxLHRoaXMueTE9SS55MTw9dGhpcy55MT9JLnkxOnRoaXMueTEsdGhpcy54Mj1JLngyPj10aGlzLngyP0kueDI6dGhpcy54Mix0aGlzLnkyPUkueTI+PXRoaXMueTI/SS55Mjp0aGlzLnkyLHRoaXN9fX12YXIgTz17QWlySG9zdGlsZTp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSA0NSwxNTAgTDQ1LDcwIDEwMCwyMCAxNTUsNzAgMTU1LDE1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MToyMCx4MjoxNTUseTI6MTUwfSl9LEFpckZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSAxNTUsMTUwIEMgMTU1LDUwIDExNSwzMCAxMDAsMzAgODUsMzAgNDUsNTAgNDUsMTUwXCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjMwLHgyOjE1NSx5MjoxNTB9KX0sQWlyTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTSA0NSwxNTAgTCA0NSwzMCwxNTUsMzAsMTU1LDE1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTozMCx4MjoxNTUseTI6MTUwfSl9LEFpclVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNjUsMTUwIGMgLTU1LDAgLTUwLC05MCAwLC05MCAwLC01MCA3MCwtNTAgNzAsMCA1MCwwIDU1LDkwIDAsOTBcIn0sYmJveDpuZXcgSSh7eDE6MjUseTE6MjAseDI6MTc1LHkyOjE1MH0pfSxHcm91bmRIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwyOCBMMTcyLDEwMCAxMDAsMTcyIDI4LDEwMCAxMDAsMjggWlwifSxiYm94Om5ldyBJKHt4MToyOCx5MToyOCx4MjoxNzIseTI6MTcyfSl9LEdyb3VuZEZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDUwIGwxNTAsMCAwLDEwMCAtMTUwLDAgelwifSxiYm94Om5ldyBJKHt4MToyNSx5MTo1MCx4MjoxNzUseTI6MTUwfSl9LEdyb3VuZE5ldXRyYWw6e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw0NSBsMTEwLDAgMCwxMTAgLTExMCwwIHpcIn0sYmJveDpuZXcgSSh7eDE6NDUseTE6NDUseDI6MTU1LHkyOjE1NX0pfSxHcm91bmRVbmtub3duOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjMsNjMgQzYzLDIwIDEzNywyMCAxMzcsNjMgQzE4MCw2MyAxODAsMTM3IDEzNywxMzcgQzEzNywxODAgNjMsMTgwIDYzLDEzNyBDMjAsMTM3IDIwLDYzIDYzLDYzIFpcIn0sYmJveDpuZXcgSSh7eDE6MzAuNzUseTE6MzAuNzUseDI6MTY5LjI1LHkyOjE2OS4yNX0pfSxMYW5kRGlzbW91bnRlZEluZGl2aWR1YWxIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwyOCBMMTcyLDEwMCAxMDAsMTcyIDI4LDEwMCAxMDAsMjggWlwifSxiYm94Om5ldyBJKHt4MToyOCx5MToyOCx4MjoxNzIseTI6MTcyfSl9LExhbmREaXNtb3VudGVkSW5kaXZpZHVhbEZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNDUgNTUsMjUgMCw2MCAtNTUsMjUgLTU1LC0yNSAwLC02MCB6XCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjQ1LHgyOjE1NSx5MjoxNTV9KX0sTGFuZERpc21vdW50ZWRJbmRpdmlkdWFsTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1IGwxMTAsMCAwLDExMCAtMTEwLDAgelwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo0NSx4MjoxNTUseTI6MTU1fSl9LExhbmREaXNtb3VudGVkSW5kaXZpZHVhbFVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk02Myw2MyBDNjMsMjAgMTM3LDIwIDEzNyw2MyBDMTgwLDYzIDE4MCwxMzcgMTM3LDEzNyBDMTM3LDE4MCA2MywxODAgNjMsMTM3IEMyMCwxMzcgMjAsNjMgNjMsNjMgWlwifSxiYm94Om5ldyBJKHt4MTozMC43NSx5MTozMC43NSx4MjoxNjkuMjUseTI6MTY5LjI1fSl9LFNlYUhvc3RpbGU6e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMjggTDE3MiwxMDAgMTAwLDE3MiAyOCwxMDAgMTAwLDI4IFpcIn0sYmJveDpuZXcgSSh7eDE6MjgseTE6MjgseDI6MTcyLHkyOjE3Mn0pfSxTZWFGcmllbmQ6e2c6e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6NjB9LGJib3g6bmV3IEkoe3gxOjQwLHkxOjQwLHgyOjE2MCx5MjoxNjB9KX0sU2VhTmV1dHJhbDp7Zzp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1IGwxMTAsMCAwLDExMCAtMTEwLDAgelwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo0NSx4MjoxNTUseTI6MTU1fSl9LFNlYVVua25vd246e2c6e3R5cGU6XCJwYXRoXCIsZDpcIk02Myw2MyBDNjMsMjAgMTM3LDIwIDEzNyw2MyBDMTgwLDYzIDE4MCwxMzcgMTM3LDEzNyBDMTM3LDE4MCA2MywxODAgNjMsMTM3IEMyMCwxMzcgMjAsNjMgNjMsNjMgWlwifSxiYm94Om5ldyBJKHt4MTozMC43NSx5MTozMC43NSx4MjoxNjkuMjUseTI6MTY5LjI1fSl9LFN1YnN1cmZhY2VIb3N0aWxlOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNTAgTDQ1LDEzMCAxMDAsMTgwIDE1NSwxMzAgMTU1LDUwXCJ9LGJib3g6bmV3IEkoe3gxOjQ1LHkxOjUwLHgyOjE1NSx5MjoxODB9KX0sU3Vic3VyZmFjZUZyaWVuZDp7Zzp7dHlwZTpcInBhdGhcIixkOlwibSA0NSw1MCBjIDAsMTAwIDQwLDEyMCA1NSwxMjAgMTUsMCA1NSwtMjAgNTUsLTEyMFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo1MCx4MjoxNTUseTI6MTcwfSl9LFN1YnN1cmZhY2VOZXV0cmFsOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNTAgTDQ1LDE3MCAxNTUsMTcwIDE1NSw1MFwifSxiYm94Om5ldyBJKHt4MTo0NSx5MTo1MCx4MjoxNTUseTI6MTcwfSl9LFN1YnN1cmZhY2VVbmtub3duOntnOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDUwIGMgLTU1LDAgLTUwLDkwIDAsOTAgMCw1MCA3MCw1MCA3MCwwIDUwLDAgNTUsLTkwIDAsLTkwXCJ9LGJib3g6bmV3IEkoe3gxOjI1LHkxOjUwLHgyOjE3NSx5MjoxODB9KX0sUG9zaXRpb25NYXJrZXI6e2c6e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LGJib3g6bmV3IEkoe3gxOjg1LHkxOjg1LHgyOjExNSx5MjoxMTV9KX19LHM9bmV3IGZ1bmN0aW9uKCl7dGhpcy5fYXV0b1ZhbGlkYXRpb249ITEsdGhpcy52ZXJzaW9uPVwiMi4wLjBcIixcIm9iamVjdFwiPT10eXBlb2YgY29uc29sZSYmXCJvYmplY3RcIiE9dHlwZW9mIHByb2Nlc3MmJmNvbnNvbGUuaW5mbyhcIm1pbHN5bWJvbC5qcyBcIit0aGlzLnZlcnNpb24rXCIgLSBDb3B5cmlnaHQgKGMpIDIwMTggTVwiK1N0cmluZy5mcm9tQ2hhckNvZGUoMjI5KStcIm5zIEJlY2ttYW4gIGh0dHA6Ly93d3cuc3BhdGlhbGlsbHVzaW9ucy5jb21cIil9O2Z1bmN0aW9uIEcoKXt0aGlzLmJib3g9bmV3IEksdGhpcy5jb2xvcnM9e30sdGhpcy5tZXRhZGF0YT17fSx0aGlzLm9jdGFnb25BbmNob3I9e3g6NTAseTo1MH0sdGhpcy5vcHRpb25zPXt9LHRoaXMub3B0aW9ucy5xdWFudGl0eT1cIlwiLHRoaXMub3B0aW9ucy5yZWluZm9yY2VkUmVkdWNlZD1cIlwiLHRoaXMub3B0aW9ucy5zdGFmZkNvbW1lbnRzPVwiXCIsdGhpcy5vcHRpb25zLmFkZGl0aW9uYWxJbmZvcm1hdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5ldmFsdWF0aW9uUmF0aW5nPVwiXCIsdGhpcy5vcHRpb25zLmNvbWJhdEVmZmVjdGl2ZW5lc3M9XCJcIix0aGlzLm9wdGlvbnMuc2lnbmF0dXJlRXF1aXBtZW50PVwiXCIsdGhpcy5vcHRpb25zLmhpZ2hlckZvcm1hdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5ob3N0aWxlPVwiXCIsdGhpcy5vcHRpb25zLmlmZlNpZj1cIlwiLHRoaXMub3B0aW9ucy5kaXJlY3Rpb249XCJcIix0aGlzLm9wdGlvbnMuc2lnaW50PVwiXCIsdGhpcy5vcHRpb25zLnVuaXF1ZURlc2lnbmF0aW9uPVwiXCIsdGhpcy5vcHRpb25zLnR5cGU9XCJcIix0aGlzLm9wdGlvbnMuZHRnPVwiXCIsdGhpcy5vcHRpb25zLmFsdGl0dWRlRGVwdGg9XCJcIix0aGlzLm9wdGlvbnMubG9jYXRpb249XCJcIix0aGlzLm9wdGlvbnMuc3BlZWQ9XCJcIix0aGlzLm9wdGlvbnMuc3BlZWRMZWFkZXI9MCx0aGlzLm9wdGlvbnMuc3BlY2lhbEhlYWRxdWFydGVycz1cIlwiLHRoaXMub3B0aW9ucy5jb3VudHJ5PVwiXCIsdGhpcy5vcHRpb25zLnBsYXRmb3JtVHlwZT1cIlwiLHRoaXMub3B0aW9ucy5lcXVpcG1lbnRUZWFyZG93blRpbWU9XCJcIix0aGlzLm9wdGlvbnMuY29tbW9uSWRlbnRpZmllcj1cIlwiLHRoaXMub3B0aW9ucy5hdXhpbGlhcnlFcXVpcG1lbnRJbmRpY2F0b3I9XCJcIix0aGlzLm9wdGlvbnMuaGVhZHF1YXJ0ZXJzRWxlbWVudD1cIlwiLHRoaXMub3B0aW9ucy5pbnN0YWxsYXRpb25Db21wb3NpdGlvbj1cIlwiLHRoaXMub3B0aW9ucy5lbmdhZ2VtZW50QmFyPVwiXCIsdGhpcy5vcHRpb25zLmVuZ2FnZW1lbnRUeXBlPVwiXCIsdGhpcy5vcHRpb25zLmd1YXJkZWRVbml0PVwiXCIsdGhpcy5vcHRpb25zLnNwZWNpYWxEZXNpZ25hdG9yPVwiXCIsdGhpcy5zdHlsZT17fSx0aGlzLnN0eWxlLmFsdGVybmF0ZU1lZGFsPSExLHRoaXMuc3R5bGUuY2l2aWxpYW5Db2xvcj0hMCx0aGlzLnN0eWxlLmNvbG9yTW9kZT1cIkxpZ2h0XCIsdGhpcy5zdHlsZS5maWxsPSEwLHRoaXMuc3R5bGUuZmlsbE9wYWNpdHk9MSx0aGlzLnN0eWxlLmZvbnRmYW1pbHk9XCJBcmlhbFwiLHRoaXMuc3R5bGUuZnJhbWU9ITAsdGhpcy5zdHlsZS5mcmFtZUNvbG9yPVwiXCIsdGhpcy5zdHlsZS5ocVN0YWZmTGVuZ3RoPTAsdGhpcy5zdHlsZS5pY29uPSEwLHRoaXMuc3R5bGUuaWNvbkNvbG9yPVwiXCIsdGhpcy5zdHlsZS5pbmZvQmFja2dyb3VuZD1cIlwiLHRoaXMuc3R5bGUuaW5mb0JhY2tncm91bmRGcmFtZT1cIlwiLHRoaXMuc3R5bGUuaW5mb0NvbG9yPVwiXCIsdGhpcy5zdHlsZS5pbmZvRmllbGRzPSEwLHRoaXMuc3R5bGUuaW5mb1NpemU9NDAsdGhpcy5zdHlsZS5tb25vQ29sb3I9XCJcIix0aGlzLnN0eWxlLm91dGxpbmVDb2xvcj1cInJnYigyMzksIDIzOSwgMjM5KVwiLHRoaXMuc3R5bGUub3V0bGluZVdpZHRoPTAsdGhpcy5zdHlsZS5wYWRkaW5nPTAsdGhpcy5zdHlsZS5zaW1wbGVTdGF0dXNNb2RpZmllcj0hMSx0aGlzLnN0eWxlLnNpemU9MTAwLHRoaXMuc3R5bGUuc3F1YXJlPSExLHRoaXMuc3R5bGUuc3RhbmRhcmQ9XCJcIix0aGlzLnN0eWxlLnN0cm9rZVdpZHRoPTQsdGhpcy5zeW1ib2xBbmNob3I9e3g6NTAseTo1MH0sdGhpcy52YWxpZEljb249ITAsMDxhcmd1bWVudHMubGVuZ3RoJiZ0aGlzLnNldE9wdGlvbnMuYXBwbHkodGhpcyxhcmd1bWVudHMpfWZ1bmN0aW9uIG8oSSx0LEUpe3RoaXMub3B0aW9ucy5zaWRjPXRoaXMub3B0aW9ucy5zaWRjLnRvVXBwZXJDYXNlKCk7dmFyIFI9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDApP3RoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgwKTpcIi1cIixlPVwiXCIhPXRoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgxKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMSk6XCItXCIsQT1cIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMik/dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDIpOlwiLVwiLEM9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDMpP3RoaXMub3B0aW9ucy5zaWRjLmNoYXJBdCgzKTpcIi1cIixUPXQuZnVuY3Rpb25pZD1cIlwiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KT90aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCw2KTpcIi0tLS0tLVwiLFM9XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDEwKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMTApOlwiLVwiLE49XCJcIiE9dGhpcy5vcHRpb25zLnNpZGMuY2hhckF0KDExKT90aGlzLm9wdGlvbnMuc2lkYy5jaGFyQXQoMTEpOlwiLVwiO2lmKC0xPFtcIkhcIixcIlNcIixcIkpcIixcIktcIl0uaW5kZXhPZihlKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblswXSksLTE8W1wiRlwiLFwiQVwiLFwiRFwiLFwiTVwiXS5pbmRleE9mKGUpJiYodC5hZmZpbGlhdGlvbj1FLmFmZmlsaWF0aW9uWzFdKSwtMTxbXCJOXCIsXCJMXCJdLmluZGV4T2YoZSkmJih0LmFmZmlsaWF0aW9uPUUuYWZmaWxpYXRpb25bMl0pLC0xPFtcIlBcIixcIlVcIixcIkdcIixcIldcIixcIk9cIl0uaW5kZXhPZihlKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblszXSksLTE8W1wiUFwiLFwiQVwiXS5pbmRleE9mKEEpJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMF0pLC0xPFtcIkdcIixcIlpcIixcIkZcIixcIlhcIl0uaW5kZXhPZihBKSYmKHQuZGltZW5zaW9uPUUuZGltZW5zaW9uWzFdKSwtMTxbXCJTXCJdLmluZGV4T2YoQSkmJih0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsyXSksLTE8W1wiVVwiXS5pbmRleE9mKEEpJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bM10pLFwiUFwiPT1BJiZcIk9cIiE9UiYmKHQuc3BhY2U9ITApLFwiT1wiPT1SJiYtMTxbXCJWXCIsXCJPXCIsXCJSXCJdLmluZGV4T2YoQSkmJih0LmFjdGl2aXR5PSEwKSxcIkdcIj09UiYmKHQuY29udHJvbE1lYXN1cmU9ITApLFwiSFwiPT1TJiYodC5pbnN0YWxsYXRpb249ITApLHRoaXMuc3R5bGUuZnJhbWUmJlwiQVwiPT1DJiYodC5ub3RwcmVzZW50PUkuX2Rhc2hBcnJheXMuYW50aWNpcGF0ZWQpLHRoaXMuc3R5bGUuZnJhbWUmJi0xPFtcIlBcIixcIkFcIixcIlNcIixcIkdcIixcIk1cIl0uaW5kZXhPZihlKSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiQ1wiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbMl0pLFwiRFwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbM10pLFwiWFwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbNF0pLFwiRlwiPT1DJiYodC5jb25kaXRpb249RS5zdGF0dXNbNV0pLC0xPFtcIkdcIixcIldcIixcIkRcIixcIkxcIixcIk1cIixcIkpcIixcIktcIl0uaW5kZXhPZihlKSYmKHQuY29udGV4dD1FLmNvbnRleHRbMV0pLFwiT1wiPT1SJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMV0pLFwiRVwiPT1SJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMV0pLHQuYmFzZURpbWVuc2lvbj10LmRpbWVuc2lvbix0LmJhc2VBZmZpbGF0aW9uPXQuYWZmaWxpYXRpb24sXCJKXCI9PWUmJih0Lmpva2VyPSEwKSxcIktcIj09ZSYmKHQuZmFrZXI9ITApLCh0Lmpva2VyfHx0LmZha2VyKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblsxXSksXCJTXCI9PVImJlwiR1wiPT1BJiZcIkVcIj09VC5jaGFyQXQoMCkmJih0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsyXSksXCJJXCI9PVImJlwiR1wiPT1BJiYodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMl0pLFwiRVwiPT1SJiYoXCJPXCI9PUEmJi0xPFtcIkFCLS0tLVwiLFwiQUUtLS0tXCIsXCJBRi0tLS1cIixcIkJCLS0tLVwiLFwiQ0ItLS0tXCIsXCJDQy0tLS1cIixcIkRCLS0tLVwiLFwiRERCLS0tXCIsXCJERUItLS1cIixcIkRGQi0tLVwiLFwiREdCLS0tXCIsXCJESEItLS1cIixcIkRJQi0tLVwiLFwiREpCLS0tXCIsXCJETEItLS1cIixcIkRNQi0tLVwiLFwiRE9CLS0tXCIsXCJFQS0tLS1cIixcIkVCLS0tLVwiLFwiRUMtLS0tXCIsXCJFRC0tLS1cIixcIkVFLS0tLVwiXS5pbmRleE9mKFQpfHxcIkZcIj09QSYmLTE8W1wiQkEtLS0tXCIsXCJNQS0tLS1cIixcIk1DLS0tLVwiXS5pbmRleE9mKFQpKSYmKHQuZGltZW5zaW9uPUUuZGltZW5zaW9uWzJdKSwoLTE8W1wiRlwiLFwiR1wiLFwiQ1wiLFwiRFwiXS5pbmRleE9mKFMpfHxcIkhcIj09UyYmXCJCXCI9PU4pJiYodC5mZWludER1bW15PSEwKSwtMTxbXCJBXCIsXCJCXCIsXCJDXCIsXCJEXCJdLmluZGV4T2YoUykmJih0LmhlYWRxdWFydGVycz0hMCksXCJHXCI9PUEmJlwiVUgtLS0tXCI9PVQmJih0LmhlYWRxdWFydGVycz0hMCksLTE8W1wiRVwiLFwiQlwiLFwiR1wiLFwiRFwiXS5pbmRleE9mKFMpJiYodC50YXNrRm9yY2U9ITApLFwiQVwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzExXSksXCJCXCI9PU4mJlwiSFwiIT1TJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzEyXSksXCJDXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMTNdKSxcIkRcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsxNF0pLFwiRVwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzE1XSksXCJGXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMTZdKSxcIkdcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsxN10pLFwiSFwiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzE4XSksXCJJXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMjFdKSxcIkpcIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsyMl0pLFwiS1wiPT1OJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzIzXSksXCJMXCI9PU4mJlwiTlwiIT1TJiYodC5lY2hlbG9uPUUuZWNoZWxvbk1vYmlsaXR5WzI0XSksXCJNXCI9PU4mJih0LmVjaGVsb249RS5lY2hlbG9uTW9iaWxpdHlbMjVdKSxcIk5cIj09TiYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVsyNl0pLFwiTVwiPT1TKXN3aXRjaChOKXtjYXNlXCJPXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVszMV07YnJlYWs7Y2FzZVwiUFwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbMzJdO2JyZWFrO2Nhc2VcIlFcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzMzXTticmVhaztjYXNlXCJSXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVszNF07YnJlYWs7Y2FzZVwiU1wiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbMzVdO2JyZWFrO2Nhc2VcIlRcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzM2XTticmVhaztjYXNlXCJVXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs0MV07YnJlYWs7Y2FzZVwiVlwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbNDJdO2JyZWFrO2Nhc2VcIldcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzM3XTticmVhaztjYXNlXCJZXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs1MV07YnJlYWs7Y2FzZVwiWlwiOnQubW9iaWxpdHk9RS5lY2hlbG9uTW9iaWxpdHlbNTJdO2JyZWFrO2RlZmF1bHQ6dC5tb2JpbGl0eT12b2lkIDB9aWYoXCJOXCI9PVMpc3dpdGNoKE4pe2Nhc2VcIlNcIjp0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5WzYxXTticmVhaztjYXNlXCJMXCI6dC5tb2JpbGl0eT1FLmVjaGVsb25Nb2JpbGl0eVs2Ml07YnJlYWs7ZGVmYXVsdDp0Lm1vYmlsaXR5PXZvaWQgMH1yZXR1cm4oXCJBXCI9PUEmJlwiQ1wiPT1ULmNoYXJBdCgwKXx8XCJHXCI9PUEmJlwiRVZDXCI9PVQuc3Vic3RyaW5nKDAsMyl8fFwiU1wiPT1BJiZcIlhcIj09VC5jaGFyQXQoMCkpJiYodC5jaXZpbGlhbj0hMCksXCJaXCIhPUEmJlwiWFwiIT1BfHwoLTE8W1wiUFwiLFwiVVwiLFwiRlwiLFwiTlwiLFwiSFwiLFwiQVwiLFwiU1wiLFwiR1wiLFwiV1wiXS5pbmRleE9mKGUpJiYodC5kaW1lbnNpb25Vbmtub3duPSEwKSwtMTxbXCJGXCIsXCJBXCJdLmluZGV4T2YoZSkmJih0LmRpbWVuc2lvbj1cIlNlYVwiKSwtMTxbXCJEXCIsXCJMXCIsXCJNXCIsXCJKXCIsXCJLXCJdLmluZGV4T2YoZSkmJih0LmFmZmlsaWF0aW9uPVwibm9uZVwiKSksXCJTXCI9PUEmJi0xPFtcIk8tLS0tLVwiLFwiRUQtLS0tXCIsXCJFUC0tLS1cIixcIkVWLS0tLVwiLFwiWk0tLS0tXCIsXCJaTi0tLS1cIixcIlpJLS0tLVwiXS5pbmRleE9mKFQpJiYodC5mcmFtZT0hMSksXCJFXCI9PVImJlwiTlwiPT1BJiYtMTxbXCJBQS0tLS1cIixcIkFCLS0tLVwiLFwiQUMtLS0tXCIsXCJBRC0tLS1cIixcIkFFLS0tLVwiLFwiQUctLS0tXCIsXCJCQi0tLS1cIixcIkJDLS0tLVwiLFwiQkYtLS0tXCIsXCJCTS0tLS1cIixcIi1DLS0tLS1cIixcIkNBLS0tLVwiLFwiQ0ItLS0tXCIsXCJDQy0tLS1cIixcIkNELS0tLVwiLFwiQ0UtLS0tXCJdLmluZGV4T2YoVCkmJih0LmZyYW1lPSExKSxcIldcIj09UiYmXCJTXCI9PUEmJi0xPFtcIldTVkUtLVwiLFwiV1NELUxJXCIsXCJXU0ZHU09cIixcIldTR1JMLVwiLFwiV1NSLUxJXCIsXCJXU0RTTE1cIixcIldTUy1MSVwiLFwiV1NUTUgtXCIsXCJXU1QtRkNcIixcIldTVFNTLVwiXS5pbmRleE9mKFQpJiYodC5mcmFtZT0hMSksXCJVXCI9PUEmJi0xPFtcIldNLS0tLVwiLFwiV01ELS0tXCIsXCJXTUctLS1cIixcIldNR0QtLVwiLFwiV01HWC0tXCIsXCJXTUdFLS1cIixcIldNR0MtLVwiLFwiV01HUi0tXCIsXCJXTUdPLS1cIixcIldNTS0tLVwiLFwiV01NRC0tXCIsXCJXTU1YLS1cIixcIldNTUUtLVwiLFwiV01NQy0tXCIsXCJXTU1SLS1cIixcIldNTU8tLVwiLFwiV01GLS0tXCIsXCJXTUZELS1cIixcIldNRlgtLVwiLFwiV01GRS0tXCIsXCJXTUZDLS1cIixcIldNRlItLVwiLFwiV01GTy0tXCIsXCJXTU8tLS1cIixcIldNT0QtLVwiLFwiV01YLS0tXCIsXCJXTUUtLS1cIixcIldNQS0tLVwiLFwiV01DLS0tXCIsXCJXTVItLS1cIixcIldNQi0tLVwiLFwiV01CRC0tXCIsXCJXTU4tLS1cIixcIldNUy0tLVwiLFwiV01TWC0tXCIsXCJXTVNELS1cIixcIldELS0tLVwiLFwiV0RNLS0tXCIsXCJXRE1HLS1cIixcIldETU0tLVwiLFwiTkQtLS0tXCIsXCJFLS0tLS1cIixcIlYtLS0tLVwiLFwiWC0tLS0tXCIsXCJOQlMtLS1cIixcIk5CUi0tLVwiLFwiTkJXLS0tXCIsXCJOTS0tLS1cIixcIk5BLS0tLVwiXS5pbmRleE9mKFQpJiYodC5TVEQyNTI1Pyh0LmZpbGw9ITEsXCJXRC0tLS1cIj09VCYmKHQuZmlsbD0hMCksLTE8W1wiTkQtLS0tXCIsXCJOQlMtLS1cIixcIk5CUi0tLVwiLFwiTkJXLS0tXCIsXCJOTS0tLS1cIixcIk5BLS0tLVwiXS5pbmRleE9mKFQpJiYodC5maWxsPSEwLHQuZnJhbWU9ITEpKToodC5mcmFtZT0hMSwtMTxbXCJFLS0tLS1cIixcIlYtLS0tLVwiLFwiWC0tLS0tXCJdLmluZGV4T2YoVCkmJih0LmZpbGw9ITEsdC5mcmFtZT0hMSkpKSxcIldBU1wiIT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoMCwzKSYmXCJXT1NcIiE9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDAsMykmJlwiR1wiIT1SfHwodC5mcmFtZT0hMSksXCJHXCI9PVImJlwiT1wiPT1BJiYtMTxbXCJWXCIsXCJMXCIsXCJQXCIsXCJJXCJdLmluZGV4T2YoVC5jaGFyQXQoMCkpJiYodC5mcmFtZT0hMCx0LmRpbWVuc2lvbj1FLmRpbWVuc2lvblsxXSksdH1mdW5jdGlvbiBNKEksdCxFKXt2YXIgUj17fSxlPXt9O2Zvcih2YXIgQSBpbiBJLl9pY29uU0lEQy5sZXR0ZXIpSS5faWNvblNJREMubGV0dGVyLmhhc093blByb3BlcnR5KEEpJiZJLl9pY29uU0lEQy5sZXR0ZXJbQV0uY2FsbCh0aGlzLFIsZSx0LEUpO3JldHVybntpY29uczpSLGJib3g6ZX19ZnVuY3Rpb24gbihJLHQpe2lmKFwib2JqZWN0XCI9PXR5cGVvZiBJKXtpZihBcnJheS5pc0FycmF5KEkpKXtmb3IodmFyIEU9MDtFPEkubGVuZ3RoO0UrKyluLmNhbGwodGhpcyxJW0VdLHQpO3JldHVybn1yZXR1cm4gSS5pY29uPSEwLFwidGV4dFwiPT1JLnR5cGUmJihJLmhhc093blByb3BlcnR5KFwiZm9udGZhbWlseVwiKXx8KEkuZm9udGZhbWlseT1cIkFyaWFsXCIpLEkuaGFzT3duUHJvcGVydHkoXCJmb250d2VpZ2h0XCIpfHwoSS5mb250d2VpZ2h0PVwiYm9sZFwiKSxJLmhhc093blByb3BlcnR5KFwidGV4dGFuY2hvclwiKXx8KEkudGV4dGFuY2hvcj1cIm1pZGRsZVwiKSxJLmhhc093blByb3BlcnR5KFwic3Ryb2tlXCIpfHwoSS5zdHJva2U9ITEpKSxJLmhhc093blByb3BlcnR5KFwiZmlsbFwiKXx8KEkuZmlsbD10KSx2b2lkKEkuaGFzT3duUHJvcGVydHkoXCJzdHJva2VcIil8fChJLnN0cm9rZT10KSl9fWZ1bmN0aW9uIGEoSSl7dmFyIHQ9NDIsRT0xMTU7cmV0dXJuIDE9PUkubGVuZ3RoJiYodD00NSxFPTExNSksMz09SS5sZW5ndGgmJih0PTM1LEU9MTEwKSw0PD1JLmxlbmd0aCYmKHQ9MzIsRT0xMTApLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpFLGZvbnRzaXplOnQsdGV4dDpJfX1mdW5jdGlvbiBsKEkpe3ZhciB0PTMwO3JldHVybiAzPT1JLmxlbmd0aCYmKHQ9MjUpLDQ8PUkubGVuZ3RoJiYodD0yMikse3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc3LGZvbnRzaXplOnQsdGV4dDpJfX1mdW5jdGlvbiByKEkpe3ZhciB0PTMwLEU9MTQ1O3JldHVybiAzPT1JLmxlbmd0aCYmKHQ9MjUsRT0xNDApLDQ8PUkubGVuZ3RoJiYodD0yMCxFPTEzNSkse3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OkUsZm9udHNpemU6dCx0ZXh0Okl9fWZ1bmN0aW9uIGkoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD10LmZyYW1lLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbQ10sTz1FLmljb25GaWxsQ29sb3JbQ10sRz1FLm5vbmVbQ10sbz1FLmJsYWNrW0NdLE09e1wiU1AuSS5BTlRJU0FURUxMSVRFIFdFQVBPTlwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTAgMCw5IG0gMCwtMzQgMCw1IG0gMCwtOSAtMiw0IDQsMCB6IG0gLTEwLDkgMCwyMCAyMCwwIDAsLTIwIHogbSAyNSwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTMwLDAgLTI1LDAgMCwyMCAyNSwwIHogbSAwLDEwIDUsMCBtIDIwLDAgNSwwXCJ9LFwiU1AuSS5BU1RST05PTUlDQUwgU0FURUxMSVRFXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTcsOTAgLTEsLTkgOCwwIC0xLDkgbSAtNSwyMCAxLDkgMiwwIDEsLTkgbSA4LC0xMCA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sXCJTUC5JLkJJT1NBVEVMTElURVwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4OSBjIDAsNC40IC0zLjYsOCAtOCw4IC00LjQsMCAtOCwtMy42IC04LC04IDAsLTQuNCAzLjYsLTggOCwtOCA0LjQsMCA4LDMuNiA4LDggeiBtIC0xMCwxMCAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDAgbSAtMTcsLTI1IDE3LDEwIC0xLDIgLTE0LC03XCJ9LFwiU1AuSS5DQVBTVUxFXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTE1IGMgLTIsNSAzMiw1IDMwLDAgbCAtNSwtMzAgYyAtMSwtNSAtMTksLTUgLTIwLDAgelwifX07Zm9yKHZhciBpIGluIE1bXCJTUC5JLkNJVklMSUFOIEFTVFJPTk9NSUNBTCBTQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gOTcsOTAgLTEsLTkgOCwwIC0xLDkgbSAtNSwyMCAxLDkgMiwwIDEsLTkgbSA4LC0xMCA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sTVtcIlNQLkkuQ0lWSUxJQU4gQklPU0FURUxMSVRFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDEwMCw4OSBjIDAsNC40IC0zLjYsOCAtOCw4IC00LjQsMCAtOCwtMy42IC04LC04IDAsLTQuNCAzLjYsLTggOCwtOCA0LjQsMCA4LDMuNiA4LDggeiBtIC0xMCwxMCAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDAgbSAtMTcsLTI1IDE3LDEwIC0xLDIgLTE0LC03XCJ9LE1bXCJTUC5JLkNJVklMSUFOIENBUFNVTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gODUsMTE1IGMgLTIsNSAzMiw1IDMwLDAgbCAtNSwtMzAgYyAtMSwtNSAtMTksLTUgLTIwLDAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBDT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDExMCwxMDkgNSwwIG0gLTMwLDAgNSwwIG0gLTUsLTEwIC0yNSwwIDAsMjAgMjUsMCB6IG0gMzAsMCAwLDIwIDI1LDAgMCwtMjAgeiBtIC0yNSwwIDAsMjAgMjAsMCAwLC0yMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDkwIDAsOSBNIDc1LDgxIGMgMTYsMTIgMzQsMTIgNTAsMFwifV0sTVtcIlNQLkkuQ0lWSUxJQU4gRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMDcsMTEzIGMgMCwzLjkgLTMuMSw3IC03LDcgLTMuOSwwIC03LC0zLjEgLTcsLTcgMCwtMy45IDMuMSwtNyA3LC03IDMuOSwwIDcsMy4xIDcsNyB6IG0gLTE3LC0zMyAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCwxMDcgYyA4LC05IDE2LC05IDI0LDBcIn1dLE1bXCJTUC5JLkNJVklMSUFOIE1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDkxLjEsOTIgMCwxNiAxNy44LDAgMCwtMTYgeiBtIDIyLjIsMCAwLDE2IDIyLjIsMCAwLC0xNiB6IG0gLTI2LjYsMCAtMjIuMiwwIDAsMTYgMjIuMiwwIHogbSAwLDggNC40LDAgbSAxNy44LDAgNC40LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMTkgMTAsLTkgMTAsOSBtIC0yMCwtMzggMTAsOSAxMCwtOSBtIDM1LDkgLTEwLDEwIDEwLDEwIE0gNTUsOTAgNjUsMTAwIDU1LDExMFwifV0sTVtcIlNQLkkuQ0lWSUxJQU4gTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCw4NyBjIDgsNiAxNiw2IDI0LDAgbSAtMjAsOCA4LC0xNCA4LDE0XCJ9XSxNW1wiU1AuSS5DSVZJTElBTiBPUkJJVEVSIFNIVVRUTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gODksMTE1IDYsLTI1IGMgMywtMTIgNywtMTIgMTAsMCBsIDYsMjUgLTEwLDAgLTEsNSAtMSwtNSB6XCJ9LE1bXCJTUC5JLkNJVklMSUFOIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMTAsMTAwIDEwLDAgbSAtNDAsMCAxMCwwIG0gLTEwLC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDQwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBTUEFDRSBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDk3LjUsMTEyLjUgMCw3LjUgNSwwIDAsLTcuNSB6IG0gMCwtMzIuNSA1LDAgMCwyNi40IC01LDAgeiBtIC0wLjMsNy42IEMgODMuMyw4OC4yIDcyLjUsOTMuNSA3Mi41LDEwMCBjIDAsNi45IDEyLjMsMTIuNSAyNy41LDEyLjUgMTUuMiwwIDI3LjUsLTUuNiAyNy41LC0xMi41IDAsLTYuNSAtMTEsLTExLjkgLTI1LC0xMi40IGwgMCw1LjYgYyA5LjksMC40IDE3LjUsMy4yIDE3LjUsNi42IDAsMy43IC04LjksNi43IC0xOS44LDYuNyAtMTAuOSwwIC0xOS44LC0zIC0xOS44LC02LjcgMCwtMy40IDcuNCwtNi4xIDE3LjEsLTYuNiBsIDAsLTUuNiBjIC0wLjEsMCAtMC4yLC0wIC0wLjMsMCB6XCJ9LE1bXCJTUC5JLkNJVklMSUFOIFRFVEhFUkVEIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohVCYmTyxkOlwibSAxMjAsODcgLTIwLDEyIG0gMzMsLTEyIGMgMCwzLjYgLTIuOSw2LjUgLTYuNSw2LjUgLTMuNiwwIC02LjUsLTIuOSAtNi41LC02LjUgMCwtMy42IDIuOSwtNi41IDYuNSwtNi41IDMuNiwwIDYuNSwyLjkgNi41LDYuNSB6IG0gLTIzLDIyIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5DSVZJTElBTiBXRUFUSEVSIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IVQmJk8sZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojk1LGZvbnRzaXplOjI1LHRleHQ6XCJXWFwifV0sTVtcIlNQLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxNW1wiU1AuSS5DSVZJTElBTlwiXS5maWxsPVJ8fFM/TzohVCYmTyxNW1wiU1AuSS5DSVZJTElBTlwiXS5zdHJva2U9byxNW1wiU1AuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLE1bXCJTUC5JLkNPTU1VTklDQVRJT05TIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsOTAgMCw5IE0gNzUsODEgYyAxNiwxMiAzNCwxMiA1MCwwXCJ9XSxNW1wiU1AuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTUC5NMi5DWUJFUlNQQUNFXCJdPXIoXCJDWUJcIiksTVtcIlNQLkkuRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDcsMTEzIGMgMCwzLjkgLTMuMSw3IC03LDcgLTMuOSwwIC03LC0zLjEgLTcsLTcgMCwtMy45IDMuMSwtNyA3LC03IDMuOSwwIDcsMy4xIDcsNyB6IG0gLTE3LC0zMyAwLDIwIDIwLDAgMCwtMjAgeiBtIDI1LDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMzAsMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDAsMTAgNSwwIG0gMjAsMCA1LDBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4OCwxMDcgYyA4LC05IDE2LC05IDI0LDBcIn1dLE1bXCJTUC5JLkZGLkNSRVdFRCBTUEFDRSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAuMyw2Mi40IGMgLTEuOCwtMCAtNC4zLDMuNyAtNC41LDUuNCAtMi41LDExLjMgLTMuNCwyMy4xIC02LjIsMzMuNCAtMi45LDYuNyAtNi44LDguMyAtOS45LDEyLjEgLTMsMy42IC04LjUsMTAuNCAtOC41LDEwLjQgbCAwLDYuNCBjIDAsMCA1LjksMC45IDguOSwxLjIgMywwLjIgOC43LDAuMSA4LjcsMC4xIGwgMC4zLDQuMyA0LjMsMC4yIDAuMiwzLjEgNS44LDAgMC45LDYuNSAwLjksLTYuNCA1LjgsMCAwLjIsLTMuMSA0LjMsLTAuMiAwLjMsLTQuMyBjIDAsMCA1LjcsMC4xIDguNywtMC4xIDMsLTAuMiA4LjksLTEuMiA4LjksLTEuMiBsIDAsLTYuNCBjIDAsMCAtNS41LC02LjcgLTguNSwtMTAuMyAtMy4xLC0zLjggLTcsLTUuNCAtOS45LC0xMi4xIC0yLjgsLTEwLjQgLTMuNywtMjIuMiAtNi4yLC0zMy40IC0wLjMsLTIuOSAtMi43LC01LjUgLTQuNSwtNS41IHpcIn0sTVtcIlNQLkkuRkYuU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE1LDcwIDIwLDAgMCw1NSAtMjAsMCB6IG0gLTI1LDUgMjAsMCAwLDQ1IC0yMCwwIHogbSAtMjUsLTUgMjAsMCAwLDU1IC0yMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTgwLDEzNSBjMTAsLTEwIDMwLC0xMCA0MCwwIE0xMDAsMTI3IEwxMDAsMTAwIE03MCwxMDAgTDEzMCwxMDBcIn1dLE1bXCJTUC5JLkZGLlNQQUNFIFNUQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMy4xLDk3LjQgYyAtMTIuNCwwLjMgLTI1LjcsMC4xIC0zNi43LDYuNyAtNC4xLDIuMSAtOC41LDUuOSAtNy44LDExIDAuMiwzLjcgMC4zLDcuNCAwLjUsMTEuMSA2LjIsNy44IDE2LjYsMTAuNCAyNiwxMS44IDE0LDEuOCAyOC41LDEuMiA0Mi4xLC0zIDUuMiwtMS43IDEwLjQsLTQuMyAxNC4yLC04LjMgMC4zLC01LjEgLTAuMywtMTAuNCAwLjcsLTE1LjMgLTEuMiwtNC4zIC01LjksLTYuNCAtOS43LC04LjIgLTkuMiwtNCAtMTkuMywtNS40IC0yOS4yLC01LjYgeiBtIC0zLjIsOS42IGMgMTAuMSwtMC4yIDIwLjUsMS45IDI5LjEsNy40IC0xMyw4LjQgLTI5LjYsOS43IC00NC4zLDYuMSAtNC45LC0xLjMgLTkuNywtMy4zIC0xMy43LC02LjQgOC44LC00LjkgMTguOSwtNi45IDI4LjksLTcuMiB6XCIsZmlsbDpSP086R30se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6XCJibGFja1wiLGQ6XCJtIDk2LjksMTA3IGMgMC43LC04LjEgMS40LC0xNi4zIDIuMSwtMjQuNCBNIDg5LjMsMTIxLjggYyAzLjEsLTEzLjIgNi4yLC0yNi4zIDkuMywtMzkuNSA0LjksMTIuNyA5LjcsMjUuNSAxNC42LDM4LjIgbSAyNy44LC01LjMgYyAtMC4xLDMuOSAtMC4yLDcuOCAtMC4zLDExLjYgTSA1OC42LDExMy4zIGMgMC4yLDQuNSAwLjMsOSAwLjUsMTMuNSBtIC0wLjUsLTEuMiBjIDMuNSw2LjMgMTEsOC42IDE3LjYsMTAuNSAxNi40LDQuMSAzMy45LDMuOSA1MC4xLC0wLjggNS41LC0xLjggMTEuOCwtNC4zIDE0LjcsLTkuNyBtIDAuNSwtMTMgYyAtMC41LDUuNCAtNi4xLDguMSAtMTAuNSwxMCAtMTUuNCw1LjcgLTMyLjQsNi4xIC00OC41LDMuNiAtNy45LC0xLjQgLTE2LjMsLTMuNCAtMjIuMiwtOS4yIC0zLjYsLTMuOSAtMC45LC05LjYgMy40LC0xMS43IDguMywtNS4yIDE4LjMsLTYuNiAyNy45LC03LjUgMTMuNSwtMSAyNy41LDAgNDAuMiw1LjEgNC4yLDEuOCA5LjMsNC42IDkuNyw5LjcgeiBtIC0xMy4zLDEuNiBjIC04LjIsLTUuOSAtMTguOCwtNi44IC0yOC42LC03IC05LjUsMC4xIC0xOS41LDEuMiAtMjcuNiw2LjQgbCAtMC42LDAuNSBtIDU4LjksLTIuNiBjIC0wLjgsNC44IC02LjEsNi40IC0xMCw3LjggLTEzLjIsMy43IC0yNy40LDMuNyAtNDAuNSwtMCAtMy44LC0xLjIgLTguMSwtMi44IC05LjgsLTYuNyAtMC43LC00LjkgNSwtNy4xIDguNywtOC41IDEyLjcsLTQgMjYuNiwtNCAzOS41LC0xIDQuNCwxLjIgOS44LDIuOCAxMS45LDcuMyBsIDAuMSwwLjUgMCwwLjUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOlwiYmxhY2tcIixzdHJva2U6ITEsZDpcIk0gNzUuMiw5My4xIEMgODguOSw4NyAxMDIuNiw4MC44IDExNi4zLDc0LjcgYyAyLjMsMS4zIDQuNywyLjYgNywzLjkgLTEzLjcsNiAtMjcuMywxMiAtNDEsMTggLTIuNCwtMS4yIC00LjgsLTIuMyAtNy4yLC0zLjUgelwifV0sTVtcIlNQLkkuTUFOVUFMIFRSQUNLXCJdPWEoXCJNQU5cIiksTVtcIlNQLkkuTUlMSVRBUllcIl09YShcIk1JTFwiKSxNW1wiU1AuSS5NSU5JQVRVUklaRUQgU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA5MS4xLDkyIDAsMTYgMTcuOCwwIDAsLTE2IHogbSAyMi4yLDAgMCwxNiAyMi4yLDAgMCwtMTYgeiBtIC0yNi42LDAgLTIyLjIsMCAwLDE2IDIyLjIsMCB6IG0gMCw4IDQuNCwwIG0gMTcuOCwwIDQuNCwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsMTE5IDEwLC05IDEwLDkgbSAtMjAsLTM4IDEwLDkgMTAsLTkgbSAzNSw5IC0xMCwxMCAxMCwxMCBNIDU1LDkwIDY1LDEwMCA1NSwxMTBcIn1dLE1bXCJTUC5JLk5BVklHQVRJT05BTCBTQVRFTExJVEVcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDExMCwxMDkgNSwwIG0gLTMwLDAgNSwwIG0gLTUsLTEwIC0yNSwwIDAsMjAgMjUsMCB6IG0gMzAsMCAwLDIwIDI1LDAgMCwtMjAgeiBtIC0yNSwwIDAsMjAgMjAsMCAwLC0yMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODgsODcgYyA4LDYgMTYsNiAyNCwwIG0gLTIwLDggOCwtMTQgOCwxNFwifV0sTVtcIlNQLkkuT1JCSVRFUiBTSFVUVExFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg5LDExNSA2LC0yNSBjIDMsLTEyIDcsLTEyIDEwLDAgbCA2LDI1IC0xMCwwIC0xLDUgLTEsLTUgelwifSxNW1wiU1AuSS5SRS1FTlRSWSBWRUhJQ0xFXCJdPWEoXCJSVlwiKSxNW1wiU1AuSS5SRUNPTk5BSVNTQU5DRSBTQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA2LDEwMCA5LDIwIG0gLTIxLC0yMCAtOSwyMCBtIDE3LC0yMCAzLDIwIG0gLTcsLTIwIC0zLDIwIG0gMTUsLTMwIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5TQVRFTExJVEUsIEdFTkVSQUxcIl09YShcIlNBVFwiKSxNW1wiU1AuSS5TQVRFTExJVEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwMCAxMCwwIG0gLTQwLDAgMTAsMCBtIC0xMCwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSA0MCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTMwLDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0sTVtcIlNQLkkuU1BBQ0UgTEFVTkNIIFZFSElDTEVcIl09YShcIlNMVlwiKSxNW1wiU1AuSS5TUEFDRSBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDk3LjUsMTEyLjUgMCw3LjUgNSwwIDAsLTcuNSB6IG0gMCwtMzIuNSA1LDAgMCwyNi40IC01LDAgeiBtIC0wLjMsNy42IEMgODMuMyw4OC4yIDcyLjUsOTMuNSA3Mi41LDEwMCBjIDAsNi45IDEyLjMsMTIuNSAyNy41LDEyLjUgMTUuMiwwIDI3LjUsLTUuNiAyNy41LC0xMi41IDAsLTYuNSAtMTEsLTExLjkgLTI1LC0xMi40IGwgMCw1LjYgYyA5LjksMC40IDE3LjUsMy4yIDE3LjUsNi42IDAsMy43IC04LjksNi43IC0xOS44LDYuNyAtMTAuOSwwIC0xOS44LC0zIC0xOS44LC02LjcgMCwtMy40IDcuNCwtNi4xIDE3LjEsLTYuNiBsIDAsLTUuNiBjIC0wLjEsMCAtMC4yLC0wIC0wLjMsMCB6XCJ9LE1bXCJTUC5JLlNQQUNFIFZFSElDTEVcIl09YShcIlNWXCIpLE1bXCJTUC5JLlRFVEhFUkVEIFNBVEVMTElURVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjAsODcgLTIwLDEyIG0gMzMsLTEyIGMgMCwzLjYgLTIuOSw2LjUgLTYuNSw2LjUgLTMuNiwwIC02LjUsLTIuOSAtNi41LC02LjUgMCwtMy42IDIuOSwtNi41IDYuNSwtNi41IDMuNiwwIDYuNSwyLjkgNi41LDYuNSB6IG0gLTIzLDIyIDUsMCBtIC0zMCwwIDUsMCBtIC01LC0xMCAtMjUsMCAwLDIwIDI1LDAgeiBtIDMwLDAgMCwyMCAyNSwwIDAsLTIwIHogbSAtMjUsMCAwLDIwIDIwLDAgMCwtMjAgelwifSxNW1wiU1AuSS5XRUFUSEVSIFNBVEVMTElURVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDEwOSA1LDAgbSAtMzAsMCA1LDAgbSAtNSwtMTAgLTI1LDAgMCwyMCAyNSwwIHogbSAzMCwwIDAsMjAgMjUsMCAwLC0yMCB6IG0gLTI1LDAgMCwyMCAyMCwwIDAsLTIwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwMCxmb250c2l6ZToyNSx0ZXh0OlwiV1hcIn1dLE1bXCJTUC5NMS5HRU9TVEFUSU9OQVJZIE9SQklUIChHTylcIl09bChcIkdPXCIpLE1bXCJTUC5NMS5HRU9TWU5DSFJPTk9VUyBPUkJJVCAoR1NPKVwiXT1sKFwiR1NPXCIpLE1bXCJTUC5NMS5ISUdIIEVBUlRIIE9SQklUIChIRU8pXCJdPWwoXCJIRU9cIiksTVtcIlNQLk0xLkxPVyBFQVJUSCBPUkJJVCAoTEVPKVwiXT1sKFwiTEVPXCIpLE1bXCJTUC5NMS5NRURJVU0gRUFSVEggT1JCSVQgKE1FTylcIl09bChcIk1FT1wiKSxNW1wiU1AuTTEuTU9MTklZQSBPUkJJVCAoTU8pXCJdPWwoXCJNT1wiKSxNW1wiU1AuTTIuSU5GUkFSRURcIl09cihcIklSXCIpLE1bXCJTUC5NMi5PUFRJQ0FMXCJdPXIoXCJPXCIpLE1bXCJTUC5NMi5SQURBUlwiXT1yKFwiUlwiKSxNW1wiU1AuTTIuU0lHTkFMUyBJTlRFTExJR0VOQ0UgKFNJR0lOVClcIl09cihcIlNJXCIpLE1bXCJTUEFDRS5NSVNTSUxFLklDT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMzUgbDAsLTEwIDUsLTUgMCwtNTUgNSwtNSA1LDUgMCw1NSA1LDUgMCwxMCAtMTAsLTEwIHpcIn0sKFJ8fFMpJiYoTVtcIlNQQUNFLk1JU1NJTEUuSUNPTlwiXS5maWxsPVQ/RS5maWxsQ29sb3IuVW5rbm93bjpFLmljb25GaWxsQ29sb3IuVW5rbm93biksTVtcIlNQQUNFLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0xLlNQQUNFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5BUlJPV1wiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIkFcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5HUk9VTkQtQkFTRUQgSU5URVJDRVBUT1IgKEdCSSlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJHXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifV0sTVtcIlNQQUNFLk1JU1NJTEUuTTIuSU5URVJNRURJQVRFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLkxPTkcgUkFOR0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJMXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUlwifV0sTVtcIlNQQUNFLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiTVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNIT1JUIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNQQUNFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlBcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSAzIChTTS0zKVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCIzXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gVEVSTUlOQUwgUEhBU0UgKFNNLVQpXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLlRFUk1JTkFMIEhJR0gtQUxUSVRVREUgQVJFQSBERUZFTlNFIChUSEFBRClcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJUXCJ9LE1bXCJTUEFDRS5NSVNTSUxFLk0yLkNMT1NFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLE1bXCJTUEFDRS5NSVNTSUxFLk0yLkRFQlJJU1wiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIkRcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxNW1wiU1BBQ0UuTUlTU0lMRS5NMi5VTktOT1dOXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiVVwifSxNW1wiU1BBQ0UuUExBTkVUIExBTkRFUlwiXT1hKFwiUExcIiksTSlNLmhhc093blByb3BlcnR5KGkpJiYoSS5oYXNPd25Qcm9wZXJ0eShpKSYmY29uc29sZS53YXJuKFwiT3ZlcnJpZGUgb2Y6IFwiK2kpLG4uY2FsbCh0aGlzLE1baV0sTiksSVtpXT1NW2ldKX1zLnNldENvbG9yTW9kZT1mdW5jdGlvbihJLHQpe3JldHVybiB0aGlzLl9jb2xvck1vZGVzW0ldPXt9LHRoaXMuX2NvbG9yTW9kZXNbSV0uSG9zdGlsZT10Lkhvc3RpbGUsdGhpcy5fY29sb3JNb2Rlc1tJXS5GcmllbmQ9dC5GcmllbmQsdGhpcy5fY29sb3JNb2Rlc1tJXS5OZXV0cmFsPXQuTmV1dHJhbCx0aGlzLl9jb2xvck1vZGVzW0ldLlVua25vd249dC5Vbmtub3duLHRoaXMuX2NvbG9yTW9kZXNbSV0uQ2l2aWxpYW49dC5DaXZpbGlhbix0aGlzLl9jb2xvck1vZGVzW0ldfSxzLmFkZFN5bWJvbFBhcnQ9ZnVuY3Rpb24oSSl7aWYoXCJmdW5jdGlvblwiPT10eXBlb2YgSSl7dmFyIHQ9cy5nZXRTeW1ib2xQYXJ0cygpOy0xPT10LmluZGV4T2YoSSkmJnMuc2V0U3ltYm9sUGFydHModC5jb25jYXQoSSkpfXJldHVybiBzfSxzLmdldFN5bWJvbFBhcnRzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3N5bWJvbFBhcnRzLnNsaWNlKDApfSxzLnNldFN5bWJvbFBhcnRzPWZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLl9zeW1ib2xQYXJ0cz1JLHN9LHMucmVzZXQ9ZnVuY3Rpb24oKXtmb3IodmFyIEkgaW4gdGhpcy5fYnJva2VuUGF0aDJEPXZvaWQgMCx0aGlzLl9jb2xvck1vZGVzPXt9LHQpcy5zZXRDb2xvck1vZGUoSSx0W0ldKTt0aGlzLl9kYXNoQXJyYXlzPXtwZW5kaW5nOlwiNCw0XCIsYW50aWNpcGF0ZWQ6XCI4LDEyXCIsZmVpbnREdW1teTpcIjgsOFwifSx0aGlzLl9nZXRJY29ucz17fSx0aGlzLl9nZXRNZXRhZGF0YT17fSx0aGlzLl9ocVN0YWZmTGVuZ3RoPTEwMCx0aGlzLl9pY29uQ2FjaGU9e30sdGhpcy5faWNvblBhcnRzPVtdLHRoaXMuX2xhYmVsQ2FjaGU9e30sdGhpcy5fbGFiZWxPdmVycmlkZXM9e30sdGhpcy5faWNvblNJREM9e30sdGhpcy5faWNvblNJREMubGV0dGVyPVtdLHRoaXMuX2ljb25TSURDLm51bWJlcj1bXSx0aGlzLl9TVEQyNTI1PSEwLHRoaXMuX3N2Z05TPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIix0aGlzLl9zeW1ib2xQYXJ0cz1bXSxzLmFkZFN5bWJvbFBhcnQoRSkscy5hZGRTeW1ib2xQYXJ0KFIpLHMuYWRkU3ltYm9sUGFydChlKSxzLmFkZFN5bWJvbFBhcnQoQSkscy5hZGRTeW1ib2xQYXJ0KEMpLHMuYWRkU3ltYm9sUGFydChUKSxzLmFkZFN5bWJvbFBhcnQoUykscy5hZGRTeW1ib2xQYXJ0KE4pfSxzLnJlc2V0KCkscy5CQm94PUkscy5Db2xvck1vZGU9ZnVuY3Rpb24oSSx0LEUsUixlKXt2YXIgQT17fTtyZXR1cm4gQS5DaXZpbGlhbj1JLEEuRnJpZW5kPXQsQS5Ib3N0aWxlPUUsQS5OZXV0cmFsPVIsQS5Vbmtub3duPWUsQX0scy5zZXRCcm9rZW5QYXRoMkQ9ZnVuY3Rpb24oSSl7cy5fYnJva2VuUGF0aDJEPUl9LHMuX2dldEljb25QYXJ0cz1mdW5jdGlvbihJLHQsRSxSLGUpe3ZhciBBPXt9O2Zvcih2YXIgQyBpbiB0aGlzLl9pY29uUGFydHMpdGhpcy5faWNvblBhcnRzLmhhc093blByb3BlcnR5KEMpJiZ0aGlzLl9pY29uUGFydHNbQ10uY2FsbCh0aGlzLEEsSSx0LEUsUixlKTtyZXR1cm4gQX0scy5fc2NhbGU9ZnVuY3Rpb24oSSx0KXtyZXR1cm57dHlwZTpcInRyYW5zbGF0ZVwiLHg6MTAwLTEwMCpJLHk6MTAwLTEwMCpJLGRyYXc6W3t0eXBlOlwic2NhbGVcIixmYWN0b3I6SSxkcmF3Olt0XX1dfX0scy5fdHJhbnNsYXRlPWZ1bmN0aW9uKEksdCxFKXtyZXR1cm57dHlwZTpcInRyYW5zbGF0ZVwiLHg6SSx5OnQsZHJhdzpbRV19fSxzLmFkZEljb25QYXJ0cz1mdW5jdGlvbihJKXtBcnJheS5pc0FycmF5KEkpfHwoST1bSV0pO2Zvcih2YXIgdD0wO3Q8SS5sZW5ndGg7dCsrKVwiZnVuY3Rpb25cIj09dHlwZW9mIElbdF0mJi0xPT10aGlzLl9pY29uUGFydHMuaW5kZXhPZihJW3RdKSYmKHRoaXMuX2ljb25QYXJ0cz10aGlzLl9pY29uUGFydHMuY29uY2F0KElbdF0pKTtyZXR1cm4gc30scy5hZGRMYWJlbE92ZXJyaWRlcz1mdW5jdGlvbihJLHQpe3JldHVybiB0aGlzLl9sYWJlbENhY2hlPXt9LFwiZnVuY3Rpb25cIj09dHlwZW9mIEkmJih0aGlzLl9sYWJlbE92ZXJyaWRlcy5oYXNPd25Qcm9wZXJ0eSh0KXx8KHRoaXMuX2xhYmVsT3ZlcnJpZGVzW3RdPVtdKSx0aGlzLl9sYWJlbE92ZXJyaWRlc1t0XT10aGlzLl9sYWJlbE92ZXJyaWRlc1t0XS5jb25jYXQoSSkpLHN9LHMuYWRkSWNvbnM9ZnVuY3Rpb24oSSl7dGhpcy5faWNvbkNhY2hlPXt9LEFycmF5LmlzQXJyYXkoSSl8fChJPVtJXSk7Zm9yKHZhciB0PTA7dDxJLmxlbmd0aDt0KyspSVt0XS5oYXNPd25Qcm9wZXJ0eShcImdldE1ldGFkYXRhXCIpJiYocy5fZ2V0TWV0YWRhdGFbSVt0XS50eXBlXT1JW3RdLmdldE1ldGFkYXRhKSxJW3RdLmhhc093blByb3BlcnR5KFwiZ2V0SWNvbnNcIikmJihzLl9nZXRJY29uc1tJW3RdLnR5cGVdPUlbdF0uZ2V0SWNvbnMpLElbdF0uaGFzT3duUHJvcGVydHkoXCJpY29uUGFydHNcIikmJnMuYWRkSWNvblBhcnRzKElbdF0uaWNvblBhcnRzKSxJW3RdLmhhc093blByb3BlcnR5KFwibGFiZWxzXCIpJiZzLmFkZExhYmVsT3ZlcnJpZGVzKElbdF0ubGFiZWxzLElbdF0udHlwZSksSVt0XS5oYXNPd25Qcm9wZXJ0eShcImljb25zXCIpJiZzLmFkZFNJRENpY29ucyhJW3RdLmljb25zLElbdF0udHlwZSl9LHMuYWRkU0lEQ2ljb25zPWZ1bmN0aW9uKEksdCl7cmV0dXJuXCJmdW5jdGlvblwiPT10eXBlb2YgSSYmLTE9PXRoaXMuX2ljb25TSURDW3RdLmluZGV4T2YoSSkmJih0aGlzLl9pY29uU0lEQ1t0XT10aGlzLl9pY29uU0lEQ1t0XS5jb25jYXQoSSkpLHN9LHMuZ2V0Q29sb3JNb2RlPWZ1bmN0aW9uKEkpe3ZhciB0PXRoaXMuX2NvbG9yTW9kZXNbSV07cmV0dXJuIG5ldyBzLkNvbG9yTW9kZSh0LkNpdmlsaWFuLHQuRnJpZW5kLHQuSG9zdGlsZSx0Lk5ldXRyYWwsdC5Vbmtub3duKX0scy5nZXREYXNoQXJyYXlzPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2Rhc2hBcnJheXN9LHMuZ2V0SHFTdGFmZkxlbmd0aD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ocVN0YWZmTGVuZ3RofSxzLmdldFZlcnNpb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52ZXJzaW9ufSxzLm91dGxpbmU9ZnVuY3Rpb24oSSx0LEUsUil7cmV0dXJuIGZ1bmN0aW9uIEkodCxFLFIsZSl7dmFyIEE7aWYoQXJyYXkuaXNBcnJheSh0KSlmb3IodmFyIEMgaW4gQT1bXSx0KUEucHVzaChJKHRbQ10sRSxSLGUpKTtlbHNle2Zvcih2YXIgVCBpbiBBPXt9LHQpLTE9PVtcImZpbGxcIixcImZpbGxvcGFjaXR5XCJdLmluZGV4T2YoVCkmJihBW1RdPXRbVF0pO2lmKFwidHJhbnNsYXRlXCI9PXQudHlwZXx8XCJyb3RhdGVcIj09dC50eXBlfHxcInNjYWxlXCI9PXQudHlwZSlmb3IodmFyIFMgaW4gQS5kcmF3PVtdLHQuZHJhdylBLmRyYXcucHVzaChJKHQuZHJhd1tTXSxFLFIsZSkpO2Vsc2UgQS5zdHJva2V3aWR0aD0hMSE9PUEuc3Ryb2tlP051bWJlcihBLnN0cm9rZXdpZHRofHxSKSsyKkU6MipFLEEuc3Ryb2tlPWUsQS5maWxsPSExLEEubGluZWNhcD1cInJvdW5kXCJ9cmV0dXJuIEF9KEksdCxFLFIpfSxzLnNldERhc2hBcnJheXM9ZnVuY3Rpb24oSSx0LEUpe3JldHVybiB0aGlzLl9kYXNoQXJyYXlzLnBlbmRpbmc9SSx0aGlzLl9kYXNoQXJyYXlzLmFudGljaXBhdGVkPXQsdGhpcy5fZGFzaEFycmF5cy5mZWludER1bW15PUUsdGhpcy5fZGFzaEFycmF5c30scy5zZXRIcVN0YWZmTGVuZ3RoPWZ1bmN0aW9uKEkpe3JldHVybiB0aGlzLl9ocVN0YWZmTGVuZ3RoPUksdGhpcy5faHFTdGFmZkxlbmd0aH0scy5zZXRTdGFuZGFyZD1mdW5jdGlvbihJKXtyZXR1cm5cIjI1MjVcIj09ST90aGlzLl9TVEQyNTI1PSEwOlwiQVBQNlwiPT1JJiYhKHRoaXMuX1NURDI1MjU9ITEpfSxzLl9zeW1ib2xHZW9tZXRyaWVzPU8sRy5wcm90b3R5cGUuYXNDYW52YXM9ZnVuY3Rpb24oSSl7aWYodm9pZCAwPT09cy5fYnJva2VuUGF0aDJEKWlmKFwidW5kZWZpbmVkXCI9PXR5cGVvZiBQYXRoMkQpcy5zZXRCcm9rZW5QYXRoMkQoITApO2Vsc2V7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImNhbnZhc1wiKTt0LndpZGh0PTEsdC5oZWlnaHQ9MTt2YXIgRT10LmdldENvbnRleHQoXCIyZFwiKSxSPW5ldyBQYXRoMkQoXCJNMCAwIGggMTAgdiAxMCBoIC0xMCBaXCIpO0UuZmlsbChSKTt2YXIgZT1FLmdldEltYWdlRGF0YSgwLDAsMSwxKS5kYXRhLmpvaW4oKTtzLnNldEJyb2tlblBhdGgyRCghKFwiMCwwLDAsMjU1XCI9PWUpKX12YXIgQT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiY2FudmFzXCIpO0k9SXx8MSxBLndpZHRoPXRoaXMud2lkdGgqSSxBLmhlaWdodD10aGlzLmhlaWdodCpJO3ZhciBDPUEuZ2V0Q29udGV4dChcIjJkXCIpO3JldHVybiBDLnNjYWxlKEkqdGhpcy5zdHlsZS5zaXplLzEwMCxJKnRoaXMuc3R5bGUuc2l6ZS8xMDApLEMudHJhbnNsYXRlKC0odGhpcy5iYm94LngxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLC0odGhpcy5iYm94LnkxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpKSx0aGlzLmNhbnZhc0RyYXcuY2FsbCh0aGlzLEMsdGhpcy5kcmF3SW5zdHJ1Y3Rpb25zKSxBfSxHLnByb3RvdHlwZS5jYW52YXNEcmF3PWZ1bmN0aW9uIEkodCxFKXtmb3IodmFyIFI9MDtSPEUubGVuZ3RoO1IrKylpZihBcnJheS5pc0FycmF5KEVbUl0pKUVbUl0ubGVuZ3RoJiZJLmNhbGwodGhpcyx0LEVbUl0pO2Vsc2UgaWYoXCJvYmplY3RcIj09dHlwZW9mIEVbUl0pe3N3aXRjaCh0LmxpbmVXaWR0aD1FW1JdLnN0cm9rZXdpZHRofHx0aGlzLnN0eWxlLnN0cm9rZVdpZHRoLHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiYoRVtSXS5zdHJva2U/dC5zdHJva2VTdHlsZT1FW1JdLnN0cm9rZTp0LnN0cm9rZVN0eWxlPVwicmdiYSgwLDAsMCwwKVwiKSxFW1JdLnN0cm9rZWRhc2hhcnJheT90LnNldExpbmVEYXNoKEVbUl0uc3Ryb2tlZGFzaGFycmF5LnNwbGl0KFwiLFwiKSk6MCE9dC5nZXRMaW5lRGFzaCgpLmxlbmd0aCYmdC5zZXRMaW5lRGFzaChbXSksRVtSXS5saW5lY2FwJiYodC5saW5lQ2FwPUVbUl0ubGluZWNhcCx0LmxpbmVKb2luPUVbUl0ubGluZWNhcCksRVtSXS5maWxsJiYodC5maWxsU3R5bGU9RVtSXS5maWxsKSxFW1JdLmZpbGx8fCh0LmZpbGxTdHlsZT1cInJnYmEoMCwwLDAsMClcIiksdm9pZCAwIT09RVtSXS5maWxsb3BhY2l0eSYmKHQuZ2xvYmFsQWxwaGE9RVtSXS5maWxsb3BhY2l0eSksRVtSXS50eXBlKXtjYXNlXCJwYXRoXCI6aWYocy5fYnJva2VuUGF0aDJEKVwiZnVuY3Rpb25cIj09dHlwZW9mIHMuUGF0aDJEPyhzLlBhdGgyRCh0LEVbUl0uZCksKHZvaWQgMD09PUVbUl0uZmlsbHx8dm9pZCAwIT09RVtSXS5maWxsJiZFW1JdLmZpbGwpJiZ0LmZpbGwoKSwxIT10Lmdsb2JhbEFscGhhJiYodC5nbG9iYWxBbHBoYT0xKSwodm9pZCAwPT09RVtSXS5zdHJva2V8fHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiZFW1JdLnN0cm9rZSkmJnQuc3Ryb2tlKCkpOmNvbnNvbGUud2FybihcIm1zLlBhdGgyRCgpIGlzIG5vdCBwcmVzZW50LCB5b3Ugd2lsbCBuZWVkIHRvIGxvYWQgZnVuY3Rpb25hbGl0eSBmb3IgdXNpbmcgQ2FudmFzIGluIG9sZGVyIHZlcnNpb24gb2YgSW50ZXJuZXQgRXhwbG9yZXIuXCIpO2Vsc2V7dmFyIGU9bmV3IFBhdGgyRChFW1JdLmQpO0VbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKHQuc2F2ZSgpLHQuY2xpcChuZXcgUGF0aDJEKEVbUl0uY2xpcFBhdGgpLFwibm9uemVyb1wiKSksKHZvaWQgMD09PUVbUl0uZmlsbHx8dm9pZCAwIT09RVtSXS5maWxsJiZFW1JdLmZpbGwpJiZ0LmZpbGwoZSksRVtSXS5oYXNPd25Qcm9wZXJ0eShcImNsaXBQYXRoXCIpJiZ0LnJlc3RvcmUoKSwxIT10Lmdsb2JhbEFscGhhJiYodC5nbG9iYWxBbHBoYT0xKSwodm9pZCAwPT09RVtSXS5zdHJva2V8fHZvaWQgMCE9PUVbUl0uc3Ryb2tlJiZFW1JdLnN0cm9rZSkmJnQuc3Ryb2tlKGUpfWJyZWFrO2Nhc2VcImNpcmNsZVwiOkVbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKHQuc2F2ZSgpLHQuY2xpcChuZXcgUGF0aDJEKEVbUl0uY2xpcFBhdGgpLFwibm9uemVyb1wiKSksdC5iZWdpblBhdGgoKSx0LmFyYyhFW1JdLmN4LEVbUl0uY3ksRVtSXS5yLDAsMipNYXRoLlBJLCExKSwodm9pZCAwPT09RVtSXS5maWxsfHx2b2lkIDAhPT1FW1JdLmZpbGwmJkVbUl0uZmlsbCkmJnQuZmlsbCgpLEVbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmdC5yZXN0b3JlKCksKHZvaWQgMD09PUVbUl0uc3Ryb2tlfHx2b2lkIDAhPT1FW1JdLnN0cm9rZSYmRVtSXS5zdHJva2UpJiZ0LnN0cm9rZSgpO2JyZWFrO2Nhc2VcInRleHRcIjp0LmZvbnQ9KHZvaWQgMCE9PUVbUl0uZm9udHdlaWdodD9FW1JdLmZvbnR3ZWlnaHQrXCIgXCI6XCJcIikrRVtSXS5mb250c2l6ZStcInB4IFwiK0VbUl0uZm9udGZhbWlseSx0LnRleHRBbGlnbj1cIm1pZGRsZVwiPT1FW1JdLnRleHRhbmNob3I/XCJjZW50ZXJcIjpFW1JdLnRleHRhbmNob3IsdC5maWxsVGV4dChFW1JdLnRleHQsRVtSXS54LEVbUl0ueSksRVtSXS5zdHJva2UmJnQuc3Ryb2tlVGV4dChFW1JdLnRleHQsRVtSXS54LEVbUl0ueSk7YnJlYWs7Y2FzZVwidHJhbnNsYXRlXCI6dC5zYXZlKCksdC50cmFuc2xhdGUoRVtSXS54LEVbUl0ueSksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpO2JyZWFrO2Nhc2VcInJvdGF0ZVwiOnZhciBBPUVbUl0ueCxDPUVbUl0ueTt0LnNhdmUoKSx0LnRyYW5zbGF0ZShBLEMpLHQucm90YXRlKEVbUl0uZGVncmVlKk1hdGguUEkvMTgwKSx0LnRyYW5zbGF0ZSgtQSwtQyksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpO2JyZWFrO2Nhc2VcInNjYWxlXCI6dC5zYXZlKCksdC5zY2FsZShFW1JdLmZhY3RvcixFW1JdLmZhY3RvciksSS5jYWxsKHRoaXMsdCxFW1JdLmRyYXcpLHQucmVzdG9yZSgpfUVbUl0ubGluZWNhcCYmKHQubGluZUNhcD1cImJ1dHRcIix0LmxpbmVKb2luPVwibWl0ZXJcIiksdm9pZCAwIT09RVtSXS5maWxsb3BhY2l0eSYmKHQuZ2xvYmFsQWxwaGE9MSl9fSxHLnByb3RvdHlwZS5hc0RPTT1mdW5jdGlvbigpe3ZhciBJPWRvY3VtZW50LHQ9KG5ldyBET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyh0aGlzLmFzU1ZHKCksXCJ0ZXh0L3htbFwiKTtyZXR1cm4gSS5hZG9wdE5vZGUodC5kb2N1bWVudEVsZW1lbnQpfSxHLnByb3RvdHlwZS5hc1NWRz1mdW5jdGlvbigpe3ZhciBJPSc8c3ZnIHhtbG5zPVwiJytzLl9zdmdOUysnXCIgdmVyc2lvbj1cIjEuMlwiIGJhc2VQcm9maWxlPVwidGlueVwiIHdpZHRoPVwiJyt0aGlzLndpZHRoKydcIiBoZWlnaHQ9XCInK3RoaXMuaGVpZ2h0KydcIiB2aWV3Qm94PVwiJysodGhpcy5iYm94LngxLXRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgtdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpK1wiIFwiKyh0aGlzLmJib3gueTEtdGhpcy5zdHlsZS5zdHJva2VXaWR0aC10aGlzLnN0eWxlLm91dGxpbmVXaWR0aCkrXCIgXCIrdGhpcy5iYXNlV2lkdGgrXCIgXCIrdGhpcy5iYXNlSGVpZ2h0KydcIj4nO3JldHVybiBJKz1mdW5jdGlvbiBJKHQpe2Zvcih2YXIgRT1cIlwiLFI9MDtSPHQubGVuZ3RoO1IrKylpZihBcnJheS5pc0FycmF5KHRbUl0pKXRbUl0ubGVuZ3RoJiYoRSs9SS5jYWxsKHRoaXMsdFtSXSkpO2Vsc2UgaWYoXCJvYmplY3RcIj09dHlwZW9mIHRbUl0pe3ZhciBlPVwiXCI7aWYoXCJzdmdcIj09dFtSXS50eXBlKWUrPXRbUl0uc3ZnO2Vsc2V7c3dpdGNoKHRbUl0uaGFzT3duUHJvcGVydHkoXCJjbGlwUGF0aFwiKSYmKGUrPSc8Y2xpcFBhdGggaWQ9XCJjbGlwXCI+JyxlKz0nPHBhdGggZD1cIicrdFtSXS5jbGlwUGF0aCsnXCIgY2xpcC1ydWxlPVwibm9uemVyb1wiIC8+JyxlKz1cIjwvY2xpcFBhdGg+XCIpLHRbUl0udHlwZSl7Y2FzZVwicGF0aFwiOmUrPSc8cGF0aCBkPVwiJyt0W1JdLmQrJ1wiICcsdFtSXS5oYXNPd25Qcm9wZXJ0eShcImNsaXBQYXRoXCIpJiYoZSs9J2NsaXAtcGF0aD1cInVybCgjY2xpcClcIiAnKTticmVhaztjYXNlXCJjaXJjbGVcIjplKz0nPGNpcmNsZSBjeD1cIicrdFtSXS5jeCsnXCIgY3k9XCInK3RbUl0uY3krJ1wiIHI9XCInK3RbUl0ucisnXCIgJyx0W1JdLmhhc093blByb3BlcnR5KFwiY2xpcFBhdGhcIikmJihlKz0nY2xpcC1wYXRoPVwidXJsKCNjbGlwKVwiICcpO2JyZWFrO2Nhc2VcInRleHRcIjplKz0nPHRleHQgeD1cIicrdFtSXS54KydcIiB5PVwiJyt0W1JdLnkrJ1wiIHRleHQtYW5jaG9yPVwiJyt0W1JdLnRleHRhbmNob3IrJ1wiIGZvbnQtc2l6ZT1cIicrdFtSXS5mb250c2l6ZSsnXCIgZm9udC1mYW1pbHk9XCInK3RbUl0uZm9udGZhbWlseSsnXCIgJyx0W1JdLmZvbnR3ZWlnaHQmJihlKz0nZm9udC13ZWlnaHQ9XCInK3RbUl0uZm9udHdlaWdodCsnXCIgJyk7YnJlYWs7Y2FzZVwidHJhbnNsYXRlXCI6ZSs9JzxnIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgnK3RbUl0ueCtcIixcIit0W1JdLnkrJylcIiAnO2JyZWFrO2Nhc2VcInJvdGF0ZVwiOmUrPSc8ZyB0cmFuc2Zvcm09XCJyb3RhdGUoJyt0W1JdLmRlZ3JlZStcIixcIit0W1JdLngrXCIsXCIrdFtSXS55KycpXCIgJzticmVhaztjYXNlXCJzY2FsZVwiOmUrPSc8ZyB0cmFuc2Zvcm09XCJzY2FsZSgnK3RbUl0uZmFjdG9yKycpXCIgJ31zd2l0Y2godm9pZCAwIT09dFtSXS5zdHJva2UmJihlKz0nc3Ryb2tlLXdpZHRoPVwiJysodFtSXS5zdHJva2V3aWR0aHx8dGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrJ1wiICcsdFtSXS5zdHJva2VkYXNoYXJyYXkmJihlKz0nc3Ryb2tlLWRhc2hhcnJheT1cIicrdFtSXS5zdHJva2VkYXNoYXJyYXkrJ1wiICcpLHRbUl0ubGluZWNhcCYmKGUrPSdzdHJva2UtbGluZWNhcD1cIicrdFtSXS5saW5lY2FwKydcIiAnLGUrPSdzdHJva2UtbGluZWpvaW49XCInK3RbUl0ubGluZWNhcCsnXCIgJyksdFtSXS5zdHJva2U/ZSs9J3N0cm9rZT1cIicrdFtSXS5zdHJva2UrJ1wiICc6ZSs9J3N0cm9rZT1cIm5vbmVcIiAnKSx2b2lkIDAhPT10W1JdLmZpbGwmJihlKz0nZmlsbD1cIicrKHRbUl0uZmlsbD90W1JdLmZpbGw6XCJub25lXCIpKydcIiAnKSx2b2lkIDAhPT10W1JdLmZpbGxvcGFjaXR5JiYoZSs9J2ZpbGwtb3BhY2l0eT1cIicrdFtSXS5maWxsb3BhY2l0eSsnXCIgJyksZSs9XCI+XCIsdFtSXS50eXBlKXtjYXNlXCJwYXRoXCI6ZSs9XCI8L3BhdGg+XCI7YnJlYWs7Y2FzZVwiY2lyY2xlXCI6ZSs9XCI8L2NpcmNsZT5cIjticmVhaztjYXNlXCJ0ZXh0XCI6ZSs9U3RyaW5nKHRbUl0udGV4dCkucmVwbGFjZSgvJi9nLFwiJmFtcDtcIikucmVwbGFjZSgvPC9nLFwiJmx0O1wiKS5yZXBsYWNlKC8+L2csXCImZ3Q7XCIpK1wiPC90ZXh0PlwiO2JyZWFrO2Nhc2VcInRyYW5zbGF0ZVwiOmNhc2VcInJvdGF0ZVwiOmNhc2VcInNjYWxlXCI6ZSs9SS5jYWxsKHRoaXMsdFtSXS5kcmF3KSxlKz1cIjwvZz5cIn19RSs9ZX1yZXR1cm4gRX0uY2FsbCh0aGlzLHRoaXMuZHJhd0luc3RydWN0aW9ucyksSSs9XCI8L3N2Zz5cIix0aGlzLlhNTD1JfSxHLnByb3RvdHlwZS5nZXRBbmNob3I9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zeW1ib2xBbmNob3J9LEcucHJvdG90eXBlLmdldENvbG9ycz1mdW5jdGlvbigpe3ZhciBJPVwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLmNvbG9yTW9kZT90aGlzLnN0eWxlLmNvbG9yTW9kZTpzLmdldENvbG9yTW9kZSh0aGlzLnN0eWxlLmNvbG9yTW9kZSksdD1cIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5mcmFtZUNvbG9yP3RoaXMuc3R5bGUuZnJhbWVDb2xvcjpzLmdldENvbG9yTW9kZShcIkZyYW1lQ29sb3JcIiksRT1cIm9iamVjdFwiPT10eXBlb2YgdGhpcy5zdHlsZS5pY29uQ29sb3I/dGhpcy5zdHlsZS5pY29uQ29sb3I6cy5nZXRDb2xvck1vZGUoXCJJY29uQ29sb3JcIiksUj1JLGU9cy5nZXRDb2xvck1vZGUoXCJCbGFja1wiKSxBPXMuZ2V0Q29sb3JNb2RlKFwiV2hpdGVcIiksQz1zLmdldENvbG9yTW9kZShcIk9mZldoaXRlXCIpLFQ9cy5nZXRDb2xvck1vZGUoXCJOb25lXCIpO3RoaXMuc3R5bGUuY2l2aWxpYW5Db2xvciYmdGhpcy5tZXRhZGF0YS5jaXZpbGlhbiYmKEkuRnJpZW5kPUkuTmV1dHJhbD1JLlVua25vd249SS5DaXZpbGlhbix0LkZyaWVuZD10Lk5ldXRyYWw9dC5Vbmtub3duPXQuQ2l2aWxpYW4sRS5GcmllbmQ9RS5OZXV0cmFsPUUuVW5rbm93bj1FLkNpdmlsaWFuKSwodGhpcy5tZXRhZGF0YS5qb2tlcnx8dGhpcy5tZXRhZGF0YS5mYWtlcikmJihJLkZyaWVuZD1JLkhvc3RpbGUsdC5GcmllbmQ9dC5Ib3N0aWxlLEUuRnJpZW5kPUUuSG9zdGlsZSksXCJcIiE9dGhpcy5zdHlsZS5tb25vQ29sb3ImJih0LkZyaWVuZD10Lk5ldXRyYWw9dC5Ib3N0aWxlPXQuVW5rbm93bj10LkNpdmlsaWFuPXRoaXMuc3R5bGUubW9ub0NvbG9yLGU9dCxBPUk9VCk7dmFyIFM9e2ZpbGxDb2xvcjpJLGZyYW1lQ29sb3I6dCxpY29uQ29sb3I6RSxpY29uRmlsbENvbG9yOlIsbm9uZTpULGJsYWNrOmUsd2hpdGU6QX07cmV0dXJuIHRoaXMubWV0YWRhdGEuZnJhbWU/Uy5mcmFtZUNvbG9yPVwib2JqZWN0XCI9PXR5cGVvZiB0aGlzLnN0eWxlLmZyYW1lQ29sb3I/dGhpcy5zdHlsZS5mcmFtZUNvbG9yOmU6Uy5mcmFtZUNvbG9yPVQsdGhpcy5tZXRhZGF0YS5maWxsPyhTLmZpbGxDb2xvcj10aGlzLm1ldGFkYXRhLmZyYW1lfHwhdGhpcy5tZXRhZGF0YS5mcmFtZSYmIXRoaXMuc3R5bGUuaWNvbj9JOlQsUy5pY29uQ29sb3I9XCJvYmplY3RcIj09dHlwZW9mIHRoaXMuc3R5bGUuaWNvbkNvbG9yP3RoaXMuc3R5bGUuaWNvbkNvbG9yOmUsUy5pY29uRmlsbENvbG9yPXRoaXMubWV0YWRhdGEuZnJhbWU/QzpJLFMud2hpdGU9Qyk6KFMuZmlsbENvbG9yPVQsUy5mcmFtZUNvbG9yPXRoaXMubWV0YWRhdGEuZnJhbWU/dDpULFMuaWNvbkNvbG9yPXQsUy5pY29uRmlsbENvbG9yPVQsdGhpcy5tZXRhZGF0YS5mcmFtZXx8dGhpcy5tZXRhZGF0YS5maWxsfHx0aGlzLnN0eWxlLmljb258fChTLmZyYW1lQ29sb3I9ZSxTLmZpbGxDb2xvcj1lKSksU30sRy5wcm90b3R5cGUuZ2V0T2N0YWdvbkFuY2hvcj1mdW5jdGlvbigpe3JldHVybiB0aGlzLm9jdGFnb25BbmNob3J9LEcucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKCl7dmFyIEk9e2FjdGl2aXR5OiExLGFmZmlsaWF0aW9uOlwidW5kZWZpbmVkXCIsYmFzZUFmZmlsYXRpb246XCJcIixiYXNlRGltZW5zaW9uOlwiXCIsYmFzZUdlb21ldHJ5OntnOlwiXCIsYmJveDp7fX0sY2l2aWxpYW46ITEsY29uZGl0aW9uOlwiXCIsY29udGV4dDpcIlwiLGRpbWVuc2lvbjpcInVuZGVmaW5lZFwiLGRpbWVuc2lvblVua25vd246ITEsZWNoZWxvbjpcIlwiLGZha2VyOiExLGZlbmludER1bW15OiExLGZpbGw6dGhpcy5zdHlsZS5maWxsLGZyYW1lOnRoaXMuc3R5bGUuZnJhbWUsZnVuY3Rpb25pZDpcIlwiLGhlYWRxdWFydGVyczohMSxpbnN0YWxsYXRpb246ITEsam9rZXI6ITEsbW9iaWxpdHk6XCJcIixub3RwcmVzZW50OlwiXCIsbnVtYmVyU0lEQzohMSxzcGFjZTohMSxTVEQyNTI1OnMuX1NURDI1MjUsdGFza0ZvcmNlOiExLHVuaXQ6ITF9LHQ9e2NvbnRleHQ6W1wiUmVhbGl0eVwiLFwiRXhlcmNpc2VcIixcIlNpbXVsYXRpb25cIl0sc3RhdHVzOltcIlByZXNlbnRcIixcIlBsYW5uZWRcIixcIkZ1bGx5Q2FwYWJsZVwiLFwiRGFtYWdlZFwiLFwiRGVzdHJveWVkXCIsXCJGdWxsVG9DYXBhY2l0eVwiXSxlY2hlbG9uTW9iaWxpdHk6ezExOlwiVGVhbS9DcmV3XCIsMTI6XCJTcXVhZFwiLDEzOlwiU2VjdGlvblwiLDE0OlwiUGxhdG9vbi9kZXRhY2htZW50XCIsMTU6XCJDb21wYW55L2JhdHRlcnkvdHJvb3BcIiwxNjpcIkJhdHRhbGlvbi9zcXVhZHJvblwiLDE3OlwiUmVnaW1lbnQvZ3JvdXBcIiwxODpcIkJyaWdhZGVcIiwyMTpcIkRpdmlzaW9uXCIsMjI6XCJDb3Jwcy9NRUZcIiwyMzpcIkFybXlcIiwyNDpcIkFybXkgR3JvdXAvZnJvbnRcIiwyNTpcIlJlZ2lvbi9UaGVhdGVyXCIsMjY6XCJDb21tYW5kXCIsMzE6XCJXaGVlbGVkIGxpbWl0ZWQgY3Jvc3MgY291bnRyeVwiLDMyOlwiV2hlZWxlZCBjcm9zcyBjb3VudHJ5XCIsMzM6XCJUcmFja2VkXCIsMzQ6XCJXaGVlbGVkIGFuZCB0cmFja2VkIGNvbWJpbmF0aW9uXCIsMzU6XCJUb3dlZFwiLDM2OlwiUmFpbFwiLDM3OlwiUGFjayBhbmltYWxzXCIsNDE6XCJPdmVyIHNub3cgKHByaW1lIG1vdmVyKVwiLDQyOlwiU2xlZFwiLDUxOlwiQmFyZ2VcIiw1MjpcIkFtcGhpYmlvdXNcIiw2MTpcIlNob3J0IHRvd2VkIGFycmF5XCIsNjI6XCJMb25nIHRvd2VkIEFycmF5XCIsNzE6XCJMZWFkZXIgSW5kaXZpZHVhbFwiLDcyOlwiRGVwdXR5IEluZGl2aWR1YWxcIn0sYWZmaWxpYXRpb246W1wiSG9zdGlsZVwiLFwiRnJpZW5kXCIsXCJOZXV0cmFsXCIsXCJVbmtub3duXCJdLGRpbWVuc2lvbjpbXCJBaXJcIixcIkdyb3VuZFwiLFwiU2VhXCIsXCJTdWJzdXJmYWNlXCJdfTtyZXR1cm4gSS5jb250ZXh0PXQuY29udGV4dFswXSx0aGlzLnN0eWxlLnN0YW5kYXJkJiYoSS5TVEQyNTI1PVwiQVBQNlwiIT10aGlzLnN0eWxlLnN0YW5kYXJkKSxcIlwiIT10aGlzLnN0eWxlLm1vbm9Db2xvciYmKEkuZmlsbD0hMSksdGhpcy5vcHRpb25zLnNpZGM9U3RyaW5nKHRoaXMub3B0aW9ucy5zaWRjKS5yZXBsYWNlKC9cXCovZyxcIi1cIikucmVwbGFjZSgvIC9nLFwiXCIpLEkubnVtYmVyU0lEQz0haXNOYU4odGhpcy5vcHRpb25zLnNpZGMpLEkubnVtYmVyU0lEQz9cImZ1bmN0aW9uXCI9PXR5cGVvZiBzLl9nZXRNZXRhZGF0YS5udW1iZXI/ST1zLl9nZXRNZXRhZGF0YS5udW1iZXIuY2FsbCh0aGlzLHMsSSx0KTpjb25zb2xlLndhcm4oXCJtcy5fZ2V0TWV0YWRhdGEubnVtYmVyKCkgaXMgbm90IHByZXNlbnQsIHlvdSB3aWxsIG5lZWQgdG8gbG9hZCBmdW5jdGlvbmFsaXR5IGZvciBudW1iZXIgYmFzZWQgU0lEQ3NcIik6XCJmdW5jdGlvblwiPT10eXBlb2Ygcy5fZ2V0TWV0YWRhdGEubGV0dGVyP0k9cy5fZ2V0TWV0YWRhdGEubGV0dGVyLmNhbGwodGhpcyxzLEksdCk6Y29uc29sZS53YXJuKFwibXMuX2dldE1ldGFkYXRhLmxldHRlcigpIGlzIG5vdCBwcmVzZW50LCB5b3Ugd2lsbCBuZWVkIHRvIGxvYWQgZnVuY3Rpb25hbGl0eSBmb3IgbGV0dGVyIGJhc2VkIFNJRENzXCIpLHMuX3N5bWJvbEdlb21ldHJpZXMuaGFzT3duUHJvcGVydHkoSS5kaW1lbnNpb24rSS5hZmZpbGlhdGlvbik/SS5iYXNlR2VvbWV0cnk9cy5fc3ltYm9sR2VvbWV0cmllc1tJLmRpbWVuc2lvbitJLmFmZmlsaWF0aW9uXTpJLmJhc2VHZW9tZXRyeS5iYm94PW5ldyBzLkJCb3gsdGhpcy5zdHlsZS5mcmFtZXx8dGhpcy5zdHlsZS5pY29ufHwoSS5iYXNlR2VvbWV0cnk9cy5fc3ltYm9sR2VvbWV0cmllcy5Qb3NpdGlvbk1hcmtlciksSX0sRy5wcm90b3R5cGUuZ2V0T3B0aW9ucz1mdW5jdGlvbihJKXt2YXIgdCxFPXt9O2Zvcih0IGluIHRoaXMub3B0aW9ucyl0aGlzLm9wdGlvbnMuaGFzT3duUHJvcGVydHkodCkmJihFW3RdPXRoaXMub3B0aW9uc1t0XSk7aWYoSXx8dm9pZCAwPT09SSlmb3IodCBpbiB0aGlzLnN0eWxlKXRoaXMuc3R5bGUuaGFzT3duUHJvcGVydHkodCkmJihFW3RdPXRoaXMuc3R5bGVbdF0pO3JldHVybiBFfSxHLnByb3RvdHlwZS5nZXRTaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMud2lkdGgmJnZvaWQgMCE9PXRoaXMuaGVpZ2h0fHx0aGlzLnVwZGF0ZVN5bWJvbCgpLHt3aWR0aDp0aGlzLndpZHRoLGhlaWdodDp0aGlzLmhlaWdodH19LEcucHJvdG90eXBlLmdldFN0eWxlPWZ1bmN0aW9uKCl7dmFyIEksdD17fTtmb3IoSSBpbiB0aGlzLnN0eWxlKXRoaXMuc3R5bGUuaGFzT3duUHJvcGVydHkoSSkmJih0W0ldPXRoaXMuc3R5bGVbSV0pO3JldHVybiB0fSxHLnByb3RvdHlwZS5pc1ZhbGlkPWZ1bmN0aW9uKEkpe3ZhciB0PS0xPT1KU09OLnN0cmluZ2lmeSh0aGlzLmRyYXdJbnN0cnVjdGlvbnMpLmluZGV4T2YoXCJudWxsXCIpO3JldHVybiBJP3thZmZpbGlhdGlvbjp0aGlzLm1ldGFkYXRhLmFmZmlsaWF0aW9uLGRpbWVuc2lvbjp0aGlzLm1ldGFkYXRhLmRpbWVuc2lvbixkaW1lbnNpb25Vbmtub3duOnRoaXMubWV0YWRhdGEuZGltZW5zaW9uVW5rbm93bixkcmF3SW5zdHJ1Y3Rpb25zOnQsaWNvbjp0aGlzLnZhbGlkSWNvbixtb2JpbGl0eTpudWxsIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fTohKFwidW5kZWZpbmVkXCI9PXRoaXMubWV0YWRhdGEuYWZmaWxpYXRpb258fFwidW5kZWZpbmVkXCI9PXRoaXMubWV0YWRhdGEuZGltZW5zaW9uJiYhdGhpcy5tZXRhZGF0YS5jb250cm9sTWVhc3VyZSkmJnQmJnRoaXMudmFsaWRJY29uJiZudWxsIT10aGlzLm1ldGFkYXRhLm1vYmlsaXR5fSxHLnByb3RvdHlwZS5zZXRPcHRpb25zPWZ1bmN0aW9uKCl7dmFyIEk7Zm9yKEk9MDtJPGFyZ3VtZW50cy5sZW5ndGg7SSsrKXt2YXIgdD1hcmd1bWVudHNbSV07aWYoXCJvYmplY3RcIj09dHlwZW9mIHQpZm9yKHZhciBFIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShFKSYmKFwiU0lEQ1wiIT09RT90aGlzLnN0eWxlLmhhc093blByb3BlcnR5KEUpP3RoaXMuc3R5bGVbRV09dFtFXTp0aGlzLm9wdGlvbnNbRV09dFtFXTp0aGlzLm9wdGlvbnMuc2lkYz10W0VdKTtlbHNlIHRoaXMub3B0aW9ucy5zaWRjPXR9Zm9yKEkgaW4gdGhpcy52YWxpZEljb249ITAsdGhpcy5tZXRhZGF0YT10aGlzLmdldE1ldGFkYXRhKCksdGhpcy5jb2xvcnM9dGhpcy5nZXRDb2xvcnMoKSx0aGlzLmRyYXdJbnN0cnVjdGlvbnM9W10sdGhpcy5iYm94PW5ldyBzLkJCb3gscy5fc3ltYm9sUGFydHMpaWYocy5fc3ltYm9sUGFydHMuaGFzT3duUHJvcGVydHkoSSkpe3ZhciBSPXMuX3N5bWJvbFBhcnRzW0ldLmNhbGwodGhpcyxzKSxlPTA8Ui5wcmUubGVuZ3RofHwwPFIucG9zdC5sZW5ndGg7aWYoUi5wcmUpe2lmKDA8Ui5wcmUubGVuZ3RoKXtmb3IoOzE9PVIucHJlLmxlbmd0aDspUi5wcmU9Ui5wcmVbMF07MCE9Ui5wcmUubGVuZ3RoJiYodGhpcy5kcmF3SW5zdHJ1Y3Rpb25zPVtdLmNvbmNhdChSLnByZSx0aGlzLmRyYXdJbnN0cnVjdGlvbnMpKX1pZigwPFIucG9zdC5sZW5ndGgpe2Zvcig7MT09Ui5wb3N0Lmxlbmd0aCYmKFIucG9zdD1SLnBvc3RbMF0sdm9pZCAwIT09Ui5wb3N0KTspO3ZvaWQgMCE9PVIucG9zdCYmMD09Ui5wb3N0Lmxlbmd0aHx8KHRoaXMuZHJhd0luc3RydWN0aW9ucz10aGlzLmRyYXdJbnN0cnVjdGlvbnMuY29uY2F0KFIucG9zdCkpfVwib2JqZWN0XCI9PXR5cGVvZiBSLmJib3gmJmUmJnRoaXMuYmJveC5tZXJnZShSLmJib3gpfX10aGlzLnN0eWxlLnBhZGRpbmcmJih0aGlzLmJib3gueDEtPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueDIrPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueTEtPXRoaXMuc3R5bGUucGFkZGluZyx0aGlzLmJib3gueTIrPXRoaXMuc3R5bGUucGFkZGluZyk7dmFyIEE9e3g6MTAwLHk6MTAwfTtpZih0aGlzLm9jdGFnb25BbmNob3I9e3g6KEEueC10aGlzLmJib3gueDErcGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStwYXJzZUZsb2F0KHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSkqdGhpcy5zdHlsZS5zaXplLzEwMCx5OihBLnktdGhpcy5iYm94LnkxK3BhcnNlRmxvYXQodGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrcGFyc2VGbG9hdCh0aGlzLnN0eWxlLm91dGxpbmVXaWR0aCkpKnRoaXMuc3R5bGUuc2l6ZS8xMDB9LHRoaXMubWV0YWRhdGEuaGVhZHF1YXJ0ZXJzKXt2YXIgQz10aGlzLnN0eWxlLmhxU3RhZmZMZW5ndGh8fHMuX2hxU3RhZmZMZW5ndGg7QT17eDp0aGlzLm1ldGFkYXRhLmJhc2VHZW9tZXRyeS5iYm94LngxLHk6dGhpcy5tZXRhZGF0YS5iYXNlR2VvbWV0cnkuYmJveC55MitDfX1pZih0aGlzLnN0eWxlLnNxdWFyZSl7dmFyIFQ9TWF0aC5tYXgoQS54LXRoaXMuYmJveC54MSx0aGlzLmJib3gueDItQS54KSxTPU1hdGgubWF4KEEueS10aGlzLmJib3gueTEsdGhpcy5iYm94LnkyLUEueSksTj1NYXRoLm1heChULFMpO3RoaXMuYmJveC54MT1BLngtTix0aGlzLmJib3gueTE9QS55LU4sdGhpcy5iYm94LngyPUEueCtOLHRoaXMuYmJveC55Mj1BLnkrTn1yZXR1cm4gdGhpcy5iYXNlV2lkdGg9dGhpcy5iYm94LndpZHRoKCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLHRoaXMuYmFzZUhlaWdodD10aGlzLmJib3guaGVpZ2h0KCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5zdHJva2VXaWR0aCkrTnVtYmVyKDIqdGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpLHRoaXMud2lkdGg9dGhpcy5iYXNlV2lkdGgqdGhpcy5zdHlsZS5zaXplLzEwMCx0aGlzLmhlaWdodD10aGlzLmJhc2VIZWlnaHQqdGhpcy5zdHlsZS5zaXplLzEwMCx0aGlzLnN5bWJvbEFuY2hvcj17eDooQS54LXRoaXMuYmJveC54MStwYXJzZUZsb2F0KHRoaXMuc3R5bGUuc3Ryb2tlV2lkdGgpK3BhcnNlRmxvYXQodGhpcy5zdHlsZS5vdXRsaW5lV2lkdGgpKSp0aGlzLnN0eWxlLnNpemUvMTAwLHk6KEEueS10aGlzLmJib3gueTErcGFyc2VGbG9hdCh0aGlzLnN0eWxlLnN0cm9rZVdpZHRoKStwYXJzZUZsb2F0KHRoaXMuc3R5bGUub3V0bGluZVdpZHRoKSkqdGhpcy5zdHlsZS5zaXplLzEwMH0scy5fYXV0b1ZhbGlkYXRpb24mJih0aGlzLmlzVmFsaWQoKXx8KGNvbnNvbGUud2FybihcIkVycm9yIGluIHN5bWJvbDogXCIrdGhpcy5vcHRpb25zLnNpZGMpLGNvbnNvbGUud2Fybih0aGlzLmlzVmFsaWQoITApKSkpLHRoaXN9LEcucHJvdG90eXBlLnRvRGF0YVVSTD1mdW5jdGlvbigpe3JldHVyblwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxcIit3aW5kb3cuYnRvYSh0aGlzLmFzU1ZHKCkpfSxzLlN5bWJvbD1HO3ZhciBMPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbaV0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUC0tLS0tLS1cIl09W10sSVtcIlMtUC1TLS0tLS1cIl09W0VbXCJTUC5JLkZGLlNBVEVMTElURVwiXV0sSVtcIlMtUC1WLS0tLS1cIl09W0VbXCJTUC5JLkZGLkNSRVdFRCBTUEFDRSBWRUhJQ0xFXCJdXSxJW1wiUy1QLVQtLS0tLVwiXT1bRVtcIlNQLkkuRkYuU1BBQ0UgU1RBVElPTlwiXV0sSVtcIlMtUC1MLS0tLS1cIl09W0VbXCJTUC5JLlNQQUNFIExBVU5DSCBWRUhJQ0xFXCJdXX19O2Z1bmN0aW9uIFAoSSx0LEUsUixlLEEpe3ZhciBDPXQuZnJhbWUsVD10LmFmZmlsaWF0aW9ufHxcIkZyaWVuZFwiLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbVF0sTz1FLmljb25GaWxsQ29sb3JbVF0sRz1FLmJsYWNrW1RdLG89e307Zm9yKHZhciBNIGluIG9bXCJBUi5JLk1JTElUQVJZXCJdPWEoXCJNSUxcIiksb1tcIkFSLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxvW1wiQVIuSS5DSVZJTElBTlwiXS5maWxsPVJ8fFM/TzohQyYmTyxvW1wiQVIuSS5DSVZJTElBTlwiXS5zdHJva2U9RyxvW1wiQVIuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLG9bXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxvW1wiQVIuSS5DSVZJTElBTiBGSVhFRCBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxvW1wiQVIuSS5GRi5DSVZJTElBTiBGSVhFRCBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGQ6XCJNNjIsODAgbDMwLDAgMCwtMTAgMTYsMCAwLDEwIDMwLDAgMCwxNSAtMzAsMCAwLDI1IDEwLDAgMCw1IC0zNiwwIDAsLTUgMTAsMCAwLC0yNSAtMzAsMCBaIE05NSw3MCBsMCwtNSAxMCwwIDAsNVwiLGZpbGw6ISFSJiZPfSxvW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTYwLDg1IGw0MCwxNSA0MCwtMTUgMCwzMCAtNDAsLTE1IC00MCwxNSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNNjAsODUgbDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0sb1tcIkFSLkkuRkYuQ0lWSUxJQU4gUk9UQVJZIFdJTkdcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGQ6XCJNODAsNzAgbDEwLDEwIE0xMjAsMTEwIGwtMTAsLTEwIE04MCwxMTAgbDEwLC0xMCBNMTIwLDcwIGwtMTAsMTAgTTEwMCwxMTUgbDAsMjAgTTk1LDEzNSBsMTAsMFwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTpHLGZpbGw6ISFSJiZPLGQ6XCJtIDExMyw5MCBjIC0wLjMsOC44IC0xLjksMjAuMyAtMTAuOCwyNC42IC03LjcsMiAtMTIuMywtNy4xIC0xMy44LC0xMy4zIC0yLjYsLTExLjUgLTIuMywtMjYgNi45LC0zNC42IDYuMCwtNC45IDEzLjEsMS45IDE0LjksNy44IDIsNC45IDIuOCwxMC4yIDIuOCwxNS41IHpcIn1dLG9bXCJBUi5JLk1JTElUQVJZIEJBTExPT05cIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5Ojk1LHI6MTV9LHt0eXBlOlwicGF0aFwiLGQ6XCJNOTUsMTEwIGwwLDEwIDEwLDAgMCwtMTAgelwifV0sb1tcIkFSLkkuRkYuTUlMSVRBUlkgQkFMTE9PTlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMTUgbDIwLDAgMCwyMCAtMjAsMCB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjkwLHI6MzV9XSxvW1wiQVIuSS5DSVZJTElBTiBCQUxMT09OXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGN4OjEwMCxjeTo5NSxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiEoIVImJiFTKSYmTyxzdHJva2U6RyxkOlwiTTk1LDExMCBsMCwxMCAxMCwwIDAsLTEwIHpcIn1dLG9bXCJBUi5JLkZGLkNJVklMSUFOIEJBTExPT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNOTAsMTI1IGwyMCwwIDAsMTAgLTIwLDAgelwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGN4OjEwMCxjeTo5MCxyOjM1fV0sb1tcIkFSLkkuTUlMSVRBUlkgQUlSU0hJUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTAsMTEwIDEwLDEwIDEwLDAgLTUsLTE1IG0gMCwtMTAgNSwtMTUgLTEwLDAgLTEwLDEwIG0gMTcuMiwxMCBjIDAsNi4xIC0xMi4yLDExLjEgLTI3LjIsMTEuMSAtMTUsMCAtMjcuMiwtNSAtMjcuMiwtMTEuMSAwLC02LjEgMTIuMiwtMTEuMSAyNy4yLC0xMS4xIDE1LDAgMjcuMiw1IDI3LjIsMTEuMSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIEFJUlNISVBcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohKCFSJiYhUykmJk8sc3Ryb2tlOkcsZDpcIm0gMTEwLDExMCAxMCwxMCAxMCwwIC01LC0xNSBtIDAsLTEwIDUsLTE1IC0xMCwwIC0xMCwxMCBtIDE3LjIsMTAgYyAwLDYuMSAtMTIuMiwxMS4xIC0yNy4yLDExLjEgLTE1LDAgLTI3LjIsLTUgLTI3LjIsLTExLjEgMCwtNi4xIDEyLjIsLTExLjEgMjcuMiwtMTEuMSAxNSwwIDI3LjIsNSAyNy4yLDExLjEgelwifSxvW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2MCw4NCA0MCwyMCA0MCwtMjAgMCw4IC00MCwyNSAtNDAsLTI1IHpcIixzdHJva2U6ITF9LG9bXCJBUi5JLkFJUiBERUNPWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTY1LDk1IGwxNSwtMTUgMCwzMCBaIE05Mi41LDk1IGwxNSwtMTUgMCwzMCBaIE0xMjAsOTUgbDE1LC0xNSAwLDMwIFogTTY1LDEyMCBsNzAsMCAwLC01IC03MCwwIFpcIn0sb1tcIlNVLklDLkFJUiBERUNPWSBEU3ltYm9sXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDg1IDgxIEwgNjUgOTggTCA4NSAxMTkgTCA4NSA4MSB6IE0gMTEwIDgxIEwgOTAgOTggTCAxMTAgMTE5IEwgMTEwIDgxIHogTSAxMzUgODEgTCAxMTUgOTggTCAxMzUgMTE5IEwgMTM1IDgxIHpcIn0sb1tcIkFSLkkuTUVESUNBTCBFVkFDVUFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTMsODMgbDE0LDAgMCwxMCAxMCwwIDAsMTQgLTEwLDAgMCwxMCAtMTQsMCAwLC0xMCAtMTAsMCAwLC0xNCAxMCwwIFpcIn0sb1tcIkFSLkkuQVRUQUNLL1NUUklLRVwiXT1hKFwiQVwiKSxvW1wiQVIuSS5CT01CRVJcIl09YShcIkJcIiksb1tcIkFSLkkuQ0FSR09cIl09YShcIkNcIiksb1tcIkFSLkkuRVNDT1JUXCJdPWEoXCJFXCIpLG9bXCJBUi5JLkZJR0hURVJcIl09YShcIkZcIiksb1tcIkFSLkkuRklHSFRFUiBJTlRFUkNFUFRPUlwiXT1hKFwiSVwiKSxvW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl09YShcIkpcIiksb1tcIkFSLkkuVEFOS0VSXCJdPWEoXCJLXCIpLG9bXCJBUi5JLlBBVFJPTFwiXT1hKFwiUFwiKSxvW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXT1hKFwiUlwiKSxvW1wiQVIuSS4yNTI1IFBIT1RPR1JBUEhJQ1wiXT1hKFwiWFwiKSxvW1wiQVIuSS5UUkFJTkVSXCJdPWEoXCJUXCIpLG9bXCJBUi5JLlVUSUxJVFlcIl09YShcIlVcIiksb1tcIkFSLkkuVlNUT0xcIl09YShSJiYhUz9cIkxcIjpcIlZcIiksb1tcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdPWEoUiYmIVM/XCJEXCI6XCJBQ1BcIiksb1tcIkFSLkkuQUlSQk9STkUgRUFSTFkgV0FSTklOR1wiXT1hKFImJiFTP1wiV1wiOlwiQUVXXCIpLG9bXCJBUi5JLkFOVElTVVJGQUNFIFdBUkZBUkVcIl09YShSJiYhUz9cIk5cIjpcIkFTVVdcIiksb1tcIkFSLkkuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdPWEoUiYmIVM/XCJTXCI6XCJBU1dcIiksb1tcIkFSLkkuQ09NTVVOSUNBVElPTlNcIl09YShSJiYhUz9cIllcIjpcIkNPTVwiKSxvW1wiQVIuSS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl09YShcIkNTQVJcIiksb1tcIkFSLkkuRUxFQ1RST05JQyBTVVBQT1JUIE1FQVNVUkVTXCJdPWEoUj9cIlpcIjpcIkVTTVwiKSxvW1wiQVIuSS5HT1ZFUk5NRU5UXCJdPWEoXCJHT1ZcIiksb1tcIkFSLkkuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl09YShcIk1DTVwiKSxvW1wiQVIuSS5QRVJTT05ORUwgUkVDT1ZFUllcIl09YShSP1wiSFwiOlwiUFJPXCIpLG9bXCJBUi5JLlBBU1NFTkdFUlwiXT1hKFwiUFhcIiksb1tcIkFSLkkuU0VBUkNIIEFORCBSRVNDVUVcIl09YShcIlNBUlwiKSxvW1wiQVIuSS5TVVBSRVNTSU9OIE9GIEVORU1ZIEFJUiBERUZFTkNFXCJdPWEoXCJTRUFEXCIpLG9bXCJBUi5JLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl09YShcIlNPRlwiKSxvW1wiQVIuSS5VTFRSQSBMSUdIVFwiXT1hKFwiVUxcIiksb1tcIkFSLkkuVklQXCJdPWEoXCJWSVBcIiksb1tcIkFSLkkuRkYuTUlMSVRBUlkgRklYRUQgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OS4yLDU4LjIgYyAtMywwLjggLTIuNSw1LjggLTIuNSw1LjggbCAtMC4zLDE2IC0zNy4yLDM2LjUgMS4zLDQuNiBMIDk2LjcsOTYuNiA5NywxMjguNiBsIC04LjUsOC4yIDAsNC42IDkuMywtNC4yIGMgMC43LDAuNiAxLjgsMS43IDEuOCwxLjcgMCwwIDEuMiwtMS4xIDEuOSwtMS43IGwgOS4zLDQuMiAwLC00LjYgLTguNSwtOC4yIDAuMywtMzIgMzYuMiwyNC41IDEuMywtNC42IC0zNy4yLC0zNi41IC0wLjMsLTE2IGMgMCwwIDAuNSwtNSAtMi41LC01LjggLTAuNCwtMC4xIC0wLjcsLTAuMSAtMS4xLDAgelwiLHN0cm9rZTohMX0sb1tcIkFSLkkuRklYRUQtV0lORyBEU3ltYm9sXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIk0gOTkuNCA4MC44IEMgOTcuOSA4MS4xIDk4LjEgODMuNCA5OC4xIDgzLjQgTCA5OCA5MC43IEwgNzguNiAxMDcuNCBMIDc5LjMgMTA5LjQgTCA5OC4xIDk4LjMgTCA5OC4zIDExMi45IEwgOTMuOSAxMTYuNiBMIDkzLjkgMTE4LjcgTCA5OC44IDExNi44IEMgOTkuMSAxMTcgOTkuNyAxMTcuNSA5OS43IDExNy41IEMgOTkuNyAxMTcuNSAxMDAuNCAxMTcgMTAwLjcgMTE2LjggTCAxMDUuNiAxMTguNyBMIDEwNS42IDExNi42IEwgMTAxLjEgMTEyLjkgTCAxMDEuMyA5OC4zIEwgMTIwLjIgMTA5LjQgTCAxMjAuOSAxMDcuNCBMIDEwMS41IDkwLjcgTCAxMDEuMyA4My40IEMgMTAxLjMgODMuNCAxMDEuNiA4MS4xIDEwMCA4MC44IEMgOTkuOCA4MC44IDk5LjYgODAuOCA5OS40IDgwLjggelwiOlwiTTEwMCwxMDAgTDEzMCw4OCBjMTUsMCAxNSwyNCAwLDI0IEwxMDAsMTAwIDcwLDExMiBjLTE1LDAgLTE1LC0yNCAwLC0yNCBaXCJ9LG9bXCJBUi5JLkNJVklMSUFOIEZJWEVELVdJTkcgRFN5bWJvbFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEoIVImJiFTKSYmTyxzdHJva2U6RyxkOlI/XCJtIDc1LjEsOTAuMyAxOS42LDAgMCwtNi41IDEwLjUsMCAwLDYuNSAxOS42LDAgMCw5LjcgLTE5LjYsMCAwLDE2LjIgNi41LDAgMCwzLjIgLTIzLjYsMCAwLC0zLjIgNi41LDAgMCwtMTYuMiAtMTkuNiwwIHogbSAyMS42LC02LjUgMCwtMy4yIDYuNSwwIDAsMy4yXCI6XCJNMTAwLDEwMCBMMTMwLDg4IGMxNSwwIDE1LDI0IDAsMjQgTDEwMCwxMDAgNzAsMTEyIGMtMTUsMCAtMTUsLTI0IDAsLTI0IFpcIn0sb1tcIkFSLkkuRklHSFRFUi9CT01CRVJcIl09YShcIkYvQlwiKSxvW1wiQVIuSS5FTEVDVFJPTklDIFNVUFBPUlRcIl09YShSP1wiRVNcIjpcIkVTTVwiKSxvW1wiQVIuSS5QRVJTT05ORUwgUkVDT1ZFUlkgRFN5bWJvbFwiXT1hKFwiUFJcIiksb1tcIkFSLkkuUEhPVE9HUkFQSElDIFJFQ09OTkFJU1NBTkNFXCJdPWEoXCJQSFwiKSxvW1wiQVIuSS5FTEVDVFJPTklDIEFUVEFDSyAoRUEpXCJdPWEoXCJFQVwiKSxvW1wiQVIuSS5WRVJUSUNBTC1UQUtFT0ZGIFVBViAoVlQtVUFWKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCw4NSAzMCwxMCAzMCwtMTAgMCwtNSAtMzAsNSAtMzAsLTUgeiBtIC0xMCw1IDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0sb1tcIkFSLkkuVEVUSEVSRUQgTElHSFRFUiBUSEFOIEFJUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA3NSwxMTAgODUsOTUgbSAtNSwyMCBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgeiBtIDE1LC02IDAsMTEgMTAsMCAwLC0xMSBtIDEwLC0xNCBjIDAsOC4zIC02LjcsMTUgLTE1LDE1IC04LjMsMCAtMTUsLTYuNyAtMTUsLTE1IDAsLTguMyA2LjcsLTE1IDE1LC0xNSA4LjMsMCAxNSw2LjcgMTUsMTUgelwifSxvW1wiQVIuSS5DSVZJTElBTiBURVRIRVJFRCBMSUdIVEVSIFRIQU4gQUlSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJNIDc1LDExMCA4NSw5NSBtIC01LDIwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gMTUsLTYgMCwxMSAxMCwwIDAsLTExIG0gMTAsLTE0IGMgMCw4LjMgLTYuNywxNSAtMTUsMTUgLTguMywwIC0xNSwtNi43IC0xNSwtMTUgMCwtOC4zIDYuNywtMTUgMTUsLTE1IDguMywwIDE1LDYuNyAxNSwxNSB6XCJ9LG9bXCJBUi5JLkNJVklMSUFOIFVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISghUiYmIVMpJiZPLHN0cm9rZTpHLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwifSxvW1wiQVIuSS5XRUFQT05cIl09YShcIldQTlwiKSxvW1wiQVIuSS5VTkRFUldBVEVSIERFQ09ZIERTeW1ib2xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gODUgODEgTCA2NSA5OCBMIDg1IDExOSBMIDg1IDgxIHogTSAxMTAgODEgTCA5MCA5OCBMIDExMCAxMTkgTCAxMTAgODEgeiBNIDEzNSA4MSBMIDExNSA5OCBMIDEzNSAxMTkgTCAxMzUgODEgelwifSxvW1wiQVIuSS5CT01CXCJdPWEoXCJCT01CXCIpLG9bXCJBUi5JLk1BTlVBTCBUUkFDS1wiXT1hKFwiTUFOXCIpLG9bXCJBSVIuTTEuQVRUQUNLXCJdPWwoXCJBXCIpLG9bXCJBSVIuTTEuQk9NQkVSXCJdPWwoXCJCXCIpLG9bXCJBSVIuTTEuQ0FSR09cIl09bChcIkNcIiksb1tcIkFJUi5NMS5GSUdIVEVSXCJdPWwoXCJGXCIpLG9bXCJBSVIuTTEuSU5URVJDRVBUT1JcIl09bChcIklcIiksb1tcIkFJUi5NMS5UQU5LRVJcIl09bChcIktcIiksb1tcIkFJUi5NMS5VVElMSVRZXCJdPWwoXCJVXCIpLG9bXCJBSVIuTTEuVlNUT0xcIl09bChSJiYhUz9cIkxcIjpcIlZcIiksb1tcIkFJUi5NMS5QQVNTRU5HRVJcIl09bChcIlBYXCIpLG9bXCJBSVIuTTEuVUxUUkEgTElHSFRcIl09bChcIlVMXCIpLG9bXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdPWwoUiYmIVM/XCJEXCI6XCJBQ1BcIiksb1tcIkFJUi5NMS5BTlRJU1VSRkFDRSBXQVJGQVJFXCJdPWwoUiYmIVM/XCJOXCI6XCJBU1VXXCIpLG9bXCJBSVIuTTEuQUlSQk9STkUgRUFSTFkgV0FSTklOR1wiXT1sKFImJiFTP1wiV1wiOlwiQUVXXCIpLG9bXCJBSVIuTTEuR09WRVJOTUVOVFwiXT1sKFwiR09WXCIpLG9bXCJBSVIuTTEuTUVERVZBQ1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05NS41LDgwIGw5LDAgMCwtOSA5LDAgMCwtOSAtOSwwIDAsLTkgLTksMCAwLDkgLTksMCAwLDkgOSwwIFpcIn0sb1tcIkFJUi5NMS5FU0NPUlRcIl09bChcIkVcIiksb1tcIkFJUi5NMS5JTlRFTlNJVkUgQ0FSRVwiXT1sKFwiSUNcIiksb1tcIkFJUi5NMS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl09bChcIkpcIiksb1tcIkFJUi5NMS5QQVRST0xcIl09bChcIlBcIiksb1tcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXT1sKFwiUlwiKSxvW1wiQUlSLk0xLlRSQUlORVJcIl09bChcIlRcIiksb1tcIkFJUi5NMS5QSE9UT0dSQVBISUNcIl09bChSJiYhUz9cIlhcIjpcIlBIXCIpLG9bXCJBSVIuTTEuUEVSU09OTkVMIFJFQ09WRVJZXCJdPWwoXCJQUlwiKSxvW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFImJiFTP1wiU1wiOlwiQVNXXCIpLG9bXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl09bChSJiYhUz9cIllcIjpcIkNPTVwiKSxvW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VSVkVJTExBTkNFIE1FQVNVUkVTXCJdPWwoUj9cIlpcIjpcIkVTTVwiKSxvW1wiQUlSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdPWwoXCJNQ01cIiksb1tcIkFJUi5NMS5TRUFSQ0ggQU5EIFJFU0NVRVwiXT1sKFwiU0FSXCIpLG9bXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXT1sKFwiU09GXCIpLG9bXCJBSVIuTTEuU1VSRkFDRSBXQVJGQVJFXCJdPWwoXCJTVVdcIiksb1tcIkFJUi5NMS5WSVBcIl09bChcIlZJUFwiKSxvW1wiQUlSLk0xLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXT1sKFImJiFTP1wiSFwiOlwiQ1NBUlwiKSxvW1wiQUlSLk0xLlNVUFJFU1NJT04gT0YgRU5FTVkgQUlSIERFRkVOQ0VcIl09bChcIlNFQURcIiksb1tcIkFJUi5NMS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODAsNjUgMjAsMTMgMjAsLTEzIDAsLTUgLTIwLDEwIC0yMCwtMTAgelwifSxvW1wiQUlSLk0xLkJPT00tT05MWVwiXT1sKFwiQlwiKSxvW1wiQUlSLk0xLkRST1VHRS1PTkxZXCJdPWwoXCJEXCIpLG9bXCJBSVIuTTEuRUxFQ1RST05JQyBTVVBQT1JUIChFUylcIl09bChSP1wiRVNcIjpcIkVTTVwiKSxvW1wiQUlSLk0xLkhJSkFDS0VSXCJdPWwoXCJISlwiKSxvW1wiQUlSLk0xLkNZQkVSU1BBQ0VcIl09bChcIkNZQlwiKSxvW1wiQUlSLk0xLkZJR0hURVIvQk9NQkVSXCJdPWwoXCJGL0JcIiksb1tcIkFJUi5NMS5FTEVDVFJPTklDIEFUVEFDSyAoRUEpXCJdPWwoXCJFQVwiKSxvW1wiQUlSLk0xLk1VTFRJTUlTU0lPTlwiXT1sKFwiTU1cIiksb1tcIkFJUi5NMS5ISUpBQ0tJTkdcIl09bChcIkhcIiksb1tcIkFJUi5NMS5BU1cgSEVMTy1MQU1QU1wiXT1sKFwiTFBcIiksb1tcIkFJUi5NMS5BU1cgSEVMTyAtIFNILTYwUlwiXT1sKFwiNjBSXCIpLG9bXCJBSVIuTTIuSEVBVllcIl09cihcIkhcIiksb1tcIkFJUi5NMi5NRURJVU1cIl09cihcIk1cIiksb1tcIkFJUi5NMi5MSUdIVFwiXT1yKFwiTFwiKSxvW1wiQUlSLk0yLkJPT00tT05MWVwiXT1yKFwiQlwiKSxvW1wiQUlSLk0yLkRST1VHRS1PTkxZXCJdPXIoXCJEXCIpLG9bXCJBSVIuTTIuQk9PTSBBTkQgRFJPVUdFXCJdPXIoXCJCL0RcIiksb1tcIkFJUi5NMi5DTE9TRSBSQU5HRVwiXT1yKFwiQ1JcIiksb1tcIkFJUi5NMi5TSE9SVCBSQU5HRVwiXT1yKFwiU1JcIiksb1tcIkFJUi5NMi5NRURJVU0gUkFOR0VcIl09cihcIk1SXCIpLG9bXCJBSVIuTTIuTE9ORyBSQU5HRVwiXT1yKFwiTFJcIiksb1tcIkFJUi5NMi5QSE9UT0dSQVBISUNcIl09cihcIlBcIiksb1tcIkFJUi5NMi5DWUJFUlNQQUNFXCJdPXIoXCJDWUJcIiksb1tcIkFJUi5NMi5ET1dOTElOS0VEXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjE0MCxmb250c2l6ZToyNSx0ZXh0OlwiRExcIn0sb1tcIkFJUi5NSVNTSUxFLklDT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMzUgbDAsLTEwIDUsLTUgMCwtNTUgNSwtNSA1LDUgMCw1NSA1LDUgMCwxMCAtMTAsLTEwIHpcIn0sKFJ8fFMpJiYob1tcIkFJUi5NSVNTSUxFLklDT05cIl0uZmlsbD1DP0UuZmlsbENvbG9yLlVua25vd246RS5pY29uRmlsbENvbG9yLlVua25vd24pLG9bXCJBSVIuTUlTU0lMRS5JQy5BTlRJQkFMTElTVElDIE1JU1NJTEVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBQk1cIn0sb1tcIkFJUi5NSVNTSUxFLklDLkJPTUJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJCT01CXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkFcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlVcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMS5TUEFDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUFwifV0sb1tcIkFJUi5NSVNTSUxFLk0xLkFOVEktQkFMTElTVElDXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJBXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMS5DUlVJU0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkNcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLkxBTkRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkxcIn0sb1tcIkFJUi5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJJXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5BSVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJBXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5TVVJGQUNFXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiU1wifSxvW1wiQUlSLk1JU1NJTEUuTTIuU1VCU1VSRkFDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJVXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuU1BBQ0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUFwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLkxBVU5DSEVEXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiTFwifSxvW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0sb1tcIkFJUi5NSVNTSUxFLk0yLlBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJQXCJ9LG9bXCJBSVIuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gMiAoU00tMilcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiMlwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSA2IChTTS02KVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCI2XCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuRVZPTFZFRCBTRUEgU1BBUlJPVyBNSVNTSUxFIChFU1NNKVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIlNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuUk9MTElORyBBSVJGUkFNRSBNSVNTSUxFIChSQU0pXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiUlwifSxvW1wiQUlSLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5Ojk1LGZvbnRzaXplOjMwLHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiUlwifV0sb1tcIkFJUi5NSVNTSUxFLk0yLk1FRElVTSBSQU5HRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6OTUsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxvW1wiQUlSLk1JU1NJTEUuTTIuSU5URVJNRURJQVRFIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiTFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlJcIn1dLG9bXCJBSVIuTUlTU0lMRS5NMi5JTlRFUkNPTlRJTkVOVEFMXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiSVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLG8pby5oYXNPd25Qcm9wZXJ0eShNKSYmKEkuaGFzT3duUHJvcGVydHkoTSkmJmNvbnNvbGUud2FybihcIk92ZXJyaWRlIG9mOiBcIitNKSxuLmNhbGwodGhpcyxvW01dLE4pLElbTV09b1tNXSl9dmFyIHk9e3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltQXSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiUy1BLS0tLS0tLVwiXT1bXSxJW1wiUy1BLU0tLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUllcIl1dLElbXCJTLUEtTUYtLS0tXCJdPVtFW1wiQVIuSS5GRi5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdXSxJW1wiUy1BLU1GQi0tLVwiXT1bRVtcIkFSLkkuQk9NQkVSXCJdXSxJW1wiUy1BLU1GRi0tLVwiXT1bRVtcIkFSLkkuRklHSFRFUlwiXV0sSVtcIlMtQS1NRkZJLS1cIl09W0VbXCJBUi5JLkZJR0hURVIgSU5URVJDRVBUT1JcIl1dLElbXCJTLUEtTUZULS0tXCJdPVtFW1wiQVIuSS5UUkFJTkVSXCJdXSxJW1wiUy1BLU1GQS0tLVwiXT1bRVtcIkFSLkkuQVRUQUNLL1NUUklLRVwiXV0sSVtcIlMtQS1NRkwtLS1cIl09W0VbXCJBUi5JLlZTVE9MXCJdXSxJW1wiUy1BLU1GSy0tLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdXSxJW1wiUy1BLU1GS0ItLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdLEVbXCJBSVIuTTEuQk9PTS1PTkxZXCJdXSxJW1wiUy1BLU1GS0QtLVwiXT1bRVtcIkFSLkkuVEFOS0VSXCJdLEVbXCJBSVIuTTEuRFJPVUdFLU9OTFlcIl1dLElbXCJTLUEtTUZDLS0tXCJdPVtFW1wiQVIuSS5DQVJHT1wiXV0sSVtcIlMtQS1NRkNMLS1cIl09W0VbXCJBUi5JLkNBUkdPXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUEtTUZDTS0tXCJdPVtFW1wiQVIuSS5DQVJHT1wiXSxFW1wiQUlSLk0yLk1FRElVTVwiXV0sSVtcIlMtQS1NRkNILS1cIl09W0VbXCJBUi5JLkNBUkdPXCJdLEVbXCJBSVIuTTIuSEVBVllcIl1dLElbXCJTLUEtTUZKLS0tXCJdPVtFW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZPLS0tXCJdPVtFW1wiQVIuSS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbXCJTLUEtTUZSLS0tXCJdPVtFW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXV0sSVtcIlMtQS1NRlJXLS1cIl09W0VbXCJBUi5JLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbXCJTLUEtTUZSWi0tXCJdPVtFW1wiQVIuSS5FTEVDVFJPTklDIFNVUFBPUlQgTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZSWC0tXCJdPVI/W0VbXCJBUi5JLjI1MjUgUEhPVE9HUkFQSElDXCJdXTpbRVtcIkFSLkkuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkFJUi5NMi5QSE9UT0dSQVBISUNcIl1dLElbXCJTLUEtTUZQLS0tXCJdPVtFW1wiQVIuSS5QQVRST0xcIl1dLElbXCJTLUEtTUZQTi0tXCJdPVtFW1wiQVIuSS5BTlRJU1VSRkFDRSBXQVJGQVJFXCJdXSxJW1wiUy1BLU1GUE0tLVwiXT1bRVtcIkFSLkkuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZVLS0tXCJdPVtFW1wiQVIuSS5VVElMSVRZXCJdXSxJW1wiUy1BLU1GVUwtLVwiXT1bRVtcIkFSLkkuVVRJTElUWVwiXSxFW1wiQUlSLk0yLkxJR0hUXCJdXSxJW1wiUy1BLU1GVU0tLVwiXT1bRVtcIkFSLkkuVVRJTElUWVwiXSxFW1wiQUlSLk0yLk1FRElVTVwiXV0sSVtcIlMtQS1NRlVILS1cIl09W0VbXCJBUi5JLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtQS1NRlktLS1cIl09W0VbXCJBUi5JLkNPTU1VTklDQVRJT05TXCJdXSxJW1wiUy1BLU1GSC0tLVwiXT1bRVtcIkFSLkkuUEVSU09OTkVMIFJFQ09WRVJZXCJdXSxJW1wiUy1BLU1GRC0tLVwiXT1bRVtcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJW1wiUy1BLU1GUS0tLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUEtTUZRQS0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFUVEFDS1wiXV0sSVtcIlMtQS1NRlFCLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQk9NQkVSXCJdXSxJW1wiUy1BLU1GUUMtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5DQVJHT1wiXV0sSVtcIlMtQS1NRlFELS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJW1wiUy1BLU1GUUYtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5GSUdIVEVSXCJdXSxJW1wiUy1BLU1GUUgtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLElbXCJTLUEtTUZRSi0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sSVtcIlMtQS1NRlFLLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVEFOS0VSXCJdXSxJW1wiUy1BLU1GUUwtLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5WU1RPTFwiXV0sSVtcIlMtQS1NRlFNLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtQS1NRlFJLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUZRTi0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFOVElTVVJGQUNFIFdBUkZBUkVcIl1dLElbXCJTLUEtTUZRUC0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLlBBVFJPTFwiXV0sSVtcIlMtQS1NRlFSLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUEtTUZRUlctXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbXCJTLUEtTUZRUlotXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VSVkVJTExBTkNFIE1FQVNVUkVTXCJdXSxJW1wiUy1BLU1GUVJYLVwiXT1bRVtcIkFSLkkuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl0sRVtcIkFJUi5NMS5QSE9UT0dSQVBISUNcIl1dLElbXCJTLUEtTUZRUy0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtQS1NRlFULS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVFJBSU5FUlwiXV0sSVtcIlMtQS1NRlFVLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuVVRJTElUWVwiXV0sSVtcIlMtQS1NRlFZLS1cIl09W0VbXCJBUi5JLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdLEVbXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl1dLElbXCJTLUEtTUZRTy0tXCJdPVtFW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXSxFW1wiQUlSLk0xLk1FREVWQUNcIl1dLElbXCJTLUEtTUZTLS0tXCJdPVtFW1wiQVIuSS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbXCJTLUEtTUZNLS0tXCJdPVtFW1wiQVIuSS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1BLU1ILS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl1dLElbXCJTLUEtTUhBLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkFUVEFDS1wiXV0sSVtcIlMtQS1NSFMtLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1BLU1IVS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5VVElMSVRZXCJdXSxJW1wiUy1BLU1IVUwtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5VVElMSVRZXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUEtTUhVTS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5NRURJVU1cIl1dLElbXCJTLUEtTUhVSC0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVUSUxJVFlcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtQS1NSEktLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl1dLElbXCJTLUEtTUhILS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXV0sSVtcIlMtQS1NSFItLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUEtTUhRLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdXSxJW1wiUy1BLU1IQy0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5DQVJHT1wiXV0sSVtcIlMtQS1NSENMLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQ0FSR09cIl0sRVtcIkFJUi5NMi5MSUdIVFwiXV0sSVtcIlMtQS1NSENNLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuQ0FSR09cIl0sRVtcIkFJUi5NMi5NRURJVU1cIl1dLElbXCJTLUEtTUhDSC0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkNBUkdPXCJdLEVbXCJBSVIuTTIuSEVBVllcIl1dLElbXCJTLUEtTUhULS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlRSQUlORVJcIl1dLElbXCJTLUEtTUhPLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLk1FREVWQUNcIl1dLElbXCJTLUEtTUhNLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUEtTUhELS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLkFJUkJPUk5FIENPTU1BTkQgUE9TVFwiXV0sSVtcIlMtQS1NSEstLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuVEFOS0VSXCJdXSxJW1wiUy1BLU1ISi0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbXCJTLUEtTUwtLS0tXCJdPVtFW1wiQVIuSS5GRi5NSUxJVEFSWSBCQUxMT09OXCJdXSxJW1wiUy1BLU1WLS0tLVwiXT1bRVtcIkFSLkkuVklQXCJdXSxJW1wiUy1BLU1FLS0tLVwiXT1bRVtcIkFSLkkuRVNDT1JUXCJdXSxJW1wiUy1BLVctLS0tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl1dLElbXCJTLUEtV00tLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUNPTlwiXV0sSVtcIlMtQS1XTVMtLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5MQVVOQ0hFRFwiXV0sSVtcIlMtQS1XTVNTLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5TVVJGQUNFXCJdXSxJW1wiUy1BLVdNU0EtLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkFJUlwiXV0sSVtcIlMtQS1XTVNVLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5TVVJGQUNFXCJdLEVbXCJBSVIuTUlTU0lMRS5NMi5TVUJTVVJGQUNFXCJdXSxJW1wiUy1BLVdNU0ItLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLklDLkFOVElCQUxMSVNUSUMgTUlTU0lMRVwiXV0sSVtcIlMtQS1XTUEtLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkxBVU5DSEVEXCJdXSxJW1wiUy1BLVdNQVMtLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLkFJUlwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuU1VSRkFDRVwiXV0sSVtcIlMtQS1XTUFBLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLkFJUlwiXV0sSVtcIlMtQS1XTUFQLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLlNQQUNFXCJdXSxJW1wiUy1BLVdNVS0tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLlNVUkZBQ0VcIl1dLElbXCJTLUEtV01MLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUNPTlwiXSxFW1wiQUlSLk1JU1NJTEUuTTEuTEFORFwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuQUlSXCJdXSxJW1wiUy1BLVdNQ00tLVwiXT1bRVtcIkFJUi5NSVNTSUxFLklDT05cIl0sRVtcIkFJUi5NSVNTSUxFLk0xLkNSVUlTRVwiXSxFW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXV0sSVtcIlMtQS1XTUItLS1cIl09W0VbXCJBSVIuTUlTU0lMRS5JQ09OXCJdLEVbXCJBSVIuTUlTU0lMRS5NMS5CQUxMSVNUSUNcIl0sRVtcIkFJUi5NSVNTSUxFLk0yLk1JU1NJTEVcIl1dLElbXCJTLUEtV0ItLS0tXCJdPVtFW1wiQUlSLk1JU1NJTEUuSUMuQk9NQlwiXV0sSVtcIlMtQS1XRC0tLS1cIl09W0VbXCJBUi5JLkFJUiBERUNPWVwiXV0sSVtcIlMtQS1DLS0tLS1cIl09W0VbXCJBUi5JLkNJVklMSUFOXCJdXSxJW1wiUy1BLUNGLS0tLVwiXT1bRVtcIkFSLkkuRkYuQ0lWSUxJQU4gRklYRUQgV0lOR1wiXV0sSVtcIlMtQS1DSC0tLS1cIl09W0VbXCJBUi5JLkZGLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdXSxJW1wiUy1BLUNMLS0tLVwiXT1bRVtcIkFSLkkuRkYuQ0lWSUxJQU4gQkFMTE9PTlwiXV19fTtmdW5jdGlvbiBjKEksdCxFLFIsZSxBKXt2YXIgQz10LmZyYW1lLFQ9dC5hZmZpbGlhdGlvbnx8XCJGcmllbmRcIixTPXQuYmFzZUdlb21ldHJ5LE49dC5udW1iZXJTSURDLE89RS5pY29uQ29sb3JbVF0sRz1FLmljb25GaWxsQ29sb3JbVF0sbz1FLmJsYWNrW1RdLE09RS53aGl0ZVtUXSxpPXt9O2Zvcih2YXIgTCBpbiBpW1wiR1IuSUMuTUlMSVRBUllcIl09YShcIk1JTFwiKSxpW1wiR1IuSS5HT1ZFUk5NRU5UXCJdPWEoXCJHT1ZcIiksaVtcIkdSLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTEwIC0xMCwtMTAgMTAsLTEwIDAsLTEwIDUwLDAgMCwxMCAxMCwxMCAtMTAsMTAgelwifSxpW1wiR1IuSUMuRkVSUllcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9HOiFDJiZHLGQ6XCJtIDc1LDEwMCAwLC0zNSA1MCwwIDAsMzUgMjAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJGRVwiOlwiRlwifV0saVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdPWEoXCJBRE1cIiksaVtcIkdSLklDLk1BTlVBTCBUUkFDS1wiXT1hKFwiTUFOXCIpLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBDSEFQQVJSQUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsODAgMzAsMCBjIDUuNTQsMCAxMCw0LjQ2IDEwLDEwIGwgMCw1IGMgMCw1LjU0IC00LjQ2LDEwIC0xMCwxMCBsIC0zMCwwIGMgLTUuNTQsMCAtMTAsLTQuNDYgLTEwLC0xMCBsIDAsLTUgYyAwLC01LjU0IDQuNDYsLTEwIDEwLC0xMCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMSxmb250c2l6ZToyMCx0ZXh0OlwiQ1wifV0saVtcIkdSLklDLkFJUiBERUZFTlNFIENPTVBPU0lURVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTg1LDEyMCBDODUsMTEwIDExNSwxMTAgMTE1LDEyMCBNOTAsMTE1IEw5MCw5MCBDOTAsODAgMTEwLDgwIDExMCw5MCBMMTEwLDExNSBNMTAwLDExMiBsMCwtMzBcIixmaWxsOiExfSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQURcIl09YShcIkhNRFwiKSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgSEFXS1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMDEsZm9udHNpemU6MjAsdGV4dDpcIkhcIn0saVtcIkdSLklDLkFJUiBERUZFTlNFIEgvTUFEIFBBVFJJT1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAxLGZvbnRzaXplOjIwLHRleHQ6XCJQXCJ9LGlbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTAsMTIwIEw5MCw5MCBDOTAsODAgMTEwLDgwIDExMCw5MCBMMTEwLDEyMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GTE9BVElORyBDUkFGVFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw3NSAyMCwwIDAsLTEwIC01LDAgMCwtMTAgLTEwLDAgMCwxMCAtNSwwIHpcIixzdHJva2U6ITF9LGlbXCJHUi5JQy5BSVIgQU5EIE1JU1NJTEUgREVGRU5TRVwiXT1hKFwiTURcIiksaVtcIkdSLklDLk1JTElUQVJZIEhJU1RPUllcIl09YShcIk1IXCIpLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBUQVJHRVRJTkcgVU5JVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk04MCwxMDAgbDIwLC0xNSAwLDE1IDIwLC0xNSBNNzUsODAgQzc1LDEwMCA4NSwxMTUgMTA1LDExNVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTEwLHI6NX1dLGlbXCJHUi5JQy5BSVIgREVGRU5TRSBUSEVBVEVSIE1JU1NJTEUgREVGRU5TRSBVTklUXCJdPWEoXCJUTURcIiksaVtcIkdSLklDLkFJUiBERUZFTlNFIFNIT1JUIFJBTkdFXCJdPWEoXCJTUkRcIiksaVtcIkdSLklDLkFJUiBERUZFTlNFIFNUSU5HRVJcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsODAgMzAsMCBjIDUuNTQsMCAxMCw0LjQ2IDEwLDEwIGwgMCw1IGMgMCw1LjU0IC00LjQ2LDEwIC0xMCwxMCBsIC0zMCwwIGMgLTUuNTQsMCAtMTAsLTQuNDYgLTEwLC0xMCBsIDAsLTUgYyAwLC01LjU0IDQuNDYsLTEwIDEwLC0xMCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMSxmb250c2l6ZToyMCx0ZXh0OlwiU1wifV0saVtcIkdSLklDLkFJUiBERUZFTlNFIFZVTENBTlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSw4MCAzMCwwIGMgNS41NCwwIDEwLDQuNDYgMTAsMTAgbCAwLDUgYyAwLDUuNTQgLTQuNDYsMTAgLTEwLDEwIGwgLTMwLDAgYyAtNS41NCwwIC0xMCwtNC40NiAtMTAsLTEwIGwgMCwtNSBjIDAsLTUuNTQgNC40NiwtMTAgMTAsLTEwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAxLGZvbnRzaXplOjIwLHRleHQ6XCJWXCJ9XSxpW1wiR1IuSUMuQUlSIERFRkVOU0UgR1VOIFVOSVRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsODAgTDEwMCwxMjAgTTkyLDkwIGwwLDIwIE0xMDgsOTAgbDAsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuQUlSIFRSQUZGSUMgU0VSVklDRVNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDk1IDAsMjUgbSA3LjUsLTMyLjUgYyAwLDQuMSAtMy40LDcuNSAtNy41LDcuNSAtNC4xLDAgLTcuNSwtMy40IC03LjUsLTcuNSAwLC00LjEgMy40LC03LjUgNy41LC03LjUgNC4xLDAgNy41LDMuNCA3LjUsNy41IHogTSA2MCw4NSBsIDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHpcIn0saVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk04MCw3MCBsNDAsMCBNODAsODAgbDI1LC0yNSBNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfV0saVtcIkdSLklDLkFMTElFRCBDT01NQU5EIEVVUk9QRSBSQVBJRCBSRUFDVElPTiBDT1JQUyAoQVJSQylcIl09YShcIkFSUkNcIiksaVtcIkdSLklDLkFMTElFRCBDT01NQU5EIE9QRVJBVElPTlNcIl09YShcIkFDT1wiKSxpW1wiR1IuSUMuQU1NVU5JVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCwxMTcgMCwtMjUgYyAwLC0xNSAyMCwtMTUgMjAsMCBsIDAsMjUgbSAtMjUsMCAzMCwwXCIsZmlsbDohMX0saVtcIkdSLklDLkFSTU9VUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTTEyNSw4MCBDMTUwLDgwIDE1MCwxMjAgMTI1LDEyMCBMNzUsMTIwIEM1MCwxMjAgNTAsODAgNzUsODAgWlwiLGZpbGw6ITF9LGlbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDgwIGMgMjUsMCAyNSwzMCAwLDMwIGwgLTQwLDAgQyA1NSwxMTAgNTUsODAgODAsODAgWlwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzAsY3k6MTE1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTMwLGN5OjExNSxyOjUsZmlsbDohMX1dLGlbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTYwLDg1IGw0MCwxNSA0MCwtMTUgMCwzMCAtNDAsLTE1IC00MCwxNSB6XCJ9LGlbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lORyAyNTI1Q1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxMDAgTDEwMCwxNDBcIn0saVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTAwIEwxMzAsODggYzE1LDAgMTUsMjQgMCwyNCBMMTAwLDEwMCA3MCwxMTIgYy0xNSwwIC0xNSwtMjQgMCwtMjQgWlwifSxpW1wiR1IuSUMuQ09NQkFUQU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4Ni45LDExMCBjIC0zLjYsMiAtNy4yLDMuOSAtMTAuOCw1LjkgMi4xLDIuOSA2LjcsMy45IDEwLDIuMSAyLjYsLTAuOSA0LjcsLTMuOCAzLjEsLTYuMSAtMC44LC0wLjYgLTEuNSwtMS4zIC0yLjMsLTEuOSB6IG0gMjYuMywwLjEgYyAzLjYsMiA3LjIsMy45IDEwLjgsNS45IC0yLjEsMi45IC02LjcsMy45IC0xMCwyLjEgLTIuNiwtMC45IC00LjcsLTMuOCAtMy4xLC02LjEgMC44LC0wLjYgMS41LC0xLjMgMi4zLC0xLjkgelwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMi45LDExMCBjIC01LjYsLTQgLTExLjMsLTcuOSAtMTYuMSwtMTIuNSAtNC4yLC00LjUgLTcsLTkuOCAtOS4yLC0xNS4xIC0wLjgsNC40IC0wLjksOS4zIDIuNCwxMy4yIDMuNiw0LjUgOC42LDguMSAxMy41LDExLjggMi4zLDEuNyA0LjcsMy4zIDcuMSw0LjggMC44LC0wLjcgMS41LC0xLjUgMi4zLC0yLjIgbSAtMjUuNywwIGMgNS42LC00IDExLjMsLTcuOSAxNi4xLC0xMi41IDQuMiwtNC41IDcsLTkuOCA5LjIsLTE1LjEgMC44LDQuNCAwLjksOS4zIC0yLjQsMTMuMiAtMy42LDQuNSAtOC42LDguMSAtMTMuNSwxMS44IC0yLjMsMS43IC00LjcsMy4zIC03LjEsNC44IC0wLjgsLTAuNyAtMS41LC0xLjUgLTIuMywtMi4yXCIsZmlsbDpNLHN0cm9rZXdpZHRoOjJ9XSxpW1wiR1IuSUMuQVZJQVRJT04gQ09NUE9TSVRFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMDAgMTUuNyw3LjkgYyAxMS44LDAgMTEuOCwtMTUuNyAwLC0xNS43IHogbSAwLDAgLTE1LjcsLTcuOSBjIC0xMS44LDAgLTExLjgsMTUuNyAwLDE1LjcgeiBtIC0xMCwtMjAgMTAsMjAgLTEwLDIwIDIwLDAgLTEwLC0yMCAxMCwtMjAgelwifSxpW1wiR1IuSUMuQVZJQVRJT04gVEFDVElDQUwgQUlSIENPTlRST0wgUEFSVFlcIl09YShcIlRBQ1BcIiksaVtcIkdSLklDLkFWSUFUSU9OIEZPUldBUkQgQUlSIENPTlRST0xMRVJcIl09YShcIkZBQ1wiKSxpW1wiR1IuSUMuU1BFQ0lBTCBUUk9PUFNcIl09YShcIlNUXCIpLGlbXCJHUi5JQy5SQU5HRVJcIl09YShcIlJHUlwiKSxpW1wiR1IuSUMuQkFORFwiXT1hKFwiQkFORFwiKSxpW1wiR1IuSUMuQVJNWSBNVVNJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OS42LDExMC41IGMgLTQuOCwtMS40IC0xMC45LDIuMiAtMTAuNCw3LjcgMSwyLjUgNi4yLDIuNCA5LjYsLTAuMiAxLjksLTEuNSAyLjcsLTMuOCAyLjMsLTYuOSBsIC0wLjEsLTIxLjMgYyAxMi43LDUuOCA3LjYsMTQuOCA1LjYsMjAuNyA0LjcsLTQuOSA1LjgsLTEzLjIgMS41LC0xNy45IC00LjQsLTQuNiAtNSwtNyAtOC40LC0xMyB6XCIsc3Ryb2tlOiExfSxpW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdPWEoXCJBVEZcIiksaVtcIkdSLklDLkNCUk5cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyMCBjIDAsLTIwIDEwLC0zMiA1MCwtMzUgbSAtMTAsMzUgQyAxMjAsMTAwIDExMCw4OCA3MCw4NVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6OTAscjo2fSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeTo5MCxyOjZ9XSxpW1wiR1IuQ0hFTUlDQUwsIEJJT0xPR0lDQUwsIFJBRElPTE9HSUNBTCwgTlVDTEVBUiwgQU5EIEhJR0gtWUlFTEQgRVhQTE9TSVZFU1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsODAgMjAsMCAxMCwyMCAtMTAsMjAgLTIwLDAgLTEwLC0yMCB6XCIsZmlsbDpHfSxhKFwiRVwiKV0saVtcIkdSLklDLlNQQUNFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTEuMjUsMTYuNSAtNC4yLC0zLjMgMi41LDQuOSAtNS41LDEuNyAtMC40LC0wIDAuMiwwIC0wLjIsMCAwLjQsLTAgNS40LDIuMyAtMS44LDQuNiAzLjYsLTMuNSAxLjMsMTYuNSAxLjMsLTE2LjUgNC4yLDMuMyAtMi41LC00LjkgNS41LC0xLjcgMC40LDAgLTAuMiwtMCAwLjIsMCAtMC40LDAgLTUuMywtMS43IDIuNSwtNC42IC00LDMuMiB6XCIsc3Ryb2tlOiExfV0saVtcIkdSLklDLkNJVklMIEFGRkFJUlNcIl09YShcIkNBXCIpLGlbXCJHUi5JQy5DSVZJTC1NSUxJVEFSWS1DT09QRVJBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2MCw4MCA4MCwwIDAsMjAgYyAwLDI1IC04MCwyNSAtODAsMCB6XCIsZmlsbDohMX0saVtcIkdSLkkuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxpW1wiR1IuSS5DSVZJTElBTlwiXS5maWxsPVJ8fE4/RzohQyYmRyxpW1wiR1IuSS5DSVZJTElBTlwiXS5zdHJva2U9byxpW1wiR1IuSS5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLGlbXCJHUi5JQy5DT01NQU5EIEFORCBDT05UUk9MXCJdPWEoXCJDMlwiKSxpW1wiR1IuSUMuQ09NQkFUXCJdPWEoXCJDQlRcIiksaVtcIkdSLklDLkNPTUJBVCBTRVJWSUNFIFNVUFBPUlRcIl09YShcIkNTU1wiKSxpW1wiR1IuSUMuQ09NQkFUIFNVUFBPUlRcIl09YShcIkNTXCIpLGlbXCJHUi5JQy5DT01CQVQgU1VQUE9SVCAoTUFOT0VVVlJFIEVOSEFOQ0VNRU5UKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw4MCAwLDI1IDE1LDE1IDE1LC0xNSAwLC0yNSB6XCJ9LGlbXCJHUi5JQy5DT01CSU5FRCBBUk1TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDcwLDgwIDYwLDQwIG0gMCwtNDAgLTYwLDQwIG0gNTUsLTQwIGMgMjUsMCAyNSw0MCAwLDQwIGwgLTUwLDAgQyA1MCwxMjAgNTAsODAgNzUsODAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5DT1VOVEVSLUlOVEVMTElHRU5DRVwiXT1hKFwiQ0lcIiksaVtcIkdSLklDLkNSSU1JTkFMIElOVkVTVElHQVRJT04gRElWSVNJT05cIl09YShcIkNJRFwiKSxpW1wiR1IuSUMuRElWSU5HXCJdPVtdLGlbXCJHUi5JQy5ET0dcIl09YShcIkRPR1wiKSxpW1wiR1IuSUMuRFJJTExJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsODAgNSw0MCAyMCwwIDUsLTQwIHpcIn0saVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdPWEoXCJERUFcIiksaVtcIkdSLklDLkVMRUNUUk9OSUMgUkFOR0lOR1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEyMCwxMzAgYy00MCwyMCAtODAsLTQ1IC00MCwtNzAgeiBNMTAwLDk1IEwxNDAsNzVcIixmaWxsOiEhUiYmR30saVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXT1hKFwiRVdcIiksaVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw2MCAwLDIyLjcgLTE5LjcsLTExLjMgLTEwLDE3LjMgTCA4MCwxMDAgbCAtMTkuNywxMS4zIDEwLDE3LjMgTCA5MCwxMTcuMyA5MCwxNDAgbCAyMCwwIDAsLTIyLjcgMTkuNywxMS4zIDEwLC0xNy4zIEwgMTIwLDEwMCBsIDE5LjcsLTExLjMgLTEwLC0xNy4zIEwgMTEwLDgyLjcgMTEwLDYwIDkwLDYwIHpcIn0saVtcIkdSLklDLkVOR0lORUVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk02MCwxMjAgTDYwLDgwIDE0MCw4MCAxNDAsMTIwIE0xMDAsODAgTDEwMCwxMTBcIn0saVtcIkdSLklDLkVOR0lORUVSIE1FQ0hBTklaRURcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsOTAgMCwxNSBtIC0yNSw1IDAsLTIwIDUwLDAgMCwyMCBtIDAsLTMwIGMgMjUsMCAyNSw0MCAwLDQwIGwgLTUwLDAgQyA1MCwxMjAgNTAsODAgNzUsODAgWlwifSxpW1wiR1IuSUMuRU5HSU5FRVIgVVRJTElUWSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDEwMCAwLDEwIG0gLTE1LDUgMCwtMTUgMzAsMCAwLDE1IE0gNzAsODAgYyAwLDE1IDYwLDE1IDYwLDAgbCAwLDQwIC02MCwwIHpcIn0saVtcIkdSLklDLkVOVklST05NRU5UQUwgUFJPVEVDVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTEwLDE1IDUsMCAtMTAsMTAgNSwwIC0xMCwxMCAxNSwwIDAsNSAxMCwwIDAsLTUgMTUsMCAtMTAsLTEwIDUsMCAtMTAsLTEwIDUsMCB6XCIsZmlsbDohMX0saVtcIkdSLklDLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXT1hKFwiRU9EXCIpLGlbXCJHUi5JQy5GRURFUkFMIEJVUkVBVSBPRiBJTlZFU1RJR0FUSU9OIChGQkkpXCJdPWEoXCJGQklcIiksaVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXT17dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX0saVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWSBPQlNFUlZFUlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTA4LHI6NX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTIwIDMwLC0yMCBtIC0zMCwyMCAyMCwtNDAgMjAsNDAgelwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRklFTEQgQ0FNUCBDT05TVFJVQ1RJT05cIl09W2lbXCJHUi5JQy5FTkdJTkVFUlwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3Nyxmb250c2l6ZToyNSx0ZXh0OlwiQ0FNUFwifV0saVtcIkdSLklDLkZJTkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsOTUgMTAsLTEwIDIwLDAgMTAsMTAgbSAtNDAsMCAwLDIwIDQwLDAgMCwtMjAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDkwIC01LDUgLTEwLC0xMCA1LC01IC0yMCwwIDUsNSAtMTAsMTAgLTUsLTUgMCwyMCA1LC01IDEwLDEwIC01LDUgMjAsMCAtNSwtNSAxMCwtMTAgNSw1IHpcIn0saVtcIkdSLklDLkZJWEVEIFdJTkcgTUlTT1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsc3Ryb2tlOm8sZDpcIk03MCw4NSBsNDAsMCAxMCwtMTAgMCw1MCAtMTAsLTEwIC00MCwwIHogTTEyMCw4NSBsMTAsMCBNMTIwLDk1IGwxMCwwIE0xMjAsMTA1IGwxMCwwIE0xMjAsMTE1IGwxMCwwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJNIDc4LjggNjEuNSBDIDY4LjEgNjEuNSA2OC4xIDc4LjUgNzguOCA3OC41IEwgMTAwIDcwIEwgNzguOCA2MS41IHogTSAxMDAgNzAgTCAxMjEuMyA3OC41IEMgMTMxLjkgNzguNSAxMzEuOSA2MS41IDEyMS4zIDYxLjUgTCAxMDAgNzAgelwifV0saVtcIkdSLklDLkdFT1NQQVRJQUwgU1VQUE9SVFwiXT1hKFwiR0VPXCIpLGlbXCJHUi5JQy5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXT1hKFwiR09cIiksaVtcIkdSLklDLklORk9STUFUSU9OIE9QRVJBVElPTlNcIl09YShSJiYhTj9cIklXXCI6XCJJT1wiKSxpW1wiR1IuSUMuSU5URVJOQVRJT05BTCBTRUNVUklUWSBBU1NJU1RBTkNFIEZPUkNFIChJU0FGKVwiXT1hKFwiSVNBRlwiKSxpW1wiR1IuSUMuSU5URVJST0dBVElPTlwiXT1hKFwiSVBXXCIpLGlbXCJHUi5JQy5KT0lOVCBGSVJFIFNVUFBPUlRcIl09YShcIkpGU1wiKSxpW1wiR1IuSUMuSk9JTlQgSU5GT1JNQVRJT04gQlVSRUFVXCJdPWEoXCJKSUJcIiksaVtcIkdSLklDLkpPSU5UIElOVEVMTElHRU5DRSBDRU5UUkVcIl09YShcIkpJQ1wiKSxpW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXT1hKFwiSkFHXCIpLGlbXCJHUi5JQy5MQUJPVVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsODUgMjAsMCBtIC0xMCwwIDAsMjUgLTEwLDAgMTAsMTAgMTAsLTEwIC0xMCwwXCIsZmlsbDohMX0saVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4MCAxMCwxMCAwLDMwIG0gMCwtMzAgLTEwLDAgbSAxMCwwIC0xMCwxMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDExOCBDIDc2LDEwOSA4NSw5NSA4Miw4MiBjIDYsNyAxMiw3IDE4LDAgNiw3IDEyLDcgMTgsMCAtMywxMyA2LDI3IC0xOCwzNiB6XCIsZmlsbDohMX0saVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6Uj9HOiFDJiZHLGQ6XCJtIDc1LDEwMCAwLC0zNSA1MCwwIDAsMzUgMjAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMDAgLTE1LDM1IC0xMCwwIDE1LC0zNSB6XCJ9XSxpW1wiR1IuSUMuTElBSVNPTlwiXT1hKFwiTE9cIiksaVtcIkdSLklDLk1BSU5URU5BTkNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzAsOTAgYzEwLDAgMTAsMjAgMCwyMCBtMTAsLTEwIGw0MCwwIG0xMCwtMTAgYy0xMCwwIC0xMCwyMCAwLDIwXCIsZmlsbDohMX0saVtcIkdSLklDLk1BVEVSSUVMXCJdPWEoXCJNQVRcIiksaVtcIkdSLklDLk1FRElDQUwgRVZBQ1VBVElPTiBIRUxJQ09QVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsODUgbDQwLDE1IDQwLC0xNSAwLDMwIC00MCwtMTUgLTQwLDE1IHogTTk1LjUsODAgbDksMCAwLC05IDksMCAwLC05IC05LDAgMCwtOSAtOSwwIDAsOSAtOSwwIDAsOSA5LDAgWlwifSxpW1wiR1IuSUMuTUVTU0VOR0VSXCJdPWEoXCJNXCIpLGlbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXT1hKFwiTUVUXCIpLGlbXCJHUi5JQy5NSUxJVEFSWSBJTkZPUk1BVElPTiBTVVBQT1JUIE9QRVJBVElPTlMgKE1JU08pXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzAsODUgbDQwLDAgMTAsLTEwIDAsNTAgLTEwLC0xMCAtNDAsMCB6IE0xMjAsODUgbDEwLDAgTTEyMCw5NSBsMTAsMCBNMTIwLDEwNSBsMTAsMCBNMTIwLDExNSBsMTAsMFwifSxpW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdPWEoXCJNSVwiKSxpW1wiR1IuSUMuTUlMSVRBUlkgUE9MSUNFXCJdPWEoXCJNUFwiKSxpW1wiR1IuSUMuTUlORVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMTAwIGMgMCw1LjUgLTksMTAgLTIwLDEwIC0xMSwwIC0yMCwtNC41IC0yMCwtMTAgMCwtNS41IDksLTEwIDIwLC0xMCAxMSwwIDIwLDQuNSAyMCwxMCB6IG0gLTUsLTIwIC0zMCw0MCBtIDAsLTQwIDMwLDQwIG0gLTE1LC00MCAwLDQwXCJ9LGlbXCJHUi5JQy5NSU5FIENMRUFSSU5HXCJdPVtpW1wiR1IuSUMuTUlORVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3Nyxmb250c2l6ZToyNSx0ZXh0OlwiQ0xSXCJ9XSxpW1wiR1IuSUMuTUlORSBMQVVOQ0hJTkdcIl09W2lbXCJHUi5JQy5NSU5FXCJdLHt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyNSAwLDEwIDQwLDAgMCwtMTAgelwifV0saVtcIkdSLklDLk1JTkUgTEFZSU5HXCJdPVtpW1wiR1IuSUMuTUlORVwiXSx7dHlwZTpcInBhdGhcIixkOlwibSA4MCw2NSAwLDEwIDQwLDAgMCwtMTAgelwifV0saVtcIkdSLklDLk1JU1NJTEVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk05MCwxMjAgTDkwLDkwIEM5MCw4MCAxMTAsODAgMTEwLDkwIEwxMTAsMTIwIE0xMDAsMTIwIEwxMDAsODBcIixmaWxsOiExfSxpW1wiR1IuSUMuTUlTU0lMRS5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixkOlwiTTkwLDkwIEwxMTAsOTBcIn0saVtcIkdSLklDLk1JU1NJTEUuTUVESVVNXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTAsOTAgTDExMCw5MCBNOTAsOTcgTDExMCw5N1wifSxpW1wiR1IuSUMuTUlTU0lMRS5IRUFWWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTkwLDkwIEwxMTAsOTAgTTkwLDk3IEwxMTAsOTcgTTkwLDEwNCBMMTEwLDEwNFwifSxpW1wiR1IuSUMuTU9SQUxFLCBXRUxGQVJFLCBBTkQgUkVDUkVBVElPTlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1XUlwifSxpW1wiR1IuSUMuTU9SVEFSXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDExMSBsMCwtMzAgTTkwLDkwIGwxMCwtMTAgMTAsMTBcIixmaWxsOiExfV0saVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsOTUgMjAsMCBtIC0xMCwtMTAgMCwzMCBtIC0xNSwtMzUgMzAsMCAwLDQwIC0zMCwwIHpcIixmaWxsOiExfSxpW1wiR1IuSUMuTVVMVElOQVRJT05BTCAoTU4pXCJdPWEoXCJNTlwiKSxpW1wiR1IuSUMuTkFWQUxcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw4NSBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgeiBtIC0yMCw1IDMwLDAgbSAtMTUsMCAwLDMwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0gODIuMyAxMDIuNiBDIDgyLjMgMTEzLjkgODQuMiAxMTUuOSA4NC4yIDExNS45IEwgODYuNSAxMTQuMSBDIDkwLjIgMTE3LjggOTQuOCAxMjAuOCA5OS45IDEyMC45IEwgMTAwLjUgMTIwLjkgTCAxMDEgMTIwLjkgQyAxMDYuMiAxMjAuOCAxMTAuOCAxMTcuOCAxMTQuNCAxMTQuMSBMIDExNi43IDExNS45IEMgMTE2LjcgMTE1LjkgMTE4LjYgMTEzLjkgMTE4LjcgMTAyLjYgQyAxMTMuOSAxMDYuOCAxMDguOSAxMDkgMTA4LjkgMTA5IEwgMTEwLjkgMTEwLjcgQyAxMTAuOSAxMTAuNyAxMDYuOCAxMTUuMiAxMDAuNSAxMTUuMiBMIDEwMC41IDExNS4yIEMgMTAwLjUgMTE1LjIgMTAwLjQgMTE1LjIgMTAwLjQgMTE1LjIgQyA5NC4yIDExNS4yIDkwIDExMC43IDkwIDExMC43IEwgOTIgMTA5IEMgOTIgMTA5IDg3IDEwNi44IDgyLjMgMTAyLjYgelwiLHN0cm9rZTohMX1dLGlbXCJHUi5JQy5PQlNFUlZFUi9PQlNFUlZBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsODAgLTI1LDQwIDUwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5PUkROQU5DRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA5MCw5NyA4Myw4MyBtIDI3LDE0IDcsLTE0IE0gOTUsOTUgOTAsODEgbSAxNSwxNCA1LC0xNCBtIDEwLDI2LjUgYyAwLDYuOSAtOSwxMi41IC0yMCwxMi41IC0xMSwwIC0yMCwtNS42IC0yMCwtMTIuNSAwLC02LjkgOSwtMTIuNSAyMCwtMTIuNSAxMSwwIDIwLDUuNiAyMCwxMi41IHpcIixmaWxsOiExfSxpW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdPWEoXCJQU1wiKSxpW1wiR1IuSUMuUEVUUk9MRVVNIE9JTCBMVUJSSUNBTlRTXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTkgMCwtMjQgbSAwLDAgQyA5OSw5NSA4NSw4MSA4NSw4MSBsIDMwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5QSVBFTElORVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTEwIDE1LDAgbSAtMTUsLTE1IDE1LDAgbSAtNDUsMTUgLTE1LDAgTSA4NSw5NSA3MCw5NSBtIDMwLC0xNSAwLDEwIC0xNSwwIDAsMjUgMzAsMCAwLC0yNSAtMTUsMCBtIC0xMCwtMTAgMjAsMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5QT1NUQUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsODAgMzAsMCBjIC0xLjQsMTUuNSAwLDI1IDEwLDM1IC0yMCwwIC00MCwtMjAgLTQwLC0zNSB6XCIsZmlsbDohMX0saVtcIkdSLklDLlBVQkxJQyBBRkZBSVJTXCJdPWEoXCJQQVwiKSxpW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdPWEoXCJCUEFEXCIpLGlbXCJHUi5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsc3Ryb2tlOm8sZDpcIk03MCw4NSBsNDAsMCAxMCwtMTAgMCw1MCAtMTAsLTEwIC00MCwwIHogTTEyMCw4NSBsMTAsMCBNMTIwLDk1IGwxMCwwIE0xMjAsMTA1IGwxMCwwIE0xMjAsMTE1IGwxMCwwXCJ9LGlbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTE1LDk1IGMgMCwxNSAxNSwxNSAxNSwwIDAsLTE1IC0xNSwtMTUgLTE1LDAgeiBtIDAsMCAtNDUsMCAwLDEwIDEwLDAgMCwtMTBcIn0saVtcIkdSLklDLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzIsOTUgbDMwLC0yNSAwLDI1IDMwLC0yNSBNNzAsNzAgYzAsMzUgMTUsNTAgNTAsNTBcIixmaWxsOiExfSxpW1wiR1IuSUMuUkFESU9cIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC02MCBNNzAsNzAgbDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwXCJ9XSxpW1wiR1IuSUMuUkFESU8gUkVMQVlcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwtMTUsLTQwIDE1LDAgMCwtMjAgTTcwLDYwIGw2MCwwXCJ9XSxpW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMzUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxNDAgbDAsLTgwICBNNzAsNjAgbDYwLDAgTTgwLDcwIGw0MCwwXCJ9XSxpW1wiR1IuSUMuUkFJTEhFQURcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsODAgbDAsNDAgTTgxLDkwLjUgbDM4LDE5IE04MSwxMDkuNSBsMzgsLTE5XCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjIwLGZpbGw6ITF9LHMuX3RyYW5zbGF0ZSgwLC01MCxbe3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0pXSxpW1wiR1IuSUMuUkVMSUdJT1VTIFNVUFBPUlRcIl09YShcIlJFTFwiKSxpW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdPWEoXCJSSFVcIiksaVtcIkdSLklDLlNFQS1BSVItTEFORFwiXT1hKFwiU0VBTFwiKSxpW1wiR1IuSUMuU1VQUE9SVFwiXT1hKFwiU1BUXCIpLGlbXCJHUi5JQy5BUk1ZIEZJRUxEIFNVUFBPUlRcIl09YShcIkFGU1wiKSxpW1wiR1IuSUMuQ09OVFJBQ1RJTkcgU0VSVklDRVNcIl09YShcIktTXCIpLGlbXCJHUi5JQy5TRUFQT1JUIE9GIERFQkFSS0FUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfSxzLl90cmFuc2xhdGUoMCwtMzUscy5fc2NhbGUoLjYsaVtcIkdSLklDLk5BVkFMXCJdKSldLGlbXCJHUi5JQy5TRUNVUklUWVwiXT1hKFwiU0VDXCIpLGlbXCJHUi5JQy5TRUNVUklUWSBQT0xJQ0UgKEFJUilcIl09W2EoXCJTUFwiKSx7dHlwZTpcInBhdGhcIixkOlwiTSA3OC44IDEyMS41IEMgNjguMSAxMjEuNSA2OC4xIDEzOC41IDc4LjggMTM4LjUgTCAxMDAgMTMwIEwgNzguOCAxMjEuNSB6IE0gMTAwIDEzMCBMIDEyMS4zIDEzOC41IEMgMTMxLjkgMTM4LjUgMTMxLjkgMTIxLjUgMTIxLjMgMTIxLjUgTCAxMDAgMTMwIHpcIn1dLGlbXCJHUi5JQy5TRU5TT1JcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDgwIGMgMCw3LjUgMTIuNSwyMCAyMCwyMCAtNy41LDAgLTIwLDEyLjUgLTIwLDIwIDAsLTcuNSAtMTIuNSwtMjAgLTIwLC0yMCA3LjUsMCAyMCwtMTIuNSAyMCwtMjAgelwifSxpW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdPWEoXCJTUFwiKSxpW1wiR1IuSUMuU05JUEVSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAgODUgTCA5MCA4NSBMIDYwIDg1IHogTSAxMTAgODUgTCAxNDAgODUgTCAxMTAgODUgeiBNIDEwMCA5MCBMIDEwMCAxMTUgTCAxMDAgOTAgelwifSxpW1wiR1IuSUMuUEFSQUNIVVRFIFJJR0dFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyMCwxMDAgLTIwLDIwIC0yMCwtMjAgbSAwLDAgYyAwLC0yNSA0MCwtMjUgNDAsMCBsIC00MCwwXCJ9LGlbXCJHUi5JQy5TUEVDSUFMIEZPUkNFU1wiXT1hKFwiU0ZcIiksaVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl09YShcIlNPRlwiKSxpW1wiR1IuSUMuU1VSVkVJTExBTkNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4MCAtMjUsNDAgNTAsMCB6XCJ9LGlbXCJHUi5JQy5TVVJWRVlcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNODUsMTIwIGwxNSwtMTUgMTUsMTUgXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTA1IGwwLC0yNSAyMCwxMi41IHpcIixmaWxsOiEhUiYmR31dLGlbXCJHUi5JQy5TVVNUQUlOTUVOVFwiXT1hKFwiU1VTVFwiKSxpW1wiR1IuSUMuVEVMRVBIT05FIFNXSVRDSFwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTM1LGZvbnRzaXplOjMwLHRleHQ6XCJDXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTQwIGwwLC04MCAgTTcwLDYwIGw2MCwwXCJ9XSxpW1wiR1IuSUMuVE9QT0dSQVBISUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSwxMDUgYyAxMCw1IDIwLDUgMzAsMCBtIC0xNSwtMTUgMTUsMzAgbSAtMzAsMCAxNSwtMzAgMCwtMTBcIn0saVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDgwIGwwLDQwIE04MSw5MC41IGwzOCwxOSBNODEsMTA5LjUgbDM4LC0xOVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMCxmaWxsOiExfV0saVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXT1hKFwiVFNBXCIpLGlbXCJHUi5JQy5VTk1BTk5FRCBTWVNURU1TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0saVtcIkdSLklDLlNFQVJDSCBBTkQgUkVTQ1VFXCJdPWEoXCJTQVJcIiksaVtcIkdSLklDLkRJVkVSLCBDSVZJTElBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOkcsZDpcIk0gMTE0LjMsOTQgQyAxMTQuMywxMDIuMyAxMDcuOSwxMDkgMTAwLDEwOSBjIC03LjksMCAtMTQuMiwtNi43IC0xNC4yLC0xNSAwLC04LjMgNi40LC0xNSAxNC4yLC0xNSA3LjksMCAxNC4zLDYuNyAxNC4zLDE1IHogbSAwLDI3IDE0LjMsMTUgLTU3LDAgMTQuMywtMTUgTSAxMjUuNyw3OSBsIDE0LjMsMCAwLDMwIC0xNC4zLDAgbSAtNTEuMywwIC0xNC4zLDAgMCwtMzAgMTQuMywwIG0gNTQuMiwxNSBjIDAsMTYuNiAtMTIuOCwzMCAtMjguNSwzMCAtMTUuNywwIC0yOC41LC0xMy40IC0yOC41LC0zMCBDIDcxLjUsNzcuNCA4NC4zLDY0IDEwMCw2NCAxMTUuNyw2NCAxMjguNSw3Ny40IDEyOC41LDk0IHpcIn0saVtcIkdSLklDLlZJREVPIElNQUdFUllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsMTEwIC0yNiwwIG0gNywtMjAgMTksMCBtIC0xNSwtMTAgLTY1LDAgMCw0MCA1MCwwIHogbSAxNSw1IDAsMzBcIn0saVtcIkdSLklDLlVOSVRFRCBTVEFURVMgU0VDUkVUIFNFUlZJQ0UoVFJFQVMpIChVU1NTKVwiXT1hKFwiVVNTU1wiKSxpW1wiR1IuSUMuV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsOTAgNTAsMCBjIDEwLDAgMjAsMTAgMjAsMjAgbSAtNDAsLTMwIDIwLDAgbSAtMTAsMCAwLDEwXCIsZmlsbDohMX0saVtcIkdSLklDLldBVEVSIFBVUklGSUNBVElPTlwiXT1baVtcIkdSLklDLldBVEVSXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjkwLHk6MTEwLGZvbnRzaXplOjIwLHRleHQ6XCJQVVJFXCJ9XSxpW1wiR1IuSUMuRkYuQUlSIEFTU0FVTFQgV0lUSCBPUkdBTklDIExJRlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0zNSwxMjAgTCA5MCwxMjAgbDEwLDEwIDEwLC0xMCBMMTY1LDEyMFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNzUsMTIwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNTUsMTIwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDEyMCBMIDkwLDEyMCBsMTAsMTAgMTAsLTEwIEwxNTAsMTIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwibSA1NSwxMzUgYyAxMCwtMjAgODAsLTIwIDkwLDBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxNTAgQzI1LDExMCAxNzUsMTEwIDE3NSwxNTBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTUwIEM0NSwxMTAgMTU1LDExMCAxNTUsMTUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTcwLDE0MCBDNzAsMTE1IDEzMCwxMTUgMTMwLDE0MFwiLGZpbGw6ITF9fVtUXSxpW1wiR1IuSUMuRkYuQUlSIEFORCBOQVZBTCBHVU5GSVJFIExJQUlTT04gQ09NUEFOWVwiXT1bXSxpW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwibSAzMCw5NSBjIDEwLDAgMCwxNSAxMy41LDE1IDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDEzLjUsMCAzLjUsLTE1IDEzLjUsLTE1XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDI1LDkwIGMgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMTguOCwtMjAgMTguOCwwIDAsMjAgMTguOCwyMCAxOC44LDAgMCwtMjAgMjAsLTIwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwibSA0NSwxMTAgYyAxOC44LDAgMCwtMjAgMTgsLTIwIDE4LjgsMCAwLDIwIDE4LjgsMjAgMTguOCwwIDAsLTIwIDE4LjgsLTIwIDE4LjgsMCAwLDIwIDE4LjgsMjAgMTguOCwwIDAsLTIwIDE4LjgsLTIwIDE4LjgsMCAwLDIwIDE4LDIwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwibSAzMiw5NSBjIDEwLDAgMCwxNSAxMS41LDE1IDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDExLjUsMCAxLjUsLTE1IDExLjUsLTE1XCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5BTkFMWVNJU1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTIwIDAsLTY1IG0gMCw5MCAtMzAsLTI1IDYwLDAgelwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01NSwxMzUgTDEwMCwzMyAxNDUsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsMTUwIEwxMDAsNTIgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSwxNTAgTDEwMCw0NyAxNTUsMTUwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTYwLDEzMiBMMTAwLDMwIDE0MCwxMzJcIn19W1RdLGlbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTIyLjggNjYuOCBDIDExOS45IDY2LjggMTE3LjQgNjguNiAxMTcuNCA3MS42IEwgMTE3LjQgNzMuMSBMIDEyOC43IDczLjEgTCAxMjguNyA3Mi40IEMgMTI4LjcgNjguOCAxMjYuNSA2Ni44IDEyMi44IDY2LjggeiBNIDEwOC42IDc0LjggTCAxMDguNiA3NiBMIDExNy42IDc2IEwgMTE3LjUgNzcuNSBMIDExOCA4MC44IEMgMTE5LjEgODEuNSAxMTguOSA4Mi41IDEyMC44IDgzLjUgQyAxMjIuMSA4NC4xIDEyNCA4NCAxMjUuMiA4My40IEMgMTI3LjUgODIuNCAxMjkgNzkuMiAxMjguMyA3NiBMIDEzNy41IDc2IEwgMTM3LjUgNzQuOCBMIDEwOC42IDc0LjggeiBNIDk0LjggODIuMSBDIDkzLjMgODIuMSA5MiA4My41IDkyIDg1IEwgOTIgODUuMiBDIDkyIDg2LjYgOTYgOTEuMyA5NyA5Mi42IEMgOTguMiA5NC4zIDEwMC44IDk4LjggMTAzLjIgOTguOCBDIDEwNC41IDk4LjggMTExLjEgOTMuNyAxMTIuNiA5Mi44IEwgMTEyLjYgMTA2LjIgTCAxMjYuNCA4NS42IEMgMTIzIDg1LjYgMTE0LjkgODUuMiAxMTIuMiA4NS45IEMgMTEwLjIgODYuNCAxMDUgOTEuNiAxMDMuNiA5MS43IEMgMTAzLjQgOTEgMTAwLjYgODcuNSAxMDAgODYuNSBDIDk5LjIgODUuNCA5Ny4yIDgyLjEgOTUuNiA4Mi4xIEwgOTQuOCA4Mi4xIHogTSAxMzAuNCA4NS42IEMgMTI5LjYgODUuNiAxMTcuNSAxMDQuMSAxMTYuMyAxMDYuMiBMIDEyOC4xIDEwNi4yIEwgMTI4LjEgMTEwLjYgTCAxMTIuNSAxMTAuNiBMIDExMi41IDEzMy4yIEwgMTIwLjcgMTMzLjIgTCAxMjIgMTE3LjUgTCAxMjQuMyAxMTcuNSBMIDEyNS42IDEzMy4yIEwgMTMzLjUgMTMzLjIgTCAxMzMuNSA4Ny45IEMgMTMzLjUgODcuMiAxMzEuMiA4NS42IDEzMC40IDg1LjYgeiBNIDY2LjkgOTAuNyBDIDY2LjUgOTEuNCA2Mi41IDk2LjkgNjIuNSA5Ni45IEMgNjIuNSA5Ny44IDc2LjcgMTA3LjIgNzguNSAxMDguMyBDIDgxLjQgMTEwLjIgODMuOSAxMTIuMSA4Ni43IDExNCBDIDg4LjIgMTE1IDg5LjQgMTE1LjkgOTAuOCAxMTYuOCBDIDkyLjEgMTE3LjcgOTQuMSAxMTguNSA5NC4xIDEyMC40IEwgOTQuMSAxMzMuMiBMIDEwNS41IDEzMy4yIEwgMTA1LjUgMTIxLjcgQyAxMDUuNSAxMjAuNiAxMDcuMiAxMTkgMTA3LjIgMTE4LjggQyAxMDcuMiAxMTcuNiAxMDYuMSAxMTguNiAxMDUuNiAxMTYuOSBDIDEwNS4yIDExNS40IDEwNS40IDExNS42IDEwNC41IDExNC41IEMgMTAzLjUgMTEzLjEgMTAxLjkgMTEyIDk5LjggMTEyIEMgOTYuOCAxMTIgOTcuNiAxMTEuOCA5NS4zIDExMC4zIEMgOTMuOSAxMDkuMyA5Mi41IDEwOC40IDkxLjIgMTA3LjQgQyA4OC43IDEwNS41IDg1LjggMTAzLjUgODMuMiAxMDEuOCBDIDgwLjkgMTAwLjMgNjguMiA5MSA2Ni45IDkwLjcgeiBNIDY3LjkgOTIuNiBMIDcyLjcgOTUuNyBMIDcyLjggMTAzIEwgNjcuOSA5OS45IEwgNjcuOSA5Mi42IHogTSA3Ny44IDk5LjMgTCA4Mi42IDEwMi42IEwgODIuNiAxMTAgTCA3Ny44IDEwNi42IEwgNzcuOCA5OS4zIHogTSA4Ny40IDEwNi4yIEwgOTIuNSAxMDkuNSBMIDkyLjQgMTE2LjkgTCA4Ny40IDExMy41IEwgODcuNCAxMDYuMiB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTohMSxkOlwiTSAxMTcuNCA3My4xIEwgMTE3LjQgNzQuOCBMIDEyOC43IDc0LjggTCAxMjguNyA3My4xIEwgMTE3LjQgNzMuMSB6IE0gMTI2LjQgODUuNiBMIDExMi42IDEwNi4yIEwgMTEyLjYgMTEwLjYgTCAxMjguMSAxMTAuNiBMIDEyOC4xIDEwNi4yIEwgMTE2LjQgMTA2LjIgQyAxMTcuNSAxMDQuMSAxMjkuNiA4NS42IDEzMC40IDg1LjYgTCAxMjYuNCA4NS42IHogTSA2Ny45IDkyLjYgTCA2Ny45IDk5LjkgTCA3Mi44IDEwMyBMIDcyLjcgOTUuNyBMIDY3LjkgOTIuNiB6IE0gNzcuOCA5OS4zIEwgNzcuOCAxMDYuNiBMIDgyLjYgMTEwIEwgODIuNiAxMDIuNiBMIDc3LjggOTkuMyB6IE0gODcuNCAxMDYuMiBMIDg3LjQgMTEzLjUgTCA5Mi40IDExNi45IEwgOTIuNSAxMDkuNSBMIDg3LjQgMTA2LjIgeiBcIn1dLGlbXCJHUi5JQy5GRi5CUk9BRENBU1QgVFJBTlNNSVRURVIgQU5URU5OQVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDYwIDIwLDIwIDIwLC0yMCBtIC0yMCwwIDAsODBcIn0saVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xNjAsNzUgbC0xNSwyNSAxNSwyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTE3NSw1MCBsLTMwLDUwIDMwLDUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTE1NSw1MCBsLTIwLDUwIDIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTE1MCw4MCBsLTE1LDIwIDE1LDIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMTUuNSA2OS44IEMgMTE1LjggNzAuNCAxMTYuOSA3Mi45IDExNy41IDcyLjkgTCAxMjguMyA3Mi45IEwgMTI4LjMgNjkuOCBMIDExNS41IDY5LjggeiBNIDExNy4zIDc0LjcgQyAxMTYuOCA3NC43IDExNiA3NS43IDExNS44IDc2LjEgTCAxMTcuMiA3Ni4xIEwgMTE3LjIgNzYuOCBDIDExNy4yIDc5LjYgMTE5LjggODEuOCAxMjIuOCA4MS44IEMgMTI2LjUgODEuOCAxMjguMyA3OC42IDEyOC4zIDc0LjcgTCAxMTcuMyA3NC43IHogTSAxMTEuMyA4My42IEMgMTEwLjUgODMuNiA5OS40IDkxLjggOTcuOCA5Mi45IEMgOTUuNiA5NC40IDkzIDk2LjEgOTEgOTcuNyBDIDg5LjEgOTkuMiA4NS40IDEwMC41IDg1LjQgMTAzLjYgTCA4NS40IDEwNCBDIDg1LjQgMTA0LjcgODcuMSAxMDYuNyA4OC4yIDEwNi43IEwgODguOCAxMDYuNyBDIDkwLjIgMTA2LjcgMTA4IDkzLjQgMTExLjMgOTEuNyBMIDExMS4zIDEwNS4zIEwgMTI2IDgzLjYgTCAxMTEuMyA4My42IHogTSA3NS4zIDgzLjYgQyA3NC41IDgzLjYgNzMuNCA4NC40IDczLjQgODUgTCA3My40IDEwOC45IEMgNzMuNCAxMDkuOCA3My45IDExMC4yIDc0LjQgMTEwLjUgTCA3OC41IDExMC41IEwgNzguNSA4My42IEwgNzUuMyA4My42IHogTSA3OC41IDExMC41IEwgNzguNSAxMzUuMiBMIDEwNS42IDEzNS4yIEwgMTA1LjYgMTEwLjUgTCA3OC41IDExMC41IHogTSAxMzAuNSA4My42IEMgMTI5LjYgODMuNiAxMjMuOCA5Mi45IDEyMi45IDk0LjIgQyAxMjEuOSA5NS43IDExNS43IDEwNC41IDExNS41IDEwNS4zIEwgMTI3LjYgMTA1LjMgTCAxMjcuNiAxMTAuMyBMIDExMS41IDExMC4zIEwgMTExLjUgMTM0LjggTCAxMTkuNiAxMzQuOCBDIDEyMC42IDEzNC44IDEyMS4xIDEyNy45IDEyMS4zIDEyNi42IEMgMTIxLjcgMTIzLjkgMTIyLjQgMTIwLjQgMTIyLjYgMTE3LjggTCAxMjIuOSAxMTcuOCBMIDEyNS40IDEzNC44IEwgMTMzLjkgMTM0LjggTCAxMzMuOSA4Ni43IEMgMTMzLjkgODUuNiAxMzEuOSA4My42IDEzMC43IDgzLjYgTCAxMzAuNSA4My42XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTohMSxkOlwiTSAxMTcuNSA3Mi45IEwgMTE3LjMgNzQuNyBMIDEyOC4zIDc0LjcgTCAxMjguMyA3Mi45IEwgMTE3LjUgNzIuOSB6IE0gMTI2IDgzLjcgTCAxMTEuMyAxMDUuMyBMIDExMS41IDExMC4zIEwgMTI3LjcgMTEwLjMgTCAxMjcuNyAxMDUuMyBMIDExNS41IDEwNS4zIEMgMTE1LjcgMTA0LjUgMTIxLjkgOTUuNyAxMjIuOSA5NC4zIEMgMTIzLjggOTIuOSAxMjkuNiA4My43IDEzMC41IDgzLjcgTCAxMjYgODMuNyB6IFwifV0saVtcIkdSLklDLkZGLkRFUEFSVE1FTlQgT0YgSlVTVElDRSAoRE9KKVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTAwLjIgNjIuMyBDIDEwMC4xIDYzLjIgOTkgNjYuMyA5OC43IDY3LjQgQyA5Ny44IDY5LjkgOTkuNCA3MCA5OS40IDcyLjMgTCA5OS40IDczIEMgOTkuNCA3My43IDk4LjkgNzMuNSA5OC4zIDczLjggQyA5Ni42IDcyLjQgOTQuMiA3MSA5MS4zIDcxIEwgOTAgNzEgQyA4NC4yIDcxIDgwIDc1LjUgNzQuNiA3NS41IEwgNzMuOSA3NS41IEMgNzIuMyA3NS41IDcxLjUgNzQuMSA3MS4zIDc1LjggTCA3NC4zIDc3LjIgQyA3MS44IDgyLjQgNjkuOSA4OS43IDY3LjUgOTUuNSBDIDY2LjMgOTguNiA2NS4zIDEwMS42IDY0LjEgMTA0LjcgQyA2My41IDEwNi4zIDYzLjEgMTA3LjcgNjIuNSAxMDkuMyBDIDYyIDExMC41IDYxLjggMTEzLjEgNjAuMiAxMTMuMiBDIDYyLjQgMTE2LjQgNjggMTIwLjUgNzMuMyAxMjAuNSBMIDc2IDEyMC41IEMgODEuNiAxMjAuNSA4Ny4zIDExNi42IDg5LjUgMTEzLjIgTCA4OC4yIDExMy4yIEwgNzUuNCA3Ny4yIEwgNzQuNSA3Ny4yIEwgNzQuNSA3NyBMIDc1LjQgNzcuMiBMIDc4LjYgNzcuNyBMIDc5LjMgNzcuNyBMIDg5LjMgNzYuMiBMIDkwLjQgNzYuMyBDIDkzLjcgNzYuMyA5My44IDgwLjIgOTQuNyA4MC4yIEwgOTcuNyA4MC4yIEwgOTcuNyAxMjkuMiBMIDg2LjEgMTI5LjIgTCA4Ni4xIDEzMS41IEwgODEuNCAxMzEuNSBMIDgxLjQgMTM0LjEgTCA3Ny41IDEzNC4xIEwgNzcuNSAxMzguMiBMIDEyMy4zIDEzOC4yIEwgMTIzLjMgMTMzLjkgTCAxMTkuMyAxMzMuOSBMIDExOS4zIDEzMS42IEwgMTE0LjUgMTMxLjYgTCAxMTQuNSAxMjkuMiBMIDEwMi42IDEyOS4yIEwgMTAyLjYgODAuMiBMIDEwNiA4MC4yIEMgMTA3IDgwLjIgMTA2LjYgNzYuNCAxMTAuNyA3Ni40IEwgMTExLjMgNzYuNCBMIDEyMS4yIDc3LjcgTCAxMjIuMiA3Ny43IEwgMTI1LjQgNzcuMyBDIDEyNC4zIDc5LjcgMTIzLjEgODMuOCAxMjIuMSA4Ni40IEMgMTIwLjkgODkuNiAxMTkuOSA5Mi42IDExOC43IDk1LjggQyAxMTcuNSA5OC45IDExNi42IDEwMS45IDExNS40IDEwNSBDIDExNC45IDEwNi40IDExNC4yIDEwOC4xIDExMy43IDEwOS42IEMgMTEzLjQgMTEwLjQgMTEzLjEgMTExLjEgMTEyLjkgMTExLjkgQyAxMTIuNSAxMTMuMiAxMTIuOCAxMTMuMiAxMTEuMiAxMTMuMiBDIDExMy4zIDExNi40IDExOS4yIDEyMC41IDEyNC42IDEyMC41IEwgMTI3LjIgMTIwLjUgQyAxMzIuNiAxMjAuNSAxMzguOCAxMTYuNCAxNDAuOSAxMTMuMiBMIDEzOS44IDExMy4yIEwgMTI2LjQgNzcuMSBDIDEyNy40IDc2LjkgMTI5LjMgNzYuMiAxMjkuMyA3NS4zIEMgMTI5LjMgNzQuNSAxMjcuOCA3NS41IDEyNi43IDc1LjUgTCAxMjYuMyA3NS41IEMgMTIwLjggNzUuNSAxMTYuNiA3MSAxMTAuOSA3MSBMIDEwOS42IDcxIEMgMTA2LjcgNzEgMTA0LjIgNzIuNCAxMDIuNiA3My44IEMgMTAxLjggNzMuNCAxMDEuMyA3My42IDEwMS4zIDcyLjMgQyAxMDEuMyA3MS45IDEwMi40IDY4LjggMTAyLjUgNjguNSBMIDEwMC42IDYyLjMgTCAxMDAuMiA2Mi4zIHogTSAxMjYuMSA4MC44IEwgMTM3LjggMTEzLjIgTCAxMTQuMSAxMTMuMiBMIDEyNi4xIDgwLjggeiBNIDc0LjggODAuOCBMIDg2LjUgMTEzLjIgTCA2My4xIDExMy4xIEwgNzQuOCA4MC44IHpcIn0saVtcIkdSLklDLkZGLkRJUkVDVElPTiBGSU5ESU5HXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE0MCBsMCwtODAgTTgwLDgwIGwyMCwtMjAgMjAsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuRElWSVNJT04gQU5EIEJFTE9XIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk00MCw3NSBsMTUsMjUgLTE1LDI1XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgbDMwLDUwIC0zMCw1MFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw1MCBsMjAsNTAgLTIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDgwIGwxNSwyMCAtMTUsMjBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCA2NSBMIDExNS4yIDkxLjMgTCAxMzAuMyAxMTcuNSBDIDEzMy4zIDExMi40IDEzNSAxMDYuNCAxMzUgMTAwIEMgMTM1IDgwLjcgMTE5LjMgNjUgMTAwIDY1IHogTSAxMDAgNjUgQyA4MC43IDY1IDY1IDgwLjcgNjUgMTAwIEMgNjUgMTA2LjQgNjYuNyAxMTIuNCA2OS43IDExNy41IEwgODQuOCA5MS4zIEwgMTAwIDY1IHogTSA2OS43IDExNy41IEMgNzUuNyAxMjggODcgMTM1IDEwMCAxMzUgQyAxMTMgMTM1IDEyNC4zIDEyOCAxMzAuMyAxMTcuNSBMIDEwMCAxMTcuNSBMIDY5LjcgMTE3LjUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxzdHJva2U6ITEsZDpcIk0gNjkuNywxMTcuNSAxMDAsNjUgbCAzMC4zLDUyLjUgelwifV0saVtcIkdSLklDLkZGLkZJRUxEIEFSVElMTEVSWSBST0NLRVRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTUwIGwwLC05NyBNODUsMTMwIGwwLC01MCBNMTE1LDEzMCBsMCwtNTAgTTg1LDczIGwxNSwtMjAgMTUsMjBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuSEVBRFFVQVJURVJTIE9SIEhFQURRVUFSVEVSUyBFTEVNRU5UXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsODAgbDEzMCwwIFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDgwIGwxNTAsMCBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsODAgbDExMCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw4MCBsMTAwLDAgXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5IT1JTRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjksNzIuOCBjIDAsMCAtNi4zLDIgLTksMi42IC0zLjQsMC43IC00LjksMS44IC03LjcsMy4xIC00LjIsMS45IC02LjgsMy42IC0xMS4zLDQuMyAtMy4zLDAuNSAtNy43LDEuNyAtMTEsMSAtMy45LC0wLjkgLTYuMSwtMi45IC0xMC4xLC0yLjkgLTMuNywtMCAtNy40LC0wLjYgLTEwLjYsMS4zIC0yLjYsMS42IC00LjcsNC4yIC01LjgsNy4xIC0yLjMsNS40IC0wLjgsMTIuNSAtMS4yLDE4LjQgLTAuMiwzLjEgLTAuNCw5LjMgLTAuNiwxMC4yIDAsMCAxLjYsLTAgMy40LC0yLjUgMC45LC0xLjIgMS43LC0zLjQgMS45LC00LjkgMC41LC0zLjEgLTAuNywtNy41IC0wLjQsLTEwIDEuMSwtMC4zIDIuNCwyLjggMi42LDQuNyAwLjIsMiAtMSwzLjMgLTEuNCw1LjIgLTAuNSwzIDAuMyw1IDAuNiw4LjMgMC4xLDEuNiAwLjgsMy45IDAuNSw2IC0wLjIsMiAtMC4yLDQuMyAtMC4yLDQuMyBsIDYuOSwwIC0wLjQsLTMuOCBjIDAsMCAtMS44LC0yLjUgLTIuMSwtNC4zIC0wLjUsLTIuNyAtMC41LC01LjQgMC4yLC04IDAuNSwtMiAzLjEsLTQuMyA0LjEsLTYuMSAxLjgsLTMuMSAzLjEsLTcuMSAzLjEsLTcuMSAwLDAgNS4xLDMuNCA5LjEsNC4yIDMuOCwwLjggMTEuNiwxLjQgMTEuNiwxLjQgMCwwIC0wLjIsNy4zIDAuMSwxMi40IC0wLDAuMSAwLjMsMy45IDAuMywzLjEgLTEuNCwzLjIgLTAsOC4yIC0wLDguMiAwLDAgMi45LDAgNi4zLC0wIGwgLTAuMywtMy40IGMgMCwwIC0xLjUsLTMuNSAtMS41LC01LjMgMCwtMy4xIDAuMSwtNS45IDAuOSwtOC45IDAuNCwtMS4yIDAuNywtMi45IDEuMywtNCAxLjQsLTIuMiAzLjEsLTMuOCA0LjIsLTYuMSAxLjEsLTIuNiAyLjMsLTUuMyAzLjYsLTcuOSAxLjYsLTMuMyA3LjgsLTcuMyA3LjgsLTcuMyAwLDAgNSwyLjkgOC40LDQuOSAxLjIsMC43IDMsMC4xIDMuNywtMSAwLjcsLTEuMSAwLjgsLTIuMiAwLjMsLTMuMyAtMy4yLC02LjcgLTcuOCwtOS40IC03LjgsLTkuNCB6XCIsc3Ryb2tlOiExfSxpW1wiR1IuSUMuRkYuSU5GQU5UUllcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw2NUwxNTAsMTM1TTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgTDE3NSwxNTAgTTI1LDE1MCBMMTc1LDUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSw0NUwxNTUsMTU1TTQ1LDE1NUwxNTUsNDVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTYwLDcwTDE0MCwxMzBNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLklORkFOVFJZIERJU01PVU5URURcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw2NUwxNTAsMTM1TTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDQ1LDcwIDExMCw2MCBNIDQ1LDEzMCAxNTUsNzBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDQ1TDE1NSwxNTVNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsNzBMMTQwLDEzME02MCwxMzBMMTQwLDcwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuSU5URVJDRVBUXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDEyMCBsMCwtNjAgTTgwLDEyMCBsMjAsMjAgMjAsLTIwXCJ9LGlbXCJHUi5JQy5GRi5KQU1NSU5HXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjMsNjAgYzEwLDAgMCwxMCA3LDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDcsLTEwIE00MCw3NSBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMFwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDYwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgTTI1LDc1IGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsNjAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCAgTTQ1LDc1IGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTAgYzEwLDAgMCwtMTAgMTAsLTEwIGMxMCwwIDAsMTAgMTAsMTBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjcsNjAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMCwxMCBjMTAsMCAwLC0xMCAxMCwtMTAgYzEwLDAgMCwxMCAxMywxMCAgIE01Miw3NSBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDEwLC0xMCBjMTAsMCAwLDEwIDEwLDEwIGMxMCwwIDAsLTEwIDcsLTEwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5MQVcgRU5GT1JDRU1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTkuNiw1MSBjIC0yLjgsMCAtNSwyLjMgLTUsNS4zIDAsMi4xIDEuMiwzLjkgMi44LDQuNyBMIDg3LjgsNzguMyA2OS41LDc4LjQgYyAtMC4xLC0yLjggLTIuMywtNS4xIC01LC01LjEgLTIuOCwwIC01LDIuMyAtNSw1LjMgMCwyLjkgMi4yLDUuMyA1LDUuMyAwLjcsMCAxLjQsLTAuMiAyLC0wLjQgbCA5LjIsMTYuOCAtOS40LDE3LjIgYyAtMC42LC0wLjIgLTEuMiwtMC40IC0xLjgsLTAuNCAtMi44LDAgLTUsMi40IC01LDUuMyAwLDIuOSAyLjIsNS4zIDUsNS4zIDIuOCwwIDUsLTIuMyA1LC01LjMgMCwtMC4xIC0wLC0wLjIgLTAsLTAuMyBsIDE4LjMsMC4xIDkuNSwxNy4xIGMgLTEuNiwwLjkgLTIuNywyLjYgLTIuNyw0LjYgMCwyLjkgMi4zLDUuMyA1LDUuMyAyLjgsMCA1LC0yLjMgNSwtNS4zIDAsLTEuOSAtMC45LC0zLjUgLTIuMywtNC40IGwgOS42LC0xNy4zIDE4LjcsLTAuMSBjIC0wLDAuMSAtMCwwLjIgLTAsMC4zIDAsMi45IDIuMyw1LjMgNSw1LjMgMi44LDAgNSwtMi4zIDUsLTUuMyAwLC0yLjkgLTIuMiwtNS4zIC01LC01LjMgLTAuOCwwIC0xLjUsMC4yIC0yLjEsMC41IGwgLTkuNSwtMTcuNCA5LjUsLTE3LjQgYyAwLjYsMC4zIDEuNCwwLjUgMi4xLDAuNSAyLjgsMCA1LC0yLjQgNSwtNS4zIDAsLTIuOSAtMi4yLC01LjMgLTUsLTUuMyAtMi44LDAgLTUsMi4zIC01LDUuMyAwLDAuMSAwLDAuMiAwLDAuMyBMIDExMS44LDc4LjMgMTAyLjEsNjAuOCBjIDEuNSwtMC45IDIuNSwtMi42IDIuNSwtNC41IDAsLTIuOSAtMi4yLC01LjMgLTUsLTUuMyB6XCJ9LGlbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01NSw2NUw1NSwxMzVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTUsNTBMNTUsMTUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk01NSw0NUw1NSwxNTVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTU1LDcyTDU1LDEyOFwifX1bVF0saVtcIkdSLklDLkZGLk1FRElDQUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrUy5iYm94LnkxK1wiTDEwMCxcIitTLmJib3gueTIrXCJNXCIrUy5iYm94LngxK1wiLDEwMExcIitTLmJib3gueDIrXCIsMTAwXCJ9LGlbXCJHUi5JQy5GRi5NRURJQ0FMIFRIRUFURVJcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcwIGwwLC0xNDAgTTQwLDc1IGwxNSwyNSAtMTUsMjUgTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE01NSwxMDAgbDkwLDBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTUwIGwwLC0xMDAgTTI1LDUwIGwzMCw1MCAtMzAsNTAgTTE3NSw1MCBsLTMwLDUwIDMwLDUwIE01NSwxMDAgbDkwLDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1NSBsMCwtMTEwICBNNDUsNTAgbDIwLDUwIC0yMCw1MCBNMTU1LDUwIGwtMjAsNTAgMjAsNTAgTTY1LDEwMCBsNzAsMFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcyIGwwLC0xNDQgTTUwLDgwIGwxNSwyMCAtMTUsMjAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwIE02NSwxMDAgbDcwLDBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLk1FRElDQUwgQ09SUFNcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsMTcwIGwwLC0xNDAgTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE0zMCwxMDAgbDExNSwwXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1MCBsMCwtMTAwICBNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTI1LDEwMCBsMTIwLDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTAwLDE1NSBsMCwtMTEwIE0xNTUsNTAgbC0yMCw1MCAyMCw1MCBNNDUsMTAwIGw5MCwwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxNzIgbDAsLTE0NCAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwIE0yOCwxMDAgbDExMCwwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXT1baVtcIkdSLklDLkZGLk1FRElDQUxcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTcwLDkwIGwwLDIwICBNMTMwLDkwIGwwLDIwXCJ9XSxpW1wiR1IuSUMuRkYuTUlMSVRBUlkgUE9MSUNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDEwMCwxNDAgQyA1My43NDY1LDEyMi42NTQgNzEuMDkxNiw5NS42NzM3IDY1LjMwOTksNzAuNjE5NyBjIDExLjU2MzQsMTMuNDkwNiAyMy4xMjY3LDEzLjQ5MDYgMzQuNjkwMSwwIDExLjU2NCwxMy40OTA2IDIzLjEyNiwxMy40OTA2IDM0LjY5LDAgQyAxMjguOTA4LDk1LjY3MzcgMTQ2LjI1NCwxMjIuNjU0IDEwMCwxNDAgWlwiLGZpbGw6ITF9LGlbXCJHUi5JQy5GRi5NT1RPUklaRURcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0xMDAsXCIrUy5iYm94LnkxK1wiTDEwMCxcIitTLmJib3gueTJ9LGlbXCJHUi5JQy5GRi5OQVZBTFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDE0NSAxMDAsNjVcIixmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwibSA3MCw3MCA2MCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNTcuOCwxMDUuNSBjIC0yLjIsMC4xIDEuMywyMC42IDIuOCwyMi4xIDAuOCwwLjggMy41LC0zLjggNC42LC0yLjYgMTcuNCwyMC4yIDMzLDE5LjcgMzQuNywxOS42IDAsMCAwLjIsLTAgMC4zLDAgMS43LDAuMSAxNy4zLDAuNSAzNC43LC0xOS42IDEsLTEuMiAzLjcsMy40IDQuNiwyLjYgMS40LC0xLjUgNC45LC0yMS45IDIuOCwtMjIuMSAtMi4yLC0wLjEgLTQsNC4yIC02LjcsNi40IC0zLDIuNCAtNy41LDMuNCAtNy43LDQuNSAtMC4xLDAuOCA0LjksMy41IDMuOSw0LjkgLTUuMSw2LjMgLTE1LjEsMTYuNiAtMzEuMywxNyBsIC0wLjMsNC4zIC0wLjMsLTQuMyBjIC0xNi4yLC0wLjQgLTI2LjMsLTEwLjcgLTMxLjMsLTE3IC0xLjEsLTEuMyA0LC00LjEgMy45LC00LjkgLTAuMiwtMSAtNC43LC0yIC03LjcsLTQuNSAtMi43LC0yLjMgLTQuNSwtNi42IC02LjcsLTYuNCB6XCIsc3Ryb2tlOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo2MCxyOjUsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5QUklTT05cIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDYyLjUgNjcuOSBMIDYyLjUgNzMuNCBMIDY5LjkgNzMuNCBMIDY5LjkgMTA2IEMgNjYuOCAxMDYuNyA2NC40IDEwOS42IDY0LjQgMTEzLjQgQyA2NC40IDExNiA2NS44IDExNi45IDY1LjkgMTE4LjQgQyA2NiAxMjAuNCA2NS42IDEyMi41IDY1LjYgMTI0LjcgTCA2NS42IDEyNi42IEwgNjIuNSAxMjYuNiBMIDYyLjUgMTMyLjEgTCAxMzcuNSAxMzIuMSBMIDEzNy41IDEyNi42IEwgMTM2IDEyNi42IEwgMTM1LjYgMTE3LjUgQyAxMzguMyAxMTMuNCAxMzUuOCAxMDcgMTMxLjUgMTA2IEwgMTMxLjUgNzMuNCBMIDEzNy41IDczLjQgTCAxMzcuNSA2Ny45IEwgNjIuNSA2Ny45IHogTSA3NC41IDczLjQgTCA4Ny4yIDczLjQgTCA4Ny4yIDEwOC40IEMgODcuMiAxMDkuMiA4NC44IDEwOS43IDgzLjkgMTEwLjYgQyA4My4xIDExMS4zIDgyLjIgMTEyLjcgODEuNiAxMTMuNiBDIDgwLjUgMTE1LjIgNzguNiAxMTguNyA3OC42IDEyMS4xIEwgNzYuMSAxMTcgQyA3Ni41IDExNi40IDc2LjkgMTE0LjYgNzYuOSAxMTMuNyBMIDc2LjkgMTEyLjIgQyA3Ni45IDEwOS41IDc0LjUgMTA3LjkgNzQuNSAxMDYuNSBMIDc0LjUgNzMuNCB6IE0gOTEuNSA3My40IEwgMTEwLjIgNzMuNCBMIDExMC4yIDkwLjkgQyAxMDkgODkuNiAxMDguOCA4Ny44IDEwNi44IDg1LjcgQyAxMDUuNCA4NC4zIDEwMy41IDgzIDEwMC44IDgzIEwgMTAwLjMgODMgQyA5OC4yIDgzIDk2LjEgODMuNiA5NC45IDg0LjUgQyA5NC4zIDg1IDkzLjYgODUuNCA5My4xIDg2IEMgOTIuNCA4Ni42IDkyLjIgODcuMyA5MS41IDg3LjggTCA5MS41IDczLjQgeiBNIDExNC4zIDczLjQgTCAxMjcuMiA3My40IEwgMTI3LjIgMTA2LjUgQyAxMjcuMiAxMDYuOSAxMjQuOCAxMDkuMiAxMjQuNCAxMTEuMSBDIDEyMy43IDExNC4yIDEyNC41IDExNC42IDEyNSAxMTcgTCAxMjMuMyAxMjAuMiBDIDEyMi43IDExOC4zIDEyMC43IDExNSAxMTkuNyAxMTMuNSBDIDExOC4zIDExMS40IDExNy4zIDEwOS4xIDExNC4zIDEwOC45IEwgMTE0LjMgNzMuNCB6IE0gOTkuNyA4NC45IEwgMTAwLjYgODQuOSBDIDEwNC44IDg0LjkgMTA4LjUgOTAuNCAxMDguNSA5NC43IEwgMTA4LjUgOTYuNCBDIDEwOC41IDEwMC40IDEwNSAxMDYuMiAxMDEuMyAxMDYuMiBMIDk5LjQgMTA2LjIgQyA5NC45IDEwNi4yIDkxLjQgMTAwLjIgOTEuNiA5NS41IEMgOTEuOCA5MC43IDk0LjkgODQuOSA5OS43IDg0LjkgeiBNIDExMC4zIDEwMC41IEwgMTEwLjIgMTA2LjkgTCAxMDYuNyAxMDYuMyBMIDExMC4zIDEwMC41IHogTSA5MS41IDEwMy42IEwgOTQuMyAxMDYuOCBMIDkxLjUgMTA3LjQgTCA5MS41IDEwMy42IHogTSA3MC43IDEwNy45IEMgNzIuOSAxMDcuOSA3NC43IDExMC40IDc0LjcgMTEyLjcgTCA3NC43IDExMy40IEMgNzQuNyAxMTcuOSA3MCAxMjAuMiA2Ny42IDExNi43IEMgNjUuNyAxMTMuOCA2Ni45IDEwNy45IDcwLjcgMTA3LjkgeiBNIDEzMC42IDEwNy45IEMgMTMyLjggMTA3LjkgMTM0LjQgMTEwLjggMTM0LjQgMTEzLjIgTCAxMzQuNCAxMTMuNCBDIDEzNC40IDExNi43IDEzMyAxMTYuNyAxMzIgMTE4LjIgTCAxMjguOSAxMTguMyBMIDEyNi43IDExNS40IEwgMTI2LjUgMTEzLjIgQyAxMjYuMSAxMTEgMTI4LjIgMTA3LjkgMTMwLjYgMTA3LjkgeiBNIDEwNS45IDEwOC4yIEMgMTA3LjIgMTA4LjIgMTA4LjkgMTA5IDExMC4yIDEwOS4zIEwgMTEwLjIgMTI2LjYgTCA5MS41IDEyNi42IEwgOTEuNSAxMTAuMSBDIDkxLjUgMTA4LjYgOTYuNiAxMDguOSA5OC40IDEwOC45IEMgMTAxLjEgMTA4LjkgMTA0IDEwOC4yIDEwNS45IDEwOC4yIHogTSAxMTQuMyAxMTAuOCBDIDExNy4yIDExMi4zIDExNy40IDExMy40IDExOSAxMTYuNCBDIDEyMC4xIDExOC41IDEyMS43IDEyMC45IDEyMS43IDEyNCBDIDEyMS45IDEyNC4yIDEyMi4zIDEyNC45IDEyMi43IDEyNC45IEMgMTI0IDEyNC45IDEyNS41IDExOS44IDEyNi43IDExOC45IEwgMTI2LjcgMTE5LjQgTCAxMjcuMiAxMTkuNCBMIDEyNy4yIDEyNi42IEwgMTE0LjMgMTI2LjYgTCAxMTQuMyAxMTAuOCB6IE0gODcuMiAxMTEuMyBMIDg3LjIgMTI2LjYgTCA3NC41IDEyNi42IEwgNzQuNSAxMTguOSBDIDc1LjggMTE5LjQgNzcuNCAxMjUuNCA3OC42IDEyNS40IEMgODAuNiAxMjUuNCA4MC43IDExOS42IDgxLjkgMTE3LjUgQyA4My4yIDExNS4zIDg0LjQgMTExLjkgODcuMiAxMTEuMyB6IE0gMTMzLjYgMTE5LjcgTCAxMzMuOSAxMjYuNiBMIDEzMS41IDEyNi42IEwgMTMxLjUgMTIwLjQgTCAxMzMuNiAxMTkuNyB6IE0gNjguMSAxMTkuOSBDIDY4LjYgMTIwLjEgNjkuOSAxMjAuMyA2OS45IDEyMS4xIEwgNjkuOSAxMjYuNiBMIDY3LjcgMTI2LjYgTCA2OC4xIDExOS45IHpcIn0saVtcIkdSLklDLkZGLkpBSUwgQlJFQUtcIl09W2lbXCJHUi5JQy5GRi5QUklTT05cIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tld2lkdGg6NSxkOlwibSA3MCwxMzAgTDEzMCw3MFwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk01MCwxMzVMMTUwLDY1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDE1MEwxNzUsNTBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDE1NUwxNTUsNDVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTYwLDEzMEwxNDAsNzBcIn19W1RdLGlbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRSBESVNNT1VOVEVEXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTAsMTM1TDE1MCw2NVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNDUsMTMwIDE1NSw3MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFIEVRVVBJTUVOVFwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDEzNUwxNTAsNjVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDUwLjYgMTMyLjkgTCAxNDkuMyA2N1wifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDUsMTU1TDE1NSw0NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTMwTDE0MCw3MFwifX1bVF0saVtcIkdSLklDLkZGLlNFQVJDSFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTQ1IDAsLTkwIG0gMzAsNjUgLTMwLDI1IC0zMCwtMjVcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuU0VOU09SXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTVwiK1MuYmJveC54MStcIiwxMDAgTDc1LDEwMCBNXCIrKDIwMC1TLmJib3gueDEpK1wiLDEwMCBMMTI1LDEwMFwifSx7dHlwZTpcInBhdGhcIixkOlwiTTY1LDg1IGw3MCwwIC0xNSwzMCAtNDAsMCB6XCIsZmlsbDohIVImJkd9XSxpW1wiR1IuSUMuRkYuU0lHTkFMXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01MCw2NSAxMDAsMTEwIDEwMCw5MCAxNTAsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsNTAgMTAwLDExMCAxMDAsOTAgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSw0NSAxMDAsMTEwIDEwMCw5MCAxNTUsMTU1XCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTU3LDcwIDEwMCwxMTAgMTAwLDkwIDE0MywxMzBcIn19W1RdLGlbXCJHUi5JQy5GRi5TSUdOQUwgRElTTU9VTlRFRFwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTAsNjUgMTAwLDExMCAxMDAsOTAgMTUwLDEzNVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA1Miw2Ni44IDEwMCwxMTAgbCAwLC0yMCA0Ny45LDQzLjFcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNDUsNDUgMTAwLDExMCAxMDAsOTAgMTU1LDE1NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01Nyw3MCAxMDAsMTEwIDEwMCw5MCAxNDMsMTMwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuU09VTkRcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNXCIrUy5iYm94LngxK1wiLDEwMCBMNzUsMTAwIE1cIisoMjAwLVMuYmJveC54MSkrXCIsMTAwIEwxMjUsMTAwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJNNjUsODUgbDcwLDAgLTE1LDMwIC00MCwwIHpcIixmaWxsOiEhUiYmR30se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJTXCJ9XSxpW1wiR1IuSUMuRkYuU1VQUExZXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsMTIwIGwxMzAsMCBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxMjAgbDE1MCwwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDEyMCBsMTEwLDBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNNTAsMTIwIGwxMDAsMCBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixkOlwiTTE2MCw3NSBsLTE1LDI1IDE1LDI1IE0zNSwxMjAgbDEyMCwwXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTI1LDEyMCBsMTM1LDBcIixmaWxsOiExfSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTU1LDUwIGwtMjAsNTAgMjAsNTAgTTQ1LDEyMCBsMTAwLDBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJNMTUwLDgwIGwtMTUsMjAgMTUsMjAgTTUwLDEyMCBsMTAwLDBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBESVZJU0lPTiBBTkQgQkVMT1dcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIm0gNDUsMTIwIDEyMCwwIE0gNDAsNzUgNTUsMTAwIDQwLDEyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwibSA0NSwxMjAgMTMwLDAgTSAyNSw1MCA1NSwxMDAgMjUsMTUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwibSA1NywxMjAgOTgsMCBNIDQ1LDUwIDY1LDEwMCA0NSwxNTBcIixmaWxsOiExfSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDUwLDEyMCAxMDAsMCBNIDUwLDgwIDY1LDEwMCA1MCwxMjBcIixmaWxsOiExfX1bVF0saVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNNDAsNzUgbDE1LDI1IC0xNSwyNSBNMTYwLDc1IGwtMTUsMjUgMTUsMjUgTTQ1LDEyMCBsMTEwLDAgXCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJNMjUsNTAgbDMwLDUwIC0zMCw1MCBNMTc1LDUwIGwtMzAsNTAgMzAsNTAgTTQwLDEyMCBsMTIwLDAgXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiIE00NSw1MCBsMjAsNTAgLTIwLDUwIE0xNTUsNTAgbC0yMCw1MCAyMCw1MCBNNTUsMTIwIGw5MCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCw4MCBsMTUsMjAgLTE1LDIwIE0xNTAsODAgbC0xNSwyMCAxNSwyMCBNNTAsMTIwIGwxMDAsMFwiLGZpbGw6ITF9fVtUXSxpW1wiR1IuSUMuRkYuQ0xBU1MgQUxMXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQUxMXCJ9LGlbXCJHUi5JQy5GRi5DTEFTUyBNVUxUSVBMRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1VTFRcIn0saVtcIkdSLklDLkZGLkNMQVNTIElcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDg1IGMgLTUsMTAgLTUsMjAgMCwzMCBtIDAsLTMwIGMgLTIwLDAgLTIwLDMwIDAsMzBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgSVwiXT1hKFwiSVwiKSxpW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl09aVtcIkdSLklDLlFVQVJURVJNQVNURVJcIl0saVtcIkdSLklDLkZGLk5BVE8gU1VQUExZIENMQVNTIElJXCJdPWEoXCJJSVwiKSxpW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMjAgMCwtMjAgLTE1LC0yMCAzMCwwIC0xNSwyMCBcIixmaWxsOiExfSxpW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl09aVtcIkdSLklDLkVOR0lORUVSXCJdLGlbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJVlwiXT1hKFwiSVZcIiksaVtcIkdSLklDLkZGLkNMQVNTIFZcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsMTE1IDAsLTI1IGMgMCwtMTAgMjAsLTEwIDIwLDAgbCAwLDI1IG0gLTI1LDAgMzAsMFwiLGZpbGw6ITF9LGlbXCJHUi5JQy5JTlRFUlBSRVRFUi9UUkFOU0xBVE9SXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSw5MCAxNSwwIDAsLTEwIDIwLDIwIC0yMCwyMCAwLC0xMCAtMTUsMCB6XCIsZmlsbDpHfSx7dHlwZTpcInBhdGhcIixkOlwibSAxMzUsOTAgLTE1LDAgMCwtMTAgLTIwLDIwIDIwLDIwIDAsLTEwIDE1LDAgelwifV0saVtcIkdSLklDLkZGLk5BVE8gU1VQUExZIENMQVNTIEFMTFwiXT1hKFwiQUxMXCIpLGlbXCJHUi5JQy5GRi5DTEFTUyBWSVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6ODUscjo1LGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDk1IDMwLDAgbSAtMTUsMTUgMCwtMjAgbSAtMTAsMzAgMTAsLTEwIDEwLDEwXCIsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTAwLHI6N30se3R5cGU6XCJjaXJjbGVcIixjeDoxMjUsY3k6MTAwLHI6N30se3R5cGU6XCJwYXRoXCIsZDpcIk03NSwxMDAgYzAsLTIwIDUwLC0yMCA1MCwwXCIsZmlsbDohMX1dLGlbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC05MCBNMTY1LDgwIGwtMTMwLDBcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC03MCBNMTc1LDgwIGwtMTUwLDBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtNzUgTTE1NSw4MCBsLTExMCwwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkyIE0xNTMsODAgbC0xMDYsMFwifX1bVF0saVtcIkdSLklDLkZGLkNMQVNTIFZJSUkuVEhFQVRFUlwiXT17VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtOTAgTTE1NSw4MCBsLTExMCwwXCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtNzAgTTE1NSw4MCBsLTExMCwwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTc1IE0xNDUsODAgbC05MCwwXCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkyIE0xNTMsODAgbC0xMDYsMFwifX1bVF0saVtcIkdSLklDLkZGLkNMQVNTIFZJSUkuQ09SUFNcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTkwIE0xNTUsODAgbC0xMjAsMFwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTEwMCwxMjAgbDAsLTcwIE0xNTUsODAgbC0xMzAsMFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0xMDAsMTIwIGwwLC03NSBNMTQ1LDgwIGwtMTAwLDBcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMTAwLDEyMCBsMCwtOTIgTTE1Myw4MCBsLTEwNiwwXCJ9fVtUXSxpW1wiR1IuSUMuRkYuQ0xBU1MgSVhcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMTAgMCwxMCBtIDAsLTMwIDAsLTEwIG0gOC43LDE0LjIgOC40LC00LjggbSAtOC40LDE1LjkgOCw1LjQgbSAtMjUuNCwtNS40IC04LjIsNS40IG0gOC4yLC0xNi4zIC04LC01LjRcIixmaWxsOiExfV0saVtcIkdSLklDLkVRVUlQTUVOVCBNQU5VRkFDVFVSRVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjAsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDEyMCAwLDIwIG0gMCwtNjAgMCwtMjAgbSAxOC4xLDI4LjQgMTYsLTkuNiBtIC0xNiwzMS4yIDE2LDEyIE0gODIuNSwxMTAgNjYuMSwxMjIgTSA4Mi41LDg4LjggNjYuNSw3OFwiLGZpbGw6ITF9XSxpW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkNBXCJ9LGlbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl09e1Vua25vd246e3R5cGU6XCJwYXRoXCIsZDpcIk00MCw3NSBsMTUsMjUgLTE1LDI1IE0xNjAsNzUgbC0xNSwyNSAxNSwyNVwiLGZpbGw6ITF9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixkOlwiTTI1LDUwIGwzMCw1MCAtMzAsNTAgTTE3NSw1MCBsLTMwLDUwIDMwLDUwXCIsZmlsbDohMX0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixkOlwiTTQ1LDUwIGwyMCw1MCAtMjAsNTAgTTE1NSw1MCBsLTIwLDUwIDIwLDUwXCIsZmlsbDohMX0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixkOlwiTTUwLDgwIGwxNSwyMCAtMTUsMjAgTTE1MCw4MCBsLTE1LDIwIDE1LDIwXCIsZmlsbDohMX19W1RdLGlbXCJHUi5JQy5GRi5VUyBNQVJTSEFMUyBTRVJWSUNFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw3MCA3LjEsMjAuMyAyMS41LDAuNCAtMTcuMSwxMyA2LjIsMjAuNiBMIDEwMCwxMTIgODIuNCwxMjQuMyA4OC42LDEwMy43IDcxLjUsOTAuNyA5Mi45LDkwLjMgeiBtIDAsLTUgYyAtMTkuMywwIC0zNSwxNS43IC0zNSwzNSAwLDE5LjMgMTUuNywzNSAzNSwzNSAxOS4zLDAgMzUsLTE1LjcgMzUsLTM1IDAsLTE5LjMgLTE1LjcsLTM1IC0zNSwtMzUgeiBtIDAsNSBjIDE2LjYsMCAzMCwxMy40IDMwLDMwIDAsMTYuNiAtMTMuNCwzMCAtMzAsMzAgLTE2LjYsMCAtMzAsLTEzLjQgLTMwLC0zMCAwLC0xNi42IDEzLjQsLTMwIDMwLC0zMCB6XCJ9LGlbXCJHUi5NMS5BQ0NJREVOVFwiXT1sKFwiQUNDXCIpLGlbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTg1LDU1IEwxMDAsNzUgMTE1LDU1XCJ9LGlbXCJHUi5NMS5BUk1PUkVEXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsNjAgMjAsMCBjIDEwLDAgMTAsMTUgMCwxNSBMIDkwLDc1IEMgODAsNzUgODAsNjAgOTAsNjBcIn0saVtcIkdSLk0xLkNBUkdPXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDYwIDAsMTUgLTE1LDAgMCwtMTUgMzAsMCAwLDE1IC0xNSwwXCJ9LGlbXCJHUi5NMS5BTU1VTklUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNOTUsNzUgTDk1LDYwIEM5NSw1NSAxMDUsNTUgMTA1LDYwIEwxMDUsNzUgTTkwLDc1IEwxMTAsNzVcIixmaWxsOiExfSxpW1wiR1IuTTEuQU1QSElCSU9VUyBXQVJGQVJFIFNISVAgXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDExMyw3NSAxMDAsNzUgOTAsNjQuMyA5NSw2NSBsIDAsLTggMTAsMCAwLDggNS41LC0wLjYgTCAxMDAsNzVcIn0saVtcIkdSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFwiUFwiKSxpW1wiR1IuTTEuQVJFQVwiXT1sKFwiQVJFQVwiKSxpW1wiR1IuTTEuQVJNWVwiXT1sKFwiWFhYWFwiKSxpW1wiR1IuTTEuQVRUQUNLXCJdPWwoXCJBXCIpLGlbXCJHUi5NMS5BVklBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3NSw2MCAwLDE1IDUwLC0xNSAwLDE1IHpcIn0saVtcIkdSLk0xLkJBVFRBTElPTlwiXT1sKFwiSUlcIiksaVtcIkdSLk0xLkJJT0xPR0lDQUxcIl09bChcIkJcIiksaVtcIkdSLk0xLkJPUkRFUlwiXT1sKFwiQk9SXCIpLGlbXCJHUi5NMS5CUklER0lOR1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDgwIDUsLTUgMzAsMCA1LDUgbSAtNDAsLTIwIDUsNSAzMCwwIDUsLTVcIn0saVtcIkdSLk0xLkJSSUdBREVcIl09bChcIlhcIiksaVtcIkdSLk0xLkNIRU1JQ0FMXCJdPWwoXCJDXCIpLGlbXCJHUi5NMS5JTlRSVVNJT05cIl09bChcIklcIiksaVtcIkdSLk0xLkNIRU1JQ0FMIFNVUlZFSUxMQU5DRVwiXT1sKFwiUlNcIiksaVtcIkdSLk0xLkNJVklMSUFOXCJdPWwoXCJDSVZcIiksaVtcIkdSLk0xLkNMT1NFIFBST1RFQ1RJT05cIl09bChcIkNMUFwiKSxpW1wiR1IuTTEuQ09NQkFUXCJdPWwoXCJDQlRcIiksaVtcIkdSLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl09bChcIkMyXCIpLGlbXCJHUi5NMS5DT01NQU5EIEFORCBDT05UUk9MIFJPVEFSWSBXSU5HXCJdPWwoUj9cIllcIjpcIkMyXCIpLGlbXCJHUi5NMS5USUxULVJPVE9SXCJdPWwoXCJUUlwiKSxpW1wiR1IuTTEuQ09NTUFORCBQT1NUIE5PREVcIl09bChcIkNQTlwiKSxpW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXT1sKFwiQ0NQXCIpLGlbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzUsZm9udHNpemU6MjAsdGV4dDpcIkNPTlNUXCJ9LGlbXCJHUi5NMS5DT01QQU5ZXCJdPWwoXCJJXCIpLGlbXCJHUi5NMS5DT1JQU1wiXT1sKFwiWFhYXCIpLGlbXCJHUi5NMS5DUk9TUyBDVUxUVVJBTCBDT01NVU5JQ0FUSU9OXCJdPWwoXCJDQ0NcIiksaVtcIkdSLk0xLkNST1dEIEFORCBSSU9UIENPTlRST0xcIl09bChcIkNSQ1wiKSxpW1wiR1IuTTEuREVDT05UQU1JTkFUSU9OXCJdPWwoXCJEXCIpLGlbXCJHUi5NMS5ERVRFTlRJT05cIl09bChcIkRFVFwiKSxpW1wiR1IuTTEuREVQVVRZXCJdPWwoXCJERVBcIiksaVtcIkdSLk0xLkRJUkVDVCBDT01NVU5JQ0FUSU9OU1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDk1LDY1IC01LDUgNSw1IG0gMTAsLTEwIDUsNSAtNSw1IE0gOTAsNzAgYyAyMCwwIDIwLDAgMjAsMCBtIDE1LDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHogbSAtNDAsMCBjIDAsMi44IC0yLjIsNSAtNSw1IC0yLjgsMCAtNSwtMi4yIC01LC01IDAsLTIuOCAyLjIsLTUgNSwtNSAyLjgsMCA1LDIuMiA1LDUgelwifSxpW1wiR1IuTTEuRElWSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTA0LjYsNjQuOCBjIDAsMi43IC0yLjEsNC44IC00LjYsNC44IC0yLjUsMCAtNC42LC0yLjIgLTQuNiwtNC44IDAsLTIuNyAyLjEsLTQuOCA0LjYsLTQuOCAyLjUsMCA0LjYsMi4yIDQuNiw0LjggeiBtIDAsOC43IDQuNiw0LjggLTE4LjMsMCA0LjYsLTQuOCBNIDEwOC4zLDYwIGwgNC42LDAgMCw5LjYgLTQuNiwwIG0gLTE2LjUsMCAtNC42LDAgMCwtOS42IDQuNiwwIG0gMTcuNCw0LjggYyAwLDUuMyAtNC4xLDkuNiAtOS4yLDkuNiAtNS4xLDAgLTkuMiwtNC4zIC05LjIsLTkuNiAwLC01LjMgNC4xLC05LjYgOS4yLC05LjYgNS4xLDAgOS4yLDQuMyA5LjIsOS42IHpcIn0saVtcIkdSLk0xLkRJVklTSU9OXCJdPWwoXCJYWFwiKSxpW1wiR1IuTTEuTUFSSU5FIERJVklTSU9OXCJdPWwoXCJEXCIpLGlbXCJHUi5NMS5ET0dcIl09bChcIkRPR1wiKSxpW1wiR1IuTTEuRFJJTExJTkdcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsNjAgNSwxNSAxMCwwIDUsLTE1IHpcIn0saVtcIkdSLk0xLkVMRUNUUk8tT1BUSUNBTFwiXT1sKFwiRU9cIiksaVtcIkdSLk0xLkVOSEFOQ0VEXCJdPWwoXCJFTkhcIiksaVtcIkdSLk0xLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXT1sKFwiRU9EXCIpLGlbXCJHUi5NMS5FQVJMWSBXQVJOSU5HIFJBREFSXCJdPWwoXCJFV1JcIiksaVtcIkdSLk0xLkZJUkUgRElSRUNUSU9OIENFTlRSRVwiXT1sKFwiRkRDXCIpLGlbXCJHUi5NMS5GT1JDRVwiXT1sKFwiRlwiKSxpW1wiR1IuTTEuRk9SV0FSRFwiXT1sKFwiRldEXCIpLGlbXCJHUi5NMS5HUk9VTkQgU1RBVElPTiBNT0RVTEVcIl09bChcIkdTTVwiKSxpW1wiR1IuTTEuSElKQUNLSU5HXCJdPWwoXCJIXCIpLGlbXCJHUi5NMS5JTkRJVklEVUFMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk04NSw2NSBsMzAsMFwifSxpW1wiR1IuTTEuSU5UUlVTSU9OXCJdPWwoXCJJXCIpLGlbXCJHUi5NMS5KMVwiXT1sKFwiSjFcIiksaVtcIkdSLk0xLkoyXCJdPWwoXCJKMlwiKSxpW1wiR1IuTTEuSjNcIl09bChcIkozXCIpLGlbXCJHUi5NMS5KNFwiXT1sKFwiSjRcIiksaVtcIkdSLk0xLko1XCJdPWwoXCJKNVwiKSxpW1wiR1IuTTEuSjZcIl09bChcIko2XCIpLGlbXCJHUi5NMS5KN1wiXT1sKFwiSjdcIiksaVtcIkdSLk0xLko4XCJdPWwoXCJKOFwiKSxpW1wiR1IuTTEuSjlcIl09bChcIko5XCIpLGlbXCJHUi5NMS5KT0lOVCBORVRXT1JLIE5PREVcIl09bChcIkpOTlwiKSxpW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdPWwoXCJMU1wiKSxpW1wiR1IuTTEuTEFSR0UgQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXT1sKFwiTENDUFwiKSxpW1wiR1IuTTEuTEFSR0UgRVhURU5TSU9OIE5PREVcIl09bChcIkxFTlwiKSxpW1wiR1IuTTEuTE9BRCBIQU5ETElORyBTWVNURU1cIl09bChcIkxIU1wiKSxpW1wiR1IuTTEuTUFJTlRFTkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NCw3MCAzMiwwIG0gNCwtNSBjIC01LDAgLTUsMTAgMCwxMCBNIDgwLDY1IGMgNSwwIDUsMTAgMCwxMFwifSxpW1wiR1IuTTEuTUVERVZBQ1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05NS41LDgwIGw5LDAgMCwtOSA5LDAgMCwtOSAtOSwwIDAsLTkgLTksMCAwLDkgLTksMCAwLDkgOSwwIFpcIn0saVtcIkdSLk0xLk1FVEVPUk9MT0dJQ0FMXCJdPWwoXCJNRVRcIiksaVtcIkdSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVcIl09bChcIk1DTVwiKSxpW1wiR1IuTTEuTUlTU0lMRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTTk1LDgwIEw5NSw2MCBDOTUsNTUgMTA1LDU1IDEwNSw2MCBMMTA1LDgwIE0xMDAsODAgTDEwMCw1NVwiLGZpbGw6ITF9LGlbXCJHUi5NMS4oTU9CSUxFKSBBRFZJU09SIEFORCBTVVBQT1JUXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw2NSA1LDUgLTUsNSBNIDkwLDcwIGMgMjAsMCAyMCwwIDIwLDAgbSAxNSwwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTQwLDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHpcIixmaWxsOiExfSxpW1wiR1IuTTEuTU9CSUxFIFNVQlNDUklCRVIgRVFVSVBNRU5UXCJdPWwoXCJNU0VcIiksaVtcIkdSLk0xLk1PQklMSVRZIEFTU0FVTFRcIl09bChcIk1BXCIpLGlbXCJHUi5NMS5NT0JJTElUWSBTVVBQT1JUXCJdPWwoXCJNU1wiKSxpW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl09bChcIk1DQ1wiKSxpW1wiR1IuTTEuTVVMVElOQVRJT05BTFwiXT1sKFwiTU5cIiksaVtcIkdSLk0xLk1VTFRJTkFUSU9OQUwgU1BFQ0lBTElaRUQgVU5JVFwiXT1sKFwiTVNVXCIpLGlbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk04NSw3NSBsMTUsLTE1IDE1LDE1IE04NSw2NyBsMTUsLTE1IDE1LDE1XCIsZmlsbDohMX0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjFcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjJcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDNcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjNcIn0saVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTIwLHk6NzcsZm9udHNpemU6MjUsdGV4dDpcIjRcIn0saVtcIkdSLk0xLk5BVkFMXCJdPXMuX3RyYW5zbGF0ZSgwLC0zNSxzLl9zY2FsZSguNixpW1wiR1IuSUMuTkFWQUxcIl0pKSxpW1wiR1IuTTEuTk9ERSBDRU5UUkVcIl09bChcIk5DXCIpLGlbXCJHUi5NMS5OVUNMRUFSXCJdPWwoXCJOXCIpLGlbXCJHUi5NMS5PRi0xXCJdPWwoXCJPRi0xXCIpLGlbXCJHUi5NMS5PRi0yXCJdPWwoXCJPRi0yXCIpLGlbXCJHUi5NMS5PRi0zXCJdPWwoXCJPRi0zXCIpLGlbXCJHUi5NMS5PRi00XCJdPWwoXCJPRi00XCIpLGlbXCJHUi5NMS5PRi01XCJdPWwoXCJPRi01XCIpLGlbXCJHUi5NMS5PRi02XCJdPWwoXCJPRi02XCIpLGlbXCJHUi5NMS5PRi03XCJdPWwoXCJPRi03XCIpLGlbXCJHUi5NMS5PRi04XCJdPWwoXCJPRi04XCIpLGlbXCJHUi5NMS5PRi05XCJdPWwoXCJPRi05XCIpLGlbXCJHUi5NMS5PRi0xMFwiXT1sKFwiT0YtMTBcIiksaVtcIkdSLk0xLk9GLURcIl09bChcIk9GLURcIiksaVtcIkdSLk0xLk9QRVJBVElPTlNcIl09bChcIk9QU1wiKSxpW1wiR1IuTTEuT1BUSUNBTFwiXT1sKFwiT1BUXCIpLGlbXCJHUi5NMS5PUi0xXCJdPWwoXCJPUi0xXCIpLGlbXCJHUi5NMS5PUi0yXCJdPWwoXCJPUi0yXCIpLGlbXCJHUi5NMS5PUi0zXCJdPWwoXCJPUi0zXCIpLGlbXCJHUi5NMS5PUi00XCJdPWwoXCJPUi00XCIpLGlbXCJHUi5NMS5PUi01XCJdPWwoXCJPUi01XCIpLGlbXCJHUi5NMS5PUi02XCJdPWwoXCJPUi02XCIpLGlbXCJHUi5NMS5PUi03XCJdPWwoXCJPUi03XCIpLGlbXCJHUi5NMS5PUi04XCJdPWwoXCJPUi04XCIpLGlbXCJHUi5NMS5PUi05XCJdPWwoXCJPUi05XCIpLGlbXCJHUi5NMS5PVEhFUlwiXT1sKFwiT1RIXCIpLGlbXCJHUi5NMS5QQUxMRVRJWkVEIExPQUQgU1lTVEVNXCJdPWwoXCJQTFNcIiksaVtcIkdSLk0xLlBFUlNPTk5FTCBSRUNPVkVSWVwiXT1sKFwiSFwiKSxpW1wiR1IuTTEuUExBVE9PTlwiXT1be3R5cGU6XCJjaXJjbGVcIixzdHJva2U6ITEsY3g6ODAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMDAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMjAsY3k6Njgscjo4fV0saVtcIkdSLk0xLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsNTUgYyAwLjEsMjEuNCAxMS43LDI0LjYgMjUsMjUgTSAxMTYsNTUgMTAxLDY3LjUgMTAxLDU1IDg2LjYsNjYuOVwifSxpW1wiR1IuTTEuUkFESU8gRlJFUVVFTkNZIElERU5USUZJQ0FUSU9OIChSRklEKSBJTlRFUlJPR0FUT1IvIFNFTlNPUlwiXT1sKFwiUkZcIiksaVtcIkdSLk0xLlJBSUxST0FEXCJdPXMuX3RyYW5zbGF0ZSgwLC01MCxbe3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0pLGlbXCJHUi5NMS5SQURJT0xPR0lDQUxcIl09bChcIlJBRFwiKSxpW1wiR1IuTTEuUkFOR0VSXCJdPWwoXCJSR1JcIiksaVtcIkdSLk0xLlJFQ09OXCJdPWwoXCJSXCIpLGlbXCJHUi5NMS5SRUdJTUVOVFwiXT1sKFwiSUlJXCIpLGlbXCJHUi5NMS5SRVRSQU5TTUlTU0lPTiBTSVRFXCJdPWwoXCJSVE5TXCIpLGlbXCJHUi5NMS5ST0JPVElDXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw1Mi43IDE0LjksMTQuOCBjIDAuNCwtMC4zIDAuOSwtMC40IDEuNCwtMC40IDEuNSwwIDIuNywxLjIgMi43LDIuNyAwLDEuNCAtMS4yLDIuNyAtMi43LDIuNyAtMS41LDAgLTIuNywtMS4zIC0yLjcsLTIuNyAwLC0wLjQgMC4xLC0wLjcgMC4yLC0xIGwgLTEwLjQsLTUuMiAtMi41LDguNiBjIDAuMiwwLjEgMC40LDAuMiAwLjYsMC4zIDAuNywwLjUgMS4yLDEuMyAxLjIsMi4zIDAsMS41IC0xLjIsMi43IC0yLjcsMi43IC0wLjU1LDAgLTEuMDYsLTAuMiAtMS40OSwtMC41IC0wLjczLC0wLjQgLTEuMjIsLTEuMyAtMS4yMiwtMi4yIDAsLTEuMiAwLjc3LC0yLjIgMS44NSwtMi42IGwgLTIuNTMsLTguNiAtMTAuNDIsNS4yIGMgMC4xMiwwLjMgMC4xOCwwLjYgMC4xOCwxIDAsMS41IC0xLjIxLDIuNyAtMi43LDIuNyAtMS40OSwwIC0yLjcsLTEuMiAtMi43LC0yLjcgMCwtMS41IDEuMjEsLTIuNyAyLjcsLTIuNyAwLjUyLDAgMS4wMSwwLjEgMS40MiwwLjQgbCAxNC45LC0xNC44IDAsMCAwLDAgelwiLHN0cm9rZTohMX0saVtcIkdSLk0xLkFTU0FVTFRcIl09bChcIkFTTFRcIiksaVtcIkdSLk0xLldFQVBPTlwiXT1sKFwiV1BOXCIpLGlbXCJHUi5NMS5XRUFQT05TXCJdPWwoXCJXXCIpLGlbXCJHUi5NMS5DUklNSU5BTCBJTlZFU1RJR0FUSU9OIERJVklTSU9OXCJdPWwoXCJDSURcIiksaVtcIkdSLk0xLkRJR0lUQUxcIl09bChcIkRJR1wiKSxpW1wiR1IuTTEuTkVUV09SSyBPUiBORVRXT1JLIE9QRVJBVElPTlNcIl09bChcIk5FVFwiKSxpW1wiR1IuTTEuQUlSRklFTEQsIEFFUklBTCBQT1JUIE9GIERFQkFSS0FUSU9OLCBPUiBBRVJJQUwgUE9SVCBPRiBFTUJBUktBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4MCw3MCA0MCwwIE0gODAsODAgMTExLDU1XCIsZmlsbDohMX0saVtcIkdSLk0xLlBJUEVMSU5FXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkyLDY2IC0xMiwwIG0gMTIsOCAtMTIsMCBtIDI4LDAgMTIsMCBtIC0xMiwtOCAxMiwwIG0gLTIwLC0xMSAwLDcgbSAtNSwtNyAxMCwwIG0gLTEzLDcgMCwxNiAxNiwwIDAsLTE2IC0xNiwwXCIsZmlsbDohMX0saVtcIkdSLk0xLlBPU1RBTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw2MCAxNSwwIGMgMCw1IDAsMTAgMTAsMTUgLTE1LDAgLTIwLDAgLTI1LC0xNVwiLGZpbGw6ITF9LGlbXCJHUi5NMS5XQVRFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw1NSAyMCwwIG0gLTEwLDEwIDAsLTEwIG0gLTI1LDEwIDQwLDAgYyAxMCwwIDE1LDUgMTUsMTBcIixmaWxsOiExfSxpW1wiR1IuTTEuSU5ERVBFTkRFTlQgQ09NTUFORFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTEuOCw1OS4yIDAsMTUuOCBtIC03LjksLTcuOSAxNS44LDAgbSAtMzEuNiwtNy45IDAsMTUuOCBtIDcuOSwtNy45IC0xNS44LDBcIixmaWxsOiExfSxpW1wiR1IuTTEuTVVMVEktUFVSUE9TRSBCTEFERVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4MCw2NSAyMCwtMTAgMjAsMTAgbSAtMjAsMTUgMCwtMjVcIixmaWxsOiExfSxpW1wiR1IuTTEuVEFOSy1XSURUSCBNSU5FIFBMT1dcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsNjUgNSwtMi41IG0gNSwtMi41IDUsLTIuNSBtIDEwLDAgNSwyLjUgbSA1LDIuNSA1LDIuNSBtIC0yMCwxNSAwLC0yMFwiLGZpbGw6ITF9LGlbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl09bChcIlJSQ1wiKSxpW1wiR1IuTTEuU0VBUkNIIEFORCBSRVNDVUVcIl09bChcIlNBUlwiKSxpW1wiR1IuTTEuU0VDVElPTlwiXT1be3R5cGU6XCJjaXJjbGVcIixzdHJva2U6ITEsY3g6OTAsY3k6Njgscjo4fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTohMSxjeDoxMTAsY3k6Njgscjo4fV0saVtcIkdSLk0xLlNFQ1VSSVRZXCJdPWwoXCJTRUNcIiksaVtcIkdSLk0xLlNFTlNPUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNTUgYyAtMiw1IC01LDggLTEwLDEwIDUsMiA4LDUgMTAsMTAgMiwtNSA1LC04IDEwLC0xMCAtNSwtMiAtOCwtNSAtMTAsLTEwIHpcIn0saVtcIkdSLk0xLlNFTlNPUiBDT05UUk9MIE1PRFVMRVwiXT1sKFwiU0NNXCIpLGlbXCJHUi5NMS5TSUdOQUxTIElOVEVMTElHRU5DRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw1NSAwLDIzIG0gLTE1LC0xOCA1LC01IDUsNSA1LC01IDUsNSA1LC01IDUsNVwifSxpW1wiR1IuTTEuU0lHTkFMIFNVUFBPUlRcIl09bChcIlNQVFwiKSxpW1wiR1IuTTEuU0lOR0xFIFNIRUxURVIgU1dJVENIXCJdPWwoXCJTU1NcIiksaVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk04NSw3NSBsMTUsLTE1IDE1LDE1XCIsZmlsbDohMX0saVtcIkdSLk0xLlNNQUxMIEVYVEVOU0lPTiBOT0RFXCJdPWwoXCJTRU5cIiksaVtcIkdSLk0xLlNNT0tFXCJdPWwoXCJTXCIpLGlbXCJHUi5NMS5TTU9LRS9ERUNPTlwiXT1sKFwiU0RcIiksaVtcIkdSLk0xLlNOSVBFUlwiXT17dHlwZTpcInBhdGhcIixkOlwiTTc1LDYwIGwyMCwwIE0xMDAsNzYgbDAsLTE4IE0xMjUsNjAgbC0yMCwwXCIsZmlsbDohMX0saVtcIkdSLk0xLlNPVU5EIFJBTkdJTkdcIl09bChcIlNEUlwiKSxpW1wiR1IuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFUyAoU09GKVwiXT1sKFwiU09GXCIpLGlbXCJHUi5NMS5TUEVDSUFMIFdFQVBPTlMgQU5EIFRBQ1RJQ1NcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzcsZm9udHNpemU6MjMsdGV4dDpcIlNXQVRcIn0saVtcIkdSLk0xLlNRVUFEXCJdPXt0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeTo2OCxyOjh9LGlbXCJHUi5NMS5TVVBQT1JUXCJdPWwoXCJTUFRcIiksaVtcIkdSLk0xLlNVUlZFWVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDgsNzggLTgsLTggbSAwLDAgLTgsOCBtIDgsLTggMCwtMTUgMTUsOCB6XCJ9LGlbXCJHUi5NMS5UQUNUSUNBTCBFWFBMT0lUQVRJT05cIl09bChcIlRFXCIpLGlbXCJHUi5NMS5UQVJHRVQgQUNRVUlTSVRJT05cIl09bChcIlRBXCIpLGlbXCJHUi5NMS5URUFNXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjY1LHI6MTB9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDc1IGwyMCwtMjBcIn1dLGlbXCJHUi5NMS5USEVBVFJFXCJdPWwoXCJYWFhYWFwiKSxpW1wiR1IuTTEuVE9QT0dSQVBISUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5Miw2NSBjIDYsMyAxMCwzIDE2LDAgbSAtMTgsMTMgMTAsLTIzIDEwLDIzXCJ9LGlbXCJHUi5NMS5UUkFJTklORyBDQU1QXCJdPWwoXCJUTkdcIiksaVtcIkdSLk0xLkhJSkFDS0VSXCJdPWwoXCJISlwiKSxpW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLDY1IDIwLDEzIDIwLC0xMyAwLC01IC0yMCwxMCAtMjAsLTEwIHpcIn0saVtcIkdSLk0xLlVQR1JBREVEIEVBUkxZIFdBUk5JTkcgUkFEQVJcIl09bChcIlVFV1wiKSxpW1wiR1IuTTEuVVRJTElUWVwiXT1sKFwiVVwiKSxpW1wiR1IuTTEuVklERU8gSU1BR0VSWVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyMCw2NSAtMTEsMCBtIDExLDEwIC0xNCwwIG0gNCwtMTQgLTMwLDAgMCwxOCAyNSwwIHogbSAxMCwyIDAsMTRcIn0saVtcIkdSLk0xLldPLTFcIl09bChcIldPLTFcIiksaVtcIkdSLk0xLldPLTJcIl09bChcIldPLTJcIiksaVtcIkdSLk0xLldPLTNcIl09bChcIldPLTNcIiksaVtcIkdSLk0xLldPLTRcIl09bChcIldPLTRcIiksaVtcIkdSLk0xLldPLTVcIl09bChcIldPLTVcIiksaVtcIkdSLk0xLllBUkRcIl09bChcIllSRFwiKSxpW1wiR1IuTTIuQUlSQk9STkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk03NSwxNDAgQzc1LDEyNSAxMDAsMTI1IDEwMCwxNDAgQzEwMCwxMjUgMTI1LDEyNSAxMjUsMTQwXCIsZmlsbDohMX0saVtcIkdSLk0yLkFSQ1RJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTExNSwxMjUgQzEyNSwxMjUgMTI1LDEzNSAxMTUsMTM1IEw4NSwxMzUgQzc1LDEzNSA3NSwxMjUgODUsMTI1XCIsZmlsbDohMX0saVtcIkdSLk0yLkFUVEFDS1wiXT1yKFwiQVwiKSxpW1wiR1IuTTIuTEFORElORyBDUkFGVFwiXT1yKFwiTENcIiksaVtcIkdSLk0yLkxBTkRJTkcgU0hJUFwiXT1yKFwiTFNcIiksaVtcIkdSLk0yLlNFUlZJQ0UgQ1JBRlQvWUFSRFwiXT1yKFwiWVlcIiksaVtcIkdSLk0yLlRVRyBIQVJCT1JcIl09cihcIllUXCIpLGlbXCJHUi5NMi5PQ0VBTiBHT0lORyBUVUcgQk9BVFwiXT1yKFwiQVRcIiksaVtcIkdSLk0yLlNVUkZBQ0UgREVQTE9ZTUVOVCBBTkQgRElTVFJJQlVUSU9OIENPTU1BTkRcIl09cihcIlNERENcIiksaVtcIkdSLk0yLkNPTVBPU0lURVwiXT1yKFwiQ09NUFwiKSxpW1wiR1IuTTIuTElHSFQgQU5EIE1FRElVTVwiXT1yKFwiTC9NXCIpLGlbXCJHUi5NMi5CQVRUTEUgREFNQUdFIFJFUEFJUlwiXT1yKFwiQkRSXCIpLGlbXCJHUi5NMi5CSUNZQ0xFIEVRVUlQUEVEXCJdPXt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMixyOjExLGZpbGw6ITF9LGlbXCJHUi5NMi5DQVNVQUxUWSBTVEFHSU5HXCJdPXIoXCJDU1wiKSxpW1wiR1IuTTIuQ0xFQVJJTkdcIl09cihcIkNMUlwiKSxpW1wiR1IuTTIuQ0xPU0UgUkFOR0VcIl09cihcIkNSXCIpLGlbXCJHUi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl09cihcIkNTQVJcIiksaVtcIkdSLk0yLkNPTlRST0xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTgsMTMwIDIsLTQgMiw0IG0gLTgsOCAtNCwtMiA0LC0yIG0gOCw4IC0yLDQgLTIsLTQgbSA4LC04IDQsMiAtNCwyIG0gLTE0LC0yIDE2LDAgbSAtOCwtOCAwLDE2XCIsZmlsbDohMX0saVtcIkdSLk0yLk5PTkNPTUJBVEFOVCBHRU5FUklDIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSwxMzUgMCwtMTAgMTAsMCAwLDEwIDUsMCAwLDEwIC0yMCwwIDAsLTEwIHpcIixzdHJva2U6ITF9LGlbXCJHUi5NMi5TSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAzMCwwIC01LC0xNSAtMTAsLTUgLTEwLDUgelwiLHN0cm9rZTohMX0saVtcIkdSLk0yLlNFTEYtUFJPUEVMTEVEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDEyNSAzMCwwIGMgMTAsMCAxMCwxNSAwLDE1IGwgLTMwLDAgYyAtMTAsMCAtMTAsLTE1IDAsLTE1XCIsZmlsbDohMX0saVtcIkdSLk0yLkNST1NTLUNPVU5UUlkgVFJVQ0tcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJNNjAsMTIwIGw4MCwwXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjY1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0saVtcIkdSLk0yLkNBVkFMUllcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTEwLHk6MTQwLGZvbnRzaXplOjI1LHRleHQ6XCJDQVZcIn0saVtcIkdSLk0yLkRFQ09OVEFNSU5BVElPTlwiXT1yKFwiRFwiKSxpW1wiR1IuTTIuREVNT0xJVElPTlwiXT1yKFwiREVNXCIpLGlbXCJHUi5NMi5ERU5UQUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJEXCJ9LGlbXCJHUi5NMi5ESUdJVEFMXCJdPXIoXCJESUdcIiksaVtcIkdSLk0yLkVOSEFOQ0VEIFBPU0lUSU9OIExPQ0FUSU9OIFJFUE9SVElORyBTWVNURU1cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODcsMTQyIDEzLC0xMiAxMywxMiBtIC0xMywtMjAgMCwyMCAwLDBcIixmaWxsOiExfSxpW1wiR1IuTTIuRVFVSVBNRU5UXCJdPXIoXCJFXCIpLGlbXCJHUi5NMi5FUVVJTUVOVC9UUk9PUFwiXT1yKFwiRS9UXCIpLGlbXCJHUi5NMi5IRUFWWVwiXT1yKFwiSFwiKSxpW1wiR1IuTTIuSElHSCBBTFRJVFVERVwiXT1yKFwiSEFcIiksaVtcIkdSLk0yLkhJR0ggVE8gTUVESVVNIEFMVElUVURFXCJdPXIoXCJITUFcIiksaVtcIkdSLk0yLkhJR0ggVE8gTE9XIEFMVElUVURFXCJdPXIoXCJITEFcIiksaVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl09bChcIkNZQlwiKSxpW1wiR1IuTTIuQUlSIEFTU0FVTFRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4NSwxMjUgMTUsMjAgMTUsLTIwXCJ9LGlbXCJHUi5NMi5WRVJZIEhFQVZZXCJdPXIoXCJWSFwiKSxpW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXT1yKFwiQ1lCXCIpLGlbXCJHUi5NMi5OQVZZIEJBUkdFLCBTRUxGLVBST1BFTExFRFwiXT1yKFwiWVNcIiksaVtcIkdSLk0yLk5BVlkgQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXT1yKFwiWUJcIiksaVtcIkdSLk0yLkxBVU5DSFwiXT1yKFwiWUZUXCIpLGlbXCJHUi5NMS5UQUNUSUNBTCBTQVRFTExJVEUgQ09NTVVOSUNBVElPTlNcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwNSw2NSAxMCwwIG0gLTMwLDAgMTAsMCBNIDg1LDc3IGMgMTAsLTcgMjAsLTcgMzAsMFwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LjQsNjAuOSAwLDkuMSAxMy4xLDAgMCwtOS4xIHogbSAzNiwwIDAsOS4xIDEzLjEsMCAwLC05LjEgeiBtIC0xOCwwIDAsOS4xIDEzLjEsMCAwLC05LjEgelwiLHN0cm9rZTohMX1dLGlbXCJHUi5NMi5JTlRFUk1PREFMXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyNSA0MCwwIDAsLTQgOCw5IC04LDkgMCwtNCAtNDAsMCAwLDQgLTgsLTkgOCwtOSB6XCIsZmlsbDohMX0saVtcIkdSLk0yLklOVEVOU0lWRSBDQVJFXCJdPXIoXCJJQ1wiKSxpW1wiR1IuTTIuSjFcIl09cihcIkoxXCIpLGlbXCJHUi5NMi5KMlwiXT1yKFwiSjJcIiksaVtcIkdSLk0yLkozXCJdPXIoXCJKM1wiKSxpW1wiR1IuTTIuSjRcIl09cihcIko0XCIpLGlbXCJHUi5NMi5KNVwiXT1yKFwiSjVcIiksaVtcIkdSLk0yLko2XCJdPXIoXCJKNlwiKSxpW1wiR1IuTTIuSjdcIl09cihcIko3XCIpLGlbXCJHUi5NMi5KOFwiXT1yKFwiSjhcIiksaVtcIkdSLk0yLko5XCJdPXIoXCJKOVwiKSxpW1wiR1IuTTIuTElHSFRcIl09cihcIkxcIiksaVtcIkdSLk0yLkxBQk9SQVRPUllcIl09cihcIkxBQlwiKSxpW1wiR1IuTTIuTEFVTkNIRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTgwLDE0MCBMMTE1LDEyMCAxMjAsMTQwXCJ9LGlbXCJHUi5NMi5MT05HIFJBTkdFXCJdPXIoXCJMUlwiKSxpW1wiR1IuTTIuTE9ORyBSQU5HRSBTVVJWRUlMTEFOQ0VcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTEwLHk6MTQwLGZvbnRzaXplOjI1LHRleHQ6XCJMUlNcIn0saVtcIkdSLk0yLkxPVyBBTFRJVFVERVwiXT1yKFwiTEFcIiksaVtcIkdSLk0yLk1FRElVTVwiXT1yKFwiTVwiKSxpW1wiR1IuTTIuTUVESVVNIEFMVElUVURFXCJdPXIoXCJNQVwiKSxpW1wiR1IuTTIuTUVESVVNIFRPIExPVyBBTFRJVFVERVwiXT1yKFwiTUxBXCIpLGlbXCJHUi5NMi5NRURJVU0gUkFOR0VcIl09cihcIk1SXCIpLGlbXCJHUi5NMi5NT1VOVEFJTlwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk05MCwxNDAgTDEwMCwxMjAgMTEwLDE0MFwifSxpW1wiR1IuTTIuTVVMVElQTEUgQUxUSVRVREVTXCJdPXIoXCJIL01BXCIpLGlbXCJHUi5NMi5NVUxUSS1DSEFOTkVMXCJdPXIoXCJNQ1wiKSxpW1wiR1IuTTIuT0YtMVwiXT1yKFwiT0YtMVwiKSxpW1wiR1IuTTIuT0YtMlwiXT1yKFwiT0YtMlwiKSxpW1wiR1IuTTIuT0YtM1wiXT1yKFwiT0YtM1wiKSxpW1wiR1IuTTIuT0YtNFwiXT1yKFwiT0YtNFwiKSxpW1wiR1IuTTIuT0YtNVwiXT1yKFwiT0YtNVwiKSxpW1wiR1IuTTIuT0YtNlwiXT1yKFwiT0YtNlwiKSxpW1wiR1IuTTIuT0YtN1wiXT1yKFwiT0YtN1wiKSxpW1wiR1IuTTIuT0YtOFwiXT1yKFwiT0YtOFwiKSxpW1wiR1IuTTIuT0YtOVwiXT1yKFwiT0YtOVwiKSxpW1wiR1IuTTIuT0YtMTBcIl09cihcIk9GLTEwXCIpLGlbXCJHUi5NMi5PRi1EXCJdPXIoXCJPRi1EXCIpLGlbXCJHUi5NMi5PUFRJQ0FMXCJdPXIoXCJPUFRcIiksaVtcIkdSLk0yLk9SLTFcIl09cihcIk9SLTFcIiksaVtcIkdSLk0yLk9SLTJcIl09cihcIk9SLTJcIiksaVtcIkdSLk0yLk9SLTNcIl09cihcIk9SLTNcIiksaVtcIkdSLk0yLk9SLTRcIl09cihcIk9SLTRcIiksaVtcIkdSLk0yLk9SLTVcIl09cihcIk9SLTVcIiksaVtcIkdSLk0yLk9SLTZcIl09cihcIk9SLTZcIiksaVtcIkdSLk0yLk9SLTdcIl09cihcIk9SLTdcIiksaVtcIkdSLk0yLk9SLThcIl09cihcIk9SLThcIiksaVtcIkdSLk0yLk9SLTlcIl09cihcIk9SLTlcIiksaVtcIkdSLk0yLkdVRVJJTExBXCJdPXIoXCJHXCIpLGlbXCJHUi5NMi5BTVBISUJJT1VTXCJdPXtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNIDY0IDE0NC45IEMgODAuNCAxNDMuOSA2My4xIDEyNSA4MS40IDEyNSBDIDEwMC4yIDEyNSA4MS40IDE0NSAxMDAuMiAxNDUgQyAxMTkgMTQ1IDEwMC4yIDEyNSAxMTkgMTI1IEMgMTM3LjEgMTI1IDEyMC4yIDE0My42IDEzNS45IDE0NC45XCIsZmlsbDohMX0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDI1LDE0NSBjIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAxOC44LDIwIDE4LjgsMCAwLC0yMCAxOC44LC0yMCAxOC44LDAgMCwyMCAyMCwyMFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNDUgMTI1IEMgNjEuNyAxMjUuOSA0NC4yIDE0NSA2Mi42IDE0NSBDIDgxLjQgMTQ1IDYyLjYgMTI1IDgxLjQgMTI1IEMgMTAwLjIgMTI1IDgxLjQgMTQ1IDEwMC4yIDE0NSBDIDExOSAxNDUgMTAwLjIgMTI1IDExOSAxMjUgQyAxMzcuOCAxMjUgMTE5IDE0NSAxMzcuOCAxNDUgQyAxNTUuOSAxNDUgMTM4LjkgMTI2LjIgMTU0LjggMTI1IFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk0gNzAuNCAxNDIuNCBDIDc0LjggMTM3IDY2LjggMTI1IDgxLjQgMTI1IEMgMTAwLjIgMTI1IDgxLjQgMTQ1IDEwMC4yIDE0NSBDIDExOSAxNDUgMTAwLjIgMTI1IDExOSAxMjUgQyAxMzMuMyAxMjUgMTI1LjcgMTM2LjYgMTI5LjcgMTQyLjEgXCIsZmlsbDohMX19W1RdLGlbXCJHUi5NMi5QQUNLIEFOSU1BTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NCwxNDAgOSwtMTUgNywxNSA3LC0xNSA5LDE1XCIsZmlsbDohMX0saVtcIkdSLk0yLlBBVElFTlQgRVZBQ1VBVElPTiBDT09SRElOQVRJT05cIl09cihcIlBFQ1wiKSxpW1wiR1IuTTIuUFJFVkVOVElWRSBNQUlOVEVOQU5DRVwiXT1yKFwiUE1cIiksaVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJQXCJ9LGlbXCJHUi5NMi5SQURJTyBSRUxBWSBMSU5FIE9GIFNJR0hUXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMzIscjoxMSxmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwiTSA5MC44IDEyOC4yIEMgOTAuMyAxMjkuMyA5MCAxMzAuNiA5MCAxMzIgQyA5MCAxMzMuNCA5MC4zIDEzNC43IDkwLjggMTM1LjggTCAxMDAgMTMyIEwgOTAuOCAxMjguMiB6IE0gMTAwIDEzMiBMIDEwOS4zIDEzNS44IEMgMTA5LjcgMTM0LjcgMTEwIDEzMy40IDExMCAxMzIgQyAxMTAgMTMwLjYgMTA5LjcgMTI5LjMgMTA5LjMgMTI4LjIgTCAxMDAgMTMyIHpcIn1dLGlbXCJHUi5NMi5SQUlMUk9BRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjUscjo1fV0saVtcIkdSLk0yLlRSQUNUT1IgVFJBSUxFUlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk02MCwxMjAgbDgwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTI1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojc1LGN5OjEyNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMzUsY3k6MTI1LHI6NX1dLGlbXCJHUi5NMi5SRUNPVkVSWSAoVU5NQU5ORUQgU1lTVEVNUylcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTI1IGMwLDIwIDYwLDIwIDYwLDBcIixmaWxsOiExfSxpW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNzUsMTI1IGM4LDAgOCwxNiAwLDE2IG04LC04IGwzNSwwIG04LC04IGMtOCwwIC04LDE2IDAsMTZcIn0saVtcIkdSLk0yLlJFRlVFTFwiXT1yKFwiS1wiKSxpW1wiR1IuTTIuUkVTQ1VFIENPT1JESU5BVElPTiBDRU5UUkVcIl09cihcIlJDQ1wiKSxpW1wiR1IuTTIuUklWRVJJTkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTI1IGMgMCwxMCA0MCwxMCA0MCwwIHpcIixmaWxsOiExfSxpW1wiR1IuTTIuUk9CT1RJQ1wiXT17dHlwZTpcInBhdGhcIixkOlwiTTEwMCwxMjEuNjhMMTE0Ljg5NSwxMzYuNDU5QzExNS4zMDksMTM2LjIwMSAxMTUuNzk4LDEzNi4wNTIgMTE2LjMyMSwxMzYuMDUyQzExNy44MTIsMTM2LjA1MiAxMTkuMDIyLDEzNy4yNjIgMTE5LjAyMiwxMzguNzUzQzExOS4wMjIsMTQwLjI0MyAxMTcuODEyLDE0MS40NTQgMTE2LjMyMSwxNDEuNDU0QzExNC44MzEsMTQxLjQ1NCAxMTMuNjIsMTQwLjI0MyAxMTMuNjIsMTM4Ljc1M0MxMTMuNjIsMTM4LjQwNyAxMTMuNjg2LDEzOC4wNzYgMTEzLjgwNSwxMzcuNzcyTDEwMy4zNzgsMTMyLjZMMTAwLjg1MSwxNDEuMjI0QzEwMS4wNzIsMTQxLjI5OCAxMDEuMjgsMTQxLjQgMTAxLjQ3MSwxNDEuNTI2QzEwMi4yMTEsMTQyLjAwOCAxMDIuNzAxLDE0Mi44NDMgMTAyLjcwMSwxNDMuNzkxQzEwMi43MDEsMTQ1LjI4MSAxMDEuNDkxLDE0Ni40OTIgMTAwLDE0Ni40OTJDOTkuNDUxLDE0Ni40OTIgOTguOTM5LDE0Ni4zMjcgOTguNTEyLDE0Ni4wNDVDOTcuNzc2LDE0NS41NjIgOTcuMjksMTQ0LjczIDk3LjI5LDE0My43ODVDOTcuMjksMTQyLjU5MiA5OC4wNjQsMTQxLjU3OSA5OS4xMzgsMTQxLjIyMkw5Ni42MTMsMTMyLjYwNkw4Ni4xODYsMTM3Ljc3OEM4Ni4zMDUsMTM4LjA4MiA4Ni4zNywxMzguNDEzIDg2LjM3LDEzOC43NTlDODYuMzcsMTQwLjI1IDg1LjE2LDE0MS40NiA4My42NjksMTQxLjQ2QzgyLjE3OSwxNDEuNDYgODAuOTY5LDE0MC4yNSA4MC45NjksMTM4Ljc1OUM4MC45NjksMTM3LjI2OCA4Mi4xNzksMTM2LjA1OCA4My42NjksMTM2LjA1OEM4NC4xOTMsMTM2LjA1OCA4NC42ODEsMTM2LjIwNyA4NS4wOTUsMTM2LjQ2NUw5OS45OTEsMTIxLjY3MUwxMDAsMTIxLjY2MkwxMDAsMTIxLjY4WlwiLHN0cm9rZTohMX0saVtcIkdSLk0yLlNFQ1VSSVRZIEZPUkNFIEFTU0lTVEFOQ0VcIl09cihcIlNGQVwiKSxpW1wiR1IuTTIuU0lOR0xFIENIQU5ORUxcIl09cihcIlNDXCIpLGlbXCJHUi5NMi5TS0lcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsMTQ1IC05LC04IG0gMjgsMCAtOSw4IG0gLTE1LC0yNCAyMCwyMCBtIDAsLTIwIC0yMCwyMFwiLGZpbGw6ITF9LGlbXCJHUi5NMi5TSE9SVCBSQU5HRVwiXT1yKFwiU1JcIiksaVtcIkdSLk0yLlNUUkFURUdJQ1wiXT1yKFwiU1RSXCIpLGlbXCJHUi5NMi5TVFJBVEVHSUMgTUlTU0lMRVwiXT1yKFwiU1wiKSxpW1wiR1IuTTIuU1VQUE9SVFwiXT1yKFwiU1BUXCIpLGlbXCJHUi5NMi5UQUNUSUNBTFwiXT1yKFwiVEFDXCIpLGlbXCJHUi5NMi5UQUNUSUNBTCBNSVNTSUxFXCJdPXIoXCJUXCIpLGlbXCJHUi5NMi5UQVJHRVQgQUNRVUlTSVRJT05cIl09cihcIlRBXCIpLGlbXCJHUi5NMi5UT1dFRFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk03MCwxMjAgbDYwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NjUsY3k6MTIwLHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEzNSxjeToxMjAscjo1fV0saVtcIkdSLk0yLlRST09QXCJdPXIoXCJUXCIpLGlbXCJHUi5NMi5UUkFDS0VEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDcwLDEyMCBsIDYwLDAgYzEwLDAgMTAsMTAgMCwxMCBsIC02MCwwIGMtMTAsMCAtMTAsLTEwIDAsLTEwXCIsZmlsbDohMX0saVtcIkdSLk0yLlRSVUNLXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTTYwLDEyMCBsODAsMFwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDo2NSxjeToxMjUscjo1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTM1LGN5OjEyNSxyOjV9XSxpW1wiR1IuTTIuVVRJTElUWVwiXT1yKFwiVVwiKSxpW1wiR1IuTTIuVkVSVElDQUwgT1IgU0hPUlQgVEFLRS1PRkYgQU5EIExBTkRJTkcgXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEzNSxmb250c2l6ZToyMCx0ZXh0OlwiVlNUT0xcIn0saVtcIkdSLk0yLlZFVEVSSU5BUllcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTE1LHk6MTMzLGZvbnRzaXplOjI1LHRleHQ6XCJWXCJ9LGlbXCJHUi5NMi5XSEVFTEVEXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjcwLGN5OjEyNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTI1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEzMCxjeToxMjUscjo1LGZpbGw6ITF9XSxpW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjcwLGN5OjEyNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMzAsY3k6MTI1LHI6NSxmaWxsOiExfV0saVtcIkdSLk0yLldPLTFcIl09cihcIldPLTFcIiksaVtcIkdSLk0yLldPLTJcIl09cihcIldPLTJcIiksaVtcIkdSLk0yLldPLTNcIl09cihcIldPLTNcIiksaVtcIkdSLk0yLldPLTRcIl09cihcIldPLTRcIiksaVtcIkdSLk0yLldPLTVcIl09cihcIldPLTVcIiksaVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDEwMCAzMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMzAsMCBtIC0zMCwtMTAgMzAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5MT05HIFJBTkdFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDExMCAzMCwwIG0gLTMwLC0yMCAzMCwwIG0gLTMwLDEwIDMwLDBcIixmaWxsOiExfSxpW1wiR1IuRVEuV0VBUE9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDgwXCIsZmlsbDohMX0saVtcIkdSLkVRLlJJRkxFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDgwIE0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5SSUZMRSBESVNNT1VOVEVEMVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5MCw5MCAxMCwtMTAgMTAsMTAgbSAtMTAsLTEwIDAsNDBcIixmaWxsOiExfSxpW1wiR1IuRVEuTUFDSElORSBHVU5cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwIDAsODAgTSA4NSw3NSAxMDAsNjAgMTE1LDc1IE0gODAsMTQwIDEyMCwxNDBcIixmaWxsOiExfSxpW1wiR1IuRVEuR1JFTkFERSBMQVVOQ0hFUlwiXT1baVtcIkdSLkVRLlJJRkxFXCJdLHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjkwLHI6MTUsZmlsbDohMX1dLGlbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gOTAsMTM1IDAsLTcwIGMgMCwtMTUgMjAsLTE1IDIwLDBcIn0saVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTQwIDMwLDAgYyAwLC0yMCAtMzAsLTIwIC0zMCwwIHogbSAxNSwtODAgMCw2NSBtIDE1LC00NSAwLDQwIG0gLTMwLC00MCAwLDQwXCIsZmlsbDohMX1dLFJ8fE58fGlbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0ucHVzaCh7dHlwZTpcInBhdGhcIixkOlwiTSA4NSw3NSAxMDAsNjAgMTE1LDc1XCIsZmlsbDohMX0pLGlbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsMTQwIDE1LC0xNSAxNSwxNSBtIC0xNSwtODAgMCw2NSBtIC0xNSwtNDUgMCw0MCBtIDMwLC00MCAwLDQwXCIsZmlsbDohMX0saVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNjAgMCw4MCBtIDE1LC02MCAwLDQwIG0gLTMwLC00MCAwLDQwXCIsZmlsbDohMX0saVtcIkdSLkVRLlJFQ09JTExFU1MgR1VOXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDc1IDE1LC0xNSAxNSwxNSBtIDAsNSAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMTUsLTYwIDAsODBcIixmaWxsOiExfSxpW1wiR1IuRVEuSE9XSVRaRVJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExNSw4MCAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMTUsLTYwIDAsNjBcIixmaWxsOiExfV0sUnx8aVtcIkdSLkVRLkhPV0lUWkVSXCJdLnB1c2goe3R5cGU6XCJwYXRoXCIsZDpcIk0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9KSxpW1wiR1IuRVEuSE9XSVRaRVIgVFJBQ0tFRFwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA3MCwxMjAgbCA2MCwwIGMxMCwwIDEwLDEwIDAsMTAgbCAtNjAsMCBjLTEwLDAgLTEwLC0xMCAwLC0xMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxNDAgMCwtODAgbSAtMTUsODAgMCwtNjUgYyAwLC0yMCAzMCwtMjAgMzAsMCBsIDAsNjVcIixmaWxsOiExfSxpW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxNDAgMzAsMCBjIDAsLTIwIC0zMCwtMjAgLTMwLDAgeiBtIDE1LC0xNSAwLC02NSBtIC0xNSw4MCAwLC02NSBjIDAsLTIwIDMwLC0yMCAzMCwwIGwgMCw2NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJSXCJ9LGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiRVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlJcIn1dLGlbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRIRUFUUkVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJUXCJ9LGlbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAxNSwtMTUgMTUsMTUgTSA4NSwxMjAgODUsNzUgYyAwLC0yMCAzMCwtMjAgMzAsMCBsIDAsNDUgbSAtMTUsNSAwLC02NVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXT1baVtcIkdSLkVRLk1JU1NJTEUgTEFVTkNIRVJcIl1dLFImJmlbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXS5wdXNoKHt0eXBlOlwicGF0aFwiLGQ6XCJtIDg1LDE0MCAzMCwwXCIsZmlsbDohMX0pLGlbXCJHUi5FUS5NT1JUQVJcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDYwIE0gODUsNzUgMTAwLDYwIDExNSw3NVwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEzMCxyOjEwLGZpbGw6ITF9XSxpW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw3NSAxNSwtMTUgMTUsMTUgbSAtMTUsLTUgMCw3MCBNIDg1LDg1IDEwMCw3MCAxMTUsODVcIixmaWxsOiExfSxpW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDExNSw5MCAwLDQwIG0gLTMwLC00MCAwLDQwIG0gMCwtNTUgMTUsLTE1IDE1LDE1IG0gLTE1LC01IDAsNzAgTSA4NSw4NSAxMDAsNzAgMTE1LDg1XCIsZmlsbDohMX0saVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxNDAgMTUsLTE1IDE1LDE1IE0gODUsODUgMTAwLDcwIDExNSw4NSBtIC0xNSwtMTUgMCw1NSBNIDg1LDc1IDEwMCw2MCAxMTUsNzVcIixmaWxsOiExfSxpW1wiR1IuRVEuTk9OLUxFVEhBTCBXRUFQT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwIDAsODAgTSA4MCw2MCBsNDAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5OT04tTEVUSEFMIEdSRU5BREUgTEFVTkNIRVJcIl09W2lbXCJHUi5FUS5OT04tTEVUSEFMIFdFQVBPTlwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo5MCxyOjE1LGZpbGw6ITF9XSxpW1wiR1IuRVEuVEFTRVJcIl09W2lbXCJHUi5FUS5OT04tTEVUSEFMIFdFQVBPTlwiXSxhKFwiWlwiKV0saVtcIkdSLkVRLldBVEVSIENBTk5PTlwiXT1baVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdLGEoXCJXXCIpXSxpW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMzAgNjAsMFwiLGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6NzUsY3k6MTM1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeToxMzUscjo1LGZpbGw6ITF9XSxpW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTMwIDYwLDBcIixmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTM1LHI6NSxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEyNSxjeToxMzUscjo1LGZpbGw6ITF9XSxpW1wiR1IuRVEuQVJNT1VSRUQgRklHSFRJTkcgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMDAgMzAsLTMwIDMwLDMwIC0zMCwzMCB6IG0gNjAsLTMwIDAsNjAgbSAtNjAsLTYwIDAsNjAgMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXT1baVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEVcIl1dLE4/aVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXS5wdXNoKHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQzJcIn0pOmlbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFIChBRlYpIENPTU1BTkQgQU5EIENPTlRST0xcIl0ucHVzaCh7dHlwZTpcInBhdGhcIixkOlwibSA4MCw5MCAyMCwxNSAwLC0xMCAyMCwxNVwiLGZpbGw6ITF9KSxpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw4MCAzMCwtMTAgMzAsMTAgbSAtNjAsLTEwIDAsNjAgNjAsMCAwLC02MFwifSxpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVIgQ09NQkFUIFNFUlZJQ0UgU1VQUE9SVCBWRUhJQ0xFXCJdPVtpW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTIwIDYwLDBcIixmaWxsOiExfV0saVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSIEVOR0lORUVSIFJFQ09OIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMzAsODAgNzAsMTMwXCJ9LGlbXCJHUi5FUS5DT01CQVQgU0VSVklDRSBTVVBQT1JUIFZFSElDTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA3MCwxMjAgMTMwLDEyMFwifSxpW1wiR1IuRVEuQVJNT1VSRUQgTUVESUNBTCBQRVJTT05ORUwgQ0FSUklFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDEwMCA2MCwwIG0gLTMwLC0zMCAwLDYwXCJ9LGlbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNjAsMTIwIDgwLDAgTSAxMjAsODAgYyAyNSwwLjIgMjUsNDAgMCw0MCBsIC00MCwwIEMgNTUsMTIwIDU1LDgwIDgwLDgwIFpcIixmaWxsOiExfSxpW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdXSxpW1wiR1IuRVEuQVJNT1VSRUQgVkVISUNMRVwiXT1hKFwiQVwiKSxpW1wiR1IuRVEuQVJNT1JFRCBDQVJSSUVSIFdJVEggVk9MQ0FOT1wiXT1hKFwiVlwiKSxpW1wiR1IuRVEuVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDgwIDYwLDAgbSAtNjAsNDAgNjAsMCBtIC02MCwtNTAgMCw2MCAwLDAgbSA2MCwtNjAgMCw2MFwifSxpW1wiR1IuRVEuQVNTQVVMVCBCUkVBQ0hFUiBWRUhJQ0xFIChBQlYpIFdJVEggQ09NQkFUIERPWkVSIEJMQURFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDk1IDMwLDI1IG0gLTMwLC02MCAwLDM1IC0zMCwyNSBtIDEwLC02MCA0MCwwIG0gLTUwLDIwIDYwLDAgbSAtNjAsNDAgNjAsMCBtIC02MCwtNTAgMCw2MCAwLDAgbSA2MCwtNjAgMCw2MFwifSxpW1wiR1IuRVEuTElHSFQgVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw4MCAwLDQwXCJ9LGlbXCJHUi5FUS5NRURJVU0gVEFOS1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSw4MCAwLDQwIG0gLTEwLC00MCAwLDQwXCJ9LGlbXCJHUi5FUS5IRUFWWSBUQU5LXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTEwLDgwIDAsNDAgbSAtMjAsLTQwIDAsNDAgbSAxMCwtNDAgMCw0MFwifSxpW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsMTAwIDMwLDAgbSAxMCwtMTAgYyAtMTMuMSwwIC0xMi40LDIwIDAsMjAgTSA3NSw5MCBjIDEyLjcsMC4zIDEyLjcsMjAuMyAwLDIwXCJ9LGlbXCJHUi5FUS5CUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTE1LDc1IC0xMCwxMCAwLDMwIDEwLDEwIG0gLTMwLC01MCAxMCwxMCAwLDMwIC0xMCwxMCBtIC0xNSwtNTUgNjAsMCAwLDYwIC02MCwwIDAsLTYwXCIsZmlsbDohMX0saVtcIkdSLkVRLkZJWEVEIEJSSURHRVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDAsNzAgMTAwLDEzMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5GT0xESU5HIEdJUkRFUiBCUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTEwLCA4MCA5MCw4MCA5MCwxMjAgMTEwLDEyMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5IT0xMT1cgREVDSyBCUklER0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gMTEwLCA4MCA5MCw4MCA5MCwxMjAgMTEwLDEyMCB6XCIsZmlsbDohMX0saVtcIkdSLkVRLkRSSUxMXCJdPWlbXCJHUi5JQy5EUklMTElOR1wiXSxpW1wiR1IuRVEuRE9aRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTAsNjAgMjAsMCBtIC0xMCwwIDAsMjAgbSAtMzAsMCA2MCwwIG0gLTYwLC0xMCAwLDYwIDAsMCBtIDYwLC02MCAwLDYwIG0gLTYwLC0xMCA2MCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLkRPWkVSIEFSTU9SRURcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTMwIDYwLDAgbSAtMzAsLTcwIDAsMTAgbSAtMzAsMTAgMzAsLTEwIDMwLDEwIG0gMCwtMTAgMCw2MCBtIC02MCwtNjAgMCw2MCAwLDAgbSAyMCwtNzAgMjAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5FQVJUSE1PVkVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw2MCAwLDIwIG0gLTI1LC0xNSA1LC01IDQwLDAgNSw1IG0gLTU1LDE1IDYwLDAgbSAtNjAsNDAgNjAsMCBtIDAsLTUwIDAsNjAgbSAtNjAsLTYwIDAsNjAgMCwwXCIsZmlsbDohMX0saVtcIkdSLkVRLk1VTFRJRlVOQ1RJT05BTCBFQVJUSE1PVkVSL0RJR0dFUlwiXT1baVtcIkdSLkVRLkVBUlRITU9WRVJcIl0sYShcIk1GXCIpXSxpW1wiR1IuRVEuTUlORSBDTEVBUklORyBFUVVJUE1FTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDgwIDAsMTUgLTMwLDI1IDYwLDAgLTMwLC0yNVwiLGZpbGw6ITF9LGlbXCJHUi5FUS5NSU5FIExBWUlORyBWRUhJQ0xFXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA5MCw4NSAyMCwzMCBtIDAsLTMwIC0yMCwzMCBtIDEwLC0zMCAwLDMwXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTB9XSxpW1wiR1IuRVEuTUlORSBTQ0FUVEVSQUJMRVwiXT1bYShcIlNcIikse3R5cGU6XCJjaXJjbGVcIixjeDo4NSxjeToxMTUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjExNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMTUsY3k6MTE1LHI6NSxmaWxsOiExfV0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDY1IGMgMCwxNSA2MCwxNSA2MCwwIGwgMCw2NSAtNjAsMCB6XCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgQkFDS0hPRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMzAsMTMwIDEwMCw4MCA3NSw5NSA3NSw5NVwifSx7dHlwZTpcInBhdGhcIixkOlwiTSA3NSwxMDUgODUsOTUgNzUsOTUgelwifV0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBGRVJSWSBUUkFOU1BPUlRFUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEwMCBjIDE1LDE1IDM1LDE1IDUwLDAgelwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIExJR0hUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTAwLDc4LjMgMTAwLDEzMFwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIE1FRElVTVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSwxMzAgMCwtNTIgTSA5NSwxMzAgbDAsLTUyXCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgSEVBVllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMTAsMTMwIDAsLTUzIG0gLTIwLDUwIDAsLTUzIG0gMTAsMS4zIDAsNTJcIn0saVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzAsMTMwIC00MCwtNDAgMCwyNSBjIDAsNSAtMTAsNSAtMTAsMFwifSxpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwNSwxMTUgMTAsLTEwXCJ9LGlbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLLkhFQVZZXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTIwLDExMCAtMTAsMTAgbSAtMTAsLTEwIDEwLC0xMCBtIC01LDE1IDEwLC0xMFwifSxpW1wiR1IuRVEuTUVESUNBTCBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsMTAwIGwgNjAsMCBNIDEwMCw3OC4zIDEwMCwxMzBcIn0saVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4NSAxMCwwIDAsMTAgMTAsMCAwLDEwIC0xMCwwIDAsMTAgLTEwLDAgMCwtMTAgLTEwLDAgMCwtMTAgMTAsMCB6XCJ9LGlbXCJHUi5FUS5NT0JJTEUgRU1FUkdFTkNZIFBIWVNJQ0lBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDEwMCBsIDYwLDAgTSAxMDAsNzguMyAxMDAsMTMwIE0gODUsODUgMTE1LDg1XCJ9LGlbXCJHUi5FUS5CVVNcIl09W2lbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sYShcIkJcIildLGlbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl09W2lbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsOTAgMCwyMCBtIC0xMCwtMTAgMTAsMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDo4NSxjeToxMzUscjo1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTI1LGN5OjEzNSxyOjUsZmlsbDohMX1dLGlbXCJHUi5FUS5XQVRFUiBWRUhJQ0xFXCJdPVtpW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsOTUgYyAxMCwwIDAsMTAgMTAsMTAgMTAsMCAwLC0xMCAxMCwtMTAgMTAsMCAwLDEwIDEwLDEwIDEwLDAgMCwtMTAgMTAsLTEwIDEwLDAgMCwxMCAxMCwxMCAxMCwwIDAsLTEwIDEwLC0xMFwifSx7dHlwZTpcImNpcmNsZVwiLGN4Ojc1LGN5OjEzNSxyOjUsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDoxMjUsY3k6MTM1LHI6NSxmaWxsOiExfV0saVtcIkdSLkVRLlRSQUlOIExPQ09NT1RJVkVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw3MCAwLDYwIDYwLDAgMCwtMzAgLTMwLDAgMCwtMzAgelwifSxpW1wiR1IuRVEuUkFJTENBUlwiXT1baVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6NzUsY3k6MTM1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4Ojg1LGN5OjEzNSxyOjV9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMTUsY3k6MTM1LHI6NX0se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEyNSxjeToxMzUscjo1fV0saVtcIkdSLkVRLkNCUk4gRVFVSVBNRU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwiTTgwLDE0MCBjMCwtMjAgMTAsLTYwIDUwLC02MyBtLTEwLDYzIGMwLC0yMCAtMTAsLTYwIC01MCwtNjMgXCIsZmlsbDohMX0se3R5cGU6XCJjaXJjbGVcIixjeDo3MCxjeTo4NSxyOjh9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTMwLGN5Ojg1LHI6OH1dLGlbXCJHUi5FUS5DT01QVVRFUiBTWVNURU1cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDEzMiAwLC0xMCAtMzUsMCAwLC01MCA3MCwwIDAsNTAgLTM1LDAgbSAtMjUsMTAgNTAsMFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5DT01NQU5EIExBVU5DSCBFUVVJUE1FTlQgKENMRSlcIl09YShcIkNMRVwiKSxpW1wiR1IuRVEuR0VORVJBVE9SIFNFVFwiXT1hKFwiR1wiKSxpW1wiR1IuRVEuR1JPVU5ELUJBU0VEIE1JRENPVVJTRSBERUZFTlNFIChHTUQpIEZJUkUgQ09OVFJPTCAoR0ZDKSBDRU5URVJcIl09YShcIkdGQ1wiKSxpW1wiR1IuRVEuSU4tRkxJR0hUIElOVEVSQ0VQVE9SIENPTU1VTklDQVRJT05TIFNZU1RFTSAoSUZJQ1MpIERBVEEgVEVSTUlOQUwgKElEVClcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4MCw4Mi40IDQ1LC0yIC00LDM3IG0gLTYsLTEgMCwtMzUgLTM0LDkgbSAxMiwyMSAwLDggTSA4MCw4Mi40IGMgMCwyNSAxNiwzNSA0MSwzNVwifSxpW1wiR1IuRVEuTEFTRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsNTUgMCwyNSAxMCw1IC0yMCw1IDIwLDUgLTIwLDUgMTAsNSAwLDE1IDEwLDUgLTIwLDUgMjAsNSAtMjAsNSAyMCw1IE0gOTAsNjUgMTAwLDU1IDExMCw2NVwifSxpW1wiR1IuRVEuVEVOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyNC40IDEwLC0zNyAyNSwtMTAgMjUsMTAgMTAsMzcgelwifSxpW1wiR1IuRVEuVEVOVCBDSVZJTElBTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEyMCAxMCwtMzAgMTUsLTEwIDE1LDEwIDEwLDMwIHpcIn0saVtcIkdSLkVRLlRFTlQgTUlMSVRBUllcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTIwIDEwLC0zMCAxNSwtMTAgMTUsMTAgMTAsMzAgelwifSxpW1wiR1IuRVEuVU5JVCBERVBMT1lNRU5UIFNISVBNRU5UU1wiXT1hKFwiRFBMWVwiKSxpW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwxMjUgMCwtMjBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAzLDEwNSAwLDIwIG0gLTYsLTIwIDAsMjBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDYsMTA1IDAsMjAgbSAtMTIsLTIwIDAsMjAgbSA2LC0yMCAwLDIwXCJ9LGlbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDAsMTA1IDAsMjAgbSAtMTAsLTEwIDEwLDBcIn0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gOTAsMTI1IDIwLDAgbSAtMjAsMCBjIDAsLTQuMSAtMy40LC03LjUgLTcuNSwtNy41IC00LjEsMCAtNy41LDMuNCAtNy41LDcuNSAwLDQuMSAzLjQsNy41IDcuNSw3LjUgNC4xLDAgNy41LC0zLjQgNy41LC03LjUgeiBtIDM1LDAgNSwwIDAsLTIwIC0yMCwwIDAsLTIwIC0yMCwwIDAsMjAgLTIwLDAgMCwyMCA1LDAgbSA1MCwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSA5NSw5MCAwLDE1IDEwLDAgMCwtMTUgelwifV0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAtMjAsMCAtMjAsMCAwLC0yMCAtMjAsMCAwLDIwIDAsMjAgNSwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSA3NSw5MCAwLDE1IDEwLDAgMCwtMTUgelwifV0saVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAwLC0yMCAtMjAsMCAtMjAsMCAtMjAsMCAwLDIwIDAsMjAgNSwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tld2lkdGg6MixkOlwibSAxMTUsOTAgMCwxNSAxMCwwIDAsLTE1IHogbSAtMjAsMCAwLDE1IDEwLDAgMCwtMTUgeiBtIC0yMCwwIDAsMTUgMTAsMCAwLC0xNSB6XCJ9XSxpW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSBjIDAsLTQuMSAtMy40LC03LjUgLTcuNSwtNy41IC00LjEsMCAtNy41LDMuNCAtNy41LDcuNSAwLDQuMSAzLjQsNy41IDcuNSw3LjUgNC4xLDAgNy41LC0zLjQgNy41LC03LjUgeiBtIDM1LDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAtMzUsMCAyMCwwIG0gMTUsMCA1LDAgMCwtMjAgMCwtMjAgLTIwLDAgLTIwLDAgMCwyMCAtMjAsMCAwLDIwIDUsMFwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjIsZDpcIm0gOTUsOTAgMCwxNSAxMCwwIDAsLTE1IHpcIn1dLGlbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLGQ6XCJtIDkwLDEyNSAyMCwwIG0gLTIwLDAgYyAwLC00LjEgLTMuNCwtNy41IC03LjUsLTcuNSAtNC4xLDAgLTcuNSwzLjQgLTcuNSw3LjUgMCw0LjEgMy40LDcuNSA3LjUsNy41IDQuMSwwIDcuNSwtMy40IDcuNSwtNy41IHogbSAzNSwwIGMgMCwtNC4xIC0zLjQsLTcuNSAtNy41LC03LjUgLTQuMSwwIC03LjUsMy40IC03LjUsNy41IDAsNC4xIDMuNCw3LjUgNy41LDcuNSA0LjEsMCA3LjUsLTMuNCA3LjUsLTcuNSB6IG0gMCwwIDUsMCAwLC0yMCAtNjAsMCAwLDIwIDUsMCBtIDE1LC0yMCA1LC0xNVwifSxpW1wiR1IuRVEuUEFDSyBBTklNQUxcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCwxMjUgMTUsLTUwIDE1LDUwIDE1LC01MCAxNSw1MCBcIn0saVtcIkdSLkVRLk1JU1NJTEUgU1VQUE9SVFwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTAwLGZvbnRzaXplOjIwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOjIwLHRleHQ6XCJTUFRcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFRSQU5TTE9BREVSXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1TTFwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDcwIDUwLDAgbSAtMjUsMTAgYyAwLC01IDAsLTEwIDAsLTEwXCJ9XSxpW1wiR1IuRVEuTUlTU0lMRSBUUkFOU1BPUlRFUlwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1NSw4NSA5MCwwXCJ9XSxpW1wiR1IuRVEuTUlTU0lMRSBDUkFORS9MT0FESU5HIERFVklDRVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3NSw4MCAyNSwtMjAgYyAwLDAgMCwxNSAwLDE1IGwgNSwwIDAsLTVcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFBST1BFTExBTlQgVFJBTlNQT1JURVJcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjkwLHk6MTEwLGZvbnRzaXplOjIwLHRleHQ6XCJNU0xcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjAsMTE1IDAsLTE1IC0xMCwtMTAgMjAsMCAtMTAsMTBcIn1dLGlbXCJHUi5FUS5NSVNTSUxFIFdBUkhFQUQgVFJBTlNQT1JURVJcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMCxmb250c2l6ZToyMCx0ZXh0OlwiTVNMXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZToyMCx0ZXh0OlwiV0hEXCJ9XSxpW1wiR1IuRVEuTEFORCBNSU5FXCJdPU4/e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjIsZmlsbDohMX06W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsNjUgNjAsMCAtMzAsNjUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5MCxmb250ZmFtaWx5OlwiQXJpYWxcIixmb250c2l6ZTozMCx0ZXh0OlwiTVwifV0saVtcIkdSLkVRLkFOVElQRVJTT05ORUwgTEFORCBNSU5FXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMn0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMTcsODIgbDIwLC0xOCAtMTgsMjV6IE04Myw4MiBsLTIwLC0xOCAxOCwyNXpcIixzdHJva2U6ITF9XSxpW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkUgTEVTUyBUSEFOIExFVEhBTFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MjIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIk0xMTcsODIgbDIwLC0xOCAtMTgsMjV6IE04Myw4MiBsLTIwLC0xOCAxOCwyNXpcIixzdHJva2U6ITF9XSxpW1wiR1IuRVEuQU5USVRBTksgTUlORVwiXT17dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoyMn0saVtcIkdSLkVRLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRVwiXT1hKFwiSUVEXCIpLGlbXCJHUi5FUS5MQU5EIE1JTkVTXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIk1cIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlI/XCJtIDEzNSw3MCAtNzAsMCAzNSw3MCB6XCI6XCJtIDY1LDEzMCA3MCwwIC0zNSwtNzAgelwifV0saVtcIkdSLkVRLlNFTlNPUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsNjAgYyAwLDE1IDI1LDQwIDQwLDQwIC0xNSwwIC00MCwyNSAtNDAsNDAgMCwtMTUgLTI1LC00MCAtNDAsLTQwIDE1LDAgNDAsLTI1IDQwLC00MCB6XCJ9LGlbXCJHUi5FUS5TRU5TT1IgRU1QTEFDRURcIl09W3MuX3NjYWxlKC43NSxpW1wiR1IuRVEuU0VOU09SXCJdKSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDc1IDEwLC0xNSAxMCwxNSAxMCwtMTUgMTAsMTUgMTAsLTE1IDEwLDE1XCJ9XSxpW1wiR1IuRVEuUkFEQVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk03Miw5NSBsMzAsLTI1IDAsMjUgMzAsLTI1IE03MCw3MCBjMCwzNSAxNSw1MCA1MCw1MFwiLGZpbGw6ITF9LGlbXCJHUi5FUS5BTlRFTk5BRVwiXT1bXSxpW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxzdHJva2U6byxkOlwibSAxMTAsOTUgMTAsMCBtIC0xMCwxMCAxMCwwIG0gLTEwLDEwIDEwLDAgbSAtMTAsLTMwIDEwLDAgbSAtMTAsLTUgLTEwLDEwIC0zMCwwIDAsMjAgMzAsMCAxMCwxMCB6XCJ9LGlbXCJHUi5JTi5JQy5FTERFUiBDQVJFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMC4xLDExOS4xIGMgMCwtNi4zIDIuMywtOC4yIDMuOSwtMTIuNiAxLC0yLjYgMS42LC0zLjMgMS44LC02LjUgMC4yLC0yLjQgMC45LC00LjcgMC45LC03LjIgdiAtMi42IGMgMCwtMi42IC0yLjIsLTguOSAtMy4zLC0xMC41IC0xLjMsLTIgLTQuOCwtNS40IC02LjcsLTYuOSAtMi4yLC0xLjggLTUuNCwtNC42IC04LjIsLTUuNiAtMS42LC0wLjUgLTkuOCwtMi40IC0xMS40LC0yLjMgbCAtNS43LDAuNiB2IDAuOCBjIDAsMC44IDIsMi43IDIuNCwzLjMgMCwzLjMgMC44LDYuOCAtMS4zLDguNCAtMi4yLDEuNiAtMi44LDMuNCAtMy44LDYuMyAtMC40LDEgLTAuOSwzLjEgLTEsNCAtMC4yLDEgLTAuMiw0IC0wLjQsNC42IC0xLjEsMi40IC0yLjYsNC4yIC0zLjgsNi40IGwgLTUuMSwwLjUgYyAtMi4xLDMuMiAtNC42LDQuMSAtNC42LDkuNiB2IDI2LjQgYyAwLjYsMC4yIDAuNCwwLjIgMC45LDAuMiAwLjUsMCAwLjMsLTAuMSAwLjksLTAuMiB2IC0yNy41IGMgMCwtMC43IDAuOCwtMyAxLjEsLTMuNSAwLjQsMC4yIDAuOCwwLjYgMS4zLDAuNiAwLjMsMCAxLjEsLTAuMyAxLjMsLTAuNCBsIDIuNiwwLjkgMC44LC0wLjYgMC42LDIuNSBjIDAuNCwwLjMgMC40LDAuNSAwLjgsMC41IGggMC40IGMgMC41LDAgMC42LC0wLjIgMC42LC0wLjYgdiAtMC40IGMgMCwtMSAtMS4yLC0zIC0xLjUsLTMuNyAxLjIsLTIuNSA2LjMsLTIuNiA4LjIsLTUuOCAwLjksLTEuNiAxLjgsLTMgMi42LC00LjUgMC40LC0wLjkgMi4zLC00LjEgMi40LC00LjQgaCA0LjQgYyAyLjMsMCAyLjEsMi41IDIuNiw0LjIgMC42LDIgMiwyIDIsNC42IDAsMi44IC0yLjksNyAtNCw5IC0wLjMsMC43IC0zLjksOC44IC0zLjksOC45IHYgMiBjIDAsMyAyLjYsOS4xIDIuNiwxMS4yIHYgMi4yIGMgLTEuMiwwLjMgLTYuOCwyLjQgLTYuOCwzLjUgMCwwLjMgMC40LDAuNiAwLjksMC42IGggNi44IGMgMi4zLDAgNC41LC0xIDYuNiwtMS4xIHYgLTMgYyAwLC0wLjYgLTEuMSwtMi4yIC0xLjEsLTMuNyAtMC45LC0xLjMgLTEuOCwtNiAtMS44LC04LjIgMCwtMy4yIDEuMiwtNS40IDIuNSwtNy40IDIuNSwtNCAwLjQsLTIuMyA0LjYsLTUuMSBsIDEuOCwxLjcgYyAtMSwxLjggLTIuMywzLjcgLTIuMyw2LjQgdiA1LjkgaCAwLjQgdiAwLjYgYyAwLDAuOSA1LDkgNS43LDEwLjMgLTEuNSwyLjMgLTYuNywxLjYgLTYuOCw1IGggNy41IGMgMS4yLDAgMy4zLC0xIDQuNSwtMS40IDEuNiwtMC41IDIuOSwtMS4xIDIuOSwtMyAwLC0wLjcgLTIuOSwtNC42IC0zLjYsLTUuNyAtMC4zLC0wLjQgLTIuNCwtNiAtMi40LC02LjYgdiAtMC40IHogbSAtNDUuMywtNDcuOSB2IDAuNiBjIDAsNC4zIDMuNyw3LjkgOC4xLDcuOSBoIDAuMiBjIDMuNywwIDcuNywtMy42IDcuNywtNyB2IC0yLjIgYyAwLC0zLjIgLTMuOSwtNi44IC03LjUsLTYuOCBoIC0xLjIgYyAtMy40LDAgLTcuMyw0IC03LjMsNy41IHpcIixzdHJva2U6ITF9LGlbXCJHUi5JTi5JQy5SQVcgTUFURVJJQUwgUFJPRFVDVElPTi9TVE9SQUdFXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5MCxmb250c2l6ZTozMCx0ZXh0OlwiUFNcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJSTVwifV0saVtcIkdSLklOLklDLk1JTkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDg1IDEwLDEwIDUsLTUgYyAtNSwtNSAtMTAsLTUgLTE1LC01IHogTSA5NSw4NSA4NSw5NSA4MCw5MCBjIDUsLTUgMTAsLTUgMTUsLTUgeiBtIC01LDUgMzAsMzAgbSAtNDAsMCAzMCwtMzBcIn0saVtcIkdSLklOLklDLlBST0NFU1NJTkcgRkFDSUxJVFlcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjkwLGZvbnRzaXplOjMwLHRleHQ6XCJQUk9DXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyMCxmb250c2l6ZTozMCx0ZXh0OlwiRkFDXCJ9XSxpW1wiR1IuSU4uSUMuVVRJTElUWSBGQUNJTElUWVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlVUSUxcIn0saVtcIkdSLklOLklDLlJFU0VBUkNIXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiUiZEXCJ9LGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlNcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsODAgMTAsMjAgLTEwLDAgMTAsMjBcIixmaWxsOiExfSxpW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDYwLjUgYyAtMTYuNCwwIC0yOS42LDEzLjIgLTI5LjYsMjkuNiAwLDEyLjggOC4zLDIzLjkgMTkuNywyNy44IGwgMCwxOS43IGMgMy4yLDEuMiA2LjMsMS44IDkuOSwxLjggMy42LDAgNi43LC0wLjYgOS45LC0xLjggbCAwLC0xOS44IGMgMTEuNSwtMy45IDE5LjgsLTE1IDE5LjcsLTI3LjggMCwtMTYuNCAtMTMuMiwtMjkuNiAtMjkuNiwtMjkuNiB6XCIsZmlsbDohMX0saVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJOXCJ9LGlbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUiBEQU1cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJIXCJ9LGlbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUiBGT1NTSUxcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTA1LGZvbnRzaXplOjQwLHRleHQ6XCJGXCJ9LGlbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIk0gOTAuNCwxMTkgQyA4NC4yLDExNSA4MCwxMDkgODAsMTAxIGwgMjAsMCAtOS42LDE4IHogbSAxOS42LDAgLTEwLC0xOCAyMCwwIGMgMCw4IC00LDE0IC0xMCwxOCB6IE0gMTAwLDEwMSA4OS43LDgzLjggYyAzLC0yIDYuNSwtMyAxMC4zLC0zIDQsMCA3LDEgMTAsMyBMIDEwMCwxMDEgWlwiOlwiTSA4OS45LDgyLjUgMTEwLDgyLjcgODkuNywxMTcuMSA4MCw5OS45IDEyMC4xLDEwMCAxMTAsMTE3LjMgelwiLGZpbGw6ITF9LGlbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZIFdFQVBPTlMgR1JBREVcIl09e3R5cGU6XCJwYXRoXCIsZDpSP1wiTSA5MC40LDExOSBDIDg0LjIsMTE1IDgwLDEwOSA4MCwxMDEgbCAyMCwwIC05LjYsMTggeiBtIDE5LjYsMCAtMTAsLTE4IDIwLDAgYyAwLDggLTQsMTQgLTEwLDE4IHogTSAxMDAsMTAxIDg5LjcsODMuOCBjIDMsLTIgNi41LC0zIDEwLjMsLTMgNCwwIDcsMSAxMCwzIEwgMTAwLDEwMSBaXCI6XCJNIDg5LjksODIuNSAxMTAsODIuNyA4OS43LDExNy4xIDgwLDk5LjkgMTIwLjEsMTAwIDExMCwxMTcuMyB6XCJ9LGlbXCJHUi5JTi5JQy5BSVJDUkFGVCBQUk9EVUNUSU9OICYgQVNTRU1CTFlcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk1LjEsMTA5LjMgYyAwLDAgLTIwLjgsNC45IC0zMC4xLDYuNyAtMi4yLDAuNCAtNS43LDAuMiAtNi41LC0yIC0wLjQsLTEuMSAzLjMsLTYuNiA2LjUsLTcuMyA4LjcsLTEuOSAyNS43LC01LjUgMjUuNywtNS41IGwgMy4xLC0xNi4xIDQsLTAuOCAwLjMsMTUuOSAyNS42LC01LjggNi41LC0xMy4yIDUuMywtMS40IC0zLjMsMTYuMSAxNCw0LjggLTQuMywxLjIgLTEzLjcsLTIuOCAtMjMuNiw2LjcgMzEuNiwxMS44IC01LjUsMi41IHpcIn0saVtcIkdSLklOLklDLkJSSURHRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA3MCwxMTUgMTAsLTEwIDQwLDAgMTAsMTAgbSAtNjAsLTMwIDEwLDEwIDQwLDAgMTAsLTEwXCIsZmlsbDohMX0saVtcIkdSLklOLklDLkJBU0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsODUgNTAsMzAgbSAtNTAsMCA1MCwtMzBcIixmaWxsOiExfSxpW1wiR1IuSU4uSUMuU0VBIFNVUkZBQ0UgSU5TVEFMTEFUSU9OLCBPSUwgUklHL1BMQVRGT1JNXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMCwtNDAgbSAyNSw0MCAwLDE1IG0gLTM1LDAgMCwtMTUgNTAsMCAwLDE1XCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gODUsOTAgMTUsMCAwLDE1IC0xNSwwIDAsLTE1XCJ9XSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkvQ0lWSUxJQU4uTUFURVJJRUxcIl09YShcIk1BVFwiKSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkvQ0lWSUxJQU4uUFJJTlRFRCBNRURJQVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6OTAscjoxMCxmaWxsOiExfSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMTAscjoxMCxmaWxsOiExfSx7dHlwZTpcInBhdGhcIixkOlwibSA2NSwxMDAgNzUsMFwiLGZpbGw6ITF9XSxpW1wiR1IuSU4uSUMuSU5GUkFTVFJVQ1RVUkUuQkFOS0lORyBGSU5BTkNFIEFORCBJTlNVUkFOQ0UgIElORlJBU1RSVUNUVVJFLkVDT05PTUlDIElORlJBU1RSVUNUVVJFIEFTU0VUXCJdPWEoXCJFQ09OXCIpLGlbXCJHUi5JTi5JQy5JTkZSQVNUUlVDVFVSRS5URUxFQ09NTVVOSUNBVElPTlMgSU5GUkFTVFJVQ1RVUkUuVEVMRUNPTU1VTklDQVRJT05TXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDEwNSAyMCwwIDAsMCBtIC0yNSwxNSAxNSwtMzAgMTUsMzAgbSAtNTUsLTQwIDI1LDEwIDAsLTEwIDE1LDEwIDE1LC0xMCAwLDEwIDI1LC0xMFwiLGZpbGw6ITF9LGlbXCJHUi5JTi5NMS5SQURJT0xPR0lDQUxcIl09bChcIlJcIiksaVtcIkdSLklOLk0xLkNPQUxcIl09bChcIkNPXCIpLGlbXCJHUi5JTi5NMS5HRU9USEVSTUFMXCJdPWwoXCJHVFwiKSxpW1wiR1IuSU4uTTEuSFlEUk9FTEVDVFJJQ1wiXT1sKFwiSFlcIiksaVtcIkdSLklOLk0xLk5BVFVSQUwgR0FTXCJdPWwoXCJOR1wiKSxpW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw3NSAwLC0xMCAtNiwtMTAgMTIsMCAtNiwxMFwiLGZpbGw6ITF9LGlbXCJHUi5JTi5NMS5DSVZJTElBTlwiXT1sKFwiQ0lWXCIpLGlbXCJHUi5JTi5NMS5DSVZJTElBTiBURUxFUEhPTkVcIl09bChcIlRcIiksaVtcIkdSLklOLk0xLkNJVklMSUFOIFRFTEVWSVNJT05cIl09bChcIlRWXCIpLGlbXCJHUi5JTi5NMi5DSEVNSUNBTCBXQVJGQVJFIFBST0RVQ1RJT05cIl09cihcIkNcIiksaVtcIkdSLklOLk0yLk5VQ0xFQVIgV0FSRkFSRSBQUk9EVUNUSU9OXCJdPXIoXCJOXCIpLGlbXCJHUi5JTi5NMi5SQURJT0xPR0lDQUwgV0FSRkFSRSBQUk9EVUNUSU9OXCJdPXIoXCJSXCIpLGlbXCJHUi5JTi5NMi5BVE9NSUMgRU5FUkdZIFJFQUNUT1JcIl09cihcIkFcIiksaVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXT1yKFwiUFwiKSxpW1wiR1IuSU4uTTIuTlVDTEVBUiBNQVRFUklBTCBTVE9SQUdFXCJdPXIoXCJTXCIpLGlbXCJHUi5JTi5NMi5DSEVNSUNBTCAmIEJJT0xPR0lDQUwgV0FSRkFSRVwiXT1yKFwiQlwiKSxpW1wiR1IuSU4uTTIuU0hJUCBDT05TVFJVQ1RJT05cIl09cihcIllSRFwiKSxpW1wiR1IuSU4uTTIuV0VBUE9OUyBHUkFERSBQUk9EVUNUSU9OXCJdPXIoXCJXXCIpLGlbXCJTT0YuSUMuVU5ERVJXQVRFUiBERU1PTElUSU9OIFRFQU1cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMyLHRleHQ6XCJVRFRcIn0saVtcIlNPRi5NMi5BVFRBQ0tcIl09cihcIkFcIiksaVtcIlNPRi5NMi5SRUZVRUxcIl09cihcIktcIiksaVtcIlNPRi5NMi5VVElMSVRZXCJdPXIoXCJVXCIpLGlbXCJTT0YuTTIuVlNUT0xcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTM1LGZvbnRzaXplOjIwLHRleHQ6XCJWU1RPTFwifSxpW1wiU09GLk0yLkNPTUJBVCBTRUFSQ0ggQU5EIFJFU0NVRVwiXT1yKFI/XCJDU0FSXCI6XCJIXCIpLGlbXCJTVC5JQy5BUlJFU1RcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTIuNSwxMDAgMTUsMCBtIC0yLjUsLTEwIGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTUsNSAwLDIwIG0gMjAsLTE1IGMgMCwxMSAtOSwyMCAtMjAsMjAgLTExLDAgLTIwLC05IC0yMCwtMjAgMCwtMTEgOSwtMjAgMjAsLTIwIDExLDAgMjAsOSAyMCwyMCB6XCIsZmlsbDohMX0saVtcIlNULklDLkFSU09OL0ZJUkVcIl09Uj9be3R5cGU6XCJwYXRoXCIsZDpcIm0gODQuNiwxMDEuNiBjIDEuMywyMy4xIDMxLDIzLjIgMzAuNywtMS45IC0xLjUsMi4xIC00LjYsNi41IC04LjEsNy4zIDEuOSwtMi40IDIuNiwtOC41IDIuNCwtMTIuOSAtMS43LDMuNCAtNCw3LjkgLTcsNy44IDEuNywtNC4zIDIuNywtOS40IC0wLjUsLTEzLjcgLTAuMiwzIDAuOCw3LjEgLTEuOSw3IC0yLjcsLTAuMSAtMi45LC00LjQgLTEuMSwtMTAuOCAtNCw0LjEgLTYuMiw5LjggLTMuOCwxNy41IC0xLjksLTAuMiAtNC40LC0xLjkgLTcsLTcuOCAtMS41LDQuOSAxLjIsOS42IDMuMiwxMy43IC0yLjQsLTEuMSAtNiwtMyAtNywtNi4yIHpcIixzdHJva2U6ITF9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5Ojc1LGZvbnRzaXplOjI1LHRleHQ6XCJBU05cIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiRklSRVwifSxpW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyNywxMjcgNSw1IG0gLTE1LC0xNSA1LDUgbSAtMTUsLTE1IDUsNSBtIC0xNSwtMTUgNSw1IG0gLTE1LC0xNSA1LDUgbSAtMTUsLTE1IDUsNSBtIC0xNSwtMTUgNSw1XCIsZmlsbDohMX0saVtcIlNULklDLkJMQUNLIExJU1QgTE9DQVRJT05cIl09YShcIkJMS1wiKSxpW1wiU1QuSUMuQkxBQ0sgTUFSS0VUSU5HXCJdPVt7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo5NSxmb250c2l6ZTozMCx0ZXh0OlwiQkxLXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiTUtUXCJ9XSxpW1wiU1QuSUMuQk9NQlwiXT1hKFwiQk9NQlwiKSxpW1wiU1QuSUMuQk9PQlkgVFJBUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSwxMDUgMTUsLTI1IDE1LDI1IG0gLTM1LDUgYyAwLC0xMCA0MCwtMTAgNDAsMCAwLDEwIC00MCwxMCAtNDAsMCB6XCIsZmlsbDohMX0saVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4NSAwLDMwIG0gLTM1LC0xNSA0NSwwIG0gMjAsMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgelwiLGZpbGw6ITF9LGlbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdPWEoXCJNQVNTXCIpLGlbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA5NSw4NSA1LC01IDUsNSBtIC01LC01IDAsMzAgbSAtMTUsMCAzMCwwIG0gNSw1IGMgMCwyLjggLTIuMiw1IC01LDUgLTIuOCwwIC01LC0yLjIgLTUsLTUgMCwtMi44IDIuMiwtNSA1LC01IDIuOCwwIDUsMi4yIDUsNSB6IG0gLTMwLDAgYyAwLDIuOCAtMi4yLDUgLTUsNSAtMi44LDAgLTUsLTIuMiAtNSwtNSAwLC0yLjggMi4yLC01IDUsLTUgMi44LDAgNSwyLjIgNSw1IHpcIixmaWxsOiExfSxpW1wiU1QuSUMuRFJVRyBSRUxBVEVEIEFDVElWSVRJRVNcIl09YShcIkRSVUdcIiksaVtcIlNULklDLkVYUExPU0lPTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTAsNTUgNSwyMCAxNSwtMTAgMCwxNSAxNSw1IC0xNSwxMCAxNSwxMCAtMTUsNSA1LDE1IC0yMCwtNSAtNSwyMCAtMTAsLTE1IC0xMCwyMCAtNSwtMjUgLTIwLDEwIDUsLTE1IEwgNTUsMTA1IDcwLDk1IDYwLDg1IDcwLDgwIDcwLDY1IDg1LDc1IDkwLDU1IDEwMCw3MCB6XCIsZmlsbDohMX0saVtcIlNULklDLkVYVE9SVElPTlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMzAsZm9udHNpemU6ODAsdGV4dDpcIiRcIn0saVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMDUsODUgYyAtNSwxMCAtNSwyMCAwLDMwIG0gMCwtMzAgYyAtMjAsMCAtMjAsMzAgMCwzMFwiLGZpbGw6ITF9LHtVbmtub3duOnt0eXBlOlwicGF0aFwiLGQ6XCJNMzUsMTIwIGwxMzAsMCBcIixmaWxsOiExfSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZDpcIk0yNSwxMjAgbDE1MCwwIFwiLGZpbGw6ITF9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZDpcIk00NSwxMjAgbDExMCwwIFwiLGZpbGw6ITF9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZDpcIk01MCwxMjAgbDEwMCwwIFwiLGZpbGw6ITF9fVtUXV0saVtcIlNULklDLkdSQUZGSVRJXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMCw4MCBjIC0xMCwwIC0xMCwxMCAwLDEwIDEwLDAgMTAsMTAgMCwxMCAtMTAsMCAtMTAsMTAgMCwxMCAxMCwwIDEwLDEwIDAsMTAgTSA5MCw4MCBjIC0xMCwwIC0xMCwxMCAwLDEwIDEwLDAgMTAsMTAgMCwxMCAtMTAsMCAtMTAsMTAgMCwxMCAxMCwwIDEwLDEwIDAsMTBcIixmaWxsOiExfSxpW1wiU1QuSUMuR1JPVVBcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTMzLDkwIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwIG0gLTUyLC0xMi4zIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwIG0gMjMsLTcuMyBjIDAsMTAgLTE1LDEwIC0xNSwwIDAsLTEwIDE1LC0xMCAxNSwwIHogbSAtOCw3LjMgMCwyNSBtIC0xMCwtMjAgMjAsMFwiLGZpbGw6ITF9LGlbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiEhUiYmRyxkOlwibSA3MCw5NSAwLDEwIDY1LDAgMCwtMTAgeiBtIDU1LDEwIDAsMTAgNSwwIDAsLTEwIHogbSAwLC0xMCAwLC0xMCA1LDAgMCwxMCB6IG0gLTQ1LDEwIDAsMTUgMTAsMCAwLC0xNSB6IG0gMCwtMTAgMCwtMTUgMTAsMCAwLDE1IHpcIn0saVtcIlNULklDLkhJSkFDS0lORyAoQk9BVClcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP0c6IUMmJkcsZDpcIm0gMTA1LDgwIDAsMjAgMjAsMCB6IG0gLTUsMjUgMCwtMjUgbSAtMzAsMjUgMTAsMTUgNDAsMCAxMCwtMTUgelwifSxpW1wiU1QuSUMuR1JBWSBMSVNUIExPQ0FUSU9OXCJdPWEoXCJHUkFZXCIpLGlbXCJTVC5JQy5JRURcIl09YShcIklFRFwiKSxpW1wiU1QuSUMuSU5ESVZJRFVBTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDgsOTAgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDBcIixmaWxsOiExfSxpW1wiU1QuSUMuSU5URVJOQUwgU0VDVVJJVFkgRk9SQ0VcIl09YShcIklTRlwiKSxpW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDEwOCw5MCBjIDAsMTAgLTE1LDEwIC0xNSwwIDAsLTEwIDE1LC0xMCAxNSwwIHogbSAtOCw3LjMgMCwyNSBtIC0xMCwtMjAgMjAsMFwiLGZpbGw6ITF9LHtVbmtub3duOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01MCw2NSAxNTAsMTM1XCJ9LEZyaWVuZDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNMjUsNTAgMTc1LDE1MFwifSxOZXV0cmFsOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk00NSw0NSAxNTUsMTU1XCJ9LEhvc3RpbGU6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTU3LDcwIDE0MywxMzBcIn19W1RdXSxpW1wiU1QuSUMuS0lMTElORyBWSUNUSU1TXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSAxMzMsOTAgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDAgbSAtNTIsLTEyLjMgYyAwLDEwIC0xNSwxMCAtMTUsMCAwLC0xMCAxNSwtMTAgMTUsMCB6IG0gLTgsNy4zIDAsMjUgbSAtMTAsLTIwIDIwLDAgbSAyMywtNy4zIGMgMCwxMCAtMTUsMTAgLTE1LDAgMCwtMTAgMTUsLTEwIDE1LDAgeiBtIC04LDcuMyAwLDI1IG0gLTEwLC0yMCAyMCwwXCIsZmlsbDohMX0se1Vua25vd246e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTUwLDY1IDE1MCwxMzVcIn0sRnJpZW5kOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0yNSw1MCAxNzUsMTUwXCJ9LE5ldXRyYWw6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTQ1LDQ1IDE1NSwxNTVcIn0sSG9zdGlsZTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTcsNzAgMTQzLDEzMFwifX1bVF1dLGlbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA2NSw5NSA3MCwwIG0gMCwxMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgeiBtIC01MCwwIGMgMCw1LjUgLTQuNSwxMCAtMTAsMTAgLTUuNSwwIC0xMCwtNC41IC0xMCwtMTAgMCwtNS41IDQuNSwtMTAgMTAsLTEwIDUuNSwwIDEwLDQuNSAxMCwxMCB6XCIsZmlsbDohMX0saVtcIlNULklDLk1BU1MgR1JBVkUgTE9DQVRJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNzcuNSw5MCAxMCwwIG0gLTUsLTUgMCwxNSBtIDcuNSwtMjAgMCwzMCAtMTUsMCAwLC0zMCB6IG0gMjIuNSwxMCAxMCwwIG0gLTUsLTUgMCwxNSBtIC03LjUsLTIwIDAsMzAgMTUsMCAwLC0zMCB6IG0gLTE1LDIwIDEwLDAgbSAtNSwtNSAwLDIwIG0gLTcuNSwtMjUgMTUsMCAwLDMwIC0xNSwwIHpcIixmaWxsOiExfSxpW1wiU1QuSUMuTUlORSBMQVlJTkdcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg1IDgwLDAgMCwzMCAtODAsMCB6XCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTM1LDEwMCBjIDAsNS41IC00LjUsMTAgLTEwLDEwIC01LjUsMCAtMTAsLTQuNSAtMTAsLTEwIDAsLTUuNSA0LjUsLTEwIDEwLC0xMCA1LjUsMCAxMCw0LjUgMTAsMTAgeiBtIC0yNSwwIGMgMCw1LjUgLTQuNSwxMCAtMTAsMTAgLTUuNSwwIC0xMCwtNC41IC0xMCwtMTAgMCwtNS41IDQuNSwtMTAgMTAsLTEwIDUuNSwwIDEwLDQuNSAxMCwxMCB6IG0gLTI1LDAgYyAwLDUuNSAtNC41LDEwIC0xMCwxMCAtNS41LDAgLTEwLC00LjUgLTEwLC0xMCAwLC01LjUgNC41LC0xMCAxMCwtMTAgNS41LDAgMTAsNC41IDEwLDEwIHpcIixzdHJva2U6ITF9XSxpW1wiU1QuSUMuUEFUUk9MTElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMzEsOTcgMCwtMTQgNSwwIGMgNCwwIDQsNyAwLDcgbCAtNSwwIG0gLTcxLDE1IDE1LDEwIE0gNjAsMTA1IDc1LDk1IG0gLTE1LDEwIDQwLDAgLTE1LC0xNSA0MCwwXCIsZmlsbDohMX0saVtcIlNULklDLlBPSVNPTklOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw5NSBjIDAsLTIwIDMwLC0yMCAzMCwwIDAsMjAgLTMwLDIwIC0zMCwwIHogbSAtMTUsMTAgNjAsMTUgbSAtNjAsMCA2MCwtMTVcIixmaWxsOiExfSxpW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ISFSJiZHLHN0cm9rZTpvLGQ6XCJtIDExMCw5NSAxMCwwIG0gLTEwLDEwIDEwLDAgbSAtMTAsMTAgMTAsMCBtIC0xMCwtMzAgMTAsMCBtIC0xMCwtNSAtMTAsMTAgLTMwLDAgMCwyMCAzMCwwIDEwLDEwIHpcIn0saVtcIlNULklDLlJBRElPIEFORCBURUxFVklTSU9OIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXT1baVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXSx7VW5rbm93bjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNTAsNjUgMTAwLDExMCAxMDAsOTAgMTUwLDEzNVwifSxGcmllbmQ6e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTTI1LDUwIDEwMCwxMTAgMTAwLDkwIDE3NSwxNTBcIn0sTmV1dHJhbDp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNNDUsNDUgMTAwLDExMCAxMDAsOTAgMTU1LDE1NVwifSxIb3N0aWxlOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk01Nyw3MCAxMDAsMTEwIDEwMCw5MCAxNDMsMTMwXCJ9fVtUXV0saVtcIlNULklDLlJJT1RcIl09YShcIlJJT1RcIiksaVtcIlNULklDLlNBRkUgSE9VU0VcIl09YShcIlNBRkVcIiksaVtcIlNULklDLlNFQVJDSElOR1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxNDAsMTA1IGMgLTEwLDAgLTUsMCAtMTAsMCAtMTUsMCAtNSwtMTUgLTIwLC0xNSAtMTUsMCAtNSwyMCAtMjAsMjAgLTE1LDAgLTUsLTIwIC0yMCwtMjAgLTEwLDAgLTEwLDEwIC0xMCwxMCBtIDcwLDAgMTAsNSAtMTAsNVwiLGZpbGw6ITF9LGlbXCJTVC5JQy5TUFlcIl09YShcIlNQWVwiKSxpW1wiU1QuSUMuU05JUElOR1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gOTUsODUgNSwtNSA1LDUgbSAtNSwtNSAwLDQwXCIsZmlsbDohMX0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6NzUsZm9udHNpemU6MjUsdGV4dDpcIlNcIn1dLGlbXCJTVC5JQy5WQU5EQUxJU00vTE9PVC9SQU5TQUNLL1BMVU5ERVIvU0FDS1wiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTAwIGMgMCwtNSA1LC0xMCAxMCwtMTAgTSA4NSwxMDAgQyA4NSw5NSA4MCw5MCA3NSw5MCBtIDUsMjUgYyAtMC41LC0yOS41IDQwLC0zMCA0MCwwIHpcIixmaWxsOiExfSxpW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXT1hKFwiV0hUXCIpLGlbXCJTVC5JQy5ST0JCRVJZXCJdPWEoXCJST0JcIiksaVtcIlNULklDLlRIRUZUXCJdPWEoXCJUSEZcIiksaVtcIlNULklDLkJVUkdMQVJZXCJdPWEoXCJCVVJcIiksaVtcIlNULklDLlNNVUdHTElOR1wiXT1hKFwiU01HTFwiKSxpW1wiU1QuSUMuU0FCT1RBR0VcIl09YShcIlNBQlwiKSxpW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXT1hKFwiRFJVR1wiKSxpW1wiU1QuSUMuU1BZXCJdPWEoXCJTUFlcIiksaVtcIlNULklDLldBUlJBTlQgU0VSVkVEXCJdPWEoXCJXTlRcIiksaVtcIlNULklDLlBPTExJTkcgUExBQ0UvRUxFQ1RJT05cIl09YShcIlZPVEVcIiksaVtcIlNULklDLk5BVFVSQUwgRVZFTlRcIl09YShcIk5BVFwiKSxpW1wiU1QuSUMuR0VPTE9HSUNcIl09YShcIkdFT0xcIiksaVtcIlNULklDLkhZRFJPLU1FVEVPUk9MT0dJQ0FMXCJdPWEoXCJIWURSXCIpLGlbXCJTVC5JQy5JTkZFU1RBVElPTlwiXT1hKFwiSU5GU1wiKSxpW1wiU1QuSUMuR1JFTkFERVwiXT1hKFwiR1wiKSxpW1wiU1QuSUMuSU5DRU5ESUFSWVwiXT1hKFwiSVwiKSxpW1wiU1QuSUMuTUlORVwiXT1hKFwiTVwiKSxpW1wiU1QuSUMuSE9VU0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gNzAsMTAwIDYwLDAgbSAtMzAsLTIwIC0zMCwyMCAwLDM1IDYwLDAgMCwtMzUgLTMwLC0yMCB6XCJ9LGlbXCJTVC5JQy5ST0NLIFRIUk9XSU5HXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDkwLDYwIDI1LDI1IE0gNzAsNjUgOTUsOTAgTSA2MCw4MCA4MCwxMDAgbSA0NSwtNSA1LDE1IC01LDE1IC0yMCwxMCAtMjAsLTUgLTUsLTIwIDUsLTUgMTAsMCA1LC0xMCAxMCwtNSAxNSw1IHpcIn0saVtcIlNULk0xLkFDQ0lERU5UXCJdPWwoXCJBQ0NcIiksaVtcIlNULk0xLkFTU0FTU0lOQVRJT05cIl09bChcIkFTXCIpLGlbXCJTVC5NMS5DSVZJTElBTlwiXT1sKFwiQ0lWXCIpLGlbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXT1sKFwiQ1wiKSxpW1wiU1QuTTEuQ09NQkFUXCJdPWwoXCJDQlRcIiksaVtcIlNULk0xLkRFQUQgQk9EWVwiXT1sKFwiREJcIiksaVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdPWwoXCJEUFJFXCIpLGlbXCJTVC5NMS5EUlVHXCJdPWwoXCJEUlVHXCIpLGlbXCJTVC5NMS5FVklDVElPTlwiXT1sKFwiRVZcIiksaVtcIlNULk0xLkVYRUNVVElPTiAoV1JPTkdGVUwgS0lMTElORylcIl09bChcIkVYXCIpLGlbXCJTVC5NMS5FWEZJTFRSQVRJT05cIl09bChcIkVYRkxcIiksaVtcIlNULk0xLkZPUkVJR04gRklHSFRFUlNcIl09bChcIkZGXCIpLGlbXCJTVC5NMS5HQU5HXCJdPWwoXCJHQU5HXCIpLGlbXCJTVC5NMS5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXT1sKFwiR09cIiksaVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXT1sKFwiSFwiKSxpW1wiU1QuTTEuSE9VU0UtVE8tSE9VU0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohIVImJkcsZDpcIm0gMTEwLDY1IC0yMCwwIDAsMTUgMjAsMCB6IG0gLTEwLC0xMCAtMTAsMTAgMjAsMCB6XCJ9LGlbXCJTVC5NMS5JRURcIl09bChcIklFRFwiKSxpW1wiU1QuTTEuSU5DSURFTlRcIl09bChcIklOQ1wiKSxpW1wiU1QuTTEuSU5GSUxUUkFUSU9OXCJdPWwoXCJJTkZMXCIpLGlbXCJTVC5NMS5LSUROQVBQSU5HXCJdPWwoXCJLXCIpLGlbXCJTVC5NMS5MQUJSQVRPUllcIl09bChcIkxBQlwiKSxpW1wiU1QuTTEuTEVBREVSXCJdPWwoXCJMRFJcIiksaVtcIlNULk0xLkxPT1RcIl09bChcIkxPT1RcIiksaVtcIlNULk0xLk1FRVRJTkdcIl09bChcIk1UR1wiKSxpW1wiU1QuTTEuTVVSREVSXCJdPWwoXCJNVVwiKSxpW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXT1sKFwiTkdPXCIpLGlbXCJTVC5NMS5PVEhFUlwiXT1sKFwiT1RIXCIpLGlbXCJTVC5NMS5QSVJBQ1lcIl09bChcIlBJXCIpLGlbXCJTVC5NMS5QUkVNQVRVUkVcIl09bChcIlBcIiksaVtcIlNULk0xLlJBSURcIl09bChcIlJBSURcIiksaVtcIlNULk0xLlJBUEVcIl09bChcIlJBXCIpLGlbXCJTVC5NMS5SRUxJR0lPVVNcIl09bChcIlJFTFwiKSxpW1wiU1QuTTEuU1BFQUtFUlwiXT1sKFwiU1BLXCIpLGlbXCJTVC5NMS5UQVJHRVRFRFwiXT1sKFwiVEdUXCIpLGlbXCJTVC5NMS5URVJST1JJU1RcIl09bChcIlRFUlwiKSxpW1wiU1QuTTEuVFJBRkZJQ0tJTkdcIl09bChcIlRGS1wiKSxpW1wiU1QuTTEuV0lMTElORyBSRUNSVUlUXCJdPWwoXCJXUlwiKSxpW1wiU1QuTTEuV1JJVFRFTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl09aVtcIlNULk0xLldJTExJTkdcIl09bChcIldcIiksaVtcIlNULk0xLkZBTFNFXCJdPWwoXCJGQUxcIiksaVtcIlNULk0xLkZJTkRcIl09bChcIkZORFwiKSxpW1wiU1QuTTEuRk9VTkQgQU5EIENMRUFSRURcIl09bChcIkNMUlwiKSxpW1wiU1QuTTEuSE9BWCAoREVDT1kpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNIDkwLDc1IDgwLDY3LjUgOTAsNjAgOTAsNzUgWiBtIDE1LDAgLTEwLC03LjUgMTAsLTcuNSAwLDE1IHogbSAxNSwwIC0xMCwtNy41IDEwLC03LjUgMCwxNSB6XCJ9LGlbXCJTVC5NMS5BVFRFTVBURURcIl09bChcIkFUVFwiKSxpW1wiU1QuTTEuQUNDSURFTlRcIl09bChcIkFDQ1wiKSxpW1wiU1QuTTEuSU5DSURFTlRcIl09bChcIklOQ1wiKSxpW1wiU1QuTTEuVEhFRlRcIl09bChcIlRIRlwiKSxpW1wiU1QuTTEuUElSQVRFXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeTo2MCxyOjcsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA4Mi41LDc1IDM1LC0xNSBtIDAsMTUgLTM1LC0xNSBtIDMsNyA1LDEwIG0gMjcsLTEwIC0xMCwxMFwifV0saVtcIlNULk0yLkxFQURFUiBPUiBMRUFERVJTSElQXCJdPXIoXCJMRFJcIiksaVtcIlNULk0yLlJFTElHSU9VU1wiXT1yKFwiUkVMXCIpLGlbXCJBQy5JQy5DUklNSU5BTC5BQ1RJVklUWS5JTkNJREVOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjcsNjYuNyBjIC0zLjIsMC43IC02LjMsMy43IC02LjQsNyAwLjMsMy42IDUuMywyLjggNywwLjYgMiwtMS4yIDEuNywtNC41IDQuNSwtMy43IDIuNiwtMC42IDMuMiwzLjIgNS45LDMuMiAxLjYsMS41IDQuNCwtMC42IDUuNCwxLjIgMC43LDEuMSAxLjUsMi4yIDIuMiwzLjMgLTIsMy4xIC0xLjMsNy45IDEuOSwxMCAzLjUsMS4xIDQuOCwtMy41IDQuMSwtNi4yIC0wLjIsLTMgLTIuNSwtNSAtNS4xLC01LjQgLTEuNSwtMS45IC0yLjcsLTMuNCAtMS42LC01LjYgLTEsLTMuMyAtNS4xLC00LjUgLTguMiwtNC4zIC0yLjIsMC4zIC0yLjksMi42IC01LjMsMS45IC0xLjksMC40IC0xLjksLTIuOCAtNC4zLC0yIHogbSAwLjIsMS4zIGMgMi43LDAuNSAwLjksMC42IC0wLjYsMS4zIC0wLjUsMi4yIDMuOCwwLjQgMS40LDIuOSAtMC45LDEuOSAtNS44LDQuNyAtNS45LDEuMSAwLjEsLTIuNSAyLjcsLTQuOCA1LjEsLTUuMiB6IG0gMTAuMywwLjEgYyAyLjQsLTAuNSA3LjEsMi4zIDUuNiwzLjcgLTAuOCwtMi4xIC0zLDAgLTEuMiwxLjIgLTEuNywwLjkgLTcuNCwtMS42IC01LjcsLTIuNCAyLjUsMC44IDIuOCwtMi43IC0wLC0xLjkgLTEuNCwwLjIgMS4xLC0wLjggMS4zLC0wLjYgeiBNIDgxLjksNzEuNiBjIC0xLjgsMS45IC0zLjYsMy45IC01LjUsNS44IC03LjUsLTAuMSAtMTQsNi4yIC0xNS43LDEzLjIgLTAuNiw0LjIgMC41LDguNSAyLjgsMTIgMC43LDMuOSAtMy4yLDYuNyAtMywxMC43IC0wLjgsNy40IDQuOCwxNC41IDExLjcsMTYuOCAyLjMsLTAuNCAxLjMsMS4zIDEuNCwyIDEuNSwtMC40IDMsLTAuOCA0LjYsLTEuMiAtMC4yLDEuNSAtMC4xLDIuNyAxLjQsMS4yIDAuOSwtMC4zIDIuMywtMi4yIDIuOSwtMS41IDAuMiwyLjIgMS4yLDAuMSAyLC0wLjcgMC44LC0xLjIgMS42LC0yLjMgMi40LC0wLjUgMS4yLC0yLjQgNC4xLC03LjIgLTAuOCwtNy4zIC0zLjQsMi4zIC03LjUsNC42IC0xMS44LDMuNSAtNi4zLC0xLjUgLTEwLjksLTguOCAtOC4yLC0xNC45IDAuNCwtMy45IDYuOCwtMy40IDUsLTguMiAtMS44LC0yLjYgLTUuNywtMi45IC01LjcsLTcgLTEuNSwtNy4zIDUuNiwtMTQuNyAxMywtMTMuNyA0LjcsMC41IDcuNCw0LjkgMTAuOCw3LjYgMS45LDEuOSA0LjEsNS4xIDUuOSwxLjQgMi44LC0yIDQuMywtNC43IDEuOCwtNy42IEMgOTQuOCw3OS43IDkwLjksNzcuMyA4OCw3NC40IDg2LjMsNzIuOSA4My45LDcyLjYgODEuOSw3MS42IHogbSAzLjMsMy44IGMgMS42LDEuMSAyLjksMi4xIDAuMywzLjMgLTAuOSwzLjcgLTUuMSwtMC41IC0xLjUsLTEuNSAwLjQsLTAuNiAwLjksLTEuMSAxLjIsLTEuOCB6IG0gMzQuMiwzLjEgYyAzLDEuNCAzLjksNi40IDEuNCw4LjggLTIuOSwwLjEgLTMuNiwtNC4zIC0zLjEsLTYuNiAwLjEsLTIuOSAyLjUsMi43IDIuNSwtMC43IC0wLjIsLTAuNSAtMC41LC0xIC0wLjgsLTEuNCB6IE0gMTI3LjMsOTAuMiBjIC00LjMsMC40IC04LjgsLTAgLTEzLjEsMSAtMi4xLDEuMSAtNS43LDEuNSAtNC42LDQuNSAwLjEsMS44IDAuMiwzLjYgMC40LDUuNCAtNC45LDQuOSAtNS41LDEzLjMgLTIuMiwxOS4yIDIuNCw0LjMgNyw3IDExLjgsNy44IDMuMyw0LjkgNy4zLC0xLjMgMTEuMiwtMS43IDUuNSwtMi41IDguOSwtOC41IDguNSwtMTQuNSAwLjIsLTUgLTIuNCwtMTAuMSAtNi43LC0xMi44IC0wLjEsLTIuMyAtMC4yLC00LjYgLTAuMywtNi45IC0xLjYsLTAuOCAtMy40LC0xLjQgLTUuMSwtMi4xIHogTSAxMjcuOCw5Mi41IGMgLTAuOSwxLjcgMC42LDMuOCAtMC45LDQuOSAtMi4zLDAuNyAtMS43LC0yLjQgLTEuOSwtMy44IC0wLjYsLTEuNyAxLjksLTAuNyAyLjgsLTEgeiBtIC0yLjksOC4zIGMgNC4xLDAuOSA4LDMuNyA5LjMsNy45IDAuOSwzLjcgMC41LDggLTIuMywxMC45IC0xLjcsMiAtNS4zLDQuMyAtNy43LDMuMSAtMy4xLC0wLjggLTUuOCwyLjEgLTguNiwtMC41IC02LjksLTQuMiAtNy4yLC0xNiAwLjIsLTE5LjggMi43LC0xLjYgNiwtMS42IDkuMSwtMS42IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDg1LjEgNzUuMyBDIDg1IDc1LjggODQuMiA3Ni43IDgzLjkgNzcuMSBDIDgzLjYgNzcuNiA4Mi40IDc3LjkgODIuNCA3OC42IEwgODIuNCA3OSBDIDgyLjQgNzkuNCA4My4zIDgwLjEgODMuNiA4MC4xIEwgODMuOCA4MC4xIEMgODQuOCA4MC4xIDg1IDc5LjEgODUuNCA3OC42IEMgODUuNyA3OC4yIDg2LjcgNzcuNCA4Ny4yIDc3IEwgODUuMSA3NS4zIHogTSAxMjcuOCA5Mi41IEwgMTI1IDkyLjcgTCAxMjUuMiA5Ni41IEMgMTI1LjMgOTcuNSAxMjUuOSA5Ny4zIDEyNi41IDk3LjYgQyAxMjcuMSA5Ny4zIDEyNy44IDk3LjEgMTI3LjggOTYuMyBDIDEyNy44IDk1LjggMTI3LjcgOTUuNiAxMjcuNSA5NS4zIEwgMTI3LjggOTIuNSB6XCJ9XSxpW1wiQUMuSUMuQ1JJTUlOQUwuQ0lWSUwgRElTVFVSQkFOQ0VcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDExMC42LDE0Mi40IDAsLTI4LjYgLTcuMSwwIDAsMjguNiB6IG0gLTIxLjIsMCA3LjEsMCAwLC0yOC42IC03LjEsMCB6IG0gNy4xLC0yOC42IGggNy4xIHYgLTExLjggaCAyNC40IFYgNzcuMiBoIC02LjMgdiAxOC42IGggLTE4IHYgLTEwLjcgYyAwLC0wLjkgMi4xLC0xLjIgMywtMS43IDAuOCwtMC40IDIuMSwtMS40IDIuNywtMiAxLjUsLTEuNCAzLjIsLTMuNiAzLjgsLTUuOSAxLjYsLTYuMyAtMC4yLC0xMC42IC0zLjgsLTE0LjEgLTMsLTMuMSAtOS4yLC00LjkgLTE0LjMsLTIuNyAtMy42LDEuNiAtOC40LDYuMiAtOC40LDExIHYgMy4yIGMgMCwyLjggMS45LDYuMiAzLjMsNy43IDEsMSAxLjgsMS43IDMsMi41IDEsMC42IDMuNiwxLjMgMy42LDIuMiB2IDEwLjcgSCA3OC40IHYgLTE4LjYgaCAtNi4zIHYgMjQuOSBoIDI0LjQgdiAxMS44IGggLTAgelwifSxpW1wiQUMuSUMuU0hPT1RJTkdcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDkzLjIsODkuNyBoIDE2LjggdiA5LjMgYyAtMi42LDAgLTcuMywxLjYgLTksMSAtMi4zLC0wLjggLTUuNCwtMiAtNy44LC0yLjYgdiAtNy44IGwgMCwwIHogbSAtMzAsMCBoIDI2LjEgdiA5LjYgYyAwLDAuOSA0LjEsMiA1LDIuMyAxLjksMC42IDMuNiwxLjQgNS41LDIgMiwwLjcgMy40LDAuNCA2LC0wLjEgMS42LC0wLjMgNS43LC0wLjQgNi42LC0wLjkgMC42LDIuNyA0LjYsMTQgNC42LDE1LjIgMCwxLjYgLTEuMiw0IC0xLjMsNS43IGwgMjEuNSwwIC04LjIsLTI1LjkgNy44LC03LjcgYyAtMC44LC0xLjYgLTQuMSwtMTMuNCAtNS4yLC0xMy40IGggLTY4LjQgdiAxMy4yIGwgMCwwIHpcIn0saVtcIkFDLklDLkZJUkUgRVZFTlRcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk2LjUsNzguNSBjIDAsLTUuMSA0LjEsLTkuNyA0LjEsLTEzIHYgLTAuNCBjIDAsLTEuMyAtMCwtMy44IC0xLjEsLTQuMSAtMSw0LjUgLTMuNSw4IC01LjksMTEuMiAtMS4yLDEuNiAtMi40LDMuMyAtMy42LDUgLTEsMS40IC0zLjEsMy41IC0zLjEsNS41IDAsMS40IDYuMSwxNy43IDMsMTcuNyAtMC4xLDAgLTMuOCwtMi41IC00LjIsLTIuOSAtMS40LC0xIC0yLjQsLTIuMyAtMy4zLC0zLjcgLTMuMSwtNC42IC0yLjQsLTQuNCAtMy44LC0xMC4zIC0xLjUsMC40IC0yLjYsNSAtMi45LDYuOSAtMC40LDIuNCAtMC4zLDYuNiAwLjIsOSAwLjYsMi44IDEuNCw1IDIuNSw3LjMgMC42LDEuMiAzLDUuNSAzLjEsNi41IC0yLjIsLTAuNSAtNywtNC42IC04LjYsLTYuMiAtMS41LC0xLjUgLTUuNSwtOC4zIC01LjksLTguNiAwLDkuOSA1LDIyLjggOS44LDI3LjYgMy4xLDMuMSA2LjMsNi40IDEwLjIsOC42IDIuNCwxLjUgMTAuNSw0LjMgMTQuMyw0LjMgaCAyLjQgYyAyLjgsMCAxMC44LC0zIDEyLjksLTQuMiAzLjQsLTEuOSA2LjksLTQuNyA5LC03LjkgNC40LC02LjUgOCwtMTUgOCwtMjUuOCB2IC0xLjMgbCAtMC40LC01LjggYyAtMC43LDAuNCAtMi4yLDQuNCAtMi41LDUuMiAtMC41LDEuMyAtMiwzLjQgLTIuOSw0LjYgLTEuNCwyLjEgLTUuMiw2LjMgLTcuOCw2LjkgdiAtMS4xIGMgMCwtNC40IDIuOCwtOC44IDIuOCwtMTIuNCB2IC0xLjkgbCAtMS4zLC0xMi4yIGggLTAuNiBjIC0wLjMsMy45IC0xLjYsNy45IC0zLjQsMTAuNSAtMS4zLDIgLTUuMyw1LjYgLTcuNyw2LjIgLTAuMiwtMC40IC0wLjQsLTAuNiAtMC40LC0xLjMgdiAtMi4zIGMgMCwtNS4xIDMsLTguOSAzLC0xMi44IHYgLTAuOCBjIDAsLTEuNSAtMi4xLC0zLjkgLTIuOSwtNS4yIC0wLjcsLTEuMSAtMi40LC00LjMgLTMuNSwtNC42IHYgMS4zIGMgMCw2LjIgLTEuNCwxMC42IC01LjYsMTIuNiAtMS4xLC0xLjcgLTMuNiwtMy4yIC0zLjYsLTYuMiB2IC0xLjkgbCAwLDAgelwifSxpW1wiQUMuSUMuTk9OLVJFc0lkRU5USUFMIEZJUkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS4yLDEyMi4zIC02LjIsMCAwLDUuOSA2LjIsMCB6IG0gLTEyLjEsMCAtNi4xLDAgMCw1LjkgNi4xLDAgeiBtIC0xMi4yLDAgLTUuOSwwIDAsNS45IDUuOSwwIHogbSAtMTIuMywwIC01LjcsMCAwLDUuOSA1LjcsMCB6IG0gMzAuNCwtNC44IGggNi4xIHYgLTYuMiBoIC0yLjUgYyAtMS4yLDAgLTIuNSwxLjUgLTMuNiwxLjggdiA0LjQgeiBtIC01LjksLTYuMiAtNi4xLDAgMCw2LjIgNi4xLDAgeiBtIC0xMi4yLDAgLTUuOSwwIDAsNi4yIDUuOSwwIHogbSAtMTIuMywwIC01LjcsMCAwLDYuMiA1LjcsMCB6IG0gMjUsLTMzLjQgYyAwLC0zLjQgMy40LC03LjQgMy40LC05LjEgMCwtMS40IC0wLjgsLTQuMiAtMS44LC00LjYgMCw3LjEgLTguNiwxMi44IC04LjYsMTUuNyB2IDAuNCBjIDAsMC43IDEuOSw1LjIgMi4zLDYuNiAwLjQsMS43IDEuNCw1LjYgMS42LDcuMyAtNi4yLC0wLjEgLTcuMywtOS44IC0xMC4zLC0xMS44IGwgLTAuMywzIDAsNC42IGMgMCw0LjcgMy40LDExLjQgNS42LDEzLjkgMSwxLjEgNC4yLDMuNyA1LjUsNC4zIDAuOCwwLjQgNi4zLDMgNi42LDMgMS40LDAgOS4yLC03LjIgMTAuNSwtOC42IDIuNSwtMi41IDQsLTkuNiA0LC0xNC44IHYgLTAuNyBsIC0wLjcsLTUuNyBjIC0xLDAuNiAtMi4xLDUuNiAtMi44LDcgLTEuNSwzLjIgLTEuOCwzLjEgLTUuNCw0IC0wLjMsLTEyLjIgNi43LC04LjMgLTIuNywtMTkuMSAwLDQuOSAtMC45LDcuOSAtNC4xLDkuNiAtMS40LC0wLjcgLTMsLTIuNyAtMywtNC44IHogbSAtMTQuOCwyNi40IGggMy42IGMgLTAuMSwtMC42IC0wLjMsLTEuNCAtMS4xLC0xLjQgaCAtMS4yIHYgLTIuNyBjIDAsLTAuOSAtMC45LC0yLjQgLTEuNCwtMyB2IDcgeiBtIC0xNi40LC0yOC42IGggMy45IHYgMjguNiBoIDguOSB2IC0yOC42IGggMy42IHYgNS40IGMgMC4zLC0wLjIgMS40LC0xLjQgMS40LC0xLjggdiAtNSBoIC02LjQgdiAyOC42IGggLTYuNCB2IC0yOC42IGggLTYuMSB2IDI4LjYgaCAtNS4yIHYgMzIuNyBoIDU0LjggdiAtMzAuNyBjIC0wLjQsMC4yIC0xLjEsMSAtMS4xLDEuNiB2IDI3LjUgaCAtNTIuNSB2IC0yOS44IGggNS4yIHYgLTI4LjYgaCAtMCB6XCJ9LGlbXCJBQy5JQy5SRXNJZEVOVElBTCBGSVJFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5MS41LDg4LjMgLTAuNywtMyAtMzAuMSwyNS4yIDE1LjYsMC4xIHYgMjUuNiBoIDUwLjUgdiAtMjUuNiBoIDEyLjQgYyAtMC40LC0wLjUgLTcuNiwtNS45IC04LC01LjkgLTAuMywwIC0xLjIsMS42IC0xLjQsMS45IGwgMS40LDEuNCBoIC0yLjQgYyAtMC43LDAuNSAtNC45LDMuMSAtNC45LDMuOCB2IDIyLjMgaCAtMTguMyB2IC0xMi45IGggLTguNyB2IDEyLjkgaCAtMTguMSB2IC0yMy41IGggMjIuNiBsIC0yLjIsLTIuNyAtMzAuNywtMC4xIEwgOTEuNSw4OC4zIHogbSAyNy42LDI4IC04LjIsMCAwLDguNSA4LjIsMCB6IG0gLTI3LDAuMiAtOC43LDAgMCw4LjIgOC43LDAgeiBtIDExLC0zNi40IGMgMCwwLjkgMi4xLDUuMyAyLjUsNi45IDAuNCwxLjggMS41LDYuMSAxLjUsNy44IC03LjEsLTEuNiAtNi45LC05LjkgLTEwLjMsLTEyLjIgLTEuNyw3LjUgMC44LDE1LjEgMy43LDE5LjUgMi40LDMuNiAyLjYsMy40IDYsNiAwLjQsMC40IDcuOSw0LjMgNy45LDQuMyAyLDAgOS42LC03LjEgMTEuMSwtOC42IDEuOCwtMS44IDUuNiwtMTAuOCA1LjYsLTE0LjQgViA4My41IGMgMCwtMS45IC0wLjMsLTMuMiAtMS40LC00IDAsMiAtMS44LDcgLTIuNiw4LjQgLTAuOCwxLjggLTQuMyw0LjIgLTYuMyw0LjcgdiAtMS43IGMgMCwtNC40IDIuNCwtNi44IDIuNCwtMTAuMSAwLC0yIC00LC03LjIgLTUuMiwtOCAwLDUuNCAtMC43LDggLTQuMiw5LjggLTEuMiwtMC43IC0zLjEsLTIuNiAtMy4xLC00LjQgdiAtMSBjIDAsLTEuNSAxLjgsLTUuNCAyLjUsLTYuNiAyLC0zLjkgMC41LC0zLjggLTAuNCwtNyBoIC0wLjQgYyAtMS4zLDUuNSAtMC44LDQuOCAtMy44LDguOSAtMSwxLjQgLTUuNCw1LjkgLTUuNCw3LjUgelwifSxpW1wiQUMuSUMuU0NIT09MIEZJUkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMS4zLDczIGMgLTQsLTEgLTE3LC03LjIgLTE5LjgsLTcuMiBoIC0yLjQgViA5NiBoIC0wLjcgYyAwLDUuNiAtMy44LDE1LjMgLTYuMiwxOC42IC0yLDIuNyAtMy43LDQuMSAtNi4yLDYuMiAtMC44LDAuNiAtNyw0LjkgLTcsNS40IHYgOCBoIDQ0LjEgViA5NiBoIC0yMC40IGwgMCwtMTQuOCAxOC44LC04LjIgeiBtIC00OS4yLDExLjggYyAwLC0zIDMuNiwtOCAzLjYsLTEwIDAsLTEuOCAtMC44LC0zLjkgLTIsLTQuNiAtMC40LDAuOCAtMC40LDMuNiAtMC45LDUgLTAuMywwLjcgLTEuOCwyLjcgLTIuMywzLjUgLTEuNiwyLjMgLTMuNCw0LjIgLTUuMSw2LjQgLTIuMiwyLjggMCw1IDEuMSw4LjIgMC44LDIuMiAxLjQsNy45IDIuMSw5LjQgQyA3MS45LDEwMi40IDcwLjYsOTEuOCA2Ny42LDg5LjkgbCAtMC42LDcuNiAwLjEsMC4yIGMgMCw1IDMuNiwxMi4zIDUuOSwxNSAxLjEsMS4zIDQuMywzLjYgNS45LDQuNiAxLjEsMC43IDIuNSwxIDMuNywxLjYgMC40LDAuMiAzLjIsMS45IDMuMiwxLjkgMi4xLDAgOS45LC03LjQgMTEuNSwtOSAxLjgsLTEuOCA1LjgsLTExIDUuOCwtMTQuNCB2IC02LjMgYyAwLC0yLjEgLTAuNCwtMi42IC0wLjcsLTQuMiBoIC0wLjggYyAtMC4yLDEuOSAtMi4yLDcuMSAtMyw4LjcgLTAuNywxLjMgLTYuMyw1LjcgLTYuMywzLjcgdiAtMS4yIGMgMCwtMy44IDIuNCwtNy4yIDIuNCwtMTAgdiAtMC44IGMgMCwtMS41IC00LjMsLTYuOCAtNS40LC03LjYgMCwyLjUgMC4xLDQuOCAtMC44LDYuNSAtMC41LDAuOSAtMi41LDMuNSAtMy42LDMuNSAtMS4xLDAgLTMuMiwtMy40IC0zLjIsLTUuMSB6XCJ9LGlbXCJBQy5JQy5IT1QgU1BPVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk2LjMsNzguNSBjIDAsLTUuMSA0LjEsLTkuNyA0LjEsLTEzIHYgLTAuNCBjIDAsLTEuMyAtMCwtMy44IC0xLjEsLTQuMSAtMSw0LjUgLTMuNSw4IC01LjksMTEuMiAtMS4zLDEuNiAtMi4zLDMuMyAtMy42LDQuOSAtMSwxLjMgLTMuMSwzLjQgLTMuMSw1LjUgMCwxLjQgNi4xLDE3LjcgMywxNy43IC0wLjEsMCAtMy43LC0yLjUgLTQuMiwtMi45IC0xLjQsLTEgLTIuNCwtMi4zIC0zLjMsLTMuNyAtMy4xLC00LjYgLTIuNCwtNC40IC0zLjgsLTEwLjMgLTEuNSwwLjQgLTIuNiw1IC0yLjksNi45IC0wLjQsMi40IC0wLjMsNi43IDAuMyw5IDAuNiwyLjggMS4zLDUgMi41LDcuMyAwLjYsMS4yIDMuMSw1LjUgMy4xLDYuNSAtMi4yLC0wLjUgLTcuMSwtNC42IC04LjYsLTYuMSAtMS41LC0xLjUgLTUuNSwtOC4zIC01LjksLTguNiAwLDkuOSA1LDIyLjggOS44LDI3LjYgMy4xLDMuMSA2LjMsNi40IDEwLjEsOC43IDIuNSwxLjUgMTAuNSw0LjMgMTQuMyw0LjMgaCAyLjQgYyAyLjksMCAxMC44LC0zIDEyLjksLTQuMiAzLjQsLTEuOSA2LjksLTQuNyA5LC03LjkgNC40LC02LjUgOCwtMTUgOCwtMjUuNyBWIDk5LjkgbCAtMC40LC01LjggYyAtMC43LDAuNCAtMi4yLDQuNCAtMi41LDUuMiAtMC41LDEuMyAtMiwzLjQgLTIuOCw0LjYgLTEuNCwyLjEgLTUuMiw2LjMgLTcuOSw2LjkgdiAtMS4xIGMgMCwtNC40IDIuOCwtOC44IDIuOCwtMTIuNCB2IC0xLjkgbCAtMS4zLC0xMi4yIC0wLjcsOGUtNCBjIC0wLjMsMy45IC0xLjcsNy45IC0zLjQsMTAuNSAtMS4zLDIgLTUuMyw1LjYgLTcuNyw2LjIgLTAuMiwtMC40IC0wLjQsLTAuNiAtMC40LC0xLjMgdiAtMi40IGMgMCwtNS4xIDMsLTguOSAzLC0xMi44IFYgODIuNiBjIDAsLTEuNSAtMi4xLC0zLjkgLTIuOSwtNS4yIC0wLjcsLTEuMSAtMi40LC00LjMgLTMuNSwtNC42IHYgMS4zIGMgMCw2LjIgLTEuNCwxMC42IC01LjYsMTIuNiAtMS4xLC0xLjcgLTMuNiwtMy4xIC0zLjYsLTYuMiB2IC0xLjkgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTEzLDEyNi45IGMgMCw2LjMgLTUuMSwxMS40IC0xMS40LDExLjQgLTYuMywwIC0xMS40LC01LjEgLTExLjQsLTExLjQgMCwtNi4zIDUuMSwtMTEuNCAxMS40LC0xMS40IDYuMywwIDExLjQsNS4xIDExLjQsMTEuNCB6XCJ9XSxpW1wiQUMuSUMuRklSRSBPUklHSU5cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5Ni4zLDc4LjUgYyAwLC01LjEgNC4xLC05LjcgNC4xLC0xMyB2IC0wLjQgYyAwLC0xLjMgLTAsLTMuOCAtMS4xLC00LjEgLTEsNC41IC0zLjUsOCAtNS45LDExLjIgLTEuMywxLjYgLTIuMywzLjMgLTMuNiw0LjkgLTEsMS4zIC0zLjEsMy40IC0zLjEsNS41IDAsMS40IDYuMSwxNy43IDMsMTcuNyAtMC4xLDAgLTMuNywtMi41IC00LjIsLTIuOSAtMS40LC0xIC0yLjQsLTIuMyAtMy4zLC0zLjcgLTMuMSwtNC42IC0yLjQsLTQuNCAtMy44LC0xMC4zIC0xLjUsMC40IC0yLjYsNSAtMi45LDYuOSAtMC40LDIuNCAtMC4zLDYuNyAwLjMsOSAwLjYsMi44IDEuMyw1IDIuNSw3LjMgMC42LDEuMiAzLjEsNS41IDMuMSw2LjUgLTIuMiwtMC41IC03LjEsLTQuNiAtOC42LC02LjEgLTEuNSwtMS41IC01LjUsLTguMyAtNS45LC04LjYgMCw5LjkgNSwyMi44IDkuOCwyNy42IDMuMSwzLjEgNi4zLDYuNCAxMC4xLDguNyAyLjUsMS41IDEwLjUsNC4zIDE0LjMsNC4zIGggMi40IGMgMi45LDAgMTAuOCwtMyAxMi45LC00LjIgMy40LC0xLjkgNi45LC00LjcgOSwtNy45IDQuNCwtNi41IDgsLTE1IDgsLTI1LjcgViA5OS45IGwgLTAuNCwtNS44IGMgLTAuNywwLjQgLTIuMiw0LjQgLTIuNSw1LjIgLTAuNSwxLjMgLTIsMy40IC0yLjgsNC42IC0xLjQsMi4xIC01LjIsNi4zIC03LjksNi45IHYgLTEuMSBjIDAsLTQuNCAyLjgsLTguOCAyLjgsLTEyLjQgdiAtMS45IGwgLTEuMywtMTIuMiAtMC43LDhlLTQgYyAtMC4zLDMuOSAtMS43LDcuOSAtMy40LDEwLjUgLTEuMywyIC01LjMsNS42IC03LjcsNi4yIC0wLjIsLTAuNCAtMC40LC0wLjYgLTAuNCwtMS4zIHYgLTIuNCBjIDAsLTUuMSAzLC04LjkgMywtMTIuOCBWIDgyLjYgYyAwLC0xLjUgLTIuMSwtMy45IC0yLjksLTUuMiAtMC43LC0xLjEgLTIuNCwtNC4zIC0zLjUsLTQuNiB2IDEuMyBjIDAsNi4yIC0xLjQsMTAuNiAtNS42LDEyLjYgLTEuMSwtMS43IC0zLjYsLTMuMSAtMy42LC02LjIgdiAtMS45IGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDk5LjYgMTA1LjkgQyA5My4zIDEwNS45IDg4LjIgMTExIDg4LjIgMTE3LjMgQyA4OC4yIDEyMy42IDkzLjMgMTI4LjcgOTkuNiAxMjguNyBDIDEwNS45IDEyOC43IDExMSAxMjMuNiAxMTEgMTE3LjMgQyAxMTEgMTExIDEwNS45IDEwNS45IDk5LjYgMTA1LjkgeiBNIDEwNSAxMDkuNCBMIDEwNi44IDExMSBMIDEwMS4yIDExNy4xIEwgMTA3LjMgMTIzLjIgTCAxMDUuNiAxMjQuOSBMIDk5LjUgMTE4LjggTCA5My43IDEyNS4zIEwgOTEuOSAxMjMuNiBMIDk3LjggMTE3LjIgTCA5Mi4xIDExMS40IEwgOTMuOCAxMDkuOCBMIDk5LjUgMTE1LjQgTCAxMDUgMTA5LjQgelwifV0saVtcIkFDLklDLlNNT0tFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTkuMyw2OS4yIGMgMC4yLC0yLjYgNC40LC01LjUgNy4yLC02IDQuMiwtMC44IDYuOSwxLjIgOS4xLDMuMyAxLjEsMS4xIDEuOSwyLjcgMi40LDQuMyAwLjYsMi4yIDEuOSwxLjMgNCwyLjUgMi40LDEuNCA0LjksNC40IDUuNiw3LjQgNS4zLDAgMTAuMyw0LjggMTAuMyw5LjkgdiAxLjMgYyAwLDMgLTEuMiw0LjkgLTIuOCw2LjUgLTEuMSwxLjEgLTEuMiwxLjIgLTIuNiwyLjEgLTEuMywwLjggLTIuNSwwLjYgLTIuNywyIC0wLjYsNC42IC00LjIsOSAtOS40LDkgMy4zLDUgMi4zLDguNyAtMC42LDEzIDAsNC44IC0wLjIsNi4yIC0yLjgsOC44IC0yLjQsMi41IC00LjUsMi40IC04LjYsMi40IDAuNywtMSAxLjIsLTEgMiwtMi40IDAuNiwtMS4xIDAuOCwtMS43IDEuNCwtMi45IDEsLTIuMiAxLjgsLTMuNyAxLjgsLTYuOCB2IC0yLjEgYyAwLC0xLjQgLTAuMiwtMi40IC0wLjgsLTMuMiAtMS4yLDUuMiAtMS40LDYuNCAtNS43LDguNiAwLC04LjMgMy44LC02LjggLTEuOSwtMTMuNCAwLDMuOCAtMC4yLDUuNiAtMi43LDYuOSAtMC44LC0wLjUgLTIuMSwtMS43IC0yLjEsLTIuOSB2IC0wLjQgYyAwLC0yIDIuNSwtNS4yIDIuNSwtNi43IHYgLTAuNCBjIDAsLTEuMSAtMC40LC0yLjEgLTEsLTIuNSAwLDIuOSAtMy40LDcuNiAtNC45LDkuMiAtMS42LDEuNyAtMS4xLDIuOCAtMC4yLDUgMC43LDEuNyAxLjEsMy41IDEuMSw1LjggdiAxIGMgLTMuMiwtMC4zIC00LjQsLTYuMiAtNi4xLC04LjIgMCwzLjQgLTAuOCw2LjMgMC40LDkuNCAwLjgsMS45IDIuNCw1LjYgNC40LDYuMSB2IDAuNCBsIC0zLjQsMC42IC0wLjIsLTAuMSBjIC0zLjQsMCAtNi40LC0yLjQgLTcuOCwtNC40IC0wLjgsLTEuMSAtMS41LC0yLjcgLTEuNywtNC40IC0wLjMsLTIuMyAwLjYsLTMuNiAwLjYsLTUgMCwwIC01LjEsLTQuNyAtNC40LC05IGwgMC4yLC0xLjcgYyAtMC40LC0wLjUgLTEuNCwtMS40IC0yLC0yLjIgLTAuNiwtMC44IC0xLjEsLTEuOCAtMS42LC0yLjYgLTEuNCwwIC0yLDAuNiAtMy4yLDAuNiBoIC0wLjYgYyAtNS40LDAgLTEwLjUsLTUuMiAtMTAuNSwtMTAuNSB2IC0wLjggYyAwLC00LjkgNC4xLC05LjIgOSwtOS4yIGggMi4xIGMgMC44LC0zLjIgNS43LC02LjkgMTAuMSwtNS45IC0wLjQsLTEuNSAtMSwtMi43IC0xLC00LjggdiAtMC40IGMgMCwtMy44IDMuMiwtNy44IDYuMSwtOC44IDEuOSwtMC43IDMuOSwtMSA2LjEsLTAuNCAyLjMsMC42IDMuNywyLjIgNC44LDIuNSBsIDAsMCB6IG0gLTAuNCwtMS45IGMgLTEuMywtMC4xIC0yLjksLTIuMSAtNS45LC0yLjEgaCAtMS45IGMgLTUsMCAtMTAuNiw1LjggLTEwLDExLjQgbCAwLjUsMy40IGggLTAuNiBjIC00LjMsMCAtNy4xLDMuMiAtOC42LDYuMSAtMi4zLC0xLjEgLTYuOCwxLjIgLTcuOSwyLjQgLTEuNiwxLjYgLTMuNiw0LjIgLTMuNiw3LjMgdiAxLjUgYyAwLDMuNiAyLjQsNy4zIDQuNSw4LjkgMS44LDEuMyAyLDEuNiA0LjQsMi40IDIuNywwLjkgMy43LDAuMSA1LjksMC4yIGwgMy4xLDMuNyBjIC0wLjYsMS4zIDAuNCw0LjkgMC45LDYgMC41LDEuMiAwLjcsMS40IDEuNCwyLjQgMC4yLDAuNCAxLjcsMiAxLjcsMiAwLDEuMSAtMC40LDEuNCAtMC40LDIuNyB2IDAuMiBjIDAsNi4zIDQuOCwxMiAxMC43LDEyIDIuMSwwIDMuNiwtMC40IDUsLTEgMi42LDEuNCA3LjEsMyA5LjIsLTAuMSBsIDMuNCwwLjUgYyAyLjcsMC40IDYuOCwtMi4yIDcuOSwtMy42IDEsLTEuNCAzLjcsLTYgMi40LC04LjggMS4xLC0wLjcgMi42LC0zLjcgMi43LC01LjUgMC4xLC0xLjcgMC4yLC0xLjggLTAuMSwtMy42IC0wLjIsLTEuNCAtMC45LC0yLjIgLTEsLTMuMiA0LC0wLjMgOC40LC01LjIgOC40LC05LjcgMi41LC0xLjYgMy40LC0xLjIgNS42LC0zLjggMS4zLC0xLjQgMi42LC00LjQgMi42LC03IDAsLTYuMyAtNC43LC0xMiAtMTAuNywtMTIgLTAuOSwtNCAtNC44LC04LjMgLTkuMiwtOC42IC0wLjQsLTQuNCAtNS43LC05LjQgLTEwLjcsLTkuNCAtNC4xLC0wIC04LjksMi43IC05LjYsNS42IGwgMCwwIHogbSAxNS44LDM4LjQgYyAwLjUsMCAxLDAuMSAxLC0wLjQgMCwtMy4xIC00LjEsLTYuNyAtNy42LC02LjcgaCAtMS45IGMgLTAuNiwwIC0xLDAuOCAtMC42LDEgMC40LDAuMiAxLjYsMC4xIDIsMC4xIDEuMiwwIDIuNiwwLjUgMy40LDEgMi4xLDEuNiAyLjgsMi4xIDMuNSw1LjEgeiBtIC0zNC41LC0xMi42IHYgMS43IGMgMCwxLjQgMC42LDIuMiAwLjYsMy4yIDAsMCAtMy42LDMuNCAtMy44LDUuNCBsIDAuNiwwLjIgYyAxLC0wLjYgMS42LC0yLjYgMywtNCAxLC0wLjkgMy4xLC0yLjIgNC44LC0yLjIgaCAwLjYgYyAxLjMsMCAzLjYsMSAzLjYsLTAuMiAwLC0wLjkgLTIuNiwtMSAtMy42LC0xIGggLTAuMiBjIC0xLjYsMCAtMywwLjYgLTQsMS4zIC0wLjEsLTEgLTAuNiwtMS45IC0wLjYsLTMuMiAwLC00LjYgMy43LC04LjYgOC40LC04LjYgaCAxIGMgMSwwIDEuNSwwLjIgMi4zLDAuNCAwLjEsLTAuMiAwLjQsLTAuNiAwLjQsLTAuNyAwLC0wLjcgLTEuOCwtMSAtMi41LC0xIGggLTEuNSBjIC00LjUsLThlLTQgLTkuMiw0LjQgLTkuMiw4LjYgeiBtIDE5LjEsLTE1LjggMC42LDAuNiBjIDEuNiwtMC45IDMuNCwtMi4zIDUuOSwtMi4zIGggMSBjIDUuNSwwIDEwLjEsNC40IDEwLjEsOS43IHYgMC42IGMgLTEuNSwtMCAtMi42LC0wLjggLTQuNiwtMC44IGggLTEgYyAtMS41LDAgLTQuMSwwLjMgLTQuMiwxLjcgMC42LDAuMSAwLjQsMC4yIDAuOCwwLjIgMC45LDAgMS40LC0wLjYgMywtMC42IGggMi4zIGMgMi4yLDAgNS42LDEuOCA2LjYsMy4xIDIsMi42IDEuOCwzLjcgMi42LDcuMiAwLjUsMCAxLDAuMSAxLC0wLjQgMCwtNCAtMi42LC04LjEgLTUuMiwtOS40IDAsLTYuOSAtNC41LC0xMi40IC0xMS4xLC0xMi40IGggLTEuMyBjIC0yLjMsMCAtNS42LDEuNiAtNi41LDIuOSB6XCJ9XSxpW1wiQUMuSUMuU1BFQ0lBTCBORUVEUyBGSVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzUuMywxMzMuOSBoIDQ5LjQgdiAtMjguOSBjIC0wLjYsMC40IC0yLjQsMS4yIC0yLjQsMiB2IDI0LjggSCA3Ny40IHYgLTMwIGggLTIuMiB2IDMyLjEgbCAwLDAgeiBNIDkzLDEyOS4xIGggMiBjIDQuMiwwIDcuNiwtMi40IDkuMywtNSBsIC0xLjMsLTMuNSBjIC0xLjIsMC4zIC0yLjEsNS4yIC04LjYsNS4yIGggLTAuOCBjIC0zLjQsMCAtNi4zLC0zLjMgLTcuMiwtNiAtMC42LC0xLjcgLTAuNiwtMy42IDAsLTUuNCAwLjgsLTIuNSAxLjYsLTIuNCAyLjYsLTQgbCAtMC40LC0zLjQgYyAtMy4yLDAuOCAtNy4xLDggLTUuNywxMi44IDEuMiw0LjEgNS40LDkuMiAxMC4yLDkuMiB6IE0gODguOSw5Ny45IHYgMC40IGMgMCwwLjggMC41LDEuNCAwLjgsMiBsIDEuNCwxNC43IDExLjMsMCA0LjMsMTAuMiA2LjIsLTIgLTEsLTMgLTMuNSwxIEMgMTA4LDExOS45IDEwNC44LDExMS43IDEwNCwxMTEuNyBIIDk0LjEgQyA5NCwxMTEgOTMuOCwxMTAuOSA5My44LDExMC4xIHYgLTEuMSBoIDcuNiB2IC0yLjQgaCAtOCBsIC0wLjIsLTMuNyB2IC0yLjIgYyAzLjQsLTAuOCAyLjcsLTYuMiAtMS4xLC02LjIgLTEuOCwwIC0zLjIsMS40IC0zLjIsMy4yIHogbSAxOS45LC03LjQgdiAxIGwgLTAuNCwwLjMgQyAxMDUuMSw4OS43IDEwMSw4Ni4xIDEwMSw4MC44IDk5LjYsODEuNyA5OC44LDg0LjggOTguOCw4Ny4xIHYgMS4xIGMgMCw0LjUgMywxMC43IDUsMTMuMyAyLjgsMy43IDcuNCw0LjggMTEuNiw3IDEuNiwtMC44IDkuMywtNS40IDEwLC02LjMgMS4zLC0xLjcgNC4yLC05LjggNC4yLC0xMi40IDAsLTEuOSAtMC4zLC04LjIgLTEuMywtOC44IC0wLjcsMi43IC0wLjgsNC43IC0yLjMsNi44IC0xLDEuNCAtMy4zLDMuNSAtNSw0IGwgLTAuMiwtMi40IHYgLTAuMiBjIDAsLTMgMiwtNS40IDIsLTguOCAwLC0xIC0zLjQsLTYuMSAtNC4xLC02LjIgMCwxLjggLTAuMiw0LjEgLTAuNiw1LjQgLTAuMywxIC0xLjksMy40IC0yLjksMy40IGggLTAuNiBjIC0wLjQsLTEuNCAtMS45LC0xLjcgLTEuOSwtNC44IFYgNzYuOSBjIDAsLTIuMyAyLjYsLTUuNSAyLjYsLTcuOCBsIDAsLTAuNiAtMC4zLC0yLjQgYyAtMSwwLjIgLTEsMS45IC0xLjQsMi45IC0wLjQsMSAtMSwyIC0xLjYsMi45IC0xLjMsMS43IC0yLjYsMy40IC0zLjksNS4xIC0yLDIuOCAtMi4xLDIuNyAtMSw2LjEgMC42LDIgMS43LDQuOCAxLjcsNy40IHogbSAyNC4zLDEwLjIgLTMuMywtMiAtMS4yLDEuOSAzLjUsMiB6IG0gLTY2LjIsMCAxLDEuOSBjIDUsLTIuNyAxMSwtNi45IDE2LC0xMC4xIDIuNywtMS43IDUuMiwtMy40IDcuOCwtNS4xIDEuNCwtMC45IDIuNiwtMS42IDMuOSwtMi42IDEuOCwtMS4yIDEuOSwtMS45IDIuNCwtNC4zIGwgLTMxLjIsMjAuMiB6XCJ9XSxpW1wiQUMuSUMuV0lMRCBGSVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTEwLjgsMTM5LjUgYyAwLjIsLTAuNSA2LjUsLTYuMiA3LjQsLTcgMi42LC0yLjYgNS42LC01LjIgNy44LC04LjEgMy45LC01LjIgOCwtMTUgOCwtMjQgdiAtNi45IGMgMCwtMSAwLC0yLjIgLTAuOCwtMi40IC0wLjgsMy40IC0zLjMsNy43IC01LjEsMTAuMSAtMC41LDAuNiAtNy45LDguNyAtNy45LDYuMiAwLC00LjcgMi41LC04LjQgMi45LC0xMy40IDAuMiwtMi45IC0wLjgsLTExLjQgLTEuNCwtMTQuMyAtMC45LDAuNyAtMS4yLDQuMiAtMS43LDUuNyAtMC42LDEuNyAtMS4yLDMuNiAtMi4xLDUgLTAuNywxLjEgLTYuMSw3LjIgLTcsNy4yIC0wLjcsMCAtMS42LC0yLjkgLTEuNiwtNC4xIDAsLTQuNyAzLjMsLTkuNyAzLjMsLTEzLjQgdiAtMC42IGMgMCwtMi40IC0xLjksLTMuNiAtMywtNS42IC0wLjYsLTEgLTIuNywtNC43IC0zLjcsLTQuOCB2IDIuOSBjIDAsMi4yIC0wLjUsNS42IC0xLjMsNy4xIC0wLjQsMC44IC0zLjIsNC4xIC00LDQuMSAtMSwwIC0zLjksLTMuOSAtMy45LC01LjcgdiAtMy41IGMgMCwtNC4xIDQuMSwtOC42IDQuMSwtMTIuNiB2IC0wLjIgYyAwLC0xLjUgLTAsLTQgLTEuNCwtNC4xIC0wLjcsOCAtMTIuNiwxOC43IC0xMi42LDIxLjggMCw0LjQgMy45LDkuMiAzLjksMTUuOSB2IDIuMiBjIDAsMC43IC0wLjIsMC44IC0wLjIsMS40IC0wLjgsLTAuMiAtMS40LC0xLjMgLTEuOSwtMiAtMC43LC0wLjggLTEuNCwtMS4xIC0yLjIsLTEuNyAtMS41LC0xIC0yLjcsLTIuMyAtMy44LC0zLjcgLTEuOSwtMi41IC00LjEsLTYuNyAtNC4xLC0xMC45IC0xLjgsMC41IC0zLjMsNi4zIC0zLjMsOC44IHYgMy41IGMgMCw4LjMgNS45LDE1LjEgNS45LDE4LjEgLTMuMiwtMS43IC02LC0zLjkgLTguNSwtNi40IC0xLjIsLTEuMiAtNS41LC04LjUgLTYuMiwtOC43IDAsNS43IDEuNywxMC4zIDIuNiwxNS4xIDAuNSwyLjMgMS4yLDUuMSAxLjksNy4xIDEsMi43IDEuOSwzLjMgMy40LDUuMyAzLDQgNC45LDYgOC4zLDkuNCAxLjUsMS41IDIuOSwyLjkgNC40LDQuNCBsIDQuNywzLjQgNS45LDIuOCBWIDEyOS45IGggLTEzIGwgOS45LC0xMS41IC03LjQsLTAuMSA5LjgsLTExLjEgLTYuNiwtMC4xIDEwLjksLTE3LjMgMC4xLC0wLjIgMTEuMiwxNy41IC02LjEsLTAgOS40LDExIC03LjYsMCAxMC4xLDExLjcgLTEzLjEsMC4xIHYgMTMgbCA2LC0zLjQgelwifV0saVtcIkFDLklDLkhBWkFSRE9VUyBNQVRFUklBTFMgSU5DSURFTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2MC43LDEwMC42IDc4LjUsLTAgLTM5LjMsMzkuMiAtMzkuMiwtMzkuMiB6IE0gMTI3LjYsODcuOCBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDg3LjggeiBNIDExNS4zLDc1LjUgYyAwLjYsMC40IDYuMSw1LjkgNi4xLDYuMiBWIDEwMCBoIC02LjEgViA3NS41IHogTSA5MC44LDY5LjUgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViAxMDAgSCA5MC44IFYgNjkuNSB6IG0gLTEyLjIsMTIuMiBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDEwMCBIIDc4LjYgViA4MS43IHogbSAtNi4zLDYgMCwxMi4yIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSAzMC44LC0yNC41IDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjEgLTAuMSwwLjQgViAxMDAgaCAtNi4xIFYgNjMuMyB6IE0gNTYuNywxMDAgMTAwLDE0My4zIDE0My4zLDEwMCAxMDAsNTYuNyA1Ni43LDEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDMuMSw2My4zIDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjEgLTAuMSwwLjQgViAxMDAgaCAtNi4xIFYgNjMuMyB6IG0gLTMwLjgsMjQuNSAwLDEyLjIgSCA2Ni40IFYgOTQuMiBjIDAsLTAuMyAtMCwtMC4zIC0wLjEsLTAuNCBsIDYsLTYgeiBtIDYuMywtNiBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDEwMCBIIDc4LjYgViA4MS43IHogbSAxMi4yLC0xMi4yIGMgMCwtMC40IDUuNSwtNS44IDYuMSwtNi4yIFYgMTAwIEggOTAuOCBWIDY5LjUgeiBtIDI0LjUsNiBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDc1LjUgeiBtIDEyLjMsMTIuMyBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIFYgMTAwIGggLTYuMSBWIDg3LjggeiBtIC02Ni45LDEyLjggNzguNSwtMCAtMzkuMywzOS4yIC0zOS4yLC0zOS4yIHpcIn1dLGlbXCJBQy5JQy5DSEVNSUNBTCBBR0VOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMC43LDEwNy43IGMgLTMuMiwyZS01IC01LjgsMSAtNy42LDMgLTEuOSwyIC0yLjgsNC43IC0yLjgsOC4xIC0yZS02LDMuNCAwLjksNi4xIDIuOCw4LjEgMS45LDIgNC40LDMgNy42LDMgMS4zLDAgMi40LC0wLjIgMy42LC0wLjUgMS4xLC0wLjMgMi4yLC0wLjkgMy4yLC0xLjUgbCAwLjEsLTAuMSAwLC0wLjEgMCwtMyAwLC0wLjUgLTAuMywwLjMgYyAtMC45LDAuOSAtMS45LDEuNSAtMywxLjkgLTEuMSwwLjQgLTIuMiwwLjcgLTMuNCwwLjcgLTIuNCwwIC00LjEsLTAuNyAtNS4zLC0yLjEgLTEuMiwtMS40IC0xLjksLTMuNSAtMS45LC02LjIgLTRlLTYsLTIuNyAwLjYsLTQuOCAxLjksLTYuMiAxLjIsLTEuNCAzLC0yLjEgNS4zLC0yLjEgMS4yLDJlLTUgMi4zLDAuMiAzLjQsMC42IDEuMSwwLjQgMi4xLDEuMSAzLDEuOSBsIDAuMywwLjMgMCwtMC41IDAsLTMgLTAuMiwwIDAuMSwtMC4yIGMgLTEsLTAuNyAtMi4xLC0xLjIgLTMuMiwtMS41IC0xLjEsLTAuMyAtMi4zLC0wLjUgLTMuNiwtMC41IHogTSA5Mi43LDY0LjIgaCAxNC43IHYgMzMgYyAwLDguMiAxMi45LDkuNiAxMi40LDIxLjggLTAuMyw2LjggLTcsMTguNiAtMTQuMywxOC42IGggLTExIGMgLTYuOCwwIC0xNC42LC0xMy4xIC0xNC4zLC0yMCAwLjYsLTEwLjYgMTIuNCwtMTIuOCAxMi40LC0yMC40IHYgLTMzIHogbSAtMTQuNyw1NSBjIDAsNi44IDcuOSwyMC4yIDE0LjcsMjAuMiBoIDE0LjcgYyA4LjEsMCAxNC43LC0xMyAxNC43LC0yMiAwLC0xMS44IC0xMi44LC0xMy42IC0xMi44LC0yMiBWIDYwLjYgSCA5MC44IFYgOTUuNCBjIDAsNy44IC0xMi44LDguNyAtMTIuOCwyMy45IGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6RS5maWxsQ29sb3IuVW5rbm93bixkOlwibSA5Mi43LDY0LjIgMCwzMyBjIDAsNy42IC0xMS45LDkuOCAtMTIuNCwyMC40IEMgNzkuOSwxMjQuNSA4Ny43LDEzNy42IDk0LjUsMTM3LjYgbCAxMSwwIGMgNy4yLDAgMTQsLTExLjggMTQuMywtMTguNiAwLjUsLTEyLjIgLTEyLjQsLTEzLjYgLTEyLjQsLTIxLjggbCAwLC0zMyAtMTQuNywwIHogTSAxMDAuNywxMDcuNyBjIDEuMywyZS01IDIuNSwwLjIgMy42LDAuNSAxLjEsMC4zIDIuMiwwLjggMy4yLDEuNSBsIC0wLjEsMC4yIDAuMiwwIDAsMyAwLDAuNSAtMC4zLC0wLjMgYyAtMC45LC0wLjkgLTEuOSwtMS41IC0zLC0xLjkgLTEuMSwtMC40IC0yLjIsLTAuNiAtMy40LC0wLjYgLTIuNCwyZS01IC00LjEsMC43IC01LjMsMi4xIC0xLjIsMS40IC0xLjksMy41IC0xLjksNi4yIC00ZS02LDIuNyAwLjYsNC44IDEuOSw2LjIgMS4yLDEuNCAzLDIuMSA1LjMsMi4xIDEuMiwwIDIuMywtMC4yIDMuNCwtMC43IDEuMSwtMC40IDIuMSwtMS4xIDMsLTEuOSBsIDAuMywtMC4zIDAsMC41IDAsMyAwLDAuMSAtMC4xLDAuMSBjIC0xLDAuNyAtMi4xLDEuMiAtMy4yLDEuNSAtMS4xLDAuMyAtMi4zLDAuNSAtMy42LDAuNSAtMy4yLDAgLTUuOCwtMSAtNy42LC0zIC0xLjksLTIgLTIuOCwtNC43IC0yLjgsLTguMSAtMmUtNiwtMy40IDAuOSwtNi4xIDIuOCwtOC4xIDEuOSwtMiA0LjQsLTMgNy42LC0zIHpcIn1dLGlbXCJBQy5JQy5DT1JST1NJVkUgTUFURVJJQUxcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDIuOSwxMzUuNCBjIDAuOCwwIDEuNCwtMC44IDEuNCwtMS41IDAsLTAuNyAtMC42LC0xLjUgLTEuMiwtMS41IEggMTAyLjMgYyAtMC41LDAgLTEuMiwwLjcgLTEuMiwxLjQgdiAwLjMgYyAwLDAuOCAwLjYsMS40IDEuNCwxLjQgSCAxMDIuOSB6IE0gOTYuOSwxMzIuNSBjIDAsMC43IDAuNiwxLjUgMS4yLDEuNSBoIDAuNiBjIDAuOCwwIDEuNCwtMC44IDEuNCwtMS41IHYgLTAuMiBjIDAsLTAuNyAtMC42LC0xLjUgLTEuMiwtMS41IEggOTguMSBjIC0wLjYsMCAtMS4yLDAuOSAtMS4yLDEuNSB2IDAuMiB6IG0gOC41LC0wLjkgYyAxLjMsMCAyLjIsLTEuOCAxLjEsLTIuOCAtMSwtMSAtMi44LC0wLjIgLTIuOCwxLjEgMCwwLjggMC45LDEuNyAxLjcsMS43IHogbSAtNi4yLC00LjQgYyAwLDAuNiAwLjYsMS41IDEuMiwxLjUgaCAwLjYgYyAwLjgsMCAxLjQsLTAuNiAxLjQsLTEuNCB2IC0wLjYgYyAwLC0wLjUgLTAuNywtMS4yIC0xLjQsLTEuMiBoIC0wLjMgYyAtMC44LDAgLTEuNSwwLjggLTEuNSwxLjYgeiBtIC0wLjYsLTQuMSBjIDAuNiwwIDEuMiwtMC44IDEuMiwtMS41IDAsLTEgLTAuNywtMS43IC0xLjcsLTEuNyAtMC42LDAgLTEuNSwwLjYgLTEuNSwxLjIgdiAwLjYgYyAwLDAuNyAwLjcsMS40IDEuMiwxLjQgaCAwLjggViAxMjMuMSB6IG0gMi40LC0yLjcgYyAwLDAuNiAwLjcsMS41IDEuMiwxLjUgaCAwLjggYyAwLjQsMCAxLjIsLTAuOCAxLjIsLTEuMiB2IC0wLjggYyAwLC0wLjYgLTAuOCwtMS4yIC0xLjUsLTEuMiBoIC0wLjEgYyAtMC44LDAgLTEuNSwwLjggLTEuNSwxLjUgdiAwLjEgeiBtIC0yLjcsLTMuNSBjIDAuNiwwIDEuNCwtMC44IDEuNCwtMS41IHYgLTAuMiBjIDAsLTIuMiAtMy4yLC0xLjggLTMuMiwtMC4zIHYgMC44IGMgMCwwLjcgMS4xLDEuMiAxLjgsMS4yIHogbSA0LjEsLTMuNiBjIDAsMiAzLjMsMS45IDMuMiwtMC4xIC0wLjEsLTIuMyAtMy4yLC0xLjggLTMuMiwtMC4zIHYgMC40IHogbSA0LjcsLTE2LjIgMCwyLjkgLTMsLTAuMiAwLjksMi44IC0xLjEsMC4xIC0xLjYsLTAuOSAtMC40LDMgLTEsLTEuNSAtMy4zLDEgLTAuNiwtMy4yIC0yLDEuMyAtMC42LC0xLjYgLTIuNSwwLjQgMS41LC0yLjcgLTAuNiwtMS41IC0yMi4yLDAgMCwxMi40IDU5LjIsMCAwLC0xMi40IHogTSA5NC4zLDg1LjIgdiAxLjQgYyAwLDQuNCAyLjEsOC43IDUuNyw5LjQgMy43LDAuOCA3LC00LjUgNywtOCB2IC0xLjUgYyAwLC0zIC0yLjEsLTguNiAtMywtMTEuMyAtMC41LC0xLjQgLTMuMSwtMTAuNiAtMy45LC0xMC42IC0wLjgsMCAtMC45LDQuNSAtMS4xLDUuNCAtMC42LDIuMSAtMC45LDMuMiAtMS42LDUuMSAtMC44LDIuMyAtMy4yLDcuNiAtMy4yLDEwLjEgbCAwLDAgelwifV0saVtcIkFDLklDLkhBWkFSRE9VUyBXSEVOIFdFVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYwLjYsMTAwLjUgNzguOCwtMCAtMzkuNCwzOS40IEwgNjAuNiwxMDAuNSB6IE0gMTI3LjYsODcuOCBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIHYgNS44IEggMTI3LjYgViA4Ny44IHogTSAxMTUuMyw3NS41IGMgMC42LDAuNCA2LjEsNS45IDYuMSw2LjIgdiAxOC4xIGggLTYuMSBWIDc1LjUgeiBNIDkwLjgsNjkuNSBjIDAsLTAuNCA1LjUsLTUuOCA2LjEsLTYuMiBWIDk5LjggSCA5MC44IFYgNjkuNSB6IE0gNzguNiw4MS43IGMgMCwtMC40IDUuNSwtNS44IDYuMSwtNi4yIFYgOTkuOCBIIDc4LjYgViA4MS43IHogbSAtNi4zLDYgMCwxMi4xIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSAzMC44LC0yNC41IDYuMiw2LjEgYyAtMC4yLDAuNCAtMC4xLC0wLjIgLTAuMSwwLjQgdiAzMCBoIC02LjEgViA2My4zIHogTSA1Ni43LDEwMCAxMDAsMTQzLjMgMTQzLjMsMTAwIDEwMCw1Ni43IDU2LjcsMTAwIHogbSA0MS4yLDI1LjMgYyAwLjIsMSAwLjYsMS42IDEuNiwxLjggbCAtMC44LDAuNiBjIC0xLjMsLTAuNiAtMS4zLC0wLjEgLTEuNywtMS45IGwgMC45LC0wLjQgeiBtIC0yLjQsLTEgYyAwLDIuOSAxLjMsNC45IDQuMiw0LjkgaCAwLjkgYyAxLjksMCAzLC0xIDMuNiwtMi4zIDAuOSwtMS44IDAuNiwtMy4xIC0wLjIsLTQuNiAtMC44LC0xLjQgLTEuNiwtMi4zIC0yLjIsLTMuOCAtMC41LC0xLjIgLTAuOCwtMy44IC0xLjcsLTQuNCBDIDk5LjYsMTE4LjEgOTUuNSwxMjIuNSA5NS41LDEyNC4yIHogbSAtMTIuNiwtOS40IGMgMC40LDAuOSAwLjQsMS40IDEuNSwxLjcgbCAtMC42LDAuNiBDIDgyLjIsMTE2LjcgODIuNiwxMTYuNSA4MiwxMTUuMyBsIDAuOSwtMC41IHogbSAxLjYsMy44IEggODYgYyAyLjMsMCAzLjcsLTIuMiAzLjcsLTQuNiAwLC0xLjIgLTEuOSwtMy45IC0yLjYsLTQuOSAtMC45LC0xLjQgLTEuMiwtNC43IC0yLjIsLTUuNCAtMC4yLDMgLTIuMyw1LjkgLTMuNiw4IC0xLjksMi45IC0wLjQsNi45IDMuMSw2LjkgeiBtIDI4LjQsLTMuOCBjIDAuMiwxLjYgMC45LDEuMSAxLjUsMiBsIC0wLjgsMC4zIGMgLTEsLTAuMiAtMS43LC0wLjggLTEuOCwtMS45IEwgMTEyLjksMTE0LjggeiBtIDIsLTExLjEgYyAtMC4zLDMuNiAtMi4yLDUuNiAtMy42LDguMSAtMS43LDMuMSAtMC4zLDYuOCAzLjIsNi44IGggMS4zIGMgMi4yLDAgMy43LC0xLjcgMy43LC0zLjkgdiAtMC45IGMgMCwtMS40IC0xLjksLTMuOCAtMi42LC00LjkgLTAuOSwtMS40IC0wLjcsLTQuNCAtMiwtNS4yIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDExMi45LDExNC44IGMgMC4yLDEuNiAwLjksMS4xIDEuNSwyIGwgLTAuOCwwLjMgYyAtMSwtMC4yIC0xLjcsLTAuOCAtMS44LC0xLjkgTCAxMTIuOSwxMTQuOCB6IG0gLTMwLDAgYyAwLjQsMC45IDAuNCwxLjQgMS41LDEuNyBsIC0wLjYsMC42IEMgODIuMiwxMTYuNyA4Mi42LDExNi41IDgyLDExNS4zIGwgMC45LC0wLjUgeiBtIDE1LDEwLjQgYyAwLjIsMSAwLjYsMS42IDEuNiwxLjggbCAtMC44LDAuNiBjIC0xLjMsLTAuNiAtMS4zLC0wLjEgLTEuNywtMS45IGwgMC45LC0wLjQgeiBtIDUuMiwtNjIgNi4yLDYuMSBjIC0wLjIsMC40IC0wLjEsLTAuMiAtMC4xLDAuNCB2IDMwIGggLTYuMSBWIDYzLjMgeiBtIC0zMC44LDI0LjUgMCwxMi4xIEggNjYuNCBWIDk0LjIgYyAwLC0wLjMgLTAsLTAuMyAtMC4xLC0wLjQgbCA2LC02IHogbSA2LjMsLTYgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViA5OS44IEggNzguNiBWIDgxLjcgeiBtIDEyLjIsLTEyLjIgYyAwLC0wLjQgNS41LC01LjggNi4xLC02LjIgViA5OS44IEggOTAuOCBWIDY5LjUgeiBtIDI0LjUsNiBjIDAuNiwwLjQgNi4xLDUuOSA2LjEsNi4yIHYgMTguMSBoIC02LjEgViA3NS41IHogbSAxMi40LDEyLjMgYyAwLjYsMC40IDYuMSw1LjkgNi4xLDYuMiB2IDUuOCBIIDEyNy42IFYgODcuOCB6IG0gMTEuNywxMi42IC03OC44LDAgMzkuNCwzOS40IEwgMTM5LjQsMTAwLjQgeiBNIDg1LDEwMy43IGMgMSwwLjcgMS4zLDQgMi4yLDUuNCAwLjYsMSAyLjYsMy42IDIuNiw0LjkgMCwyLjQgLTEuNCw0LjYgLTMuNyw0LjYgbCAtMS41LDAgYyAtMy41LDAgLTUsLTQgLTMuMSwtNi45IDEuMywtMi4xIDMuNCwtNSAzLjYsLTggeiBtIDI5LjgsMCBjIDEuMywwLjkgMS4yLDMuOCAyLDUuMiAwLjcsMS4xIDIuNiwzLjUgMi42LDQuOSBsIDAsMC45IGMgMCwyLjIgLTEuNiwzLjkgLTMuNywzLjkgbCAtMS4zLDAgYyAtMy41LDAgLTQuOSwtMy43IC0zLjIsLTYuOCAxLjQsLTIuNSAzLjQsLTQuNSAzLjcsLTguMSB6IE0gMTAwLDExNC4xIGMgMC44LDAuNiAxLjIsMy4xIDEuNyw0LjMgMC42LDEuNSAxLjUsMi40IDIuMiwzLjggMC44LDEuNSAxLjIsMi43IDAuMyw0LjYgLTAuNiwxLjMgLTEuNywyLjMgLTMuNiwyLjMgbCAtMC45LDAgYyAtMi44LDAgLTQuMiwtMiAtNC4yLC00LjkgMCwtMS43IDQuMSwtNi4xIDQuNSwtMTAuMSB6XCJ9XSxpW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTYuNSwxMDQuNiAwLDAuMiAtMC4yLDAgMCw0IDAsMC4yIDAuMiwwIDMuMiwwIDAuMiwwIDAsLTAuMiAwLC00IDAsLTAuMiAtMC4yLDAgLTMuMiwwIHogbSAyLjMsLTIwIGMgLTEuMSwyLjRlLTUgLTIuMiwwLjEgLTMuMiwwLjUgLTEsMC4zIC0yLDAuOCAtMywxLjQgbCAtMC4xLDAuMSAwLDAuMSAwLDMgMCwwLjQgMC4zLC0wLjIgYyAxLC0wLjcgMiwtMS4yIDIuOSwtMS42IDAuOSwtMC40IDEuOCwtMC41IDIuNiwtMC41IDEuMSwyLjFlLTUgMiwwLjMgMi42LDAuOCAwLjcsMC41IDEsMS4yIDEsMi4xIC0xMGUtNiwwLjUgLTAuMSwxIC0wLjQsMS40IC0wLjIsMC41IC0wLjcsMSAtMS4zLDEuNSBsIC0wLDAgLTEuNCwxLjQgYyAtMSwwLjkgLTEuNiwxLjcgLTEuOSwyLjUgLTAuMywwLjcgLTAuNSwxLjYgLTAuNSwyLjcgbCAwLDIuNCAwLDAuMiAwLjIsMCAzLDAgMCwtMC4yIDAuMiwwIDAsLTEuOSBjIC04ZS02LC0wLjUgMCwtMSAwLC0xLjMgMCwtMC4zIDAuMSwtMC42IDAuMSwtMC44IDAuMSwtMC4yIDAuMiwtMC41IDAuNCwtMC44IDAuMiwtMC4zIDAuNSwtMC43IDEsLTEuMSBsIDEuNCwtMS40IGMgMSwtMC45IDEuNiwtMS43IDIsLTIuNSAwLjQsLTAuOCAwLjYsLTEuNiAwLjYsLTIuNCAtMmUtNSwtMS43IC0wLjYsLTMuMSAtMS44LC00LjIgLTEuMiwtMS4xIC0yLjgsLTEuNiAtNC44LC0xLjYgeiBtIDQuOCwtMzEuMSAtMS41LDQuNSAtNC4zLDEyLjkgLTQuNSwtNyAtMS42LC0yLjUgLTAuMywyLjkgLTEuMywxNC40IC05LjUsLTEwLjcgLTIuOCwtMy4yIDEuMSw0LjEgMy40LDEyLjkgLTEzLjEsLTAuNyAtMC43LC0wIC0wLjMsMC42IC0wLjEsMC4yIC0wLjQsMC44IDAuNywwLjUgMTEuMyw4LjEgLTIwLjEsMS40IC01LjYsMC40IDUuNCwxLjYgMTgsNS4zIC0xMi4zLDcuMSAtMC44LDAuNCAwLjMsMC44IDAuMSwwLjIgMC4zLDAuNyAwLjgsLTAuMSAxNi4xLC0yIC00LjgsOC4zIC0xLjUsMi42IDIuNywtMS4xIDguOCwtMy43IC0zLjQsMTQuNSAtMS4xLDQuNSAyLjgsLTMuNyA4LjksLTExLjYgNSwxOS4yIDAuMiwwLjggMC44LDAgMC40LDAgMC45LDAgMC4xLC0xIDAuOSwtMTguNyA5LjIsMTEuMiAyLjYsMy4yIC0wLjksLTQgLTMuMywtMTUuMiAxMC42LDUuOSA0LjcsMi42IC0zLjQsLTQuMSAtNS41LC02LjYgMTUuNiw0LjQgNCwxLjIgLTMuMSwtMi45IC0xMC43LC05LjkgMTMuNywtMi4xIDQuNiwtMC43IC00LjUsLTEuMiAtMTUuNSwtNC4zIDE4LjksLTkuNiA0LjcsLTIuNCAtNS4yLDAuNSAtMTcuMSwxLjYgNi43LC0xMC44IDIsLTMuMiAtMy4zLDEuOCAtMTQuNiw3LjkgNS4yLC0xNi41IDEuNywtNS41IC0zLjUsNC41IC0xMC42LDE0IC0xLjcsLTE4LjggLTAuNCwtNC44IHogbSAtMS4xLDkuNyAxLjUsMTYuNiAwLjIsMi42IDEuNiwtMiA4LjcsLTExLjUgLTQuMiwxMy40IC0wLjgsMi40IDIuMiwtMS4yIDEzLjQsLTcuMyAtNS44LDkuMyAtMS4xLDEuNyAyLC0wLjIgMTMuOSwtMS4zIC0xNi41LDguNCAtMi4zLDEuMiAyLjUsMC43IDEzLjUsMy43IC0xMS4yLDEuNyAtMiwwLjMgMS41LDEuNCA5LjEsOC40IC0xNC42LC00LjIgLTMuMSwtMC45IDIuMSwyLjUgNC4yLDUgLTcuOCwtNC4zIC0xLjksLTEuMSAwLjUsMi4yIDIuOSwxMy4zIC04LjIsLTEwIC0xLjYsLTIgLTAuMSwyLjYgLTAuOCwxNi4xIC00LjIsLTE2LjMgLTAuNSwtMiAtMS4yLDEuNiAtNy4zLDkuNSAyLjgsLTExLjkgMC40LC0xLjkgLTEuOCwwLjcgLTcuOSwzLjMgNC4zLC03LjQgMSwtMS43IC0yLDAuMiAtMTMuOSwxLjcgMTAuMywtNiAwLjUsLTAuMyAwLC0wLjYgMCwtMC4zIDAsLTAuOCAtMC43LC0wLjIgLTE0LjUsLTQuMiAxNy4zLC0xLjIgMi44LC0wLjIgLTIuMywtMS42IC0xMSwtOCAxMS41LDAuNiAxLjQsMC4xIC0wLjMsLTEuMyAtMi43LC0xMC4xIDguMiw5LjMgMS41LDEuOCAwLjIsLTIuMyAxLjMsLTEzLjggNCw2LjMgMS4xLDEuOCAwLjcsLTIgMy40LC0xMC4zIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDEwMi41IDYzLjIgTCA5OSA3My41IEwgOTguNCA3NS41IEwgOTcuMyA3My43IEwgOTMuMiA2Ny40IEwgOTEuOSA4MS4zIEwgOTEuNyA4My42IEwgOTAuMiA4MS44IEwgODIgNzIuNSBMIDg0LjcgODIuNyBMIDg1LjEgODQgTCA4My43IDgzLjkgTCA3Mi4yIDgzLjQgTCA4My4yIDkxLjMgTCA4NS41IDkzIEwgODIuNyA5My4yIEwgNjUuNCA5NC4zIEwgNzkuOSA5OC41IEwgODAuNyA5OC44IEwgODAuNyA5OS41IEwgODAuNyA5OS44IEwgODAuNyAxMDAuMyBMIDgwLjIgMTAwLjcgTCA2OS44IDEwNi42IEwgODMuOCAxMDQuOSBMIDg1LjggMTA0LjcgTCA4NC44IDEwNi40IEwgODAuNCAxMTMuOCBMIDg4LjMgMTEwLjYgTCA5MC4xIDEwOS44IEwgODkuNyAxMTEuNyBMIDg2LjkgMTIzLjYgTCA5NC4yIDExNC4xIEwgOTUuNSAxMTIuNSBMIDk2IDExNC40IEwgMTAwLjIgMTMwLjggTCAxMDEgMTE0LjYgTCAxMDEuMiAxMTIgTCAxMDIuOCAxMTQgTCAxMTEgMTI0IEwgMTA4LjEgMTEwLjcgTCAxMDcuNiAxMDguNSBMIDEwOS42IDEwOS42IEwgMTE3LjMgMTEzLjkgTCAxMTMuMiAxMDguOSBMIDExMS4xIDEwNi40IEwgMTE0LjMgMTA3LjMgTCAxMjguOSAxMTEuNSBMIDExOS43IDEwMy4xIEwgMTE4LjIgMTAxLjcgTCAxMjAuMyAxMDEuMyBMIDEzMS40IDk5LjYgTCAxMTcuOSA5NS45IEwgMTE1LjQgOTUuMiBMIDExNy44IDk0IEwgMTM0LjMgODUuNiBMIDEyMC4zIDg2LjkgTCAxMTguMyA4Ny4xIEwgMTE5LjQgODUuNCBMIDEyNS4yIDc2LjEgTCAxMTEuOCA4My4zIEwgMTA5LjYgODQuNSBMIDExMC4zIDgyLjIgTCAxMTQuNSA2OC44IEwgMTA1LjggODAuMyBMIDEwNC4zIDgyLjMgTCAxMDQgNzkuOCBMIDEwMi41IDYzLjIgeiBNIDk4LjggODQuNSBDIDEwMC44IDg0LjUgMTAyLjQgODUuMSAxMDMuNiA4Ni4xIEMgMTA0LjggODcuMiAxMDUuNSA4OC42IDEwNS41IDkwLjMgQyAxMDUuNSA5MS4yIDEwNS4zIDkyIDEwNC45IDkyLjcgQyAxMDQuNSA5My41IDEwMy44IDk0LjMgMTAyLjggOTUuMiBMIDEwMS41IDk2LjYgQyAxMDEgOTcuMSAxMDAuNiA5Ny40IDEwMC40IDk3LjcgQyAxMDAuMiA5OCAxMDAuMSA5OC4yIDEwMCA5OC41IEMgMTAwIDk4LjcgOTkuOSA5OC45IDk5LjkgOTkuMiBDIDk5LjggOTkuNSA5OS44IDEwMCA5OS44IDEwMC41IEwgOTkuOCAxMDIuNCBMIDk5LjcgMTAyLjQgTCA5OS43IDEwMi43IEwgOTYuNiAxMDIuNyBMIDk2LjQgMTAyLjcgTCA5Ni40IDEwMi40IEwgOTYuNCAxMDAgQyA5Ni40IDk4LjkgOTYuNiA5OCA5Ni45IDk3LjMgQyA5Ny4yIDk2LjYgOTcuOSA5NS44IDk4LjggOTQuOCBMIDEwMC4yIDkzLjQgQyAxMDAuOCA5Mi45IDEwMS4yIDkyLjQgMTAxLjUgOTEuOSBDIDEwMS43IDkxLjQgMTAxLjkgOTEgMTAxLjkgOTAuNSBDIDEwMS45IDg5LjYgMTAxLjUgODguOSAxMDAuOSA4OC4zIEMgMTAwLjIgODcuOCA5OS40IDg3LjUgOTguMyA4Ny41IEMgOTcuNSA4Ny41IDk2LjYgODcuNyA5NS43IDg4LjEgQyA5NC44IDg4LjUgOTMuOCA4OSA5Mi44IDg5LjcgTCA5Mi41IDg5LjkgTCA5Mi41IDg5LjUgTCA5Mi41IDg2LjUgTCA5Mi41IDg2LjQgTCA5Mi42IDg2LjMgQyA5My42IDg1LjcgOTQuNiA4NS4zIDk1LjYgODUgQyA5Ni43IDg0LjcgOTcuNyA4NC41IDk4LjggODQuNSB6IE0gOTYuNSAxMDQuNiBMIDk5LjggMTA0LjYgTCA5OS45IDEwNC42IEwgOTkuOSAxMDQuOCBMIDk5LjkgMTA4LjggTCA5OS45IDEwOSBMIDk5LjggMTA5IEwgOTYuNSAxMDkgTCA5Ni4zIDEwOSBMIDk2LjMgMTA4LjggTCA5Ni4zIDEwNC44IEwgOTYuNSAxMDQuOCBMIDk2LjUgMTA0LjYgelwifV0saVtcIkFDLklDLkZMQU1NQUJMRSBHQVNcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5My4zLDgyLjUgYyAwLC00LjMgMTMuOCwtNC4zIDEzLjgsMCB2IDU1LjYgYyAwLDEuMyAtNC40LDEuMiAtNS45LDEuMiBoIC0yIGMgLTEuNSwwIC01LjksMC4xIC01LjksLTEuMiBWIDgyLjUgbCA0ZS00LDAgeiBtIDUuMywtMjAuNiBoIC02LjUgdiAyLjkgaCA2LjMgdiAzLjIgaCAtMy43IHYgMiBoIDMuNyB2IDUuMyBoIC00LjYgdiA0LjUgYyAtMS4xLDAuMyAtMiwxLjYgLTIsMyB2IDU0LjggYyAwLDMuMyAzLjcsMy4yIDcuMSwzLjIgaCAyLjQgYyAzLjQsMCA3LjEsMC4yIDcuMSwtMy4yIFYgODMuMSBjIDAsLTIuOCAtMS44LC0yLjggLTEuOCwtMy43IHYgLTQuMSBoIC00LjcgdiAtMTAuNCBoIDYuMyB2IC0zIGggLTYuNyB2IC0yLjUgaCAtMi45IHYgMi41IGwgMCwwIHogbSAyMS44LDMyLjMgdiAwLjYgYyAwLDIuMiAyLjMsNS4xIDEuNiw4LjEgLTEuMywtMC4zIC0zLjEsLTIgLTMuOCwtMyAtMC4zLC0wLjQgLTAuOSwtMS43IC0xLjIsLTIuMiAtMC40LC0wLjkgLTAuNCwtMi4zIC0wLjcsLTIuOCAtMS4xLDAuOCAtMS42LDMuNSAtMS42LDUuNSB2IDAuMiBjIDAsMy4yIDIuNCw3LjUgMy44LDkuNiAyLDMgNi4zLDMuMyA4LjQsNS4xIDEuNiwtMC45IDYuOSwtMy43IDcuNywtNC45IDAuOSwtMS4yIDMuMiwtNy40IDMsLTkuNiBsIC0wLjcsLTUuOSBoIC0wLjQgYyAtMCwzLjIgLTIuNyw3LjYgLTUuNSw3LjkgdiAtMiBjIDAsLTEuNyAxLjQsLTQgMS40LC02LjEgdiAtMC4yIGMgMCwtMC45IC0yLjQsLTQuNCAtMy4yLC00LjcgMCwzLjQgLTAuMyw1LjUgLTIuNSw2LjcgLTAuOCwtMC43IC0xLjgsLTEuNiAtMS44LC0zLjEgdiAtMS4yIGMgMCwtMi4xIDIsLTQuMSAyLC02LjEgMCwtMC45IC0wLjEsLTEuNiAtMC42LC0yIC0wLjksMy44IC01LjksOC45IC01LjksMTAuMiB6IG0gLTUyLjcsMCB2IDAuNCBjIDAsMS4yIDEuOCw0LjMgMS44LDYuMSB2IDIuMiBjIC0yLjQsLTAuMiAtNS43LC01IC01LjcsLTguMSAtMS43LDEuMSAtMS41LDQuMyAtMS40LDYuNyAwLjEsMi40IDEuMyw0LjcgMi4yLDYuMyAxLjMsMi42IDEuNiwyLjkgNCw0LjUgMC42LDAuNCA1LjMsMi44IDUuOSwyLjggMS4yLDAgNi44LC0zLjkgNy41LC00LjcgMC45LC0xIDMuMywtNy4zIDMuMSwtOS4xIGwgLTAuNiwtNi41IGggLTAuNCBjIC0wLjUsMi4zIC0wLjMsMy4zIC0xLjYsNSAtMC42LDAuOCAtMi43LDIuNyAtMy44LDIuOCAwLC0wLjkgLTAuMiwtMC43IC0wLjIsLTEuNCAwLC0xLjggMS40LC00LjMgMS43LC02LjYgMC4xLC0xIC0yLjYsLTQuNiAtMy4zLC01IDAuNCwyIC0wLjgsNi41IC0yLjQsNi41IGggLTAuMiBjIC0wLjksMCAtMS44LC0yLjIgLTEuOCwtMy40IDAsLTMuOSAyLjYsLTQuNSAxLjYsLTguOCAtMCwwIC0yLjIsNC41IC0yLjksNS40IC0wLjYsMC42IC0zLjUsNC4zIC0zLjUsNC45IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDkzLjMsODIuNSBjIDAsLTQuMyAxMy44LC00LjMgMTMuOCwwIHYgNTUuNiBjIDAsMS4zIC00LjQsMS4yIC01LjksMS4yIGggLTIgYyAtMS41LDAgLTUuOSwwLjEgLTUuOSwtMS4yIFYgODIuNSBsIDRlLTQsMCB6XCJ9XSxpW1wiQUMuSUMuRkxBTU1BQkxFIExJUVVJRFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMC4xLDEzNS40IGMgLTcuNCwwIC0xMS4zLC01LjQgLTEzLjEsLTExLjEgLTIuMSwtNi43IC0yLjQsLTE0LjQgMC44LC0yMC4yIDUuOSwtMTAuNiAxMC43LC0yMS42IDExLjksLTM2LjcgNCw0LjYgMy42LDE3LjQgNi4zLDIzLjkgMi42LDYuNSA4LjksMTMuNCA4LjksMjEgdiAxLjcgYyAwLDEwIC00LjUsMjEuMyAtMTQuMiwyMS4zIGggLTAuNyB2IDAgeiBtIC0wLjYsMS43IGggMS45IGMgMTAuMSwwIDE1LjQsLTExLjcgMTUuNCwtMjEuOSB2IC0zIGMgMCwtOS41IC03LjcsLTE1LjggLTkuOSwtMjQuMSAtMi40LC04LjkgLTEuNywtMjEuMiAtOS4xLC0yNS4xIDAsOC42IC0xLjMsMTYgLTMuNiwyMi40IC0xLjIsMy4zIC0yLjQsNi4yIC0zLjYsOS41IC0xLjIsMi43IC0zLjEsNS44IC00LjUsOC42IC0xLjQsMi43IC0zLDYuMSAtMi42LDEwLjUgMC40LDQuNCAwLjYsNy42IDEuOCwxMS4zIDIsNS45IDYuNywxMS45IDE0LjMsMTEuOSB6IE0gMTIyLDg3IHYgMC4yIGMgMCwyLjMgMi40LDUuNSAxLjcsOC42IC0xLjMsLTAuMSAtMy41LC0yLjIgLTQuMSwtMy4yIC0wLjUsLTAuOSAtMC45LC0xLjMgLTEuMiwtMi40IC0wLjMsLTAuNyAtMC42LC0yLjYgLTAuOCwtMyAtMS4yLDAuOSAtMS43LDQgLTEuNyw2LjEgMCwzLjIgMi42LDguNCA0LDEwLjQgMSwxLjMgMi41LDIuMyA0LjEsMy4xIDAuNiwwLjMgNC44LDIuNCA1LDIuNCAwLjksMCA3LjYsLTQuNCA4LjIsLTUuMSAwLjksLTEuMSAzLjUsLTggMy4zLC0xMC4xIGwgLTAuNywtNi44IGggLTAuNCBjIC0wLjEsMy41IC0yLjgsOC4yIC01LjksOC40IDAsMCAwLjMsLTMuNSAwLjUsLTQuNCAwLjMsLTEuMyAxLC0yLjkgMSwtNC4zIFYgODYuOCBjIDAsLTEgLTIuNywtNC42IC0zLjQsLTUuMSAwLDMuNyAtMC4yLDYgLTIuNyw3LjIgLTAuNywtMC42IC0xLjksLTEuNyAtMS45LC0zIHYgLTEuNCBjIDAsLTIuMyAyLjEsLTQuNyAyLjEsLTYuNSBsIDAsLTAuMiAtMC4zLC0xLjkgYyAtMSwwLjIgLTEuMSwyIC0xLjUsMi45IC0wLjUsMC45IC0xLjIsMS45IC0xLjgsMi42IC0wLjksMS4yIC0zLjUsNC4xIC0zLjUsNS43IHogbSAtNTYuNiwwIGMgMCwxLjMgMS45LDQuNyAxLjksNyB2IDEuOSBjIC0yLjYsLTAuMiAtNi4xLC01LjIgLTYuMSwtOC42IC0zLjQsMi40IC0wLjcsMTEuNCAwLjksMTQuMSAxLjUsMi42IDEuOCwzIDQuNCw0LjcgMC40LDAuMyA2LjEsMy4xIDYuMiwzLjEgMS4zLDAgNC4xLC0yLjUgNS4zLC0zLjIgMi41LC0xLjIgMi45LC0xLjcgNC4yLC00LjMgMC40LC0wLjkgMS42LC01LjQgMS45LC02LjYgMC40LC0yLjEgLTAuNSwtNS44IC0wLjUsLTcuOSBoIC0wLjUgYyAtMC4zLDMuNSAtMi45LDguNCAtNS45LDguNCAtMCwtMC45IC0wLjIsLTAuNSAtMC4yLC0xLjIgMCwtMiAxLjUsLTQuOSAxLjgsLTcuMSAwLjIsLTEuMiAtMi43LC01LjIgLTMuNSwtNS40IDEsMi4xIC0xLjEsNi4xIC0yLjcsNyAtMC45LC0wLjYgLTEuOSwtMi4yIC0xLjksLTMuNiB2IC0wLjQgYyAwLC0zLjcgMi43LC00LjYgMS43LC05LjEgLTAuNSwwLjQgLTAuOCwyIC0xLjQsMyAtMC43LDEgLTEsMS43IC0xLjgsMi43IC0wLjgsMSAtMy42LDQuMiAtMy42LDUuNSBsIDAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDAuMSwxMzUuNCBjIC03LjQsMCAtMTEuMywtNS40IC0xMy4xLC0xMS4xIC0yLjEsLTYuNyAtMi40LC0xNC40IDAuOCwtMjAuMiA1LjksLTEwLjYgMTAuNywtMjEuNiAxMS45LC0zNi43IDQsNC42IDMuNiwxNy40IDYuMywyMy45IDIuNiw2LjUgOC45LDEzLjQgOC45LDIxIHYgMS43IGMgMCwxMCAtNC41LDIxLjMgLTE0LjIsMjEuMyBoIC0wLjcgdiAwIHpcIn1dLGlbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2OC42LDEwMiBjIDAsLTIgMS45LC00LjIgMS45LC02LjMgdiAtMS41IGMgMCwtMC42IC0wLjEsLTAuNCAtMC40LC0wLjcgLTAuOCwzLjcgLTYuMSw5LjEgLTYuMSwxMC40IDAsMS42IDEuOSw0LjYgMS45LDguMiAtMi42LC0wLjIgLTUuOSwtNC45IC01LjksLTggLTAuOCwwLjkgLTEuNSwyLjYgLTEuNSw0LjMgMCw0LjQgMS43LDguMSAzLjUsMTAuNiAwLjgsMS4yIDcsNS4yIDguNyw1LjIgMS4xLDAgNi43LC0zLjcgNy4zLC00LjQgMC45LC0xLjIgMy4yLC02LjggMy4yLC04LjYgMCwtMS42IC0wLC02LjYgLTAuOSwtNy4yIC0xLjEsNC44IC0xLjUsNS45IC01LjQsOC4xIDAsLTQuMyAxLjMsLTUuNyAxLjMsLTguMiB2IC0wLjQgYyAwLC0wLjEgLTIuOCwtNC40IC0zLC00LjYgMCwyLjQgLTAuNyw2LjcgLTIuNiw2LjcgLTEsOGUtNCAtMiwtMi40IC0yLC0zLjcgeiBtIDYwLjMsLTAuNCBjIDAsLTEuNyAyLjIsLTQuNSAyLjIsLTYuMyAwLC0wLjcgLTAuMiwtMS42IC0wLjcsLTEuOSAtMC45LDMuNyAtNS45LDguOSAtNS45LDEwLjIgdiAwLjQgYyAwLDEuOSAxLjUsMy43IDEuNSw2LjEgdiAyLjIgYyAtMi4zLC0wLjYgLTUuNiwtNC45IC01LjcsLTggLTEsMC43IC0xLjUsMyAtMS41LDQuOCB2IDEuMSBjIDAsMi44IDIuNSw3LjcgMy44LDkuNSAyLDIuNyA2LjQsMy4xIDguNCw0LjggMi4xLC0xLjEgMy4xLC0xLjggNS4xLC0yLjkgMi42LC0xLjYgMi4yLC0xLjUgMy41LC00LjMgMC43LC0xLjQgMS43LC00LjUgMS44LC02LjIgMC4xLC0xLjUgLTAuMSwtNi40IC0wLjksLTcgLTAuOCwzLjUgLTIuMSw3LjEgLTUuNCw4IC0wLC0wLjcgLTAuMiwtMC43IC0wLjIsLTEuNSB2IC0wLjIgYyAwLC0xLjggMS43LC00LjkgMS41LC02LjQgLTAuMSwtMC44IC0yLjUsLTQuOCAtMywtNS4xIDAsMi44IC0wLjUsNi43IC0zLDYuNyAtMC40LC0xLjMgLTEuNSwtMSAtMS41LC0zLjkgeiBtIC0zNS42LDEuOSB2IC0yMCBsIDIwLC0wLjQgdiAxOS40IGwgLTIwLDEgeiBtIC0xMy45LC03LjYgMCwtMTYuOCAxMC44LDQgdiAxOS44IGMgLTEuMiwtMC43IC0xMC45LC02LjIgLTEwLjksLTcgeiBtIDEuNSwtMTguNCBjIDUuNywwIDExLjQsMCAxNy4yLDAgMi4xLDAgMTIuMSwzLjEgMTMuMiwzLjkgbCAtMy43LDAuMyBIIDkyLjYgYyAtMC45LDAgLTExLjEsLTMuNyAtMTEuNywtNC4xIHogbSAtMy41LC0xLjUgMCwxNC43IC0wLjMsNi43IGMgMi4yLDEuMiA1LjMsMyA3LjUsNC41IDEuOSwxLjIgNS41LDQgOC4xLDQgNy42LDAgMTUuMywtMS4xIDIzLjEsLTEuMSBsIC0wLC0yMy42IGMgLTEsLTAuNSAtMTQuOCwtNS40IC0xNS4yLC01LjQgbCAtMy45LC0wLjEgLTE5LjMsMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDgwLjksNzcuNSBjIDUuNywwIDExLjQsMCAxNy4yLDAgMi4xLDAgMTIuMSwzLjEgMTMuMiwzLjkgbCAtMy43LDAuMyBIIDkyLjYgYyAtMC45LDAgLTExLjEsLTMuNyAtMTEuNywtNC4xIHogbSAtMS41LDE4LjQgMCwtMTYuOCAxMC44LDQgdiAxOS44IGMgLTEuMiwtMC43IC0xMC45LC02LjIgLTEwLjksLTcgeiBtIDEzLjksNy42IHYgLTIwIGwgMjAsLTAuNCB2IDE5LjQgbCAtMjAsMSB6XCJ9XSxpW1wiQUMuSUMuTk9OLUZMQU1NQUJMRSBHQVNcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5Mi43LDgxLjMgYyAwLC00LjYgMTQuNywtNC42IDE0LjcsMCB2IDU5LjQgYyAwLDEuNCAtNC43LDEuMyAtNi4zLDEuMyBoIC0yLjEgYyAtMS42LDAgLTYuMywwLjEgLTYuMywtMS4zIFYgODEuMyB6IG0gNS43LC0yMiBoIC03IHYgMy4yIGggNi43IHYgMy4zIGggLTQgdiAyLjEgaCA0IHYgNS43IGggLTQuOCB2IDQuOCBjIC0xLjEsMC4zIC0yLjEsMS43IC0yLjEsMy4xIHYgNTguNiBjIDAsMy41IDQsMy4zIDcuNiwzLjMgaCAyLjUgYyAzLjYsMCA3LjYsMC4yIDcuNiwtMy4zIFYgODEuOSBjIDAsLTMgLTEuOSwtMyAtMS45LC00IHYgLTQuNCBoIC01IHYgLTExLjEgaCA2LjcgdiAtMy4xIGggLTcuMiB2IC0yLjcgaCAtMy4xIHYgMi43IGwgLTRlLTQsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSA5Mi43LDgxLjMgYyAwLC00LjYgMTQuNywtNC42IDE0LjcsMCB2IDU5LjQgYyAwLDEuNCAtNC43LDEuMyAtNi4zLDEuMyBoIC0yLjEgYyAtMS42LDAgLTYuMywwLjEgLTYuMywtMS4zIFYgODEuMyB6XCJ9XSxpW1wiQUMuSUMuT1JHQU5JQyBQRVJPWElERVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMi4xLDEyOC4yIHYgNi4yIGwgLTM2LjYsMi4yIHYgLTYuNyBsIDAuNiwwLjEgMzYsLTEuNyB6IG0gLTYzLjgsLTExLjEgYyAyLjYsMS43IDI2LjEsMTIuMSAyNi4xLDEzLjIgdiA1LjkgbCAtMC4xLDAuMiAtMjYsLTE0LjcgdiAtNC42IHogbSA2MS4xLDEwIGMgLTQuNywwIC0zMywyLjEgLTM0LjYsMS41IC0xLjgsLTAuNyAtMjMuOCwtMTEuNCAtMjQuNCwtMTIgMy44LDAgNy41LDAgMTEuMywwIDIuOSwwIDguOCwtMC44IDEwLDEuMSBsIC05LDAuNiAyLjEsMC43IHYgMC40IGggLTEuMiBsIC0xLjgsMC4yIGMgMiwxLjMgMTguMyw1LjIgMjIuNCw1LjIgaCAxLjkgYyA0LjgsMCA5LjIsLTEuMyAxMywtMS40IDAuNywwIDkuOSwzLjMgMTAuNCwzLjcgeiBtIC0yNS40LC0yMy4yIDEuMSw5LjQgNS40LC02LjggLTIuNSw4LjIgNy43LC00LjMgLTMuNyw1LjkgOC40LC0wLjggLTkuMiw0LjcgOC4xLDIuNiAtMTQuNCwxLjcgYyAtMy4zLDAuMiAtMTksLTMuNyAtMjAuNSwtNC44IGwgMTAuMywtMC42IC02LjIsLTQuNSA2LjgsMC4xIC0xLjcsLTUuOSA1LjEsNS4yIDAuNywtNy41IDIuNiwzLjkgMi4xLC02LjYgeiBtIDAuNywtMi4yIC0wLjEsLTAuNiBoIC0wLjMgbCAtMS44LDYuMiAtMC40LC0wIC0yLjQsLTMuNyAtMCwyLjEgLTAuNywtMS4xIC0wLjYsNi4yIC00LjksLTUuNCAwLjYsMi42IC0xLjUsLTEuMiAxLjgsNi4yIC0yLjUsMCAtNCwtMC4yIDEuNSwxLjEgLTIuNCwtMC4xIDEuNSwxLjQgaCAtMjEuMyBjIC0wLjEsMC41IC0wLjIsMC41IC0wLjIsMS4xIHYgNSBjIDAsMS42IDQuOCwzLjcgNi4yLDQuNCAyLjMsMS4zIDQuNiwyLjQgNi45LDMuOCA0LjQsMi43IDkuMiw1IDEzLjcsNy42IDEuOCwxLjEgNi44LDAuNSA5LjYsMC4yIDIuOCwtMC4zIDcuMiwtMC4yIDkuOSwtMC43IDIuOCwtMC41IDcsLTAuNCA5LjksLTAuNyAyLjcsLTAuNCA3LjQsLTAuNiAxMCwtMC43IHYgLTcuOSBjIDAsLTAuOSAtNS4zLC0yLjQgLTYuNCwtMi44IC0xLjYsLTAuNSAtNS43LC0xLjkgLTYuOCwtMi42IGwgMi45LC0wLjMgLTguNCwtMi4yIDAsLTAuNCA5LjIsLTQuNyAtMS41LDAuMiAxLjcsLTEuMSAtMTAsMSAzLjksLTYuNiAtOC4xLDQuNyAyLjksLTEwIC02LjQsOC40IC0xLjEsLTExLjEgLTAuNiwxLjkgeiBtIDEuMSwtNi4yIGMgLTUuNiwwIC05LjYsLTMuNCAtOS42LC05IHYgLTEuMSBjIDAsLTQuOCA5LC0xMi41IDksLTIxLjEgMi44LDMuMiAyLjIsNy42IDQuMywxMSAxLjIsMS45IDUuMyw3LjggNS4zLDkuOSB2IDEuMSBjIDAsNS4zIC0zLjcsOS4yIC05LDkuMiB6IG0gLTEwLjksLTEwIHYgMS4xIGMgMCwxMy43IDIxLjEsMTMuMiAyMS4xLDAuOCB2IC0yLjEgYyAwLC0zLjUgLTQuNSwtOC4zIC01LjksLTExLjcgLTIuMiwtNS4xIC0xLjEsLTguOCAtNi4yLC0xMS42IDAsMTEuMiAtOSwxNy42IC05LDIzLjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTA1LjcsOTUuNSBjIC01LjYsMCAtOS42LC0zLjQgLTkuNiwtOSB2IC0xLjEgYyAwLC00LjggOSwtMTIuNSA5LC0yMS4xIDIuOCwzLjIgMi4yLDcuNiA0LjMsMTEgMS4yLDEuOSA1LjMsNy44IDUuMyw5LjkgdiAxLjEgYyAwLDUuMyAtMy43LDkuMiAtOSw5LjIgeiBtIC0xLjgsOC40IDEuMSw5LjQgNS40LC02LjggLTIuNSw4LjIgNy43LC00LjMgLTMuNyw1LjkgOC40LC0wLjggLTkuMiw0LjcgOC4xLDIuNiAtMTQuNCwxLjcgYyAtMy4zLDAuMiAtMTksLTMuNyAtMjAuNSwtNC44IGwgMTAuMywtMC42IC02LjIsLTQuNSA2LjgsMC4xIC0xLjcsLTUuOSA1LjEsNS4yIDAuNywtNy41IDIuNiwzLjkgMi4xLC02LjYgeiBtIC0zNS42LDEzLjIgYyAyLjYsMS43IDI2LjEsMTIuMSAyNi4xLDEzLjIgdiA1LjkgbCAtMC4xLDAuMiAtMjYsLTE0LjcgdiAtNC42IHogbSA2My44LDExLjEgdiA2LjIgbCAtMzYuNiwyLjIgdiAtNi43IGwgMC42LDAuMSAzNiwtMS43IHogbSAtMi43LC0xLjEgYyAtNC43LDAgLTMzLDIuMSAtMzQuNiwxLjUgLTEuOCwtMC43IC0yMy44LC0xMS40IC0yNC40LC0xMiAzLjgsMCA3LjUsMCAxMS4zLDAgMi45LDAgOC44LC0wLjggMTAsMS4xIGwgLTksMC42IDIuMSwwLjcgdiAwLjQgaCAtMS4yIGwgLTEuOCwwLjIgYyAyLDEuMyAxOC4zLDUuMiAyMi40LDUuMiBoIDEuOSBjIDQuOCwwIDkuMiwtMS4zIDEzLC0xLjQgMC43LDAgOS45LDMuMyAxMC40LDMuNyB6XCJ9XSxpW1wiQUMuSUMuT1hJRElaRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4MC45LDEzNS4zIDAsMC4yIDAsNC4yIDAsMC4yIDAuMiwwIDQwLjcsMCAwLjIsMCAwLC0wLjIgMCwtNC4yIDAsLTAuMiAtMC4yLDAgLTQwLjcsMCAtMC4yLDAgeiBtIDYuNSwtMjAuNyBjIDAsLTcuNCA2LjEsLTE0IDEzLjQsLTE0IGggMS4xIGMgNy41LDAgMTMuNiw2LjYgMTMuNiwxNCAwLDcuMSAtNi4yLDEzLjkgLTEzLjIsMTMuOSBoIC0xLjkgYyAtNi44LC0wIC0xMywtNi44IC0xMywtMTMuOSB6IG0gMTIuOCwtMzUuOSBjIC0wLjcsMCAtMi4xLC0yLjEgLTIuMywtMi45IC0wLjMsLTEuMiAtMC40LC0zIDAsLTQuNCAwLjUsLTIuMSAyLjgsLTUuOSAyLjgsLTcuNSAwLC0xLjEgLTAuMSwtMyAtMS4zLC0zLjEgLTEsNC40IC0yLjEsNC45IC00LjEsOCAtMSwxLjUgLTQuNyw1LjggLTQuNyw3LjMgdiAwLjQgYyAwLDIuNCAzLjEsOC4xIDIuNywxMC41IGwgLTAuMiwxLjcgYyAtMy41LC0wLjggLTguMSwtNy4zIC04LjEsLTEyIC0xLjQsMC4xIC0yLjUsNC40IC0yLjUsNi4xIHYgMi45IGMgMCw1LjcgMy4zLDguMyA0LjIsMTIgLTIuNywtMS40IC00LC0yLjIgLTUuOSwtNC40IC0xLjEsLTEuMiAtMy43LC01LjYgLTQuMSwtNS45IC0xLjEsMi40IDEuNywxMC4zIDIuNCwxMi4xIDAuNywxLjcgMS40LDMuNSAyLjMsNSAxLjEsMS44IDIuMiwyLjYgMy4yLDQuMSAwLDEuNyAtMC41LDIuNCAtMC42LDQuNyAtMCwxLjggLTAsMi42IDAuMiw0LjYgMC4yLDIuMSAyLjEsNi4xIDMuMiw3LjMgMi40LDIuNiAyLjQsMi44IDUuNiw0LjggMiwxLjMgNC45LDIuMiA4LjEsMi4yIGggMC42IGMgNi40LDAgMTEuNCwtMy41IDE0LjIsLTcuMiAzLjgsLTUuMiAzLjgsLTkuOSAyLjIsLTE2LjcgMy41LC02LjYgNS45LC05LjMgNS45LC0xOS43IHYgLTAuNCBsIC0wLjQsLTQgYyAtMC4xLDAgLTMuMyw2LjIgLTMuOCw3IC0xLDEuNSAtMy43LDQuOCAtNS43LDUgMC4xLC0zLjIgMi4xLC02LjIgMi4xLC05LjQgdiAtMi4yIGwgLTEuMSwtOCBjIC0xLDAuNyAtMS41LDUuOSAtMyw3LjcgLTAuNCwwLjUgLTUuNiw1LjUgLTUuNiwzLjYgdiAtMS43IGMgMCwtMy4xIDIuMSwtNi4zIDIuMSwtOSB2IC0xLjMgYyAwLC0wLjggLTMuOSwtNi41IC00LjYsLTYuOSAwLDIuMyAtMC4yLDQuNCAtMC43LDYuMiAtMC4zLDEuMSAtMiwzLjcgLTMsMy43IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg3LjQsMTE0LjUgYyAwLC03LjQgNi4xLC0xNCAxMy40LC0xNCBoIDEuMSBjIDcuNSwwIDEzLjYsNi42IDEzLjYsMTQgMCw3LjEgLTYuMiwxMy45IC0xMy4yLDEzLjkgaCAtMS45IGMgLTYuOCwtMCAtMTMsLTYuOCAtMTMsLTEzLjkgelwifV0saVtcIkFDLklDLlJBRElPQUNUSVZFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODMuNywxMzAuNCBjIC0xMC4xLC01LjYgLTE2LjYsLTE3IC0xNi40LC0yOC41IGwgMTcuOCwtMCBjIC0wLjIsNSAzLjEsMTAuNyA3LjUsMTMuMSBsIC05LDE1LjQgeiBtIDQ5LjEsLTI4LjIgYyAwLjIsMTEuNSAtNi40LDIyLjkgLTE2LjQsMjguNSBsIC05LC0xNS40IGMgNC40LC0yLjQgNy43LC04LjEgNy42LC0xMy4xIGwgMTcuOCwwIHogTSA4My41LDczLjggYyA5LjksLTUuOSAyMywtNS45IDMyLjksMCBsIC04LjksMTUuNSBjIC00LjMsLTIuNiAtMTAuOSwtMi42IC0xNS4xLDAgbCAtOC45LC0xNS41IHogbSAyNi41LDI4LjUgYyAwLDUuNSAtNC40LDkuOSAtOS45LDkuOSAtNS41LDAgLTkuOSwtNC40IC05LjksLTkuOSAwLC01LjUgNC40LC05LjkgOS45LC05LjkgNS41LDAgOS45LDQuNCA5LjksOS45IHpcIn1dLGlbXCJBQy5JQy5TUE9OVEFORU9VU0xZIENPTUJVU1RJQkxFIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjIsMTI4LjQgLTIuMSwwIDAsMTIuNiAyLjEsMCB6IG0gMjYuNSwwLjYgLTguNywtOC42IC0xLjIsMS4yIDguNyw4LjcgeiBtIC00NSwtNy41IC0xLjMsLTEuMyAtOC44LDguOCAxLjMsMS40IHogbSA1NS41LC0xOS43IC0xMi4yLDAgMCwxLjkgMTIuMiwwIHogbSAtNjMuMywwIC0xMy4xLDAgMCwxLjkgMTIuOCwwIHogbSA1Mi44LC0yNS4zIC0xLjMsLTEuMiAtOSw4LjcgMS41LDEuNSB6IG0gLTQ2LjEsOS4xIDEuNCwtMS41IC05LjMsLTkuMiAtMCwwLjIgLTEuMiwxLjMgeiBtIDE5LjUsLTI2LjUgLTIuMSwwIDAsOS43IDIuMSwwIHogTSA5MS43LDg4IHYgMC42IGMgMCwwLjUgMS40LDQuMyAxLjcsNS4xIDAuNywyLjIgMC43LDMuNCAwLjcsNS43IC0xLjIsLTAuMSAtNC40LC0zIC01LjEsLTQgLTEuNywtMi41IC0xLjcsLTMuNCAtMi41LC02LjcgLTAuOSwwLjcgLTEuOSwzLjggLTEuOSw1LjUgdiAyLjMgYyAwLDUuNiAzLjYsOC40IDMuOCwxMS4xIC0wLjksLTAuMiAtNC44LC0zLjIgLTUuNCwtMy44IC0wLjcsLTAuOCAtMy4zLC01LjMgLTMuOCwtNS40IDAsMy45IDEuMSw2LjkgMi4xLDkuNyAwLjYsMS41IDEuMiwyLjkgMS43LDQuMiAwLjgsMi4yIDEuNCwyIDIuNiwzLjUgMi45LDMuNiA5LjQsOC4zIDE1LjcsOC4zIGggMC44IGMgMi4yLDAgNi40LC0xLjcgNy45LC0yLjYgMi40LC0xLjMgNC41LC0yLjcgNiwtNC44IDIuOCwtMy44IDUuMywtOS4zIDUuMywtMTYgdiAtMi43IGwgLTAuMiwtMi4zIGggLTAuNCBjIC0xLjEsNC43IC00LjIsOC40IC04LDEwLjUgMCwtMy42IDEuMywtNS4zIDEuOSwtOC40IDAuNCwtMi40IC0xLC02LjkgLTEsLTkuMiAtMC40LDAuMyAtMS4yLDUuNCAtMi41LDcgLTAuMywwLjQgLTUuMSw1LjIgLTUuMSwzLjEgdiAtMi4xIGMgMCwtMyAxLjksLTQuOCAxLjksLTguMiAwLC0wLjggLTMuNSwtNiAtNC4xLC02LjMgbCAwLjEsMC45IGMgMCwxLjIgLTAuNCw0LjEgLTAuNyw1IC0wLjIsMC41IC0yLjMsMyAtMi42LDMgLTEuMiwwIC0yLjUsLTIuOSAtMi41LC00LjQgdiAtMS4xIGMgMCwtMi45IDIuOCwtNi4xIDIuNiwtOCBsIC0wLjUsLTIuOSBjIC0wLjUsMC40IC0xLjIsMyAtMS42LDMuOSAtMC42LDEuMyAtMS40LDIuMiAtMi4yLDMuMiBDIDk1LjQsODIuNCA5MS43LDg3LjEgOTEuNyw4OCB6XCJ9XSxpW1wiQUMuSUMuVU5FWFBMT0RFRCBPUkROQU5DRVwiXT1hKFwiVVhPXCIpLGlbXCJBQy5JQy5UT1hJQyBJTkZFQ1RJT1VTIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjYsMTE2LjIgYyAwLC0zLjYgMC45LC00LjYgMS41LC03LjMgbCAtMi41LC0xLjIgYyAtMi40LDIuMSAtNC40LDEuNiAtNi44LDAgbCAtMi41LDEuNCBjIDAuMiwyLjYgMiwzLjkgMS41LDguNyAtMC40LDMuMSAtMS4xLDUuOCAtMi42LDcuOCAtMi45LDMuOSAtNyw3LjQgLTEzLjcsNy40IGggLTEgYyAtNC43LDAgLTEwLjIsLTMuMiAtMTIsLTYgbCAtMS4yLDAuNiBjIDMuMyw0LjkgMTEuNCwxMCAxOS44LDEwIGggMC4yIGMgNi40LDAgMTAuOSwtMi43IDE0LjgsLTUuMyAzLjcsMi41IDcuNiw1IDEzLjgsNSBoIDMgYyAzLjgsMCA4LjIsLTEuNiAxMC42LC0zLjIgMS44LC0xLjIgNi43LC00LjUgNy4yLC02LjYgLTEuMSwtMC4zIC0wLjUsLTAuNSAtMS4zLC0wLjUgLTAuNSwwIC0xLjcsMS45IC0yLjIsMi4zIC0wLjgsMC42IC0xLjgsMS4xIC0yLjYsMS42IC0xLjQsMC45IC00LjcsMS44IC03LDEuOCBoIC0xLjggYyAtNy45LDAgLTE1LjMsLTcuNyAtMTUuMywtMTUuOCB2IC0wLjggeiBtIDIuMywzLjUgMi41LDQuMyBjIDMuMiwtMC44IDcuNywtNS4yIDkuMywtNy44IDIuMiwtMy43IDMuNSwtNy44IDMuNSwtMTMuOCBoIC01LjUgYyAwLjEsNS4yIC0wLjEsNy4yIC0yLjUsMTAuOCAtMS4yLDEuOCAtMS43LDIuMSAtMy4yLDMuNiAtMSwxIC0zLjYsMi4yIC00LjEsMi45IHogbSAtMjguNiwtMTMuOCBjIDAsNy40IDYuOCwxNi43IDEyLjUsMTggbCAyLjMsLTQuNSBjIC02LjUsLTMuNCAtOS41LC04IC05LjUsLTE3LjEgaCAtNS4zIHYgMy41IHogbSAtMi41LC0xNyB2IDEgYyAwLDAuNSAtNSwzLjIgLTUuOCwzLjggLTEuNiwxLjEgLTMuNSwzLjIgLTQuNyw0LjggLTIuOCwzLjYgLTQuOCw4LjEgLTQuOCwxNC4yIDAsNC40IDEsNiAxLjgsOS40IGwgMS4yLC0wLjYgYyAtMC4xLC0xLjUgLTAuOCwtMi4zIC0wLjgsLTQgdiAtMiBjIDAsLTcuOCA3LjksLTE1LjYgMTYsLTE1LjYgaCAxLjggYyAyLjYsMCA1LjksMS4zIDcuNSwyLjIgMi4yLDEuMyAzLjYsMy42IDUuMyw0LjggbCAyLjMsLTEgdiAtMS44IGMgMCwtMiAxLjYsLTMuOSAzLjMsLTQuMyB2IC0zIGMgLTcuNiwtMC4yIC0xNS4zLC03LjggLTE1LjMsLTE1LjUgdiAtMS41IGMgMCwtNC4xIDIuMSwtOC42IDQuMiwtMTAuNiAxLjMsLTEuMiAyLjUsLTIuMyA0LC0zLjIgMC44LC0wLjUgNS4xLC0xLjUgNS4xLC0yLjUgdiAtMSBjIC02LjYsMS42IC0xMS43LDMuOCAtMTUuNCw4LjUgLTQuMyw1LjUgLTUuNyw5IC01LjcsMTcuOSBsIDAsMCB6IG0gMjcuNiwtMjUuNCBjIDAsMC42IDQuMiwyLjEgNSwyLjUgMS4yLDAuNiAzLjUsMi40IDQuMiwzLjUgMi4xLDIuOSA0LjMsNiA0LjMsMTEgMCw4LjIgLTcuNCwxNi4zIC0xNS42LDE2LjMgdiAzIGMgMi4zLDAuMiA0LjQsMy40IDMuMyw1LjggMC42LDAuMiAyLjUsMS4yIDIuNSwxLjIgMC43LDAgNSwtNyAxNC4zLC03IGggMC4yIGMgNC41LDAgOSwyLjYgMTEuMSw1IDEuNywxLjkgNS4zLDcuNiA0LjgsMTEuNCBsIC0wLjgsNS41IDEuMiwwLjYgYyAwLjEsLTAuOSAwLjgsLTIuMyAxLjEsLTMuNiAwLjMsLTEuMiAwLjQsLTMgMC40LC00LjQgdiAtMy4zIGMgMCwtOC40IC04LjMsLTE4LjggLTE1LC0yMC4zIDAsLTUgMC40LC02LjQgLTAuOSwtMTAuOSAtMC45LC0yLjggLTIuNiwtNi40IC00LjMsLTguMyAtNS4xLC01LjMgLTcuNSwtNyAtMTUuOSwtOSB2IDEgbCAtNGUtNCwwIHogbSAtMTUuOCwyMi42IDIuOCw0LjggYyAzLC0xLjYgNC44LC0zLjMgOS41LC0zLjMgaCAwLjUgYyA1LjgsMCA2LjksMi42IDkuNywzLjIgbCAyLjYsLTQuNyBjIC05LjUsLTUgLTE1LjcsLTUgLTI1LjEsMCB6XCJ9XSxpW1wiQUMuSUMuVE9YSUMgR0FTXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTAuMiwxMDIuMyBjIDAuNiwtMS45IDUuNywtMS45IDExLjMsLTAgNS42LDEuOSA5LjYsNC45IDksNi44IC0wLjYsMS45IC01LjcsMS45IC0xMS4zLDAgLTUuNiwtMS45IC05LjYsLTQuOSAtOSwtNi44IHogbSA3LjcsLTIyLjIgYyAxMGUtNywzLjcgLTEuNyw2LjcgLTMuOCw2LjcgLTIuMSwtMmUtNiAtMy44LC0zIC0zLjgsLTYuNyAyZS02LC0zLjcgMS43LC02LjcgMy44LC02LjcgMi4xLDAgMy44LDMgMy44LDYuNyB6IG0gMTcsMi4yIGMgMCw0LjEgLTIuOCw3LjMgLTYuMyw3LjMgLTMuNSwyZS02IC02LjMsLTMuMyAtNi4zLC03LjMgMCwtNC4xIDIuOCwtNy4zIDYuMywtNy4zIDMuNSwwIDYuMywzLjMgNi4zLDcuMyB6IG0gLTcuOSw0OS42IGMgLTEsMi45IC04LjUsMi45IC0xNi42LDAgLTguMiwtMi45IC0xMy45LC03LjYgLTEyLjksLTEwLjUgMSwtMi45IDguNSwtMi45IDE2LjYsLTAgOC4yLDIuOSAxMy45LDcuNiAxMi45LDEwLjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTA3LjUgNjQuMyBDIDEwMi4yIDY0LjIgOTYuOSA2Ny4xIDkyLjggNzEuNiBDIDkwLjYgNzMuNiA4OS4yIDc2LjggODkuMiA4MC40IEMgODkuMiA4MyA5MCA4NS40IDkxLjIgODcuMyBDIDkyLjEgODkuOSA5Mi43IDkxLjggOTIuNyA5NC41IEwgOTIuNCA5Ni43IEwgOTAuNyAxMDEuNiBDIDkyLjMgMTAwLjUgOTYuNyAxMDAuNyAxMDEuNSAxMDIuMyBDIDEwNi42IDEwNCAxMTAuNCAxMDYuNyAxMTAuNSAxMDguNiBMIDExMiAxMDQuMiBDIDExNS45IDEwNCAxMjAuNSA5Ni45IDEyMi43IDg3LjYgQyAxMjQuOSA3Ny45IDEyMy41IDY5LjMgMTE5LjggNjcuOSBDIDExOC40IDY2LjYgMTE2LjEgNjUuNSAxMTIuOCA2NS4zIEMgMTExLjEgNjQuNiAxMDkuMyA2NC4zIDEwNy41IDY0LjMgeiBNIDk0LjEgNzMuNCBDIDk0LjQgNzMuNCA5NC42IDczLjQgOTQuOCA3My41IEMgOTUuMSA3My42IDk1LjMgNzMuOCA5NS42IDczLjkgQyA5Ni4yIDc0LjQgOTYuOCA3NS4zIDk3LjIgNzYuMyBDIDk3LjUgNzcuMSA5Ny43IDc3LjkgOTcuOCA3OC43IEMgOTcuOSA3OS4yIDk3LjkgNzkuNiA5Ny45IDgwLjEgQyA5Ny45IDgwLjUgOTcuOSA4MSA5Ny44IDgxLjQgQyA5Ny43IDgyLjMgOTcuNSA4My4xIDk3LjIgODMuOCBDIDk2LjkgODQuNyA5Ni40IDg1LjQgOTUuOSA4NS45IEMgOTUuNiA4Ni4yIDk1LjIgODYuNSA5NC44IDg2LjYgQyA5NC43IDg2LjYgOTQuNiA4Ni43IDk0LjUgODYuNyBDIDk0LjMgODYuNyA5NC4yIDg2LjcgOTQuMSA4Ni43IEMgOTMuOCA4Ni43IDkzLjYgODYuNyA5My4zIDg2LjYgQyA5MyA4Ni41IDkyLjYgODYuMiA5Mi4zIDg1LjkgQyA5Mi4yIDg1LjggOTIuMSA4NS43IDkyIDg1LjYgQyA5MS42IDg1LjEgOTEuMiA4NC41IDkxIDgzLjggQyA5MC44IDgzLjQgOTAuNyA4My4xIDkwLjYgODIuNyBDIDkwLjQgODEuOSA5MC4zIDgxIDkwLjMgODAuMSBDIDkwLjMgNzkuMSA5MC40IDc4LjMgOTAuNiA3Ny41IEMgOTAuNyA3Ny4xIDkwLjggNzYuNyA5MSA3Ni4zIEMgOTEuMiA3NS42IDkxLjYgNzUgOTIgNzQuNSBDIDkyLjIgNzQuMyA5Mi40IDc0LjEgOTIuNiA3My45IEMgOTIuOSA3My44IDkzLjEgNzMuNiA5My4zIDczLjUgQyA5My42IDczLjQgOTMuOCA3My40IDk0LjEgNzMuNCB6IE0gMTA4LjYgNzUgQyAxMTAuNCA3NSAxMTIuMSA3NS45IDExMy4zIDc3LjMgQyAxMTMuMyA3Ny40IDExMy40IDc3LjUgMTEzLjUgNzcuNiBDIDExMy41IDc3LjYgMTEzLjUgNzcuNiAxMTMuNSA3Ny43IEMgMTEzLjYgNzcuOCAxMTMuNyA3OCAxMTMuOCA3OC4yIEMgMTEzLjggNzguMyAxMTMuOSA3OC4zIDExMy45IDc4LjQgQyAxMTQgNzguNSAxMTQgNzguNSAxMTQgNzguNiBDIDExNC4xIDc4LjcgMTE0LjIgNzguOCAxMTQuMiA3OSBDIDExNC4zIDc5LjEgMTE0LjMgNzkuMyAxMTQuNCA3OS40IEMgMTE0LjQgNzkuNSAxMTQuNSA3OS41IDExNC41IDc5LjYgQyAxMTQuNSA3OS43IDExNC42IDc5LjkgMTE0LjYgODAgQyAxMTQuNiA4MC4xIDExNC42IDgwLjIgMTE0LjcgODAuMyBDIDExNC43IDgwLjQgMTE0LjcgODAuNiAxMTQuOCA4MC44IEMgMTE0LjkgODEuMyAxMTQuOSA4MS44IDExNC45IDgyLjMgQyAxMTQuOSA4NC42IDExNCA4Ni42IDExMi42IDg4IEMgMTEyIDg4LjYgMTExLjMgODkgMTEwLjUgODkuMyBDIDExMC4zIDg5LjQgMTEwLjEgODkuNSAxMDkuOSA4OS41IEMgMTA5LjUgODkuNiAxMDkgODkuNyAxMDguNiA4OS43IEMgMTA4LjIgODkuNyAxMDcuNyA4OS42IDEwNy4zIDg5LjUgQyAxMDcuMyA4OS41IDEwNy4zIDg5LjUgMTA3LjMgODkuNSBDIDEwNy4xIDg5LjUgMTA2LjkgODkuNCAxMDYuNyA4OS4zIEMgMTA1LjkgODkgMTA1LjIgODguNiAxMDQuNiA4OCBDIDEwNCA4Ny40IDEwMy41IDg2LjYgMTAzLjEgODUuOCBDIDEwMi45IDg1LjQgMTAyLjcgODUgMTAyLjYgODQuNSBDIDEwMi41IDg0LjMgMTAyLjUgODQgMTAyLjQgODMuOCBDIDEwMi40IDgzLjUgMTAyLjQgODMuMyAxMDIuMyA4My4xIEMgMTAyLjMgODIuOCAxMDIuMyA4Mi42IDEwMi4zIDgyLjMgQyAxMDIuMyA4MiAxMDIuMyA4MS44IDEwMi4zIDgxLjUgQyAxMDIuMyA4MS41IDEwMi40IDgxLjUgMTAyLjQgODEuNCBDIDEwMi40IDgxIDEwMi41IDgwLjUgMTAyLjYgODAuMSBDIDEwMi42IDgwLjEgMTAyLjYgODAuMSAxMDIuNiA4MCBDIDEwMy40IDc3LjEgMTA1LjggNzUgMTA4LjYgNzUgeiBNIDg4LjggMTA0IEMgODYuNiAxMDQgODQuOCAxMDQuNCA4My45IDEwNS4yIEwgODMuOCAxMDUuMiBMIDgzLjcgMTA1LjMgQyA4My40IDEwNS42IDgzLjIgMTA1LjkgODMuMSAxMDYuMiBDIDgzIDEwNi41IDgzIDEwNi44IDgzIDEwNy4yIEwgNzguMSAxMjAuNSBDIDgwLjIgMTE4LjUgODYuOSAxMTguNyA5NC4yIDEyMS4zIEMgMTAxLjIgMTIzLjggMTA2LjQgMTI3LjcgMTA3LjEgMTMwLjYgTCAxMTEuOCAxMTcuOCBDIDExMi4yIDExNy41IDExMi41IDExNy4yIDExMi43IDExNi44IEMgMTEzLjcgMTEzLjggMTA3LjkgMTA5LjEgOTkuOCAxMDYuMiBDIDk1LjcgMTA0LjggOTEuOCAxMDQgODguOCAxMDQgeiBNIDgyIDEyMC44IEMgNzkgMTIwLjggNzYuOSAxMjEuNSA3Ni40IDEyMyBDIDc1LjQgMTI1LjkgODEuMSAxMzAuNyA4OS4zIDEzMy42IEMgOTcuNCAxMzYuNSAxMDQuOSAxMzYuNSAxMDUuOSAxMzMuNiBDIDEwNyAxMzAuNiAxMDEuMiAxMjUuOSA5MyAxMjMgQyA4OSAxMjEuNSA4NSAxMjAuOCA4MiAxMjAuOCB6IE0gODYuMSAxMjUuNiBDIDg3LjQgMTI1LjUgODkuNCAxMjUuOSA5MS41IDEyNi42IEMgOTQuOCAxMjcuOCA5Ny4yIDEyOS42IDk2LjkgMTMwLjYgQyA5Ni41IDEzMS42IDkzLjUgMTMxLjUgOTAuMSAxMzAuMyBDIDg2LjggMTI5LjEgODQuNCAxMjcuMyA4NC43IDEyNi4zIEMgODQuOSAxMjUuOSA4NS40IDEyNS43IDg2LjEgMTI1LjYgeiBcIn1dLGlbXCJBQy5JQy5BRlRFUlNIT0NLXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTksNjIuNSAtMCwwIC0wLDAgLTAuOSwwIC0wLDAgLTAsMCAtMC45LDAuMSAtMCwwIC0wLDAgLTAuOSwwLjEgLTAsMCAtMCwwIC0wLjksMC4xIC0wLDAgLTAsMCAtMC45LDAuMSAtMCwwIC0wLDAgLTAuOSwwLjEgLTAsMCAtMCwwIC0wLjksMC4yIC0wLDAgLTAsMCAtMC43LDAuMSAwLjYsMi43IDAuNywtMC4xIDAsLTAgMC44LC0wLjEgMCwtMCAwLjgsLTAuMSAwLDAgMC44LC0wLjEgMCwwIDAuOSwtMC4xIDAsMCAwLjksLTAuMSAwLDAgMC45LC0wLjEgMCwwIDAuOSwtMCAwLDAgMC45LC0wIDAsMCAwLDAgMC45LDAgMCwwIDAuOSwwIDAsMCAwLjEsMCAwLjIsLTIuOCAtMC4xLC0wIC0wLDAgLTAsMCAtMC45LC0wIC0wLDAgLTAsMCAtMSwtMCAtMCwwIC0wLDAgeiBtIDguOCwzLjYgMC4yLDAgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjIgMCwwIDAuOCwwLjMgMCwwIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC4zIDAsMCAwLjgsMC40IDAsMCAwLDAgMC43LDAuNCAwLDAgMC4xLDAgMS4zLC0yLjUgLTAuMSwtMC4xIC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLDAgLTAsLTAgLTAuOCwtMC40IC0wLC0wIC0wLDAgLTAuOCwtMC40IC0wLDAgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIC0wLDAgLTAsLTAgLTAuOSwtMC4zIC0wLDAgLTAsMCAtMC45LC0wLjMgLTAsMCAtMCwwIC0wLjksLTAuMiAtMCwwIC0wLC0wIC0wLjksLTAuMiAtMCwwIC0wLDAgLTAuMiwtMC4xIHogbSAtMjIuNywtMC43IC0wLDAgLTAsMCAtMC44LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMCwwIC0wLjgsMC40IC0wLDAgLTAsMCAtMC44LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMCwwIC0wLjgsMC41IC0wLDAgLTAsMCAtMC44LDAuNSAtMCwwIC0wLDAgLTAuNywwLjUgLTAsMCAtMCwwIC0wLjcsMC41IC0wLDAgLTAsMCAtMC43LDAuNSAtMCwwIC0wLDAgLTAuNywwLjUgLTAsMCAtMCwwIC0wLjEsMC4xIDEuNywyLjIgMC4xLC0wLjEgMCwtMCAwLjcsLTAuNSAwLC0wIDAuNywtMC41IDAsLTAgMC43LC0wLjUgMCwtMCAwLjcsLTAuNSAwLC0wIDAuNywtMC40IDAsLTAgMC43LC0wLjQgMCwtMCAwLjcsLTAuNCAwLC0wIDAuNywtMC40IDAsLTAgMCwwIDAuOCwtMC40IDAsLTAgMC44LC0wLjMgMCwtMCAwLjgsLTAuMyAwLC0wIDAuMywtMC4xIC0xLC0yLjYgeiBtIDM2LjksNy4zIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjUgMCwwIDAuNiwwLjYgMCwwIDAsMCAwLjYsMC42IDAsMCAwLjYsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjUsMC42IDAsMCAwLjQsMC41IDIuMywtMS43IC0wLjQsLTAuNiAtMCwtMCAwLC0wIC0wLjYsLTAuNyAtMCwtMCAwLC0wIC0wLjYsLTAuNyAtMCwtMCAtMCwtMCAtMC42LC0wLjcgLTAsLTAgLTAsLTAgLTAuNiwtMC43IC0wLC0wIC0wLC0wIC0wLjYsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjYgLTAsLTAgLTAsLTAgLTAuNiwtMC42IC0wLC0wIC0wLDAgLTAuNywtMC42IC0wLC0wIC0wLDAgLTAuNywtMC42IC0wLC0wIC0wLC0wIC0wLjcsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjUgeiBtIC01MSwyLjcgLTAsMCAtMCwwIC0wLjYsMC43IC0wLDAgLTAsMCAtMC42LDAuNyAwLDAgLTAsMCAtMC42LDAuNyAwLDAgLTAsMCAtMC41LDAuNyAtMCwwIC0wLDAgLTAuNSwwLjcgLTAsMCAtMCwwIC0wLjUsMC43IC0wLDAgMCwwIC0wLjUsMC43IC0wLDAgMCwwIC0wLjUsMC44IDAsMCAtMCwwIC0wLjQsMC44IC0wLDAgMCwwIC0wLjQsMC44IDAsMCAtMCwwIC0wLjMsMC42IDIuNSwxLjMgMC4zLC0wLjYgMCwtMCAwLjQsLTAuNyAwLC0wIDAuNCwtMC43IDAsLTAgMC40LC0wLjcgMCwtMCAwLjQsLTAuNyAwLC0wIDAuNSwtMC43IDAsLTAgMC41LC0wLjcgMCwtMCAwLjUsLTAuNyAwLC0wIDAuNSwtMC42IDAsLTAgMC41LC0wLjYgMCwtMCAwLjUsLTAuNiAwLC0wIDAuNSwtMC41IC0yLjEsLTEuOSB6IG0gNjAuOSw5LjQgMC4xLDAuMSAwLDAgMCwwIDAuMywwLjcgMCwwIDAuMywwLjcgMCwwIDAuMywwLjggMCwwIDAuMywwLjggMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLjIsMC44IDAsMCAwLDAuMiAyLjgsLTAuNSAtMCwtMC4zIC0wLC0wIDAsLTAgLTAuMiwtMC45IDAsLTAgMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4yLC0wLjkgMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggMCwtMCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgLTAsLTAgLTAuNCwtMC44IC0wLC0wIDAsLTAgLTAuMSwtMC4yIHogbSAtNjguOCw0LjkgLTAsMCAwLDAgLTAuMiwwLjkgLTAsMCAwLDAgLTAuMiwwLjkgLTAsMCAwLDAgLTAuMiwwLjkgMCwwIDAsMCAtMC4yLDAuOSAwLDAgLTAsMCAtMC4xLDAuOSAwLDAgMCwwIC0wLjEsMC45IC0wLDAgMCwwIC0wLjEsMC45IDAsMCAtMCwwIC0wLjEsMC45IDAsMCAwLDAgLTAuMSwwLjkgMCwwIDAsMCAtMCwwLjkgMCwwIDAsMCAtMCwwLjkgMCwwIDAsMCAwLDAgMS40LC0wIDAuMywwIDEuMSwwIDAsLTAgMCwtMC45IDAsLTAgMCwtMC45IC0wLDAgMC4xLC0wLjggMCwtMCAwLjEsLTAuOSAtMCwwIDAuMSwtMC45IDAuMSwtMC45IC0wLDAgMC4xLC0wLjggMCwtMCAwLjIsLTAuOCAwLC0wIDAuMiwtMC44IDAsLTAgMC4yLC0wLjggMCwtMCAwLjIsLTAuOCAwLC0wIDAuMSwtMC4yIC0yLjcsLTAuOCB6IG0gNzMsMTAuMyAtMC42LDAgMCwwIDAsMCAtMCwwLjkgMCwwIC0wLDAuOSAwLDAgLTAuMSwwLjggMCwwIC0wLjEsMC45IDAsMCAtMC4xLDAuOSAtMC4xLDAuOSAwLDAgLTAuMSwwLjggMCwwIC0wLjIsMC44IC0wLDAgLTAuMiwwLjggLTAsMCAtMC4yLDAuOCAwLDAgLTAuMiwwLjggLTAsMCAtMC4xLDAuMiAyLjcsMC44IDAuMSwtMC4yIDAsLTAgMCwtMCAwLjIsLTAuOSAwLC0wIDAsLTAgMC4yLC0wLjkgMCwtMCAwLC0wIDAuMiwtMC45IDAsLTAgMCwtMCAwLjIsLTAuOSAwLC0wIDAsLTAgMC4xLC0wLjkgMCwtMCAwLC0wIDAuMSwtMC45IDAsLTAgMCwtMCAwLjEsLTAuOSAwLC0wIDAsLTAgMC4xLC0wLjkgMCwtMCAwLC0wIDAuMSwtMC45IDAsLTAgMCwtMCAwLC0wLjkgMCwtMCAwLC0wIDAsLTAuOSAtMS40LC0wIDEuNCwtMCAwLC0wIHogbSAtNzMuOSw2LjQgMCwwLjMgMCwwIDAsMCAwLjIsMC45IDAsMCAwLDAgMC4yLDAuOSAwLDAgMCwwIDAuMiwwLjkgMCwwIDAsMCAwLjIsMC45IDAsMCAwLDAgMC4zLDAuOCAwLDAgMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLDAgMC4zLDAuOCAwLDAgMCwwIDAuMywwLjggMCwwIDAsMCAwLjMsMC44IDAsMCAwLDAgMC40LDAuOCAwLDAgMCwwIDAuMSwwLjIgMi41LC0xLjMgLTAuMSwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMCAtMC4zLC0wLjcgLTAsLTAgLTAuMywtMC44IC0wLC0wIC0wLjMsLTAuOCAtMCwtMCAtMC4zLC0wLjggLTAsLTAgMCwtMCAtMC4zLC0wLjggLTAsLTAgLTAuMiwtMC44IC0wLC0wIC0wLjIsLTAuOCAwLC0wIC0wLjIsLTAuOCAtMCwtMCAtMC4yLC0wLjggLTAsLTAgLTAuMiwtMC44IDAsLTAgLTAsLTAuMiB6IG0gNjkuNCw5LjQgLTAsMCAtMC40LDAuNyAtMCwwIC0wLjQsMC43IC0wLDAgLTAuNCwwLjcgLTAsMCAtMC40LDAuNyAtMCwwIC0wLjUsMC43IC0wLDAgLTAuNSwwLjcgLTAsMCAtMC41LDAuNyAtMCwwIC0wLjUsMC42IC0wLDAgLTAuNSwwLjYgLTAsMCAtMC41LDAuNiAtMCwwIC0wLjUsMC42IDIuMSwxLjkgMC41LC0wLjYgMCwtMCAwLC0wIDAuNiwtMC43IDAsLTAgMCwtMCAwLjYsLTAuNyAwLC0wIDAsLTAgMC42LC0wLjcgMCwtMCAwLC0wIDAuNSwtMC43IDAsLTAgMCwtMCAwLjUsLTAuNyAwLC0wIDAsLTAgMC41LC0wLjcgMCwtMCAwLC0wIDAuNSwtMC43IDAsLTAgMCwtMCAwLjUsLTAuOCAwLC0wIDAsLTAgMC40LC0wLjggMCwtMCAwLC0wIDAuNCwtMC44IDAsLTAgMCwtMCAwLjMsLTAuNiAtMi41LC0xLjMgeiBtIC02Mi44LDYuMSAwLjQsMC42IDAsMCAwLDAgMC42LDAuNyAwLDAgMCwwIDAuNiwwLjcgMCwwIDAsMCAwLjYsMC43IDAsMCAwLDAgMC42LDAuNyAwLDAgMCwwIDAuNiwwLjYgMCwwIDAsMCAwLjYsMC42IDAsMCAwLDAgMC42LDAuNiAwLDAgMCwwIDAuNywwLjYgMCwwIDAsMCAwLjcsMC42IDAsMCAwLDAgMC43LDAuNiAwLDAgMCwwIDAuNiwwLjUgMS43LC0yLjIgLTAuNiwtMC41IC0wLC0wIC0wLjYsLTAuNSAtMCwtMCAtMC42LC0wLjUgLTAsLTAgLTAuNiwtMC41IC0wLC0wIC0wLjYsLTAuNiAtMCwtMCAtMCwtMCAtMC42LC0wLjYgLTAsLTAgLTAuNiwtMC42IC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMC41LC0wLjYgLTAsLTAgLTAuNSwtMC42IC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMC40LC0wLjUgeiBtIDUzLjEsNS40IC0wLDAgLTAuNywwLjUgLTAsMCAtMC43LDAuNSAtMCwwIC0wLjcsMC41IC0wLDAgLTAuNywwLjUgLTAsMCAtMC43LDAuNCAtMCwwIC0wLjcsMC40IC0wLDAgLTAuNywwLjQgLTAsMCAtMC43LDAuNCAtMCwwIC0wLDAgLTAuOCwwLjQgLTAsMCAtMC44LDAuMyAtMCwwIC0wLjgsMC4zIC0wLDAgLTAuMywwLjEgMSwyLjYgMC40LC0wLjEgMCwtMCAwLDAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwtMCAwLDAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwwIDAsLTAgMC44LC0wLjQgMCwtMCAwLDAgMC44LC0wLjUgMCwwIDAsLTAgMC44LC0wLjUgMCwtMCAwLDAgMC43LC0wLjUgMCwwIDAsLTAgMC43LC0wLjUgMCwtMCAwLDAgMC43LC0wLjUgMCwtMCAwLC0wIDAuNywtMC41IDAsLTAgMCwtMCAwLjEsLTAuMSAtMS43LC0yLjIgeiBtIC00MC40LDUuNiAwLjEsMC4xIDAsMCAwLDAgMC44LDAuNCAwLDAgMCwwIDAuOCwwLjQgMCwwIDAsMCAwLjgsMC40IDAsMCAwLDAgMC44LDAuNCAwLDAgMCwwIDAuOCwwLjMgMCwwIDAsMCAwLjgsMC4zIDAsMCAwLDAgMC44LDAuMyAwLDAgMCwwIDAuOSwwLjMgMCwwIDAsMCAwLjksMC4zIDAsMCAwLDAgMC45LDAuMiAwLDAgMCwwIDAuOSwwLjIgMCwwIDAsMCAwLjIsMC4xIDAuNiwtMi43IC0wLjIsLTAgLTAsLTAgLTAuOCwtMC4yIC0wLC0wIC0wLjgsLTAuMiAtMCwtMCAtMC44LC0wLjIgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLDAgLTAuOCwtMC4zIDAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLjgsLTAuMyAtMCwtMCAtMC44LC0wLjMgLTAsLTAgLTAuOCwtMC4zIC0wLC0wIC0wLjgsLTAuNCAtMCwwIC0wLC0wIC0wLjcsLTAuNCAtMCwtMCAtMC4xLC0wIHogbSAyNS42LDEuMSAtMCwwIC0wLjgsMC4xIC0wLDAgLTAuOCwwLjEgLTAsMCAtMC44LDAuMSAwLC0wIC0wLjksMC4xIDAsLTAgLTAuOSwwLjEgLTAsMCAtMC45LDAuMSAtMCwwIC0wLjksMCAtMCwwIC0wLjksMCAtMCwwIC0wLDAgLTAuOSwtMCAtMCwwIC0wLjksLTAgLTAsMCAtMC4xLDAgLTAuMiwyLjggMC4xLDAgMCwwIDAsMCAwLjksMCAwLDAgMCwwIDEsMCAwLDAgMCwwIDEsLTAgMCwwIDAsMCAwLjksLTAgMCwwIDAsMCAwLjksLTAuMSAwLDAgMCwwIDAuOSwtMC4xIDAsLTAgMCwwIDAuOSwtMC4xIDAsMCAwLDAgMC45LC0wLjEgMCwtMCAwLDAgMC45LC0wLjEgMCwwIDAsMCAwLjksLTAuMiAwLDAgMCwwIDAuNywtMC4xIC0wLjYsLTIuNyB6IG0gLTcuMiwtNTguOSAtMCwxLjIgMC4xLDAgMCwwIDEuMywwIDAsLTAgMS4zLDAuMSAxLjEsMC4xIDAuMSwwIDAsMCAxLjEsMC4yIDAuMSwwIDAuNywwLjEgMC43LC0zLjEgLTAuNywtMC4yIC0wLDAgLTAsLTAgLTEuMywtMC4yIC0wLDAgLTAsLTAgLTEuMywtMC4yIC0wLDAgLTAsMCAtMS4zLC0wLjEgLTAsMCAtMC4xLDAgLTEuMywtMCAtMCwwIC0wLDAgLTAsMCB6IG0gLTUuNSwtMS40IC0wLDAgLTAsMCAtMS4zLDAuMyAtMCwwIC0wLDAgLTEuMiwwLjMgLTAsMCAtMCwwIC0xLjIsMC40IC0wLDAgLTAsMCAtMC45LDAuMyAxLjEsMyAwLjgsLTAuMyAwLjEsLTAgMCwwIDEuMSwtMC40IDAsLTAgMS4xLC0wLjMgMS4yLC0wLjMgMC4xLC0wIDEuMSwtMC4yIC0wLjYsLTMuMSB6IG0gMTQuOCw0LjQgMC4yLDAuMSAwLjEsMCAxLjEsMC41IDEsMC41IDAuMSwwIDEsMC41IDAsMCAwLDAgMC45LDAuNiAwLjEsMCAwLjUsMC40IDEuOCwtMi42IC0wLjYsLTAuNCAtMCwtMCAtMCwtMCAtMS4xLC0wLjcgLTAsLTAgLTAsLTAgLTEuMSwtMC42IC0wLC0wIC0wLC0wIC0xLjEsLTAuNiAtMCwtMCAtMCwtMCAtMS4xLC0wLjUgLTAsLTAgLTAsLTAgLTAuMywtMC4xIHogbSAtMjMuNiwtMS4xIC0wLDAgLTAsMCAtMS4xLDAuNyAtMCwwIC0wLDAgLTEsMC43IC0wLDAgLTAsMCAtMSwwLjggLTAsMCAtMCwwIC0wLjksMC44IC0wLDAgLTAsMCAtMC44LDAuNyAyLjIsMi40IDAuNywtMC43IDAuMSwtMC4xIDAuOCwtMC43IDAsLTAgMCwtMCAwLjksLTAuNyAwLjEsLTAgMC45LC0wLjYgMC4xLC0wIDAuOSwtMC42IDAsLTAgMCwtMCAtMC40LC0wLjYgLTEuMiwtMi4yIHogbSAzMS41LDYuMiAwLjEsMC4xIDAsMCAwLDAgMC44LDAuOCAwLjEsMC4xIDAuNywwLjggMC4xLDAuMSAwLjcsMC44IDAsMCAwLDAuMSAwLjYsMC45IDAsMC4xIDAsMCAwLjUsMC43IDIuNywtMS44IC0wLjUsLTAuOCAtMCwtMCAtMCwtMCAtMC43LC0xIC0wLC0wIC0wLC0wIC0wLjgsLTAuOSAtMCwtMCAtMCwtMCAtMC44LC0wLjkgLTAsLTAgLTAsLTAgLTAuOSwtMC45IC0wLC0wIC0wLC0wIC0wLjEsLTAuMSB6IG0gLTQwLjEsMS44IC0wLDAgLTAsMCAtMC43LDEgLTAsMCAtMCwwIC0wLjYsMS4xIC0wLDAgLTAsMCAtMC42LDEuMSAtMCwwIC0wLDAgLTAuNSwxLjEgLTAsMCAtMCwwIC0wLDAuMSAyLjQsMSAwLjUsMC4zIDAsLTAgMC41LC0xIDAsLTAuMSAwLC0wIDAuNSwtMC45IDAsLTAuMSAwLjYsLTAuOSAwLjYsLTEgMCwtMCAwLC0wLjEgMC42LC0wLjggLTIuNiwtMS45IHogbSA0NS40LDUuOSAwLjQsMS4xIDAsMC4xIDAuMywxIDAsMC4xIDAuMywxLjEgMC4zLDEuMSAwLjIsMSAzLjEsLTAuNiAtMC4yLC0xLjEgMCwtMCAtMCwtMCAtMC4zLC0xLjIgLTAsLTAgLTAsLTAuMSAtMC4zLC0xLjIgLTAsLTAgLTAsLTAgLTAuNCwtMS4yIC0wLC0wIC0wLC0wIC0wLjUsLTEuMSB6IG0gLTQ5LjYsMy44IC0wLDAgMCwwIC0wLjIsMS4zIDAsMCAtMCwwIC0wLjIsMS4zIC0wLDAgMCwwIC0wLjEsMS4zIDAsMCAwLDAuMSAtMCwxLjMgMCwwIDAsMCAwLDAgMS45LC0wIDEuMywwIDAsLTAuMSAwLC0wIDAsLTEuMiAwLjEsLTEuMSAwLDAgMC4xLC0xLjIgMCwtMC4xIDAsLTAgMC4yLC0xLjEgMC4yLC0wLjkgLTMuMSwtMC43IHogbSA1Mi44LDUuNSAtMS4yLC0wIDAsMC4xIDAsMCAtMCwxLjIgLTAuMSwxLjEgLTAsMCAtMC4xLDEuMiAwLDAgLTAsMC4xIC0wLjIsMS4xIC0wLjIsMC45IDMuMSwwLjggMC4yLC0wLjkgMCwtMCAwLC0wIDAuMiwtMS4zIDAsLTAgMCwtMCAwLjIsLTEuMyAwLC0wIDAsLTAgMC4xLC0xLjMgMCwtMCAwLC0wLjEgMCwtMS4zIC0xLjYsLTAgMS42LC0wIDAsLTAgeiBtIC01Myw0LjMgMC4yLDEuMSAwLDAgMCwwIDAuMywxLjIgMCwwIDAsMC4xIDAuMywxLjIgMCwwIDAsMCAwLjQsMS4yIDAsMCAwLDAgMC41LDEuMSAzLC0xLjIgLTAuNCwtMSAtMCwtMC4xIC0wLjMsLTEgLTAsLTAuMSAtMC4zLC0xLjEgLTAuMywtMS4xIC0wLjIsLTEgeiBtIDQ5LjksNC45IC0wLjUsMSAtMCwwLjEgLTAsMCAtMC41LDEgLTAsMC4xIC0wLjYsMC45IC0wLjYsMSAtMCwwIC0wLDAuMSAtMC42LDAuOCAyLjYsMS45IDAuNiwtMC45IDAsLTAgMCwtMCAwLjcsLTEgMCwtMCAwLC0wIDAuNiwtMS4xIDAsLTAgMCwtMCAwLjYsLTEuMSAwLC0wIDAsLTAgMC41LC0xLjEgMCwtMCAwLC0wIDAsLTAgLTIuMiwtMC45IC0wLjgsLTAuMyB6IG0gLTQ2LDUgMC41LDAuOCAwLDAgMCwwIDAuNywxIDAsMCAwLDAgMC44LDAuOSAwLDAgMCwwIDAuOCwwLjkgMCwwIDAsMCAwLjksMC45IDAsMCAwLDAgMC4xLDAuMSAyLjIsLTIuMyAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAuOCwtMC44IC0wLjEsLTAuMSAtMC43LC0wLjggLTAuMSwtMC4xIC0wLjcsLTAuOCAtMCwtMCAtMCwtMC4xIC0wLjYsLTAuOSAtMC4xLC0wLjEgLTAuNSwtMC43IHogbSA0MCwzLjMgLTAuMSwwLjEgLTAuOCwwLjcgLTAsMCAtMCwwIC0wLjksMC43IC0wLjEsMCAtMC45LDAuNiAtMC4xLDAgLTAuOSwwLjYgMCwtMCAtMC4xLDAgMCwwIC0wLDAgMC4zLDAuNCAxLjMsMi40IDAsLTAgMCwtMCAwLC0wIDEuMSwtMC43IDAsLTAgMCwtMCAxLC0wLjcgMCwtMCAwLC0wIDEsLTAuOCAwLC0wIDAsLTAgMC45LC0wLjggMCwtMCAwLC0wIDAuOCwtMC43IC0yLjIsLTIuNCB6IG0gLTMyLjYsNC40IDAuNiwwLjQgMCwwIDAsMCAxLjEsMC43IDAsMCAwLDAgMS4xLDAuNiAwLDAgMCwwIDEuMSwwLjYgMCwwIDAsMCAxLjEsMC41IDAsMCAwLDAgMC4zLDAuMSAxLjEsLTMgLTAuMiwtMC4xIC0wLjEsLTAgLTEuMSwtMC41IC0xLC0wLjUgLTAuMSwtMCAtMSwtMC42IDAsMCAtMC45LC0wLjYgLTAuMSwtMCAtMC41LC0wLjQgeiBtIDI0LjUsMC4zIC0wLjEsMCAtMS4xLDAuMyAtMC4xLDAgLTEuMSwwLjMgLTEuMiwwLjMgLTAuMSwwIC0xLjEsMC4yIDAuNiwzLjEgMS4yLC0wLjIgMCwwIDAsLTAgMS4zLC0wLjMgMCwwIDAsLTAgMS4yLC0wLjMgMCwtMCAwLC0wIDEuMiwtMC40IDAsLTAgMCwtMCAwLjksLTAuMyAtMS4xLC0zIHogbSAtMTQuOCwzLjkgMC43LDAuMiAwLDAgMCwwIDEuMywwLjIgMCwwIDAsMCAxLjMsMC4yIDAsMCAwLDAgMS4zLDAuMSAwLDAgMC4xLDAgMS4zLDAgMCwwIDAsMCAwLDAgLTAuMSwtMS42IDAsLTAuMSAwLC0xLjUgLTAuMSwwIC0xLjMsLTAgMCwwIC0xLjMsLTAuMSAtMS4xLC0wLjEgLTAuMSwtMCAtMCwwIC0xLjEsLTAuMiAtMC4xLC0wIC0wLjcsLTAuMSB6IG0gNi4zLC00My4xIC0wLjQsMCAwLjEsNCAwLjMsLTAgMC4xLDAgMC4xLDAgMC42LDAgMC4xLDAgMC42LDAgMC4xLDAgMC42LDAuMSAwLjEsMCAwLjYsMC4xIDAuNywwLjEgMC4xLDAgMC4xLDAgMC42LDAuMiAwLjUsMC4yIDAuMSwwIDAuNSwwLjIgMC4xLDAgMCwwIDAuNSwwLjIgMC4xLDAgMC40LDAuMiAxLjgsLTMuNiAtMC41LC0wLjMgLTAsLTAgLTAuMSwtMCAtMC43LC0wLjMgLTAuMSwtMCAtMC4xLC0wIC0wLjcsLTAuMyAtMCwtMCAtMC4xLC0wIC0wLjcsLTAuMiAtMC4xLC0wIC0wLC0wIC0wLjcsLTAuMiAtMC4xLC0wIC0wLjEsLTAgLTAuNywtMC4yIC0wLjEsLTAgLTAuMSwtMCAtMC44LC0wLjEgLTAsLTAgLTAuMSwtMCAtMC44LC0wLjEgLTAuMSwtMCAtMC4xLDAgLTAuOCwtMC4xIC0wLjEsMCAtMC4xLDAgLTAuOCwtMCAtMC4xLC0wIHogbSAtNS4xLDAuNyAtMC4xLDAgLTAsMCAtMC43LDAuMiAtMC4xLDAgLTAuMSwwIC0wLjcsMC4zIC0wLDAgLTAuMSwwIC0wLjcsMC4zIC0wLjEsMCAtMCwwIC0wLjcsMC4zIC0wLDAgLTAsMCAtMC43LDAuNCAtMCwwIC0wLjEsMCAtMC42LDAuNCAtMCwwIC0wLDAgLTAuNiwwLjQgLTAsMCAtMCwwIC0wLjYsMC40IC0wLDAgLTAsMCAtMC42LDAuNSAtMCwwIC0wLDAgLTAuNSwwLjUgLTAsMCAtMCwwIC0wLjIsMC4yIDIuOSwyLjggMC4xLC0wLjEgMC4xLC0wLjEgMC40LC0wLjQgMC4xLC0wLjEgMC40LC0wLjMgMCwtMCAwLjEsLTAuMSAwLjQsLTAuMyAwLjUsLTAuNCAwLjEsLTAuMSAwLjYsLTAuMyAwLC0wIDAuNSwtMC4zIDAuMSwtMCAwLjUsLTAuMyAwLjEsLTAgMC41LC0wLjIgMCwwIDAuMSwtMCAwLjYsLTAuMiAwLC0wIDAuNSwtMC4yIDAuMSwtMCAwLjEsLTAgLTEuMSwtMy45IHogbSAxNC4yLDYuNyAwLjQsMC4zIDAuNSwwLjUgMC4xLDAuMSAwLjMsMC40IDAuMSwwLjEgMC4zLDAuNCAwLjEsMC4xIDAuMywwLjQgMCwwIDAsMC4xIDAuMywwLjQgMC4xLDAuMSAwLjMsMC41IDAsMCAwLDAuMSAwLjMsMC41IDAsMC4xIDAuMiwwLjUgMCwwLjEgMC4yLDAuNSAwLDAuMSAwLDAgMC4yLDAuNiAzLjgsLTEuMyAtMC4yLC0wLjcgLTAsLTAuMSAtMCwtMC4xIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjMsLTAuNyAtMCwtMC4xIC0wLC0wIC0wLjQsLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjQsLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjQsLTAuNiAtMCwtMC4xIC0wLC0wIC0wLjUsLTAuNiAtMCwtMCAtMCwtMCAtMC41LC0wLjUgLTAsLTAgLTAsLTAgLTAuNSwtMC41IC0wLC0wIC0wLC0wIC0wLjUsLTAuNCB6IG0gLTI0LjQsMS40IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAgLTAsMC4xIC0wLjMsMC43IC0wLDAuMSAtMCwwLjEgLTAuMiwwLjcgLTAsMC4xIC0wLDAuMSAtMC4yLDAuNyAtMCwwLjEgMCwwLjEgLTAuMiwwLjcgLTAsMC4xIC0wLDAuMSAtMC4xLDAuNyAtMCwwLjEgMCwwLjEgLTAuMSwwLjggMCwwLjEgLTAsMC4xIC0wLjEsMC44IDAsMC4xIDAsMC4xIC0wLDAuOCAwLDAuMSAwLDAuMSAwLDAuMyA0LC0wLjEgLTAsLTAuMiAwLC0wLjEgMCwtMCAwLC0wLjcgMCwtMC42IDAsLTAuMSAwLC0wIDAuMSwtMC41IDAuMSwtMC42IDAsLTAuMSAwLjEsLTAuNSAwLC0wIDAsLTAuMSAwLjEsLTAuNSAwLjIsLTAuNiAwLC0wLjEgMCwtMCAwLjIsLTAuNSAwLjMsLTAuNiAwLjEsLTAuMSAwLjMsLTAuNSAwLC0wLjEgMCwtMCAwLC0wIC0zLjUsLTIgeiBtIDI4LjcsNy42IDAsMC41IDAsMC4xIDAsMCAtMCwwLjYgLTAuMSwwLjcgLTAsMC4xIDAsMC4xIC0wLjEsMC42IC0wLjEsMC41IC0wLDAuMSAtMC4xLDAuNSAwLDAgLTAsMC4xIC0wLjEsMC41IC0wLDAuMSAtMC4yLDAuNSAtMCwwIC0wLDAuMSAtMC4yLDAuNSAtMCwwIC0wLDAuMSAtMC4yLDAuNSAtMCwwLjEgLTAuMywwLjUgLTAsMC4xIC0wLDAgLTAuMiwwLjMgMy41LDIgMC4yLC0wLjQgMCwtMC4xIDAsLTAgMC4zLC0wLjcgMCwtMCAwLC0wLjEgMC4zLC0wLjcgMCwtMCAwLC0wLjEgMC4zLC0wLjcgMCwtMC4xIDAsLTAuMSAwLjIsLTAuNyAwLC0wIDAsLTAuMSAwLjIsLTAuNyAwLC0wLjEgMCwtMC4xIDAuMiwtMC43IDAsLTAuMSAwLC0wLjEgMC4xLC0wLjcgMCwtMC4xIDAsLTAuMSAwLjEsLTAuOCAwLC0wLjEgMCwtMC4xIDAuMSwtMC44IDAsLTAuMSAwLC0wLjEgMCwtMC44IC0yLC0wLjEgMiwtMC4xIC0wLC0wLjYgeiBtIC0zMC4xLDUuMyAwLjEsMC4zIDAsMC4xIDAsMCAwLjIsMC43IDAsMC4xIDAsMC4xIDAuMywwLjcgMCwwLjEgMCwwIDAuMywwLjcgMCwwLjEgMCwwIDAuMywwLjcgMCwwIDAsMC4xIDAuNCwwLjYgMCwwIDAsMC4xIDAuNCwwLjYgMCwwIDAsMCAwLjQsMC42IDAsMCAwLDAgMC41LDAuNiAwLDAgMCwwIDAuNSwwLjUgMCwwIDAsMCAwLjUsMC41IDAsMCAwLDAgMC4yLDAuMiAyLjcsLTIuOSAtMC4yLC0wLjEgLTAuMSwtMC4xIC0wLC0wIC0wLjQsLTAuNCAtMC4xLC0wLjEgLTAuNCwtMC40IC0wLC0wLjEgLTAsLTAgLTAuMywtMC40IC0wLjEsLTAuMSAtMC40LC0wLjUgLTAuMywtMC40IC0wLjEsLTAuMSAtMC4zLC0wLjUgLTAsLTAgLTAsLTAuMSAtMC4zLC0wLjUgLTAuMSwtMC4xIC0wLjIsLTAuNSAtMCwtMC4xIC0wLC0wIC0wLjIsLTAuNSAtMCwtMC4xIC0wLC0wLjEgLTAuMiwtMC42IC0wLC0wLjEgeiBtIDI1LjgsNC44IC0wLjEsMC4xIC0wLjQsMC4zIC0wLDAgLTAuMSwwLjEgLTAuNCwwLjMgLTAuMSwwLjEgLTAuNSwwLjMgLTAsMCAtMC4xLDAgLTAuNSwwLjMgLTAuMSwwIC0wLDAgLTAuNiwwLjMgLTAuNSwwLjMgLTAuMSwwIC0wLjUsMC4yIC0wLDAgLTAuMSwwIC0wLjUsMC4yIC0wLjEsMCAtMC41LDAuMiAtMC41LDAuMSAxLjEsMy45IDAuNSwtMC4xIDAsLTAgMC4xLC0wIDAuNywtMC4yIDAuMSwtMCAwLC0wIDAuNywtMC4zIDAuMSwtMCAwLjEsLTAgMC43LC0wLjMgMC4xLC0wIDAsLTAgMC43LC0wLjMgMC4xLC0wIDAsLTAgMC43LC0wLjQgMCwtMCAwLC0wIDAuNiwtMC40IDAsLTAgMC4xLC0wIDAuNiwtMC40IDAsLTAgMCwtMCAwLjYsLTAuNSAwLC0wIDAsLTAgMC42LC0wLjUgMCwtMCAwLC0wIDAuNSwtMC41IC0yLjcsLTIuOSB6IG0gLTE1LjUsMS44IC0xLjksMy41IDAuMSwwLjEgMCwwIDAsMCAwLjcsMC4zIDAsMCAwLjEsMCAwLjcsMC4zIDAuMSwwIDAsMCAwLjcsMC4zIDAuMSwwIDAuMSwwIDAuNywwLjIgMCwwIDAuMSwwIDAuNywwLjIgMCwwIDAuMSwwIDAuOCwwLjIgMC4xLDAgMC4xLDAgMC44LDAuMSAwLjEsMCAwLjEsMCAwLjgsMC4xIDAuMSwwIDAuMSwwIDAuOCwwLjEgMC4xLDAgMC4xLDAgMC44LDAgMC4xLDAgMC4xLDAgMC4xLDAgLTAuMSwtNCAtMC4xLDAgLTAuMSwwIC0wLjYsLTAgLTAuMSwwIC0wLjYsLTAgMCwtMCAtMC43LC0wLjEgLTAsMCAtMC4xLC0wIC0wLjYsLTAuMSAtMC4xLC0wIC0wLjYsLTAuMSAwLC0wIC0wLjcsLTAuMiAtMC41LC0wLjIgMCwtMCAtMC42LC0wLjIgLTAuMSwtMCAtMCwwIC0wLjUsLTAuMiAtMC4xLC0wIC0wLjUsLTAuMyAtMC4xLC0wLjEgeiBNIDEwMCw5My4yIGMgLTMuNSwtNGUtNCAtNi43LDIuOSAtNi43LDYuNSBsIDAsMC40IGMgMCwzLjUgMyw2LjUgNi41LDYuNSBsIDAuNCwwIGMgMy40LDAgNi41LC0zIDYuNSwtNi4zIGwgMCwtMC45IGMgMCwtMy40IC0zLjMsLTYuMyAtNi44LC02LjMgelwifV0saVtcIkFDLklDLkFWQUxBTkNIRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDExNS43LDg3LjMgLTMuNiwwLjkgMTEsMzggLTQuNiwxLjUgOS42LDkuMiAzLjEsLTEzIC00LjYsMS40IHogbSAzLDQ2LjQgLTguNSwtMTAgNC4zLC0xLjIgLTExLjIsLTQwLjYgLTM0LjUsNTEuOSB6IG0gLTEyLjEsLTU5LjggMCw4LjQgMS42LDAgMCwtOC4zIDcuMSw0LjMgMC44LC0xLjMgLTcuNCwtNC4xIDcuNSwtNC40IC0xLC0xLjIgLTcsNCAwLC04LjIgLTEuNiwwIDAsOC4yIC03LjQsLTQgLTAuNiwxLjEgNy4yLDQuNCAtNy4yLDQuMSAwLjYsMS40IHpcIn1dLGlbXCJBQy5JQy5FQVJUSFFVQUtFIEVQSUNFTlRFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYyLjgsOTkuOCBjIDAsLTEwLjggNC45LC0yMC4yIDEwLjMsLTI1LjcgNS4xLC01LjEgMTQuOCwtMTEuMyAyNC43LC0xMS4zIGggNC4xIGMgNC45LDAgMTAuNSwxLjkgMTMuOSwzLjYgNSwyLjUgNi40LDQgMTAuNCw3IDQuNiwzLjYgMTEuMSwxNS40IDExLjEsMjMuOCB2IDUuMyBjIDAsMTcuNCAtMTcuNSwzNC42IC0zNS4xLDM0LjYgaCAtNC42IGMgLTEwLjMsMCAtMTkuNCwtNi4yIC0yNC42LC0xMS40IC01LjUsLTUuNCAtMTAuMywtMTUgLTEwLjMsLTI1LjggeiBtIDM5LjQsMzguNSBjIDEwLjcsMCAyMCwtNi4zIDI1LjUsLTExLjggNi43LC02LjcgOS45LC0xMy45IDEwLjcsLTI2LjUgMS4zLC0xOS4yIC0xNy43LC0zOC4xIC0zNi4yLC0zOC4xIGggLTQuOCBjIC0xMC4zLDAgLTIwLjEsNi42IC0yNS4yLDEyLjEgLTMsMy4yIC01LjYsNi43IC03LjUsMTEuMSAtMS4xLDIuOCAtMy41LDExLjMgLTMsMTUuMyAwLjcsNi40IDAuOSwxMC40IDMuNCwxNS4zIDIuMiw0LjQgNCw3LjYgNy4zLDExIDUsNS4zIDE1LjIsMTEuNyAyNS4zLDExLjcgaCA0LjYgeiBtIC0zLjksLTExLjYgYyAtMTMuNiwwIC0yNC43LC0xMy4xIC0yNS4yLC0yNi44IC0wLjUsLTEzLjIgMTIuNSwtMjYuNCAyNS40LC0yNi40IGggMi45IGMgMTIuOCwwIDI1LjIsMTIuNCAyNS4yLDI1LjIgdiAyLjQgYyAwLDEyLjggLTEyLjQsMjUuNyAtMjUuMiwyNS43IGggLTMuMSB2IC0wIHogbSAtMjcuMSwtMjYuOSBjIDAsOC44IDMuNywxNiA4LjEsMjAuNSAyLjMsMi40IDUuMiw0LjQgOC4zLDUuOSA0LjIsMi4yIDYuMywxLjkgMTEuNSwyLjggMi45LDAuNSAxMCwtMS4zIDEyLC0yLjIgNC42LC0yLjIgNSwtMi45IDguNiwtNS42IDQuMywtMy4xIDkuMSwtMTIuMyA5LjEsLTE5LjcgdiAtMy40IGMgMCwtMTMuNyAtMTMuNiwtMjYuOCAtMjcuMywtMjYuOCBoIC0zLjIgYyAtMTQuNSwtNGUtNCAtMjcuMSwxMy42IC0yNy4xLDI4LjUgeiBtIDI4LjUsMTQuOCBjIC04LjQsMCAtMTMuNSwtNi41IC0xNC40LC0xNC40IC0wLjcsLTcuMyA2LjgsLTE0LjYgMTMuOSwtMTQuNiBoIDEuNyBjIDcuMywwIDEzLjYsNi45IDEzLjYsMTQuNSAwLDcuNyAtNi4yLDE0LjUgLTEzLjgsMTQuNSBoIC0xIHogbSAtMTguNiwtMTQuOCBjIDAsMTEuNSA4LDE4LjEgMTguNCwxOS4zIDYuMiwwLjggMTAuMywtMi45IDEzLjYsLTUuMyAyLjgsLTIgNS44LC04LjMgNS44LC0xMy4zIFYgOTkuOCBjIDAsLTEwLjQgLTguMywtMTguNiAtMTguNiwtMTguNiBoIC0wLjcgYyAtOS45LDAgLTE4LjQsOC42IC0xOC40LDE4LjYgeiBtIDEwLjksMCB2IDAuMiBjIDAsMy43IDMuNSw3LjcgNyw3LjcgaCAxLjcgYyAzLjksMCA3LjMsLTMuOSA3LjMsLTcuNyAwLC00IC0zLjUsLTggLTcsLTggaCAtMS43IGMgLTMuNSwwIC03LjMsNCAtNy4zLDcuNyB6XCJ9XSxpW1wiQUMuSUMuTEFORFNMSURFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTI5LjQsMTEwLjggYyAtMi43LDAgLTYuMiw0LjEgLTQuMyw1LjEgLTEsMS41IC0zLjYsMiAtMy42LDQgMCwxLjggMi42LDQuNyAzLjQsNi4yIDEuMSwyIDMuMiwzLjIgNi4yLDMuMiBoIDEuOCBjIDIuNywwIDQuNiwtMi42IDQuNiwtNS4zIHYgLTEgYyAwLC0zLjQgLTEsLTUgLTIuMSwtNy41IC0xLC0yLjQgLTEuNiwtNC42IC00LjksLTQuNiBoIC0xIHogbSAtMjIuMiwtMzUgLTUuMywtNS4yIC0zOS4zLDU4LjMgNTUuOCwwLjEgdiAtMS4yIGMgMCwtMC43IC0xLC0xLjUgLTEuNSwtMS44IDAsLTIgLTAuNiwtMS42IC0wLjksLTIuOSAtMC4yLC0wLjkgLTAuMSwtMi43IC0wLjEsLTMuNyAwLC0yLjggLTAuMSwtNC4zIC0xLjcsLTUuNiAtMi4yLC0xLjkgLTEuMywtMS41IC00LjMsLTMuMSAtMiwtMSAtMS41LC0yLjEgLTUuMiwtMi4yIHYgLTEuNSBjIDAsLTEuOSAtMiwtMy42IC0yLjgsLTQuOCAwLC0yLjMgLTAuNSwtNC43IC0wLjUsLTYuOCAwLC0xLjYgLTAuMiwtMiAtMC4yLC0zLjMgLTAuMSwtMS43IC0wLjgsLTEuNSAtMC44LC0yLjggdiAtMC4yIGMgMCwtMyAwLjUsLTQuNSAyLjEsLTYgMi4yLC0yLjEgMC45LC0yLjIgMy44LC0zLjkgbCAwLjgsLTMuMyAwLDAgeiBtIDkuNywzNCBjIDAsMy42IDYuMSwyLjggNi4xLC0wLjggMCwtNC4yIC02LjEsLTEuOSAtNi4xLDAuOCB6IG0gMi44LC0xNi40IGMgLTIuMiwwIC03LDYuNCAtNCw4LjYgMS43LDEuMiAyLjYsMS42IDUuMywwLjYgMiwtMC44IDIuOCwtMS42IDIuOCwtNC4zIDRlLTQsLTIuNCAtMiwtNC44IC00LC00LjggeiBtIC04LjQsNS4zIGMgMC44LDAgMSwtMC43IDEuMywtMS4zIC0wLjYsLTEuNCAtMC41LC0yLjUgLTIuNiwtMi41IGggLTAuMiBjIC0xLDAgLTIsMC42IC0yLDEuNSAwLDAuNyAxLjYsMi4zIDIuOCwyLjMgaCAwLjggeiBtIC0zLjMsLTEzLjcgYyAtMC4xLDEgLTAuMywwLjYgLTAuMywxLjUgMCwxIDAuOCwzIDEuOCwzIGggMC4yIGMgMy4xLDAgMy4xLC0wLjIgNC44LC0xLjUgLTEsLTIuMyAtMC40LC0zLjYgLTQuMiwtMy42IC0xLjEsMCAtMS40LDAuMyAtMi4zLDAuNSB6XCJ9XSxpW1wiQUMuSUMuU1VCU0lERU5DRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU2LjgsNzUuNiAwLDIgMTQuNCwwIDMuOCw3LjkgYyAtMC4xLDAuMyAtMC4zLDAuNyAtMC4zLDEuNiBsIDAsMC42IGMgMCwwLjcgMC4zLDEuMSAwLjcsMS41IDAuMywwLjQgMC43LDAuOCAxLjEsMS4zIDAuNywwLjggMS41LDEuNSAxLjgsMiBsIC0wLjMsNC4xIGMgLTAuMSwxIDAuNCwyIDEsMi42IDAuNiwwLjYgMS4zLDEuMSAyLDEuNSAwLjcsMC40IDEuMywwLjggMS43LDEuMiAwLjQsMC40IDAuNiwwLjYgMC42LDEgMCwxLjMgLTAuNSwyLjIgLTAuNSw0LjIgMCwwLjkgMC41LDEuNyAxLjEsMi4xIDAuNiwwLjQgMS4yLDAuNyAxLjgsMC45IDAuNiwwLjIgMS4xLDAuNCAxLjQsMC42IDAuMywwLjIgMC4zLDAuMiAwLjMsMC4zIDAsMC42IC0wLjEsMC44IC0wLjMsMS4yIC0wLjIsMC4zIC0wLjUsMC43IC0wLjUsMS41IGwgMCwwLjYgYyAwLDEuOCAxLDIuOSAxLjksMy41IDAuOCwwLjYgMS4zLDAuOCAxLjUsMS4zIDAsMCAwLDAgMCwwIDAuMiwwLjggMC4zLDIgMC43LDMuMSAwLjIsMC42IDAuNSwxLjIgMSwxLjYgMC41LDAuNSAxLjIsMC43IDIsMC43IGwgMC4zLDAgYyAxLjEsMCAxLjksLTAgMi42LC0wLjIgMC43LC0wLjEgMS4zLC0wLjQgMS43LC0wLjkgMC40LC0wLjUgMC41LC0xLjEgMC43LC0xLjcgMC4xLC0wLjYgMC4yLC0xLjMgMC4zLC0yLjEgNy42ZS00LC0wIC03LjZlLTQsLTAgMCwtMCAwLjIsLTEuNCAwLjcsLTIuMSAxLjMsLTIuOCAwLjUsLTAuNyAxLjIsLTEuNyAxLjIsLTMuMSAwLC0wLjYgLTAuMiwtMSAtMC41LC0xLjMgLTAuMiwtMC4zIC0wLjUsLTAuNyAtMC43LC0xIC0wLjUsLTAuNyAtMC44LC0xLjUgLTAuOCwtMi40IGwgMCwtMC45IGMgMCwtMCAtMCwtMCAwLjEsLTAuMiAwLjIsLTAuMiAwLjUsLTAuNCAwLjgsLTAuNiAwLjQsLTAuMyAwLjgsLTAuNSAxLjEsLTEgMC40LC0wLjQgMC43LC0xLjEgMC43LC0xLjggMCwtMS4yIC0wLjUsLTIuNCAtMC45LC0zLjUgLTAuNCwtMS4xIC0wLjgsLTIuMiAtMC44LC0yLjUgMCwtMC41IDAuMiwtMSAwLjYsLTEuNiAwLjQsLTAuNiAxLC0xLjMgMS41LC0yLjIgMC41LC0wLjggMC45LC0xLjggMC45LC0zIC0wLC0xLjEgLTAuNSwtMi40IC0xLjYsLTMuNiBsIC0wLC0wIC0wLDAgYyAtMC4zLC0wLjMgLTAuNywtMS4zIC0wLjgsLTIuMiAtMC4xLC0wLjkgMC4xLC0xLjkgMC40LC0yLjMgMC4zLC0wLjUgMC45LC0wLjkgMS43LC0xLjQgMC43LC0wLjYgMS41LC0xLjYgMS41LC0zIGwgMCwtMS40IDM4LjEsMCAwLC0yIC00MC4xLDAgLTMwLjYsMCAtMC42LDAgLTE1LDAgelwifV0saVtcIkFDLklDLlZPTENBTklDIEVSVVBUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTIyLjIsNjYgLTEwLjQsMTcuOSAxLjcsMSAxMC40LC0xNy45IC0xLjcsLTEgeiBtIC0yMy4yLDAuNSAwLDE3LjkgMiwwIDAsLTE3LjkgLTIsMCB6IG0gLTE5LjUsLTAuNCAtMS44LDAuOCA4LDE3LjkgMS44LC0wLjggLTgsLTE3LjkgeiBNIDk5LjMsMTIwLjggYyAtMS43LC0wIC0zLjMsMC44IC00LjUsMiAtMS4yLDEuMiAtMiwyLjkgLTIsNC41IGwgMCwxLjkgYyAwLDEuNyAwLjgsMy4zIDIsNC41IDEuMiwxLjIgMi44LDIgNC41LDIgbCAxLjMsMCBjIDEuNywwIDMuMywtMC44IDQuNSwtMiAxLjIsLTEuMiAyLC0yLjggMiwtNC41IGwgMCwtMS45IGMgMCwtMS43IC0wLjgsLTMuMyAtMiwtNC41IC0xLjIsLTEuMiAtMi44LC0yIC00LjUsLTIgbCAtMS4yLDAgLTAsMCB6IE0gODAuMyw4Ni41IGMgLTAuNSwwIC0wLjksMC4zIC0xLjQsMC44IC0wLjQsMC41IC0wLjgsMS4yIC0xLjMsMiAtMC44LDEuNyAtMS42LDMuOSAtMi40LDYuMyAtMS41LDQuNyAtMi44LDkuOCAtMy40LDExLjQgbCAtMCwwIGMgLTIsNyAtNS44LDE1LjIgLTcsMjEuNiBsIC0wLjEsMC4yIDAuMiwwIDIwLjksMC42IDAuMiwwIDAsLTAuMiAwLC0xLjkgMCwtMC4yIC0wLjIsLTAgLTE3LjYsLTAuNyBMIDgwLjUsODkuNCBsIDM5LjEsMCAxMS45LDM3LjEgLTE3LjUsMC43IC0wLjIsMCAwLDAuMiAwLDEuOSAwLDAuMiAwLjIsLTAgMjAuOSwtMC42IDAuMiwwIC0wLjEsLTAuMiBjIC0xLjMsLTYuNCAtNS4xLC0xNC43IC03LC0yMS42IEwgMTI4LjEsMTA3IGMgLTAuNiwtMS42IC0xLjksLTYuNyAtMy40LC0xMS40IC0wLjgsLTIuMyAtMS42LC00LjYgLTIuNCwtNi4zIC0wLjQsLTAuOCAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOSwtMC44IC0xLjQsLTAuOCBsIC0zOS40LDAgelwifV0saVtcIkFDLklDLlZPTENBTklDIFRIUkVBVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLjMsODUuNiBjIC0wLjUsMCAtMC45LDAuMyAtMS40LDAuOCAtMC40LDAuNSAtMC44LDEuMiAtMS4zLDIgLTAuOCwxLjcgLTEuNiwzLjkgLTIuNCw2LjMgLTEuNSw0LjcgLTIuOCw5LjggLTMuNCwxMS4zIGwgMCwwIC0wLDAgYyAtMiw3IC01LjgsMTUuMiAtNywyMS42IGwgLTAuMSwwLjIgMC4yLDAgMjAuOSwwLjYgMC4yLDAgMCwtMC4yIDAsLTEuOSAwLC0wLjIgLTAuMiwtMCAtMTcuNiwtMC43IDEyLC0zNy4xIDM5LjEsMCAxMS45LDM3LjEgLTE3LjUsMC43IC0wLjIsMCAwLDAuMiAwLDEuOSAwLDAuMiAwLjIsMCAyMC45LC0wLjYgMC4yLC0wIC0wLjEsLTAuMiBjIC0xLjMsLTYuNCAtNS4xLC0xNC43IC03LC0yMS42IGwgLTAsMCAwLC0wIGMgLTAuNiwtMS42IC0xLjksLTYuNyAtMy40LC0xMS4zIC0wLjgsLTIuMyAtMS42LC00LjYgLTIuNCwtNi4zIC0wLjQsLTAuOCAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOSwtMC44IC0xLjQsLTAuOCBsIC0zOS40LDAgeiBNIDk5LjMsMTIwIGMgLTEuNywtMCAtMy4zLDAuOCAtNC41LDIgLTEuMiwxLjIgLTIsMi45IC0yLDQuNSBsIDAsMS45IGMgMCwxLjcgMC44LDMuMyAyLDQuNSAxLjIsMS4yIDIuOCwyIDQuNSwyIGwgMS4zLDAgYyAxLjcsMCAzLjMsLTAuOCA0LjUsLTIgMS4yLC0xLjIgMiwtMi44IDIsLTQuNSBsIDAsLTEuOSBjIDAsLTEuNyAtMC44LC0zLjMgLTIsLTQuNSAtMS4yLC0xLjIgLTIuOCwtMiAtNC41LC0yIGwgLTEuMiwwIC0wLDAgeiBtIC0yLjcsLTQyLjEgMCwwLjIgLTAuMiwwIDAsNC4yIDAsMC4yIDAuMiwwIDMuMywwIDAuMiwwIDAsLTAuMiAwLC00LjIgMCwtMC4yIC0wLjIsMCAtMy4zLDAgeiBNIDk5LDU3LjEgYyAtMS4xLDIuNWUtNSAtMi4zLDAuMiAtMy4zLDAuNSAtMS4xLDAuMyAtMi4xLDAuOCAtMy4yLDEuNCBsIC0wLjEsMC4xIDAsMC4xIDAsMy4xIDAsMC40IDAuMywtMC4yIGMgMS4xLC0wLjcgMiwtMS4zIDMsLTEuNiAxLC0wLjQgMS45LC0wLjYgMi43LC0wLjYgMS4xLDIuMmUtNSAyLDAuMyAyLjcsMC44IDAuNywwLjYgMSwxLjMgMSwyLjIgLTFlLTUsMC41IC0wLjEsMSAtMC40LDEuNSAtMC4zLDAuNSAtMC43LDEgLTEuMywxLjYgbCAwLDAgLTEuNSwxLjUgYyAtMSwwLjkgLTEuNywxLjggLTIsMi41IC0wLjMsMC43IC0wLjUsMS43IC0wLjUsMi44IGwgMCwyLjUgMCwwLjIgMC4yLDAgMy4xLDAgMCwtMC4yIDAuMiwwIDAsLTIgYyAtMTBlLTYsLTAuNiAwLC0xIDAuMSwtMS4zIDAsLTAuMyAwLjEsLTAuNiAwLjEsLTAuOCAwLjEsLTAuMiAwLjIsLTAuNSAwLjQsLTAuOCAwLjIsLTAuMyAwLjYsLTAuNyAxLjEsLTEuMiBsIDEuNCwtMS40IGMgMSwtMC45IDEuNywtMS44IDIuMSwtMi42IGwgMCwtMCBjIDAuNCwtMC44IDAuNiwtMS42IDAuNiwtMi41IC0yZS01LC0xLjggLTAuNiwtMy4zIC0xLjksLTQuMyAtMS4zLC0xLjEgLTIuOSwtMS42IC01LC0xLjYgelwifV0saVtcIkFDLklDLkNBVkUgRU5UUkFOQ0VcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTUsMTAwIDU1LDAgMzAsLTIwIDAsNDAgLTMwLC0yMFwifV0saVtcIkFDLklDLkRST1VHSFRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4Ny42LDEyNy40IGMgMS4zLDAuNiA0LjUsMCA2LjEsMCBoIDQuMiBsIC0yLC01LjkgLTQuOSwtMC4zIGMgLTUuNywxMC44IC0yLjQsNC4zIC0zLjQsNi4yIHogbSAtMjQuMSwtNyBjIC0wLjYsMS45IDE3LjYsNi45IDIwLjUsNy40IDIuNywtMS44IDQuNSwtMi40IDQuOCwtNi43IC00LDAgLTExLjQsLTAuOCAtMTQuOCwtMS43IC0yLjIsLTAuNiAtNC4yLC0xLjIgLTYuNCwtMS43IC0zLjUsLTAuOSAtNC4yLC0xLjUgLTQuMiwyLjYgeiBtIDM1LjksNi4xIDYuNywtMC4zIDE4LjYsLTEuNyBjIDEuNSwtMC40IDQuNSwtMC40IDYsLTEuNCAtMS4zLC0yLjYgLTIuNCwtNC4xIC0zLjcsLTYuNiAtMS40LC0yLjYgLTEuOSwtNC45IC0zLC03LjIgLTMuNywwLjggLTQuNywzLjUgLTYuMyw0IC0zLjUsMS4xIC00LjgsMC40IC02LjcsMy44IC0xLjcsMyAtMi41LDMuMyAtNS4zLDUuMiAtMi40LDEuNyAtMy42LDIuOCAtNi4zLDQuMiB6IG0gLTIuOCwtOSBjIDAsMy43IDAuNSw0LjIgMi4yLDcuMyBsIDguNSwtNy4xIC0wLjIsLTAuMiBjIC0xLjcsLTAuNCAtMi40LC0xLjUgLTQuOCwtMi4yIC0xLjYsLTAuNCAtNC4xLC0xLjMgLTUuOCwtMS40IHYgMy42IGggMC4xIHogbSAzNy42LDAuNSBjIC0wLjksMCAtMSwtMC4yIC0xLjksLTAuMiBsIDEsMi40IDIuNywtMi44IGMgLTAuOSwwLjIgLTAuOCwwLjUgLTEuOCwwLjUgeiBtIC01MS4zLC0wLjMgYyAtMC4xLDEuOSA3LjcsMS41IDkuMywxLjUgaCAyLjggYyAwLC0xLjcgLTAuNywtMi44IC0wLjgsLTQuNCAtMC4xLC0yLjUgLTAuNCwtMS44IC0zLjEsLTIuMSAtNCwtMC40IC00LjYsLTIgLTcuNywtMi44IGwgLTAuNiw3LjcgeiBtIC0yNS41LC0xMi42IDMsMTIuMSBjIDAuNywtMyAyLjIsLTQuNSAyLjgsLTcuMyAwLjMsLTEuOCAwLjEsLTIuNiAwLjksLTQgMC40LC0wLjcgMS4zLC0yLjggMS41LC0zLjYgLTEuNCwtMC4zIC02LjksLTEuNiAtOC42LC0xLjYgbCAwLjQsNC40IHogbSA2OS45LC0yLjIgYyAtMSw0LjEgLTAuNywzLjUgMSw3IDEuMiwyLjQgMiw0LjQgMy4xLDYuNiA1LjgsLTAuNSA2LjIsLTAuNSA5LjQsLTMuNiAxLjYsLTEuNiAxLC02LjggMiwtOC4zIC0yLjUsLTEuMiAtMS43LC0wLjYgLTQuNiwtMS4zIC00LjUsLTEgLTYuNiwtMC40IC0xMC45LC0wLjMgeiBtIC0zMC45LDEuMSB2IDAuOCBjIDAsMi4yIC0wLjEsMy4zIDAsNS40IDAuMSwzLjMgLTAuMywyLjUgMy4xLDIuOCAxLjIsMC4xIDMuNSwxIDQuNSwxLjQgMC43LDAuNCAxLjUsMC41IDIsMC44IDAuOCwwLjQgMC4zLDAuNiAxLjcsMS40IGwgLTAuMiwtMC4yIDUuNiwtNC43IGMgMy4xLDAgNC4yLDAuNCA1LjgsLTEuMyAyLjQsLTIuNSAwLjgsLTEuNCA0LC0zLjEgbCAwLjYsLTMuMSBjIC0yLjUsMC42IC01LjUsMi4yIC04LjIsMS4xIC0yLjYsLTEuMSAtMy44LC0yLjggLTcuNCwtMi44IGwgLTEuNiwtMC4zIC05LjksMS44IHogbSAtMzIuMSwxMS4yIGMgMS4zLDAgNS44LDAuNyA2LjksMSAxLjQsMC40IDQuNywyLjMgNS42LDIuMyBoIDIuOCBjIDEsMCAwLjksLTAuMyAxLjcsLTAuNSBsIDEuNywtOC4zIC01LjIsLTQuNSAtOSwtMiBjIC0wLjQsMS43IC0yLjQsMyAtMy4xLDUuMSAtMC4zLDAuNyAtMS41LDYuMyAtMS41LDcgeiBtIDQxLC0zNS4xIGMgMSwxLjIgMS40LDIuOCAyLjIsNC4yIDAuNCwwLjYgMi45LDMuMyAyLjksMy41IDAsMC44IC0wLjksMi4zIC0xLjMsMi4zIC0yLjcsMCAtMy44LC02LjcgLTMuOCwtMTAgeiBtIC0xLjgsLTEuMiBjIC0wLjMsMSAtMS45LDQuNSAtMi41LDUuNiAtMC45LDEuOCAtMS45LDMuNSAtNC40LDMuNSAtMC41LDAgLTEsLTAuNCAtMSwtMC44IDAsLTMuMSAzLjgsLTUuOCA1LjIsLTcuNiBsIDIuOCwtMC44IHogbSA5LjUsOC42IGggLTAuOCBjIC0yLjMsMCAtNi45LC04IC02LjksLTkuNyAwLC0wLjEgMC4zLC0wLjUgMC4zLC0wLjUgMS43LDAuNSA3LjksNiA3LjksOC43IC00ZS00LDAuNSAtMC40LDAuOCAtMC41LDEuNSB6IG0gMC42LC02IGMgLTAuNywtMC4zIC0xLjcsLTEgLTIuNCwtMS4zIC0xLjQsLTAuOCAtMy41LC0yLjkgLTQuNywtMy4zIGwgMS4xLC0xLjMgYyAzLjEsMS41IDEwLjEsMS4zIDEwLjEsNS43IDAsMC4zIC0wLjgsMC44IC0xLDEgLTAuOCwtMC4zIC0yLC0wLjQgLTMuMSwtMC44IHogbSAtMjQuOSwxLjMgaCAtMSBjIDEsLTIgLTIuMiwtNi43IC00LjQsLTcuMiAtMi4yLDEuMiAtNC4yLDAuNiAtNS41LDMuMyAtMC40LDEgLTAuNywyLjIgLTEuNSwyLjggLTAuOCwwLjYgLTIuNCwwLjggLTIuNCwxLjkgMCwxLjUgNC4zLDAuNCA0LjksLTAuMiAxLjIsLTEuMSAyLjQsLTIuMSA0LjUsLTIuMSAyLDAgMi45LDUuOCAzLjEsOC4yIDAuMiwzLjIgLTIuMyw3LjcgLTIuMiw5LjUgbCAwLjksNi44IC00LjQsLTAuMyBjIDIuMSwzLjEgOC41LDYgMTMuNCw2LjQgbCAtMC40LC03LjcgLTUuNiwxLjMgYyAwLC00LjQgLTIsLTUuNSAtMC41LC05LjUgMC42LC0xLjcgMSwtMi4yIDEsLTQuNyAwLC0xLjEgMC4yLC00LjYgMC42LC01LjMgMS41LC0yLjUgMS45LC01LjYgMy4xLC04LjQgMS4yLC0yLjggNSwtMi42IDguMywtMy41IGwgMS4yLDEuMyAtMSwwLjMgMC44LDEuOCBjIC0xLjcsMiAtMi45LDIuOSAtNC41LDUgLTAuOCwxIC0zLjgsNi4zIC0wLjYsNi4zIGggMSBjIDMuOSwwIDUuMSwtNy4xIDYuOSwtOS4yIDAuNCw0LjQgMS4yLDkuNSA0LjQsMTEuMiAxLjcsLTAuNCAyLjIsLTEuMSAyLjYsLTIuOCAwLjcsMC4yIDAuNSwwLjMgMSwwLjMgMS4zLDAgMiwtMS4xIDIsLTIuMyBWIDg1LjggYyAwLC0yLjEgLTEuMiwtMi40IC0xLjUsLTMuOCAwLjgsMC40IDIuMiwxIDMuMywxIGggMC41IGMgMS4yLDAgMS4zLC0wLjYgMS44LC0xLjMgLTAuMiwtMi41IC0xLjUsLTMuOSAtMy41LC00LjYgLTEuMywtMC40IC01LjIsLTEuNyAtNi43LC0xLjcgbCAwLjUsLTEgaCAtMC43IGwgMC44LC0xLjYgLTQuOSwxIGMgLTAuOSwtMC42IC0xLjIsLTEuNSAtMi42LC0xLjUgaCAtMS44IEMgOTIuMyw3Mi4yIDg4LjcsNzUuOCA4OC43LDgyLjkgbCAwLDAgelwifV0saVtcIkFDLklDLkZMT09EXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk03Ny4yLDkyLjlMNzcuMyw5Mi44TDk5LjMsNzIuNUw5OS43LDcyLjFMMTAwLDcyLjFMMTAwLjQsNzIuNUwxMjIuNCw5Mi44TDEyMy41LDkzLjlMMTIyLjQsOTMuOUwxMjIuNCwxMTUuOTAyQzEyMy4wMjMsMTE1LjEwNiAxMjMuNjU3LDExNC41IDEyNC40LDExNC41QzEyNS40NTQsMTE0LjE5OSAxMjQuODU3LDExNi43MTIgMTI1LjUsMTE3LjZDMTI1Ljk4OCwxMTguMjczIDEyNi44MDUsMTE4LjcyMSAxMjcuNjA5LDExOC45MjhDMTMwLjE0NiwxMTkuNTggMTMyLjc0NywxMTcuMzAzIDEzNC41LDExNi4yQzEzNS4wNDMsMTE1Ljg1OSAxMzYuMzU2LDExNS4yNiAxMzYuNCwxMTUuOUMxMzYuNjUyLDExOS41NTggMTM2LjUyNiwxMjMuMjM1IDEzNi40LDEyNi45TDYzLjcsMTI2LjlMNjMuNywxMTQuOUM2NC44MTksMTE3Ljk0MyA2Ni44MzUsMTIwLjk0OCA3MC42MzcsMTE5LjA1QzcyLjM1NywxMTguMTkyIDczLjIwOSwxMTUuNzQ1IDc1LjEsMTE1LjRDNzUuNDY0LDExNS4zMzQgNzYuMjY2LDExNi4zMzUgNzcuMSwxMTcuMjc4TDc3LjEsOTMuOUw3Ni4yLDkzLjlMNzcuMSw5M0w3Ny4xLDkyLjlMNzcuMiw5Mi45Wk0xMjEuMiwxMTcuNTQ0TDEyMS4yLDk0LjFMNzguMyw5NC4xTDc4LjMsMTE4LjQ5Qzc4LjUyMSwxMTguNjY3IDc4LjcyNywxMTguNzk1IDc4LjkxMSwxMTguODQ1QzgzLjQwNywxMjAuMDg0IDgyLjM0NSwxMTYuMDA5IDg2LjksMTE1LjVDODcuNTg4LDExNS40MjMgOTAuNTQ5LDExOS4xMTQgOTEuNTgzLDExOS41MzZDOTUuNjk0LDEyMS4yMTUgOTUuODI2LDExNi42OTQgOTguOSwxMTUuOUMxMDAuMDc0LDExNS41OTcgMTAwLjUzOCwxMTguMjM3IDEwMC45LDExOC41QzEwMS44NiwxMTkuMTk4IDEwMy4wMjgsMTE5LjY1MSAxMDQuMiwxMTkuODM3QzEwOS4zMywxMjAuNjU1IDEwOC42ODUsMTE3LjIxNiAxMTEuOSwxMTQuOUMxMTIuODQ4LDExNC4yMTcgMTEzLjU1NiwxMTYuNjAyIDExMy41NjMsMTE2LjYxM0MxMTUuMSwxMTkuMjI5IDExNS4wOTIsMTIwLjI3MyAxMTguNjU5LDExOS42MDZDMTE5LjY2NiwxMTkuNDE4IDEyMC40NjUsMTE4LjUyOSAxMjEuMiwxMTcuNTQ0Wk05OS43NSw3My44NDZMOTkuOCw3My44TDk5LjcsNzMuOEw5OS43NSw3My44NDZMNzkuMyw5Mi43TDEyMC4yLDkyLjdMOTkuNzUsNzMuODQ2WlwifV0saVtcIkFDLklDLklOVkVSU0lPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDY5LjUsODcuOSBDIDY5LjUsODYuNyA3My42LDgzLjkgNzUuNSw4My45IGggMC4zIGMgMy4zLDAgOSw5LjEgMTUuMiw5LjEgaCAxLjggYyA1LjQsMCAxMS4zLC05LjEgMTQuOSwtOS4xIDMuNSwwIDguOCw5LjEgMTUuMiw5LjEgaCAwLjkgYyA4LjUsMCAxMC41LC00LjQgMTUuNSwtNyBsIC01LjMsLTYuNCBjIC0zLjQsMS44IC00LjEsNC42IC05LjUsNS4zIC0yLjIsMC4zIC02LjYsLTMuOSAtOC4zLC01LjUgLTgsLTYuOCAtMTMsLTMgLTE5LjQsMiAtMy45LDMuMSAtMy45LDUuMyAtOC41LDEuMyAtMi4yLC0xLjggLTUuNiwtNC44IC04LjIsLTYgLTMuOCwtMS44IC04LjYsLTAuNyAtMTEuNCwxLjIgLTEuNiwxIC03LjMsNS4yIC03LjMsNi45IHYgNTIuMiBoIDguMiBWIDg3LjkgeiBtIC05LjQsLTE2LjQgNzkuOSwwIDAsLTguNSAtNzkuOSwwIHpcIn1dLGlbXCJBQy5JQy5UU1VOQU1JXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNjMsMTIyIDM5LjUsLTAuMSAzMC44LDAuMyBjIC03LjEsMCAtMTIuOCwtMS43IC0xNi45LC00LjggLTMuNywtMi45IC03LjcsLTggLTcuNywtMTQuNCAwLC05LjEgNi45LC0xNi41IDE1LjgsLTE2LjUgaCAwLjcgYyA2LjUsMCA4LjIsMi44IDExLjgsNS4zIC0yLC04LjYgLTEwLjYsLTE0LjIgLTIxLjQsLTE0LjIgaCAtMC4yIGMgLTE4LjIsMCAtNDQuOSwzMyAtNTIuNCw0NC4zIGwgMCwwIDAsMCB6XCJ9XSxpW1wiQUMuSUMuQklSRFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgxLjYsOTIuNSAtMTguNCwyLjkgdiAwLjMgbCA2LjYsMC41IGMgLTAuNywwLjUgLTMuMywxLjEgLTQuNSwxLjUgLTIuNiwwLjkgLTIsMC4zIC0zLjUsMi40IGwgMy40LDAuMSAtMSwxIGMgMS44LDAgMy4zLDAuMSA0LjgsMC4yIDEuNCwwLjEgMS45LC0xLjMgMy41LC0xLjQgMywtMC4yIDUuNywwLjIgOS4zLDAuMyBsIC0wLjgsMC41IGMgMC42LDAuMSAwLjcsMC4yIDEuNCwwLjIgaCAxLjYgbCAwLjEsMC45IDIuOSwxLjIgMS42LC0wLjEgYyAxLjYsMS4xIDEuOSwyLjMgNS4yLDIuNCAwLjIsMi43IDAuNiwzLjggMyw0LjQgdiAwLjggYyAwLDIuMiAwLjIsNC44IDIuMSw1IGwgMS4yLDUuMyBoIC0wLjQgdiAwLjQgYyAtMC4zLC0wLjMgLTEuNCwtMS4yIC0xLjgsLTEuMiBoIC0wLjIgYyAtMC41LDAgLTAuNSwwLjEgLTEsMC4yIDAuNiwwLjggMi43LDEuNyAzLjEsMi43IDAuNSwxLjYgMC4xLDMuOCAwLjIsNS4zIGwgMC45LDAuNiAwLjgsLTAuMSAwLjEsLTAuOCAtMC4xLC0yLjcgYyAwLjcsMC41IDIuNywzIDMuMywzIGggMSBjIC0wLjUsLTIgLTEuOCwtMi40IC0yLjcsLTMuOSBsIDMuNywxLjEgYyAtMSwtMS41IC0wLjksLTEuOCAtMi45LC0yLjMgLTMuMSwtMC44IC0xLjgsLTEuOSAtMy4xLC0yLjIgbCAtMSwtNS40IGMgMSwtMC4yIDEuNCwtMSAxLjQsLTIuMiBsIDAuMSwtMS42IC0wLjMsLTIuNiBoIDEgYyAwLjcsMCAwLjcsLTAuMiAxLjQsLTAuNCAwLjEsMS42IDEuMiwzLjMgMi43LDMuNCBsIDMuMSw2LjMgYyAtMC4zLDAuMyAtMC40LDAuMyAtMC40LDAuOCB2IDAuNyBsIC00LjQsLTAuOSB2IDAuMiBjIDAuOCwwLjcgMy43LDEuNyA1LjEsMi44IDEuMSwwLjggMS4yLDAuNiAyLDEuOSAwLjMsMC41IDEuMywyLjIgMS45LDIuMiBoIDAuOCBsIDAuMiwtMC4xIC0xLjcsLTMuMiA0LjMsMS45IGMgLTAuMSwtMi4xIC0yLjEsLTEuNSAtMy42LC0yLjggaCAzIGMgLTEuMywtMS4xIC0xLjYsLTAuOSAtMy41LC0xLjIgLTEuNiwtMC4yIC0xLjcsLTEuMiAtMi43LC0yLjEgLTEuMSwtMS4yIC0yLC00LjkgLTIuOSwtNi42IDEuMiwtMS44IDEsLTEuNCAxLC00LjQgNC44LC0yLjMgNS42LC0yLjEgOS4zLC01LjkgMi43LC0yLjcgMy45LC02LjEgNS44LC05LjcgMC45LC0xLjggMS41LC0zLjMgMi4yLC01LjIgMC43LC0xLjggMC43LC00LjcgMS40LC02LjMgMi4zLC00LjYgOSwtMy4yIDEwLjMsLTUuMiBsIC00LjQsMC4yIHYgLTAuMiBsIDUsLTAuNiBjIC0yLjIsLTEuOSAtNC44LC0xLjQgLTguMywtMS44IC0yLjEsLTAuMyAtMi45LDAuNyAtNC40LC0wLjMgLTEuNCwtMSAtMS42LC0xLjIgLTMuNywtMS41IC0zLjEsLTAuNSAtNS42LDEuMiAtNy40LDIuNSAtMS43LDEuMyAtMy4yLDUuMiAtNC4yLDYuMSAtMC4zLDAuMiAtNi4xLDIuNyAtNy4xLDMuMiAtMi45LDEuNSAtMy41LDIuNSAtNy4zLDMuMSAtNi4zLDEgLTkuOSwzLjQgLTE0LjIsNi4zIGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5JTlNFQ1RcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3Ny40LDg4LjggMC4xLC0wLjMgNi4xLDQuOSAtMC4xLDAuMiBjIC0yLjIsMS41IC03LjcsOSAtMTAsOSBsIC0xLjYsLTAuMSA1LjYsLTEzLjcgeiBtIDcuMSwzLjMgYyAtMC40LC0xLjcgLTUsLTYuNCAtNi43LC03LjIgLTAuNCwwLjMgLTEuOCwxIC0xLjgsMS42IDAsMC44IDAuMywxIDAuNSwxLjUgbCAtNS42LDE0LjcgaCAtMSBjIDAuMiwwLjkgMC41LDAuNyAwLjUsMSAwLDAuMyAtMyw3LjggLTMuMyw4LjcgLTAuNiwxLjQgLTEsMi43IC0xLjYsNC4yIC0wLjMsMC44IC0wLjYsMS42IC0wLjksMi4yIC0wLjUsMS4xIC0wLjYsMC4zIC0xLjQsMS43IGwgLTEuMywwLjMgYyAwLjMsMC41IDEuOCwwLjUgMi41LDAuNCAxLjIsLTAuMiAwLjQsLTEgMC44LC0yLjIgMC43LC0xLjggMS40LC0zLjUgMi4xLC01LjQgMC41LC0xLjIgMy43LC0xMC4zIDQuNiwtMTAuMyBoIDEuMyBjIDAuOCwwIDEsMC4zIDEuNSwwLjUgbCAyLjMsLTIuOCBjIDIuNywxLjggOC41LDQuNiAxMi44LDQuNiBoIDAuNyBsIDAuMiwtMC4xIC0zLjUsLTUgLTkuOSwtMC4xIDYuNSwtNi4zIGMgNC4zLDIuOSAxMS43LDE2LjkgMTQuOSwxNi45IGggMC4zIGMgMS40LDAgMS4zLC0wLjYgMS44LC0xLjYgLTAuOSwtMy43IC00LjgsLTYuMyAtNy4zLC04LjUgLTIuNCwtMiAtNi4xLC02LjUgLTguMywtNy45IDEuMiwtMS43IDEwLjMsLTEwLjggMTIuMiwtMTEuMyBsIDAuOSw3LjcgMC4xLDIuOSAtMS4yLDcuNCBoIC0xLjggbCA1LjIsNC40IDcuMiwtMy45IGMgLTAuNSwyLjEgLTAuMywyLjUgLTIuMiwzLjQgLTAuNiwwLjMgLTMuNywxLjkgLTMuNywyLjMgMCwwLjUgMC43LDEuNyAwLjcsMy4xIDAsMi45IC0zLjEsNC40IC01LjgsMy4zIC0yLjEsLTEgLTQuOSwtNS4xIC01LjUsLTUuMSBoIC0xIGMgLTQuNiwwIC02LjcsMS42IC0xMC41LDEuNiBoIC0wLjUgYyAtMS45LDAgLTIuNSwtMC43IC00LjEsLTAuNyBoIC0wLjUgYyAtMC42LDAgLTEsMC40IC0xLDEgMCwzLjIgMTIuMyw0LjcgMTYuOSw0LjYgbCAxMy4xLC0wLjMgdiAwLjMgYyAtMC45LDEuMyAtNS44LDQuOCAtOCw0LjggLTAuMSwwLjIgLTAuNSwwLjcgLTAuNSwwLjggMCwwLjcgMC4xLDAuNyAwLjMsMS4zIDAuNywwLjEgMC41LDAuMyAxLDAuMyAwLjUsMCAwLjUsLTAuMiAxLC0wLjUgdiAtMS4zIGwgNy43LC01LjQgLTEuNiw2LjEgYyAtMC45LDAuMSAtMS4zLDAuNCAtMS4zLDEuMyAwLDAuOSAwLjUsMC43IDEuNCwxLjIgbCAxLjIsLTEuNCBjIDAsLTAuMiAtMC43LC0xLjMgLTAuNywtMS40IDAsLTEuMyAyLjQsLTcuNiAyLjgsLTkuNSBsIDE1LjYsLTAuNSAxLjIsOC40IC0wLjQsMC4xIGMgMC4zLDAuNSAwLjMsMSAxLDEgMSwwIDEuMSwtMC4zIDEuNiwtMC43IC0wLjUsLTEgLTAuNSwtMS45IC0xLjcsLTEuMyBsIC0wLjgsLTYuNyA0LjgsNS41IC0wLjcsMC44IDEuNCwxLjIgYyAwLjUsLTAuMyAxLC0wLjIgMSwtMSB2IC0wLjUgYyAwLC0wLjkgLTAuOSwtMSAtMS42LC0xLjIgbCAtNC41LC01IDAuMywtMSBoIC04LjUgYyAwLC01IDIsLTguMiAyLjMsLTEyLjQgbCAtOS4yLDAuNCAtMC44LDIuNSBoIC00LjYgYyAtMS44LDAgLTIuOCwtOCAtMi45LC0xMC4zIDAsLTIuNCAtMC4zLC00LjEgLTAuMiwtNi40IDAuMSwtMS40IDEsLTUuMSAtMSwtNS4xIGggLTAuNyBjIC0xLDAgLTEuMywxIC0xLjYsMS44IC0wLjMsMSAtMSwxLjQgLTEuNiwyIC0xLjIsMS4zIC0yLjMsMi40IC0zLjUsMy42IC0xLjIsMS4yIC02LjIsNi43IC03LjQsNyBsIDAsMCB6IG0gMzcuOSw4IGMgMCwtMC4zIDAuMywtMC41IDAuNywtMC41IGggMC43IGwgMC4xLDAuNSAtMC4zLDEgaCAtMSBjIC0wLjEsLTAuNyAtMC4zLC0wLjQgLTAuMywtMSB6IG0gMy42LC0xLjggYyAtMC4yLDAgLTEuNiwtMS44IC0zLjMsLTEuOCBoIC0wLjUgYyAtMiwwIC0yLDIuMiAtMi41LDMuOSAtMC41LDEuNCAtMS40LDMuNyAtMS40LDUuNCAwLDAuNiAwLjQsMSAxLDEgMi40LDAgNi40LC01LjIgNi45LC03LjQgMy45LDAgMTEuMSwtMS4xIDExLjgsLTMuOSAtMi42LDAuNyAtMi45LDIuNCAtOCwyLjggMS44LC0xLjYgNS42LC00LjMgNS45LC03LjIgaCAtMC41IGMgLTAuOCwzLjEgLTUuNiw3LjIgLTkuNSw3LjIgelwifV0saVtcIkFDLklDLk1JQ1JPQklBTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgzLjksOTMuMyBjIC0zLjMsMCAtNiwyLjcgLTYsNiAwLDMuMyAyLjcsNiA2LDYgMy4zLDAgNiwtMi43IDYsLTYgMCwtMy4zIC0yLjcsLTYgLTYsLTYgeiBNIDEwMCw4NS41IGMgLTExLjEsMCAtMjEuMiwxLjUgLTI4LjYsNC4xIC0zLjcsMS4zIC02LjcsMi44IC04LjgsNC41IC0yLjEsMS43IC0zLjQsMy43IC0zLjQsNS45IDAsMi4yIDEuMyw0LjIgMy40LDUuOSAyLjEsMS43IDUuMSwzLjIgOC44LDQuNSA3LjQsMi41IDE3LjUsNC4xIDI4LjYsNC4xIDExLjEsMCAyMS4yLC0xLjUgMjguNiwtNC4xIDMuNywtMS4zIDYuNywtMi44IDguOCwtNC41IDIuMSwtMS43IDMuNCwtMy43IDMuNCwtNS45IDAsLTIuMiAtMS4zLC00LjIgLTMuNCwtNS45IC0yLjEsLTEuNyAtNS4xLC0zLjIgLTguOCwtNC41IEMgMTIxLjIsODcuMSAxMTEuMSw4NS41IDEwMCw4NS41IHogbSAwLDEuNCBjIDExLDAgMjEsMS41IDI4LjIsNCAzLjYsMS4yIDYuNSwyLjcgOC40LDQuMyAxLjksMS42IDIuOSwzLjIgMi45LDQuOCAwLDEuNiAtMSwzLjMgLTIuOSw0LjggLTEuOSwxLjYgLTQuOCwzIC04LjQsNC4zIC03LjIsMi41IC0xNy4xLDQgLTI4LjIsNCAtMTEsMCAtMjEsLTEuNSAtMjguMiwtNCAtMy42LC0xLjIgLTYuNSwtMi43IC04LjQsLTQuMyAtMS45LC0xLjYgLTIuOSwtMy4yIC0yLjksLTQuOCAwLC0xLjYgMSwtMy4zIDIuOSwtNC44IDEuOSwtMS42IDQuOCwtMyA4LjQsLTQuMyA3LjIsLTIuNSAxNy4xLC00IDI4LjIsLTQgelwifV0saVtcIkFDLklDLlJFUFRJTEVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5My41LDgyLjMgYyAwLC0yIDEuOCwtMi43IDEuOCwtNC4zIDAsLTEgLTAuNiwtMS41IC0xLjIsLTIgLTIuOCwwLjMgLTYuNSwwLjYgLTcuNCwyLjcgLTAuNSwxLjIgLTAuNSwyLjQgLTEuMiwzLjkgLTAuNSwxIC0xLjIsMi40IC0xLjIsMy44IDAsMC44IDAuNCwwLjcgMC40LDEuNiB2IDAuOCBjIDAsMi4yIC0yLjQsMy41IC0wLjYsNi4xIC0wLjIsMC4zIC0yLDEuNSAtMi40LDEuNyAtMS43LDEgLTEuOCwtMC42IC0yLjYsLTAuNiBoIC0wLjggbCAtMC4zLC0xLjIgYyAtMC41LC0wLjMgLTEsLTAuOCAtMS43LC0wLjggLTAuOCwwIC0wLjgsMC41IC0wLjYsMSBsIC0yLjEsMC40IC0wLjgsMi4zIGggMSBjIDAuOSwwIDEuNCwwLjQgMS42LDEuMiBsIC0xLjUsMS4yIC0wLjEsMC40IGMgMi44LDAuMyA0LjYsLTAuNiA3LjIsLTEuMiAxLjUsLTAuNCA2LjgsLTAuNiA3LjMsLTEgbCAwLjEsLTIuMiBjIDEsMC4zIDIsMS4zIDMuMSwxLjcgMS4yLDAuNCAxLjcsMC44IDMuMSwxLjIgMi40LDAuNiA0LjUsMS4yIDcuNywxLjIgaCAwLjYgbCA2LjEsLTAuNiBjIDAsMi42IDIuMywyLjUgMi44LDQuNSAtMS4zLC0wLjMgLTIuMywtMiAtMy41LC0yIC0wLjEsMCAtMC40LDAuMSAtMC42LDAuMiBsIDAuMywxLjIgLTEuNiwwLjMgdiAwLjggbCAwLjYsMC40IC0wLjksMC42IDEsMSBjIC0wLjIsMC44IC0wLjcsMC42IC0wLjcsMS4zIDAsMC40IDAuMSwwLjYgMC42LDAuNiAwLjYsMCAxLjYsLTEgMi44LC0xIDEuOSwwIDguMywwLjggOC4zLC0wLjggdiAtMC4yIGMgMCwtMS41IC0zLjUsLTEuNiAtMy4zLC01LjUgNSwyLjYgOS4zLDcuNCA0LjUsMTMuNiAtMS41LDIgLTQuMSwzLjYgLTYuNyw0LjUgLTEuNCwwLjUgLTcuNCwxLjkgLTkuMywxLjUgLTQuMiwtMC44IC01LjQsLTAuOCAtOC44LC0yLjQgLTIuNiwtMS4yIC00LjcsLTIuNSAtNywtNCAtMy45LC0yLjQgLTEwLC02LjEgLTE2LjEsLTYuMSAtNSwwIC0xMS40LDMuMSAtMTEuNCw3LjkgMS4yLC0wLjYgMS4zLC0xLjMgMi4xLC0yLjIgMC41LC0wLjYgMS43LC0xLjMgMi40LC0xLjcgMS41LC0xIDMuOSwtMS44IDYuNSwtMS44IGggMSBjIDQuNCwwIDExLjYsNC43IDE0LjUsNi43IDQuNSwzLjEgOC4xLDUuNSAxNC43LDYuNyA3LDEuMiAxMi43LC0wLjEgMTcuNCwtMi44IDEuOSwtMS4xIDQuMywtMy4zIDUuNSwtNS4xIDEsLTEuNiAyLjksLTUuNCAyLjcsLTggbCAtMC4zLC0yLjYgYyAwLjMsMC4xIDIuOCwzLjcgMy42LDQuNSAwLjgsMC44IDMuOCwyLjUgNS4zLDIuNSAxLDAgNC40LC0yLjIgNC43LC0yLjkgbCAtMS4zLC0wLjYgMS4yLC0xIGMgLTEuNSwtMSAtMC44LC0wLjYgLTIuNCwtMC42IGggLTEgYyAwLC0xLjQgLTAuMywtMS44IC0xLjMsLTEuNiBsIDAuMiwwLjEgLTEuNywzLjQgYyAtMS40LDAgLTIuOSwtMC45IC0zLjYsLTEuOCAwLC0wLjEgLTEuMywtMy44IC0xLjMsLTMuOSAtMC42LC0yIC0wLjYsLTIuMiAtMS44LC0zLjYgLTEuMiwtMS4zIC0xLjksLTEuMiAtMy40LC0xLjkgbCAtMC4xLDAuNiBjIC0wLjYsLTEuOCAtNi4yLC02LjUgLTguMSwtNy40IC0yLjIsLTEuMiAtMy4yLC0xLjIgLTYsLTEuNyAtMi4xLC0wLjMgLTUuNCwwLjMgLTcsLTAuNSAwLjQsLTEuNSAxLjYsLTAuNiAxLjYsLTIuMiAwLC0wLjUgLTAuNywtMC40IC0xLjIsLTAuNCAwLjYsLTEuMiAtMC4zLC0xIC0xLjMsLTEgMC4xLC0wLjMgMC40LC0wLjYgMC40LC0xIDAsLTAuMyAtMC4zLC0wLjQgLTAuNiwtMC40IC0wLjQsMCAwLDAuNiAtMS4zLDAuNiAtMC4zLC0xIC0wLjMsLTEuMyAtMS41LC0xLjQgdiAxLjYgaCAtMS4zIHYgMC42IGMgMCwwLjggMC42LDEuNSAxLDIuMiAtMC40LDAuNyAtMC4zLDIgLTEuNCwyIC0wLjYsMCAtMS44LC0xLjUgLTMuMSwtMS45IC0xLjMsLTAuNCAtMywwLjUgLTMsLTEuNSAtMCwtMC45IDIuMSwtMi41IDIuOCwtMy41IGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5ST0RFTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTcuMiw4MC4zIGMgMC42LDEuMiAwLjYsMS43IDEuNSwyLjYgMC42LDAuNyAxLjgsMS4yIDEuOSwyLjIgLTIsLTAuMSAtNC4yLC0zLjMgLTQuNCwtNS4zIC0yLjEsLTAuNSAtOC40LC0zLjYgLTEwLjksLTQuNyAtMy4xLC0xLjMgLTguMywtMi43IC0xMi43LC0yLjcgaCAtMi4yIGMgLTQsMCAtOSwyLjUgLTExLjMsNC4yIC0zLDIuMiAtNS4yLDUuMiAtNS4yLDEwLjQgdiAwLjcgYyAtNC42LDEuMSAtMTEuNyw4LjQgLTExLjcsMTMuOSB2IDIuNCBjIDAsNi4yIDcuNywxMCAxMS44LDEyLjcgMi41LDEuNyA0LjcsMy4zIDcsNS4xIDIuMiwxLjcgNC43LDQuMiA2LjcsNS41IC0yLjEsLTkgLTIyLjQsLTEyLjcgLTIyLjQsLTI1LjEgMCwtNC41IDQuOSwtOS4zIDguNSwtMTAuMiAtMC4xLDAuNiAtMC4zLDAuNiAtMC4zLDEuMyB2IDAuNSBjIDAsNC41IDcuOCw0LjEgMTEuNSwzIDUuMSwtMS41IDguMSwtMi4yIDEzLjYsLTEuMiA1LjQsMS4xIDguMywxLjUgMTIuNywzLjYgMy43LDEuOSAyLDEuMiA0LjIsMy44IDEuMSwxLjMgMSwxLjEgMi45LDEuMyAwLjgsMC4xIDEuOCwxIDIuNCwxLjUgaCAxLjcgYyAtMS4zLC0yLjYgLTQuOSwtMi45IC01LjYsLTUuOCAwLjgsLTEuNSAxLjcsLTEuNyAzLjksLTEuNyAwLjgsMCAxLDAuMiAxLjcsMC4zIC0wLjMsLTAuNiAtMC42LC0xLjcgMC41LC0xLjcgaCAxLjkgYyA0LjUsMCA5LDIuNSAxMi43LDAgMCwtMyAwLjQsLTIuMiAtMC45LC00LjkgLTAuNSwtMC44IC0yLjEsLTIuNyAtMi44LC0zLjQgLTEuNiwtMS41IC01LjcsLTQuMSAtNi43LC01LjUgMCwtMi44IC0wLjQsLTMuNCAtMi43LC0zLjkgbCAtMC41LDEgMC41LDIuNyAtMSwwLjMgdiAwLjkgaCAtMC44IGMgLTAuMiwtMi40IC0xLjIsLTUuOCAtMy42LC01LjggaCAtMC4yIGMgLTEuOCwtNGUtNCAtMS41LDEgLTIsMS45IHogbSA5LjUsMjQuNiBoIDEuMiBjIC0wLjIsLTIuNiAtNS4xLC0yLjggLTUuNCwtNS40IGwgLTIuMiwwLjMgYyAwLjIsMS41IDEuMSwyLjkgMi40LDMuNSAwLjksMC4zIDEuNSwwIDIuMywwLjYgMC40LDAuMyAxLjEsMSAxLjcsMSB6IG0gLTQ1LjEsLTYuMSBjIDEuMiwxLjggNS45LDQuMiA4LjgsNC4yIDEsMCAxLjYsLTAuOCAxLjksLTEuNSAtMC45LC0xLjMgLTIuOSwtMi44IC00LjcsLTMuMSAtMy43LC0wLjggLTIuOSwwLjEgLTYsMC40IGwgMCwwIHogbSA5LjUsLTEuOSBjIDEuMywyIDUsMi45IDguMywyLjkgMC44LDAgMS40LC0wLjQgMS45LC0wLjcgLTIsLTIuOSAtNi4xLC0yLjYgLTEwLjIsLTIuMiB6XCJ9XSxpW1wiQUMuSUMuUEhBUk1BQ1lcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4My4zLDc0LjUgaCAxMy4yIGMgMywwIDYuMiwzLjggNiw3LjMgLTAuMSwzLjYgLTIuOSw2LjYgLTYuNSw2LjYgSCA4My4zIFYgNzQuNSB6IG0gLTguNyw0NS45IGggOC43IFYgOTggaCAyLjQgYyAwLjYsMCAxMy42LDE2LjEgMTMuNiwxNy4yIDAsMC42IC0xMy42LDE2LjYgLTE1LDE5LjMgbCAxMC41LC0wLjEgMTAuMywtMTIuMiA5LjYsMTIuMyAxMC45LC0wIC0xNS4yLC0xOS4zIDE0LjQsLTE3LjggLTEwLjIsLTAuMSAtOS43LDEwLjggLTcuNCwtMTAgYyA4LjUsLTIgMTQuMSwtNi44IDE0LjEsLTE3LjIgMCwtOC4xIC03LC0xNS4zIC0xNSwtMTUuMyBIIDc0LjYgdiA1NC44IHpcIn1dLGlbXCJHUi5JTi5JQy5FRFVDQVRJT05BTCBGQUNJTElUSUVTIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTkuNiwxMDcuMSBoIC0xNC44IHYgMzEuNyBoIDMyIHYgLTMxLjcgaCAtMTQuOCBWIDk1LjIgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBoIC0yLjMgdiAyNC41IHogbSAtMy4xLC00NSAtNS42LDE0LjggMS43LDAgMS4zLC0zLjggMC4xLC0wLjEgMC4xLDAgNi44LDAgMC4xLDAgMC4xLDAuMSAxLjMsMy44IDEuNywwIC01LjYsLTE0LjggLTIuMSwwIHogbSAwLjgsMS44IDAuMiwwLjEgMC4yLC0wLjEgMi44LDcuNSAwLjEsMC4zIC0wLjMsMCAtNS42LDAgLTAuMywwIDAuMSwtMC4zIDIuOCwtNy41IHogbSAtMTQuOCwtMS44IDguMywwIDAsMS4zIC02LjUsMCAtMC4yLDAgMCwwLjIgMCw0LjUgMCwwLjIgMC4yLDAgNS44LDAgMCwxLjMgLTUuOCwwIC0wLjIsMCAwLDAuMiAwLDcgLTEuNiwwIDAsLTE0LjggeiBtIDMwLjMsLTAuMyBjIDAuOSwxLjVlLTUgMS43LDAuMSAyLjUsMC40IGwgMCwwIGMgMC44LDAuMiAxLjQsMC42IDIuMSwxIGwgMCwxLjYgYyAtMC42LC0wLjUgLTEuMywtMC45IC0xLjksLTEuMiAtMC44LC0wLjMgLTEuNywtMC41IC0yLjYsLTAuNSAtMS44LDEuNGUtNSAtMy4yLDAuNiAtNC4xLDEuNyAtMSwxLjEgLTEuNCwyLjcgLTEuNCw0LjcgLTFlLTUsMiAwLjUsMy42IDEuNCw0LjcgMSwxLjEgMi40LDEuNyA0LjEsMS42IDAuOSwyZS02IDEuOCwtMC4yIDIuNiwtMC41IDAuNywtMC4zIDEuMywtMC43IDEuOSwtMS4yIGwgMCwxLjYgYyAtMC43LDAuNCAtMS40LDAuOCAtMi4xLDEgLTAuOCwwLjIgLTEuNiwwLjQgLTIuNSwwLjQgLTIuMywwIC00LC0wLjcgLTUuMywtMiAtMS4zLC0xLjQgLTEuOSwtMy4yIC0xLjksLTUuNiAwLC0yLjQgMC42LC00LjMgMS45LC01LjYgMS4zLC0xLjQgMywtMiA1LjMsLTIgelwifV0saVtcIkFUTU9TUEhFUklDLklDLkRSSVpaTEUuSU5URVJNSVRURU5UIExJR0hUXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDpcInJnYigwLCAxMjgsIDApXCIsZDpcIm0gMTAwLDgyLjcgYyAtNS41LDAgLTEwLDQuNSAtMTAsMTAgMCw1LjUgNC41LDEwIDEwLDEwIDAuMSwwIDAuMSwwIDAuMiwwIGwgLTAuMiwwLjIgYyAwLjksNSAtOC40LDE0LjQgLTguNCwxNC40IDEyLjgsMC4xIDE4LjQsLTEzLjQgMTguMywtMjMuNCBsIC0wLDAgYyAwLC0wLjQgMC4xLC0wLjggMC4xLC0xLjIgMCwtNS41IC00LjUsLTEwIC0xMCwtMTAgelwifV0saVtcIkFUTU9TUEhFUklDLklDLkZPRy5TS1kgT0JTQ1VSRURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDI1NSwgMjQ3LCAwKVwiLGQ6XCJtIDQ5LjYsNTkuNyAwLDggMTAwLjksMCAwLC04IC0xMDAuOSwwIHogbSAwLDcxLjYgMCw4IDEwMC45LDAgMCwtOCAtMTAwLjksMCB6IG0gMCwtMzUuNiAwLDggMTAwLjksMCAwLC04IC0xMDAuOSwwIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5IQUlMLkxJR0hUIE5PVCBBU1NPQ0lBVEVEIFdJVEggVEhVTkRFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6XCJyZ2IoMTk4LCAxNiwgMzMpXCIsZDpcIm0gMTAwLDQ1LjUgLTAuOSwyLjEgLTE2LDM2IC0wLjYsMS40IDEuNSwwIDMyLDAgMS41LDAgLTAuNiwtMS40IC0xNiwtMzYgTCAxMDAsNDUuNSB6IG0gLTIxLjQsNDYuNyAwLjQsMS4zIDIwLDYwIDAuOSwyLjkgMC45LC0yLjkgMjAsLTYwIDAuNCwtMS4zIC0xLjQsMCAtNDAsMCAtMS40LDAgeiBtIDIuOCwyIDM3LjIsMCBMIDEwMCwxNTAgODEuNCw5NC4xIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5SQUlOLklOVEVSTUlUVEVOVCBMSUdIVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6XCJyZ2IoMCwgMTI4LCAwKVwiLGQ6XCJtIDEwMCw3OS44IGMgLTExLjIsMCAtMjAuMiw5IC0yMC4yLDIwLjIgMCwxMS4yIDksMjAuMiAyMC4yLDIwLjIgMTEuMiwwIDIwLjIsLTkgMjAuMiwtMjAuMiAwLC0xMS4yIC05LC0yMC4yIC0yMC4yLC0yMC4yIHpcIn1dLGlbXCJBVE1PU1BIRVJJQy5JQy5EVVNUIE9SIFNBTkQuTElHSFQgVE8gTU9ERVJBVEVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE3MywgMTA1LCA3NSlcIixkOlwibSAxNDAuNyw4NSAtMiwyIDEzLDEzIC0xMywxMyAyLDIgMTQsLTE0IDEsLTEgLTEsLTEgTCAxNDAuNyw4NSB6IG0gLTkzLjUsMTMuNiAwLDIuOCAxMDYuNSwwIDAsLTIuOCAtMTA2LjUsMCB6IE0gOTguNSw2Mi4zIGMgLTMuMiwwIC02LjQsMC44IC05LjIsMi4yIC0zLjcsMS44IC02LjksNC40IC05LjMsNy4zIC0yLjMsMi45IC0zLjksNi4xIC0zLjksOS4zIDAsNS42IDIuOSw5LjkgNi45LDEzLjIgNCwzLjMgOSw1LjggMTMuOSw4LjMgNC45LDIuNSA5LjcsNC45IDEzLjEsNy43IDMuNCwyLjggNS40LDUuOCA1LjQsMTAuMSAwLDMuNiAtNCw5IC0xMCwxMS42IC02LDIuNiAtMTMuNiwyLjcgLTIwLjksLTMuNCBsIC0yLjcsMy4yIGMgOC40LDcuMSAxOCw3LjIgMjUuMyw0IDcuMiwtMy4xIDEyLjUsLTkuMiAxMi41LC0xNS40IDAsLTUuNiAtMi45LC0xMCAtNi45LC0xMy4zIC00LC0zLjMgLTksLTUuOCAtMTMuOSwtOC4yIC00LjksLTIuNSAtOS43LC00LjkgLTEzLjEsLTcuNyAtMy40LC0yLjggLTUuNCwtNS44IC01LjQsLTEwIDAsLTEuNyAxLC00LjMgMi45LC02LjcgMS45LC0yLjQgNC43LC00LjcgNy44LC02LjIgNi4yLC0zIDEzLjUsLTMuMSAxOS45LDQuNCBsIDMuMiwtMi43IEMgMTA5LjUsNjQuNCAxMDMuOSw2Mi4zIDk4LjUsNjIuMyB6XCJ9XSxpW1wiQVRNT1NQSEVSSUMuSUMuU05PVy5JTlRFUk1JVFRFTlQgTElHSFRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDAsIDEyOCwgMClcIixkOlwibSAxMTEuNSw3OC45IC0yNi40LDQwIDMuMywyLjIgMjYuNCwtNDAgLTMuMywtMi4yIHogbSAtMjMuMSwwIC0zLjMsMi4yIDI2LjQsNDAgMy4zLC0yLjIgLTI2LjQsLTQwIHogTSA4MCw5OCBsIDAsNCA0MCwwIDAsLTQgLTQwLDAgelwifV0saVtcIkFUTU9TUEhFUklDLklDLlNUT1JNUy5USFVOREVSU1RPUk0gTElHSFQgVE8gTU9ERVJBVEUgLSBXSVRIIEhBSUxcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDEwMSA1MS45IEwgOTkuNyA1NC40IEwgODUuOCA4Mi4zIEwgODQuOCA4NC4zIEwgODcgODQuMyBMIDExNC45IDg0LjMgTCAxMTcuMiA4NC4zIEwgMTE2LjIgODIuMyBMIDEwMi4yIDU0LjQgTCAxMDEgNTEuOSB6IE0gMTAxIDU4LjEgTCAxMTIuNyA4MS41IEwgODkuMyA4MS41IEwgMTAxIDU4LjEgeiBNIDc4LjMgODcuNyBMIDc4LjMgOTAuNSBMIDgzLjkgOTAuNSBMIDgzLjkgMTQ1IEwgODYuNyAxNDUgTCA4Ni43IDkwLjUgTCAxMTcuOCA5MC41IEwgMTAyLjggMTE2LjQgTCAxMDIuNCAxMTcuMSBMIDEwMi45IDExNy44IEwgMTE3LjggMTQwLjkgTCAxMTEuMiAxMzYuOCBMIDEwOS44IDEzOS4yIEwgMTIwLjkgMTQ2LjIgTCAxMjMuMyAxNDcuNyBMIDEyMyAxNDQuOSBMIDEyMS43IDEzMC45IEwgMTE4LjkgMTMxLjIgTCAxMTkuNiAxMzguNiBMIDEwNS43IDExNyBMIDEyMS41IDg5LjggTCAxMjIuNyA4Ny43IEwgMTIwLjMgODcuNyBMIDc4LjMgODcuNyB6IFwifV0saVtcIkFUTU9TUEhFUklDLklDLlNUT1JNUy5GVU5ORUwgQ0xPVUQgKFRPUk5BRE8vV0FURVJTUE9VVClcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDEyNS43LDU5LjEgMTEyLjQsNzIuNCAxMTIsNzIuOCBsIDAsMC42IDAsNTMuMyAwLDAuNiAwLjQsMC40IDEzLjMsMTMuMyAxLjksLTEuOSAtMTIuOSwtMTIuOSAwLC01Mi4yIDEyLjksLTEyLjkgLTEuOSwtMS45IHogbSAtNTEuNSwwIC0xLjksMS45IDEyLjksMTIuOSAwLDUyLjIgTCA3Mi40LDEzOS4xIDc0LjMsMTQwLjkgODcuNiwxMjcuNiA4OCwxMjcuMiBsIDAsLTAuNiAwLC01My4zIDAsLTAuNiBMIDg3LjYsNzIuNCA3NC4zLDU5LjEgelwifV0saVtcIkFUTU9TUEhFUklDLklDLlRST1BJQ0FMIFNUT1JNIFNZU1RFTVMuVFJPUElDQUwgU1RPUk1cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOlwicmdiKDE5OCwgMTYsIDMzKVwiLGQ6XCJNIDExMi4xIDU1IEMgOTYuOSA1OS45IDc2LjcgODEuOCA4Mi4yIDEwMS40IEMgODIuOSAxMTAuNiA5MC42IDExNy45IDEwMCAxMTcuOSBDIDEwMCAxMTcuOSAxMDAgMTE3LjkgMTAwLjEgMTE3LjkgQyA5OS4zIDEyOC4yIDg3LjkgMTQ1IDg3LjkgMTQ1IEMgMTAzLjEgMTQwLjEgMTIzLjMgMTE4LjIgMTE3LjggOTguNiBDIDExNy4xIDg5LjQgMTA5LjQgODIuMSAxMDAgODIuMSBDIDEwMCA4Mi4xIDEwMCA4Mi4xIDk5LjkgODIuMSBDIDEwMC43IDcxLjggMTEyLjEgNTUgMTEyLjEgNTUgeiBNIDEwMCA4NC41IEMgMTA2LjggODQuNSAxMTIuNSA4OC44IDExNC42IDk0LjggQyAxMTQuOCA5NS4yIDExNC45IDk1LjYgMTE1IDk2IEMgMTE1IDk2LjEgMTE1IDk2LjEgMTE1IDk2LjIgQyAxMTUuMSA5Ni42IDExNS4yIDk2LjkgMTE1LjMgOTcuMyBDIDExNS40IDk4LjEgMTE1LjUgOTkuMSAxMTUuNSAxMDAgQyAxMTUuNSAxMDEuMSAxMTUuNCAxMDIuMSAxMTUuMiAxMDMuMSBDIDExNSAxMDQuMSAxMTQuNyAxMDUgMTE0LjQgMTA1LjggQyAxMTQuNCAxMDUuOSAxMTQuMyAxMDUuOSAxMTQuMyAxMDYgQyAxMTQuMSAxMDYuNCAxMTQgMTA2LjcgMTEzLjggMTA3LjEgQyAxMTMuNyAxMDcuMiAxMTMuNyAxMDcuMyAxMTMuNyAxMDcuMyBDIDExMy42IDEwNy40IDExMy42IDEwNy41IDExMy41IDEwNy42IEMgMTEzLjMgMTA3LjkgMTEzLjEgMTA4LjMgMTEyLjkgMTA4LjYgQyAxMTIuNCAxMDkuMyAxMTEuOSAxMTAgMTExLjMgMTEwLjYgQyAxMTEuMiAxMTAuNyAxMTEuMSAxMTAuOCAxMTEuMSAxMTAuOSBDIDExMC44IDExMS4xIDExMC41IDExMS40IDExMC4zIDExMS42IEMgMTEwLjIgMTExLjcgMTEwLjIgMTExLjcgMTEwLjEgMTExLjggQyAxMDkuOCAxMTIgMTA5LjUgMTEyLjMgMTA5LjIgMTEyLjUgQyAxMDkuMSAxMTIuNSAxMDkuMSAxMTIuNSAxMDkuMSAxMTIuNSBDIDEwOC45IDExMi43IDEwOC42IDExMi45IDEwOC40IDExMyBDIDEwOC4xIDExMy4yIDEwNy44IDExMy40IDEwNy41IDExMy42IEMgMTA3LjQgMTEzLjYgMTA3LjQgMTEzLjYgMTA3LjQgMTEzLjcgQyAxMDYuNiAxMTQuMSAxMDUuNyAxMTQuNCAxMDQuOSAxMTQuNyBDIDEwNC43IDExNC44IDEwNC41IDExNC44IDEwNC4zIDExNC45IEMgMTA0IDExNSAxMDMuNiAxMTUuMSAxMDMuMyAxMTUuMiBDIDEwMy4yIDExNS4yIDEwMy4xIDExNS4yIDEwMy4xIDExNS4yIEMgMTAyLjEgMTE1LjQgMTAxLjEgMTE1LjUgMTAwIDExNS41IEMgOTMuMyAxMTUuNSA4Ny42IDExMS4zIDg1LjQgMTA1LjMgQyA4NS40IDEwNS4zIDg1LjQgMTA1LjIgODUuNCAxMDUuMiBDIDg1LjMgMTA0LjggODUuMiAxMDQuNSA4NS4xIDEwNC4yIEMgODUgMTA0IDg1IDEwMy45IDg1IDEwMy44IEMgODQuOSAxMDMuNSA4NC44IDEwMy4yIDg0LjggMTAyLjkgQyA4NC43IDEwMi41IDg0LjYgMTAyIDg0LjYgMTAxLjYgQyA4NC41IDEwMS4xIDg0LjUgMTAwLjUgODQuNSAxMDAgQyA4NC41IDk5IDg0LjYgOTggODQuOCA5NyBDIDg0LjggOTcgODQuOCA5Ni45IDg0LjggOTYuOSBDIDg0LjkgOTYuNCA4NSA5NiA4NS4yIDk1LjYgQyA4NS4zIDk1LjIgODUuNCA5NC45IDg1LjUgOTQuNSBDIDg1LjYgOTQuMyA4NS42IDk0LjIgODUuNyA5NCBDIDg1LjcgOTMuOSA4NS44IDkzLjggODUuOCA5My44IEMgODYgOTMuNCA4Ni4yIDkzIDg2LjMgOTIuNyBDIDg2LjQgOTIuNiA4Ni40IDkyLjUgODYuNSA5Mi40IEMgODYuNyA5Mi4xIDg2LjkgOTEuNyA4Ny4xIDkxLjQgQyA4Ny4zIDkxLjEgODcuNSA5MC44IDg3LjggOTAuNSBDIDg4IDkwLjIgODguMiA5MCA4OC40IDg5LjcgQyA4OC42IDg5LjUgODguOCA4OS4zIDg4LjkgODkuMSBDIDg5IDg5IDg5LjEgODkgODkuMiA4OC45IEMgODkuNCA4OC43IDg5LjcgODguNCA4OS45IDg4LjIgQyA5MC4yIDg4IDkwLjUgODcuOCA5MC44IDg3LjUgQyA5MC44IDg3LjUgOTAuOSA4Ny41IDkwLjkgODcuNSBDIDkxLjEgODcuMyA5MS40IDg3LjEgOTEuNiA4NyBDIDkxLjkgODYuOCA5Mi4yIDg2LjYgOTIuNSA4Ni40IEMgOTIuNiA4Ni40IDkyLjYgODYuNCA5Mi42IDg2LjMgQyA5My4xIDg2LjEgOTMuNSA4NS45IDk0IDg1LjcgQyA5NC40IDg1LjYgOTQuNyA4NS40IDk1LjEgODUuMyBDIDk1LjMgODUuMiA5NS41IDg1LjIgOTUuNyA4NS4xIEMgOTYgODUgOTYuNCA4NC45IDk2LjggODQuOCBDIDk2LjggODQuOCA5Ni44IDg0LjggOTYuOSA4NC44IEMgOTYuOSA4NC44IDk2LjkgODQuOCA5Ni45IDg0LjggQyA5Ny40IDg0LjcgOTcuOSA4NC42IDk4LjQgODQuNiBDIDk4LjkgODQuNSA5OS41IDg0LjUgMTAwIDg0LjUgeiBcIn1dLGlbXCJBQy5JQy5FTVQgU1RBVElPTiBMT0NBVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEwMCA1NSBMIDcwIDgwIEwgNzUgODAgTCA3NSAxMjUgTCAxMjUgMTI1IEwgMTI1IDgwIEwgMTMwIDgwIEwgMTAwIDU1IHogTSA5NSA4MCBMIDEwNSA4MCBMIDEwNSA5MS4zIEwgMTE0LjggODUuNyBMIDExOS44IDk0LjMgTCAxMTAgMTAwIEwgMTE5LjggMTA1LjcgTCAxMTQuOCAxMTQuMyBMIDEwNSAxMDguNyBMIDEwNSAxMjAgTCA5NSAxMjAgTCA5NSAxMDguNyBMIDg1LjIgMTE0LjMgTCA4MC4yIDEwNS43IEwgOTAgMTAwIEwgODAuMiA5NC4zIEwgODUuMiA4NS43IEwgOTUgOTEuMyBMIDk1IDgwIHogXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwiTSA5NSA4MCBMIDk1IDkxLjMgTCA4NS4yIDg1LjcgTCA4MC4yIDk0LjMgTCA5MCAxMDAgTCA4MC4yIDEwNS43IEwgODUuMiAxMTQuMyBMIDk1IDEwOC43IEwgOTUgMTIwIEwgMTA1IDEyMCBMIDEwNSAxMDguNyBMIDExNC44IDExNC4zIEwgMTE5LjggMTA1LjcgTCAxMTAgMTAwIEwgMTE5LjggOTQuMyBMIDExNC44IDg1LjcgTCAxMDUgOTEuMyBMIDEwNSA4MCBMIDk1IDgwIHogXCJ9XSxpW1wiQUMuSUMuSEVBTFRIIERFUEFSVE1FTlQgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMzEuNCw4My42IDEwMCw2OC40IDY4LjUsODMuNSB6IG0gLTI2LjQsMTQuNiAwLC05LjcgLTEwLjEsMCAwLDkuNyAtOS41LDAgMCwxMC40IDkuNSwwIDAsOS41IDEwLjEsMCAwLC05LjUgOS42LDAgMCwtMTAuNCB6IG0gLTI3LjIsMTkuNSAwLC0yNy44IDEuNCwwIDAsLTMuNyAtNy4zLDAgMCwzLjcgMS4yLDAgMCwyNy44IC0xLjIsMCAwLDMuOCA3LjMsMCAwLC0zLjggeiBtIDQ4LjcsMCAwLC0yNy44IDEuNCwwIDAsLTMuNyAtNy4zLDAgMCwzLjcgMS4yLDAgMCwyNy44IC0xLjIsMCAwLDMuOCA3LjMsMCAwLC0zLjggeiBtIC01Ni40LDUuMSAwLDMgNTkuNCwwIDAsLTMgeiBtIC0xLjgsNi4xIDAsMi44IDYzLjIsMCAwLC0yLjggelwifV0saVtcIkFDLklDLk1FRElDQUwgRkFDSUxJVElFUyBPVVRQQVRJRU5UXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODEuOCw2My42IDI2LjYsOSAwLDYzLjkgLTI2LjYsLTkuMSB2IC02My44IGwgMCwwIHogbSAtMS42LDY1IDI5LjksMTAuNCB2IC0xMC42IGggOS44IFYgNjEgSCA4MC4yIHYgNjcuNiBsIDAsMCB6IG0gMjEuNCwtMTguMSBjIDAsMS4xIDEsMi42IDIuMiwyLjYgMC44LDAgMS4yLC0wLjggMS4yLC0xLjYgdiAtMC40IGMgMCwtMS4yIC0xLjEsLTMgLTIsLTMgLTAuOCwwIC0xLjQsMC44IC0xLjQsMS42IHYgMC44IEggMTAxLjUgeiBNIDg1LjksOTAuOSBjIDAuOSwwLjEgNS4zLDEuOCA1LjMsMi40IHYgNy4xIGwgNS43LDIuMiB2IC03LjUgbCA1LjUsMS45IFYgODkuMSBDIDEwMS41LDg4LjggOTYuOSw4Ny4yIDk2LjksODYuNiBWIDc5LjUgTCA5MS4yLDc3LjYgdiA3LjQgbCAtNS4zLC0yIHYgNy45IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDgxLjggNjMuNiBMIDgxLjggMTI3LjQgTCAxMDguNCAxMzYuNiBMIDEwOC40IDcyLjcgTCA4MS44IDYzLjYgeiBNIDkxLjIgNzcuNiBMIDk2LjkgNzkuNSBMIDk2LjkgODYuNiBDIDk2LjkgODcuMiAxMDEuNSA4OC45IDEwMi4zIDg5LjEgTCAxMDIuMyA5NyBMIDk2LjggOTUuMiBMIDk2LjggMTAyLjYgTCA5MS4xIDEwMC40IEwgOTEuMSA5My4zIEMgOTEuMSA5Mi42IDg2LjggOTEgODUuOSA5MC45IEwgODUuOSA4MyBMIDkxLjIgODUgTCA5MS4yIDc3LjYgeiBNIDEwMi45IDEwOC4xIEMgMTAzLjkgMTA4LjEgMTA1IDEwOS45IDEwNSAxMTEuMiBMIDEwNSAxMTEuNiBDIDEwNSAxMTIuNCAxMDQuNiAxMTMuMiAxMDMuOCAxMTMuMiBDIDEwMi41IDExMy4yIDEwMS41IDExMS42IDEwMS41IDExMC42IEwgMTAxLjUgMTEwLjYgTCAxMDEuNSAxMDkuOCBDIDEwMS41IDEwOC45IDEwMi4xIDEwOC4xIDEwMi45IDEwOC4xIHogXCJ9XSxpW1wiQUMuSUMuT1BFUkFUSU9OL0VNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDczLjcsODkuNyBjIDAuNCw0LjkgMi4zLDExLjMgMy40LDE1LjYgMS40LDUuNyAzLjUsOC43IDYuMSwxMy4xIDIuMiwzLjYgMy40LDkuNiA1LjYsMTMuNCAwLjcsMS4zIDIuOCw1LjMgMy42LDYgMC41LDAuNCA1LjUsNCA1LjYsNCAxLjYsMCA5LjcsLTAuNCAxMC40LC0wLjcgMC4zLC0wLjEgNC4xLC02LjYgNC4xLC03IHYgLTMgaCAtNy44IGMgLTIuNywwIC01LjYsLTEuMyAtOC40LC0xLjMgViAxMTIuNiBjIDAsLTIuNCAxLjMsLTE3LjMgMi4xLC0xOCAwLjgsLTAuNyAxMS40LC04LjIgMTEuOSwtOC4zIGwgLTEsLTguNSBjIC0wLjUsMC4yIC01LjYsMSAtNiwwLjkgLTEsLTAuMiAtNC43LC0xLjQgLTUuNSwtMS44IC0xLjksMS4xIC00LjQsMS44IC02LjUsMi43IC0xLjYsMC43IC0zLjUsMi43IC01LjUsMy43IC0yLjQsMS4yIC0zLjksMS43IC02LjcsMi41IC0xLjYsMC40IC0yLjQsMC40IC0zLjMsMS41IC0wLjcsMC44IC0xLjcsMS44IC0yLjIsMi41IHogbSAyNy44LDM2LjEgYyAwLC04LjEgMiwtMTYuOCAxLjksLTI0LjggMCwtMS4yIDAuMiwtMS45IDAuMiwtMy4yIDAsLTEuNCAwLjQsLTEuNCAxLjIsLTIuMiAxLjIsLTEuMSAyLjQsLTIgMy42LC0zIDIuMSwtMS43IDUsLTQuOCA3LjEsLTYuMSAwLjMsMC4xIDAuMywwLjIgMC45LDAuMiBoIDQuOSBjIDAuMiwwLjggNC45LDYuNCA1LjgsNy40IDIuNiwzLjEgMy44LDMuOSAyLjksOS42IC0wLjUsMy4yIC0wLjcsOC42IC0xLDEyIC0wLjMsNCAtMC45LDguMSAtMC45LDEyLjIgbCAtMjYuNywtMi4yIHogbSAtMS43LDEuMyAyOS44LDIuMiAyLjQsLTMxLjQgLTkuOCwtMTIuNiAtNy4yLC0wLjMgYyAtMC4yLDAgLTYuOSw1LjkgLTcuOCw2LjUgLTEuNCwxLjEgLTIuNSwyLjMgLTMuOSwzLjIgLTEuNywxLjIgLTEuMiwzLjMgLTEuNCw1LjkgLTAuNiw4LjQgLTIuMSwxOC4xIC0yLjEsMjYuNSB6IG0gMTIuOCwtOSAwLjIsMCBjIDIuMywwIDYuNSwyLjggOC4xLDIuOCBoIDMgViAxMTkuNCBIIDEyMS40IGMgLTAuNiwwIC02LjEsLTIuMyAtNy4yLC0yLjcgLTEuNSwtMC42IC02LjYsMC4zIC04LjYsMC4zIHYgMS4zIGwgNy4xLC0wLjMgeiBtIC01LjYsLTcuOSAwLjIsMS41IGMgMy4xLC0wLjcgNS42LC0xLjQgOC43LC0wLjggMS4zLDAuMyAyLjgsMC42IDQuMiwwLjkgMi41LDAuNiAyLjgsMS4yIDMuMywtMSAtMS4zLDAgLTYuOCwtMS4zIC04LjQsLTEuNyAtMi41LC0wLjcgLTUuNSwwLjQgLTguMSwxLjEgeiBtIC0wLjIsLTguMSAwLjUsMS40IDUuNywtMS45IDUsMy43IDgsLTEgLTAuMywtMS43IC03LjMsMSBjIC0wLjgsLTAuNiAtNC43LC0zLjYgLTUuMywtMy42IC0wLjUsMCAtNS42LDEuOSAtNi4yLDIuMiB6IG0gMTAuNywtNy4zIGggMS4xIGMgMS4yLDAgMi41LC0xLjMgMi41LC0yLjUgdiAtMC40IGMgMCwtMS40IC0xLjYsLTIuNSAtMywtMi41IC00LjQsLTAgLTMuNiw1LjUgLTAuNiw1LjUgeiBNIDY3LjksODEuOCBjIDAsMS41IDMuMiw0LjQgNC4yLDUuMSBsIDEuNSwtMS42IC0yLjEsLTQuNyBoIC0yLjIgYyAtMC41LDAgLTEuNSwxLjEgLTEuNSwxLjIgeiBNIDExMC4yLDcwLjUgYyAwLjgsMC40IDIuNCwwLjggMi40LDEuOSAwLDAuOSAtMC41LDEuNCAtMC42LDIuMSBsIC0yLjYsLTAuNCBjIC0xLC0wLjEgLTQuMiwwLjYgLTUuOCwwLjYgdiAxLjEgYyAwLDEuMSA0LDAgNS42LDAgaCAwLjQgYyAxLjcsMCA1LjQsMS4yIDYuMiwxLjkgMC41LDAuNSAxLjQsNS4yIDEuOSw2LjIgMS44LC0wLjkgMS4zLC0wLjUgMC42LC0zLjIgLTAuMywtMC45IC0xLjEsLTMuMSAtMS4xLC00IGwgLTMuOSwtMS42IDEuMiwtMi4zIGMgLTEuMSwtMi4xIC0wLjgsLTMuNiAtNCwtMy42IGwgLTAuMywxLjIgeiBtIC0zNi41LDYuNiBjIDAsMC45IDIsNC42IDIuMiw2IDAuMywwLjEgMS4xLDAuNCAxLjEsMC40IDAuMywwIDIuMSwtMC45IDIuOCwtMS4xIC0wLjcsLTMuMSAtMS43LC02LjYgLTQuMywtNy45IC0wLjIsMC43IC0xLjcsMi4zIC0xLjcsMi41IHogbSA1LjksLTMuNiBjIDEuOSw0LjEgMC40LDMuNyA0LjIsNyBsIDIuNCwtMS4yIHYgLTMuOCBjIDAsLTEuNSAtMS4yLC0zLjYgLTEuMywtNS4zIGwgLTEuOSwtMC4yIGggLTEuNyBsIC0xLjYsMy43IHogbSA3LjYsLTIuOCAyLjUsNSAzLjksLTAuOCBjIDAsLTEgMC42LC0yLjUgMC42LC0zLjQgMCwtMi4yIC0xLjEsLTQuNyAtMS4xLC02LjkgSCA4OC41IGwgLTEuMyw2IHogTSA5Ny44LDYyLjggYyAwLDAuNiAwLjIsNy4yIDAuMyw3LjQgMC4zLDEgMy43LDIuNiA1LjUsMi40IDAuOSwtMC4xIDIuNSwtMC4zIDMuNSwtMC40IDEuOCwtMC4yIDEuMiwtMC42IDEuNSwtMi42IDAuMiwtMS45IDAuNiwtNC45IDEuMSwtNi44IC0wLjQsLTAuOCAtMi40LC00LjcgLTMuMiwtNC43IGggLTUuMSBjIC0wLjcsMCAtMyw0IC0zLjUsNC43IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDExNS42IDg2LjYgQyAxMTMuNSA4OCAxMTAuNiA5MSAxMDguNSA5Mi43IEMgMTA3LjMgOTMuNyAxMDYgOTQuNiAxMDQuOCA5NS43IEMgMTA0IDk2LjQgMTAzLjYgOTYuNSAxMDMuNiA5Ny44IEMgMTAzLjYgOTkuMiAxMDMuNCA5OS45IDEwMy40IDEwMS4xIEMgMTAzLjUgMTA5LjEgMTAxLjUgMTE3LjggMTAxLjUgMTI1LjkgTCAxMjguMiAxMjggQyAxMjguMiAxMjQgMTI4LjggMTE5LjkgMTI5LjEgMTE1LjggQyAxMjkuMyAxMTIuNCAxMjkuNiAxMDcuMSAxMzAuMSAxMDMuOCBDIDEzMSA5OC4xIDEyOS44IDk3LjMgMTI3LjIgOTQuMiBDIDEyNi4zIDkzLjEgMTIxLjYgODcuNiAxMjEuNCA4Ni44IEwgMTE2LjUgODYuOCBDIDExNS45IDg2LjggMTE1LjkgODYuNyAxMTUuNiA4Ni42IHogTSAxMTguMiA4OS4zIEMgMTE5LjUgODkuMyAxMjEuMSA5MC40IDEyMS4xIDkxLjkgTCAxMjEuMSA5Mi4zIEMgMTIxLjEgOTMuNiAxMTkuOCA5NC45IDExOC42IDk0LjkgTCAxMTcuNSA5NC45IEMgMTE0LjUgOTQuOSAxMTMuOCA4OS4zIDExOC4yIDg5LjMgeiBNIDExMy4xIDEwMCBDIDExMy43IDEwMCAxMTcuNiAxMDMuMSAxMTguNCAxMDMuNyBMIDEyNS43IDEwMi42IEwgMTI2IDEwNC4zIEwgMTE4IDEwNS4zIEwgMTEzIDEwMS42IEwgMTA3LjMgMTAzLjYgTCAxMDYuOSAxMDIuMiBDIDEwNy41IDEwMS45IDExMi41IDEwMCAxMTMuMSAxMDAgeiBNIDExMy4yIDEwOSBDIDExMy45IDEwOSAxMTQuNSAxMDkuMSAxMTUuMiAxMDkuMiBDIDExNi43IDEwOS42IDEyMi4yIDExMC45IDEyMy41IDExMC45IEMgMTIzIDExMyAxMjIuNyAxMTIuNCAxMjAuMiAxMTEuOCBDIDExOC44IDExMS41IDExNy4zIDExMS4yIDExNiAxMTAuOSBDIDExMi44IDExMC4zIDExMC40IDExMSAxMDcuMyAxMTEuOCBMIDEwNy4xIDExMC4zIEMgMTA5IDEwOS44IDExMS4yIDEwOS4xIDExMy4yIDEwOSB6IE0gMTEyLjUgMTE2LjUgQyAxMTMuMiAxMTYuNSAxMTMuOCAxMTYuNiAxMTQuMiAxMTYuOCBDIDExNS4yIDExNy4xIDEyMC44IDExOS40IDEyMS40IDExOS40IEwgMTIzLjkgMTE5LjQgTCAxMjMuOSAxMjEgTCAxMjEgMTIxIEMgMTE5LjQgMTIxIDExNS4xIDExOC4yIDExMi45IDExOC4yIEwgMTEyLjYgMTE4LjIgTCAxMDUuNiAxMTguNCBMIDEwNS42IDExNy4xIEMgMTA3LjEgMTE3LjEgMTEwLjQgMTE2LjUgMTEyLjUgMTE2LjUgelwifV0saVtcIkFDLklDLlRSSUFHRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDkxLjYgNjkgQyA4Ny4zIDY5IDgzLjYgNzEuNSA4My42IDc1LjMgTCA4My42IDgzLjMgTCA4MC41IDgzLjMgQyA3NCA4My4zIDczLjYgODguMSA3MS4yIDkxLjUgQyA2OS4zIDk0LjMgNjMgOTQuNCA2MyAxMDAuOSBMIDYzIDEzMSBMIDEzNyAxMzEgTCAxMzcgMTAyLjYgQyAxMzcgOTkuNSAxMzYuMiA5Ny4zIDEzNC43IDk1LjYgQyAxMzMuMiA5NCAxMzAuOCA5My42IDEyOS4xIDkyIEMgMTI2IDg4LjggMTI2LjkgODMuMyAxMTkuMSA4My4zIEwgMTE2LjIgODMuMyBMIDExNi4yIDc1LjUgQyAxMTYuMiA3MS4zIDExMi45IDY5IDEwOC40IDY5IEwgOTEuNiA2OSB6IE0gODkuOSA3NiBMIDExMC4xIDc2IEwgMTEwLjEgODMuMyBMIDg5LjkgODMuMyBMIDg5LjkgNzYgeiBNIDk1LjMgOTAuNCBMIDEwNC40IDkwLjQgTCAxMDQuNCA5OS40IEwgMTEyLjIgOTQuOSBMIDExNi44IDEwMi44IEwgMTA5LjEgMTA3LjMgTCAxMTYuOCAxMTEuOSBMIDExMi4xIDExOS44IEwgMTA0LjQgMTE1LjMgTCAxMDQuNCAxMjQuMSBMIDk1LjMgMTI0LjEgTCA5NS4zIDExNS4zIEwgODcuNiAxMTkuNyBMIDgzIDExMS44IEwgOTAuNyAxMDcuMyBMIDgzIDEwMi44IEwgODcuNiA5NC45IEwgOTUuMyA5OS4zIEwgOTUuMyA5MC40IHogXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTIuMSwxMTkuOCA0LjYsLTcuOSAtNy42LC00LjYgNy43LC00LjUgLTQuNiwtNy45IC03LjcsNC40IC0wLC04LjkgLTkuMSwwIDAsOC45IC03LjcsLTQuNCAtNC41LDcuOSA3LjYsNC41IC03LjYsNC41IDQuNSw3LjkgNy43LC00LjQgMCw4LjggOS4xLDAgMCwtOC44IHpcIn1dLGlbXCJBQy5JQy5FTUVSR0VOQ1kgUFVCTElDIElORk9STUFUSU9OIENFTlRFUlwiXT1baVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0sYShcImlcIildLGlbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA4MCwxMzEuMyB2IC0xIGMgMS4zLDAuMSA1LjcsMS44IDcuNywyLjIgMi44LDAuNiA1LjgsMSA5LjEsMSBoIDYuNSBjIDMuNCwwIDYuMSwtMC40IDguOSwtMSAyLC0wLjQgNi41LC0yLjEgNy43LC0yLjIgdiAxIGMgMCwyLjkgLTEyLjUsNC41IC0xNi42LDQuNSBoIC02LjQgYyAtNC4xLDAgLTE2LjksLTEuNiAtMTYuOSwtNC41IGwgMCwwIHogbSAxNy45LC00My40IDQuNSwwLjEgMTIuNCwwLjQgdiA4LjMgaCA2LjMgdiAxMS45IGggLTYuMyB2IDE3LjQgbCA0LjUsMS4zIGMgLTEuMiwxLjYgLTEyLjIsMy4zIC0xNS44LDMuMyBoIC02LjQgYyAtMy41LDAgLTE1LC0xLjggLTE2LC0zLjIgbCA0LjYsLTEuNiAwLjEsLTE3LjIgaCAtNi4zIFYgOTYuNyBoIDYuMyB2IC04LjMgbCAxMi40LC0wLjQgMCwwIHogbSAyNS43LDUuOSBoIDMgdiA2LjcgaCAzLjIgdiAzLjkgaCAtMy4yIHYgNi43IGggLTMgViA5My44IHogbSAtNTAsMCBoIDIuOSB2IDE3LjIgaCAtMi45IHYgLTYuNyBoIC0zLjUgdiAtMy45IGggMy40IFYgOTMuOCBoIDAuMSB6IG0gMjYuMSwtOC4zIGMgLTUuMiwwIC05LjcsMC4yIC0xNC44LDAuMiAtNC40LDAgLTMuNSwtMi42IC0xLjgsLTIuOCAyLjEsLTAuMyA0LjksLTAuMSA2LjksLTAuNCA1LjMsLTAuOCAyMy42LC0wLjMgMjguMSwwLjggMC4yLDEuOCAwLjQsMS41IC0xLDIuNCBsIC0xNS44LC0wLjIgLTEuNiwwLjEgeiBtIC0xLC0yMS4xIGggMi45IHYgMy44IGggMiB2IDEuOCBjIDMuMiwwLjcgNS4zLDEuMSA3LjQsMy4xIDEuMywxLjMgMy41LDQuMyAzLjcsNi43IGwgLTEwLjQsLTAuMyAtOS45LDAuMSAwLjIsLTAuMSAtOS4xLDAuNSBjIDAuNCwtNC43IDUuMiwtOS43IDEwLjQsLTkuNyBoIDAuOCB2IC0yIGggMiB2IC0zLjggeiBtIC0yLjYsMS4yIGggLTIgdiAyLjIgYyAtNS43LDAuNSAtMTAuNiw2LjYgLTExLjEsMTIuNSAtMi4yLDAuMiAtMi4zLDEuMyAtMy40LDIuMSBsIC0wLjIsMS42IGMgLTAuMywyLjIgMiwzLjkgMy42LDQuMyB2IDUuNSBoIC0zLjYgdiAtMi40IGggLTguMyB2IDYuNyBoIC0zLjIgViAxMDcgaCAzLjIgdiA2LjMgaCA4LjMgdiAtMi40IGggMy42IFYgMTIzLjggYyAtMi4zLDAuNiAtNS41LDIgLTUuNSw0LjkgdiAyIGMgMCw2LjMgMTIuOSw3LjcgMTkuOCw3LjcgaCA1LjkgYyA2LjksMCAxOS40LC0xLjIgMTkuNCwtNy43IHYgLTIgYyAwLC0yLjggLTMsLTQuMyAtNS4zLC00LjkgdiAtMTIuOSBoIDMuNiB2IDIuNCBoIDguMSBWIDEwNyBoIDMuMiB2IC05LjEgaCAtMy4yIHYgLTYuNCBoIC04LjEgdiAyLjQgaCAtMy42IHYgLTUuNSBjIDEuNiwtMC4zIDMuNiwtMS44IDMuNiwtMy44IDAsLTIuMiAtMS42LC0zLjkgLTMuNiwtNCAtMC41LC01LjkgLTUuNywtMTIuMSAtMTEuNCwtMTIuNiB2IC0yLjIgaCAtMiBWIDYxLjYgaCAtNy45IHYgNCB6IG0gMi45LDQ3LjIgYyAtNCwwIC04LjMsLTUgLTguMSwtOS4zIDAuMiwtNC40IDQuMiwtOSA4LjMsLTkgaCAyIGMgNC4yLDAgOC4zLDQuNyA4LjMsOS4xIDAsNC4zIC00LDkuMSAtOC4xLDkuMSBoIC0yLjQgbCAwLDAgeiBtIC0xMC41LC05LjkgdiAxLjggYyAwLDUuMiA1LjQsMTAuOCAxMC41LDEwLjggaCAyLjQgYyA1LjYsMCAxMC44LC01LjggMTAuOCwtMTEuOCAwLC02IC01LjMsLTExLjggLTEwLjksLTExLjggaCAtMi4xIEMgOTMuNyw5MiA4OC40LDk3LjUgODguNCwxMDMgbCAwLDAgeiBtIDkuNSwwLjggYyAwLjMsLTAuNiAwLjgsLTEuOCAxLjQsLTEuOCBoIDEuNCBjIDAuNywwIDEuNCwxLjMgMS40LDIgMCwwLjEgLTAuOSwxLjYgLTEuNCwxLjYgaCAtMS40IGMgLTAuNiwwLjEgLTEuMSwtMS4yIC0xLjQsLTEuOCB6IG0gLTIuOSwwIDIuMiw0LjMgaCA1IGMgMC43LDAgMi40LC0zLjYgMi45LC00LjMgbCAtMi40LC00LjUgaCAtNC45IGMgLTAuOCwwLjEgLTIuNSwzLjcgLTIuOSw0LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTcuOSwxMDMuOCBjIDAuMywtMC42IDAuOCwtMS44IDEuNCwtMS44IGggMS40IGMgMC43LDAgMS40LDEuMyAxLjQsMiAwLDAuMSAtMC45LDEuNiAtMS40LDEuNiBoIC0xLjQgYyAtMC42LDAuMSAtMS4xLC0xLjIgLTEuNCwtMS44IHogbSAxLjIsLTkuMSBjIC00LjEsMCAtOC4xLDQuNiAtOC4zLDkgLTAuMiw0LjMgNC4xLDkuMyA4LjEsOS4zIGwgMi40LDAgYyA0LDAgOC4xLC00LjkgOC4xLC05LjEgMCwtNC40IC00LjEsLTkuMSAtOC4zLC05LjEgbCAtMiwwIHogbSAtMS4yLDQuNyA0LjksMCAyLjQsNC41IGMgLTAuNCwwLjcgLTIuMSw0LjMgLTIuOSw0LjMgbCAtNSwwIC0yLjMsLTQuMyBjIDAuNCwtMC44IDIuMSwtNC40IDIuOSwtNC41IHogTSA5OC43LDY0LjUgaCAyLjkgdiAzLjggaCAyIHYgMS44IGMgMy4yLDAuNyA1LjMsMS4xIDcuNCwzLjEgMS4zLDEuMyAzLjUsNC4zIDMuNyw2LjcgbCAtMTAuNCwtMC4zIC05LjksMC4xIDAuMiwtMC4xIC05LjEsMC41IGMgMC40LC00LjcgNS4yLC05LjcgMTAuNCwtOS43IGggMC44IHYgLTIgaCAyIHYgLTMuOCB6IG0gMSwyMS4xIGMgLTUuMiwwIC05LjcsMC4yIC0xNC44LDAuMiAtNC40LDAgLTMuNSwtMi42IC0xLjgsLTIuOCAyLjEsLTAuMyA0LjksLTAuMSA2LjksLTAuNCA1LjMsLTAuOCAyMy42LC0wLjMgMjguMSwwLjggMC4yLDEuOCAwLjQsMS41IC0xLDIuNCBsIC0xNS44LC0wLjIgLTEuNiwwLjEgeiBtIC0yNi4xLDguMyBoIDIuOSB2IDE3LjIgaCAtMi45IHYgLTYuNyBoIC0zLjUgdiAtMy45IGggMy40IFYgOTMuOCBoIDAuMSB6IG0gNTAsMCBoIDMgdiA2LjcgaCAzLjIgdiAzLjkgaCAtMy4yIHYgNi43IGggLTMgViA5My44IHogbSAtMjUuNywtNS45IC0xMi40LDAuNCAwLDguMyAtNi4zLDAgMCwxMS45IDYuMywwIC0wLjEsMTcuMyAtNC42LDEuNiBjIDEuMSwxLjUgMTIuNSwzLjMgMTYsMy4zIGwgNi40LDAgYyAzLjYsMCAxNC43LC0xLjcgMTUuOCwtMy4zIGwgLTQuNSwtMS4zIDAsLTE3LjQgNi4zLDAgMCwtMTEuOSAtNi4zLDAgMCwtOC4zIC0xMi40LC0wLjQgLTQuNSwtMC4xIHogbSAxLjIsNC4yIDIuMSwwIGMgNS43LDAgMTAuOSw1LjggMTAuOSwxMS44IDAsNS45IC01LjIsMTEuOCAtMTAuOCwxMS44IGwgLTIuNCwwIGMgLTUuMiwwIC0xMC41LC01LjYgLTEwLjUsLTEwLjggbCAwLC0xLjggYyAwLC01LjUgNS4zLC0xMSAxMC43LC0xMC45IHogTSA4MCwxMzEuMyB2IC0xIGMgMS4zLDAuMSA1LjcsMS44IDcuNywyLjIgMi44LDAuNiA1LjgsMSA5LjEsMSBoIDYuNSBjIDMuNCwwIDYuMSwtMC40IDguOSwtMSAyLC0wLjQgNi41LC0yLjEgNy43LC0yLjIgdiAxIGMgMCwyLjkgLTEyLjUsNC41IC0xNi42LDQuNSBoIC02LjQgYyAtNC4xLDAgLTE2LjksLTEuNiAtMTYuOSwtNC41IGwgMCwwIHpcIn1dLGlbXCJBQy5JQy5PVEhFUiBXQVRFUiBTVVBQTFkgTE9DQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTMuMiwxMTYuNSBjIDAsLTIuOSA0LjQsLTkuMyA1LjgsLTExLjggMi44LC01IDMuMSwtNi44IDQuNiwtMTMgMi4xLDEuNCAyLjIsNC4zIDMsNy4xIDAuOCwyLjggMS42LDQuOCAyLjksNyAyLjIsMy44IDYuNyw4IDUsMTQuMSAtMS42LDUuOCAtNS4yLDcuOCAtMTIuMiw3LjUgLTUuOCwtMC4yIC05LjEsLTQuOSAtOS4xLC0xMSB6IG0gLTEuMiwtMC40IHYgMC42IGMgMCw3LjUgNC42LDEyLjIgMTIsMTIuMiA2LjgsMCAxMiwtNC42IDEyLC0xMSB2IC0xLjMgYyAwLC01IC00LjcsLTEwIC02LjYsLTEzLjggLTEuMSwtMi4yIC0xLjYsLTUuNSAtMi4zLC04LjEgLTAuOSwtMy4zIC0yLjQsLTQgLTQuOCwtNS42IDAsMTMuNiAtMTAuMywyMCAtMTAuMywyNi44IHogbSA0LjgsMy42IGMgMCwyLjQgMS44LDQuNCAzLjgsNC40IDAuNywwIDEuNSwtMC42IDEuNywtMS4zIC0xLjYsLTAuNCAtMy4yLC0yLjUgLTMuNCwtNC40IGwgLTIuMSwxLjMgeiBNIDg5LjIsNzMgdiAxNS44IGggLTIuMSB2IC0xNS44IGwgMC42LC0wLjEgMS41LDAuMSB6IG0gLTEwLjQsMi4zIGggNi42IHYgMTEgSCA3OC44IHYgLTExIHogbSAzNy4yLDEuMSBjIDAsLTAuNSAwLjIsLTAuNiAwLjYsLTAuNiBoIDEuNSBjIDAuNSwwIDAuNiwwLjIgMC42LDAuNiB2IDkuMSBoIC0yLjggdiAtOS4xIHogbSAtMjQuOSwtMS4zIDIyLjgsMi40IHYgNi41IGwgLTIyLjgsMS45IHYgLTEwLjcgeiBtIC0yNywxMS44IGggMTIuOSB2IDEgbCA4LjMsMC4xIDEuMiwyLjQgMS42LDAuMyBjIDAuNiwwLjEgMSwtMC4yIDEuOCwtMC4zIGwgMC45LC0wLjYgMC4yLC0yLjQgMjIuOCwtMS42IGMgMS4yLDIuNSA0LjIsMS42IDYuNiwxIDAsLTAuNyAwLjIsLTAuOCAwLjIsLTEuNSB2IC05LjUgYyAwLC0xLjUgLTAuOCwtMi4xIC0yLjMsLTIuMSBoIC0yLjEgYyAtMy44LDAgMC4yLDIuNSAtNSwxLjYgLTIuMSwtMC40IC00LjYsLTAuNCAtNi43LC0wLjcgLTMuMywtMC41IC0xMC40LC0xLjMgLTEzLjUsLTEuMyAtMC4xLC0zLjEgLTUuNiwtMy4zIC01LjcsMC40IGggLTguNCB2IDAuNiBoIC0xMyBsIDAuMSwxMi40IDAsMCB6IG0gMTUuNiwtNC44IDAsMS45IDQuNiwwIDAsLTEuOSB6IG0gMCwtNC4yIDAsMS43IDQuNiwwIDAsLTEuNyB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSA5MSw3NS4xIDIyLjgsMi40IHYgNi41IGwgLTIyLjgsMS45IHYgLTEwLjcgeiBtIDI0LjksMS4zIGMgMCwtMC41IDAuMiwtMC42IDAuNiwtMC42IGggMS41IGMgMC41LDAgMC42LDAuMiAwLjYsMC42IHYgOS4xIGggLTIuOCB2IC05LjEgeiBNIDc4LjgsNzUuMyBsIDAsMTEgNi42LDAgMCwtMTEgLTYuNiwwIHogbSAwLjgsMi42IDQuNywwIDAsMS43IC00LjcsMCAwLC0xLjcgeiBtIDAsNC4yIDQuNywwIDAsMS45IC00LjcsMCAwLC0xLjkgeiBNIDEyMy41LDkxLjggYyAtMS40LDYuMiAtMS44LDggLTQuNiwxMyAtMS4zLDIuNSAtNS44LDguOSAtNS44LDExLjggMCw2LjEgMy4zLDEwLjggOS4xLDExIDcsMC4yIDEwLjUsLTEuNyAxMi4yLC03LjUgMS43LC02LjEgLTIuOCwtMTAuMyAtNSwtMTQuMSAtMS4zLC0yLjIgLTIsLTQuMyAtMi45LC03IC0wLjgsLTIuOCAtMC45LC01LjcgLTMsLTcuMSB6IG0gLTQuNiwyNi43IGMgMC4yLDEuOSAxLjgsNCAzLjQsNC40IC0wLjIsMC42IC0xLDEuMyAtMS43LDEuMyAtMiwwIC0zLjgsLTIuMSAtMy44LC00LjQgbCAyLjEsLTEuMyB6IE0gODkuMiw3MyB2IDE1LjggaCAtMi4xIHYgLTE1LjggbCAwLjYsLTAuMSAxLjUsMC4xIHpcIn1dLGlbXCJBQy5JQy5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSBJTkZSQVNUUlVDVFVSRVwiXT1hKFwi4oKsJMKjXCIpLGlbXCJHUi5JTi5JQy5QVUJMSUMgVkVOVUVTIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODcuOSw4Ny4zIGMgLTMuMiwwIC01LjgsMi42IC01LjgsNS44IDAsMi44IDIuMSw1LjIgNC44LDUuNyBsIDAsMy4zIC0zLjgsMCAwLDIgMy44LDAgMCw5LjQgMiwwIDAsLTkuNCAzLjgsMCAwLC0yIC0zLjgsMCAwLC0zLjMgYyAyLjcsLTAuNSA0LjgsLTIuOCA0LjgsLTUuNyAwLC0zLjIgLTIuNiwtNS44IC01LjgsLTUuOCB6IG0gMjQsMCBjIC0zLjIsMCAtNS44LDIuNiAtNS44LDUuOCAwLDIuOCAyLjEsNS4yIDQuOCw1LjcgbCAwLDMuMyAtMy44LDAgMCwyIDMuOCwwIDAsOS40IDIsMCAwLC05LjQgMy44LDAgMCwtMiAtMy44LDAgMCwtMy4zIGMgMi43LC0wLjUgNC44LC0yLjggNC44LC01LjcgMCwtMy4yIC0yLjYsLTUuOCAtNS44LC01LjggeiBtIC0yNCwyIGMgMi4xLDAgMy44LDEuNyAzLjgsMy44IDAsMi4xIC0xLjcsMy44IC0zLjgsMy44IC0yLjEsMCAtMy44LC0xLjcgLTMuOCwtMy44IDAsLTIuMSAxLjcsLTMuOCAzLjgsLTMuOCB6IG0gMjQsMCBjIDIuMSwwIDMuOCwxLjcgMy44LDMuOCAwLDIuMSAtMS43LDMuOCAtMy44LDMuOCAtMi4xLDAgLTMuOCwtMS43IC0zLjgsLTMuOCAwLC0yLjEgMS43LC0zLjggMy44LC0zLjggeiBtIDI0LjIsMzcuOCAwLC0zIC03Mi4xLDAgMCwzIHogbSAtMywtNi4yIDAsLTIuOCAtNjYuMiwwIDAsMi44IHogTSA2Ni44LDk4LjIgYyAwLDEuMyAtMC43LDIuNiAtMC43LDQuMyAtMCwxLjggLTAuMiwzLjEgLTAuMiw1IHYgMy4yIGwgMC42LDMuNiBoIDIuNyBsIC0wLjgsLTYuNCB2IC0xLjggYyAwLC04LjEgNSwtMTcuOSA5LjMsLTIxLjUgNS42LC00LjYgMTEuNiwtOS4xIDIxLjcsLTkuMSBoIDAuOSBjIDksMCAxNy4xLDQuNCAyMS42LDguOCAzLjIsMy4yIDQuMSw0LjcgNi40LDguNyAxLjQsMi40IDMuMyw4LjQgMy4zLDEyIHYgNC4zIGMgMCwxLjQgLTAuNywzIC0wLjcsNC40IHYgMC41IGggMi43IGwgMC42LC02LjQgdiAtMy44IGMgMCwtMS42IC0xLC01LjIgLTEuNCwtNi42IC0wLjgsLTIuNSAtMS4zLC0zLjYgLTIuMywtNS43IC0xLjgsLTMuOCAtMy44LC02LjQgLTYuNywtOS4zIC00LjYsLTQuNiAtMTMuNiwtOS42IC0yMi42LC05LjYgaCAtMi41IGMgLTcuOCwwIC0xNi42LDQuMSAtMjAuNiw3LjkgLTIuOCwyLjcgLTQuNCw0LjEgLTYuNyw3LjUgLTEuMSwxLjYgLTEuNSwzIC0yLjUsNC42IC0wLjksMS42IC0xLjIsNCAtMiw1LjIgelwifV0saVtcIkdSLklOLklDLlJFQ1JFQVRJT05BTCBBUkVBXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTYuNCw3OC44IDguMSwtMCBjIDAuOSwwIDIuNCw1LjcgMi40LDYuOSBsIDEuNSw0LjMgYyAwLDAuNCAyLDYuNiAyLDcgdiAwLjYgbCAtMTkuNCwtMCA1LjQsLTE4LjggeiBtIC0xOS45LC0wIDExLjEsMCAtMy41LDExLjIgYyAwLDEuNyAtMS45LDUuNyAtMS45LDYuOSB2IDAuNiBoIC0yMC44IHYgNy4yIGwgMTguNSwwIC0xLjIsMyAtMC4xLDAuOCAtMi42LDguMyAtMy42LDExLjUgYyAxLjEsMCA5LjMsMC4xIDkuNywtMC4xIDAuMiwtMC4xIDIsLTYuOCAyLjMsLTcuNyAwLjUsLTEuMiA0LjUsLTE1IDQuNSwtMTUuMiB2IC0wLjYgbCAyMy41LDAgNi43LDIzLjYgOS44LDAgLTEuNCwtNC44IC0wLjcsLTIuNiAtMi40LC03LjggLTAuOSwtMi44IC0xLjcsLTUuNyBoIDE1LjggdiAtNy4yIGggLTE4LjIgbCAtMi45LC04LjkgLTAuMSwtMC44IC0xLC0zIC0xLjcsLTYuMiBoIDEwLjYgdiAtNy4yIGggLTQ3LjkgdiA3LjIgbCAwLDAgMCwwIHogbSA2Mi4xLDE2LjkgMCwtNi4xIC0xNS4yLDAgMCw2LjEgeiBtIC02Mi4zLDAgMCwtNi4xIC0xNC45LDAgMCw2LjEgelwifV0saVtcIkdSLklOLklDLlNQRUNJQUwgTkVFRFMgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3My4xLDExMS4yIGMgMCwtMy44IDEsLTUuOCAyLjMsLTguNCAxLjQsLTIuOCAzLjMsLTMuOCA0LjYsLTUuOCBsIC0xLjEsLTguMiBjIC0yLjYsMC43IC03LjcsNi41IC05LjIsOSAtMi40LDQuMSAtMy44LDcuOSAtMy44LDE0LjIgdiAzLjMgYyAwLDIuMiAyLjIsOC4xIDMuMSw5LjYgMiwzLjIgMyw0LjUgNS41LDcuMSAzLjYsMy42IDEwLjcsNy4xIDE3LjksNy4xIGggMSBjIDQuOSwwIDkuOSwtMS42IDEzLjEsLTMuNiAxLjcsLTEgOC41LC02LjIgOC41LC03LjggMCwtMS4yIC0zLjEsLTYuNiAtMy41LC04LjQgLTEuMiwxLjUgLTEuNiwzIC0zLDQuOCAtMS4yLDEuNSAtMi4zLDIuNyAtMy44LDMuOCAtMi42LDIgLTYuOCw0IC0xMS4zLDQgaCAtMS4yIGMgLTEwLjIsMCAtMTkuMSwtOSAtMTkuMSwtMTkuMyB2IC0xLjQgbCAwLDAgeiBtIDguOSwtMzcuOSBjIDAuNSwwLjQgMC41LDIuOSAwLjUsNCBMIDg1LDEwNi44IGwgMjUuNCwwIDEwLDIzIGMgMS41LC0wLjEgNS41LC0xLjUgNy4xLC0yLjEgMS4yLC0wLjQgNi41LC0xLjQgNi41LC0yLjYgdiAtMC4yIGMgMCwtMC43IC0xLjksLTQuOCAtMiwtNi4zIGwgLTcuNiwyLjYgLTksLTIxLjYgSCA5MS42IGwgLTAuNCwtNiBoIDE3LjMgdiAtNS40IEggOTAuOCBsIC0xLjEsLTEyLjkgYyAyLjYsLTAuMiA1LjIsLTMuOSA1LjIsLTYuNyB2IC0yLjIgaCAtMC41IHYgLTAuOCBjIDAsLTAuOCAtMi4xLC0zLjEgLTIuNywtMy41IC0xLC0wLjcgLTMuMywtMS42IC00LjgsLTEuMyAtMi4yLDAuNCAtMy4yLDAuOCAtNC40LDIgLTAuNywwLjcgLTIuMiwzLjIgLTIuMiw0LjMgdiAxLjIgYyAwLDIuNCAwLjgsMy42IDEuNyw0LjkgbCAwLDAgeiBtIDAuNSw0IGMgMCwtMS4xIDAsLTMuNiAtMC41LC00IDAsMS4xIC0wLDMuNiAwLjUsNCB6XCJ9XSxpW1wiR1IuSU4uSUMuQURVTFQgREFZIENBUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDcsMTE4LjMgdiAtMC4yIGMgMCwtMTUuNSAyMi40LC0xNC43IDIyLjQsLTAuNiB2IDEuMyBjIDAsNS40IC01LjMsMTAuNCAtMTAuOCwxMC40IGggLTAuNiBjIC01LjksMCAtMTEsLTUuMSAtMTEsLTExIHogbSAtMS42LC0yMi4yIGggNC42IHYgMTAgYyAwLDAgLTMuMiwzLjMgLTMuOCw0LjMgLTAuNSwwLjggLTIuMiw0LjcgLTIuMiw1LjggdiAyLjMgYyAwLDYuOCA2LjYsMTMuNyAxMy4zLDEzLjcgaCAxIGMgNS44LDAgMTAuOCwtNSAxMSwtNSBoIDcuMSB2IC0xLjkgaCAtMy4yIGMgMC4yLC0wLjUgMC44LC0xLjMgMC44LC0xLjkgdiAtMTEgYyAwLC0xLjkgLTEsLTMuMyAtMi4xLC00IGggLTMuMyBsIC0wLjgsLTAuNyBjIDEuMSwtMC4zIDIsLTAuOSAyLC0yLjIgdiAtMC40IGMgMCwtMC41IC0xLC0xLjcgLTEuNiwtMS43IGggLTUgdiAtNS40IGMgMCwtMi43IC0xLjUsLTQuMiAtNC4yLC00LjIgaCAtMi4xIGMgLTUuOSwwIC00LjYsNS44IC00LjYsMTEuNiBsIC0wLjYsMC40IFYgOTQuNyBjIC0wLjQsLTAuMiAtMC40LC0wLjQgLTAuOCwtMC40IGggLTUuNCB2IDEuNyB6IG0gLTIyLjYsMSBjIDAsLTIuMiAzLjMsLTQuOCA0LjUsLTYuNiAxLjQsMSAxLjQsMS44IDMuNCwyLjggMS40LDAuNyAyLjYsMS40IDQsMS45IDIuNCwwLjkgMi4yLC0wLjEgNC4zLDEuOSAwLjksMC45IDEuOCwyLjUgMy41LDIuNSAwLjQsMCAwLjgsLTAuOCAwLjgsLTEuMyB2IC0xLjEgYyAwLC0yLjggLTMuMywtMy42IC01LjMsLTQuNSAtMi4zLC0wLjkgLTUuMywtMS42IC02LjEsLTMuOCAtMC44LC0yLjMgLTIuMiwtNC42IC0yLjksLTYuOSAtMC43LC0yLjEgLTEuOSwtNS4xIC00LjYsLTUuMSBoIC0wLjQgYyAtMywwIC03LjQsNy41IC04LjEsMTAuNCAtMC42LDIuMyAtMS42LDQuNyAtMi4xLDcuMiAtMC41LDIuOCAtMC42LDUuMiAtMS4xLDggLTAuMywxLjggMC4xLDIuMyAtMC42LDQgLTAuNCwxLjIgLTAuOCwyLjMgLTEuMiwzLjQgLTAuOSwyLjMgLTEuNyw0LjYgLTIuNSw2LjggLTAuOCwyLjEgLTQuOSwxMS44IC00LjksMTMuNSAwLDIuNiA2LjIsMS4zIDcuNywxLjEgLTAsLTEuOSAtMi4zLC0xLjYgLTMuMSwtMi43IDIuMSwtMy4xIDMuOCwtNi4zIDUuOCwtOS41IDEsLTEuNyA0LjYsLTkuMiA1LjQsLTkuOCAwLjYsMC40IDMsMy4xIDMuOCwzLjkgMS45LDEuOSAyLDEuOCAyLjgsNC44IDEuMSw0LjIgMS45LDcuNyAxLjksMTMuMSBsIDEuNywwLjIgNC4yLC0wIGMgMS4zLDAgMS44LC0wLjIgMi4zLC0xIC0wLjYsLTEgLTMuMSwtMS43IC00LjYsLTIuMSB2IC0xLjEgYyAwLC0wLjQgLTAuMSwtMC40IC0wLjQsLTAuOCB2IC0xMi4xIGMgLTEuNSwtMi4zIC0yLjksLTQuOSAtNC42LC03LjEgLTEuMSwtMS42IC0zLjgsLTUuMiAtMy44LC03LjYgdiAtMi41IGwgMCwwIHogbSAzMC4zLC05LjcgdiAxLjYgYyAwLDEuNSAyLjMsMy45IDQuMiwzLjkgaCAwLjggYyAyLjEsMCA0LjIsLTIuMyA0LjIsLTQuNSBWIDg3LjYgYyAwLC0yLjIgLTIuMiwtNC4yIC00LjUsLTQuMiBoIC0wLjEgYyAtMi4zLC0wIC00LjYsMiAtNC42LDQgeiBtIC0yOC40LC0xNS42IHYgMS43IGMgMCwwLjYgMSwyLjEgMS40LDIuNSAwLjYsMC42IDEuOCwxLjIgMi45LDEuMiBoIDEgYyAyLDAgNC4yLC0yLjIgNC4yLC00IHYgLTEuNCBjIDAsLTEuNiAtMi41LC0zLjkgLTQuNSwtMy45IGggLTAuNyBjIC0xLjgsMCAtNC4yLDIuMiAtNC4yLDMuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuQUdSSUNVTFRVUkUgQU5EIEZPT0QgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3OS41LDEyNy45IGggLTcuOCB2IC0yMS40IGMgMCwtMSA2LjgsLTEzLjMgNy40LC0xMy42IDEsLTAuNiAxMy45LC03LjEgMTQuMSwtNy4xIDAuNSwwIDEzLjIsNi4zIDE0LjQsNyAwLjQsMC4zIDcuNywxMy4xIDcuNywxMy43IHYgMjEuNCBoIC03LjYgViAxMTAuNCBIIDc5LjUgdiAxNy41IHogbSAzNy40LC0zOS40IGggMTUuNCB2IDM5LjggaCAtMTIuMSB2IC0xOC44IGggMi42IGMgLTAuNSwtMC44IC01LjgsLTkuOCAtNS44LC0xMCBWIDg4LjUgeiBtIDAuMiwtMS45IGMgMCwtNC40IDIuOSwtOC4yIDcuMiwtOC4yIGggMC40IGMgNC41LDAgNy42LDMuNyA3LjYsOC4yIGggLTE1LjIgdiAwIHogTSAxMDUuMiw4Mi4xIGggOC45IGMgLTAuMiwxLjYgLTAuOSwyLjUgLTAuOSw1IDAsMiAwLDMuOSAwLDUuOCAtMS40LC0xIC0wLjksLTIuOCAtMy4yLC00IC0xLjIsLTAuNiAtMy44LC0yIC00LjgsLTIuMyB2IC00LjYgeiBtIDAsLTIuOCBjIDAsLTIuOCAzLjgsLTcuNCA2LjksLTcuNCBoIDAuNiBjIDMuMSwwIDUuNSwxLjggNi43LDMuNyAtMC4yLDAuMiAtNC44LDQuMyAtNC44LDQuMyBoIC05LjUgdiAtMC42IHogbSAtMTEuOSwxLjUgYyAtMy4yLDEuNyAtNi42LDMuMiAtOS45LDQuOCAtMS43LDAuOSAtMy4zLDEuNSAtNSwyLjQgLTIuOCwxLjQgLTIuMywwLjcgLTQsMy4xIC0wLjksMS4zIC0xLjgsMy4yIC0yLjcsNC43IC0wLjksMS42IC0xLjksMyAtMi44LDQuNiAtMS42LDIuOSAtMy42LDYuNSAtNS40LDkuMSBoIDIuOCB2IDIyLjUgSCA4NCBWIDExNC43IGggMTkgdiAxNy4zIGggMzMuMyBWIDg3LjUgYyAwLC03LjUgLTQuMiwtMTMgLTExLjcsLTEzIGggLTEuNyBjIC0wLjgsLTIuOSAtNS45LC02LjUgLTEwLC02LjUgaCAtMC40IGMgLTYuNCwwIC0xMSw1LjkgLTExLDEyLjEgdiA0LjYgbCAtOC4yLC0zLjkgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDc5LjUsMTEwLjQgaCAyOC4xIHYgMTcuNSBoIDcuNiB2IC0yMS40IGMgMCwtMC42IC03LjIsLTEzLjQgLTcuNywtMTMuNyAtMS4xLC0wLjggLTEzLjgsLTcuMSAtMTQuNCwtNy4xIC0wLjEsMCAtMTMsNi41IC0xNC4xLDcuMSAtMC42LDAuNCAtNy4zLDEyLjYgLTcuMywxMy42IHYgMjEuNCBoIDcuOCB2IC0xNy41IHogbSAzNy40LC0xMC44IGMgMCwwLjEgNS4zLDkuMiA1LjgsMTAgaCAtMi42IHYgMTguOCBoIDEyLjEgdiAtMzkuOCBoIC0xNS40IHYgMTEgeiBtIDAuMiwtMTMgaCAxNS4xIGMgMCwtNC42IC0zLC04LjIgLTcuNiwtOC4yIGggLTAuNCBjIC00LjIsLTAgLTcuMiwzLjggLTcuMiw4LjIgeiBtIC0xMS45LDAgYyAxLjEsMC4yIDMuNiwxLjcgNC44LDIuMyAyLjIsMS4xIDEuNywzIDMuMiwzLjkgMCwtMiAwLC0zLjkgMCwtNS44IDAsLTIuNSAwLjcsLTMuNCAwLjksLTUgaCAtOC45IHYgNC42IHogbSAwLC03LjQgdiAwLjYgaCA5LjUgYyAwLDAgNC42LC00LjEgNC44LC00LjMgLTEuMiwtMS44IC0zLjYsLTMuNyAtNi43LC0zLjcgaCAtMC42IGMgLTMuMSwwIC02LjksNC42IC02LjksNy40IHpcIn1dLGlbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSQUwgTEFCT1JBVE9SWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjQsNzcuOSAtMC4xLDAuMyAyLjYsMC42IDAsLTAuMyB6IG0gMi4xLDcuMyAwLjQsLTMuMiAtMC4zLC0wLjEgLTAuNCwzLjIgeiBtIC0zLjgsLTE2LjggMC4xLC0wLjIgLTEuNCwtMC4zIDEsLTIuNiAtMC40LC0wLjMgLTEuNyw1LjcgMC4xLDAgMC4zLC0wLjEgMC43LC0yLjQgeiBtIC0xLDUuMyBjIDAuOCwwIDAuNSwtMS43IDAuOCwtMi4zIGwgLTAuNCwtMC4xIC0wLjQsMi40IHogbSAxLjQsLTUuNSAwLjYsLTIuNiAtMC40LC0wLjEgLTAuNiwyLjcgeiBtIDAuMiwtMi43IDAuMSwtMC4zIC0xLC0wLjIgLTAuMSwwLjIgeiBtIDExLjgsNjUuNiAwLDUuNiAzLjMsMCBjIDEuMSwwIDEuOSwtMC4yIDIuNCwtMC43IDAuNSwtMC41IDAuOCwtMS4yIDAuOCwtMi4xIC0xMGUtNiwtMC45IC0wLjMsLTEuNiAtMC44LC0yLjEgLTAuNSwtMC41IC0xLjMsLTAuNyAtMi40LC0wLjcgbCAtMy4zLDAgbSAwLC02LjIgMCw0LjYgMywwIGMgMSwwIDEuNywtMC4yIDIuMiwtMC42IDAuNSwtMC40IDAuNywtMSAwLjcsLTEuNyAtMTBlLTYsLTAuOCAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjYgLTIuMiwtMC42IGwgLTMsMCBtIC0yLjEsLTEuNyA1LjIsMCBjIDEuNiwxZS01IDIuOCwwLjMgMy42LDEgMC44LDAuNyAxLjMsMS42IDEuMywyLjggLTJlLTUsMC45IC0wLjIsMS43IC0wLjcsMi4yIC0wLjQsMC41IC0xLjEsMC45IC0xLjksMSAxLDAuMiAxLjgsMC43IDIuMywxLjQgMC42LDAuNyAwLjgsMS41IDAuOCwyLjYgLTFlLTUsMS40IC0wLjUsMi40IC0xLjQsMy4xIC0wLjksMC43IC0yLjIsMS4xIC0zLjksMS4xIGwgLTUuNCwwIDAsLTE1LjIgbSAtOS4yLDIgLTIuOCw3LjUgNS42LDAgLTIuOCwtNy41IG0gLTEuMiwtMiAyLjMsMCA1LjgsMTUuMiAtMi4xLDAgLTEuNCwtMy45IC02LjgsMCAtMS40LDMuOSAtMi4yLDAgNS44LC0xNS4yIG0gLTE2LDAgMi4xLDAgMCwxMy40IDcuNCwwIDAsMS43IC05LjQsMCAwLC0xNS4yIE0gOTguNiw5Mi41IGMgMC45LC0wLjIgMC44LC0xLjggMS4xLC0yLjYgbCAwLjksMC40IC0xLjQsNC4yIC0wLjYsLTIgeiBtIC0wLjIsLTAuNCAwLjEsMC4yIGMgLTAuNSwtMC4xIC0wLjgsLTEuMyAtMC44LC0xLjkgbCAwLjQsMC42IC0wLjMsLTIuMiAxLjYsMC44IGMgLTAsMC43IC0wLjQsMi4zIC0wLjksMi40IHogbSAtMC45LC0yLjMgLTAuNiwtMS40IGMgMC40LDAuMSAwLjYsMC4zIDAuNiwwLjkgdiAwLjUgeiBtIDIuNiwtNC40IC0wLjYsMy45IC0xLjcsLTAuOCB2IC0zLjQgLTAuMyBsIDIuMywwLjYgeiBtIC0yLjYsLTEuMSAwLjQsMC4xIHYgMC40IGggLTAuNCB2IDMuNSBsIC0wLjgsLTAuNCAwLjEsMC40IGggLTAuMiBjIDAsLTAuOSAtMS4yLC0yLjggLTEuNiwtMy41IDAuMSwtMC4xIDAuMSwtMC4xIDAuMSwtMC40IHYgLTAuNCBsIDIuNCwwLjYgMCwtMC40IHogbSA2LjEsLTEuNyAyLjUsMC42IHYgMC40IGMgMCwwLjIgMCwwLjIgMC4xLDAuMyAtMS4yLDAgLTEuOSwwLjQgLTIuOCwwLjggbCAwLjIsLTIgeiBtIC02LjEsMS43IC0yLjQsLTAuOCAwLjEsLTEuOCB2IC0xIGwgMi40LDAuNSAtMC4yLDMgeiBtIDguNiwtMS42IGMgLTAuMywwIC0yLjMsLTAuNCAtMi40LC0wLjYgMCwwIDAuMiwtMi4zIDAuMiwtMi43IGwgMi4yLDAuNCAwLjEsMS42IC0wLDEuMiB6IG0gLTEyLjcsLTIuNCBjIDAuNCwwIDAuNywwLjIgMS4xLDAuMiAwLjgsMC4yIDAuNCwwLjEgMC40LDAuNyB2IDIuMSBjIC0wLjMsLTAgLTAuNywtMC4yIC0xLC0wLjMgLTAuNywtMC4yIC0wLjUsMC4xIC0wLjUsLTAuNCB2IC0yLjQgeiBtIDEwLjcsLTQuMiAxLjcsMC40IDAuMywzIC0yLjIsLTAuNCAwLjIsLTMgeiBtIC02LjQsNS4yIHYgLTAuNCBsIC0yLjQsLTAuNSAwLjMsLTIuOCAyLjQsMC41IC0wLjIsMi45IGggMC4zIHYgMC40IGggLTAuMyB6IG0gLTQsLTQuMiAxLjYsMC40IC0wLjMsMi45IC0xLjUsLTAuNCAwLjIsLTIuOSB6IG0gNy42LDEuNCAwLjMsLTMuMSAyLjQsMC42IC0wLjMsMyAtMi40LC0wLjUgeiBtIC0wLjQsLTAuMSAwLjQsMC4xIHYgMC40IGMgMC40LDAgMi4zLDAuNCAyLjQsMC42IDAsMC4xIC0wLjIsMi4zIC0wLjIsMi42IC0wLjgsMCAtMS42LC0wLjQgLTIuMywtMC40IC0wLjIsMCAtMC4yLDAuMiAtMC4yLDAuNCBsIDIuNCwwLjUgLTAuMiwyLjIgaCAwLjIgYyAtMC41LDAuNyAtMS4xLDEuNiAtMS40LDIuNCAtMC4zLDAuOCAtMC43LDIuMSAtMS4xLDIuOCBsIC0wLjksLTAuNCAwLjYsLTQgaCAtMC4yIGwgLTAuMiwtMC4xIHYgLTAuNCBsIC0yLjMsLTAuNyAwLjIsLTMgMi41LDAuNSB2IC0wLjMgaCAwLjQgbCAwLjIsLTIuOCBoIC0wLjMgbCAtMC4zLDIuNyAtMi40LC0wLjQgMC4yLC0yLjkgYyAtMC4zLC0wLjEgLTAuMiwwIC0wLjMsLTAuNCBoIDAuMiBsIDAuMiwwLjEgMC40LC0zLjIgMi40LDAuNiAtMC4zLDMuMSB6IG0gMy4yLC01LjQgdiAtMC4zIGwgMC4zLDAuMSB2IDAuMyBjIDEsMC4xIDEuMSwwLjEgMS4yLDEgMCwwLjMgMC4yLDEuOCAwLjMsMS45IGwgLTEuNywtMC4zIHYgMC40IGggLTAuMyB2IC0wLjUgbCAtMi40LC0wLjYgMC4zLC0yLjUgMi4zLDAuNCB6IG0gMC4yLC0wLjIgMC4yLC0yLjkgYyAwLjYsMC4xIDAuNywyLjQgMC44LDMuMSBsIC0xLC0wLjIgeiBtIC01LjEsLTAuOSAyLjQsMC41IC0wLjMsMi42IC0yLjQsLTAuNiAwLjQsLTIuNSB6IG0gNC45LDAuOCBjIC0zLjMsLTAuOCAtMiwwIC0yLC0zLjMgbCAyLjIsMC40IC0wLjIsMi45IHogbSAtNC40LC0zLjggYyAzLjIsMC44IDEuOSwtMC4yIDEuOSwzLjIgbCAtMi4zLC0wLjUgMC40LC0yLjcgeiBtIC0yLjUsLTAuNCAyLjEsMC40IC0wLjQsMi43IC0yLjIsLTAuNCAwLjQsLTIuNiB6IG0gNy4xLDEuMyB2IC0wLjQgbCAtMi4yLC0wLjQgMC4yLC0yLjYgYyAwLjMsMCAwLjcsMC4xIDEuMSwwLjIgMC42LDAuMSAwLjUsMCAwLjcsMC42IDAuMywxIDAuMywwLjkgMC4zLDIuMiBsIDAuMywwLjQgLTAuNCwwLjEgeiBtIC00LjEsLTMuOSAxLjgsMC40IC0wLjIsMi42IC0yLjEsLTAuNCAwLjQsLTIuNiB6IG0gMi4zLC0yLjIgMS40LDIuNiAtMS41LC0wLjIgMC4xLC0yLjQgeiBtIC0xLjYsLTEuNiAwLC0wLjEgMS4yLDEuMiAtMC4xLDAgYyAwLjMsLTAuMSAwLjMsLTAuMSAwLjQsMC4zIGwgLTAuMiwtMC4yIC0wLjIsMi42IC0xLjgsLTAuNCAwLjcsLTMuNSB6IG0gLTIuOSwzIGMgMC41LC0xLjEgMC4zLC0zLjQgMS45LC0zLjQgMC4zLDAgMC4yLDAgMC41LDAuMSBsIC0wLjYsMy43IC0xLjgsLTAuNCB6IG0gLTAuNCwtMC4xIDAuNCwwLjEgdiAwLjMgbCAxLjgsMC40IC0wLjQsMi42IC0yLjEsLTAuNCB2IDAuMiBsIC0wLjEsMC4yIC0wLjIsLTAuMSBoIC0wLjIgbCAtMC41LDIuNiAtMS42LC0wLjMgdiAwLjMgYyAwLjUsMCAxLDAuMyAxLjQsMC4zIDAuMiwwIDAsLTAuMiAwLjUsLTAuMiB2IDAuNCBsIDIuMiwwLjQgLTAuMywyLjQgLTIuNCwtMC42IHYgMC40IGwgMi4zLDAuNiAtMC4zLDMuMSAtMi40LC0wLjYgMC40LC0zLjIgaCAtMC40IGMgLTAsMC44IC0wLjMsMS43IC0wLjMsMi40IC0wLDAuOCAtMCwwLjcgLTAuNywwLjUgLTAuMiwtMCAtMC45LC0wLjEgLTAuOSwtMC4zIC0wLC0wLjMgMC4yLC0yIDAuMywtMi40IDAuMiwtMS4yIDAuNSwtMC40IDEuNywtMC4zIGwgMC4xLC0wLjMgYyAtMC4yLC0wLjEgLTEuNiwtMC4zIC0xLjYsLTAuNSAwLC0wLjggMC40LC0xLjUgMC40LC0yLjMgLTAuNiwwLjEgLTAuNywyLjMgLTAuOCwzIC0wLjEsMC44IC0wLjQsMi42IC0wLjQsMy4zIDAsMC44IC0wLjIsMi40IC0wLjIsMy41IDAsMS4zIC0wLjEsMi40IC0wLjEsMy44IGggMC4zIHYgLTAuOSBsIDEuNSwwLjQgdiAxIGwgLTMuNCwtMC41IGggLTAuMSBjIC01LDAgLTguOCw5LjcgLTguOCwxNS40IDAsMi4zIDAuOCw1LjQgMiw2LjIgMC43LC0xLjQgMS4zLC0zLjEgMiwtNC42IDAuOCwtMS41IDEuNCwtMy4xIDIuMSwtNC42IDAuMywtMC43IDAuNywtMS41IDEsLTIuMiAwLjQsLTAuOCAwLjgsLTEuNSAxLjgsLTEuMiAwLjksMC4zIDEuOSwzLjIgMi4xLDQuNiAwLjUsMy44IDAsOSAwLjYsMTIuNiAwLjcsNCAyLjMsNi40IDUuNCw4IDEsLTAuNCAyLjUsLTAuNiAzLjQsLTEuMiAwLjksLTAuNiAxLjgsLTEuMiAyLjQsLTIuMiAxLjIsLTEuOCAyLC00LjEgMiwtNy4yIGwgMCwtMC42IC0wLjMsLTUuNiB2IC0wLjMgYyAwLC0yLjcgMC41LC04LjMgMi44LC04LjMgaCAwLjEgYyAxLjQsMCAyLDAuNiAyLjYsMS40IDAuNiwwLjggMS4yLDEuNCAxLjgsMi4yIDEuMiwxLjUgMi42LDIuOSAyLjYsNS41IHYgMC42IGwgMC40LDAuMSBjIDAuNCwtMS42IDEuOCwtMi44IDEuOCwtNS4yIHYgLTEuNSBjIDAsLTMuNSAtMS40LC02LjIgLTMsLTguMyAtMC44LC0xLjEgLTEuOCwtMiAtMi44LC0yLjggLTAuNywtMC41IC0yLjcsLTEuOSAtMy44LC0xLjkgbCAtMC44LC0wIC0yLjMsMC40IGMgLTAuMiwtMC44IDAuMSwtMiAtMC4xLC0zLjEgLTAuMSwtMC44IC0wLjIsLTIuNSAtMC4yLC0zLjMgLTAuMiwtMi4xIC0wLjUsLTQuMiAtMC45LC02LjEgLTAuNiwtMy4zIC0yLC04LjIgLTQuNiwtOS40IHYgMC4zIGwgLTAuNCwtMC4xIDAuMSwtMC4zIC0wLjgsLTAuMSBjIC0wLjksLTAuMSAtMS45LDAuOCAtMi4zLDEuMyAtMC4yLDAuMyAtMS43LDIgLTAuOCwyIDAuMiwtMC42IDEuMywtMi4yIDEuOCwtMi40IGwgLTAuOCwyLjcgeiBtIDMsMjAuNCAxLjYsMC41IDAuMiwtMCBjIC0wLjEsLTAuNSAtMS40LC0wLjYgLTEuOCwtMC44IHYgMC40IHogbSAzLjYsLTkuOCAwLjIsLTIuNiAtMC4yLC0wLjEgLTAuMiwyLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTguNiw5Mi41IDAuNiwyIDEuNCwtNC4yIC0wLjksLTAuNCBjIC0wLjMsMC43IC0wLjIsMi4zIC0xLjEsMi42IHogbSAtMC42LC0xLjQgLTAuMywtMC42IGMgMCwwLjYgMC40LDEuOCAwLjgsMS45IGwgLTAuMSwtMC4yIGMgMC42LC0wLjIgMC45LC0xLjggMSwtMi40IGwgLTEuNiwtMC44IDAuMiwyLjIgeiBtIDIuNCwtNS45IGMgMC40LDAuMiAxLjcsMC4zIDEuOCwwLjggbCAtMC4yLDAgLTEuNiwtMC41IC0wLjYsNCAwLjksMC41IGMgMC40LC0wLjcgMC44LC0yIDEuMSwtMi44IDAuNCwtMC44IDEsLTEuNyAxLjQsLTIuNCBoIC0wLjIgbCAwLjIsLTIuMyAtMi40LC0wLjUgLTAuNCwzLjIgeiBtIC0xLDQuMSAwLjYsLTMuOSAtMi4zLC0wLjYgMCwwLjIgMCwzLjQgeiBtIDAuNiwtNC4yIDAuNCwtMy4yIC0yLjUsLTAuNSAtMC4yLDMgeiBtIDAuNywtNi42IDAuMywtMy4xIC0yLjQsLTAuNiAtMC40LDMuMiB6IG0gLTUuMSwtNC44IC0wLjEsMC4zIGMgLTEuMiwtMCAtMS41LC0wLjkgLTEuNywwLjMgLTAuMSwwLjQgLTAuMywyLjEgLTAuMywyLjQgMCwwLjIgMC43LDAuMiAxLDAuMyAwLjcsMC4yIDAuNywwLjIgMC43LC0wLjUgMCwtMC44IDAuMywtMS43IDAuNCwtMi40IGggMC40IGwgLTAuNCwzLjIgMi40LDAuNiAwLjQsLTMuMiAtMi4zLC0wLjUgdiAtMC40IGwgMi4zLDAuNiAwLjMsLTIuNCAtMi4yLC0wLjQgYyAtMC4zLDAuNiAwLDIuMyAtMC44LDIuMyB6IG0gOC4zLC0xIDAuMiwtMi45IC0yLjIsLTAuNCBjIDAsMy40IC0xLjMsMi42IDIsMy4zIHogbSAtNi4yLDExLjcgLTAuNCwtMC4xIHYgMC40IGwgLTIuNCwtMC42IHYgMC40IGMgMCwwLjIgLTAsMC4yIC0wLjEsMC40IDAuNCwwLjcgMS42LDIuNiAxLjYsMy41IGggMC4yIGwgLTAuMSwtMC40IDAuOCwwLjQgdiAtMy41IGggMC40IGwgLTAsLTAuNCAwLDAgeiBtIC0wLjMsNS40IDAsLTAuNiBjIDAsLTAuNSAtMC4yLC0wLjggLTAuNiwtMC45IGwgMC42LDEuNCB6IG0gMi42LC00LjggMCwwLjQgMC4yLDAuMSAwLjIsMCAwLC0wLjMgeiBtIDMuMywtMC40IGMgMC44LC0wLjQgMS41LC0wLjggMi44LC0wLjggLTAuMSwtMC4xIC0wLjEsLTAuMSAtMC4xLC0wLjIgdiAtMC40IGwgLTIuNSwtMC42IC0wLjIsMiB6IG0gLTguMywtMS4xIDIuNCwwLjggMC4yLC0zIC0yLjUsLTAuNSAwLDEgeiBtIC0xLjgsLTAuOCBjIDAsMC41IC0wLjIsMC4yIDAuNSwwLjQgMC4zLDAuMSAwLjYsMC4yIDEsMC4zIHYgLTIuMSBjIDAsLTAuNyAwLjQsLTAuNiAtMC40LC0wLjcgLTAuNCwtMC4xIC0wLjcsLTAuMiAtMS4xLC0wLjIgdiAyLjQgeiBtIDcuNSwtNCBoIDAuMyBsIC0wLjIsMi44IGggLTAuNCB2IDAuNCBsIDAuMywwLjEgYyAwLC0wLjIgMCwtMC40IDAuMiwtMC40IDAuNywwIDEuNiwwLjQgMi4zLDAuNCAwLC0wLjMgMC4zLC0yLjUgMC4yLC0yLjYgLTAsLTAuMiAtMiwtMC42IC0yLjMsLTAuNiB2IC0wLjQgbCAtMC40LC0wLjEgdiAwLjMgeiBtIDMuMywtOC45IDAuNCwtMCAtMC4zLC0wLjQgYyAwLC0xLjMgLTAsLTEuMiAtMC4zLC0yLjIgLTAuMiwtMC42IC0wLC0wLjUgLTAuNywtMC42IC0wLjQsLTAuMSAtMC44LC0wLjIgLTEuMSwtMC4yIGwgLTAuMiwyLjYgMi4yLDAuNCB2IDAuNCB6IG0gLTIuNCwtMC45IDAuMiwtMi42IC0xLjgsLTAuNCAtMC40LDIuNiB6IG0gNC40LDEzLjggMCwtMS4yIC0wLjEsLTEuNiAtMi4yLC0wLjQgYyAwLDAuNCAtMC4yLDIuNyAtMC4yLDIuNyAwLjEsMC4yIDIuMiwwLjYgMi40LDAuNiB6IG0gLTcuOCwtNC42IC0wLjIsMi45IDIuNCwwLjQgMC4zLC0yLjcgeiBtIC0wLjIsMy4yIDAsLTAuNCAtMC4zLDAgMC4yLC0yLjkgLTIuMywtMC41IC0wLjMsMi44IDIuNCwwLjUgMCwwLjQgeiBtIC0zLjEsLTEgMC4zLC0yLjkgLTEuNiwtMC40IC0wLjIsMi45IHogbSAxMS4xLC0wLjggLTAuMywtMyAtMS43LC0wLjQgLTAuMiwzIHogbSAtMiwtNi42IC0yLjMsLTAuNCAtMC4zLDIuNSAyLjQsMC42IHogbSAtMC40LDYgMC4yLC0zIC0yLjQsLTAuNiAtMC4yLDMuMSB6IG0gLTIuNCwtNCAwLjMsLTIuNiAtMi4zLC0wLjUgLTAuMywyLjUgeiBtIC0yLjksMy4yIDAuMSwtMC4zIC0wLjIsLTAuMSBoIC0wLjIgYyAwLDAuNCAtMC4xLDAuMyAwLjIsMC40IHogbSA1LjgsLTIuNCAxLjcsMC4zIGMgLTAuMSwtMC4yIC0wLjIsLTEuNiAtMC4zLC0xLjkgLTAuMSwtMSAtMC4yLC0xIC0xLjIsLTEgbCAtMC4yLDIuNiB6IG0gMCwwLjMgMCwtMC4zIC0wLjMsLTAuMSAwLDAuNCB6IG0gMC4yLC0zIDAsLTAuMyAtMC4yLC0wLjEgMCwwLjMgeiBtIDAsLTAuMyAxLDAuMiBjIC0wLjEsLTAuNiAtMC4yLC0zIC0wLjgsLTMgbCAtMC4yLDIuOSB6IG0gLTUuMSwtMS4xIDIuMywwLjUgYyAwLC0zLjQgMS4zLC0yLjUgLTEuOSwtMy4yIGwgLTAuNCwyLjcgeiBtIC0yLjUsLTAuNiAyLjIsMC40IDAuNCwtMi43IC0yLjEsLTAuNCB6IG0gMS4xLC01LjYgLTAuNiwyLjYgMi4xLDAuNCAwLjQsLTIuNiAtMS44LC0wLjQgMCwtMC4zIC0wLjQsLTAuMSAtMC4xLDAuMyB6IG0gLTAuNiwyLjggMCwtMC4yIC0wLjQsMCAtMC4xLDAuMiAwLjIsMCAwLjIsMC4xIHogbSAwLjIsLTIuOSAtMSwtMC4yIC0xLDIuNiAxLjQsMC4zIHogbSA0LjgsMC43IDEuNSwwLjIgLTEuNCwtMi42IHogbSAtMi4xLC0wLjQgMS44LDAuNCAwLjIsLTIuNiAwLjIsMC4yIGMgLTAsLTAuNCAtMCwtMC4zIC0wLjQsLTAuMyBsIDAuMSwtMC4xIC0xLjIsLTEuMSAtMC4xLDAuMSAtMC43LDMuNSB6IG0gLTIuMiwtMC40IDEuOCwwLjQgMC42LC0zLjcgYyAtMC40LC0wIC0wLjIsLTAuMSAtMC42LC0wLjEgLTEuNiwwIC0xLjQsMi4zIC0xLjksMy40IHpcIn1dLGlbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS42LDEwNy4xIC0wLjQsLTIuMyAtMC4yLC0yIGggMTYuMyBsIC0xLjcsMTMuMiBoIC0xMyB2IC0wLjYgbCAtMSwtOC4yIHogbSAxNi4xLDQuMyAwLjQsLTIuMyAwLjksLTYuMiAtMC4xLC0xLjYgaCAtMTkuNiBsIDEuNCwxMC43IDAuMywwLjYgMC41LDQuMyAtMC4xLDAuNiBoIDE1LjcgdiAtMS42IGwgMC42LC00LjYgeiBNIDEyMyw4Mi42IGMgLTMuMywtMC44IC00LjYsMC40IC02LjgsMS45IGggLTEuNCBjIC0wLjMsMC40IC0wLjYsMS4yIC0xLjIsMS4yIGggLTEgYyAtMi4yLDAgLTMuOSwtMS44IC01LjgsLTEuOCBoIC0wLjYgYyAtMC45LDAgLTIuMSwwLjggLTMuOSwwLjggLTUuMSwwIC0zLjksMC4yIC04LDEuNSAtMiwwLjYgLTYuMiwwLjggLTguOSwwLjggaCAtNS4yIGMgLTIuOCwwIC01LC0wLjYgLTcuMiwtMC42IC0yLjYsMCAtNC43LDAuMiAtNy40LDAuMiAtMC41LDAgLTAuNSwtMC4xIC0wLjgsLTAuMiAtMi40LDEuMiAtMy4xLDQuMiAtMy4xLDcuOCAwLDMuNiAtMC42LDYuMyAtMC42LDEwLjEgdiAwLjIgYyAwLDAuNiAwLjEsMC42IDAuMiwxIGwgMSwtMC4zIDAsLTAuNSBoIDAuNCBsIDAuMiwtMTIuMiBoIDAuMiBjIDAsMiAwLjEsNC41IDAuNiw2IDAuNCwxLjIgMS43LDMuOCAxLjcsNC45IHYgMC4yIGwgLTEuNiwxMy4yIGggMy43IGMgMCwtMS40IC0wLjQsLTEuMSAtMC40LC0yLjEgdiAtMi4xIGMgMCwtMS40IDEsLTQuMiAyLjMsLTQuMyAwLjQsMS41IDMuMywzLjcgMy4zLDYuOCB2IDAuNiBjIDAsMC42IC0wLjEsMC42IC0wLjIsMSAwLjQsLTAuMSAwLjUsLTAuMiAxLC0wLjIgMS4yLDAgMy41LDAuNyAzLjUsLTAuNCAwLC0wLjMgLTEuOSwtMy4yIC0yLjIsLTMuNSAtMC40LC0wLjUgLTEuMywtMy42IC0xLjMsLTQuMyB2IC0wLjIgYyAwLC0wLjIgMS4yLC0yLjMgMS4yLC00LjggNCwyLjIgMy41LDIuNyA5LjksMi43IDIuMiwwIDQuMiwwLjUgNiwwLjQgMSwtMCAzLjMsLTEuNCA0LjMsLTEuOSAwLDEuMiAwLjQsMi40IDAuMiwzLjMgbCAtMS4yLDggYyAxLDAuMyAxLjYsMC42IDIuOCwwLjYgaCAwLjYgLTAuMiBsIDAuNywtMTEuMyBjIDAuNiwwLjQgMi44LDcuMSAyLjYsOC40IGwgLTAuMywyLjMgYyAwLjgsMC40IDEuNSwwLjYgMi42LDAuNiBoIDEgbCAtMS4yLC03LjQgLTAuMSwtMC44IGMgMCwtMC45IDEuNiwtMC43IDIuNSwtMS4yIDAuNiwtMC4zIDEuNCwtMS4yIDEuOCwtMS43IDEuMSwtMS41IDIsLTIuNyAzLC00LjIgMy45LC01LjQgMy41LC0yLjQgMTAuMiwtNCB2IC0wLjYgaCAxLjYgYyAxLDAgMS44LC0wLjggMS44LC0xLjggdiAtMC40IGMgMCwtMi40IC0yLjUsLTIuNSAtMi41LC01LjYgbCAtMy4zLC0zLjQgNS40LC0yLjkgeiBtIDE0LjYsMjguOSBjIDAuNCwtMC40IDAuNCwtMS41IDAuNCwtMi4zIGwgLTAuNCwyLjMgeiBtIC0xNi4xLC00LjMgYyAwLC0wLjggMCwtMS45IC0wLjQsLTIuMyBsIDAuNCwyLjMgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTIxLjIsMTA0LjkgYyAwLjQsMC40IDAuNCwxLjUgMC40LDIuMyBsIDEsOC4yIHYgMC42IGggMTMgbCAxLjcsLTEzLjIgaCAtMTYuMyBsIDAuMiwyLjEgelwifV0saVtcIkdSLkkuRkYuU0FURUxMSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6IU4mJk8sZmlsbDohIU4mJk8sZDpcIm0gMTE1LDcwIDIwLDAgMCw1NSAtMjAsMCB6IG0gLTI1LDUgMjAsMCAwLDQ1IC0yMCwwIHogbSAtMjUsLTUgMjAsMCAwLDU1IC0yMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMTAsMTAwIDUsMCBtIC0zMCwwIDUsMCBtIDEwLDI3IDAsLTcgbSAtMjAsMTUgYyAxMCwtMTAgMzAsLTEwIDQwLDBcIn1dLGlbXCJHUi5JTi5JQy5GQVJNL1JBTkNIXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE5LjksMTE5IHYgLTAuMiBjIDAsLTIgMS41LC0zLjcgMy41LC0zLjcgaCAwLjQgYyAyLjIsMCAzLjcsMS42IDMuNyw0IHYgMC42IGMgMCwxLjIgLTIuMSwyLjggLTMuNywyLjggaCAtMC40IGMgLTEuOSwwIC0zLjUsLTEuNiAtMy41LC0zLjUgeiBtIC01MiwtMTAuNyBjIDEuMywtMiAxLjEsLTIuNyAzLjIsLTQuNCAxLjMsLTEgMy4zLC0xLjkgNS41LC0xLjkgaCAwLjYgYyA0LjcsMCA5LDQuMSA5LDguOCB2IDEuMSBjIDAsNSAtNCw5LjIgLTguOCw5LjIgSCA3Ni45IGMgLTUuNCwwIC05LjQsLTQuMiAtOS40LC05LjYgMCwtMS40IDAuNCwtMS42IDAuNCwtMyBsIDAsMCB6IG0gNy45LC0yMC4yIGMgLTAuOCwwIC0xLjUsLTQuNCAtMS44LC01LjMgLTAuMiwtMSAtMS4zLC00LjYgLTEuMywtNS41IGggMjQuMSBjIDAuNSwwIDEuMywtMC44IDEuMywtMS4zIHYgLTIuMiBjIDAsLTAuNyAtMC44LC0xLjEgLTEuNSwtMS4xIGggLTMxLjggYyAtMC43LDAgLTEuNSwwLjQgLTEuNSwxLjEgdiAyLjIgYyAwLDAuNSAwLjgsMS4zIDEuMywxLjMgaCAzLjUgbCAyLjYsMTYgLTYuOCwyLjUgMi44LDMuNCBjIC0xLDEuMyAtMi4zLDIuMSAtMy42LDQuMiAtMC40LDAuOCAtMS45LDQuNCAtMS45LDUuNSB2IDIuMiBjIDAsNS40IDEuNiw4LjggNC4zLDExLjUgMi4zLDIuMyA2LjUsNC44IDExLDQuOCBoIDAuNCBjIDguOCwwIDE1LjgsLTcuNCAxNS44LC0xNiBoIDEzLjQgYyAwLjYsMCAxLjksMS40IDIuNCwxLjggaCA4LjYgYyAtMS4xLDEuNiAtMi4yLDIuOSAtMi4yLDUuNyAwLDQuNiAzLjksOC42IDguNiw4LjYgNC40LDAgOC44LC0zLjggOC44LC03LjkgdiAtMiBjIDAsLTEuMiAtMS41LC0zLjQgLTIsLTQuNCBoIDcuMiBsIDEsLTQuNiBoIC03LjIgdiAtMC42IGwgMS4yLC04LjEgLTAuMSwtMy4zIGMgMCwtMC42IC0xLjcsLTIuMSAtMi4yLC0yLjQgbCAtMTYsLTAuNSBWIDc4LjIgYyAwLC0wLjUgLTAuNCwtMC45IC0wLjksLTAuOSAtMC41LDAgLTAuOSwwLjQgLTAuOSwwLjkgdiAxNS40IGMgLTIuMiwtMC4yIC02LC0wLjQgLTguMSwtMC40IC0xLjMsMCAtMi45LDAuMSAtNC4yLDAgLTIuMSwtMC4xIC0yLC0xLjMgLTIuOSwtMS4zIGggLTQuNiBsIDIsMTIuMyBIIDkxLjEgViA5OC42IEMgOTEuMSw5Ny44IDg3LjEsOTQuNCA4Ni4xLDk0LjQgSCA3OC43IFYgODkuOCBMIDc3LjUsODguMSA3NS44LDg4IHogTSA4OC4xLDkyIGMgMCwwLjUgMC4xLDAuMiAwLjIsMC45IGggMC42IGMgMC45LDAgOC41LC02LjQgMTAuMSwtNi44IFYgODUuNCBjIDAsLTAuNSAtMC4yLC0wLjYgLTAuNiwtMC42IGggLTAuNCBDIDk3LjUsODQuNyA4OC4xLDkxLjYgODguMSw5MiB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTkuOSwxMTkgYyAwLDEuOSAxLjYsMy41IDMuNSwzLjUgaCAwLjQgYyAxLjYsMCAzLjcsLTEuNiAzLjcsLTIuOCB2IC0wLjcgYyAwLC0yLjMgLTEuNSwtNCAtMy43LC00IGggLTAuNCBjIC0yLDAgLTMuNSwxLjcgLTMuNSwzLjcgdiAwLjIgeiBtIC01MiwtMTAuNyBjIDAsMS40IC0wLjQsMS43IC0wLjQsMy4xIDAsNS40IDQuMSw5LjYgOS40LDkuNiBoIDAuNiBjIDQuOCwwIDguOCwtNC4zIDguOCwtOS4yIHYgLTEuMSBjIDAsLTQuNyAtNC4zLC04LjggLTksLTguOCBoIC0wLjYgYyAtMi4yLDAgLTQuMywwLjkgLTUuNSwxLjkgLTIuMiwxLjcgLTEuOSwyLjQgLTMuMiw0LjQgelwifV0saVtcIkdSLklOLklDLkdSQUlOIFNUT1JBR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuOCw2OS42IGMgMC40LDAuMSAwLjksMC41IDEuMywxIDAuNCwwLjUgMC44LDEuMiAxLjMsMiBsIDIuMSw0LjEgLTIuMiwwIC0xLjksLTMuOSBjIC0wLjUsLTEgLTEsLTEuNyAtMS41LC0yIC0wLjUsLTAuMyAtMS4xLC0wLjUgLTEuOSwtMC41IGwgLTIuMiwwIDAsNi40IC0yLjEsMCAwLC0xNS4yIDQuNiwwIGMgMS43LDEuNWUtNSAzLDAuNCAzLjksMS4xIDAuOSwwLjcgMS4zLDEuOCAxLjMsMy4zIC0xZS01LDEgLTAuMiwxLjcgLTAuNywyLjQgLTAuNCwwLjYgLTEuMSwxLjEgLTEuOSwxLjMgbSAtNS4xLC02LjQgMCw1LjQgMi42LDAgYyAxLDhlLTYgMS43LC0wLjIgMi4yLC0wLjcgMC41LC0wLjUgMC44LC0xLjEgMC44LC0yIC0xZS01LC0wLjkgLTAuMywtMS42IC0wLjgsLTIgLTAuNSwtMC41IC0xLjIsLTAuNyAtMi4yLC0wLjcgbCAtMi42LDAgbSAtMTIuMywtMC4zIGMgLTEuNSwxLjRlLTUgLTIuNywwLjYgLTMuNiwxLjcgLTAuOSwxLjEgLTEuMywyLjYgLTEuMyw0LjUgMCwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxZS02IDIuNywtMC42IDMuNSwtMS43IDAuOSwtMS4xIDEuMywtMi42IDEuMywtNC41IC0yZS01LC0xLjkgLTAuNCwtMy40IC0xLjMsLTQuNSAtMC45LC0xLjEgLTIsLTEuNyAtMy41LC0xLjcgbSAwLC0xLjcgYyAyLjEsMS42ZS01IDMuOCwwLjcgNS4xLDIuMSAxLjMsMS40IDEuOSwzLjMgMS45LDUuNyAtMmUtNSwyLjQgLTAuNiw0LjMgLTEuOSw1LjcgLTEuMywxLjQgLTMsMi4xIC01LjEsMi4xIC0yLjEsMCAtMy44LC0wLjcgLTUuMSwtMi4xIC0xLjMsLTEuNCAtMS45LC0zLjMgLTEuOSwtNS43IC0xMGUtNywtMi40IDAuNiwtNC4zIDEuOSwtNS43IDEuMywtMS40IDMsLTIuMSA1LjEsLTIuMSBtIC0yMSwwLjMgMTIuOCwwIDAsMS43IC01LjQsMCAwLDEzLjQgLTIuMSwwIDAsLTEzLjQgLTUuNCwwIDAsLTEuNyBtIC0yLDAuNSAwLDIgYyAtMC44LC0wLjQgLTEuNSwtMC42IC0yLjIsLTAuOCAtMC43LC0wLjIgLTEuNCwtMC4zIC0yLC0wLjMgLTEuMSwxLjRlLTUgLTIsMC4yIC0yLjYsMC43IC0wLjYsMC40IC0wLjksMSAtMC45LDEuOCAtNGUtNiwwLjcgMC4yLDEuMiAwLjYsMS41IDAuNCwwLjMgMS4yLDAuNiAyLjMsMC44IGwgMS4yLDAuMyBjIDEuNSwwLjMgMi43LDAuOCAzLjQsMS41IDAuNywwLjcgMS4xLDEuNyAxLjEsMi45IC0xLjJlLTUsMS41IC0wLjUsMi42IC0xLjUsMy4zIC0xLDAuOCAtMi40LDEuMSAtNC4zLDEuMSAtMC43LDAgLTEuNSwtMC4xIC0yLjMsLTAuMiAtMC44LC0wLjIgLTEuNiwtMC40IC0yLjUsLTAuNyBsIDAsLTIuMSBjIDAuOCwwLjUgMS42LDAuOCAyLjQsMS4xIDAuOCwwLjIgMS42LDAuNCAyLjQsMC40IDEuMiwxZS02IDIuMSwtMC4yIDIuNywtMC43IDAuNiwtMC41IDEsLTEuMSAxLC0yIC0xMGUtNiwtMC43IC0wLjIsLTEuMyAtMC43LC0xLjcgLTAuNSwtMC40IC0xLjIsLTAuNyAtMi4yLC0wLjkgbCAtMS4yLC0wLjIgYyAtMS41LC0wLjMgLTIuNiwtMC44IC0zLjMsLTEuNCAtMC43LC0wLjYgLTEsLTEuNiAtMSwtMi43IC0xMGUtNywtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjZlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IG0gMjQuNCw0OC4xIC0wLjIsMi40IGggMC40IGwgLTEuNywzIC0xLC0xLjcgLTAuMSwyIDAuNSwwLjYgLTEuMiwzIC0xLjUsLTMgMC40LDMuNiAwLjgsMC4yIC0zLjEsOS43IC0wLjUsLTQuMiAwLjEsLTEuOCBjIDAsLTEuNSAwLjgsLTQuNyAxLC02LjMgMC4zLC0xLjcgMS4zLC00LjUgMS40LC02IDAuNiwwLjEgMC40LDAuMiAwLjgsMC4yIDAuNCwwIDIuMywtMS41IDIuNiwtMS44IGwgLTMsMC42IDAuOCwtMi43IGMgMC42LDAuMSAwLjQsMC4yIDAuOCwwLjIgMC40LDAgMi42LC0xLjcgMi44LC0yIGwgLTMsMC44IDAuNywtMi40IGMgMS4zLDAgMi4xLC0wLjggMi44LC0xLjQgbCAtMi40LDAuNCAwLjgsLTIgYyAxLjEsLTAgMS41LC0wLjkgMS44LC0xLjggbCAtMS4zLDAuNyAyLjMsLTYuMSAtMC44LC0wLjEgLTIuMSw1LjkgLTAuMywwIC0wLjUsLTIuMSAtMC4xLC0wIGMgMCwxLjUgLTAuNCwxLjYgLTAuNCwyLjQgMCwwLjUgMC4yLDAuNSAwLjYsMC42IGwgLTAuOSwyLjEgLTEsLTEuNCBjIC0wLjEsMS42IC0wLjQsMS45IDAuNywyLjQgbCAtMC44LDIuNCAtMS43LC0yLjIgMC40LDIuOCAwLjYsMC41IC0wLjUsMi43IC0xLjUsLTEuOSAwLjIsMi40IDAuOSwwLjUgYyAwLDAuNCAtMSw0LjYgLTEuMiw2IC0wLjQsMi4zIC0wLjksMy41IC0wLjksNi4zIGwgLTEuMiwtMy42IDAuNiwtMC44IC0wLC0yIC0xLjIsMS4yIC0wLjgsLTIuOCAwLjYsLTAuOCAtMCwtMiAtMS4xLDEuMiAtMC43LC0xLjcgYyAxLC0wLjUgMSwtMS42IDEsLTMuMiBsIC0xLjMsMi4xIGMgLTAuNywtMC4yIC0xLjEsLTEuNCAtMS4zLC0yLjMgMC4zLC0wLjQgMC42LC0wLjUgMC42LC0xIHYgLTEuNiBoIC0wLjQgbCAtMC43LDEuOCBjIC0wLjIsLTAuMiAtMC43LC0wLjcgLTAuNywtMS4yIDAsLTAuNCAwLjYsLTAuMyAwLjYsLTEgdiAtMC4yIGMgMCwtMS4xIC0wLjQsLTEuMSAtMC40LC0yLjQgbCAtMC43LDIuMyAtMC4zLDAgLTIuOCwtNS45IC0wLjQsMC4yIDIuNSw1LjcgLTEuMywtMC43IDEsMS45IDEsMCAwLjYsMSAtMi42LC0wLjQgYyAwLjQsMC40IDEuNywxLjQgMi40LDEuNCAwLjEsMCAwLjQsLTAuMSAwLjYsLTAuMiBsIDEsMi4yIC0zLjIsLTAuNiBjIDEuMSwxIDIsMS43IDMuNiwxLjYgbCAxLjEsMi43IC0yLjksLTAuNCBjIDAuNywxIDEuNywxLjMgMywxLjUgMC40LDAuMSAxLjEsMi44IDEuMiwzLjUgbCAtMywtMC42IDIuMiwxLjYgaCAxIGMgMS4yLDIuMyAyLjQsMTEuOSAyLjQsMTUuOCBoIDEuNCBsIC0wLjIsLTIuMiAwLC0xIGMgMCwtNCAyLjksLTkuMyAzLjIsLTEyLjMgMC44LDAuMSAwLjUsMC4yIDEsMC4yIDAuMiwwIDIuOSwtMS4yIDMuMiwtMS40IGwgLTMuNiwwLjMgMS4yLC0zLjEgMC44LDAuNCAzLC0xLjMgLTMuMiwwLjIgMS40LC0yLjggYyAwLjQsMC4xIDAuNCwwLjIgMSwwLjIgMC4zLDAgMi4xLC0xIDIuNCwtMS4yIGwgLTIuOCwwLjIgMS40LC0yIGMgMS41LDAuMSAxLjUsLTAuNCAyLjQsLTEuNiBsIC0xLjQsMC40IGMgMC41LC0xLjEgMS4yLC0yLjIgMS44LC0zLjIgMC40LC0wLjYgMiwtMi43IDAuOCwtMyBsIDAuMiwwLjEgLTMuNCw1LjggLTAuNCwtMi4zIGggLTAuMiBjIDAsMS40IC0wLjYsMS43IC0wLjYsMi4yIDAsMC4zIDAuMywwLjcgMC40LDEgbCAtMS41LDIgLTAuNywtMS45IHogbSAtMjUuNCwxMy41IGMgMCwtMy43IDAuMSwtOS4xIDAuNywtMTIuNCAwLjQsLTIgMC4xLC00IDAuNiwtNiAwLjQsLTEuNyAwLjQsLTQuMiAwLjgsLTUuOCAyLjgsLTEwLjEgMSwtMTEuOCAxNC4zLC0xMS44IGggNC40IGMgMTEuNiwwIDEyLjYsMS4yIDE0LjIsMTEuMyAxLjIsNy42IDIsMTQuNiAyLDIzLjYgdiA4LjMgbCAtMC40LDMuNiBjIC0xLjEsMS42IC0yLjEsMy40IC00LjksMy40IEggODYuNyBjIC01LjQsMCAtNS4zLC02LjQgLTUuMywtMTEuOSB2IC0yLjQgeiBtIC01LjgsLTMyLjUgYyAyLjEsLTAuNiAwLjQsLTEuMyA0LjQsLTEgMi40LDAuMiAzLDAuMyA1LDAuOCAtMC43LDEuMSAtNC42LDMgLTYuNSwzIGggLTAuNCBjIC0wLjksMCAtMi40LC0xLjIgLTIuNCwtMiB2IC0wLjggaCAtMCB6IG0gNDMuMiwtMS41IGMgMi4yLC0wLjIgNC44LDAuOSA0LjgsMy4xIHYgMC42IGMgMCwwLjYgLTAuNiwwLjggLTEuMiwwLjggaCAtMC42IGMgLTEuOCwwIC02LjIsLTIuNyAtNi45LC0zLjkgbCA0LC0wLjYgeiBtIC0zNi42LC02LjcgYyAwLC0xIDEsLTIuMiAxLjgsLTIuMiBoIDAuNiBjIDAuNiwwIDEuNCwxLjYgMS40LDIuMiB2IDQuMiBjIDAsMS4zIC0wLjQsMS41IC0wLjQsMi44IC0xLC0wLjMgLTMuNCwtNC4zIC0zLjQsLTUuNSB2IC0xLjQgaCAtMCB6IG0gMzEuNywyLjggYyAwLC0yLjggLTAsLTUuMiAyLjgsLTUuMiBoIDAuNiBjIDAuNiwwIDEsMC43IDEsMS40IDAsMiAtMyw2LjggLTQuNCw3LjMgdiAtMy42IGggLTAgeiBtIDEuNCwzLjggYyAwLjUsLTEuOCAzLjgsLTUgMy44LC03LjEgdiAtMS40IGMgLTAuNiwtMC4zIC0wLjcsLTEuMiAtMS42LC0xLjIgaCAtMC42IGMgLTIuNiwwIC0zLjgsMiAtMy44LDQuNSB2IDQuMiBjIC0yLC0wLjUgLTIuMywtMSAtNS4yLC0xLjIgLTIsLTAuMiAtMy43LC0wLjQgLTYsLTAuNCBoIC0zLjYgYyAtNC44LDAgLTguOSwwLjMgLTEyLjEsMiAwLjIsLTAuNyAwLjQsLTAuOSAwLjQsLTEuOCB2IC0zLjQgYyAwLC0xLjQgLTEsLTMuOCAtMi4yLC0zLjggaCAtMC44IGMgLTAuOCwwIC0yLjYsMS45IC0yLjYsMyAwLDIgMi4xLDUuNSAzLDYuOCBsIC01LjcsLTAuNSBjIC0xLjIsMCAtMy40LDEuMSAtMy40LDIuMSB2IDAuNiBjIDAsMS4zIDEuNywyLjggMywyLjggaCAwLjIgYyAyLjksMCA0LjUsLTIgNi4zLC0yLjQgLTEuOSwzLjUgLTMuOCwyMiAtMy44LDI4LjEgdiA2IGMgMCw1LjkgMC4zLDEyLjMgNi4xLDEyLjMgaCAyNi4xIGMgNC4xLDAgNi4xLC0zLjggNi4xLC03LjkgdiAtMTAuNSBjIDAsLTIuMyAtMC4yLC01LjUgLTAuNCwtNy43IC0wLjIsLTEuOCAtMC44LC01LjcgLTAuOCwtNy40IDAsLTIuNiAtMC43LC00LjcgLTEsLTcuMSAtMC4yLC0yLjEgLTEuMywtNC4zIC0xLjgsLTYuMiAxLjIsMC42IDQuOSwzIDYuMSwzIGggMS4yIGMgMSwwIDEuOCwtMC44IDEuOCwtMS44IHYgLTAuMiBjIDAsLTIuMiAtMS41LC0zLjggLTMuOCwtMy44IGggLTIuNiBsIC0yLjgsMC40IHogbSAtMjguMSwwLjYgYyAwLjUsMS45IDguOSwzLjIgMTEuOSwzLjIgaCAxIGMgMy4xLDAgMTIuNSwtMS40IDEyLjcsLTMuNiAtNC4xLC0xIC02LjUsLTEuOCAtMTEuOSwtMS44IGggLTEuNCBjIC0yLjQsMCAtNC40LDAuNCAtNi41LDAuNiAtMi45LDAuNCAtMy44LDEuMSAtNS44LDEuNiB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDUuMywxMTAuMSBjIC0wLjMsMC4zIC0yLjIsMS44IC0yLjYsMS44IC0wLjQsMCAtMC4yLC0wLjEgLTAuOCwtMC4yIDAsMS41IC0xLjEsNC4zIC0xLjMsNiAtMC4zLDEuNiAtMSw0LjggLTEsNi4zIGwgLTAuMSwxLjggMC41LDQuMiAzLjEsLTkuNyAtMC44LC0wLjIgLTAuNCwtMy42IDEuNSwzIDEuMiwtMyAtMC41LC0wLjYgMC4xLC0yIDEsMS43IDEuNywtMyBoIC0wLjQgbCAwLjIsLTIuNCAtMC4zLC0xLjIgLTEuMiwxLjIgeiBtIDAsMCAxLjIsLTEuMiAwLjMsMS4yIDAuNywxLjkgMS41LC0yIGMgLTAuMSwtMC4zIC0wLjQsLTAuNyAtMC40LC0xIDAsLTAuNSAwLjYsLTAuOCAwLjYsLTIuMiBoIDAuMiBsIDAuNCwyLjMgMy40LC01LjcgLTAuMiwtMC4xIGMgMS4zLDAuNCAtMC40LDIuNCAtMC44LDMgLTAuNiwxIC0xLjMsMi4xIC0xLjgsMy4yIGwgMS40LC0wLjQgYyAtMC44LDEuMiAtMC45LDEuNyAtMi40LDEuNiBsIC0xLjQsMiAyLjgsLTAuMiBjIC0wLjMsMC4yIC0yLDEuMiAtMi40LDEuMiAtMC41LDAgLTAuNSwtMC4xIC0xLC0wLjIgbCAtMS40LDIuOCAzLjIsLTAuMiAtMywxLjMgLTAuOCwtMC40IC0xLjIsMy4xIDMuNiwtMC40IGMgLTAuMywwLjIgLTIuOSwxLjQgLTMuMiwxLjQgLTAuNSwwIC0wLjIsLTAuMSAtMSwtMC4yIC0wLjMsMi45IC0zLjIsOC4yIC0zLjIsMTIuMyBsIC0wLjEsMSAwLjMsMi4yIGggLTEuNCBjIDAsLTQgLTEuMiwtMTMuNiAtMi40LC0xNS44IGggLTEgbCAtMi4yLC0xLjYgMywwLjYgYyAwLC0wLjcgLTAuOCwtMy40IC0xLjIsLTMuNSAtMS4zLC0wLjIgLTIuMywtMC41IC0zLC0xLjUgbCAyLjksMC40IC0xLjEsLTIuOCBjIC0xLjUsMC4xIC0yLjUsLTAuNiAtMy42LC0xLjYgbCAzLjIsMC42IC0xLjEsLTIuMiBjIC0wLjIsMC4xIC0wLjUsMC4yIC0wLjYsMC4yIC0wLjcsMCAtMiwtMSAtMi40LC0xLjQgbCAyLjYsMC40IC0wLjYsLTEgaCAtMSBsIC0xLC0xLjkgMS4zLDAuNyAtMi41LC01LjcgMC40LC0wLjIgMi44LDUuOSAwLjMsLTAgMC43LC0yLjQgYyAwLDEuMyAwLjQsMS4yIDAuNCwyLjQgdiAwLjIgYyAwLDAuNyAtMC42LDAuNiAtMC42LDEgMCwwLjQgMC41LDEgMC43LDEuMiBsIDAuNywtMS44IGggMC40IHYgMS42IGMgMCwwLjUgLTAuMywwLjYgLTAuNiwxIDAuMiwwLjkgMC41LDIuMSAxLjMsMi4zIGwgMS4zLC0yLjEgYyAwLDEuNSAwLDIuNiAtMSwzLjIgbCAwLjcsMS43IDEuMSwtMS4yIDAsMiAtMC42LDAuOCAwLjgsMi44IDEuMiwtMS4yIDAsMiAtMC42LDAuNyAxLjIsMy42IGMgMCwtMi44IDAuNCwtNCAwLjksLTYuMiAwLjMsLTEuMyAxLjMsLTUuNiAxLjIsLTYgbCAtMC45LC0wLjUgLTAuMiwtMi41IDEuNSwxLjkgMC41LC0yLjcgLTAuNiwtMC41IC0wLjQsLTIuOCAxLjcsMi4yIDAuOCwtMi40IGMgLTEsLTAuNSAtMC44LC0wLjggLTAuNywtMi40IGwgMSwxLjQgMC45LC0yLjEgYyAtMC40LC0wLjEgLTAuNiwtMCAtMC42LC0wLjYgMCwtMC44IDAuNCwtMC45IDAuNCwtMi40IGwgMC4xLDAgMC41LDIuMSAwLjMsLTAgMi4xLC01LjkgMC44LDAuMSAtMi4zLDYuMSAxLjMsLTAuNyBjIC0wLjIsMC45IC0wLjYsMS44IC0xLjgsMS44IGwgLTAuOCwyIDIuNCwtMC40IGMgLTAuNywwLjYgLTEuNSwxLjQgLTIuOCwxLjQgbCAtMC43LDIuNCAzLC0wLjggYyAtMC4yLDAuMyAtMi40LDIgLTIuOCwyIC0wLjQsMCAtMC4yLC0wLjEgLTAuOCwtMC4yIGwgLTAuOCwyLjcgMywtMC41IHogTSA4Ny4xLDkwLjEgYyAyLC0wLjUgMi45LC0xLjIgNS44LC0xLjYgMi4xLC0wLjMgNC4xLC0wLjYgNi41LC0wLjYgaCAxLjQgYyA1LjQsMCA3LjgsMC44IDExLjksMS44IC0wLjIsMi4yIC05LjYsMy42IC0xMi43LDMuNiBoIC0xIGMgLTMsMCAtMTEuNCwtMS4zIC0xMS45LC0zLjIgeiBtIC01LjgsMzMuNSB2IDIuNCBjIDAsNS41IC0wLjEsMTEuOSA1LjMsMTEuOSBoIDI2LjQgYyAyLjgsMCAzLjgsLTEuNyA0LjksLTMuNCBsIDAuNCwtMy42IHYgLTguMyBjIDAsLTkgLTAuOCwtMTUuOSAtMiwtMjMuNiAtMS42LC0xMC4xIC0yLjYsLTExLjMgLTE0LjIsLTExLjMgaCAtNC40IGMgLTEzLjMsMCAtMTEuNiwxLjcgLTE0LjMsMTEuOCAtMC40LDEuNiAtMC40LDQgLTAuOCw1LjggLTAuNSwyIC0wLjIsMy45IC0wLjYsNiAtMC42LDMuMyAtMC43LDguNiAtMC43LDEyLjQgeiBNIDExNC44LDkwLjIgYyAwLjcsMS4yIDUuMiwzLjkgNi45LDMuOSBoIDAuNiBjIDAuNiwwIDEuMiwtMC4yIDEuMiwtMC44IHYgLTAuNiBjIDAsLTIuMiAtMi42LC0zLjMgLTQuOCwtMy4xIGwgLTQsMC42IDAsMCB6IG0gLTM5LjIsMC45IHYgMC44IGMgMCwwLjggMS40LDIgMi40LDIgaCAwLjQgYyAyLDAgNS44LC0xLjkgNi41LC0zIC0yLC0wLjQgLTIuNiwtMC42IC01LC0wLjggLTMuOCwtMC4zIC0yLjEsMC40IC00LjMsMSB6IG0gMzguMywtNS4zIHYgMy42IGMgMS4zLC0wLjUgNC40LC01LjMgNC40LC03LjMgMCwtMC43IC0wLjQsLTEuNCAtMSwtMS40IGggLTAuNiBjIC0yLjgsLTAgLTIuOCwyLjQgLTIuOCw1LjEgeiBtIC0zMS43LC0yLjggdiAxLjQgYyAwLDEuMyAyLjQsNS4zIDMuNCw1LjUgMCwtMS4zIDAuNCwtMS41IDAuNCwtMi44IHYgLTQuMiBjIDAsLTAuNiAtMC44LC0yLjIgLTEuNCwtMi4yIGggLTAuNiBjIC0wLjgsMCAtMS44LDEuMyAtMS44LDIuMiB6XCJ9XSxpW1wiR1IuSU4uSUMuQVRNXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzMuNiwxMTYuMyBjIDUuMSwtMC4xIDE1LjgsLTYuNiAxNywtNi42IDAuNCwwIDcuNCwzLjggOC45LDQuMiAtMC40LDAuNiAtNS4xLDQuNiAtNi4yLDUuNyAtMS4yLDEuMiAtNC43LDUuOCAtNS41LDYuNCAtMS42LC0wLjggLTE0LC04LjkgLTE0LjIsLTkuNiB6IG0gLTE1LjEsLTYuMiAxMS45LC0yLjUgMTEuMSw1LjYgLTkuNiwzIDE2LjIsMTAuNyAtMCwtMC4yIDYuNCwtNy41IDI2LjksMTIuNyAyMC4zLC00Ni44IC01MC4yLC0xNy4yIGMgLTAuNiwyLjIgLTUuMiw5LjEgLTYuNSwxMS44IC0wLjgsMS44IC0yLjMsNC40IC0zLjMsNiAtMS4yLDEuOCAtMi4yLDQuMSAtMy4zLDYgLTEuMiwyIC0yLjEsMy44IC0zLjMsNS44IC0xLjIsMS45IC0yLjEsNC4yIC0zLjMsNiAtMi40LDMuNiAtMC4yLDIuNyAtNS41LDMuNyAtMi42LDAuNSAtNS4yLDEgLTcuNywxLjYgbSA2MiwyMS41IC0yNS4yLC0xMS44IDQuOCwtNCA3LjMsMy41IDEuMiwtMi40IC0yMy45LC0xMS43IHYgMC4yIGwgLTEsMi4yIDYsMi45IC02LjIsMy40IC0xMS44LC01LjggLTAuMiwwIDIwLjcsLTM3IDAuMiwwLjEgNDcuNCwxNi4xIGggMC4yIGwgLTE5LjQsNDQuMiB6IG0gNy44LC0zMS4zIDEuMSwtMiAtNS44LC0yLjMgLTAuOCwyLjMgeiBtIC0yLjcsNS4yIDEuMiwtMS45IC01LjYsLTIuMyAtMC44LDIuMiB6IG0gLTIyLC03LjMgYyAwLjYsMC40IDIuMSwxLjQgMi4xLDIuMSB2IDIuNCBjIDAsMC44IC0xLjcsMS41IC0yLjYsMS41IGggLTAuMiBjIC0wLjgsMCAtMSwtMC4yIC0xLjcsLTAuNCBsIDIuNCwtNS43IHogbSAtMy40LC02LjQgYyAwLC0yLjIgMS4xLC0yLjggMy4yLC0yLjggaCAwLjIgYyAwLjcsMCAxLDAuMiAxLjUsMC40IGwgLTIuMiw1LjEgYyAtMC45LC0wIC0yLjgsLTEuMiAtMi44LC0yLjQgdiAtMC4yIHogbSA1LjYsLTQuMiBjIC0wLjMsLTAuMSAtMS4yLC0wLjUgLTEuNiwtMC41IGggLTEuOSBjIC0wLjcsMCAtMi41LDAuNiAtMi45LDAuOSAtMC4zLDAuMiAtMS40LDIuMSAtMS40LDIuNSB2IDEuNyBjIDAsMi4xIDMuOCw0LjIgMy44LDQuOSAwLDAuNCAtMi4yLDQuNiAtMi40LDUuNyAtMC42LC0wLjMgLTIuNSwtMS44IC0yLjUsLTIuNiB2IC0wLjYgYyAwLC0wLjggMC42LC0xLjQgMC44LC0yLjEgLTAuOSwtMC4yIC0yLC0xLjEgLTIuNCwtMS4yIC0wLjQsLTAuMSAtMSwxLjcgLTEsMi4zIHYgMC40IGMgMCwyLjcgNC4yLDUuNCA0LjIsNS43IDAsMC42IC0wLjQsMS40IC0wLjUsMiBsIDEuNywwLjggMC42LC0xLjcgYyAxLjQsMCAyLDAuOCAzLjYsMC44IGggMC42IGMgMS40LDAgMi42LC0wLjUgMy4yLC0xLjMgMC4zLC0wLjQgMS41LC0yLjQgMS41LC0zIHYgLTAuNCBjIDAsLTIuNiAtMi44LC00LjggLTQuNCwtNS45IGwgMi41LC01LjYgaCAwLjQgYyAwLjQsMS4yIDEuNSwwLjYgMS41LDMuNiBsIDIuOCwxLjIgdiAtMS43IGMgMCwtMiAtMiwtNC4xIC0zLjgsLTQuNiBsIDAuOCwtMi4xIC0yLjEsLTAuNSAtMC44LDEuNSB6IG0gMTMsMTguNCAtMC45LDIgNS40LDIuMiAtMCwtMC4yIDEuMiwtMS44IHogbSAtMjIuNCwtMjUuMiAyNi4xLDkuNSAtMTEsMjQuMSAtMjYuNywtMTIuOCAxMS42LC0yMC44IHogbSAtMTIuNSwyMS4yIDI3LjgsMTMuNCAxMS43LC0yNS43IGMgLTEsLTAuMSAtMTEuOCwtNC4yIC0xMy40LC00LjggLTEuMiwtMC41IC0xMy4zLC01IC0xMy41LC01IC0wLjksMCAtNS40LDkuNSAtNi40LDEwLjggLTAuOCwxLjMgLTUuOSwxMC4zIC02LjEsMTEuMiB6IG0gMzEuNywxMS4yIDUuNCwyLjIgLTAuMSwtMC4yIDEuMywtMS44IGMgLTEuMSwtMC4yIC01LC0yLjIgLTUuNSwtMi4yIC0wLjQsMCAtMS4xLDEuNiAtMS4yLDIuMSB6IG0gLTI1LjgsMC42IDQuMywyLjkgLTYsNS44IC02LC00LjEgNy43LC00LjYgeiBtIC05LjEsNC41IDcuNCw0LjkgNy4xLC02LjYgYyAtMC41LC0wLjQgLTUuMywtMy42IC01LjQsLTMuNiAtMSwwIC03LjYsNC45IC05LjEsNS4zIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDExNS43LDExMS44IGMgMCwtMC41IDAuOCwtMi4xIDEuMiwtMi4xIDAuNSwwIDQuNCwyIDUuNSwyLjMgbCAtMS4zLDEuOCAwLjEsMC4yIC01LjQsLTIuMiB6IG0gMy4yLC03LjEgNS43LDIuMiAtMS4yLDEuOCAwLDAuMiAtNS40LC0yLjIgMC45LC0yIHogbSAyLjQsLTQuOCA1LjYsMi4zIC0xLjIsMS45IC01LjIsLTIgMC44LC0yLjIgeiBtIDIuNSwtNS4zIDUuOCwyLjMgLTEuMSwyIC01LjUsLTIgMC44LC0yLjMgeiBtIC0zOS43LDYgYyAwLjIsLTEgNS4zLC0xMCA2LjEsLTExLjIgMC45LC0xLjQgNS40LC0xMC44IDYuNCwtMTAuOCAwLjIsMCAxMi4zLDQuNSAxMy41LDUgMS43LDAuNyAxMi41LDQuOCAxMy41LDQuOCBsIC0xMS43LDI1LjcgLTI3LjgsLTEzLjQgeiBtIDU1LjksLTE0LjYgaCAtMC4yIGwgLTQ3LjQsLTE2LjEgLTAuMiwtMC4xIC0yMC43LDM3IDAuMiwtMCAxMS44LDUuOCA2LjMsLTMuNCAtNiwtMi45IDEsLTIuMiB2IC0wLjIgbCAyMy45LDExLjcgLTEuMiwyLjQgLTcuMywtMy41IC00LjgsNCAyNS4yLDExLjggMTkuNCwtNDQuMiAwLDAgeiBtIC01OS4xLDMwLjkgYyAxLjUsLTAuNCA4LC01LjMgOS4xLC01LjMgMC4yLDAgNC45LDMuMiA1LjUsMy42IGwgLTcuMiw2LjYgLTcuNCwtNC45IHogbSAtNy4yLC0wLjYgYyAwLjIsMC44IDEyLjYsOC44IDE0LjIsOS42IDAuOCwtMC42IDQuMywtNS4yIDUuNSwtNi40IDEuMSwtMS4xIDUuOCwtNS4xIDYuMiwtNS43IC0xLjYsLTAuMyAtOC41LC00LjEgLTguOSwtNC4xIC0xLjIsMCAtMTEuOSw2LjUgLTE3LDYuNiB6IG0gMjYuNiwtMjUuOSB2IDAuMiBjIDAsMS4yIDEuOCwyLjQgMi43LDIuNCBsIDIuMiwtNSBjIC0wLjQsLTAuMiAtMC44LC0wLjQgLTEuNSwtMC40IGggLTAuMiBjIC0yLjEsMCAtMy4yLDAuNyAtMy4yLDIuOCB6IG0gMC45LDEyLjEgYyAwLjcsMC4yIDAuOSwwLjQgMS43LDAuNCBoIDAuMiBjIDEsMCAyLjYsLTAuNyAyLjYsLTEuNSB2IC0yLjQgYyAwLC0wLjcgLTEuNiwtMS43IC0yLjEsLTIuMSBsIC0yLjQsNS42IHogbSA1LjUsLTE3LjcgMi4xLDAuNSAtMC44LDIuMSBjIDEuOCwwLjQgMy44LDIuNSAzLjgsNC42IHYgMS43IGwgLTIuOCwtMS4xIGMgMCwtMyAtMS4xLC0yLjQgLTEuNSwtMy42IGggLTAuNCBsIC0yLjUsNS42IGMgMS42LDEuMSA0LjQsMy4zIDQuNCw1LjkgdiAwLjQgYyAwLDAuNiAtMS4yLDIuNiAtMS41LDMgLTAuNiwwLjggLTEuOCwxLjMgLTMuMiwxLjMgaCAtMC42IGMgLTEuNiwwIC0yLjIsLTAuNyAtMy42LC0wLjggbCAtMC42LDEuNyAtMS43LC0wLjggYyAwLjEsLTAuNiAwLjUsLTEuNCAwLjUsLTIgMCwtMC4zIC00LjIsLTIuOSAtNC4yLC01LjcgdiAtMC40IGMgMCwtMC42IDAuNiwtMi40IDEsLTIuNCAwLjQsMC4xIDEuNCwxIDIuNCwxLjIgLTAuMiwwLjcgLTAuNywxLjMgLTAuNywyLjEgdiAwLjYgYyAwLDAuOCAxLjgsMi4zIDIuNCwyLjYgMC4yLC0xIDIuNCwtNS4zIDIuNCwtNS43IDAsLTAuNyAtMy44LC0yLjggLTMuOCwtNC45IFYgODkuMSBjIDAsLTAuNCAxLjEsLTIuMyAxLjQsLTIuNSAwLjQsLTAuMyAyLjIsLTAuOSAyLjksLTAuOSBoIDEuOSBjIDAuNCwwIDEuNCwwLjQgMS42LDAuNSBsIDAuOCwtMS40IHogbSAtMjEuOCwxNS40IDI2LjYsMTIuOSAxMSwtMjQuMSAtMjYsLTkuNSAtMTEuNiwyMC44IHogbSA1LDEyLjEgLTcuNyw0LjYgNiw0LjEgNiwtNS44IHpcIn1dLGlbXCJHUi5JTi5JQy5CQU5LXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLjgsMTEwLjYgYyAyLjQsMCA1LjMsMS45IDUuMyw0LjQgdiAwLjcgYyAwLDMuMSAtMi4xLDQuOSAtNS4zLDQuOSB2IC05LjkgeiBtIC02LjYsLTguOCBjIDAsLTIuMyAxLjcsLTQuNCA0LC00LjQgaCAwLjcgdiA5IGMgLTEuOSwtMC40IC00LjYsLTEuNiAtNC42LC0zLjcgdiAtMC45IHogbSA2LjYsLTQuNCBjIDIuMiwwIDQuNiwxLjYgNC42LDMuNSB2IDAuOSBoIDMuNSBjIDAsLTUuMyAtMy43LC02LjcgLTguMSwtNy43IHYgLTIuNCBoIC0yIHYgMi40IGMgLTMuOSwwIC04LjIsMy41IC04LjIsNyB2IDIuNiBjIDAsMS4zIDIsMy42IDMsNC4yIDEsMC42IDMuOCwxLjggNS4xLDEuOSB2IDEwLjYgYyAtMy40LC0wLjEgLTUuMiwtMi42IC01LjIsLTYuMSBoIC0zLjMgbCAwLjIsMy41IGMgMS4xLDEuNyAwLjksMi44IDIuOSw0LjEgMS4zLDAuOCAzLjQsMS42IDUuNSwxLjYgdiA0IGggMiB2IC0zLjkgYyA0LjksMCA5LC0zLjQgOSwtOC4xIHYgLTEuOCBjIDAsLTQuMiAtNS40LC02IC05LC02LjggdiAtOS40IHogbSAtMjUuMywxNS4yIHYgLTIuNCBjIDAsLTIuMiAyLjYsLTcuNCAzLjEsLTkuNCAwLjcsLTIuNyAzLjEsLTUuOSA0LjcsLTggMy41LC00LjYgOC41LC04LjkgMTYuNSwtOC45IGggNC40IGMgMy40LDAgOC44LDQuMyAxMC40LDYuNSAxLjMsMS43IDIuMiwzLjEgMy40LDUgMC41LDAuNyAyLjcsNS4yIDIuNyw1LjkgdiAwLjcgaCAwLjQgdiAwLjcgYyAwLDAuNCAwLjksMS41IDAuOCwzLjEgbCAwLjUsMC43IGMgMCwyIDEuMSw2LjggMS4zLDkgMC40LDMuMiAxLjMsNS42IC0wLjcsOC41IDAsMi40IC01LjIsOC43IC02LjIsOC44IGwgLTkuMiwtMS41IGMgLTEuOCwtMC4zIC02LjgsMiAtOS4yLDIgLTIsMCAtNS42LC0xLjcgLTcuNSwtMS43IC0xLjYsMCAtMy4yLDEuMyAtNS41LDEuMyBoIC0wLjYgYyAtMS45LDAgLTUuOSwtNi4xIC03LC03LjcgLTEuOCwtMi42IC0yLjQsLTggLTIuNCwtMTIuMyB6IG0gMzAuNywtMzEgLTYuMSwtMS4xIGMgLTAuOCwtMC4xIC01LjIsMS4xIC01LjgsMS4zIGwgLTYuMywtMTEuNSAxLjcsMC41IHYgLTIuOSBsIDguOSwzLjQgMC4zLC0zLjUgMy4yLDIuNSA1LjcsLTIuNiB2IDIuNiBsIDcuNSwtMS40IC05LjMsMTMgMCwwIHogbSAxMS44LC0xNC41IC05LjEsMS42IHYgLTIuOCBjIC0wLjksMC41IC01LjcsMi45IC02LjYsMi45IC0wLjEsMCAtMy40LC0yLjYgLTQsLTIuOSBsIC0wLjcsNCAtOC44LC0zLjYgdiAyLjkgbCAtMy4xLC0xIDguMSwxNS4xIC0wLjIsMC4xIGMgLTQuNiwxLjEgLTEwLjMsNi44IC0xMi43LDEwLjQgLTAuOCwxLjEgLTEuMywyLjYgLTIsMy43IC0xLjQsMS44IC0wLjksMi41IC0xLjcsNCAtMC42LDEuMSAtMi45LDcuMiAtMi45LDguNiB2IDMuNyBjIDAsMSAwLjcsNS44IDEsNi43IDAuNCwxLjQgMC40LDIgMC44LDMuMiAwLjMsMC45IDAuOSwxLjYgMS40LDIuMyAxLjMsMiA0LjgsNy41IDcuNiw3LjUgMi41LDAgNC4zLC0xLjMgNS43LC0xLjMgMi4zLDAgNS4yLDEuNyA3LjMsMS43IGggMC43IGMgMiwwIDUuNywtMS40IDgsLTEuOSAxLjgsLTAuMyA1LjksMSA4LjUsMSBoIDEuNyBjIDEuNywwIDQuOCwtNC4yIDUuOCwtNS41IDEuMSwtMS40IDEuMywtMi4yIDEuNywtNCAwLjEsLTAuNCAxLjEsLTQuMyAxLjEsLTQuNCAwLC0zIC0wLjksLTQuMSAtMS4xLC01LjkgLTAuMiwtMi40IC0wLjQsLTQgLTAuNywtNi4xIC0wLjIsLTEuNyAtMi44LC04LjYgLTMuNiwtMTAuMyAtMi40LC00LjkgLTcuNywtMTMuMiAtMTQsLTEzLjcgbCAxMS43LC0xNi4yIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwMC44LDEyMC40IGMgMy4yLDAgNS4zLC0xLjcgNS4zLC00LjkgdiAtMC42IGMgMCwtMi41IC0yLjksLTQuMyAtNS4zLC00LjQgdiA5LjggeiBtIC02LjYsLTE4LjcgdiAwLjkgYyAwLDIuMiAyLjgsMy4zIDQuNiwzLjcgdiAtOSBoIC0wLjcgYyAtMi4zLDAgLTQsMiAtNCw0LjQgeiBtIDYuNiw1IGMgMy42LDAuOCA5LDIuNiA5LDYuOCB2IDEuNyBjIDAsNC43IC00LjEsOC4xIC05LDguMSB2IDQgaCAtMiB2IC0zLjkgYyAtMiwwIC00LjIsLTAuNyAtNS41LC0xLjYgLTIsLTEuMyAtMS43LC0yLjUgLTIuOSwtNC4yIGwgLTAuMiwtMy41IGggMy4zIGMgMCwzLjUgMS44LDYuMSA1LjMsNi4yIHYgLTEwLjYgYyAtMS4zLC0wLjEgLTQuMSwtMS4zIC01LjEsLTIgLTEsLTAuNiAtMywtMyAtMywtNC4yIHYgLTIuNiBjIDAsLTMuNSA0LjIsLTcgOC4xLC03IHYgLTIuNCBoIDIgdiAyLjQgYyA0LjQsMSA4LjEsMi4zIDguMSw3LjcgaCAtMy41IHYgLTAuOSBjIDAsLTEuOSAtMi41LC0zLjUgLTQuNiwtMy41IHYgOS41IGwgMCwwIHogbSAtMjUuMyw1LjggYyAwLDQuMyAwLjYsOS44IDIuNCwxMi4zIDEuMSwxLjYgNS4xLDcuNyA3LDcuNyBoIDAuNyBjIDIuMywwIDMuOSwtMS4zIDUuNSwtMS4zIDEuOSwwIDUuNSwxLjcgNy41LDEuNyAyLjUsMCA3LjQsLTIuMyA5LjIsLTIgbCA5LjEsMS41IGMgMSwwIDYuMiwtNi40IDYuMiwtOC44IDIsLTIuOSAxLC01LjMgMC43LC04LjYgLTAuMiwtMi4yIC0xLjMsLTYuOSAtMS4zLC05IGwgLTAuNSwtMC42IGMgMC4xLC0xLjYgLTAuOCwtMi43IC0wLjgsLTMuMSB2IC0wLjcgaCAtMC40IHYgLTAuNyBjIDAsLTAuNyAtMi4yLC01LjIgLTIuNywtNS45IC0xLjEsLTEuOSAtMi4xLC0zLjIgLTMuNCwtNSAtMS42LC0yLjIgLTcsLTYuNSAtMTAuNCwtNi41IGggLTQuNCBjIC04LDAgLTEzLDQuNCAtMTYuNSw4LjkgLTEuNiwyLjEgLTQsNS4zIC00LjcsOCAtMC41LDIgLTMuMSw3LjIgLTMuMSw5LjQgdiAyLjQgeiBtIDQwLC00NCAtNy40LDEuNSB2IC0yLjYgbCAtNS44LDIuNiAtMy4yLC0yLjQgLTAuMywzLjUgLTguOSwtMy40IHYgMi45IGwgLTEuNywtMC41IDYuMywxMS41IGMgMC41LC0wLjIgNSwtMS40IDUuOCwtMS4zIGwgNi4xLDEuMSA5LjMsLTEzIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuQlVMTElPTiBTVE9SQUdFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTIzLjEsNzcuOSBjIDAuNCwwLjEgMC45LDAuNSAxLjMsMSAwLjQsMC41IDAuOCwxLjIgMS4zLDIgbCAyLjEsNC4xIC0yLjIsMCAtMS45LC0zLjkgYyAtMC41LC0xIC0xLC0xLjcgLTEuNSwtMiAtMC41LC0wLjMgLTEuMSwtMC41IC0xLjksLTAuNSBsIC0yLjIsMCAwLDYuNCAtMi4xLDAgMCwtMTUuMiA0LjYsMCBjIDEuNywxLjVlLTUgMywwLjQgMy45LDEuMSAwLjksMC43IDEuMywxLjggMS4zLDMuMyAtMWUtNSwxIC0wLjIsMS43IC0wLjcsMi40IC0wLjQsMC42IC0xLjEsMS4xIC0xLjksMS4zIG0gLTUuMSwtNi40IDAsNS40IDIuNiwwIGMgMSw4ZS02IDEuNywtMC4yIDIuMiwtMC43IDAuNSwtMC41IDAuOCwtMS4xIDAuOCwtMiAtMWUtNSwtMC45IC0wLjMsLTEuNiAtMC44LC0yIC0wLjUsLTAuNSAtMS4yLC0wLjcgLTIuMiwtMC43IGwgLTIuNiwwIG0gLTEyLjMsLTAuMyBjIC0xLjUsMS40ZS01IC0yLjcsMC42IC0zLjYsMS43IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0xMGUtNiwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxMGUtNyAyLjcsLTAuNiAzLjUsLTEuNyAwLjksLTEuMSAxLjMsLTIuNiAxLjMsLTQuNSAtMWUtNSwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTFlLTUsMi40IC0wLjYsNC4zIC0xLjksNS43IC0xLjMsMS40IC0zLDIuMSAtNS4xLDIuMSAtMi4xLDAgLTMuOCwtMC43IC01LjEsLTIuMSAtMS4zLC0xLjQgLTEuOSwtMy4zIC0xLjksLTUuNyAtMTBlLTcsLTIuNCAwLjYsLTQuMyAxLjksLTUuNyAxLjMsLTEuNCAzLC0yLjEgNS4xLC0yLjEgbSAtMjEsMC4zIDEyLjgsMCAwLDEuNyAtNS40LDAgMCwxMy40IC0yLjEsMCAwLC0xMy40IC01LjQsMCAwLC0xLjcgbSAtMiwwLjUgMCwyIGMgLTAuOCwtMC40IC0xLjUsLTAuNiAtMi4yLC0wLjggLTAuNywtMC4yIC0xLjQsLTAuMyAtMiwtMC4zIC0xLjEsMS40ZS01IC0yLDAuMiAtMi42LDAuNyAtMC42LDAuNCAtMC45LDEgLTAuOSwxLjggLTNlLTYsMC43IDAuMiwxLjIgMC42LDEuNSAwLjQsMC4zIDEuMiwwLjYgMi4zLDAuOCBsIDEuMiwwLjMgYyAxLjUsMC4zIDIuNywwLjggMy40LDEuNSAwLjcsMC43IDEuMSwxLjcgMS4xLDIuOSAtMS4yZS01LDEuNSAtMC41LDIuNiAtMS41LDMuMyAtMSwwLjggLTIuNCwxLjEgLTQuMywxLjEgLTAuNywwIC0xLjUsLTAuMSAtMi4zLC0wLjIgLTAuOCwtMC4yIC0xLjYsLTAuNCAtMi41LC0wLjcgbCAwLC0yLjEgYyAwLjgsMC41IDEuNiwwLjggMi40LDEuMSAwLjgsMC4yIDEuNiwwLjQgMi40LDAuNCAxLjIsMTBlLTcgMi4xLC0wLjIgMi43LC0wLjcgMC42LC0wLjUgMSwtMS4xIDEsLTIgLTFlLTUsLTAuNyAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMiwtMC45IGwgLTEuMiwtMC4yIGMgLTEuNSwtMC4zIC0yLjYsLTAuOCAtMy4zLC0xLjQgLTAuNywtMC42IC0xLC0xLjYgLTEsLTIuNyAtMmUtNiwtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjVlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IE0gMTAzLjYsMTE5LjMgaCA5LjYgYyAwLjQsMCA5LDkuMiA5LjYsMTAuMSBIIDk1LjYgYyAwLjIsLTEgNy40LC0xMC4xIDgsLTEwLjEgeiBtIC0yOS4yLDAgaCA5LjkgYyAwLjYsMCA4LjIsOSA4LjksMTAuMSBIIDY1LjkgYyAwLjMsLTEgNy44LC0xMC4xIDguNCwtMTAuMSBsIDAsMCB6IG0gMTEuNSwwIGggMTUuNCBsIC02LjksOS45IC04LjUsLTkuOSB6IG0gLTUuNSwtMSBjIDAuNywtMS4xIDcuNiwtOS40IDguNCwtOS40IGggOS4yIGMgMC43LDAgOC45LDguNSA5LjIsOS40IEggODAuNCB6IG0gNDMuNywxMC44IC05LjUsLTEwLjQgMTAuNCwtMTQuMyA5LjcsOC41IC0xMC43LDE2LjEgMCwwIHogbSAtNC44LC0yNC44IDQuOCwtMCAtMTAuNSwxNC4xIC00LjEsLTAuMSA5LjgsLTEzLjkgeiBtIC0zMS4xLC0wLjIgMi44LDAuMSBjIC0xLjEsMS42IC00LjYsNC45IC02LjIsNi44IC0xLjcsMi4xIC00LjIsNS4xIC01LjYsNy4yIGwgLTQuMiwtMC4xIDEzLjIsLTE0LjEgeiBtIDIxLjEsLTguNiBjIDAuOSwwLjYgOSw4LjIgOSw4LjUgMCwwLjEgLTkuMywxMy42IC05LjksMTQgbCAtOC45LC05LjkgOS44LC0xMi42IHogTSA4OS4xLDEwOCBjIDAuOSwtMS4zIDExLjQsLTEyLjYgMTIuMSwtMTIuNiBoIDYuOCBsIC05LjUsMTIuNSAtOS40LDAgeiBtIDIuOSwtNC42IGggLTQuNiBjIC0xLjIsMS44IC00LjMsNC45IC02LDYuNiAtMi4xLDIuMSAtMy45LDQuNCAtNiw2LjUgLTEuMywxLjMgLTExLjIsMTIuOCAtMTEuNCwxMy43IDAuNSwwLjEgMC41LDAuMiAxLjIsMC4yIGwgNTkuMywtMCAxMS42LC0xNy41IC0wLjMsMC4xIC0xMC41LC05LjYgaCAtNS44IGMgLTEuNSwtMSAtOS42LC04LjkgLTEwLjQsLTguOSBoIC04LjIgYyAtMC45LDAgLTcuNiw4IC05LDguOSBsIDAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMDMuNiwxMTkuMyBjIC0wLjUsMCAtNy43LDkuMiAtOCwxMC4xIGggMjcuMyBjIC0wLjYsLTEgLTkuMiwtMTAuMSAtOS42LC0xMC4xIGggLTkuNiB6IG0gLTI5LjIsMCBjIC0wLjYsMCAtOC4yLDkuMSAtOC40LDEwLjEgaCAyNy4zIGMgLTAuNywtMS4xIC04LjMsLTEwLjEgLTguOSwtMTAuMSBIIDc0LjMgbCAwLDAgeiBtIDUwLjcsLTE0LjcgLTEwLjQsMTQuMyA5LjUsMTAuNCAxMC43LC0xNi4xIHogbSAtMzAuNywyNC43IDYuOSwtOS45IC0xNS40LDAgeiBtIDUuMSwtMjEuMSA4LjksOS45IGMgMC42LC0wLjQgOS45LC0xMy45IDkuOSwtMTQgMCwtMC4zIC04LjEsLTcuOSAtOSwtOC41IGwgLTkuOSwxMi42IHogbSAtMTkuMSwxMC4yIGggMjYuOCBjIC0wLjIsLTAuOSAtOC41LC05LjQgLTkuMiwtOS40IGggLTkuMiBjIC0wLjksMCAtNy43LDguMyAtOC40LDkuNCB6IG0gMzMuMiwwLjEgMTAuNSwtMTQuMSAtNC44LDAgLTkuOCwxMy45IHogbSAtMzguNiwtMC4yIDQuMiwwLjEgYyAxLjQsLTIuMSAzLjksLTUuMSA1LjYsLTcuMiAxLjYsLTEuOSA1LjEsLTUuMiA2LjIsLTYuOCBsIC0yLjgsLTAuMSAtMTMuMiwxNC4xIHogbSAxNC4xLC0xMC4zIDkuNCwtMCA5LjUsLTEyLjUgaCAtNi43IGMgLTAuNywwIC0xMS4yLDExLjIgLTEyLjEsMTIuNiB6XCJ9XSxpW1wiR1IuSU4uSUMuRkVERVJBTCBSRVNFUlZFIEJBTktcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2NS42LDEyNS40IGggNjguOCB2IDQuNCBIIDY1LjYgdiAtNC40IHogbSA1OC4xLC0zMS4zIGggNS4zIHYgMjkuOSBoIC01LjMgdiAtMjkuOSB6IG0gLTEwLjYsMCBoIDUuMSB2IDI5LjkgaCAtNS4xIHYgLTI5LjkgeiBtIC0zMS4zLDAgaCA1LjMgdiAyOS45IEggODEuOCB2IC0yOS45IHogbSAtMTAuNiwwIGggNS4xIHYgMjkuOSBoIC01LjEgdiAtMjkuOSB6IG0gMjcuNywxLjUgaCAyIHYgMS40IGggMC41IGMgMi45LDAgNiwyLjMgNiw1LjMgbCAtMi45LDAuNCBjIC0wLjIsLTAgLTEsLTEuOSAtMS40LC0yLjQgLTAuNCwtMC41IC0xLjUsLTEuMSAtMi4zLC0xLjIgdiA3LjggYyAzLDAuMyA3LjMsMi4zIDcuMyw1LjMgdiAxLjEgYyAwLDQgLTMuNCw2LjcgLTcuMyw2LjcgdiAyLjUgaCAtMiB2IC0yLjUgYyAtMS43LC0wIC00LjEsLTAuOCAtNS4xLC0xLjcgLTAuOCwtMC43IC0yLjQsLTIuOCAtMi40LC00LjEgdiAtMC45IGwgMy4xLC0wLjUgYyAwLDIuMyAyLDQuOSA0LjQsNC45IHYgLTguNiBjIC0yLjMsLTAgLTYuOSwtMi41IC02LjksLTUuMSB2IC0xLjggYyAwLC0zIDMuMiwtNS4zIDYuMiwtNS4zIGggMC43IHYgLTEuNCB6IG0gLTMzLjMsLTcuNSBoIDY4LjggdiA0LjYgSCA2NS42IHYgLTQuNiB6IE0gMTAwLDcwLjMgYyAwLjcsMC42IDYuNSwzLjQgNy45LDQuMSAyLjcsMS40IDUuMiwyLjcgNy45LDQuMSAyLjcsMS4zIDUuMywyLjcgNy45LDQuMSAxLjEsMC42IDcuNywzLjYgOC4xLDQgSCA2OC41IGwgMzEuNSwtMTYuMSAwLDAgeiBtIC0zNS45LDE3LjEgdiA2IGMgMCwwLjQgMC4zLDAuNyAwLjcsMC43IGggNC45IHYgMjkuOSBoIC01LjYgdiA3LjQgaCA3MS43IHYgLTcuNCBoIC01LjUgdiAtMjkuOSBoIDQuOSBjIDAuNCwwIDAuNSwtMC4xIDAuNSwtMC41IHYgLTYuNyBjIC0yLC0wLjcgLTYuNywtMy40IC04LjksLTQuNiAtMywtMS41IC01LjksLTMgLTguOSwtNC42IC0xLjcsLTAuOCAtMTcuOCwtOS4xIC0xNy45LC05LjEgLTAuNCwwIC0xNi4zLDguMiAtMTguMSw5LjIgLTEuOSwxIC0xNy44LDguNyAtMTcuOCw5LjYgbCAwLDAgMCwwIHogbSAzNi43LDMwLjQgYyAxLjcsMCA0LC0yIDQsLTMuNSB2IC0xLjQgYyAwLC0yLjEgLTIuMywtMi43IC00LC0zLjEgdiA4IHogbSAtNS42LC0xNCBjIDAsMS42IDIuMiwyLjYgMy42LDIuNyB2IC03LjQgYyAtMS4zLDAuMyAtMy42LDEuNCAtMy42LDIuNyB2IDIgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTM0LjQsMTI5LjggMCwtNC40IC02OC44LDAgMCw0LjQgeiBtIC01LjUsLTUuOCAwLC0yOS45IC01LjMsMCAwLDI5LjkgeiBtIC0xMC44LDAgMCwtMjkuOSAtNS4xLDAgMCwyOS45IHogbSAtMzEuMSwwIDAsLTI5LjkgLTUuMywwIDAsMjkuOSB6IG0gLTEwLjcsMCAwLC0yOS45IC01LjEsMCAwLDI5LjkgeiBtIC03LjksLTM3LjUgNjMuMywwIGMgLTAuNCwtMC4zIC02LjksLTMuNCAtOC4xLC00IC0yLjcsLTEuMyAtNS4yLC0yLjcgLTcuOSwtNC4xIC0yLjcsLTEuMyAtNS4yLC0yLjcgLTcuOSwtNC4xIC0xLjQsLTAuNyAtNy4yLC0zLjUgLTcuOSwtNC4xIGwgLTMxLjUsMTYuMSAwLDAgeiBtIDY1LjksNi4yIDAsLTQuNiAtNjguOCwwIDAsNC42IHogbSAtMzMuNSwyNS4xIHYgLTggYyAxLjcsMC40IDQsMSA0LDMuMSB2IDEuNSBjIDAsMS40IC0yLjIsMy41IC00LDMuNSB6IG0gLTUuNiwtMTQgdiAtMiBjIDAsLTEuMyAyLjQsLTIuNCAzLjYsLTIuNyB2IDcuNCBjIC0xLjUsLTAuMSAtMy42LC0xLjEgLTMuNiwtMi43IHogbSAzLjYsLTYuNyBoIC0wLjggYyAtMywwIC02LjIsMi4zIC02LjIsNS4zIHYgMS44IGMgMCwyLjUgNC42LDUuMSA2LjksNS4xIHYgOC42IGMgLTIuNCwwIC00LjQsLTIuNSAtNC40LC00LjkgbCAtMy4xLDAuNSB2IDAuOSBjIDAsMS4zIDEuNiwzLjUgMi40LDQuMSAxLDAuOCAzLjMsMS42IDUuMSwxLjcgdiAyLjUgaCAyIHYgLTIuNSBjIDMuOSwwIDcuMywtMi43IDcuMywtNi43IHYgLTEuMSBjIDAsLTMgLTQuMywtNSAtNy4zLC01LjMgdiAtNy44IGMgMC44LDAuMSAxLjksMC42IDIuMywxLjIgMC4zLDAuNSAxLjEsMi4zIDEuNCwyLjQgbCAyLjksLTAuNCBjIDAsLTMgLTMuMSwtNS4zIC02LC01LjMgaCAtMC42IHYgLTEuNCBoIC0yIHYgMS40IHpcIn1dLGlbXCJHUi5JTi5JQy5GSU5BTkNJQUwgRVhDSEFOR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzMuNywxMjQuNiAwLC0xLjQgLTY2LjgsMCAwLjMsMCAwLC00NyAtMSwwIDAsNDguNCB6IG0gLTI5LjUsLTguNiAtOS44LC0yMC44IC01LjksMTQuNCAtNS4zLC02LjUgLTEzLjMsMTIuNCAwLjksMSB2IDAuMiBsIDEyLjQsLTExLjMgNS41LDcgaCAwLjMgYyAwLC0xIDIuMywtNS42IDIuOCwtNyAwLjMsLTEgMS4xLC0yLjQgMS41LC0zLjQgMC4zLC0wLjggMC45LC0zLjEgMS41LC0zLjIgbCA5LjQsMjAuMyAwLjEsMC4yIDE3LjQsLTI3LjQgMC4yLDAuMSA4LDE1LjYgMS40LC0wLjUgLTkuNCwtMTggYyAtMC4xLDAuNSAtNy43LDEyLjEgLTguNywxMy42IC0xLDEuNiAtOC4yLDEzLjIgLTguOSwxMy40IHogbSAyLjgsLTE5LjQgViA4OS4yIGMgMi4xLDAgNC4xLDEuNCA0LjEsMy42IHYgMC4yIGMgMCwyLjEgLTEuOSwzLjYgLTQuMSwzLjYgeiBtIC00LjcsLTEzLjYgYyAwLC0yIDEsLTMuNCAzLC0zLjQgaCAwLjUgdiA2LjYgYyAtMS44LC0wLjEgLTMuNCwtMS4zIC0zLjQsLTMuMiB6IG0gMy41LC01LjYgaCAtMSBjIC0yLjYsMCAtNS4yLDIuOSAtNS4yLDUuNiB2IDEgYyAwLDEuMSAxLjMsMi44IDIuMSwzLjQgMS4xLDAuOCAyLjUsMS4yIDQsMS41IHYgNy44IGMgLTIuNiwtMC42IC00LjEsLTEuNyAtNC4xLC00LjggaCAtMi40IGwgMC4yLDIuNSBjIDAuOSwxLjQgMC42LDIuMSAyLjIsMy4yIDEuMSwwLjcgMi40LDEuMiA0LjEsMS4yIHYgMi44IGggMS4yIHYgLTIuOCBjIDMsMCA2LjQsLTIuMyA2LjQsLTUgdiAtMi41IGMgMCwtMi45IC00LC00LjMgLTYuNCwtNC44IHYgLTYuOSBjIDIsMCAzLjQsMS40IDMuNCwzLjMgaCAyLjcgYyAwLC0zLjIgLTIuOCwtNS41IC02LjEsLTUuNSBWIDc1LjQgaCAtMS4yIHYgMS45IHpcIn1dLGlbXCJHUi5JTi5JQy5GSU5BTkNJQUwgU0VSVklDRVMsIE9USEVSXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAzLjQsMTM4LjIgLTIuNywwIC0wLC04LjIgYyAtMS45LC0wIC0zLjgsLTAuMyAtNS43LC0wLjcgLTEuOSwtMC40IC0zLjgsLTEgLTUuOCwtMS45IGwgMCwtNC45IGMgMS45LDEuMiAzLjcsMi4xIDUuNiwyLjcgMS45LDAuNiAzLjksMC45IDUuOSwwLjkgbCAwLC0xMi41IGMgLTQsLTAuNyAtNywtMS44IC04LjgsLTMuMyAtMS44LC0xLjYgLTIuNywtMy43IC0yLjcsLTYuNSAtNWUtNiwtMyAxLC01LjMgMywtNyAyLC0xLjcgNC44LC0yLjcgOC42LC0zIGwgMCwtNi40IDIuNywwIDAsNi4zIGMgMS43LDAuMSAzLjMsMC4zIDQuOSwwLjUgMS42LDAuMyAzLjEsMC43IDQuNiwxLjEgbCAwLDQuOCBjIC0xLjUsLTAuOCAtMy4xLC0xLjQgLTQuNywtMS44IC0xLjYsLTAuNCAtMy4yLC0wLjcgLTQuOSwtMC43IGwgMCwxMS43IGMgNC4xLDAuNiA3LjIsMS44IDkuMSwzLjQgMiwxLjYgMi45LDMuOSAyLjksNi43IC0zZS01LDMuMSAtMSw1LjUgLTMuMSw3LjMgLTIuMSwxLjggLTUsMi44IC04LjksMy4xIGwgMCw4LjMgbSAtMi43LC0yOS4zIDAsLTExLjIgYyAtMi4xLDAuMiAtMy43LDAuOCAtNC44LDEuOCAtMS4xLDEgLTEuNywyLjMgLTEuNywzLjkgLTFlLTUsMS42IDAuNSwyLjggMS41LDMuNyAxLDAuOSAyLjcsMS41IDUsMS45IG0gMi43LDUuMyAwLDExLjggYyAyLjMsLTAuMyA0LjEsLTEgNS4yLC0yIDEuMiwtMSAxLjgsLTIuMyAxLjgsLTQgLTNlLTUsLTEuNiAtMC42LC0yLjkgLTEuNywtMy44IC0xLjEsLTAuOSAtMi45LC0xLjYgLTUuMywtMi4xIG0gNS44LC01Mi4yIDIuMSwwIDAsNi4yIDcuNSwwIDAsLTYuMiAyLjEsMCAwLDE1LjIgLTIuMSwwIDAsLTcuMiAtNy41LDAgMCw3LjIgLTIuMSwwIDAsLTE1LjIgbSAtMTQuOCwwIDEyLjgsMCAwLDEuNyAtNS40LDAgMCwxMy40IC0yLjEsMCAwLC0xMy40IC01LjQsMCAwLC0xLjcgbSAtOC4xLDEuNCBjIC0xLjUsMS4zZS01IC0yLjcsMC42IC0zLjYsMS43IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0zZS02LDEuOSAwLjQsMy40IDEuMyw0LjUgMC45LDEuMSAyLjEsMS43IDMuNiwxLjcgMS41LDFlLTYgMi43LC0wLjYgMy41LC0xLjcgMC45LC0xLjEgMS4zLC0yLjYgMS4zLC00LjUgLTEuM2UtNSwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTEuNWUtNSwyLjQgLTAuNiw0LjMgLTEuOSw1LjcgLTEuMywxLjQgLTMsMi4xIC01LjEsMi4xIC0yLjEsLTEwZS03IC0zLjgsLTAuNyAtNS4xLC0yLjEgLTEuMywtMS40IC0xLjksLTMuMyAtMS45LC01LjcgLTFlLTYsLTIuNCAwLjYsLTQuMyAxLjksLTUuNyAxLjMsLTEuNCAzLC0yLjEgNS4xLC0yLjFcIn1dLGlbXCJHUi5JTi5JQy5DT01NRVJDSUFMIElORlJBU1RSVUNUVVJFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjksMTIzLjMgLTEuNywwIC0wLC01IGMgLTEuMiwtMCAtMi4zLC0wLjIgLTMuNSwtMC40IC0xLjIsLTAuMyAtMi4zLC0wLjYgLTMuNSwtMS4xIGwgMCwtMyBjIDEuMSwwLjcgMi4zLDEuMiAzLjQsMS42IDEuMiwwLjQgMi40LDAuNSAzLjYsMC41IGwgMCwtNy42IGMgLTIuNCwtMC40IC00LjIsLTEuMSAtNS4zLC0yIC0xLjEsLTEgLTEuNywtMi4zIC0xLjcsLTMuOSAtMmUtNiwtMS44IDAuNiwtMy4yIDEuOCwtNC4zIDEuMiwtMSAyLjksLTEuNiA1LjIsLTEuOCBsIDAsLTMuOSAxLjcsMCAwLDMuOSBjIDEsMCAyLDAuMiAzLDAuMyAxLDAuMiAxLjksMC40IDIuOCwwLjcgbCAwLDIuOSBjIC0wLjksLTAuNSAtMS45LC0wLjggLTIuOCwtMS4xIC0xLC0wLjMgLTIsLTAuNCAtMywtMC40IGwgMCw3LjEgYyAyLjUsMC40IDQuNCwxLjEgNS41LDIuMSAxLjIsMSAxLjgsMi40IDEuOCw0LjEgLTJlLTUsMS45IC0wLjYsMy4zIC0xLjksNC40IC0xLjMsMS4xIC0zLjEsMS43IC01LjQsMS45IGwgMCw1IG0gLTEuNywtMTcuOCAwLC02LjggYyAtMS4zLDAuMSAtMi4zLDAuNSAtMi45LDEuMSAtMC43LDAuNiAtMSwxLjQgLTEsMi4zIC02ZS02LDEgMC4zLDEuNyAwLjksMi4yIDAuNiwwLjUgMS42LDAuOSAzLDEuMSBtIDEuNywzLjIgMCw3LjIgYyAxLjQsLTAuMiAyLjUsLTAuNiAzLjIsLTEuMiAwLjcsLTAuNiAxLjEsLTEuNCAxLjEsLTIuNCAtMWUtNSwtMSAtMC4zLC0xLjcgLTEsLTIuMyAtMC43LC0wLjYgLTEuNywtMSAtMy4yLC0xLjMgTSAxMDQuNSw3NC44IGggNC41IHYgMTMuNCBoIDkuOSBWIDc0LjggaCA0LjUgdiAxMy40IGggNi43IHYgMzcgSCA3MCBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgViA4Ni45IEggNjguOCB2IDM5LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTAxLjksMTA4LjcgMCw3LjIgYyAxLjQsLTAuMiAyLjUsLTAuNiAzLjIsLTEuMiAwLjcsLTAuNiAxLjEsLTEuNCAxLjEsLTIuNCAtMWUtNSwtMSAtMC4zLC0xLjcgLTEsLTIuMyAtMC43LC0wLjYgLTEuNywtMSAtMy4yLC0xLjMgbSAtMS43LC0zLjIgMCwtNi44IGMgLTEuMywwLjEgLTIuMywwLjUgLTIuOSwxLjEgLTAuNywwLjYgLTEsMS40IC0xLDIuMyAtNmUtNiwxIDAuMywxLjcgMC45LDIuMiAwLjYsMC41IDEuNiwwLjkgMywxLjEgbSA0LjMsLTMwLjcgMCwxMy40IC0zNC42LDAgMCwzNyA2MC4xLDAgMCwtMzcgLTYuNywwIDAsLTEzLjQgLTQuNSwwIDAsMTMuNCAtOS45LDAgMCwtMTMuNCAtNC41LDAgeiBtIC00LjMsMTcuNiAxLjcsMCAwLDMuOCBjIDEsMCAyLDAuMiAzLDAuMyAxLDAuMiAxLjksMC40IDIuOCwwLjcgbCAwLDIuOSBjIC0wLjksLTAuNSAtMS45LC0wLjggLTIuOCwtMS4xIC0xLC0wLjMgLTIsLTAuNCAtMywtMC41IGwgMCw3LjEgYyAyLjUsMC40IDQuMywxLjEgNS41LDIuMSAxLjIsMSAxLjgsMi40IDEuOCw0LjEgLTJlLTUsMS45IC0wLjYsMy40IC0xLjksNC40IC0xLjMsMS4xIC0zLjEsMS43IC01LjQsMS45IGwgMCw1IC0xLjcsMCAtMCwtNSBjIC0xLjIsLTAgLTIuMywtMC4yIC0zLjUsLTAuNCAtMS4yLC0wLjMgLTIuMywtMC42IC0zLjUsLTEuMSBsIDAsLTMgYyAxLjEsMC43IDIuMywxLjMgMy40LDEuNiAxLjIsMC40IDIuNCwwLjUgMy42LDAuNSBsIDAsLTcuNiBjIC0yLjQsLTAuNCAtNC4yLC0xLjEgLTUuMywtMiAtMS4xLC0xIC0xLjcsLTIuMiAtMS43LC0zLjkgLTJlLTYsLTEuOCAwLjYsLTMuMiAxLjgsLTQuMyAxLjIsLTEgMywtMS42IDUuMiwtMS44IGwgMCwtMy45IHpcIn1dLGlbXCJHUi5JTi5JQy5DSEVNSUNBTCBQTEFOVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk0LjQsODkuNiAwLDAuMSBjIC0wLjUsMC4xIC0xLDAuMyAtMS40LDAuNiAtMC41LDAuNSAtMC42LDEuMyAtMC41LDEuOSAwLjIsMC44IDAuOCwxLjUgMS43LDEuOCAtMCwwLjUgLTAuMSwxLjcgMCwzIGwgLTAuMSwwIGMgLTAsMi43IC0yLjMsNS43IC00LjksOC44IC0yLjQsMyAtNSw2LjQgLTUuMywxMC40IGwgLTAuMSwwIGMgMCwwLjEgMCwwLjIgMCwwLjIgLTAsMC4xIC0wLDAuMiAtMCwwLjMgbCAwLjEsMCBjIDAuMiwyLjQgMS43LDQuMiAzLjcsNS4zIDIuMSwxLjIgNC42LDEuNyA2LjgsMS42IGwgMCwtMCA4LjksMCAwLDAuMSBjIDAuMywtMCAwLjUsLTAgMC44LC0wLjEgbCAwLjUsMCAwLC0wLjEgYyAyLjEsLTAuMiA0LjIsLTAuMyA2LC0xIDEuMSwtMC40IDIuMSwtMS4xIDIuOCwtMi4xIDAuNiwtMC45IDAuOSwtMi4xIDEuMSwtMy42IGwgMC4yLDAgYyAwLjIsLTQuNCAtMi4xLC03LjUgLTQuNSwtMTAuMyAtMi4zLC0yLjggLTQuNywtNS41IC01LjQsLTkuNiAwLC0xLjMgMC4xLC0zIDAuMSwtMy4zIDAuMiwtMC4xIDAuNCwtMC4yIDAuNiwtMC4zIDAuNSwtMC40IDAuOSwtMSAwLjksLTEuNyAtMCwtMC43IC0wLjUsLTEuMyAtMS4xLC0xLjYgLTAuNCwtMC4yIC0wLjksLTAuMyAtMS41LC0wLjQgbCAwLC0wLjEgYyAtMC4yLDAgLTAuNCwtMCAtMC42LDAgLTIuNSwwIC03LjIsMCAtOC4xLDAgLTAuMSwtMi40ZS00IC0wLjcsMCAtMC43LDAgeiBtIDAuNywyIGMgMC44LDAgNS41LDAgOC4xLDAgMC42LDAgMC45LDAuMSAxLjEsMC4yIC0wLjIsMC4xIC0wLjUsMC4zIC0wLjksMC40IGwgLTguMSwwIGMgLTAuNCwtMC4xIC0wLjcsLTAuMyAtMC43LC0wLjQgLTAsLTAuMSAtMCwtMC4xIC0wLC0wLjEgMCwtMCAwLjEsLTAuMSAwLjYsLTAuMSB6IG0gMS4yLDIuNiA2LjcsMCBjIC0wLDAuNyAtMC4xLDEuOSAtMC4xLDMuMSAtMCwwLjEgLTAsMC4yIC0wLDAuMyBsIDAuMSwwIGMgMC45LDQuNSAzLjUsNy42IDUuOCwxMC4zIDIuMiwyLjcgNCw1IDQsOC40IGwgLTAuMSwwIGMgLTAsMS40IC0wLjQsMi40IC0wLjgsMyAtMC40LDAuNyAtMSwxLjEgLTEuOCwxLjQgLTEuNCwwLjYgLTMuNiwwLjcgLTUuOCwwLjkgbCAtMTAuMywwIDAsMCBjIC0xLjYsMCAtMy42LC0wLjQgLTUuMSwtMS4zIC0xLjYsLTAuOSAtMi42LC0yLjIgLTIuNywtMy45IDAuMSwtMy4yIDIuNCwtNi4zIDQuOSwtOS40IDIuNCwtMyA1LjEsLTYuMSA1LjMsLTkuNiBsIDAuMSwtMCBjIC0wLjEsLTEgLTAuMSwtMi43IC0wLC0zLjMgeiBtIC03LDE5LjYgdiAxLjkgYyAwLDMuNSA2LDQuMyA5LjksNC4zIGggMy4yIGMgMi41LDAgOCwtMi4yIDgsLTQuMiB2IC0wLjggYyAwLC0zLjIgLTYuNiwtOS40IC03LjMsLTEyLjQgaCAtNy41IGMgLTAuNiwyLjUgLTYuMiwxMCAtNi4yLDExLjIgeiBtIDE0LjgsLTM5IGggNC41IHYgMTMuNCBoIDkuOSBWIDc0LjggaCA0LjUgdiAxMy40IGggNi43IHYgMzcgSCA2OS42IFYgODguMiBoIDM0LjYgbCA0ZS00LC0xMy40IDAsMCB6IG0gLTM1LjcsNTEuNiBoIDYyLjMgViA4Ni45IGggLTYuNCBWIDczLjUgaCAtNy4yIHYgMTMuNCBoIC03LjIgViA3My41IGggLTcuMiB2IDEzLjQgaCAtMzQuNCB2IDM5LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIk0gMTA0LjEgNzQuOCBMIDEwNC4xIDg4LjIgTCA2OS42IDg4LjIgTCA2OS42IDEyNS4yIEwgMTI5LjYgMTI1LjIgTCAxMjkuNiA4OC4yIEwgMTIyLjkgODguMiBMIDEyMi45IDc0LjggTCAxMTguNSA3NC44IEwgMTE4LjUgODguMiBMIDEwOC42IDg4LjIgTCAxMDguNiA3NC44IEwgMTA0LjEgNzQuOCB6IE0gOTQuNCA4OS42IEMgOTQuNCA4OS42IDk1LjEgODkuNiA5NS4yIDg5LjYgQyA5Ni4xIDg5LjYgMTAwLjggODkuNiAxMDMuMyA4OS42IEMgMTAzLjUgODkuNiAxMDMuOCA4OS42IDEwMy45IDg5LjYgTCAxMDMuOSA4OS43IEMgMTA0LjUgODkuOCAxMDUgODkuOSAxMDUuNCA5MC4xIEMgMTA2IDkwLjQgMTA2LjUgOTEgMTA2LjUgOTEuNyBDIDEwNi41IDkyLjQgMTA2LjEgOTMgMTA1LjYgOTMuNCBDIDEwNS40IDkzLjUgMTA1LjIgOTMuNiAxMDUgOTMuOCBDIDEwNSA5NCAxMDQuOSA5NS43IDEwNC45IDk3LjEgQyAxMDUuNiAxMDEuMSAxMDggMTAzLjggMTEwLjMgMTA2LjcgQyAxMTIuNiAxMDkuNSAxMTQuOSAxMTIuNiAxMTQuNyAxMTcgTCAxMTQuNiAxMTYuOSBDIDExNC40IDExOC40IDExNC4xIDExOS42IDExMy41IDEyMC41IEMgMTEyLjggMTIxLjUgMTExLjggMTIyLjIgMTEwLjggMTIyLjcgQyAxMDguOSAxMjMuNCAxMDYuOCAxMjMuNSAxMDQuOCAxMjMuNyBMIDEwNC44IDEyMy43IEwgMTA0LjMgMTIzLjcgQyAxMDQuMSAxMjMuNyAxMDMuOCAxMjMuOCAxMDMuNSAxMjMuOCBMIDEwMy41IDEyMy43IEwgOTQuNiAxMjMuNyBMIDk0LjYgMTIzLjggQyA5Mi40IDEyMy45IDg5LjkgMTIzLjQgODcuOCAxMjIuMiBDIDg1LjkgMTIxLjEgODQuMyAxMTkuMiA4NC4xIDExNi44IEwgODQuMSAxMTYuOCBDIDg0LjEgMTE2LjcgODQuMSAxMTYuNiA4NC4xIDExNi41IEMgODQuMSAxMTYuNCA4NCAxMTYuNCA4NCAxMTYuMyBMIDg0LjEgMTE2LjMgQyA4NC4zIDExMi4zIDg2LjkgMTA5IDg5LjQgMTA1LjkgQyA5MS45IDEwMi43IDk0LjIgOTkuOCA5NC4zIDk3LjEgTCA5NC4zIDk3LjEgQyA5NC4yIDk1LjcgOTQuMyA5NC42IDk0LjMgOTQgQyA5My41IDkzLjcgOTIuOCA5My4xIDkyLjYgOTIuMyBDIDkyLjQgOTEuNiA5Mi42IDkwLjkgOTMuMSA5MC40IEMgOTMuNCA5MCA5My45IDg5LjggOTQuNCA4OS43IEwgOTQuNCA4OS42IHogTSA5NS4xIDkxLjYgQyA5NC43IDkxLjYgOTQuNSA5MS43IDk0LjUgOTEuOCBDIDk0LjUgOTEuOCA5NC41IDkxLjcgOTQuNiA5MS44IEMgOTQuNiA5MS45IDk0LjggOTIuMiA5NS4zIDkyLjIgTCAxMDMuNCA5Mi4yIEMgMTAzLjggOTIuMSAxMDQuMSA5MiAxMDQuMyA5MS44IEMgMTA0LjEgOTEuOCAxMDMuOCA5MS42IDEwMy4yIDkxLjYgQyAxMDAuNiA5MS42IDk1LjkgOTEuNiA5NS4xIDkxLjYgeiBNIDk2LjMgOTQuMiBDIDk2LjIgOTQuOSA5Ni4yIDk2LjUgOTYuMyA5Ny41IEwgOTYuMiA5Ny42IEMgOTYgMTAxLjEgOTMuNCAxMDQuMiA5MC45IDEwNy4yIEMgODguNSAxMTAuMyA4Ni4yIDExMy4zIDg2LjEgMTE2LjYgQyA4Ni4yIDExOC4zIDg3LjIgMTE5LjUgODguOCAxMjAuNSBDIDkwLjMgMTIxLjMgOTIuMyAxMjEuOCA5My45IDEyMS44IEwgOTMuOSAxMjEuNyBMIDEwNC4yIDEyMS43IEMgMTA2LjUgMTIxLjUgMTA4LjYgMTIxLjQgMTEwIDEyMC44IEMgMTEwLjggMTIwLjUgMTExLjQgMTIwLjEgMTExLjggMTE5LjQgQyAxMTIuMyAxMTguOCAxMTIuNiAxMTcuOCAxMTIuNyAxMTYuNCBMIDExMi43IDExNi40IEMgMTEyLjcgMTEzIDExMC45IDExMC42IDEwOC43IDEwNy45IEMgMTA2LjUgMTA1LjIgMTAzLjggMTAyLjEgMTAzIDk3LjYgTCAxMDIuOCA5Ny42IEMgMTAyLjggOTcuNSAxMDIuOSA5Ny40IDEwMi45IDk3LjMgQyAxMDIuOSA5Ni4xIDEwMi45IDk0LjkgMTAzIDk0LjIgTCA5Ni4zIDk0LjIgeiBNIDk1LjUgMTAyLjYgTCAxMDMgMTAyLjYgQyAxMDMuOCAxMDUuNyAxMTAuMyAxMTEuOSAxMTAuMyAxMTUuMSBMIDExMC4zIDExNS45IEMgMTEwLjMgMTE3LjkgMTA0LjkgMTIwIDEwMi40IDEyMCBMIDk5LjIgMTIwIEMgOTUuMyAxMjAgODkuMyAxMTkuMiA4OS4zIDExNS43IEwgODkuMyAxMTMuOCBDIDg5LjMgMTEyLjYgOTQuOSAxMDUuMSA5NS41IDEwMi42IHogXCJ9XSxpW1wiR1IuSU4uSUMuRklSRUFSTVMgTUFOVUZBQ1RVUkVSXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjEsNzQuOCBoIDQuNSB2IDEzLjQgaCA5LjkgViA3NC44IGggNC41IHYgMTMuNCBoIDYuNyB2IDM3IEggNjkuNiBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgdiAxMy40IGggLTM0LjQgdiAzOS41IHogbSAyNS44LC0yNi42IGggMTAuOCB2IDUuOCBjIC0xLjYsMCAtNC43LDEgLTUuOCwwLjcgLTEuMiwtMC40IC0zLjgsLTEuNSAtNSwtMS42IHYgLTQuOCB6IG0gLTE5LjIsMCBoIDE2LjYgdiA2IGMgMCwwLjYgMywxLjQgMy43LDEuNyAwLjQsMC4xIDMuOSwxLjQgMy45LDEuNSBsIDcuMiwtMC45IDAuOCwyLjcgMS4xLDMuNyBjIDAuMywwLjQgMSwyLjQgMSwzLjEgdiAwLjIgYyAwLDEuMSAtMC42LDEuOSAtMC42LDMuNSBsIDEzLjUsLTAgLTAuOSwtMyAtMC42LC0xLjcgLTMsLTEwIGMgLTAuMiwtMC40IC0wLjUsLTAuNyAtMC41LC0xLjMgMCwtMS4zIDMuOSwtNC4xIDQuNywtNS4zIGwgLTIuNywtOC40IGggLTQzLjkgdiA4LjQgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTQuMiw5OS45IGggMTAuOCB2IDUuOCBjIC0xLjYsMCAtNC43LDEgLTUuOCwwLjcgLTEuMiwtMC40IC0zLjgsLTEuNSAtNSwtMS42IHYgLTQuOCB6IG0gOS45LC0yNS4xIDAsMTMuNCAtMzQuNiwwIDAsMzcgNjAuMSwwIDAsLTM3IC02LjcsMCAwLC0xMy40IC00LjUsMCAwLDEzLjQgLTkuOSwwIDAsLTEzLjQgLTQuNSwwIHogbSAtMjkuMSwxNi43IDQzLjksMCAyLjcsOC40IGMgLTAuOCwxLjIgLTQuNyw0LjEgLTQuNyw1LjMgMCwwLjYgMC4yLDAuOSAwLjUsMS4zIGwgMy4xLDEwIDAuNiwxLjggMC45LDMgLTEzLjUsMCBjIDAsLTEuNiAwLjcsLTIuNCAwLjcsLTMuNiBsIDAsLTAuMiBjIDAsLTAuNyAtMC43LC0yLjcgLTEsLTMuMSBMIDEwNy4yLDExMC44IDEwNi40LDEwOC4xIDk5LjIsMTA5IGMgLTAsLTAuMSAtMy42LC0xLjQgLTMuOSwtMS41IC0wLjcsLTAuMyAtMy43LC0xLjEgLTMuNywtMS43IGwgMCwtNS45IC0xNi42LDAgMCwtOC40IHpcIn1dLGlbXCJHUi5JTi5JQy5GSVJFQVJNUyBSRVRBSUxFUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDg1LjEsMTIzIC0xLjEsMCAtMCwtMy4yIGMgLTAuOCwtMCAtMS41LC0wLjEgLTIuMywtMC4zIC0wLjgsLTAuMiAtMS41LC0wLjQgLTIuMywtMC43IGwgMCwtMS45IGMgMC43LDAuNSAxLjUsMC44IDIuMiwxIDAuOCwwLjIgMS41LDAuMyAyLjMsMC40IGwgMCwtNC45IGMgLTEuNiwtMC4zIC0yLjcsLTAuNyAtMy41LC0xLjMgLTAuNywtMC42IC0xLjEsLTEuNSAtMS4xLC0yLjUgLTJlLTYsLTEuMiAwLjQsLTIuMSAxLjIsLTIuOCAwLjgsLTAuNyAxLjksLTEuMSAzLjQsLTEuMiBsIDAsLTIuNSAxLjEsMCAwLDIuNSBjIDAuNywwIDEuMywwLjEgMS45LDAuMiAwLjYsMC4xIDEuMiwwLjMgMS44LDAuNSBsIDAsMS45IGMgLTAuNiwtMC4zIC0xLjIsLTAuNSAtMS44LC0wLjcgLTAuNiwtMC4yIC0xLjMsLTAuMyAtMS45LC0wLjMgbCAwLDQuNiBjIDEuNiwwLjMgMi44LDAuNyAzLjYsMS4zIDAuOCwwLjYgMS4xLDEuNSAxLjEsMi42IC0xLjJlLTUsMS4yIC0wLjQsMi4yIC0xLjIsMi45IC0wLjgsMC43IC0yLDEuMSAtMy41LDEuMiBsIDAsMy4zIG0gLTEuMSwtMTEuNSAwLC00LjQgYyAtMC44LDAuMSAtMS41LDAuMyAtMS45LDAuNyAtMC40LDAuNCAtMC43LDAuOSAtMC43LDEuNSAtNGUtNiwwLjYgMC4yLDEuMSAwLjYsMS40IDAuNCwwLjMgMS4xLDAuNiAyLDAuNyBtIDEuMSwyLjEgMCw0LjcgYyAwLjksLTAuMSAxLjYsLTAuNCAyLjEsLTAuOCAwLjUsLTAuNCAwLjcsLTAuOSAwLjcsLTEuNiAtMWUtNSwtMC42IC0wLjIsLTEuMSAtMC43LC0xLjUgLTAuNCwtMC40IC0xLjEsLTAuNiAtMi4xLC0wLjggbSAyMi42LC0yMS45IC04LDIwLjggMC44LDAuMyA4LC0yMC44IC0wLjgsLTAuMyB6IG0gLTQzLDYuNSAwLDAuOCAwLjMsMjYgMCwwLjggMC44LDAgMzIuMiwtMC4yIDAuNCwwIDAuMiwtMC4zIDcuMywtOC43IDAuMiwtMC4yIC0wLC0wLjMgLTAuMiwtMTAuMSAwLC0wLjQgLTAuMywtMC4yIC04LjQsLTYuNiAtMC4yLC0wLjIgLTAuMywwIC0zMS4zLC0wLjQgLTAuOCwwIHogbSAxLjYsMS42IDMwLjIsMC4zIDcuOSw2LjIgMC4yLDkuNCAtNi45LDguMiAtMzEsMC4yIC0wLjMsLTI0LjMgeiBNIDk3LjMsODUuNCBoIDE0LjQgdiA3LjcgYyAtMi4xLDAgLTYuMiwxLjQgLTcuOCwwLjkgLTEuNiwtMC41IC01LC0yLjEgLTYuNiwtMi4yIHYgLTYuNCB6IG0gLTI1LjUsMCBoIDIyLjEgdiA3LjkgYyAwLDAuOCA0LDEuOSA0LjgsMi4yIDAuNSwwLjIgNS4yLDEuOSA1LjIsMiBsIDkuNiwtMS4yIDEsMy42IDEuNCw0LjkgYyAwLjMsMC41IDEuMywzLjIgMS4zLDQuMSB2IDAuMiBjIDAsMS41IC0wLjksMi41IC0wLjksNC43IGggMTggbCAtMS4xLC0zLjkgLTAuOCwtMi40IC00LC0xMy40IGMgLTAuMywtMC41IC0wLjYsLTAuOSAtMC42LC0xLjcgMCwtMS43IDUuMiwtNS41IDYuMiwtNy4xIGwgLTMuNiwtMTEuMSBIIDcxLjggdiAxMS4xIGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg1LjEsMTEzLjYgMCw0LjcgYyAwLjksLTAuMSAxLjYsLTAuNCAyLjEsLTAuOCAwLjUsLTAuNCAwLjcsLTAuOSAwLjcsLTEuNiAtMWUtNSwtMC42IC0wLjIsLTEuMSAtMC43LC0xLjUgLTAuNCwtMC40IC0xLjEsLTAuNiAtMi4xLC0wLjggbSAtMS4xLC0yLjEgMCwtNC40IGMgLTAuOCwwLjEgLTEuNSwwLjMgLTEuOSwwLjcgLTAuNCwwLjQgLTAuNywwLjkgLTAuNywxLjUgLTRlLTYsMC42IDAuMiwxLjEgMC42LDEuNCAwLjQsMC4zIDEuMSwwLjYgMiwwLjcgTSA2Ni40LDk5LjggbCAwLjMsMjQuMyAzMSwtMC4yIDYuOSwtOC4yIC0wLjIsLTkuNCAtNy45LC02LjIgLTMwLjIsLTAuMyB6IG0gMTcuNywzLjMgMS4xLDAgMCwyLjUgYyAwLjcsMCAxLjMsMC4xIDEuOSwwLjIgMC42LDAuMSAxLjIsMC4yIDEuOCwwLjQgbCAwLDEuOSBjIC0wLjYsLTAuMyAtMS4yLC0wLjUgLTEuOCwtMC43IC0wLjYsLTAuMiAtMS4zLC0wLjMgLTEuOSwtMC4zIGwgMCw0LjYgYyAxLjYsMC4zIDIuOCwwLjcgMy42LDEuMyAwLjgsMC42IDEuMiwxLjUgMS4yLDIuNyAtMS4yZS01LDEuMiAtMC40LDIuMiAtMS4yLDIuOSAtMC44LDAuNyAtMiwxLjEgLTMuNSwxLjIgbCAwLDMuMyAtMS4xLDAgMCwtMy4yIGMgLTAuOCwtMCAtMS41LC0wLjEgLTIuMywtMC4zIC0wLjgsLTAuMiAtMS41LC0wLjQgLTIuMywtMC44IGwgMCwtMS45IGMgMC43LDAuNSAxLjUsMC44IDIuMiwxLjEgMC44LDAuMiAxLjUsMC4zIDIuMywwLjMgbCAwLC00LjkgYyAtMS42LC0wLjMgLTIuNywtMC43IC0zLjUsLTEuMyAtMC43LC0wLjYgLTEuMSwtMS41IC0xLjEsLTIuNSAtMmUtNiwtMS4yIDAuNCwtMi4xIDEuMiwtMi44IDAuOCwtMC43IDEuOSwtMS4xIDMuNCwtMS4yIGwgMCwtMi41IHpcIn1dLGlbXCJHUi5JTi5JQy5IQVpBUkRPVVMgTUFURVJJQUwgUFJPRFVDVElPTlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwNC43LDcxLjggaCA1IHYgMTUgaCAxMS4xIHYgLTE1IGggNSB2IDE1IGggNy41IHYgNDEuNCBoIC02Ny40IFYgODYuOCBoIDM4LjggdiAtMTUgeiBtIC00MCw1Ny45IGggNjkuOCBWIDg1LjUgaCAtNy4xIHYgLTE1LjIgaCAtOCB2IDE1LjIgaCAtOCB2IC0xNS4yIGggLTggdiAxNS4yIGggLTM4LjYgdiA0NC4xIGwgMCwwIHogbSAxNS41LC0yMS44IGggMzguNiBsIC0xOS4zLDE4LjYgLTE5LjMsLTE4LjYgeiBtIDIxLjgsLTE2LjggYyAwLjUsMC40IDQuMywzLjggNC4zLDQuMyB2IDEyIGggLTQuMyBWIDkxLjEgeiBtIC01LC0wIDAsMTYuMyBoIC00LjMgbCAwLjEsLTEyLjIgNC4xLC00LjEgMCwwIHogbSAtMTIuMSwxMiBjIDAsLTAuNCAzLjEsLTMuMiAzLjYsLTMuNiB2IDcuOCBoIC0zLjYgdiAtNC4zIHogbSAyNS43LC0zLjYgMy43LDMuNCBjIC0wLjIsMC40IC0wLjIsLTAuMiAtMC4yLDAuNSB2IDQgaCAtMy42IHYgLTcuOSB6IG0gOS40LDguMiAtMjAuNSwtMjAgLTIwLjQsMjAgMjAuNCwxOS45IDIwLjUsLTE5LjkgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTkuNSwxMjYuNSAxOS4zLC0xOC42IC0zOC42LDAgeiBtIDAsMSAtMjAuNCwtMTkuOSAyMC40LC0yMCAyMC41LDIwIC0yMC41LDE5LjggeiBtIDUuMiwtNDAuOCBoIC0zOC44IHYgNDEuNCBoIDY3LjQgViA4Ni44IGggLTcuNSB2IC0xNSBoIC01IHYgMTUgaCAtMTEuMSB2IC0xNSBoIC01IHYgMTUgeiBtIDUuOSwyMC42IGggMy42IHYgLTQgYyAwLC0wLjcgLTAsLTAuMSAwLjIsLTAuNSBsIC0zLjcsLTMuNCB2IDcuOSB6IG0gLTguNiwwIGggNC4zIHYgLTEyIGMgMCwtMC40IC0zLjgsLTMuOSAtNC4zLC00LjMgdiAxNi4zIHogbSAtOS4zLDAgNC4zLDAgLTAsLTE2LjMgLTQuMSw0LjEgeiBtIC03LjgsLTQuMyB2IDQuMyBoIDMuNiB2IC03LjkgYyAtMC41LDAuMyAtMy42LDMuMiAtMy42LDMuNiB6XCJ9XSxpW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuNCw2OC44IGMgMC40LDAuMSAwLjksMC41IDEuMywxIDAuNCwwLjUgMC44LDEuMiAxLjMsMiBsIDIuMSw0LjEgLTIuMiwwIC0xLjksLTMuOSBjIC0wLjUsLTEgLTEsLTEuNyAtMS41LC0yIC0wLjUsLTAuMyAtMS4xLC0wLjUgLTEuOSwtMC41IGwgLTIuMiwwIDAsNi40IC0yLjEsMCAwLC0xNS4yIDQuNiwwIGMgMS43LDEuNWUtNSAzLDAuNCAzLjksMS4xIDAuOSwwLjcgMS4zLDEuOCAxLjMsMy4zIC0xMGUtNiwxIC0wLjIsMS43IC0wLjcsMi40IC0wLjQsMC42IC0xLjEsMS4xIC0xLjksMS4zIG0gLTUuMSwtNi40IDAsNS40IDIuNiwwIGMgMSw4ZS02IDEuNywtMC4yIDIuMiwtMC43IDAuNSwtMC41IDAuOCwtMS4xIDAuOCwtMiAtMTBlLTYsLTAuOSAtMC4zLC0xLjYgLTAuOCwtMiAtMC41LC0wLjUgLTEuMiwtMC43IC0yLjIsLTAuNyBsIC0yLjYsMCBtIC0xMi4zLC0wLjMgYyAtMS41LDEuNGUtNSAtMi43LDAuNiAtMy42LDEuNyAtMC45LDEuMSAtMS4zLDIuNiAtMS4zLDQuNSAtMWUtNSwxLjkgMC40LDMuNCAxLjMsNC41IDAuOSwxLjEgMi4xLDEuNyAzLjYsMS43IDEuNSwxZS02IDIuNywtMC42IDMuNSwtMS43IDAuOSwtMS4xIDEuMywtMi42IDEuMywtNC41IC0xMGUtNiwtMS45IC0wLjQsLTMuNCAtMS4zLC00LjUgLTAuOSwtMS4xIC0yLC0xLjcgLTMuNSwtMS43IG0gMCwtMS43IGMgMi4xLDEuNWUtNSAzLjgsMC43IDUuMSwyLjEgMS4zLDEuNCAxLjksMy4zIDEuOSw1LjcgLTEwZS02LDIuNCAtMC42LDQuMyAtMS45LDUuNyAtMS4zLDEuNCAtMywyLjEgLTUuMSwyLjEgLTIuMSwtMTBlLTcgLTMuOCwtMC43IC01LjEsLTIuMSAtMS4zLC0xLjQgLTEuOSwtMy4zIC0xLjksLTUuNyAtMmUtNiwtMi40IDAuNiwtNC4zIDEuOSwtNS43IDEuMywtMS40IDMsLTIuMSA1LjEsLTIuMSBtIC0yMSwwLjMgMTIuOCwwIDAsMS43IC01LjQsMCAwLDEzLjQgLTIuMSwwIDAsLTEzLjQgLTUuNCwwIDAsLTEuNyBtIC0yLDAuNSAwLDIgYyAtMC44LC0wLjQgLTEuNSwtMC42IC0yLjIsLTAuOCAtMC43LC0wLjIgLTEuNCwtMC4zIC0yLC0wLjMgLTEuMSwxLjRlLTUgLTIsMC4yIC0yLjYsMC43IC0wLjYsMC40IC0wLjksMSAtMC45LDEuOCAtM2UtNiwwLjcgMC4yLDEuMiAwLjYsMS41IDAuNCwwLjMgMS4yLDAuNiAyLjMsMC44IGwgMS4yLDAuMyBjIDEuNSwwLjMgMi43LDAuOCAzLjQsMS41IDAuNywwLjcgMS4xLDEuNyAxLjEsMi45IC0xLjJlLTUsMS41IC0wLjUsMi42IC0xLjUsMy4zIC0xLDAuOCAtMi40LDEuMSAtNC4zLDEuMSAtMC43LC0xMGUtNyAtMS41LC0wLjEgLTIuMywtMC4yIC0wLjgsLTAuMiAtMS42LC0wLjQgLTIuNSwtMC43IGwgMCwtMi4xIGMgMC44LDAuNSAxLjYsMC44IDIuNCwxLjEgMC44LDAuMiAxLjYsMC40IDIuNCwwLjQgMS4yLDFlLTYgMi4xLC0wLjIgMi43LC0wLjcgMC42LC0wLjUgMSwtMS4xIDEsLTIgLTFlLTUsLTAuNyAtMC4yLC0xLjMgLTAuNywtMS43IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMiwtMC45IGwgLTEuMiwtMC4yIGMgLTEuNSwtMC4zIC0yLjYsLTAuOCAtMy4zLC0xLjQgLTAuNywtMC42IC0xLC0xLjYgLTEsLTIuNyAtMmUtNiwtMS4zIDAuNSwtMi40IDEuNCwtMy4yIDAuOSwtMC44IDIuMywtMS4yIDMuOSwtMS4yIDAuNywxLjVlLTUgMS40LDAuMSAyLjIsMC4yIDAuNywwLjEgMS41LDAuMyAyLjMsMC42IE0gNzAuNiwxMTAgaCA1Ny45IGwgLTI5LDI3LjkgLTI4LjksLTI3LjkgeiBtIDMyLjgsLTI1LjIgYyAwLjgsMC41IDYuNCw1LjggNi40LDYuNCB2IDE3LjkgaCAtNi40IFYgODQuOCB6IG0gLTcuNiwtMC4xIDAuMSwyNC40IGggLTYuNSBsIDAuMiwtMTguMyA2LjIsLTYuMSAwLDAgeiBtIC0xOC4yLDE4IGMgMCwtMC43IDQuNywtNC45IDUuMywtNS4zIHYgMTEuOCBoIC01LjMgdiAtNi41IHogbSAzOC42LC01LjMgNS42LDUuMiBjIC0wLjMsMC43IC0wLjIsLTAuMyAtMC4yLDAuNyB2IDUuOSBoIC01LjMgViA5Ny40IHogbSAxNC4yLDEyLjMgLTMwLjcsLTMwLjEgLTMwLjcsMzAgMzAuNywyOS45IDMwLjgsLTI5LjggelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gOTkuNSwxMzcuOSAyOSwtMjcuOSAtNTcuOSwwIHogbSAxNi43LC0yOC43IGggNS4zIHYgLTUuOSBjIDAsLTEgLTAuMSwtMC4xIDAuMiwtMC43IGwgLTUuNiwtNS4yIHYgMTEuOCB6IG0gLTEyLjgsMCBoIDYuNCBWIDkxLjIgYyAwLC0wLjcgLTUuNiwtNS45IC02LjQsLTYuNCB2IDI0LjQgeiBtIC0xNCwtMTBlLTYgNi41LDAgLTAuMSwtMjQuNCAtNi4yLDYuMSB6IG0gLTExLjgsLTYuNCB2IDYuNCBoIDUuMyBWIDk3LjQgYyAtMC43LDAuNSAtNS4zLDQuNyAtNS4zLDUuMyB6XCJ9XSxpW1wiR1IuSU4uSUMuSU5EVVNUUklBTCBTSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTA0LjEsNzQuOCBoIDQuNSB2IDEzLjQgaCA5LjkgViA3NC44IGggNC41IHYgMTMuNCBoIDYuNyB2IDM3IEggNjkuNiBWIDg4LjIgaCAzNC42IGwgNGUtNCwtMTMuNCAwLDAgeiBtIC0zNS43LDUxLjYgaCA2Mi4zIFYgODYuOSBoIC02LjQgViA3My41IGggLTcuMiB2IDEzLjQgaCAtNy4yIFYgNzMuNSBoIC03LjIgdiAxMy40IGggLTM0LjQgdiAzOS41IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwNC4xLDc0LjggaCA0LjUgdiAxMy40IGggOS45IFYgNzQuOCBoIDQuNSB2IDEzLjQgaCA2LjcgdiAzNyBIIDY5LjYgViA4OC4yIGggMzQuNiBsIDRlLTQsLTEzLjQgMCwwIHpcIn1dLGlbXCJHUi5JTi5JQy5MQU5ERklMTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyNC4xLDExNS44IGMgMCwyLjUgMS42LDIuNyAzLDMuNiBoIC0yMi44IGMgMS4yLC0wLjcgMi44LC0xLjIgMi44LC0zLjMgdiAtMS4yIGMgMCwtMS4zIC0xLjksLTIuOCAtMy42LC0yLjggLTEsMCAtMS44LDAuNCAtMi4zLDAuOSAtMC40LDAuNCAtMS4xLDEuNiAtMS4xLDIuMSB2IDEuMyBjIDAsMC4yIDAuOSwxLjcgMSwxLjkgMC42LDAuNyAxLjIsMC42IDEuOCwxIGggLTguNiBjIDAuNiwtMC40IDEuMywtMC41IDEuOCwtMS4xIDAuNCwtMC40IDAuNiwtMS40IDEsLTEuNiB2IC0xLjcgYyAwLC0wLjQgLTAuOSwtMS44IC0xLjIsLTIuMSAtMC42LC0wLjYgLTEuMywtMC45IC0yLjQsLTAuOSBoIC0wLjEgYyAtMS43LDAgLTMuNSwxLjUgLTMuNSwzLjEgdiAxLjMgYyAwLDEuNSAyLDIuMiAyLjgsMi44IGggLTguNyBjIC0wLjEsLTMuMiAtMi41LC0xLjggLTMuMSwtMyAtMS4xLC0xLjkgMC45LC0yLjIgLTIuOCwtMy4xIC0zLjEsLTAuOCAtMiwtMC4zIC0zLjksLTIuMiAtMC42LC0wLjcgLTMsLTEuOCAtNC4yLC0xLjggaCAtMC4xIGMgLTEsMCAtMS45LDEuMiAtMi43LDEuNSAtMS4xLDAuNSAtMi4zLDAuNCAtMy4yLDEuMSAtMS4xLDAuOCAtMi4zLDQuNCAtMi4zLDYuMiB2IDAuNiBoIC0wLjQgdiAyLjIgaCA3Mi4xIDQuOSB2IC0xLjUgaCAtOS41IGMgMC44LC0wLjUgMC45LC0wLjIgMS44LC0xIDAuNCwtMC40IDAuOSwtMS41IDEuMiwtMS42IHYgLTEuNiBjIDAsLTAuNSAtMC45LC0xLjkgLTEuMywtMi4yIC0wLjcsLTAuNSAtMS40LC0wLjggLTIuNSwtMC44IC0xLjksMCAtMy42LDEuNSAtMy42LDMuNSB2IDAuMiBoIDAgeiBtIC0xLC0xNy42IGggMy41IGMgMC41LDAgNC4yLDQuOCA0LjYsNS40IGggLTguMSB2IC01LjQgeiBtIC00LjEsLTE3LjggLTAuNywtMS4zIC03LDMuOSAxLjQsMy41IC0zMiwxNC41IGMgMC44LDAuNCAyLjEsNC4zIDIuNiw1LjMgMC4yLDAuNCAyLjMsNSAyLjMsNS4xIDAsMC41IC0wLjksMC4yIC0wLjgsMC42IGwgMC41LDMuMSBoIDMuNCBjIDAsLTIuNCAyLC00LjggNC4zLC00LjggaCAxIGMgMi40LDAgNC4zLDIuMyA0LjMsNC44IGggMC42IGMgMCwtMi40IDAuNiwtMi4zIDEuNSwtMy42IGwgLTIuMSwtNS42IDkuNSwtNC4zIDQuMiw5LjkgLTUuMSwwIGMgMC45LDEuMyAxLjYsMS4zIDEuNiwzLjYgaCAxNC40IHYgLTAuNSBjIDAsLTIuMSAyLjUsLTQuMyA0LjgsLTQuMyBoIDAuNSBjIDIuNiwwIDQuNiwyLjIgNC42LDQuOCBoIDIuNiB2IC0zLjEgaCAtMS4yIHYgLTcuNCBjIDAsLTEuMiAtNS44LC02LjggLTYuMSwtOC4xIGggLTYuNCB2IDE1IGggLTQuMSBsIC01LjMsLTEyLjEgNS41LC0yLjMgLTQuMywtOS41IDUuNiwtNy40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyMy4xLDEwMy42IGggOC4xIGMgLTAuNSwtMC42IC00LjIsLTUuNCAtNC42LC01LjQgaCAtMy41IHYgNS40IHpcIn1dLGlbXCJHUi5JTi5JQy5QSEFSTUFDRVVUSUNBTCBNQU5VRkFDVFVSRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDUuMiw3MS4zIGggNS4xIFYgODYuNSBIIDEyMS41IFYgNzEuMyBoIDUuMSB2IDE1LjIgaCA3LjYgdiA0Mi4xIEggNjUuOCBWIDg2LjYgaCAzOS40IFYgNzEuMyB6IE0gNjQuNSwxMzAuMSBoIDcxIFYgODUuMyBoIC03LjMgViA2OS45IGggLTguMiBWIDg1LjMgaCAtOC4yIFYgNjkuOSBIIDEwMy43IFYgODUuMyBIIDY0LjUgdiA0NC44IHogTSA5MC4zLDkzLjEgaCA3LjYgYyAxLjIsMCAzLjQsMS44IDMuNCwyLjcgdiAyLjYgYyAwLDEuMyAtMi40LDIuOSAtMy42LDIuOSBoIC03LjQgdiAtOC4yIHogbSAtNC45LDI2LjUgaCA0LjkgdiAtMTMuMSBsIDEuNywwLjEgNy42LDEwIC04LjgsMTEgNS45LDAuMSA1LjksLTcgYyAxLjIsMC4zIDQuMiw1LjkgNS42LDYuOSBoIDYuMiBjIC0wLjksLTEuNyAtOC40LC0xMC40IC04LjQsLTExIDAsLTAuMyA3LjQsLTkuNyA4LjIsLTEwLjQgbCAtNiwtMC4xIC01LjYsNi4yIC00LjMsLTUuNyBjIDUuMiwtMS4yIDguNCwtMy4zIDguNCwtOS44IHYgLTAuNiBjIDAsLTIgLTEuNywtNC43IC0yLjgsLTUuOCAtMSwtMSAtNC4xLC0yLjQgLTYuMiwtMi40IEggODUuNCB2IDMxLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gODUuNCw4OCBoIDEyLjQgYyAyLjEsMCA1LjEsMS40IDYuMSwyLjQgMS4xLDEuMSAyLjgsMy44IDIuOCw1LjggdiAwLjYgYyAwLDYuNSAtMy4xLDguNiAtOC40LDkuOCBsIDQuMyw1LjcgNS42LC02LjIgNi4xLDAuMSBjIC0wLjgsMC42IC04LjIsMTAgLTguMiwxMC40IDAsMC43IDcuNCw5LjQgOC40LDExLjEgaCAtNi4yIGMgLTEuNSwtMSAtNC40LC02LjYgLTUuNiwtNi45IGwgLTUuOSw2LjkgLTUuOSwtMC4xIDguOCwtMTEgLTcuNiwtOS45IC0xLjgsLTAuMSB2IDEzLjEgaCAtNC45IHYgLTMxLjYgeiBtIDE5LjgsLTEuNCBoIC0zOS40IHYgNDIuMSBoIDY4LjQgViA4Ni42IGggLTcuNiBWIDcxLjMgSCAxMjEuNSBWIDg2LjUgSCAxMTAuMyBWIDcxLjMgaCAtNS4xIHYgMTUuMyB6IG0gLTE0LjksMTQuNyBoIDcuNCBjIDEuMiwwIDMuNiwtMS42IDMuNiwtMi45IHYgLTIuNSBjIDAsLTEgLTIuMiwtMi43IC0zLjQsLTIuNyBoIC03LjYgdiA4LjIgelwifV0saVtcIkdSLklOLklDLkNPTlRBTUlOQVRFRCBIQVpBUkRPVVMgV0FTVEUgU0lURVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEzMy43LDcxLjUgYyAtMC4zLDAgLTAuNywwLjEgLTAuOSwwLjIgbCAtNDkuNSwwIC0wLjcsMCAwLDAuMSBjIC0wLjcsMC4zIC0xLjMsMC45IC0xLjgsMS43IC0wLjYsMSAtMS4yLDIuNSAtMS42LDQuMiAtMC45LDMuNSAtMS40LDguMiAtMS40LDEzLjQgMCw0LjggMC41LDkuMiAxLjIsMTIuNiAtMSwwLjEgLTIuMSwwLjUgLTMsMC4zIC0xLjIsLTAuMSAtMi41LC0wLjEgLTMuOCwtMC4xIC0xLjMsMCAtNi41LC0wLjkgLTYuNSwwLjcgMCwxLjggNiwzLjQgNy41LDYuMSAtMC44LDEuNSAtNS45LDEuNCAtOC4xLDEuOCAtMS41LDAuMiAtMywwLjIgLTMuOCwxLjEgLTEsMSAwLjIsMi4zIDEuMSwyLjcgMS43LDAuOSA2LDEgOC4yLDEuNSAxLjMsMC4zIDIuNiwwLjcgMy4xLDEuOSAwLjQsMS4xIDAuNiwyLjYgMi4yLDIuNiBsIDAuMSwwIGMgMi4xLDAgNS4xLC0xLjcgNy45LC0xLjcgbCAxLjEsMCBjIDYuMiwwIDYuOCw3LjQgMTIuMyw3LjcgMy41LDAuMiA1LjMsLTAuOCA3LjgsLTEuOSAxLjYsLTAuNyA1LjUsLTIuOCA3LjMsLTIuOCBsIDAuMywwIGMgMS44LDAgMy4zLDEuMSA0LjgsMS41IDEuNiwwLjUgMy4zLDEgNS40LDEgbCAwLjUsMCBjIDEuMiwwIDIuMywtMC4yIDMuMiwtMC41IDEuMiwtMC40IDEuMSwtMSAxLjEsLTIuNCAtMC4xLC0xLjkgLTIuMiwtMy4zIC0zLjUsLTQgLTEuNCwtMC45IC0zLjQsLTEuOCAtNC45LC0yLjYgLTAuOCwtMC40IC0xLjUsLTAuOSAtMi4zLC0xLjQgLTEuMywtMSAtMSwtMC42IC0xLjcsLTIuMSAxLjIsLTEuOCA2LjksMC4yIDYuOSwtMS45IDAsLTAuMiAtMC4zLC0wLjUgLTAuNywtMC43IGwgMTIuMiwwIDAuNywwIDAsLTAuNCBjIDAuNywtMC4zIDEuMywtMC45IDEuOCwtMS43IDAuNiwtMSAxLjIsLTIuNSAxLjYsLTQuMiAwLjksLTMuNSAxLjQsLTguMiAxLjQsLTEzLjQgMCwtNS4yIC0wLjUsLTkuOSAtMS40LC0xMy40IC0wLjQsLTEuNyAtMSwtMy4yIC0xLjYsLTQuMiAtMC42LC0xIC0xLjQsLTEuOCAtMi41LC0xLjggeiBtIDAuMywxLjQgYyAwLjMsMCAwLjcsMC4zIDEuMywxLjEgMC41LDAuOCAxLDIuMiAxLjQsMy44IDAuOCwzLjMgMS40LDcuOSAxLjQsMTMuMSAwLDUuMSAtMC41LDkuOCAtMS40LDEzLjEgLTAuNCwxLjcgLTAuOSwzIC0xLjQsMy44IC0wLjUsMC44IC0xLDEuMSAtMS4zLDEuMSAtMC4yLDAgLTAuNCwtMC4xIC0wLjcsLTAuNCBsIDAsMC43IC00Ny45LDAgYyAwLjIsLTAuMiAwLjQsLTAuNCAwLjYsLTAuOCAwLjYsLTEgMS4xLC0yLjMgMS41LC00IDAuOSwtMy40IDEuNCwtOC4xIDEuNCwtMTMuMiAwLC01LjIgLTAuNSwtOS44IC0xLjQsLTEzLjIgLTAuNCwtMS43IC0wLjksLTMuMSAtMS41LC00IC0wLjIsLTAuMyAtMC40LC0wLjUgLTAuNiwtMC43IGwgNDcuOSwwIDAsMC4yIGMgMC4zLC0wLjMgMC41LC0wLjQgMC43LC0wLjQgeiBtIC01MC43LDAuMiBjIDAuMywwIDAuNywwLjMgMS4zLDEuMSAwLjUsMC44IDEsMi4yIDEuNCwzLjggMC44LDMuMyAxLjQsNy45IDEuNCwxMy4xIDAsNS4xIC0wLjUsOS44IC0xLjQsMTMuMSAtMC40LDEuNyAtMC45LDMgLTEuNCwzLjggLTAuNSwwLjggLTEsMS4xIC0xLjMsMS4xIC0wLjMsMCAtMC43LC0wLjMgLTEuMywtMS4xIC0wLjMsLTAuNSAtMC42LC0xLjEgLTAuOCwtMS44IDAuNCwxLjcgMSwzIDEuNywzLjUgbCA4LjMsLTAuMiA3LjEsMC4xIDIwLjMsLTAuMSBjIDAuNSwwIDEuNSwwLjUgMi4zLDEgbCAwLDAgYyAwLjUsMC4zIDAuOCwwLjYgMSwwLjcgLTAuMSwwLjIgLTAuNCwwLjMgLTAuNiwwLjQgLTAuMiwwLjEgLTAuNSwwLjIgLTAuOCwwLjIgLTAuNCwwLjEgLTAuOSwwLjEgLTEuMywwLjEgLTAuMiwtMCAtMC41LC0wIC0wLjcsLTAgLTAuNCwtMCAtMC45LC0wIC0xLjIsLTAgbCAtMC4zLDAgYyAtMC45LDAgLTEuNywwLjUgLTEuNywxLjQgbCAwLDAuMSAwLDAuMSBjIDAsMC4xIDAsMC4yIDAsMC4zIDAuNywzIDExLjMsNS44IDExLjksOS4yIDAsMC4xIDAsMC4yIDAsMC4zIC0wLDAuMSAtMCwwLjEgLTAsMC4xIC0wLjIsMS42IC0yLjksMi4yIC01LjIsMi4yIC0wLjcsMCAtMS4zLDAgLTEuOCwtMC4xIC0yLjYsLTAuNCAtNS40LC0yLjMgLTcuMywtMi4zIC01LjMsMCAtOS41LDUuNSAtMTUuMiw0LjggLTQuNCwtMC42IC01LjUsLTcuOSAtMTIuMywtNy45IGwgLTEuMywwIGMgLTMsMCAtNS42LDEuNyAtOC40LDEuNyAtMC41LDAgLTAuNywtMC4zIC0wLjksLTAuNiAtMCwtMCAtMCwtMC4xIC0wLjEsLTAuMSAtMC4yLC0wLjUgLTAuMywtMS4xIC0wLjYsLTEuNiAtMCwtMCAwLC0wIDAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIC0wLC0wIC0wLC0wLjEgLTAuMSwtMC4xIC0wLC0wLjEgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMC4xLC0wLjIgLTAuMywtMC4zIC0wLjQsLTAuNCAtMS4yLC0wLjkgLTIuMywtMS4xIC00LC0xLjQgLTEuOSwtMC4zIC01LjgsLTAuMyAtNy4zLC0xLjUgLTAsLTAgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMCwtMCAtMCwtMCAtMC4xLC0wLjEgLTAsLTAgLTAuMSwtMC4xIC0wLjEsLTAuMSAtMCwtMCAtMCwtMCAtMCwtMC4xIC0wLC0wIC0wLC0wIC0wLC0wIC0wLjIsLTAuMyAtMC40LC0wLjYgLTAuNCwtMC45IGwgMCwtMC4zIGMgMCwtMi4xIDEzLjIsLTAuOSAxMy4yLC0zLjIgMCwtMC4zIC0wLjEsLTAuNiAtMC4zLC0wLjggLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIC0wLC0wIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjIsLTAuMiAtMCwtMCAtMCwtMCAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjMsLTAuMyAtMC41LC0wLjQgLTEuNywtMS4zIC00LjgsLTIuNyAtNi4zLC0zLjkgLTAuMSwtMC4xIC0wLjMsLTAuMiAtMC40LC0wLjMgLTAsLTAgLTAsLTAgLTAuMSwtMC4xIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAuMSwtMC4xIC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4xIC0wLjIsLTAuMiAtMC4yLC0wLjQgMC4zLC0wLjEgMC42LC0wLjMgMS4xLC0wLjMgbCAyLjksMCA2LjMsMC4zIDIuNiwtMC4zIGMgOS40ZS00LDAgLTkuNGUtNCwwIDAsMCBsIDAuNywtMC4xIDAuOCwwLjEgYyAtMCwtMCAtMCwtMCAtMCwtMCAtMC44LC0zLjMgLTEuNCwtNy45IC0xLjQsLTEzLjEgMCwtNS4xIDAuNSwtOS43IDEuNCwtMTMuMSAwLjQsLTEuNyAwLjksLTMgMS40LC0zLjggMC41LC0wLjggMSwtMS4xIDEuMywtMS4xIHogbSAyNy43LDEuMSAtMTcuNCwxNyAxNy40LDE2LjkgMTcuNCwtMTYuOSAtMTcuNCwtMTcgeiBtIC0yLjIsMi45IDAsMTMuOCAtMy42LDAgMC4xLC0xMC40IDMuNSwtMy41IHogbSA0LjMsMCBjIDAuNCwwLjMgMy42LDMuMyAzLjYsMy43IGwgMCwxMC4yIC0zLjYsMCAwLC0xMy44IHogbSA3LjMsNy4yIDMuMiwyLjkgYyAtMC4xLDAuMSAtMC4xLDAuMSAtMC4xLDAuMSAtMCwtMCAwLDAgMCwwLjMgbCAwLDMuMyAtMy4xLDAgMCwtNi43IHogbSAtMTguOCwwIDAsNi43IC0zLDAgMCwtMy43IGMgMCwtMC40IDIuNywtMi44IDMsLTMgeiBtIC03LDcuMSAzMi44LDAgLTE2LjQsMTUuOCAtMTYuNCwtMTUuOCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMzQsNzIuOSBjIC0wLjIsMCAtMC40LDAuMSAtMC43LDAuNCBsIDAsLTAuMiAtNDcuOSwwIGMgMC4yLDAuMiAwLjQsMC40IDAuNiwwLjcgMC42LDEgMS4xLDIuMyAxLjUsNCAwLjksMy40IDEuNCw4LjEgMS40LDEzLjIgMCw1LjIgLTAuNSw5LjggLTEuNCwxMy4yIC0wLjQsMS43IC0wLjksMy4xIC0xLjUsNCAtMC4yLDAuMyAtMC40LDAuNSAtMC42LDAuOCBsIDQ3LjksMCAwLC0wLjcgYyAwLjMsMC4zIDAuNSwwLjQgMC43LDAuNCAwLjMsMCAwLjcsLTAuMyAxLjMsLTEuMSAwLjUsLTAuOCAxLC0yLjIgMS40LC0zLjggMC44LC0zLjMgMS40LC03LjkgMS40LC0xMy4xIDAsLTUuMSAtMC41LC05LjggLTEuNCwtMTMuMSAtMC40LC0xLjcgLTAuOSwtMyAtMS40LC0zLjggLTAuNSwtMC44IC0xLC0xLjEgLTEuMywtMS4xIHogbSAtNTAuNywwLjIgYyAtMC4zLDAgLTAuNywwLjMgLTEuMywxLjEgLTAuNSwwLjggLTEsMi4yIC0xLjQsMy44IC0wLjgsMy4zIC0xLjQsNy45IC0xLjQsMTMuMSAwLDUuMSAwLjUsOS44IDEuNCwxMy4xIDAsMCAwLDAgMCwwIGwgLTAuOCwtMC4xIC0zLjMsMC40IC02LjIsLTAuMyAtMi45LDAgYyAtMC41LDAgLTAuOCwwLjEgLTEuMSwwLjMgMC40LDEuNiA4LjQsNC4zIDguNCw2LjUgMCwyLjMgLTEzLjIsMS4xIC0xMy4yLDMuMiBsIDAsMC4zIGMgMCwyLjQgNS42LDIuMyA4LDIuNyAxLjcsMC4zIDIuOCwwLjUgNCwxLjQgMS4zLDEgMC44LDMuMyAyLjIsMy4zIDIuOCwwIDUuNCwtMS43IDguNCwtMS43IGwgMS4zLDAgYyA2LjgsMCA3LjksNy4zIDEyLjMsNy45IDUuNywwLjcgOS45LC00LjggMTUuMiwtNC44IDEuOCwwIDQuNywxLjkgNy4zLDIuMyAyLjMsMC4yIDcsLTAuMiA3LC0yLjQgMCwtMy42IC0xMiwtNi41IC0xMiwtOS44IGwgMCwtMC4xIGMgMCwtMC45IDAuOSwtMS40IDEuNywtMS40IGwgMC4zLDAgYyAxLjQsMCAzLjksMC4zIDQuNywtMC43IC0wLjMsLTAuNCAtMi41LC0xLjcgLTMuMiwtMS43IGwgLTIwLjMsMC4xIC03LjEsLTAuMSAtOC4zLDAuMiBjIC0wLjcsLTAuNSAtMS4zLC0xLjggLTEuNywtMy41IDAuMywwLjcgMC41LDEuMyAwLjgsMS44IDAuNSwwLjggMSwxLjEgMS4zLDEuMSAwLjMsMCAwLjcsLTAuMyAxLjMsLTEuMSAwLjUsLTAuOCAxLC0yLjIgMS40LC0zLjggMC44LC0zLjMgMS40LC03LjkgMS40LC0xMy4xIDAsLTUuMSAtMC41LC05LjcgLTEuNCwtMTMuMSAtMC40LC0xLjcgLTAuOSwtMyAtMS40LC0zLjggLTAuNSwtMC44IC0xLC0xLjEgLTEuMywtMS4xIHogbSAyNy43LDEuMSAxNy40LDE3IC0xNy40LDE2LjkgLTE3LjQsLTE2LjkgMTcuNCwtMTcgeiBtIC0yLjIsMi45IC0zLjUsMy41IC0wLjEsMTAuNCAzLjYsMCAtMCwtMTMuOCB6IG0gNC4zLDAgMCwxMy44IDMuNiwwIDAsLTEwLjIgYyAwLC0wLjQgLTMuMiwtMy40IC0zLjYsLTMuNyB6IG0gNy4zLDcuMiAwLDYuNyAzLjEsMCAwLC0zLjMgYyAwLC0wLjMgLTAsLTAuMyAtMCwtMC4zIDAsMCAwLDAgMC4xLC0wLjEgbCAtMy4yLC0yLjkgeiBtIC0xOC44LDAgYyAtMC40LDAuMyAtMywyLjcgLTMsMyBsIDAsMy43IDMsMCAwLC02LjcgeiBtIC03LDcuMSAxNi40LDE1LjggMTYuNCwtMTUuOCAtMzIuOCwwIHpcIn1dLGlbXCJHUi5JTi5JQy5UT1hJQyBSRUxFQVNFIElOVkVOVE9SWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgxLjgsNjEgMCwxNS4yIDIsMCAwLC02LjQgMi4yLDAgYyAwLjgsNmUtNiAxLjUsMC4yIDEuOSwwLjUgMC41LDAuMyAxLDEgMS41LDIgbCAxLjksMy45IDIuMiwwIC0yLjEsLTQuMiBjIC0wLjQsLTAuOSAtMC44LC0xLjUgLTEuMywtMiAtMC40LC0wLjUgLTAuOCwtMC44IC0xLjMsLTAuOSAwLjgsLTAuMiAxLjUsLTAuNyAxLjksLTEuMyAwLjQsLTAuNiAwLjcsLTEuNCAwLjcsLTIuNCAtMmUtNSwtMS41IC0wLjQsLTIuNiAtMS4zLC0zLjMgLTAuOSwtMC43IC0yLjEsLTEuMSAtMy45LC0xLjEgbCAtNC42LDAgeiBtIDE0LjUsMCAwLDE1LjIgOS44LDAgMCwtMS43IC03LjcsMCAwLC01LjUgNy4yLDAgMCwtMS43IC03LjIsMCAwLC00LjUgNy41LDAgMCwtMS43IC05LjYsMCB6IG0gMTMuMiwwIDAsMTUuMiA5LjQsMCAwLC0xLjcgLTcuNCwwIDAsLTEzLjQgLTIsMCB6IG0gLTI1LjYsMS43IDIuNiwwIGMgMSwxLjRlLTUgMS43LDAuMiAyLjIsMC43IDAuNSwwLjQgMC44LDEuMSAwLjgsMiAtMTBlLTYsMC45IC0wLjMsMS42IC0wLjgsMiAtMC41LDAuNSAtMS4yLDAuNyAtMi4yLDAuNyBsIC0yLjYsMCAwLC01LjQgeiBtIDE2LDE0LjcgYyAtNC4zLDEuMWUtNSAtOC4zLDAuNCAtMTEuMiwxLjIgLTEuNCwwLjQgLTIuNiwwLjggLTMuNSwxLjMgLTAuNywwLjQgLTEuMiwwLjkgLTEuNCwxLjUgbCAtMC4xLDAgMCwwLjYgYyAtMy4xZS01LDAgMCwwIDAsMCBsIDAsMzEuMSAtMC4yLC0wLjcgYyAtMC4xLDAgLTEuMSwwLjEgLTIuNCwwIC0xLjIsLTAuMSAtMi43LC0wLjIgLTQuMiwtMC4zIC0xLjUsLTAuMSAtMi45LC0wLjIgLTQsLTAuMSAtMC42LDAgLTEuMSwwIC0xLjUsMC4xIC0wLjIsMCAtMC40LDAuMSAtMC42LDAuMiAtMC4yLDAuMSAtMC40LDAuMiAtMC42LDAuNSAtMC4zLDAuNCAtMC40LDAuOSAtMC4zLDEuNCAwLjEsMC41IDAuMywwLjggMC41LDEuMiAwLjUsMC43IDEuMiwxLjIgMS45LDEuNyAwLjcsMC41IDEuNCwxIDEuOSwxLjUgMC41LDAuNSAwLjcsMC45IDAuNiwxLjIgLTAsMC4xIC0wLDAuMiAtMC4yLDAuMyAtMC4yLDAuMiAtMC42LDAuMyAtMSwwLjUgLTAuOSwwLjMgLTIuMiwwLjUgLTMuNSwwLjcgLTEuMywwLjIgLTIuNywwLjMgLTMuNywwLjUgLTAuNSwwLjEgLTEsMC4yIC0xLjQsMC40IC0wLjIsMC4xIC0wLjQsMC4yIC0wLjYsMC4zIC0wLjIsMC4yIC0wLjQsMC40IC0wLjQsMC43IC0wLjEsMC45IDAuMywxLjcgMSwyLjMgMC43LDAuNiAxLjUsMS4xIDIuNiwxLjYgMi4xLDAuOSA0LjksMS43IDcuOSwyLjQgMi45LDAuNyA1LjksMS4yIDguMywxLjcgMi40LDAuNCA0LjQsMC44IDQuOCwwLjkgMiwwLjYgMy4zLDEuOCA0LjksMy4yIDEuNSwxLjMgMy4yLDIuOCA1LjgsMy41IDMsMC44IDYuMiwtMC42IDkuNCwtMiAzLjIsLTEuNCA2LjQsLTIuOCA5LjEsLTIuNSAwLjEsMCAxLDAuMiAxLjksMC41IDEsMC4zIDIuMiwwLjYgMy40LDAuOCAxLjIsMC4zIDIuNCwwLjUgMy41LDAuNiAxLjEsMC4xIDIsMC4yIDIuNywtMC41IDAuOCwtMC43IDEuMywtMS40IDEuNCwtMi4xIDAuMiwtMC44IC0wLC0xLjUgLTAuNCwtMi4yIC0wLjgsLTEuMyAtMi4yLC0yLjMgLTMuOSwtMy4yIC0xLjYsLTAuOSAtMy41LC0xLjggLTUsLTIuNiAtMS41LC0wLjggLTIuNywtMS42IC0zLC0xLjkgLTAuMiwtMC4zIC0wLjIsLTAuMiAtMC4xLC0wLjQgMC4xLC0wLjEgMC4zLC0wLjQgMC43LC0wLjcgMC44LC0wLjUgMi4yLC0xIDMuMiwtMS41IDAuNSwtMC4zIDEsLTAuNSAxLjMsLTEgMC4yLC0wLjMgMC4zLC0wLjcgMC4yLC0xIC0wLjEsLTAuNCAtMC4zLC0wLjYgLTAuNiwtMC44IC0wLjUsLTAuNCAtMS4yLC0wLjcgLTIuMywtMS4xIC0xLjEsLTAuMyAtMi42LC0wLjcgLTQuNiwtMS4xIGwgLTAuMywxLjMgMCwtMzUuNCAwLC0wLjYgLTAuMSwwIGMgLTAuMiwtMC42IC0wLjcsLTEuMSAtMS40LC0xLjUgLTAuOSwtMC41IC0yLjEsLTEgLTMuNSwtMS4zIC0yLjksLTAuNyAtNi44LC0xLjIgLTExLjIsLTEuMiB6IG0gMCwxLjIgYyA0LjMsLTEuMWUtNSA4LjEsMC40IDEwLjksMS4xIDEuNCwwLjQgMi41LDAuOCAzLjIsMS4yIDAuMywwLjIgMC40LDAuMyAwLjYsMC41IDAuMSwwLjEgMC4yLDAuMiAwLjMsMC4zIDAsMCAwLDAgMCwwLjEgMCwwIDAsMC4xIDAsMC4xIDAsMCAwLDAuMSAwLDAuMSAwLDAgLTAsMC4xIC0wLDAuMSAtMCwwIC0wLDAgLTAsMCAtMCwwIC0wLDAgLTAsMC4xIC0wLDAgLTAsMCAtMCwwLjEgLTAsMCAtMCwwIC0wLDAuMSAtMCwwIC0wLDAuMSAtMC4xLDAuMSAtMCwwLjEgLTAuMSwwLjEgLTAuMSwwLjIgLTAsMCAtMCwwIC0wLDAgLTAuMSwwLjEgLTAuMywwLjMgLTAuNiwwLjUgLTAuNywwLjQgLTEuOCwwLjggLTMuMiwxLjIgLTIuOCwwLjcgLTYuNiwxLjIgLTEwLjksMS4yIC00LjMsMS4xZS01IC04LjEsLTAuNCAtMTAuOSwtMS4xIC0xLjQsLTAuNCAtMi41LC0wLjggLTMuMiwtMS4yIC0wLjMsLTAuMiAtMC41LC0wLjMgLTAuNiwtMC41IC0wLC0wIC0wLjEsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAgLTAsLTAuMSAtMC4xLC0wLjEgLTAsLTAuMSAtMC4xLC0wLjEgLTAuMSwtMC4yIDAsLTAgMCwtMC4xIDAsLTAuMSAwLjEsLTAuMiAwLjMsLTAuNiAwLjksLTAuOSAwLjcsLTAuNCAxLjgsLTAuOCAzLjIsLTEuMiAyLjgsLTAuNyA2LjYsLTEuMSAxMC45LC0xLjEgeiBtIDE1LDUuMyAwLDM0LjEgMCwwIDAsNS42IGMgMC4xLDAuMiAwLjIsMC4zIDAuMiwwLjQgMCwwLjIgLTAuMiwwLjYgLTAuOSwxLjEgLTAuNywwLjQgLTEuOCwwLjggLTMuMiwxLjIgLTIuOCwwLjcgLTYuNiwxLjEgLTEwLjksMS4xIC00LjMsMWUtNSAtOC4xLC0wLjQgLTEwLjksLTEuMSAtMS40LC0wLjQgLTIuNSwtMC44IC0zLjIsLTEuMiAtMC42LC0wLjQgLTAuOSwtMC43IC0wLjksLTEgbCAtMCwwIDAsLTAuMSAwLC0xLjkgYyAtMC4xLDAuMSAtMC4xLDAuMSAtMC4yLDAuMSBsIDAsLTM4LjQgYyAwLjEsMC4xIDAuMiwwLjEgMC4zLDAuMiAwLjksMC41IDIuMSwxIDMuNSwxLjMgMi45LDAuNyA2LjgsMS4yIDExLjIsMS4yIDQuMywtMS4yZS01IDguMywtMC41IDExLjIsLTEuMiAxLjQsLTAuNCAyLjYsLTAuOCAzLjUsLTEuMyAwLjEsLTAuMSAwLjIsLTAuMSAwLjMsLTAuMiB6IG0gLTE1LjIsNi4xIC0xNC42LDE0LjIgMTQuMiwxMy44IDAuOCwwIDE0LjIsLTEzLjggLTE0LjYsLTE0LjMgeiBtIC0xLjgsMi40IDAsMTEuNiAtMy4xLDAgMC4xLC04LjcgMywtMi45IHogbSAzLjYsMCBjIDAuNCwwLjMgMywyLjcgMywzIGwgMCw4LjUgLTMsMCAwLC0xMS42IHogbSAtOS43LDYgMCw1LjYgLTIuNSwwIDAsLTMuMSBjIDAsLTAuMyAyLjIsLTIuMyAyLjUsLTIuNSB6IG0gMTUuOCwwIDIuNiwyLjUgYyAtMC4xLDAuMyAtMC4xLC0wLjEgLTAuMSwwLjMgbCAwLDIuOCAtMi41LDAgMCwtNS42IHogbSAtMjEuNyw2IDI3LjUsMCAtMTMuOCwxMy4zIC0xMy43LC0xMy4zIHogbSAtMTIuOCw5LjMgYyAxLjEsLTAgMi41LDAgMy45LDAuMSAxLjQsMC4xIDIuOSwwLjIgNC4yLDAuMyAxLjEsMC4xIDEuOSwwLjEgMi42LC0wIGwgMCwxMCAwLDAuNiAwLjMsMCBjIDAuMiwwLjYgMC43LDEuMSAxLjQsMS41IDAuOSwwLjUgMi4xLDEgMy41LDEuMyAyLjksMC43IDYuOCwxLjIgMTEuMiwxLjIgNC4zLC0xZS01IDguMywtMC40IDExLjIsLTEuMiAxLjQsLTAuNCAyLjYsLTAuOCAzLjUsLTEuMyAwLjksLTAuNSAxLjUsLTEuMiAxLjUsLTIuMSAwLC0wLjMgLTAuMSwtMC41IC0wLjIsLTAuOCBsIDAsLTUuNiBjIDEuOSwwLjQgMy40LDAuOCA0LjQsMS4xIDAuOSwwLjMgMS4zLDAuNSAxLjYsMC43IC0wLjEsMC4xIC0wLjEsMC4xIC0wLjQsMC4zIC0wLjgsMC40IC0yLjIsMC45IC0zLjMsMS42IC0wLjUsMC4zIC0xLDAuNyAtMS4zLDEuMyAtMC4zLDAuNiAtMC4yLDEuNCAwLjIsMiAwLjcsMSAyLDEuNiAzLjUsMi40IDEuNiwwLjggMy40LDEuNiA0LjksMi41IDEuNSwwLjkgMi44LDEuOSAzLjMsMi43IDAuMiwwLjQgMC4zLDAuNyAwLjIsMSAtMC4xLDAuMyAtMC4zLDAuOCAtMC45LDEuMyAwLC0wIC0wLjYsMC4yIC0xLjUsMC4xIC0wLjksLTAuMSAtMi4xLC0wLjMgLTMuMywtMC42IC0xLjIsLTAuMyAtMi40LC0wLjYgLTMuMywtMC44IC0xLC0wLjMgLTEuNywtMC41IC0yLjIsLTAuNSAtMy4zLC0wLjMgLTYuNywxLjMgLTkuOSwyLjcgLTMuMiwxLjQgLTYuMSwyLjUgLTguNCwxLjkgLTIuMywtMC42IC0zLjcsLTEuOCAtNS4yLC0zLjIgLTEuNSwtMS4zIC0zLjEsLTIuOCAtNS41LC0zLjUgLTAuOCwtMC4yIC0yLjUsLTAuNSAtNSwtMC45IC0yLjQsLTAuNCAtNS40LC0xIC04LjMsLTEuNiAtMi45LC0wLjcgLTUuNiwtMS41IC03LjYsLTIuMyAtMSwtMC40IC0xLjcsLTAuOSAtMi4yLC0xLjMgLTAuMywtMC4zIC0wLjQsLTAuNSAtMC41LC0wLjcgMC4yLC0wLjEgMC42LC0wLjIgMS4xLC0wLjMgMSwtMC4yIDIuMywtMC4zIDMuNiwtMC41IDEuNCwtMC4yIDIuNywtMC40IDMuOSwtMC44IDAuNiwtMC4yIDEuMSwtMC40IDEuNSwtMC44IDAuNCwtMC4zIDAuOCwtMC44IDAuOCwtMS40IDAuMSwtMSAtMC40LC0xLjggLTEuMSwtMi41IC0wLjYsLTAuNyAtMS40LC0xLjIgLTIuMSwtMS43IC0wLjcsLTAuNSAtMS4zLC0xIC0xLjYsLTEuNCAtMC4xLC0wLjIgLTAuMiwtMC4zIC0wLjIsLTAuNCAtMCwtMC4xIDAsLTAuMSAwLjEsLTAuMiAwLC0wIDAuMSwtMCAwLjEsLTAgMC4zLC0wIDAuNywtMC4xIDEuMiwtMC4xIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg1LjgsMTA0LjQgMTMuNywxMy4zIDEzLjgsLTEzLjMgeiBtIDIxLjcsLTAuNCBoIDIuNSB2IC0yLjggYyAwLC0wLjUgLTAsLTAuMSAwLjEsLTAuNCBsIC0yLjcsLTIuNCB2IDUuNiB6IG0gLTYuMSwwIGggMy4xIHYgLTguNSBjIDAsLTAuMyAtMi43LC0yLjggLTMuMSwtMy4xIHYgMTEuNiB6IG0gLTYuNiwtOC43IC0wLjEsOC43IDMuMSwwIC0wLC0xMS42IHogbSAtNS43LDUuNiB2IDMuMSBoIDIuNSB2IC01LjYgYyAtMC4zLDAuMiAtMi41LDIuMiAtMi41LDIuNSB6IE0gOTkuOCw4NS40IGMgLTQuMywxLjJlLTUgLTguMSwtMC40IC0xMC45LC0xLjEgLTEuNCwtMC40IC0yLjUsLTAuOCAtMy4yLC0xLjIgLTAuNywtMC40IC0wLjksLTAuOCAtMC45LC0xIDAsLTAuMiAwLjIsLTAuNiAwLjksLTEgMC43LC0wLjQgMS44LC0wLjggMy4yLC0xLjIgMi44LC0wLjcgNi42LC0xLjIgMTAuOSwtMS4yIDQuMywtMS4xZS01IDguMSwwLjQgMTAuOSwxLjEgMS40LDAuNCAyLjUsMC44IDMuMiwxLjIgMC43LDAuNCAwLjksMC44IDAuOSwxIDAsMC4yIC0wLjIsMC42IC0wLjksMSAtMC43LDAuNCAtMS44LDAuOCAtMy4yLDEuMiAtMi44LDAuNyAtNi42LDEuMiAtMTAuOSwxLjIgeiBtIC0xNSwtMS41IDAsMzguNCBjIDAuMSwtMC4xIDAuMSwtMC4xIDAuMiwtMC4xIGwgMCwxLjggMCwwLjEgMCwwIGMgMCwwLjIgMC4zLDAuNiAwLjksMC45IDAuNywwLjQgMS44LDAuOSAzLjIsMS4yIDIuOCwwLjcgNi42LDEuMiAxMC45LDEuMiA0LjMsLTFlLTUgOC4yLC0wLjUgMTAuOSwtMS4yIDEuNCwtMC40IDIuNCwtMC44IDMuMiwtMS4yIDAuNywtMC40IDAuOSwtMC44IDAuOSwtMSAwLC0wLjEgLTAsLTAuMiAtMC4yLC0wLjQgbCAwLC01LjYgLTAsMCAwLC0zNC4xIGMgLTAuMSwwLjEgLTAuMiwwLjEgLTAuMywwLjIgLTAuOSwwLjUgLTIuMSwxIC0zLjUsMS4zIC0yLjksMC43IC02LjgsMS4yIC0xMS4yLDEuMiAtNC4zLDEuMWUtNSAtOC4zLC0wLjQgLTExLjIsLTEuMiAtMS40LC0wLjQgLTIuNiwtMC44IC0zLjUsLTEuMyAtMC4xLC0wLjEgLTAuMiwtMC4xIC0wLjMsLTAuMiB6IG0gMTQuOCw2LjEgMTQuNiwxNC4zIC0xNC4yLDEzLjggLTAuOCwwIEwgODUsMTA0LjIgOTkuNiw5MCB6IG0gLTI2LjcsMjMuNyBjIDEuMSwtMCAyLjUsMCAzLjksMC4xIDEuNCwwLjEgMi45LDAuMiA0LjIsMC4zIDEuMSwwLjEgMS45LDAuMSAyLjYsLTAgbCAwLDEwIDAsMC42IDAuMywwIGMgMC4yLDAuNiAwLjcsMS4xIDEuNCwxLjUgMC45LDAuNSAyLjEsMSAzLjUsMS4zIDIuOSwwLjcgNi44LDEuMiAxMS4yLDEuMiA0LjMsLTFlLTUgOC4zLC0wLjQgMTEuMiwtMS4yIDEuNCwtMC40IDIuNiwtMC44IDMuNSwtMS4zIDAuOSwtMC41IDEuNSwtMS4yIDEuNSwtMi4xIDAsLTAuMyAtMC4xLC0wLjUgLTAuMiwtMC44IGwgMCwtNS42IGMgMS45LDAuNCAzLjQsMC44IDQuNCwxLjEgMC45LDAuMyAxLjMsMC41IDEuNiwwLjcgLTAuMSwwLjEgLTAuMSwwLjEgLTAuNCwwLjMgLTAuOCwwLjQgLTIuMiwwLjkgLTMuMywxLjYgLTAuNSwwLjMgLTEsMC43IC0xLjMsMS4zIC0wLjMsMC42IC0wLjIsMS40IDAuMiwyIDAuNywxIDIsMS42IDMuNSwyLjQgMS42LDAuOCAzLjQsMS42IDQuOSwyLjUgMS41LDAuOSAyLjgsMS45IDMuMywyLjcgMC4yLDAuNCAwLjMsMC43IDAuMiwxIC0wLjEsMC4zIC0wLjMsMC44IC0wLjksMS4zIDAsLTAgLTAuNiwwLjIgLTEuNSwwLjEgLTAuOSwtMC4xIC0yLjEsLTAuMyAtMy4zLC0wLjYgLTEuMiwtMC4zIC0yLjQsLTAuNiAtMy4zLC0wLjggLTEsLTAuMyAtMS43LC0wLjUgLTIuMiwtMC41IC0zLjMsLTAuMyAtNi43LDEuMyAtOS45LDIuNyAtMy4yLDEuNCAtNi4xLDIuNSAtOC40LDEuOSAtMi4zLC0wLjYgLTMuNywtMS44IC01LjIsLTMuMiAtMS41LC0xLjMgLTMuMSwtMi44IC01LjUsLTMuNSAtMC44LC0wLjIgLTIuNSwtMC41IC01LC0wLjkgLTIuNCwtMC40IC01LjQsLTEgLTguMywtMS42IC0yLjksLTAuNyAtNS42LC0xLjUgLTcuNiwtMi4zIC0xLC0wLjQgLTEuNywtMC45IC0yLjIsLTEuMyAtMC4zLC0wLjMgLTAuNCwtMC41IC0wLjUsLTAuNyAwLjIsLTAuMSAwLjYsLTAuMiAxLjEsLTAuMyAxLC0wLjIgMi4zLC0wLjMgMy42LC0wLjUgMS40LC0wLjIgMi43LC0wLjQgMy45LC0wLjggMC42LC0wLjIgMS4xLC0wLjQgMS41LC0wLjggMC40LC0wLjMgMC44LC0wLjggMC44LC0xLjQgMC4xLC0xIC0wLjQsLTEuOCAtMS4xLC0yLjUgLTAuNiwtMC43IC0xLjQsLTEuMiAtMi4xLC0xLjcgLTAuNywtMC41IC0xLjMsLTEgLTEuNiwtMS40IC0wLjEsLTAuMiAtMC4yLC0wLjMgLTAuMiwtMC40IC0wLC0wLjEgMCwtMC4xIDAuMSwtMC4yIDAsLTAgMC4xLC0wIDAuMSwtMCAwLjMsLTAgMC43LC0wLjEgMS4yLC0wLjEgelwifV0saVtcIkdSLklOLklDLkNPTExFR0UvVU5JVkVSU0lUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk3LjQsMTA2LjkgaCAtMTQuOCB2IDMxLjcgaCAzMiB2IC0zMS43IEggOTkuOCBWIDk1LjEgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBoIC0yLjMgdiAyNC41IHogbSAyMy4zLC0zMC4xIC05LjYsMCAwLC0xNS4xIDIsMCAwLDEzLjMgNy42LDAgMCwxLjggTSAxMDYsNjMuNSBjIDAuNiwwLjcgMS4xLDEuNSAxLjQsMi41IDAuMywxIDAuNSwyLjEgMC41LDMuMyAtMWUtNSwxLjIgLTAuMiwyLjQgLTAuNSwzLjQgLTAuMywxIC0wLjgsMS44IC0xLjQsMi41IC0wLjYsMC43IC0xLjQsMS4yIC0yLjIsMS41IC0wLjgsMC4zIC0xLjgsMC41IC0yLjksMC41IC0xLjEsMCAtMiwtMC4yIC0yLjksLTAuNSAtMC45LC0wLjQgLTEuNiwtMC45IC0yLjIsLTEuNSAtMC42LC0wLjcgLTEuMSwtMS41IC0xLjQsLTIuNSAtMC4zLC0xIC0wLjUsLTIuMSAtMC41LC0zLjMgLTEwZS03LC0xLjIgMC4yLC0yLjMgMC41LC0zLjMgMC4zLC0xIDAuOCwtMS44IDEuNCwtMi41IDAuNiwtMC43IDEuMywtMS4yIDIuMiwtMS41IDAuOSwtMC40IDEuOSwtMC41IDIuOSwtMC41IDEuMSwxLjVlLTUgMi4xLDAuMiAyLjksMC41IDAuOSwwLjQgMS42LDAuOSAyLjIsMS41IG0gLTAuMiw1LjggYyAtMmUtNSwtMiAtMC40LC0zLjUgLTEuMywtNC41IC0wLjksLTEuMSAtMi4xLC0xLjYgLTMuNiwtMS42IC0xLjUsMS40ZS01IC0yLjcsMC41IC0zLjYsMS42IC0wLjksMS4xIC0xLjMsMi42IC0xLjMsNC41IC0zZS02LDIgMC40LDMuNSAxLjMsNC42IDAuOSwxIDIuMSwxLjYgMy42LDEuNiAxLjUsMmUtNiAyLjcsLTAuNSAzLjYsLTEuNiAwLjksLTEuMSAxLjMsLTIuNiAxLjMsLTQuNiBtIC0xNCw2LjUgYyAtMC40LDAuMiAtMC43LDAuMyAtMSwwLjUgLTAuMywwLjEgLTAuNywwLjMgLTEuMiwwLjQgLTAuNCwwLjEgLTAuOSwwLjIgLTEuNCwwLjMgLTAuNSwwLjEgLTEsMC4xIC0xLjYsMC4xIC0xLjEsMCAtMi4xLC0wLjIgLTMsLTAuNSAtMC45LC0wLjMgLTEuNywtMC44IC0yLjMsLTEuNSAtMC43LC0wLjYgLTEuMiwtMS41IC0xLjUsLTIuNCAtMC40LC0xIC0wLjUsLTIuMSAtMC41LC0zLjUgLTEwZS03LC0xLjIgMC4yLC0yLjQgMC41LC0zLjMgMC40LC0xIDAuOSwtMS44IDEuNSwtMi41IDAuNiwtMC43IDEuNCwtMS4yIDIuMywtMS41IDAuOSwtMC4zIDEuOSwtMC41IDMsLTAuNSAwLjgsMS41ZS01IDEuNiwwLjEgMi40LDAuMyAwLjgsMC4yIDEuNywwLjUgMi43LDEgbCAwLDIuNCAtMC4yLDAgYyAtMC44LC0wLjcgLTEuNywtMS4yIC0yLjUsLTEuNSAtMC44LC0wLjMgLTEuNywtMC41IC0yLjYsLTAuNSAtMC44LDEuNGUtNSAtMS41LDAuMSAtMi4xLDAuNCAtMC42LDAuMiAtMS4yLDAuNiAtMS42LDEuMSAtMC41LDAuNSAtMC44LDEuMiAtMS4xLDEuOSAtMC4zLDAuOCAtMC40LDEuNyAtMC40LDIuNyAtM2UtNiwxLjEgMC4xLDIgMC40LDIuNyAwLjMsMC44IDAuNywxLjQgMS4xLDEuOSAwLjUsMC41IDEsMC45IDEuNywxLjEgMC42LDAuMiAxLjMsMC40IDIsMC40IDEsMmUtNiAxLjksLTAuMiAyLjcsLTAuNSAwLjgsLTAuMyAxLjYsLTAuOCAyLjQsLTEuNSBsIDAuMSwwIDAsMi40XCJ9XSxpW1wiR1IuSU4uSUMuU0NIT09MXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gOTguNCw5Ni40IEggODMuNyB2IDMxLjcgaCAzMiBWIDk2LjQgSCAxMDAuOSBWIDg0LjYgYyAwLC0wLjYgNi41LC0zIDcuNSwtMy40IDEuMywtMC41IDYuOSwtMyA3LjksLTMgLTAuMywtMC40IC0xNC43LC02LjMgLTE1LjcsLTYuMyBIIDk4LjQgViA5Ni40IHpcIn1dLGlbXCJHUi5JTi5JQy5SRVNUIFNUT1BcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDguNCw4OS42IHYgLTAuNCBsIDAuNiwtMC42IC0wLjQsMS40IC0zLjgsMTMuNCAtMC4yLDAuOCAtMC40LDAuNiAwLDAuOSAtMiw2LjcgNy4yLDAgdiAxOS43IGggNS4yIHYgLTE5LjcgaCAyLjcgdiAxOS43IGggNS4yIHYgLTE5LjcgaCA3LjEgbCAtMS4zLC01LjMgLTAuMiwtMC44IC00LjgsLTE2LjQgLTAuNSwtMS40IDAuNiwwLjcgMC4xLDAuNCBjIDIuMSwyLjQgNS40LDE0LjIgOC42LDE0LjIgaCAwLjQgYyAxLjIsMCAyLjEsLTEuMSAyLjEsLTIuMyB2IC0wLjYgYyAwLC0wLjUgLTQuOCwtMTAgLTUuMywtMTEuNiAtMC43LC0yIC0xLjcsLTQuMiAtMi42LC02IC0xLC0yLjEgLTEuMiwtMy44IC00LjYsLTMuOCBoIC0xMi40IGMgLTMuNCwwIC0zLjYsMS44IC00LjcsMy45IC0wLjksMS43IC0xLjksNCAtMi41LDUuOSAtMC42LDEuNiAtNS4yLDExLjEgLTUuMiwxMS42IHYgMC42IGMgMCwxLjMgMC42LDIuMyAxLjksMi4zIGggMC44IGMgMi40LDAgNi40LC0xMi4yIDguMiwtMTQuMiB6IG0gMC4yLDAuNCAwLjQsLTEuNSAtMC42LDAuNiAwLDAuNCB6IG0gMTUuMSwtMC40IC0wLjEsLTAuNCAtMC42LC0wLjYgMC41LDEuNCB6IE0gNjkuNiw4OC44IGggMi4zIHYgNDMuNiBoIDYuMSB2IC0yNS42IGggMi43IHYgMjUuNiBoIDUuOSB2IC00My42IGggMi4zIHYgMTYuNCBoIDQuNiBWIDg2LjMgbCAtMC4zLC0yLjMgaCAtMC40IGMgMCwtMi4zIC0xLjcsLTQuNCAtNCwtNC40IEggNjkuNiBjIC0zLDAgLTQuNCwzLjQgLTQuNCw2LjUgdiAxOS4xIGggNC40IFYgODguOCB6IE0gMTEwLjcsNzIuOCBjIDAsMi43IDIuNCw1LjQgNSw1LjQgaCAwLjIgYyAxLjYsMCAyLjgsLTAuNiAzLjYsLTEuNCAwLjUsLTAuNCAxLjgsLTIuNCAxLjgsLTMgdiAtMS42IGMgMCwtMi40IC0yLjgsLTQuNiAtNS40LC00LjYgLTMsLTAgLTUuMiwyLjQgLTUuMiw1LjIgeiBtIC0zNi43LDEuMSBjIDAsMiAyLjgsNC40IDUsNC40IGggMC4yIGMgNC4yLDAgNC4zLC0zLjQgNS4yLC0zLjggViA3MS42IGMgMCwtMS44IC0yLjgsLTQgLTUuMiwtNCAtMi4zLDAgLTUuMiwyLjIgLTUuMiw0IHYgMi4zIHpcIn1dLGlbXCJHUi5JTi5JQy5DT05UUk9MIFZBTFZFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE0LDExNC41IGggMTUuNyB2IDQgaCA5LjEgdiAtMjMuNiBoIC05LjEgViA5OC44IEggMTE0LjQgYyAtMC40LDAgLTIuNiwtMi42IC0yLjYsLTMuNCB2IC01LjYgaCAtOS45IHYgLTguMiBoIDEyLjMgdiAtMy42IGggLTI4LjIgdiAzLjYgaCAxMi4xIHYgOC4zIEggODkuMiB2IDYuNiBsIC0wLjIsLTAuMiAtMS44LDIuNCAtMTcuMiwwLjEgViA5NSBIIDYxLjIgdiAyMy42IGggOC45IHYgLTQgSCA4NyBjIDAuNCwwIDIsMi40IDIuNCwyLjggMC41LDAuNiAyLjIsMS45IDIuOSwyLjQgMS45LDEuMiA0LjcsMi40IDcuOCwyLjQgaCAwLjYgYyAzLjUsMCA1LjgsLTEgOC4xLC0yLjQgMS40LC0wLjggNC44LC0zLjggNS4yLC01LjMgelwifV0saVtcIkdSLklOLklDLkRBTVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDY4LjMsODkuMSBjIDIuMywwIDMuMiwtMS43IDQuNiwtMi42IDEuMSwwLjggMi4yLDIuNiA0LjQsMi42IGggMC4yIGMgMi42LDAgMy4zLC0xLjcgNC43LC0yLjYgMS40LDAuOSAyLjIsMi42IDQuNywyLjYgMi40LDAgMy4zLC0xLjggNC42LC0yLjYgMC42LDAuNCAxLjEsMS4xIDEuOSwxLjYgMC40LDAuMiAyLjIsMC45IDIuMiwxLjMgdiA2LjggQyA5NC4xLDk1LjggOTEuOCw5My44IDkxLjUsOTIuNiBoIC0wLjMgYyAtMC4zLDEuMSAtMywzLjYgLTQuNSwzLjYgLTEuNSwwIC00LjEsLTIuNiAtNC40LC0zLjggLTEsMC42IC0yLjYsMy44IC00LjYsMy44IGggLTAuNCBjIC0xLjIsMCAtNCwtMi43IC00LjIsLTMuNyAtMC44LDAuMiAtMi42LDMuNyAtNC43LDMuNyBoIC0wLjMgYyAtMS4xLDAgLTEuNywtMC43IC0yLjQsLTEuMiBsIC0xLDEuMiBjIDEsMC43IDEuNiwxLjggMy4yLDEuOCBoIDAuNCBjIDIuMywwIDMuMSwtMS44IDQuNiwtMi44IDAuNywxLjEgMi44LDIuOCA0LjcsMi44IDIuMywwIDMuMywtMiA0LjYsLTIuOCAxLjIsMC44IDIuNiwyLjggNC43LDIuOCAyLjEsMCAzLjQsLTIuMSA0LjcsLTIuOCAwLjcsMSAyLjYsMi40IDQsMi43IHYgNyBjIC0xLjQsLTAuMSAtMy40LC0yLjQgLTQsLTMuNSAtMS4xLDAuNyAtMi41LDMuNiAtNC43LDMuNiBoIC0wLjEgYyAtMi4zLDAgLTQuMSwtMy41IC00LjcsLTMuNyAtMC4zLDEgLTMsMy43IC00LjEsMy43IGggLTAuNCBjIC0yLjIsMCAtMy42LC0yLjkgLTQuNywtMy43IC0wLjYsMSAtMi44LDMuNyAtNC4xLDMuNyBIIDY3LjcgYyAtMC43LDAgLTEuNywtMSAtMi4yLC0xLjMgbCAtMC45LDEuNSBjIDEuMSwwLjcgMS43LDEuNiAzLjYsMS42IDIuNywwIDMuMSwtMS44IDQuNywtMi42IDEuNCwwLjkgMiwyLjYgNC43LDIuNiAyLjIsMCAzLjQsLTEuOCA0LjYsLTIuNiAxLjQsMSAyLjUsMi42IDQuOCwyLjYgMS44LDAgMy40LC0yIDQuNCwtMi42IDAuOSwwLjUgMSwxIDIsMS42IDAuNCwwLjMgMi4yLDAuNyAyLjIsMS4yIHYgNi44IGMgLTEuNCwtMC4zIC0zLjYsLTIuMiAtNCwtMy41IC0xLjEsMC43IC0yLjUsMy44IC00LjgsMy44IC0xLjQsMCAtNC4xLC0yLjYgLTQuNCwtMy44IC0xLjIsMC44IC0yLjYsMy44IC00LjgsMy44IC0yLDAgLTMuNywtMy4yIC00LjcsLTMuOCAtMC4zLDEgLTMsMy44IC00LjMsMy44IGggLTAuNiBjIC0wLjgsMCAtMS44LC0xIC0yLjQsLTEuMyBsIC0wLjksMS4zIGMgMS4xLDAuNyAxLjgsMS44IDMuNiwxLjggMi4yLDAgMy4zLC0xLjggNC43LC0yLjggMS4yLDAuOCAyLjYsMi45IDQuNywyLjggMi4zLC0wLjEgMy4zLC0xLjkgNC42LC0yLjggMS4yLDAuOCAyLjcsMi44IDQuNywyLjggMS45LDAgMy40LC0yIDQuNiwtMi44IDEuNiwxIDEuOCwyIDQuMSwyLjUgdiA1IGggMTcgbCAtMS40LC01LjIgYyAwLjgsMC4yIDEsMC42IDIuMiwwLjYgMiwwIDMuMywtMS45IDQuNiwtMi44IDEuMywwLjkgMi40LDIuOCA0LjcsMi44IDEuNiwwIDMuOCwtMS44IDQuNCwtMi44IDEuMywwLjMgMi41LDIuOCA1LjEsMi44IDEuMiwwIDIuNiwtMS40IDMuNCwtMS44IGwgLTEsLTEuMyBjIC0wLjcsMC40IC0xLjUsMS4zIC0yLjYsMS4zIC0yLjEsMCAtMy43LC0zLjEgLTQuNywtMy44IC0wLjcsMS40IC0yLjcsMy44IC00LjcsMy44IC0xLjMsMCAtNC4zLC0yLjYgLTQuNCwtMy44IC0xLDAuNyAtMi42LDMuOCAtNC43LDMuOCBoIC0wLjIgYyAtMS4xLDAgLTIuMiwtMC45IC0yLjcsLTEuNSAtMC40LC0wLjQgLTAuOCwtMi41IC0xLjEsLTMuMiAtMC40LC0xIC0xLjgsLTUuNiAtMS44LC02LjYgbCAtMC4zLC0wLjQgMCwtMC42IC0wLjMsLTAuNCB2IC0wLjYgbCAtMC4zLC0wLjQgLTUuMywtMTguNiAwLjIsLTAgLTAuMywtMC40IDAsLTAuNiBjIC0wLjIsLTAuMyAtMC4zLC0wLjMgLTAuMywtMC42IHYgLTAuNCBoIC01LjYgdiA3LjggYyAtMS40LC0wLjcgLTEuMiwtMC41IC0yLjQsLTEuNiAtMC4xLC0wLjEgLTEsLTAuOSAtMSwtMSAtMC40LC0wLjUgLTAuMSwtMC45IC0wLjgsLTEuMSAtMC4xLDEuMiAtMy4xLDMuOCAtNC4zLDMuOCBoIC0wLjIgYyAtMi41LDAgLTQuMiwtMy42IC00LjgsLTMuOCAtMC4zLDEuMSAtMywzLjggLTQuMiwzLjggaCAtMC40IGMgLTEuMiwwIC00LjIsLTIuNyAtNC4yLC0zLjggLTAuNSwwLjEgLTIuOCwzLjggLTQuNCwzLjggSCA2Ny43IGMgLTAuNywwIC0xLjcsLTEgLTIuMiwtMS4zIGwgLTAuOSwxLjMgYyAxLDAuNyAxLjYsMS42IDMuNCwxLjYgaCAwLjMgdiAwIHpcIn1dLGlbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDYzLjIsMTExLjQgdiAxMy40IGggNzMuNiBWIDExMS43IGwgLTMuMSwwLjUgLTEuMSwtMC4xIGMgLTIuMiwwIC0zLjYsLTAuNyAtNC45LC0xLjYgLTAuNiwtMC40IC0xLjEsLTEuMSAtMS41LC0xLjggLTAuNCwtMC42IC0wLjIsLTIuMSAtMSwtMi4xIGggLTAuNCBjIC0wLjgsMCAtMC43LDEuNiAtMS4yLDIuMiAtMC40LDAuNiAtMC45LDEuMiAtMS42LDEuNyAtMS4zLDEgLTMsMS42IC01LjEsMS42IGggLTAuOSBjIC0zLjIsMCAtNi44LC0yLjEgLTYuOCwtNS4xIC0wLjMsLTAuMiAtMC40LC0wLjQgLTAuOCwtMC40IGggLTAuMyBjIC0wLjcsMCAtMC44LDEuNSAtMS4xLDIuMSAtMC40LDAuNiAtMSwxLjQgLTEuNSwxLjggLTEuMiwxIC0yLjcsMS42IC00LjgsMS42IGggLTAuOSBjIC0zLjUsMCAtNy4zLC0yLjEgLTcuMywtNS40IC0wLjQsLTAuMSAtMC40LC0wLjIgLTAuOCwtMC4yIGggLTAuMyBjIC0wLjYsMCAtMC42LDEuNSAtMS4xLDIuMiAtMC41LDAuOCAtMC43LDEuMSAtMS41LDEuNyAtMS4zLDEgLTIuNywxLjYgLTQuOCwxLjYgSCA4Mi45IGMgLTMuNSwwIC02LjcsLTIuMiAtNywtNS40IC0wLjMsLTAuMSAtMC40LC0wLjIgLTAuOCwtMC4yIGggLTAuMSBjIC0wLjcsMCAtMC44LDEuNSAtMS4yLDIuMiAtMC40LDAuNiAtMC45LDEuMiAtMS42LDEuNyAtMS40LDEgLTIuNywxLjYgLTUsMS42IGggLTEgYyAtMS4yLDAgLTIuMiwtMC40IC0zLC0wLjggbCAwLDAgeiBtIDAsLTIxLjYgMTkuNSwwIDAsMS4yIDIuNywwIDAsLTE1LjggLTIuNywwIDAsMS4yIC0xOS41LDAgeiBNIDg5LjcsODAuOSB2IDAuMSBjIDguMSwwIDE2LjIsMS4yIDIwLjYsNC45IDIuOCwyLjQgMy4xLDQuNSAzLjEsOS42IDAsNC4xIDAuNSw4LjMgNC41LDguMyBoIDAuOCBjIDEuNywwIDIuOCwtMi42IDIuOCwtNC4zIHYgLTAuOSBjIDAsLTUuMSAtMy4zLC0xMC43IC01LjksLTEzLjMgLTEuNiwtMS42IC0zLjYsLTMgLTYuMSwtMy42IC0yLjIsLTAuNSAtNiwtMS4xIC04LjYsLTEuMSBsIC0xLjgsLTAuMSAtOS40LDAuNCB6XCJ9XSxpW1wiR1IuSU4uSUMuR1JPVU5EIFdBVEVSIFdFTExcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTTg2LDY0TDg2LDcwTDc1LDExMEw4MSwxMTBMOTIsNzBMOTksNzBMOTksMTMwTDg2LDEzMEw4NiwxNDBMMTIwLDE0MEwxMjAsMTMwTDExMCwxMzBMMTEwLDg5TDEyMCw4OUwxMjAsOTNMMTMwLDkzTDEzMCw4N0MxMzAsODIuNjMxIDEyNS41NTEsODMgMTI1LjU1MSw4M0wxMTAsODNMMTEwLDcwTDExMy43NzQsNzBMMTEzLjc3NCw2NEw4Niw2NFpcIn1dLGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlMgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDkuNywxMTYuNiA0LjEsMTMuNCAtMC4yLDAuMSAtMTIuMiwtOC40IDguMywtNS4yIHogbSAtMTkuNywwIDgsNS4xIC0xMi4xLDguNCA0LjEsLTEzLjYgeiBtIDkuOCwtOS44IDguOCw4LjIgYyAtMS43LDAuNSAtOC4xLDUuNiAtOC44LDUuNiAtMC4yLDAgLTguMiwtNS40IC04LjYsLTUuOCBsIDguNSwtOC4xIHogbSA1LjMsLTQuOCAzLjEsOS44IC02LjksLTYuNCAzLjcsLTMuNCB6IG0gLTEwLjUsMC4xIDMuOCwzLjMgLTYuOSw2LjQgMy4xLC05LjcgeiBtIDIuMSwtMSA2LjQsLTAgLTMuMiwzLjIgLTMuMiwtMy4yIHogTSA5OS4yLDg0LjggQyA5OS4xLDg1LjQgOTksODUuNSA5OSw4Ni4xIHYgMiBoIC0zIGMgLTAuNSwwIC0wLjgsMC4zIC0wLjgsMC44IDAsMC41IDAuMSwwLjUgMC4yLDEgMC40LDAuMSAwLjQsMC4yIDEsMC4yIGggMi42IHYgMi44IGggLTQuNSBjIC0wLjYsMCAtMS4yLDAuMiAtMS4yLDAuOCAwLDAuNSAwLjMsMC44IDAuOCwwLjggaCA0LjkgdiA0LjkgaCAtNC41IGMgLTAuNSwwIC0wLjUsMC4xIC0wLjksMC4yIGwgLTIuNSw3LjkgLTEsMy4yIC00LjEsMTMuMyAtMS4xLDMuMSBjIDAsMiAtMS40LDMuNSAtMS40LDUuNSAwLDAuNCAwLjEsMC4yIDAuMiwwLjggaCAwLjUgYyAwLjYsMCAxNS4xLC0xMC4zIDE1LjQsLTEwLjMgMC42LDAgMTQuMiw5LjQgMTUuOCwxMC41IDAuNCwtMC4yIDEsLTAuNCAxLC0xIHYgLTAuNiBjIDAsLTAgLTEuNSwtNC40IC0xLjcsLTUgLTAuNCwtMS4xIC0xLjQsLTQuMyAtMS41LC01LjIgbCAtMSwtMy4yIC00LjEsLTEzLjIgLTAuOSwtMy40IGMgLTEsLTAuNCAtMC4zLC0yLjYgLTEuNiwtMi42IGggLTQuOCB2IC01IGggNC44IGMgMC41LDAgMC44LC0wLjMgMC44LC0wLjggMCwtMC41IC0wLjMsLTAuOCAtMC44LC0wLjggSCAxMDAuOCBWIDkwLjEgaCAyLjQgYyAwLjcsMCAxLjQsLTAuNCAxLjQsLTEgdiAtMC4yIGMgMCwtMC41IC0wLjMsLTAuOCAtMC44LC0wLjggaCAtMi45IHYgLTIuNiBjIDAsLTAuNCAtMC42LC0xIC0wLjgsLTEgLTAsLTAgLTAuNywwLjEgLTAuOCwwLjIgeiBtIDYuNywtMTUuNyBjIDcsMS42IDEwLjksNC42IDE1LjEsOC45IDMsMyA3LjMsMTEgNy4zLDE2LjkgdiA0IGMgMCwyLjEgLTEuNSw3LjcgLTIuMiw5IC0wLjcsMS4xIC0xLjIsMi40IC0xLjksMy42IC0wLjMsMC40IC0yLjQsMy4zIC0yLjQsMy40IDAsMC43IDEsMS42IDEuMiwyLjYgMS43LC0wLjQgNC44LC02LjMgNS43LC04LjIgMS4yLC0yLjUgMi43LC03LjggMi43LC0xMS40IFYgOTQuMyBjIDAsLTAuMSAtMC45LC00LjkgLTEsLTUuNSAtMC4zLC0wLjkgLTEuNCwtMy43IC0xLjgsLTQuOCAtMC45LC0yLjIgLTMuNywtNi40IC01LjIsLTggLTMuNiwtMy42IC0xMC42LC05LjIgLTE2LjksLTkuNyBsIC0wLjQsMi44IHogbSAtMS42LDEwLjcgYyA2LDAuNSAxMy4zLDkuMiAxMy4zLDE2LjEgdiAyLjIgYyAwLDEuNSAtMS40LDUuNSAtMS40LDUuNSAwLDAuMiAxLjIsMi45IDEuNCwzLjIgbCAwLjIsMC4xIDEuNiwtMy40IDAuMSwtMC42IDAuNywtNS45IDAuMiwtMC40IC0xLC01LjkgYyAtMC43LC0wLjMgLTAuNiwtMS40IC0xLjEsLTIuMiAtMC40LC0wLjggLTAuOCwtMS42IC0xLjMsLTIuMyAtMS4xLC0xLjYgLTEuOCwtMi42IC0zLjIsLTMuOSAtMi4yLC0yLjIgLTUuOCwtNC4yIC05LjIsLTUgbCAtMC4zLDIuOCB6IE0gNjguNyw5NS4yIHYgNS4xIGMgMCw0LjIgNS40LDE2LjMgNy45LDE3IDAuMSwtMC41IDEsLTIuMiAxLC0yLjYgMCwwIC0yLjEsLTIuOSAtMi4zLC0zLjQgLTAuNywtMS4zIC0xLjMsLTIuNCAtMS45LC0zLjggLTEsLTIuNiAtMS44LC02IC0xLjgsLTkuNiB2IC0yLjQgYyAwLC04IDMuMywtMTIuOSA2LjksLTE3LjUgMS40LC0xLjggNC43LC00LjQgNi43LC01LjYgMS40LC0wLjggMi41LC0xLjQgNC4xLC0yLjEgMC41LC0wLjIgNC41LC0xLjMgNC41LC0xLjYgbCAtMC4yLC0yLjYgYyAtMi40LDAuMSAtOCwyLjYgLTkuNiwzLjcgLTMuMiwxLjkgLTQuOCwzLjYgLTcuMyw2LjEgLTMuNiwzLjYgLTcuOCwxMiAtNy44LDE5LjEgbCAwLDAgeiBtIDEwLjcsMCB2IDIuOSBjIDAsMS45IDAuMiwzLjEgMC44LDQuNSAwLjIsMC40IDEuNSw0IDEuNSw0IGwgMC40LC0wIDEuNSwtMi45IGMgLTAuOSwtMS4yIC0xLjQsLTQgLTEuNCwtNi4yIHYgLTEuOCBjIDAsLTMuNyAyLjMsLTguMyA0LjIsLTEwLjMgMS44LC0xLjggNS45LC01LjUgOS4xLC01LjYgTCA5NSw3Ny4xIEMgODgsNzcuNiA3OS40LDg3LjMgNzkuNCw5NS4yIHpcIn1dLGlbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlMgVE9XRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDIuNSwxMTkuMiAxMiwtOCAyLjgsOS4yIDEuMyw0IDIuMSw2LjkgLTE4LjIsLTEyIHogbSAtMjMsMTIgMy40LC0xMS43IDIsLTUuOSAwLjgsLTIuNiAxMS45LDguMiAtMTgsMTIgeiBtIDIwLjQsLTM0LjYgMTMsMTIuMiBjIC0xLjUsMSAtMTIuMyw4LjUgLTEzLjEsOC41IC0wLjEsMCAtMTEuNiwtNy43IC0xMi43LC04LjUgTCA5OS45LDk2LjYgeiBtIDcuNywtNy4xIDAuMiwwLjIgMS44LDUuNyAyLjUsOC43IC0xMC4xLC05LjMgNS42LC01LjIgMCwwIHogbSAtMTUuNSwwLjYgdiAtMC42IGwgMC40LDAuMiA1LjQsNSAtMTAsOS40IDIuNiwtOSAxLjYsLTUgeiBtIDIuOSwtMS43IDkuOCwtMCAtNSw0LjQgLTQuOCwtNC40IHogbSAzLjYsLTIzLjEgdiAzLjYgaCAtNC40IGMgLTAuNSwwIC0xLDAuNiAtMSwxIHYgMC42IGMgMCwwLjcgMC44LDEgMS41LDEgaCA0IHYgNC4yIGggLTcuMiBjIC0wLjUsMCAtMSwwLjYgLTEsMSB2IDAuMiBjIDAsMSAwLjUsMS41IDEuNSwxLjUgaCA2LjggdiA3IGggLTYuOCBjIC0wLjgsMCAtMSwwLjMgLTEuMywwLjcgbCAtMC42LDIgLTQuOSwxNS42IC0zLDkuNiAtMy4xLDkuNCAtMC4xLDAuOCAtMi45LDguNyAtMC4xLDAuOCAtMC41LDIuMiBjIDEsMC4yIDAuNSwwLjYgMS4zLDAuNiBoIDAuMiBjIDAuOCwwIDIwLjEsLTEzLjcgMjMuMSwtMTUuMiAyLjUsMS43IDIyLjQsMTUuMiAyMy41LDE1LjIgMC42LDAgMSwtMC43IDEsLTEuMyAwLC0wLjEgLTEuNCwtNCAtMS41LC00LjIgbCAtMC4xLC0wLjggLTMuMSwtOS43IC0yLjksLTkuMyAtNC43LC0xNS43IGMgLTAuNiwtMC44IC0xLjQsLTMuOCAtMS44LC01IC0wLjYsLTEuOCAtMC41LC00LjMgLTIuNSwtNC4zIGggLTYuOCB2IC03IGggNy4yIGMgMC41LDAgMSwtMC42IDEsLTEgdiAtMC40IGMgMCwtMC42IC0wLjIsLTEuMyAtMC44LC0xLjMgaCAtNy40IHYgLTQuMiBoIDQgYyAwLjcsMCAxLjUsLTAuNCAxLjUsLTEgdiAtMC42IGMgMCwtMC43IC0wLjgsLTEgLTEuNSwtMSBoIC00IHYgLTQgYyAwLC0wLjYgLTAuNywtMSAtMS4zLC0xIC0wLjgsLTAgLTEuMywwLjYgLTEuMywxLjQgbCAwLDAgeiBtIC02LjYsMjQuOCAwLjQsLTAuNCAtMC40LC0wLjIgelwifV0saVtcIkdSLklOLklDLkFJUiBUUkFGRklDIENPTlRST0wgRkFDSUxJVFlcIl09YShcIkFUQ1wiKSxpW1wiR1IuSU4uSUMuUFJPUEFORSBGQUNJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDk4LjcsNzMuMSB2IDAuMiBjIDAsMSAwLjUsMS41IDEuNSwxLjUgMC41LDAgMS4xLC0wLjYgMS4xLC0xLjEgMCwtMC44IC0wLjIsLTAuOCAtMC4yLC0xLjUgLTAuNSwtMC4xIC0wLjUsLTAuMiAtMS4xLC0wLjIgaCAtMC4yIGMgLTAuNSwwIC0xLjEsMC42IC0xLjEsMS4xIHogbSAtMTIuNiw1OC41IGggMjguNCB2IDMuMyBoIC0yOC40IHYgLTMuMyB6IE0gNzUuOCwxMTkgaCA0OC41IHYgMy4zIGMgMCwyIC04LjgsNy44IC05LjgsNy44IEggODUuOCBjIC0xLDAgLTEwLC01LjggLTEwLC03LjYgdiAtMy41IGwgMCwwIHogbSAwLC0yNy41IGMgMCwtMS4xIDcuMiwtNS44IDguNSwtNi42IDIuNiwtMS41IDcuNCwtMy43IDExLjQsLTMuNyBoIDguNSBjIDQuMSwwIDkuMSwyIDExLjYsMy43IDEuMywwLjkgOC41LDUuNCA4LjUsNi42IHYgNC4yIEggNzUuOCBWIDkxLjUgbCAwLDAgeiBNIDk4LjIsNzcuMSBjIDAuNywwIDAuOCwwLjIgMS41LDAuMiBoIDAuNCBjIDAuOCwwIDAuOCwtMC4yIDEuNSwtMC4yIHYgMS44IGwgMS4yLDAuOCAtNS41LDAgYyAwLjMsLTAuNSAwLjksLTAuOCAwLjksLTEuMyBsIC0wLC0xLjMgMCwwIHogbSAtMS4xLC00IGMgMCwtMS40IDEuNCwtMi40IDIuOCwtMi40IDEuMywwIDIuOCwwLjkgMi44LDIgdiAxLjEgYyAwLDEuNCAtMS42LDIuNCAtMywyLjQgLTEsMCAtMi42LC0xLjIgLTIuNiwtMi40IHYgLTAuNyBoIC0wIHogbSAxMi4yLC04LjEgaCAzLjUgdiAzLjUgaCAtMS44IHYgNi44IGMgMC43LDAgMi40LDAuNiAyLjQsMS4zIHYgMy43IEggMTA5LjQgViA2NS4xIHogbSAtMjIuNywwIGggNC4yIFYgODAuMyBIIDg1LjggdiAtNC4xIGMgMC44LC0wLjIgMy4xLC0wLjggMy4xLC0xLjUgdiAtNi4xIGggLTIuMiB2IC0zLjUgeiBtIDUuNywwIGggMTUuNSB2IDE1LjMgYyAtMS42LC0wLjQgLTQuOCwtMC45IC00LjgsLTIuNiB2IC0wLjkgYyAwLC0xLjUgMC45LC0yLjEgMC45LC0yLjYgdiAtMS4xIGMgMCwtMy4yIC0zLC0zLjIgLTMuMywtNC40IGggNC4yIHYgLTEuNSBoIC05LjYgdiAxLjUgaCA0LjIgdiAwLjYgYyAtMS45LDAuMSAtMy4xLDEuOSAtMy4xLDQgdiAwLjYgYyAwLDEgMC45LDIgMC45LDIuNCB2IDEuMyBjIDAsMS40IC0zLjQsMi4zIC00LjgsMi42IFYgNjUuMSBsIDAsMCB6IG0gLTcuMiw0LjggaCAyLjIgdiA0IGMgMCwwLjggLTIuMSwxLjIgLTIuOCwxLjMgdiA2LjggaCAzIGMgLTAuNiwwLjQgLTIuNywxLjIgLTMuNiwxLjggLTEuMiwwLjcgLTIuMiwxLjQgLTMuNCwyLjEgLTAuOSwwLjYgLTYuMSw0LjcgLTYuMyw0LjggdiAzMS42IGMgMCwxLjkgMy4yLDQuNCA0LjUsNS4zIDEsMC42IDUuOCwzLjMgNS44LDQuMSB2IDQuOCBoIDMxLjIgdiAtNC44IGMgMCwtMS42IDEwLC00LjYgMTAsLTEwIFYgOTEuMSBjIDAsLTAuOSAtNSwtNC40IC02LC01LjEgLTEuMiwtMC44IC0yLjEsLTEuNCAtMy4zLC0yLjEgLTAuOSwtMC42IC0zLjIsLTEuNCAtMy43LC0xLjkgaCAyLjQgdiAtNi44IGMgLTAuNywtMC4yIC0yLjYsLTAuNSAtMi42LC0xLjMgdiAtNCBoIDIgViA2My41IEggODUuMiB2IDYuMyB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTQuNCwxMzQuOSAwLC0zLjMgLTI4LjQsMCAwLDMuMyB6IE0gNzUuOCwxMjIuNSBjIDAsMS45IDksNy42IDEwLDcuNiBoIDI4LjYgYyAxLDAgOS44LC01LjkgOS44LC03LjggdiAtMy4zIEggNzUuOCB2IDMuNSBsIDAsMCB6IG0gMCwtMzEgdiA0LjIgaCA0OC41IFYgOTEuNSBjIDAsLTEuMiAtNy4yLC01LjcgLTguNSwtNi42IC0yLjUsLTEuNyAtNy41LC0zLjcgLTExLjYsLTMuNyBoIC04LjUgYyAtMy45LDAgLTguOCwyLjIgLTExLjQsMy43IC0xLjMsMC44IC04LjUsNS40IC04LjUsNi42IGwgMCwwIHogTSAxMDkuNCw4MC4zIGggNC4yIHYgLTMuNyBjIDAsLTAuOCAtMS43LC0xLjIgLTIuNCwtMS4zIHYgLTYuOCBoIDEuOCBWIDY1LjEgSCAxMDkuNCBWIDgwLjMgeiBNIDg2LjcsNjguNiBoIDIuMiB2IDYuMSBjIDAsMC44IC0yLjMsMS40IC0zLDEuNSB2IDQuMiBoIDUgViA2NS4xIGggLTQuMiB2IDMuNSB6IG0gMTEuNiw5LjggYyAwLDAuNiAtMC42LDAuOCAtMC45LDEuMyBsIDUuNSwtMC4xIC0xLjEsLTAuOCBWIDc3LjEgYyAtMC43LDAgLTAuOCwwLjIgLTEuNSwwLjIgSCA5OS44IGMgLTAuOCwwIC0wLjgsLTAuMiAtMS41LC0wLjIgbCAtMCwxLjMgMCwwIHogbSAyLjgsLTYuMSBjIDAuMSwwLjcgMC4yLDAuOCAwLjIsMS42IDAsMC41IC0wLjYsMS4xIC0xLjEsMS4xIC0xLDAgLTEuNSwtMC41IC0xLjUsLTEuNSB2IC0wLjIgYyAwLC0wLjUgMC42LC0xLjEgMS4xLC0xLjEgaCAwLjIgYyAwLjYsMCAwLjYsMC4xIDEuMSwwLjIgeiBtIC0zLjksMC45IHYgMC43IGMgMCwxLjIgMS42LDIuNCAyLjYsMi40IDEuNCwwIDMsLTEgMywtMi40IFYgNzIuNyBjIDAsLTEgLTEuNiwtMiAtMi44LC0yIC0xLjQsMCAtMi44LDEgLTIuOCwyLjQgelwifV0saVtcIkdSLklOLklDLkdPVkVSTk1FTlQgU0lURSBJTkZSQVNUUlVDVFVSRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEwMCw2Ny4zIEMgOTAuMTEyMiw3Mi4xMDM3IDc5LjMzMzYsNzcuMzk5MiA3MCw4MiBjIC0xLjIsMC42IC0zLjgsMS4zIC0zLjgsMi44IGwgLTAuMSwwIDAsMC40IGMgMCwwLjYgMC4xLDAuNiAwLjIsMS4xIDAuNSwwLjEgMC41LDAuMiAxLjEsMC4yIGwgNjUsMCBjIDAuNywwIDEuNywtMC42IDEuNywtMS4xIDAsLTIuMiAtMS43LC0yLjQgLTMuMiwtMyBDIDExOS4zOTEsNzYuNzU3NSAxMDkuMTcsNzEuNzk0MSAxMDAsNjcuMyBaIG0gLTAuMSwzLjQgYyAwLjIsMCAyNC41LDEyIDI1LjksMTMgbCAtNTEuNiwwIDAsLTAuMSBDIDc1LDgzIDk5LjcsNzAuNyA5OS45LDcwLjcgWiBtIDMxLjYsNTUuNiAwLC0zIC02My4zLDAgMCwzIHogbSAyLjMsNi40IDAsLTMgLTY3LjcsMCAwLDMgeiBtIC02LjIsLTQwLjcgMi40LDAgMCwtMy4yIC03LjksMCAwLDMuMiAyLjEsMCAtMC42LDI1LjUgLTEuNSwwIDAsMy44IDcuOSwwIDAsLTMuOCAtMS41LDAgeiBtIC0xNC42LC0zLjIgLTcuNiwwIDAsMy4yIDIuMiwwIC0wLjksMjUuNCAtMS4zLDAgMCwzLjggNy42LDAgMCwtMy44IC0xLjQsMCAtMC43LC0yNS41IDIuMSwwIHogbSAtMjAuOCwzLjEgMi4zLDAgMCwtMy4yIC03LjgsMCAwLDMuMiAyLjMsMCAtMC44LDI1LjQgLTEuNSwwIDAsMy44IDcuOCwwIDAsLTMuOCAtMS43LDAgeiBtIC0yMi41LDI1LjUgMCwzLjggOCwwIDAsLTMuOCAtMS41LDAgLTAuOCwtMjUuNSAyLjMsMCAwLC0zLjIgLTgsMCAwLDMuMiAyLjQsMCAtMC45LDI1LjUgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzQuMSw4My42IGggNTEuNiBDIDEyNC4zLDgyLjcgMTAwLDcwLjcgOTkuOCw3MC43IDk5LjYsNzAuNyA3NC45LDgzIDc0LjEsODMuNiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA2NS4yLDkzLjEgYyAwLC0wLjUgMTUuNiwtMTEuNSAxNy4zLC0xMi44IDEuNSwtMS4yIDE3LjMsLTEyLjYgMTcuNCwtMTIuNiAwLjYsMCAxNS45LDExLjIgMTcuNiwxMi41IDEuNywxLjMgMTcuMywxMi40IDE3LjMsMTIuOSAwLDAgLTYuMSwxOC42IC02LjcsMjAuMyAtMS4yLDMuNCAtMi4yLDYuOCAtMy40LDEwLjMgLTEsMyAtMi43LDcuMiAtMy4zLDEwIEggNzguNCBjIC0wLjEsLTEuNyAtNS42LC0xOCAtNi41LC0yMC40IC0wLjYsLTEuNCAtNi42LC0yMC4xIC02LjYsLTIwLjEgeiBtIDguNCwzOC41IDIsNi4xIDQ5LDAgOC40LC0yNi40IDYuNiwtMjAuNSAtMzkuNywtMjguNyAtMzkuNiwyOC44IDEzLjMsNDAuNiAwLDAgeiBNIDEwMCw3Ni4yIGMgMi43LDIuNCAyNi42LDE4LjcgMjYuNiwxOS42IDAsMC44IC00LjEsMTIuNyAtNC41LDEzLjQgbCAtNS42LDE3LjQgLTMyLjUsMCBjIC0wLjksMCAtMywtNy40IC0zLjUsLTguNyAtMC42LC0xLjggLTIuOSwtNy44IC0yLjksLTkuNCBMIDc0LjMsOTguOSA3My41LDk1LjUgMTAwLDc2LjIgeiBtIDMwLjUsMTggYyAtMy4xLC0yLjEgLTMwLC0yMi4yIC0zMC43LC0yMi4yIC0wLjEsMCAtMTMuOCwxMC4xIC0xNS4yLDExLjEgLTIsMS40IC0xNC4zLDEwLjcgLTE1LjIsMTAuOSB2IDAuNyBjIDAsMSAyLjksNyAyLjksOS4zIGwgOC43LDI2LjMgMzcuNywwIDUsLTE1LjcgNi42LC0yMC40IHogbSAtNTAuNCwzLjIgYyAwLjgsLTAuMiA4LjYsLTYuMSAxMCwtNyAxLjIsLTAuOCA5LjUsLTcuMSAxMCwtNy4xIDAsMCA5LDYuNSAxMCw3LjIgMS4yLDAuOCA5LjcsNi41IDkuNyw3LjMgMCwxLjIgLTAuNCwyIC0wLjksMi43IDAsMS42IC0yLjYsOC43IC0zLjMsMTAuNiAtMC41LDEuNCAtMi44LDEwLjEgLTMuNywxMC4xIEggODguMSBjIC0wLjcsMCAtMS44LC00IC0yLC00LjggLTAuNiwtMS43IC0xLjIsLTMuMyAtMS43LC01LjEgLTAuNiwtMi4xIC0zLjEsLTguNyAtMy4xLC0xMC4zIGwgLTAuMywwLjEgLTAuOSwtMy43IHogbSAtMy4yLC0wLjcgOC44LDI3IDI4LjIsLTAgOC43LC0yNy4yIGMgLTMuMiwtMS43IC0yMS43LC0xNi4zIC0yMi45LC0xNi4zIC0wLjMsMCAtMjAuNiwxNSAtMjIuOSwxNi42IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDc3LDk2LjggYyAyLjMsLTEuNSAyMi42LC0xNi42IDIyLjksLTE2LjYgMS4yLDAgMTkuNywxNC42IDIyLjksMTYuMyBsIC04LjcsMjcuMiAtMjguMywwIC04LjgsLTI3IHogbSAtMy42LC0xLjMgMC45LDMuNCAzLjQsOS43IGMgMCwxLjUgMi4zLDcuNiAyLjksOS40IDAuNCwxLjMgMi41LDguNyAzLjUsOC43IGwgMzIuNSwtMCA1LjUsLTE3LjQgYyAwLjQsLTAuNiA0LjUsLTEyLjYgNC41LC0xMy40IDAsLTEgLTIzLjksLTE3LjIgLTI2LjYsLTE5LjYgTCA3My41LDk1LjUgeiBtIDYuNywyIDAuOSwzLjcgMC4zLC0wLjEgYyAwLDEuNiAyLjQsOC4yIDMuMSwxMC4zIDAuNSwxLjggMS4xLDMuNCAxLjcsNS4xIDAuMiwwLjggMS4zLDQuOCAyLDQuOCBoIDIzLjggYyAxLDAgMy4zLC04LjYgMy43LC0xMC4xIDAuNiwtMS45IDMuMywtOSAzLjMsLTEwLjYgMC41LC0wLjcgMSwtMS41IDEsLTIuNyAwLC0wLjggLTguNSwtNi41IC05LjcsLTcuMyAtMSwtMC43IC05LjksLTcuMiAtMTAsLTcuMiAtMC41LDAgLTguOCw2LjIgLTEwLDcgLTEuMywxIC05LjIsNi44IC0xMCw3LjEgeiBtIDQzLjgsMTcuMSAtNSwxNS43IC0zNy43LC0wIC04LjcsLTI2LjMgYyAwLC0yLjMgLTIuOSwtOC4zIC0yLjksLTkuMyB2IC0wLjcgYyAxLC0wLjIgMTMuMiwtOS41IDE1LjIsLTEwLjkgMS40LC0xIDE1LjEsLTExLjEgMTUuMiwtMTEuMSAwLjcsMCAyNy42LDIwIDMwLjcsMjIuMiBsIC02LjYsMjAuNCB6IE0gNjUuMiw5My4xIGMgMCwwIDYsMTguNyA2LjYsMjAuMSAxLDIuNCA2LjQsMTguNyA2LjUsMjAuNCBoIDQzLjEgYyAwLjYsLTIuOCAyLjMsLTcgMy4zLC0xMCAxLjIsLTMuNSAyLjEsLTYuOCAzLjQsLTEwLjMgMC42LC0xLjcgNi43LC0yMC4yIDYuNywtMjAuMyAwLC0wLjUgLTE1LjYsLTExLjUgLTE3LjMsLTEyLjkgQyAxMTUuOCw3OSAxMDAuNSw2Ny43IDk5LjksNjcuNyA5OS44LDY3LjcgODQuMSw3OS4yIDgyLjUsODAuMyA4MC44LDgxLjYgNjUuMiw5Mi43IDY1LjIsOTMuMSB6XCJ9XSxpW1wiR1IuSU4uSUMuUE9TVEFMIFNFUlZJQ0UgSU5GUkFTVFJVQ1RVUkVcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSA2NC4zLDg2LjYgOTkuOSwxMDIuMSAxMzUuNyw4Ni42IHYgMzEuOCBIIDY0LjMgdiAtMzEuOCBsIDAsMCB6IG0gNjIuNSwxLjkgYyAtMy4xLDEuMiAtNS45LDIuNiAtOSwzLjkgLTIuMiwwLjkgLTE3LjEsNy43IC0xOCw3LjcgLTAuNSwwIC0xNS44LC03IC0xNy44LC03LjggLTMsLTEuMiAtNS45LC0yLjggLTguOCwtMy45IC0yLjMsLTAuOSAtNi44LC0zLjQgLTguOCwtMy44IHYgLTMuMiBoIDcxLjUgdiAzLjIgYyAtMi4xLDAuNCAtNi42LDIuOSAtOSwzLjkgeiBtIC02NC4xLDMxLjcgaCA3NC43IFYgNzkuOCBIIDYyLjcgdiA0MC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDY0LjMsODYuNiAwLDMxLjggNzEuNSwwIDAsLTMxLjggLTM1LjgsMTUuNSB6IG0gMCwtMiBjIDIsMC41IDYuNSwzIDguOCwzLjggMi45LDEuMSA1LjgsMi43IDguOCwzLjkgMiwwLjggMTcuMyw3LjggMTcuOCw3LjggMC45LDAgMTUuOSwtNi44IDE4LC03LjcgMy4xLC0xLjMgNS45LC0yLjYgOSwtMy45IDIuNCwtMSA2LjksLTMuNCA5LC0zLjkgViA4MS40IEggNjQuMyB2IDMuMiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuUE9TVEFMIERJU1RSSUJVVElPTiBDRU5URVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSA2NC4zLDk0LjYgOTkuOSwxMTAuMSAxMzUuNyw5NC42IFYgMTI2LjQgSCA2NC4zIGwgNGUtNCwtMzEuOCAwLDAgeiBtIDYyLjUsMS45IGMgLTMuMSwxLjIgLTUuOSwyLjYgLTksMy45IC0yLjIsMC45IC0xNy4xLDcuNyAtMTguMSw3LjcgLTAuNSwwIC0xNS43LC02LjkgLTE3LjgsLTcuOCAtMywtMS4yIC01LjksLTIuOCAtOC44LC0zLjkgLTIuMywtMC45IC02LjgsLTMuNCAtOC44LC0zLjkgdiAtMy4yIGggNzEuNSB2IDMuMiBjIC0yLjEsMC41IC02LjYsMi45IC05LDMuOSB6IE0gNjIuNywxMjguMiBoIDc0LjcgViA4Ny44IEggNjIuNyB2IDQwLjUgeiBtIDY2LjEsLTU0LjQgLTUuNCwwIDAsMTMuMyAtMiwwIDAsLTEzLjMgLTUuNCwwIDAsLTEuOCAxMi44LDAgMCwxLjggbSAtMTQsOSBjIC0xZS01LDAuNiAtMC4xLDEuMiAtMC40LDEuNyAtMC4zLDAuNiAtMC43LDEuMSAtMS4xLDEuNSAtMC41LDAuNCAtMS4yLDAuOCAtMS45LDEgLTAuNywwLjIgLTEuNiwwLjQgLTIuNiwwLjQgLTEuMSwwIC0yLjEsLTAuMSAtMi45LC0wLjMgLTAuOSwtMC4yIC0xLjgsLTAuNSAtMi43LC0wLjkgbCAwLC0yLjUgMC4xLDAgYyAwLjgsMC42IDEuNiwxLjEgMi43LDEuNSAxLDAuMyAxLjksMC41IDIuOCwwLjUgMS4yLDEwZS03IDIuMiwtMC4yIDIuOSwtMC43IDAuNywtMC41IDEsLTEuMSAxLC0xLjkgLTFlLTUsLTAuNyAtMC4yLC0xLjIgLTAuNSwtMS41IC0wLjMsLTAuMyAtMC44LC0wLjYgLTEuNSwtMC43IC0wLjUsLTAuMSAtMS4xLC0wLjIgLTEuNywtMC4zIC0wLjYsLTAuMSAtMS4yLC0wLjIgLTEuOSwtMC4zIC0xLjMsLTAuMyAtMi4zLC0wLjggLTMsLTEuNSAtMC42LC0wLjcgLTEsLTEuNiAtMSwtMi43IDAsLTEuMyAwLjUsLTIuMyAxLjYsLTMuMSAxLjEsLTAuOCAyLjQsLTEuMiA0LjEsLTEuMiAxLjEsMS42ZS01IDIsMC4xIDIuOSwwLjMgMC45LDAuMiAxLjcsMC41IDIuNCwwLjggbCAwLDIuNCAtMC4xLDAgYyAtMC42LC0wLjUgLTEuMywtMC45IC0yLjMsLTEuMiAtMC45LC0wLjMgLTEuOSwtMC41IC0yLjksLTAuNSAtMS4xLDEuM2UtNSAtMS45LDAuMiAtMi42LDAuNyAtMC43LDAuNCAtMSwxIC0xLDEuNyAtMWUtNSwwLjYgMC4yLDEuMSAwLjUsMS41IDAuMywwLjQgMC45LDAuNiAxLjcsMC44IDAuNCwwLjEgMSwwLjIgMS44LDAuMyAwLjgsMC4xIDEuNSwwLjMgMiwwLjQgMS4xLDAuMyAyLDAuNyAyLjUsMS40IDAuNiwwLjYgMC45LDEuNCAwLjksMi41IG0gLTE0LjQsNC4zIC02LDAgMCwtMS41IDIsMCAwLC0xMiAtMiwwIDAsLTEuNSA2LDAgMCwxLjUgLTIsMCAwLDEyIDIsMCAwLDEuNSBtIC04LjYsLTcuNSBjIC0xLjVlLTUsMS40IC0wLjMsMi42IC0wLjksMy43IC0wLjYsMS4xIC0xLjQsMiAtMi40LDIuNiAtMC43LDAuNCAtMS41LDAuNyAtMi4zLDAuOSAtMC44LDAuMiAtMiwwLjMgLTMuNCwwLjMgbCAtMy44LDAgMCwtMTUuMSAzLjgsMCBjIDEuNSwxLjVlLTUgMi42LDAuMSAzLjUsMC4zIDAuOSwwLjIgMS42LDAuNSAyLjIsMC45IDEsMC42IDEuOCwxLjUgMi40LDIuNiAwLjYsMS4xIDAuOSwyLjMgMC45LDMuOCBtIC0yLjEsLTAgYyAtMS4yZS01LC0xLjIgLTAuMiwtMi4yIC0wLjYsLTMgLTAuNCwtMC44IC0xLC0xLjUgLTEuOCwtMS45IC0wLjYsLTAuMyAtMS4yLC0wLjYgLTEuOSwtMC43IC0wLjcsLTAuMSAtMS41LC0wLjIgLTIuNCwtMC4yIGwgLTEuOSwwIDAsMTEuNyAxLjksMCBjIDEsMmUtNiAxLjgsLTAuMSAyLjUsLTAuMiAwLjcsLTAuMSAxLjQsLTAuNCAyLC0wLjggMC44LC0wLjUgMS4zLC0xLjEgMS43LC0xLjkgMC40LC0wLjggMC42LC0xLjggMC42LC0yLjlcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyNi44LDk2LjUgYyAtMy4xLDEuMiAtNS45LDIuNiAtOSwzLjkgLTIuMiwwLjkgLTE3LjEsNy43IC0xOC4xLDcuNyAtMC41LDAgLTE1LjcsLTYuOSAtMTcuOCwtNy44IC0zLC0xLjIgLTUuOSwtMi44IC04LjgsLTMuOSAtMi4zLC0wLjkgLTYuOCwtMy40IC04LjgsLTMuOSB2IC0zLjIgaCA3MS41IHYgMy4yIGMgLTIuMSwwLjUgLTYuNiwyLjkgLTksMy45IHogbSAtNjIuNSwtMS45IDM1LjYsMTUuNSAzNS44LC0xNS41IFYgMTI2LjQgSCA2NC4zIGwgNGUtNCwtMzEuOCAwLDAgelwifV0saVtcIkdSLklOLklDLlBPU1QgT0ZGSUNFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNzQuNyw5Mi44IDI0LjksMTAuOCBMIDEyNC43LDkyLjggViAxMTUuMSBIIDc0LjcgViA5Mi44IGwgMCwwIHogbSA0My43LDEuMyBjIC0yLjIsMC45IC00LjEsMS44IC02LjMsMi43IC0xLjUsMC42IC0xMiw1LjQgLTEyLjYsNS40IC0wLjQsMCAtMTEsLTQuOSAtMTIuNSwtNS40IC0yLjEsLTAuOCAtNC4xLC0xLjkgLTYuMiwtMi43IC0xLjYsLTAuNiAtNC44LC0yLjQgLTYuMiwtMi43IHYgLTIuMiBoIDUwIHYgMi4zIGMgLTEuNSwwLjMgLTQuNiwyIC02LjMsMi43IHogTSA3My42LDExNi40IEggMTI1LjggViA4OC4xIEggNzMuNiBWIDExNi40IHogTSA5OS44LDY0LjMgYyAwLjIsMCAzNS41LDE5LjggMzcuMSwyMS4yIGggLTQuOCB2IDM4LjYgaCAtNjMuOSB2IC0zOC42IGggLTQuOSBjIDEuNiwtMS40IDYuOSwtNC4xIDkuMSwtNS4zIDMuMSwtMS44IDYsLTMuNCA5LjEsLTUuMyAxLjYsLTEgMTguMywtMTAuNiAxOC40LC0xMC42IHogbSAtNDMuMywyMy4xIDkuOSwtMC4yIHYgMzguNCBoIDY3LjQgdiAtMzguNCBsIDkuOSwwLjIgYyAtMC41LC0wLjYgLTQzLjYsLTI1IC00My45LC0yNSAtMCwwIC0xOS41LDExLjQgLTIxLjcsMTIuNSAtMy41LDEuOCAtNy40LDQuMiAtMTAuOSw2LjIgLTIuNywxLjYgLTguOCw0LjYgLTEwLjgsNi4zIGwgMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJNIDk5LjgsNjQuMyBDIDk5LjgsNjQuMyA4My4xLDczLjkgODEuNSw3NC45IGMgLTMsMS44IC02LDMuNSAtOS4xLDUuMyAtMi4yLDEuMiAtNy41LDQgLTkuMSw1LjMgbCA0LjksMCAwLDM4LjYgNjMuOSwwIDAsLTM4LjcgNC44LDAgYyAtMS42LC0xLjQgLTM2LjksLTIxLjIgLTM3LjEsLTIxLjIgeiBNIDczLjYsODguMSBsIDUyLjMsMCAwLDI4LjMgLTUyLjMsMCAwLC0yOC4zIHogbSA0NC45LDYuMSBjIC0yLjIsMC45IC00LjEsMS44IC02LjMsMi43IC0xLjUsMC42IC0xMiw1LjQgLTEyLjYsNS40IC0wLjQsMCAtMTEsLTQuOSAtMTIuNSwtNS40IC0yLjEsLTAuOCAtNC4xLC0xLjkgLTYuMiwtMi43IC0xLjYsLTAuNiAtNC44LC0yLjQgLTYuMiwtMi43IHYgLTIuMiBoIDUwIHYgMi4zIGMgLTEuNSwwLjMgLTQuNiwyIC02LjMsMi43IHogTSA3NC43LDkyLjggOTkuNiwxMDMuNyAxMjQuNyw5Mi44IFYgMTE1LjEgSCA3NC43IFYgOTIuOCBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuRU5DTE9TRUQgRkFDSVRMSVRZIChQVUJMSUMgVkVOVUUpXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTE0LjksMTIxLjMgMCwtMS4yIC0zMC43LDAgMCwxLjIgeiBtIC0zMS45LC0yLjUgLTEwLjQsLTE2LjcgLTEsMC40IDEwLjYsMTYuNiB6IG0gMTMsLTEzLjggaCA3IGMgMC42LDAgNC40LC02IDUsLTYuOCBIIDkxIGMgMC42LDAuOSA0LjQsNi44IDUsNi44IHogbSAxNS4zLDEyIDAsLTEgLTIzLjUsMCAwLDEgeiBtIDIuNCwtMS42IDguNiwtMTMuNiAtMC44LC0wLjQgLTguNSwxMy4zIHogTSA3Ni44LDEwMS45IGMgMCwwLjMgMy43LDUuOSA0LjIsNi43IDAuNCwwLjYgNC4yLDYuNyA0LjMsNi43IDAuNCwwIDAuNSwtMC4yIDAuNywtMC41IGwgLTguNSwtMTMuNCBjIC0wLjIsMC4xIC0wLjcsMC4yIC0wLjcsMC41IHogbSAzMSwxMC44IDAsLTEgLTE2LjUsMCAwLDEgeiBtIC0xOS4zLC0xLjIgMC43LC0wLjQgLTYuNywtMTAuNSAtMC43LDAuNCB6IG0gMjIuMywtMCA2LjQsLTEwLjUgLTAuOCwtMC4zIC02LjYsMTAuNSB6IG0gLTYuNCwtMyAwLC0xIC05LjcsMCAwLDEgeiBtIDIuOCwtMS44IGMgMCwwLjYgMC4zLDAuNiAwLjcsMC42IGwgNC4yLC02LjkgLTAuNiwtMC40IGMgLTAuMiwwLjIgLTQuMyw2LjYgLTQuMyw2LjcgeiBtIC0yMC4zLC02LjMgNC4xLDcgYyAwLjMsLTAuMSAwLjgsLTAuMiAwLjgsLTAuNSAwLC0wLjYgLTMuNywtNS42IC00LC02LjkgbCAtMSwwLjQgeiBtIC0xOS43LDE4IDAuMywtMi44IGMgMC4xLC0zLjkgMiwtMTEuNCAzLC0xNC42IDEuNiwtNC43IDMuMiwtOC4zIDUuNiwtMTIgNC40LC02LjUgMTIsLTEyLjQgMjIuOCwtMTIuNCBoIDEuMSBjIDkuNiwwIDE3LDQuOCAyMS4zLDEwLjIgMS4yLDEuNSAyLjMsMi44IDMuMiw0LjYgMC41LDAuOSAxLDEuNiAxLjQsMi42IDAuNCwwLjkgMC43LDEuOSAxLjEsMi43IDAuOCwxLjQgMy42LDEwLjMgMy42LDEyLjEgdiAwLjYgaCAwLjMgdiAxIGwgMS4yLDEwLjggLTAuMSwyLjIgSCA2NyBsIDAuMiwtNSAwLDAgeiBtIC0yLjMsLTQgLTAuMywyLjQgLTAuNCw1LjYgdiAzLjggaCA3MC45IHYgLTEgYyAwLC0yIDAuMSwtNi40IC0wLjIsLTguMSAtMC40LC0yLjQgLTAuNSwtNS4yIC0xLC03LjUgLTAuNCwtMiAtMi45LC0xMi43IC0zLjksLTEzLjEgMCwtMS42IC0zLjUsLTcuNiAtNC4zLC04LjggLTEuOCwtMi42IC0zLjgsLTUgLTYuMiwtNyAtNC45LC0zLjkgLTEwLjUsLTcgLTE5LjMsLTcgaCAtMSBjIC0xMS44LDAgLTE5LjYsNS45IC0yNC42LDEyLjggLTEuNCwxLjkgLTIuNCwzLjggLTMuNSw1LjkgLTEuMiwyLjMgLTEuNyw0LjIgLTIuNiw2LjcgLTEuMiwzIC0zLjQsMTEuNCAtMy41LDE1LjMgbCAwLDAgeiBtIDUyLjIsNC43IGMgMC40LC0xLjMgNC4yLC02LjYgNS4yLC04LjMgMC42LC0xIDUuMSwtNy45IDUuMSwtOC4yIDAsLTAuMyAtMC42LC0wLjQgLTAuOCwtMC41IGwgLTEwLjYsMTYuNiAxLjEsMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDg0LjIsMTIwLjEgaCAzMC43IHYgMS4yIEggODQuMiB2IC0xLjIgeiBtIDMuNiwtNC4yIGggMjMuNSB2IDEgSCA4Ny44IHYgLTEgeiBtIDMuNSwtNC4yIGggMTYuNSB2IDEgSCA5MS40IHYgLTEgeiBtIDMuMywtNC4yIGggOS43IHYgMSBoIC05LjcgdiAtMSB6IG0gMjIuNCwxMS41IC0xLjEsLTAuNCAxMC42LC0xNi42IGMgMC4zLDAuMSAwLjgsMC4yIDAuOCwwLjUgMCwwLjMgLTQuNiw3LjIgLTUuMSw4LjIgLTEsMS44IC00LjksNyAtNS4yLDguMyB6IG0gLTQ1LjQsLTE2LjYgMSwtMC40IDEwLjQsMTYuNyAtMC44LDAuNCAtMTAuNiwtMTYuNiB6IG0gMTMuNywxMi44IGMgLTAuMiwwIC00LC02IC00LjMsLTYuNyAtMC41LC0wLjggLTQuMiwtNi4zIC00LjIsLTYuNiAwLC0wLjMgMC40LC0wLjQgMC43LC0wLjUgbCA4LjUsMTMuMyBjIC0wLjIsMC4zIC0wLjIsMC41IC0wLjcsMC41IHogbSAzNi4yLC0xMy44IDAuOCwwLjQgLTguNiwxMy42IC0wLjgsLTAuNiA4LjYsLTEzLjQgeiBtIC01LjEsLTAuNiAwLjgsMC4zIC02LjQsMTAuNSAtMSwtMC4zIDYuNiwtMTAuNSB6IG0gLTMzLjksLTAgNi43LDEwLjUgLTAuNywwLjQgLTYuNywtMTAuNSAwLjcsLTAuNCB6IG0gMjQuNyw2IGMgMCwtMC4xIDQuMSwtNi41IDQuMywtNi43IGwgMC42LDAuNCAtNC4yLDYuOSBjIC0wLjQsMCAtMC43LC0wLjEgLTAuNywtMC42IHogbSAtMTkuNCwtNi43IGMgMC4zLDEuMyA0LDYuMyA0LDYuOSAwLDAuMyAtMC42LDAuNCAtMC44LDAuNSBsIC00LjEsLTcgMSwtMC40IHogbSA4LjIsNC45IGMgLTAuNiwwIC00LjQsLTYgLTUsLTYuOCBoIDE3IGMgLTAuNiwwLjggLTQuNCw2LjggLTUsNi44IGggLTcgeiBtIC0yOC41LDEwLjcgYyAwLDAuNSAtMCwyLjggLTAuMywyLjggbCAtMC4yLDUgaCA2NS4yIGwgMC4xLC0yLjIgLTEuMiwtMTAuOCB2IC0xIGggLTAuMyB2IC0wLjYgYyAwLC0xLjggLTIuOCwtMTAuNiAtMy42LC0xMi4xIC0wLjQsLTAuOCAtMC43LC0xLjggLTEuMSwtMi43IC0wLjUsLTEgLTEsLTEuNiAtMS41LC0yLjYgLTAuOSwtMS44IC0yLC0zLjEgLTMuMiwtNC42IC00LjIsLTUuNCAtMTEuNiwtMTAuMiAtMjEuMywtMTAuMiBoIC0xIGMgLTEwLjgsMCAtMTguNSw1LjggLTIyLjgsMTIuNCAtMi41LDMuOCAtNC4xLDcuNCAtNS43LDEyIC0xLjEsMy4yIC0zLDEwLjcgLTMsMTQuNiBsIDAsMCB6XCJ9XSxpW1wiR1IuSU4uSUMuT1BFTiBGQUNJTElUWSAoT1BFTiBWRU5VRSlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjIuNCwxMTcuMSAwLC0xLjUgLTQ1LjEsMCAwLDEuNSB6IE0gNzQuNSwxMTQgNzUuNiwxMTMuNCA1OS44LDg4LjggNTguOCw4OS40IHogbSA0OS42LC0wLjYgYyAwLjIsMC4xIDEsMC41IDEuMywwLjUgMC4yLDAgMTQuNCwtMjIuNCAxNS45LC0yNC42IGwgLTEuNSwtMC41IC0xNS43LDI0LjYgeiBtIC02LjYsLTIuNiAwLC0xLjcgLTM1LDAgMCwxLjcgeiBtIDIuNCwtMy4yIGMgMCwwLjIgMSwwLjggMS4xLDAuOSBsIDEyLjgsLTIwIGggMC4yIGwgLTEuNiwtMC44IGMgLTEuMywyLjQgLTEyLjYsMTkuMyAtMTIuNiwyMCB6IG0gLTQxLjEsMC45IDEuNCwtMC44IC0xMi43LC0yMC4xIC0xLjMsMC44IHogbSAzMy4zLC0zLjkgMCwtMS42IC0yNC40LDAgMCwxLjYgeiBtIDMuNCwtMi44IGMgMCwwLjYgMC42LDAuNyAxLjEsMC45IGwgOS42LC0xNS40IC0xLjIsLTAuNiBjIC0wLjYsMiAtOS40LDE0LjUgLTkuNCwxNS4yIHogbSAtMzIuMiwxIDEuNCwtMC42IC05LjcsLTE1LjUgLTEuMywwLjggeiBtIDIzLjQsLTQuNSAwLC0xLjcgLTEzLjgsMCAwLDEuNyB6IG0gNS42LC0xLjcgNi40LC0xMC4zIC0xLjIsLTAuNSAtNi42LDEwLjIgeiBtIC0yNC42LDAuMSAxLjEsLTAuOCAtNi41LC0xMC4yIC0xLjMsMC42IHogbSA2LjYsLTQgMTEsMC4xIGMgMC42LDAgNi40LC04LjkgNywtMTAgSCA4Ny4zIGwgNi45LDkuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuUkVMSUdJT1VTIElOU1RJVFVUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAxLjIsNjguMSBjIDcuOSwwIDE4LDMuOCAyMS43LDggNSw1LjcgNywxMi4zIDcsMjIuOCBWIDEzMS45IEggMTAxLjIgViA2OC4xIHogTSA3MC4xLDk2LjMgYyAwLC04LjQgMy40LC0xNi40IDcuNywtMjAuNyAzLjksLTMuOSAxMy4yLC03LjUgMjAuOSwtNy41IHYgNjMuOSBIIDcwLjEgViA5Ni4zIHogbSAtMi42LDM4LjMgaCA2NSBWIDk5LjMgYyAwLC0xMC44IC0yLjUsLTE5LjcgLTguMSwtMjUuMiAtNC44LC00LjggLTE1LC04LjcgLTI0LjYsLTguNyAtOC4zLDAgLTE5LjQsMy43IC0yMy42LDcuOSAtMy4yLDMuMyAtNC4zLDUgLTYuMiw5LjUgLTEsMi40IC0yLjUsMTAgLTIuNSwxMy4yIHYgMzguNSBsIDAsMCB6IE0gMTA1LjEsOTcuNiB2IDEyLjUgYyAwLDAuNSAwLjYsMS4xIDEuMSwxLjEgaCAwLjQgYyAwLjcsMCAxLjEsLTAuOCAxLjEsLTEuNSBWIDk3LjggYyAwLC0wLjUgLTAuNiwtMS4xIC0xLjEsLTEuMSBIIDEwNiBjIC0wLjUsMCAtMC45LDAuNCAtMC45LDAuOSB6IG0gLTExLjIsMTMuNiBjIDAuOCwwIDAuOSwtMSAwLjksLTEuNyBWIDk3LjYgYyAwLC0wLjUgLTAuNCwtMC45IC0wLjksLTAuOSBoIC0wLjYgYyAtMC41LDAgLTAuOSwwLjQgLTAuOSwwLjkgdiAxMi41IGMgMCwwLjUgMC42LDEuMSAxLjEsMS4xIGggMC40IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEwNS4xLDk3LjYgYyAwLC0wLjUgMC40LC0wLjkgMC45LC0wLjkgaCAwLjcgYyAwLjUsMCAxLjEsMC42IDEuMSwxLjEgdiAxMS44IGMgMCwwLjcgLTAuNCwxLjUgLTEuMSwxLjUgaCAtMC41IGMgLTAuNSwwIC0xLjEsLTAuNiAtMS4xLC0xLjEgViA5Ny42IGggMCB6IG0gLTMuOSwzNC40IGggMjguNyBWIDk4LjkgYyAwLC0xMC41IC0yLC0xNy4xIC03LC0yMi44IEMgMTE5LjIsNzEuOSAxMDkuMSw2OC4xIDEwMS4yLDY4LjEgdiA2My45IHogTSA5NCwxMTEuMiBIIDkzLjUgYyAtMC41LDAgLTEuMSwtMC42IC0xLjEsLTEuMSBWIDk3LjYgYyAwLC0wLjUgMC40LC0wLjkgMC45LC0wLjkgaCAwLjcgYyAwLjUsMCAwLjksMC40IDAuOSwwLjkgdiAxMS44IGMgMCwwLjggLTAuMSwxLjggLTAuOSwxLjggeiBNIDcwLjEsOTYuMyB2IDM1LjcgSCA5OC44IFYgNjguMSBjIC03LjcsMCAtMTcsMy42IC0yMC45LDcuNSAtNC4zLDQuMyAtNy43LDEyLjMgLTcuNywyMC43IHpcIn1dLGlbXCJHUi5JTi5JQy5DSElMRCBEQVkgQ0FSRVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDc2LjYsMTAwLjMgYyAwLDEuOCAxLjEsMy40IDMsMy40IGggMC42IGMgMS40LDAgMi40LC0xLjUgMi40LC0zIDAsLTQuMyAtNiwtNC4yIC02LC0wLjQgeiBtIDI2LjUsLTExLjkgdiAwLjQgYyAwLDEuNSAxLjQsMy4yIDIuOCwzLjIgaCAwLjQgYyAxLjYsMCAzLC0xLjIgMywtMi44IFYgODcuOCBjIDAsLTEgLTEuNiwtMiAtMi44LC0yIGggLTAuMiBjIC0xLjUsLTAgLTMuMiwxLjQgLTMuMiwyLjYgeiBtIC0zLjIsLTE2LjggMzUuNCwyMS43IGMgLTEuMywwLjIgLTQuNiwtMC4zIC00LjYsMC45IHYgMzQuOSBIIDY5LjMgViA5NC4xIGMgMCwtMS4yIC0zLjMsLTAuOCAtNC42LC0wLjkgbCAzNS4yLC0yMS43IDAsMCB6IG0gLTM5LjgsMjIuNCBjIDAuMiwwLjggMC4zLDEuMyAxLjMsMS4zIGggNi4yIHYgMzQuNiBjIDAsMC41IDAuMSwwLjUgMC4yLDAuOSBoIDY0IGMgMC40LDAgMC44LC0wLjMgMC44LC0wLjggViA5NS4yIGggNiBjIDAuOCwwIDEuMywtMC40IDEuMywtMS4xIDAsLTAuNiAtMTcuOCwtMTEuMiAtMTkuOCwtMTIuNSAtMS42LC0xIC0yMCwtMTIuMyAtMjAsLTEyLjMgLTAuMiwwIC0zNi43LDIyLjUgLTQwLDI0LjcgbCAwLDAgeiBtIDIwLjksMTQuMiA1LjksNC4zIC0wLjEsMC4xIC00LjgsMi4yIGMgLTAuMiwtMC44IC0xLC0xLjkgLTEsLTIuNSB2IC00LjEgeiBtIDI4LjQsLTguOCBjIDAuNSwtMC44IDAuNiwtMi45IDEsLTMuMSAwLjQsLTAuMiAyLjQsMC44IDIuOSwwLjkgdiAzLjYgbCAtNC40LDEuNyB2IC0wLjYgYyAtMCwtMC45IDAuNSwtMSAwLjUsLTIuNCB6IG0gLTMsMiBjIDAsMC45IDAsMS4xIC0wLjQsMS43IFYgMTA0IGMgLTIuNCwwLjIgLTE1LjQsNy41IC0xNyw3LjUgLTAuNSwwIC02LjUsLTYuNyAtNy4zLC02LjcgaCAtNC4zIGMgLTAuNSwwIC0yLjgsNS4yIC0yLjgsNS42IHYgNC43IGMgMCwwLjkgMS44LDEuNCAyLDIuNCBsIC00LjEsMS43IDEuMywyLjYgNi4yLC0yLjggYyAxLjUsMC44IDkuMyw1LjYgMTAuNSw1LjYgaCAwLjYgYyAwLjgsMCAxLjksLTAuOCAxLjksLTEuNSB2IC0wLjQgYyAwLC0wLjkgLTcuMywtNC44IC04LjQsLTUuOCBsIDE0LC02LjMgdiA4LjQgaCAtMyB2IDYuNyBoIDguNCB2IC02LjcgaCAtMi44IHYgLTkuOSBsIDEzLjIsLTUuOCBjIDAsMS42IDAuMiwzLjcgMC40LDUuMSAwLjIsMS44IC0wLjYsMy45IDEuNSwzLjkgMi4xLDAgMS4zLC0yLjUgMS4zLC00LjMgMCwtMS45IC0wLjIsLTMuNSAtMC4yLC01LjYgdiAtMC42IGwgOS4xLC00IC0xLC0yLjkgLTYuMiwyLjggYyAwLjMsLTAuNiAwLjcsLTAuOCAxLC0xLjQgMC4yLC0wLjcgMC40LC0xLjIgMC43LC0xLjggMC41LC0xIDAuOSwtMi42IDEuNCwtMy40IGwgLTExLjQsLTEuNiBjIC0wLjYsMC41IC0zLjIsMy4zIC0zLjIsNC4yIHYgMC42IGggLTAuNCBsIC0xLjEsNy4xIHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDgxLDExMi4yIGMgMCwwLjYgMC44LDEuNyAxLDIuNSBsIDQuOCwtMi4yIDAuMiwtMC4xIC02LC00LjMgdiA0LjEgeiBtIDI4LjQsLTEyLjkgYyAwLDEuNCAtMC42LDEuNiAtMC42LDIuNCB2IDAuNiBsIDQuNSwtMS43IHYgLTMuNiBjIC0wLjUsLTAuMSAtMi42LC0xIC0yLjksLTAuOSAtMC40LDAuMiAtMC41LDIuNCAtMSwzLjEgeiBtIC0zMi45LDAuOSBjIDAsLTMuOSA2LC00IDYsMC40IDAsMS40IC0xLjEsMyAtMi40LDMgaCAtMC41IGMgLTEuOCwwIC0zLC0xLjYgLTMsLTMuNCB6IG0gMjkuNSwyLjggMC40LC0xLjcgMS4xLC03LjEgaCAwLjQgdiAtMC42IGMgMCwtMC44IDIuNiwtMy43IDMuMiwtNC4yIGwgMTEuNCwxLjYgYyAtMC41LDAuOCAtMC45LDIuNCAtMS40LDMuNCAtMC4zLDAuNiAtMC40LDEuMSAtMC43LDEuOCAtMC4zLDAuNyAtMC43LDAuOCAtMSwxLjQgbCA2LjIsLTIuOCAxLDIuOSAtOS4xLDQgdiAwLjYgYyAwLDIuMSAwLjIsMy43IDAuMiw1LjYgMCwxLjggMC44LDQuMyAtMS4zLDQuMyAtMi4xLDAgLTEuMywtMi4yIC0xLjUsLTMuOSAtMC4yLC0xLjQgLTAuNCwtMy41IC0wLjQsLTUuMSBsIC0xMy4yLDUuOCB2IDkuOSBoIDIuOCB2IDYuNyBoIC04LjQgdiAtNi43IGggMyB2IC04LjQgbCAtMTQsNi4zIGMgMS4xLDAuOSA4LjQsNC45IDguNCw1LjggdiAwLjQgYyAwLDAuNyAtMSwxLjUgLTEuOSwxLjUgSCA5MC42IGMgLTEuMiwwIC04LjksLTQuOCAtMTAuNSwtNS42IGwgLTYuMiwyLjggLTEuMywtMi42IDQuMSwtMS43IGMgLTAuMywtMSAtMiwtMS41IC0yLC0yLjQgdiAtNC42IGMgMCwtMC40IDIuMywtNS42IDIuOCwtNS42IGggNC4zIGMgMC44LDAgNi44LDYuNyA3LjMsNi43IDEuNSwwIDE0LjYsLTcuMyAxNywtNy41IHYgLTAuOSB6IG0gLTMsLTE0LjggYyAwLC0xLjIgMS43LC0yLjYgMy4yLC0yLjYgaCAwLjIgYyAxLjIsMCAyLjgsMS4xIDIuOCwyIHYgMS4zIGMgMCwxLjYgLTEuNCwyLjggLTMsMi44IGggLTAuNCBjIC0xLjQsMCAtMi44LC0xLjcgLTIuOCwtMy4yIHYgLTAuNCB6IG0gLTM4LjQsNC45IGMgMS4zLDAuMSA0LjYsLTAuMyA0LjYsMC44IHYgMzQuOSBoIDYxLjQgViA5NC4xIGMgMCwtMS4yIDMuMywtMC44IDQuNiwtMC45IGwgLTM1LjQsLTIxLjcgLTM1LjIsMjEuOCAwLDAgelwifV0saVtcIkdSLklOLklDLkhFTElDT1BURVIgTEFORElORyBTSVRFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6byxkOlwiTTgwLDcwIGwxMCwxMCBNMTIwLDExMCBsLTEwLC0xMCBNODAsMTEwIGwxMCwtMTAgTTEyMCw3MCBsLTEwLDEwIE0xMDAsMTE1IGwwLDIwIE05NSwxMzUgbDEwLDBcIixmaWxsOiExfSx7dHlwZTpcInBhdGhcIixzdHJva2U6byxmaWxsOiEhUiYmRyxkOlwibSAxMTMsOTAgYyAtMC4zLDguOCAtMS45LDIwLjMgLTEwLjgsMjQuNiAtNy43LDIgLTEyLjMsLTcuMSAtMTMuOCwtMTMuMyAtMi42LC0xMS41IC0yLjMsLTI2IDYuOSwtMzQuNiA2LjAsLTQuOSAxMy4xLDEuOSAxNC45LDcuOCAyLDQuOSAyLjgsMTAuMiAyLjgsMTUuNSB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NDB9XSxpW1wiR1IuSU4uSUMuVFJBTlNQT1JUQVRJT04gSU5GUkFTVFJVQ1RVUkUgTE9DS1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw3MCA2NSwzMCAtNjUsMzBcIn1dLGlbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBTSElQIEFOQ0hPUkFHRVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6XCJyZ2IoMjU1LCAwLCAyNTUpXCIsZDpcIm0gNzMuNiwxMTIuOCBjIDAuOCw4IDI2LjQsMTEuMiAyNi40LDExLjIgMCwwIDI1LjYsLTMuMiAyNi40LC0xMS4yIE0gODAsODggbCA0MCwwIG0gLTIwLC0xMiAwLDQ4XCJ9XSxpW1wiR1IuSU4uSUMuTkFUVVJBTCBHQVMgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDYwLjUgYyAtMTYuNCwwIC0yOS42LDEzLjIgLTI5LjYsMjkuNiAwLDEyLjggOC4zLDIzLjkgMTkuNywyNy44IGwgMCwxOS43IGMgMy4yLDEuMiA2LjMsMS44IDkuOSwxLjggMy42LDAgNi43LC0wLjYgOS45LC0xLjggbCAwLC0xOS44IGMgMTEuNSwtMy45IDE5LjgsLTE1IDE5LjcsLTI3LjggMCwtMTYuNCAtMTMuMiwtMjkuNiAtMjkuNiwtMjkuNiB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMyxmb250c2l6ZTozNSx0ZXh0OlwiTkdcIn1dLGlbXCJHUi5JTi5JQy5UT0xMIEZBQ0lMSVRZXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gNjkuMSwxMTIuMyBjIDAsLTAuNyAwLjgsLTEuNyAxLjQsLTEuNyBoIDAuNSBjIDAuOCwwIDEuNSwwLjggMS41LDEuNSB2IDEuMiBjIDAsMC41IC0wLjksMS4yIC0xLjUsMS4yIGggLTAuMiBjIC0wLjgsMCAtMS43LC0wLjggLTEuNywtMS40IHYgLTAuOSBsIDAsMCB6IG0gLTEuMSwwLjUgdiAwLjMgYyAwLDEuMiAxLjUsMi42IDIuOSwyLjYgMS4zLDAgMi44LC0xLjUgMi44LC0yLjUgdiAtMSBjIDAsLTEuMiAtMS40LC0yLjYgLTIuOCwtMi42IC0xLjcsMCAtMi45LDEuNiAtMi45LDMuMiB6IG0gMjcuNiwtMTEuNiAtMiwtMi44IC0yLjMsMCA0LjMsMi44IHogbSAtMjkuNSwxNy44IGMgMCwtMC41IDAuOCwtMC45IDEuNCwtMC45IEggOTkuMSBjIDAuOCwwIDEuMywwLjYgMS40LDEuNCAtMC42LDAuMSAtMSwwLjMgLTEuNywwLjMgSCA2OCBjIC0wLjYsMCAtMS44LDAgLTEuOCwtMC42IHYgLTAuMiB6IG0gOS40LC0xMC4yIDE1LjEsMCA4LjIsMC4yIGMgMC41LDAuOSAyLDMgMS44LDQuMyBsIC0wLjIsMi42IGMgLTAuNSwwLjIgLTAuNSwwLjMgLTEsMC4zIEggNjcuMSBjIC0wLjYsMCAtMC41LC0wLjIgLTEuMSwtMC4zIC0wLjEsLTAuNyAtMC4zLC0xIC0wLjMsLTEuOCB2IC0wLjYgYyAwLC0xLjEgMS41LC0zLjUgMiwtNC40IGwgNy44LC0wLjIgeiBtIC01LjgsLTIgYyAwLjEsLTEuMSAzLjUsLTcuMSA0LjMsLTcuMSBoIDE4LjQgYyAxLDAgNCw1LjggNC4zLDcuMSBIIDY5LjcgeiBtIDIxLjcsLTguNCAyLjMsLTAgMiwyLjggLTQuMywtMi44IHogbSA0NC4zLDI3LjggViA3My44IGMgLTEsMC4yIC0xMC4zLDYgLTExLjksNyAtMS4zLDAuOCAtMTEuNiw2LjUgLTExLjYsNy4yIDAsMCAxLjMsMi4xIDEuNCwyLjMgbCA0LjksLTIuOCB2IDE5LjIgbCAtMC40LDAuMyBjIC0yLjksLTIgLTMzLjQsLTIyIC0zMy42LC0yMiAtMC4xLDAgLTMuOSw1LjYgLTQsNi4yIGwgMTAuOCw3IC0xOC4zLDAgYyAtMC45LDEuNCAtMS45LDIuNCAtMi44LDMuOCAtMC4yLDAuMyAtMiw0LjQgLTIsNC42IHYgMC44IGggLTEuMiBjIC0wLjEsMC45IC0yLjYsNC42IC0yLjYsNS40IHYgMC44IGMgMCwxLjUgMC40LDIuOSAxLjQsMy40IC0wLjIsMC4zIC0xLDEuMSAtMSwxLjYgdiAwLjkgYyAwLDEuMSAxLjUsMS41IDIuNiwxLjUgdiAyLjMgbCAwLjIsMiBjIDAuNSwwLjIgMC4zLDAuNSAxLjIsMC42IDAuNiwwLjEgMSwwLjIgMS43LDAuMiBoIDEuMSBsIDEuNywtMC4yIDAuMywtMC4zIDAuMiwtMiAwLC0yLjUgaCAxOS4xIHYgMy4xIGMgMCwwLjggMC4zLDEuMiAwLjYsMS43IGwgMS40LDAuMiAxLjIsLTAgYyAxLjcsMCAzLjEsLTAuMSAzLjEsLTEuOCB2IC0zLjEgYyAwLjgsLTAuMiAyLjYsLTAuNSAyLjYsLTEuNCB2IC0xLjcgYyAwLC0wLjUgLTAuNSwtMC43IC0wLjksLTAuOCAwLjEsLTAuNSAxLjIsLTEuMSAxLjIsLTIuNSB2IC0yIGMgMCwtMS41IC0yLjEsLTQuMSAtMi41LC01LjQgaCAtMS4yIHYgLTAuNCBjIDAsLTEuMSAtMi4yLC00LjggLTIuNSwtNS44IGwgMTksMTIuNSBjIC0wLjQsMS42IC0yLDQgLTIsNS4yIHYgNy4yIGggMjIuOSBsIDAsMCB6IE0gOTUuOSwxMTQuNiBIIDk1LjcgYyAtMS4xLDAgLTEuOCwtMC43IC0xLjgsLTEuNyB2IC0wLjUgYyAwLC0xIDAuNiwtMS44IDEuNSwtMS44IGggMC41IGMgMSwwIDEuNSwxLjEgMS41LDIgMCwxLjEgLTAuNSwyIC0xLjUsMiB6IG0gLTMuMSwtMi41IHYgMS4xIGMgMCwxIDEuNiwyLjUgMi45LDIuNSAxLjQsMCAyLjYsLTEuMyAyLjYsLTIuOCB2IC0wLjggYyAwLC0xLjIgLTEuMywtMi42IC0yLjUsLTIuNiBIIDk1LjcgYyAtMS40LDAgLTIuOSwxLjQgLTIuOSwyLjYgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTE0LjUsMTA3LjkgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBtIC0xMS4yLC03LjIgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBtIC01LjUsLTMuNyBjIDAsMC45IC0wLjgsMS42IC0xLjgsMS42IC0xLDAgLTEuOCwtMC43IC0xLjgsLTEuNiAwLC0wLjkgMC44LC0xLjYgMS44LC0xLjYgMSwwIDEuOCwwLjcgMS44LDEuNiB6IE0gMTA4LjksMTA0LjUgYyAwLDAuOSAtMC44LDEuNiAtMS44LDEuNiAtMSwwIC0xLjgsLTAuNyAtMS44LC0xLjYgMCwtMC45IDAuOCwtMS42IDEuOCwtMS42IDEsMCAxLjgsMC43IDEuOCwxLjYgeiBNIDkyLjMsOTMuNSBjIDAsMC45IC0wLjgsMS42IC0xLjgsMS42IC0xLDAgLTEuOCwtMC43IC0xLjgsLTEuNiAwLC0wLjkgMC44LC0xLjYgMS44LC0xLjYgMSwwIDEuOCwwLjcgMS44LDEuNiB6IE0gODYuNSw4OS44IGMgMCwwLjkgLTAuOCwxLjYgLTEuOCwxLjYgLTEsMCAtMS44LC0wLjcgLTEuOCwtMS42IDAsLTAuOSAwLjgsLTEuNiAxLjgsLTEuNiAxLDAgMS44LDAuNyAxLjgsMS42IHogbSAzNS42LDIuNiAxMC44LDAgMCwxNi4xIC0xMC44LDAgeiBtIC01NS45LDI2LjQgdiAwLjIgYyAwLDAuNiAxLjIsMC42IDEuOCwwLjYgaCAzMC44IGMgMC43LDAgMS4xLC0wLjIgMS43LC0wLjMgLTAuMSwtMC44IC0wLjYsLTEuNCAtMS40LC0xLjQgSCA2Ny41IGMgLTAuNSwwIC0xLjQsMC40IC0xLjQsMC45IHogbSAyNi42LC02LjggYyAwLC0xLjIgMS41LC0yLjYgMi45LC0yLjYgaCAwLjIgYyAxLjIsMCAyLjUsMS40IDIuNSwyLjYgdiAwLjggYyAwLDEuNCAtMS4yLDIuOCAtMi42LDIuOCAtMS40LDAgLTIuOSwtMS40IC0yLjksLTIuNSB2IC0xIGggLTAgeiBtIC0yNC44LDAuNiBjIDAsLTEuNiAxLjIsLTMuMiAyLjksLTMuMiAxLjMsMCAyLjgsMS41IDIuOCwyLjYgdiAxLjEgYyAwLDAuOSAtMS40LDIuNSAtMi44LDIuNSAtMS40LDAgLTIuOSwtMS40IC0yLjksLTIuNiB2IC0wLjMgeiBtIC0wLjMsLTMuOCBjIC0wLjUsMSAtMiwzLjQgLTIsNC40IHYgMC42IGMgMCwwLjkgMC4yLDEuMSAwLjMsMS44IDAuNSwwLjEgMC41LDAuMyAxLjEsMC4zIGggMzIuMyBjIDAuNiwwIDAuNSwtMC4yIDEsLTAuMyBsIDAuMiwtMi42IGMgMC4xLC0xLjIgLTEuNCwtMy40IC0xLjgsLTQuMyBsIC04LjIsLTAuMiAtMTUuMSwtMCAtNy44LDAuMiB6IG0gMiwtMi4yIGggMjcuMSBjIC0wLjQsLTEuMyAtMy4zLC03LjEgLTQuMywtNy4xIEggNzQgYyAtMC44LDAgLTQuMiw2IC00LjMsNy4xIHogbSAyNi4yLDcuOCBjIDEuMSwwIDEuNSwtMC45IDEuNSwtMiAwLC0wLjkgLTAuNiwtMiAtMS41LC0yIGggLTAuNSBjIC0xLDAgLTEuNSwwLjggLTEuNSwxLjggdiAwLjUgYyAwLDEgMC44LDEuNyAxLjgsMS43IGggMC4yIGwgMCwwIHogTSA2OS4xLDExMi4zIHYgMC45IGMgMCwwLjYgMSwxLjQgMS43LDEuNCBoIDAuMiBjIDAuNiwwIDEuNSwtMC44IDEuNSwtMS4yIHYgLTEuMiBjIDAsLTAuOCAtMC44LC0xLjUgLTEuNSwtMS41IGggLTAuNSBjIC0wLjYsMCAtMS40LDEgLTEuNCwxLjcgelwifV0saVtcIkdSLklOLklDLlRSQUZGSUMgSU5TUEVDVElPTiBGQUNJTElUWVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEyMS40LDgxLjcgaCAxLjEgdiAwLjYgYyAwLDAuNiAwLjgsMi4xIDEuMiwyLjQgMC41LDAuNCAxLjksMC45IDIuNywwLjkgMi42LDAgMy45LC0xLjkgMy45LC00LjUgdiAtMC41IGggLTcuNCBjIC0wLjUsMCAtMS4yLDAuOCAtMS40LDEuMSB6IG0gLTIyLjYsMjMuNSBjIDAsLTEuNyAxLjcsLTMgMy40LC0zIDEuNywwIDMuMSwxLjQgMy4xLDMuMSB2IDAuNiBjIDAsMS4zIC0xLjcsMi42IC0zLjEsMi42IC0xLjcsMCAtMy40LC0xLjMgLTMuNCwtMyB2IC0wLjUgeiBtIC0yOS43LDAgYyAwLC0xLjggMS4zLC0zIDMuMSwtMyAxLjcsMCAzLjMsMS40IDMuMywzLjEgdiAwLjMgYyAwLDEuNiAtMS42LDMgLTMuNCwzIC0xLjUsMCAtMywtMS4yIC0zLC0yLjYgdiAtMC44IHogbSAzLjcsLTcgYyAwLC0wLjQgMS42LC00LjIgMS45LC01IDAuNiwtMS43IDAuOSwtMy42IDMuMywtMy42IEggOTYuNSBjIDIuOCwwIDIuMiwxLjggMy4yLDMuNiAwLjIsMC40IDEuOCw0LjUgMS44LDQuOSBIIDcyLjggeiBtIC0zLjcsMSBjIC0yLjEsMCAtMy43LDEuNSAtMy43LDMuNiB2IDkuMiBjIDAsMSAxLjcsMi4zIDMuMSwyLjMgdiA1LjMgYyAwLDEuOCAxLjMsMy4zIDMuMywzLjMgMS40LDAgMy4xLC0xLjYgMy4xLC0yLjYgdiAtNS45IGggMjQuOCB2IDYuMiBjIDAsMSAxLjcsMi4zIDMsMi4zIGggMC4yIGMgMS40LDAgMy4xLC0xLjMgMy4xLC0yLjYgdiAtNS45IGMgMS45LDAgMy4zLC0xLjQgMy4zLC0zLjMgdiAtOC4xIGMgMCwtMiAtMS40LC0zLjMgLTMuMiwtMy43IC0xLjQsLTAuMiAtMS4xLC0wLjggLTEuNiwtMS45IC0wLjQsLTAuOCAtMC43LC0xLjYgLTEsLTIuNCAtMS4yLC0yLjYgLTIuMiwtOC4yIC01LjYsLTguMiBoIC0yMS4yIGMgLTIuOSwwIC0zLjUsMy4zIC00LjUsNS41IC0wLjYsMS40IC0yLjcsNS44IC0zLDcgeiBtIDU2LjUsMjAuMiAwLjMsLTMuMyAwLjUsLTYuMiBoIDEuNyBsIDAuOCwxMi45IGggNS44IFYgODguOSBjIDAsLTAuNiAtMS4yLC0xLjkgLTIsLTEuOSBsIC0wLjYsMC4xIC05LjksMTQuNiBoIDguNCB2IDMuNiBoIC0xMS4yIHYgMTcuNiBoIDYuMSBsIC0wLC0wLjggMC4yLC0yLjYgeiBtIC0xNi44LC0zMC44IGMgMC4yLC0wLjkgMSwtMS41IDIsLTEuNiB2IDIuMiBoIC0yIGMgMCwxLjQgMC44LDIuMiAyLjIsMi4yIHYgLTIgaCAyIGMgLTAsMS4zIC0wLjgsMS40IC0xLjQsMiBoIDcuOCBsIDAsMTAuMiAxMCwtMTQuMyAtMTAuMSwtMC4yIGggLTYuNCB2IC03LjYgYyAwLC0xLjIgLTAuOCwtMi4yIC0xLjksLTIuMiBoIC0wLjQgYyAtMi4yLDAgLTIsMi40IC0yLDQuNyAwLDEuMyAtMC40LDUuOCAwLjIsNi42IHogbSAwLDAgdiAwLjYgaCAyIHYgLTIuMiBjIC0xLjEsMCAtMS44LDAuNyAtMiwxLjYgeiBtIDIuMiwyLjggaCAwLjYgYyAwLjYsLTAuNiAxLjQsLTAuNyAxLjQsLTIgaCAtMiB2IDIgeiBtIDE5LjMsLTEyIDAsLTIgLTguOCwtMCAxLDIgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gMTMwLjMsNzkuNCAtNy45LC0wIDAuNCwxLjMgNy41LDAgeiBtIC04LjEsMjIuMiA5LjksLTE0LjYgMC42LC0wLjEgLTMuMSwwLjIgLTEwLDE0LjMgLTAuMSwzLjcgMTEuMiwwIDAsLTMuNiB6IG0gLTIzLjMsMy42IHYgMC41IGMgMCwxLjcgMS43LDMgMy40LDMgMS40LDAgMy4xLC0xLjQgMy4xLC0yLjYgdiAtMC42IGMgMCwtMS43IC0xLjQsLTMuMSAtMy4xLC0zLjEgLTEuOCwwIC0zLjQsMS4zIC0zLjQsMyB6IG0gLTI5LjcsMCB2IDAuOCBjIDAsMS40IDEuNSwyLjYgMywyLjYgMS44LDAgMy40LC0xLjMgMy40LC0zIHYgLTAuMyBjIDAsLTEuNiAtMS42LC0zLjEgLTMuMywtMy4xIC0xLjgsMCAtMy4xLDEuMiAtMy4xLDMgeiBtIDMuNywtNyBoIDI4LjYgYyAwLC0wLjUgLTEuNSwtNC41IC0xLjgsLTQuOSAtMSwtMS44IC0wLjQsLTMuNiAtMy4yLC0zLjYgSCA3Ny45IGMgLTIuNCwwIC0yLjYsMS45IC0zLjMsMy42IC0wLjIsMC44IC0xLjgsNC42IC0xLjgsNSB6XCJ9XSxpW1wiR1IuSU4uSUMuVFVOTkVMXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTQuNCwxMTYuOCBjIDAsLTMuNSAyLjYsLTcuMiA1LjksLTcuMiAzLjIsMCA1LjYsNCA1LjYsNy4xIHYgMC44IEggOTQuNCB2IC0wLjcgeiBtIDI3LjIsLTQuNyA5LC00LjIgYyAwLjIsMS43IDAuOCwzLjIgMSw1LjIgMC4zLDEuOCAwLjYsMy4zIDAuNiw1LjYgdiAwLjUgaCAtMTAgbCAtMC43LC03LjEgeiBtIC00My41LDQuOSAwLjEsMi4yIEggNjggYyAwLC0xLjYgMC4zLC0zLjggMC42LC01LjQgMC4xLC0wLjcgMC4yLC0xLjggMC41LC0yLjQgMC4xLC0wLjIgMC43LC0yLjIgMC43LC0yLjQgbCA5LjIsMy4xIC0wLjgsNC45IHogbSAzOSwtMTYuOCA2LjIsLTYuMiBjIDAuNiwxIDEuMiwxLjggMS45LDIuOCAwLjgsMS4xIDEuMiwyIDEuOCwzLjEgMC42LDEgMi44LDUuNiAyLjgsNi45IGwgLTguNyw0LjIgYyAtMC4xLC0yLjUgLTMsLTkgLTQsLTEwLjYgeiBtIC0zNy45LDEwLjQgLTkuMSwtMyBjIDAuMSwtMS4yIDIuNCwtNS45IDMsLTcgMS4yLC0yLjEgMywtNC4yIDQsLTYgbCA3LjYsNC40IGMgLTAuMiwwLjUgLTIuNiw0LjMgLTMsNS40IC0wLjgsMS43IC0xLjYsNC45IC0yLjQsNi4yIHogTSAxMTEuMiw4My4yIGMgMi44LDAuNyA5LjgsNy4xIDExLjMsOS40IGwgLTYuMyw2LjIgYyAtMC41LC0xLjggLTYsLTYuOSAtOC4yLC03LjQgbCAzLjIsLTguMiB6IE0gNzguMSw5My40IEMgNzkuNyw5MSA4OCw4My44IDkxLDgzLjEgTCA5NC45LDkxIGMgLTIuNiwwLjYgLTcuOSw1IC05LjIsNi45IGwgLTcuNiwtNC41IHogTSA5Mi42LDgyLjQgYyAyLjYsLTAuNiA0LjEsLTEuOCA3LjgsLTEuOCBoIDEuNCBjIDQsMCA1LjMsMS4yIDguMSwxLjggLTAsMSAtMS45LDUuMiAtMi4zLDYuMyAtMC42LDEuNCAtMC40LDIgLTIuMiwxLjUgLTEuMSwtMC4zIC0yLjQsLTAuNiAtMy42LC0wLjYgaCAtMSBMIDk2LjEsOTAuMyA5Mi42LDgyLjQgeiBNIDY2LjUsMTE5LjggSCA2MC40IGMgLTAuNCwwIC0wLjUsMC4xIC0wLjUsMC41IHYgMC4yIGMgMCwwLjQgMC4xLDAuNSAwLjUsMC41IGggNzkgYyAwLjMsMCAwLjcsLTAuMyAwLjcsLTAuNSAwLC0wLjQgLTAuMywtMC43IC0wLjcsLTAuNyBoIC01LjcgdiAtMS41IGMgMCwtMTAuMSAtNC45LC0yMC40IC05LjUsLTI1LjkgQyAxMTkuOCw4NyAxMTEuNiw3OSAxMDIuMiw3OSBoIC0yIGMgLTkuNywwIC0xOC44LDguNCAtMjMuNiwxMy43IC01LDUuNiAtMTAuMSwxNi42IC0xMC4xLDI3LjEgbCAwLDAgelwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzksMTEyIC05LjMsLTMuMSBjIC0wLDAuMiAtMC42LDIuMiAtMC43LDIuNCAtMC4yLDAuNiAtMC40LDEuNyAtMC41LDIuNCAtMC4yLDEuNSAtMC41LDMuOCAtMC41LDUuNCBoIDEwLjMgbCAtMC4xLC0yLjIgMC44LC00LjkgeiBtIDE1LjUsNS40IGggMTEuNCB2IC0wLjggYyAwLC0zLjEgLTIuNCwtNy4xIC01LjYsLTcuMSAtMy4zLDAgLTUuOSwzLjggLTUuOSw3LjIgdiAwLjcgeiBtIDI3LjksMS43IGggMTAgdiAtMC41IGMgMCwtMi4zIC0wLjQsLTMuOCAtMC42LC01LjYgLTAuMywtMiAtMC45LC0zLjUgLTEsLTUuMiBsIC05LDQuMiAwLjcsNy4xIHogbSAtNS4yLC0xOSBjIDEuMSwxLjYgNCw4LjEgNCwxMC42IGwgOC43LC00LjIgYyAwLC0xLjIgLTIuMSwtNS44IC0yLjgsLTYuOCAtMC43LC0xLjEgLTEuMSwtMiAtMS44LC0zLjEgLTAuNywtMSAtMS4zLC0xLjggLTEuOSwtMi44IGwgLTYuMiw2LjIgeiBtIC0zNy45LDEwLjQgYyAwLjcsLTEuNCAxLjYsLTQuNSAyLjQsLTYuMiAwLjUsLTEuMSAyLjksLTQuOSAzLC01LjQgbCAtNy42LC00LjQgYyAtMSwxLjggLTIuOCw0IC00LDYgLTAuNiwxLjEgLTIuOSw1LjggLTMsNyBsIDkuMSwzIHogbSAyOC44LC0xOS4xIGMgMi4xLDAuNSA3LjYsNS42IDguMiw3LjQgbCA2LjMsLTYuMSBjIC0xLjUsLTIuMyAtOC41LC04LjggLTExLjMsLTkuNSBsIC0zLjIsOC4yIHogbSAtMzAsMiA3LjYsNC42IEMgODcsOTYgOTIuMyw5MS42IDk0LjksOTEgbCAtMy44LC03LjkgYyAtMy4xLDAuNyAtMTEuNCw3LjkgLTEzLDEwLjMgeiBNIDkyLjYsODIuNCBsIDMuNSw3LjkgNC42LC0wLjYgaCAxIGMgMS4zLDAgMi42LDAuMyAzLjYsMC42IDEuNywwLjQgMS42LC0wLjEgMi4yLC0xLjUgMC40LC0xLjEgMi4zLC01LjMgMi4zLC02LjMgLTIuOCwtMC42IC00LC0xLjkgLTguMSwtMS45IGggLTEuNCBjIC0zLjYsMCAtNS4yLDEuMyAtNy43LDEuOSB6XCJ9XSxpW1wiR1IuSU4uSUMuUFVNUElORyBTVEFUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODMuMiw4My44IDAsMS4yIDAsNS42IC0xMS4zLDAgMCwtMCBjIC0wLjIsMCAtMC4zLDAgLTAuNSwwIC0wLjEsNi42ZS00IC0wLjEsLTkuNmUtNCAtMC4yLDAgLTIuNywwIC00LjksMC4zIC02LjUsMS43IC0xLjQsMS4yIC0yLDMuMyAtMi4xLDUuOSBsIC0wLjEsMCAwLDEuMiBjIDhlLTYsMC4xIC0wLDAuMiAtMCwwLjMgbCAwLDAgMCwxNC4xIC0yLjgsMCAwLDIuNCA4MC44LDAgMCwtMi40IC0yLjgsMCAwLC0xNCAwLC0xLjYgLTAuMSwwIGMgLTAuMSwtMi42IC0wLjUsLTQuNiAtMS44LC01LjkgLTEuNSwtMS40IC0zLjgsLTEuNyAtNi44LC0xLjcgbCAwLC0wIC0wLjMsMCBjIC0wLjIsLTUuNmUtNCAtMC4zLC0wIC0wLjQsLTAgbCAwLDAgLTExLjMsMCAwLC01LjYgMCwtMS4yIC0xLjIsMCAtMzEuMiwwIC0xLjIsMCB6IG0gMi40LDIuNCAyOC44LDAgMCwyNy4yIC0yOC44LDAgMCwtMjcuMiB6IE0gNzEuMiw5MyBjIDAuMSwtMCAwLjEsMCAwLjIsMCBsIDExLjgsMCAwLDguNCAtNy41LDAgYyAtMC44LC0wLjEgLTEuNCwtMC4xIC0yLC0wIC0wLDAgLTAsMCAtMC4xLDAgLTAsMCAtMCwtMCAtMCwwIGwgMCwwIGMgLTAuNSwwLjEgLTEuMiwwLjMgLTEuNSwwLjggLTAuNCwwLjUgLTAuNCwxLjEgLTAuNCwxLjYgLTAsMC40IC0wLDAuOCAwLDEuMiBsIC0wLDAgMCw4LjggLTYuOCwwIDAsLTE0LjUgYyAwLC0zIDAuNSwtNC41IDEuNCwtNS4zIEMgNjcuMSw5My4zIDY4LjcsOTMuMSA3MS4yLDkzIHogbSA0NS42LDAgMTEuOCwwIGMgMC4xLDkuN2UtNCAwLjEsLTAgMC4yLDAgMi44LDAuMSA0LjUsMC40IDUuMiwxLjEgMC44LDAuNyAxLjIsMi4zIDEuMiw1LjIgbCAwLDE0LjUgLTYuOCwwIDAsLTggMCwwIGMgLTAsLTAuMSAtMCwtMC4zIC0wLC0wLjQgMCwtMC45IDAuMiwtMS42IC0wLjEsLTIuNSAtMC4xLC0wLjUgLTAuNiwtMS4yIC0xLjIsLTEuNCAtMC4yLC0wLjEgLTAuNSwtMCAtMC43LC0wIGwgMCwtMC4xIC05LjYsMCAwLC04LjQgeiBNIDc0LDEwMy44IGwgOS4yLDAgMCwxMCAtOS4yLDAgMCwtOC41IDAsMCBjIDAsLTAuNiAtMCwtMS4xIC0wLC0xLjQgMCwtMC4xIC0wLC0wIDAsLTAuMSB6IG0gNDIuOCwwIDkuMiwwIGMgMCwwLjIgMCwwLjggMCwxLjYgbCAtMCwwIDAsOC40IC05LjIsMCAwLC0xMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxmaWxsOiEhUiYmRyxkOlwibSAxMTYuOCw5MyAxMS44LDAgYyAwLjEsOS43ZS00IDAuMSwtMCAwLjIsMCAyLjgsMC4xIDQuNSwwLjQgNS4yLDEuMSAwLjgsMC43IDEuMiwyLjMgMS4yLDUuMiBsIDAsMTQuNSAtNi44LDAgMCwtOCAwLDAgYyAtMCwtMC4xIC0wLC0wLjMgLTAsLTAuNCAwLC0wLjkgMC4yLC0xLjYgLTAuMSwtMi41IC0wLjEsLTAuNSAtMC42LC0xLjIgLTEuMiwtMS40IC0wLjIsLTAuMSAtMC41LC0wIC0wLjcsLTAgbCAwLC0wLjEgLTkuNiwwIDAsLTguNCB6IG0gLTQ1LjYsMCBjIDAuMSwtMCAwLjEsMCAwLjIsMCBsIDExLjgsMCAwLDguNCAtNy41LDAgYyAtMC44LC0wLjEgLTEuNCwtMC4xIC0yLC0wIC0wLDAgLTAsMCAtMC4xLDAgLTAsMCAtMCwtMCAtMCwwIGwgMCwwIGMgLTAuNSwwLjEgLTEuMiwwLjMgLTEuNSwwLjggLTAuNCwwLjUgLTAuNCwxLjEgLTAuNCwxLjYgLTAsMC40IC0wLDAuOCAwLDEuMiBsIC0wLDAgMCw4LjggLTYuOCwwIDAsLTE0LjUgYyAwLC0zIDAuNSwtNC41IDEuNCwtNS4zIEMgNjcuMSw5My4zIDY4LjcsOTMuMSA3MS4yLDkzIHogbSAxNC40LC02LjggMjguOCwwIDAsMjcuMiAtMjguOCwwIDAsLTI3LjIgelwifV0saVtcIkdSLklOLklDLlJFU0VSVk9JUlwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDEyNy4zIDY5LjEgQyAxMjcgNjkuMSAxMjYuNyA2OS4yIDEyNi40IDY5LjIgQyAxMjMuNCA2OS41IDEyMC44IDcxLjkgMTE4LjQgNzQuNSBDIDExNS45IDc3IDExMy41IDc5LjcgMTExLjUgODAuOSBDIDEwOC45IDgyLjQgMTA1LjUgODIuNSAxMDEuOSA4Mi42IEMgOTguMyA4Mi43IDk0LjcgODIuOSA5MS44IDg0LjkgQyA4OS43IDg2LjUgODguNiA4OC41IDg3LjUgOTAuMyBDIDg2LjQgOTIgODUuMiA5My40IDgyLjcgOTQuMiBDIDc5LjQgOTUuMyA3MiA5Ni40IDY2LjkgOTguOCBDIDY0LjMgMTAwLjEgNjIuMSAxMDEuNyA2MS41IDEwNCBDIDYwLjggMTA2LjMgNjEuNyAxMDkuMSA2NC43IDExMi4zIEwgNjUuMSAxMTEuOSBMIDY1LjEgMTIwLjEgTCA4NC4zIDEyMC4xIEwgODQuMyAxMjkuNyBMIDg2LjcgMTI5LjcgTCA4Ni43IDEyMC4xIEwgOTcuOSAxMjAuMSBMIDk3LjkgMTI5LjcgTCAxMDAuMyAxMjkuNyBMIDEwMC4zIDEyMC4xIEwgMTE3LjEgMTIwLjEgTCAxMTcuMSAxMTIuNSBDIDExNy40IDExMi4yIDExNy43IDExMS45IDExOCAxMTEuNSBDIDExOSAxMTAuMSAxMTkuMyAxMDguNSAxMTkuNSAxMDYuOSBDIDExOS44IDEwMy43IDExOS41IDEwMC41IDEyMS43IDk3LjcgQyAxMjMuMSA5NS45IDEyNiA5NS40IDEyOS4xIDk0LjcgQyAxMzIuMSA5NC4xIDEzNS40IDkzLjMgMTM3LjIgOTAuNCBDIDEzOS40IDg2LjcgMTM5LjEgODEuMyAxMzcuMiA3Ni44IEMgMTM2LjMgNzQuNSAxMzQuOSA3Mi41IDEzMyA3MS4xIEMgMTMxLjQgNjkuOSAxMjkuNSA2OS4xIDEyNy4zIDY5LjEgeiBNIDEyNy40IDcwLjcgQyAxMjkuMiA3MC43IDEzMC43IDcxLjMgMTMyLjEgNzIuMyBDIDEzMy42IDczLjUgMTM0LjkgNzUuNCAxMzUuOCA3Ny40IEMgMTM3LjUgODEuNSAxMzcuNiA4Ni42IDEzNS44IDg5LjYgQyAxMzQuNSA5MS44IDEzMS43IDkyLjUgMTI4LjcgOTMuMiBDIDEyNS43IDkzLjggMTIyLjQgOTQuMyAxMjAuNSA5Ni43IEMgMTE3LjggMTAwIDExOC4yIDEwMy43IDExNy45IDEwNi43IEMgMTE3LjggMTA4LjIgMTE3LjUgMTA5LjUgMTE2LjcgMTEwLjYgQyAxMTYuNSAxMTAuOCAxMTYuMyAxMTEuMSAxMTYuMSAxMTEuMyBMIDY1LjggMTExLjMgTCA2NS45IDExMS4zIEMgNjMuMSAxMDguMiA2Mi42IDEwNi4xIDYzIDEwNC40IEMgNjMuNSAxMDIuOCA2NS4yIDEwMS40IDY3LjYgMTAwLjMgQyA3Mi4zIDk4IDc5LjUgOTYuOSA4My4xIDk1LjggQyA4Ni4xIDk0LjggODcuNyA5Mi45IDg4LjggOTEuMSBDIDkwIDg5LjMgOTAuOSA4Ny41IDkyLjggODYuMiBDIDk1LjEgODQuNSA5OC40IDg0LjMgMTAyIDg0LjIgQyAxMDUuNSA4NC4xIDEwOS4yIDg0LjEgMTEyLjMgODIuMyBDIDExNC43IDgwLjggMTE3LjEgNzguMSAxMTkuNSA3NS42IEMgMTIxLjkgNzMuMSAxMjQuNCA3MSAxMjYuNiA3MC44IEMgMTI2LjkgNzAuOCAxMjcuMSA3MC43IDEyNy40IDcwLjcgeiBcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDEyNy40LDcwLjcgYyAxLjgsLTAgMy4zLDAuNiA0LjcsMS42IDEuNSwxLjIgMi44LDMgMy43LDUuMSAxLjcsNC4xIDEuOSw5LjIgMC4xLDEyLjIgLTEuMywyLjIgLTQuMSwzIC03LjEsMy42IC0zLDAuNiAtNi4zLDEuMSAtOC4zLDMuNSAtMi42LDMuMyAtMi4zLDcuMSAtMi42LDEwIC0wLjEsMS41IC0wLjQsMi44IC0xLjIsMy44IC0wLjIsMC4yIC0wLjQsMC41IC0wLjYsMC43IGwgLTUwLjIsMCAwLC0wIGMgLTIuOCwtMyAtMy4zLC01LjIgLTIuOCwtNi44IDAuNSwtMS42IDIuMSwtMyA0LjUsLTQuMiA0LjgsLTIuMyAxMS45LC0zLjQgMTUuNiwtNC41IDMsLTEgNC41LC0yLjggNS43LC00LjYgMS4yLC0xLjggMi4xLC0zLjYgMy45LC00LjkgMi4zLC0xLjcgNS43LC0xLjkgOS4yLC0yIDMuNSwtMC4xIDcuMywtMC4xIDEwLjMsLTEuOSAyLjUsLTEuNCA0LjgsLTQuMiA3LjIsLTYuNyAyLjQsLTIuNSA0LjksLTQuNiA3LjEsLTQuOCAwLjMsLTAgMC41LC0wLjEgMC44LC0wLjEgeiBtIC00MS45LDQ5IDEzLjYsMCAwLDEwIC0xMy42LDAgelwifV0saVtcIkdSLklOLklDLlNUT1JBR0UgVE9XRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMTguMywxMjEgMC40LDUuMyAwLjcsMTIuOCBoIDIuOSBjIDAsLTYuMSAtMS4xLC0xMi42IC0xLjEsLTE4LjYgMCwtMy40IC0wLjQsLTYuMiAtMC40LC05LjYgLTAuMSwtNS4zIDAuMiwtMyAyLjYsLTYuNiBsIC0wLjMsLTMuMSAwLC0xLjEgaCAtNC4yIFYgODQgYyAtMi41LDAuNiAtNS4yLDEuOCAtOC4zLDIuNiAtMi42LDAuNiAtNi40LDEuNCAtOS40LDEuNCBoIC0yLjQgYyAtNy42LDAgLTEyLjIsLTIuNiAtMTgsLTQgdiAxNi4yIGggLTQuMiB2IDAuNyBsIC0wLjMsMy43IDMuMiwzLjcgLTIsMzAuOCBoIDMuMSB2IC0zLjMgbCAxLjQsLTIxLjcgYyAwLjUsMC40IDIuMSwyLjcgMywzLjYgMC45LDAuOSAyLjQsMi4yIDMuNSwyLjkgMi4yLDEuNSA1LjYsMy44IDguNyw0LjEgdiAxNC40IGggNS42IHYgLTE0LjQgYyAzLjcsLTAuOSA2LjIsLTIuMiA4LjgsLTQuMyAxLjQsLTEuMSAyLjIsLTEuOCAzLjQsLTMgMC43LC0wLjcgMi41LC0zLjIgMywtMy40IHYgMy4xIGwgMC4yLDMuOCB6IE0gOTkuNyw4NS4yIGMgNy40LDAgMjMsLTQuNCAyNS43LC04LjQgLTIuOCwtMS41IC0yNS4xLC0xNiAtMjUuMywtMTYgLTAuNCwwIC0yNC45LDE1LjQgLTI1LjUsMTYuMiAyLjYsMy41IDE2LjYsOC4yIDIzLjMsOC4yIGggMS44IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDk3LjksODUuMiBjIC00LjMsMCAtMTEuNywtMiAtMTcsLTQuMyBsIC0wLDMuMiBjIDUuOCwxLjQgMTAuNCw0IDE4LDQgaCAyLjQgYyAzLDAgNi45LC0wLjggOS40LC0xLjQgMywtMC44IDUuOCwtMiA4LjMsLTIuNiBWIDgwLjggYyAtNiwyLjQgLTE0LjQsNC40IC0xOS4zLDQuNCBIIDk3LjkgelwifV0saVtcIkdSLklOLklDLlNVUkZBQ0UgV0FURVIgSU5UQUtFXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gNjMuNCA3NS41IEwgNjMuNCA3Ni4zIEwgNjMuNCA5MC43IEwgNjMuNCA5MS41IEwgNjQuMiA5MS41IEwgNzUuNyA5MS41IEMgNzYuNSA5Ni42IDc5LjggOTkuMSA4My4zIDEwMSBDIDg3LjEgMTAyLjkgOTEuMyAxMDQuMyA5My44IDEwNy41IEMgOTQuOCAxMDguOSA5NC45IDExMC43IDk1LjIgMTEyLjYgQyA5NS40IDExMy42IDk1LjYgMTE0LjUgOTYuMiAxMTUuNCBDIDk2LjcgMTE2LjIgOTcuNSAxMTcgOTguOCAxMTcuNSBDIDEwMS4yIDExOC42IDEwOC43IDEyMC43IDExNS45IDEyMi40IEMgMTE5LjYgMTIzLjIgMTIzLjEgMTIzLjkgMTI2IDEyNC4zIEMgMTI3LjUgMTI0LjQgMTI4LjcgMTI0LjUgMTI5LjggMTI0LjUgQyAxMzAuOCAxMjQuNCAxMzEuNiAxMjQuMyAxMzIuMiAxMjMuOCBDIDEzNC44IDEyMS43IDEzNi4xIDExOS45IDEzNi41IDExOC4zIEMgMTM2LjggMTE2LjggMTM2LjEgMTE1LjQgMTM1IDExNC40IEMgMTMzLjkgMTEzLjQgMTMyLjQgMTEyLjUgMTMxIDExMS43IEMgMTI5LjcgMTEwLjggMTI4LjQgMTA5LjkgMTI3LjcgMTA4LjggQyAxMjQuMiAxMDMuNiAxMjEgOTUuNSAxMTMuNCA5MS41IEwgMTE5IDkxLjUgTCAxMTkuOCA5MS41IEwgMTE5LjggOTAuNyBMIDExOS44IDc2LjMgTCAxMTkuOCA3NS41IEwgMTE5IDc1LjUgTCA2NC4yIDc1LjUgTCA2My40IDc1LjUgeiBNIDY1IDc3LjEgTCAxMTguMiA3Ny4xIEwgMTE4LjIgODkuOSBMIDEwOS40IDg5LjkgTCAxMDkuNCA4MS4xIEwgNzMuOCA4MS4xIEwgNzMuOCA4OS45IEwgNjUgODkuOSBMIDY1IDc3LjEgeiBNIDc2LjkgOTEuNSBMIDExMC41IDkxLjUgQyAxMTkuNCA5NC44IDEyMi43IDEwMy41IDEyNi43IDEwOS41IEMgMTI3LjYgMTEwLjggMTI5IDExMS44IDEzMC40IDExMi43IEMgMTMxLjggMTEzLjYgMTMzLjIgMTE0LjQgMTM0LjIgMTE1LjMgQyAxMzUuMSAxMTYuMiAxMzUuNiAxMTcgMTM1LjMgMTE4LjEgQyAxMzUuMSAxMTkuMiAxMzQgMTIwLjggMTMxLjQgMTIyLjkgQyAxMzEuMyAxMjMgMTMwLjYgMTIzLjIgMTI5LjcgMTIzLjMgQyAxMjguOCAxMjMuMyAxMjcuNiAxMjMuMyAxMjYuMiAxMjMuMSBDIDEyMy4zIDEyMi44IDExOS44IDEyMi4xIDExNi4yIDEyMS4zIEMgMTA5IDExOS42IDEwMS41IDExNy4zIDk5LjMgMTE2LjQgQyA5OC4yIDExNiA5Ny42IDExNS40IDk3LjIgMTE0LjggQyA5Ni44IDExNC4xIDk2LjYgMTEzLjMgOTYuNCAxMTIuNCBDIDk2LjEgMTEwLjYgOTYgMTA4LjUgOTQuNyAxMDYuOCBDIDkxLjkgMTAzLjIgODcuNiAxMDEuOCA4My45IDk5LjkgQyA4MC41IDk4LjEgNzcuNyA5Ni4xIDc2LjkgOTEuNSB6IFwifSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZmlsbDohIVImJkcsZDpcIm0gNzYuOSw5MS41IDMzLjYsMCBjIDguOSwzLjMgMTIuMiwxMiAxNi4yLDE4IDAuOSwxLjMgMi4zLDIuMyAzLjcsMy4yIDEuNCwwLjkgMi44LDEuNyAzLjgsMi42IDAuOSwwLjkgMS40LDEuNyAxLjIsMi44IC0wLjIsMS4xIC0xLjMsMi43IC0zLjksNC44IC0wLjIsMC4xIC0wLjgsMC4zIC0xLjcsMC40IC0wLjksMCAtMi4yLC0wIC0zLjYsLTAuMiAtMi44LC0wLjMgLTYuNCwtMSAtMTAsLTEuOCAtNy4yLC0xLjcgLTE0LjcsLTMuOSAtMTYuOSwtNC44IC0xLjEsLTAuNCAtMS42LC0xIC0yLjEsLTEuNyAtMC40LC0wLjcgLTAuNiwtMS41IC0wLjgsLTIuMyAtMC4zLC0xLjggLTAuNCwtMy45IC0xLjcsLTUuNiAtMi44LC0zLjYgLTcuMSwtNSAtMTAuOCwtNi45IEMgODAuNSw5OC4xIDc3LjcsOTYuMSA3Ni45LDkxLjUgeiBtIC0xMS45LC0xNC40IDUzLjIsMCAwLDEyLjggLTguOCwwIDAsLTguOCAtMzUuNiwwIDAsOC44IC04LjgsMCAwLC0xMi44IHpcIn1dLGlbXCJHUi5JTi5JQy5XQVJFSE9VU0UvU1RPUkFHRSBGQUNJTElUWVwiXT1be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEzLGZvbnRzaXplOjIzLHRleHQ6XCJTVE9SXCJ9XSxpW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDcuMiwxMTQuOCBjIDEuOSwwIDMuOSwtMSA0LjMsLTIuNCAxLjUsMSAxLjcsMi40IDQuNiwyLjQgaCAwLjQgYyAxLjgsMCAzLjgsLTEuMSA0LjEsLTIuNCBoIDAuNCBjIDAuNCwxLjQgMi41LDIuNCA0LjUsMi40IGggMC40IGMgMi43LDAgMywtMS41IDQuNSwtMi40IDAuNCwxLjQgMi42LDIuNCA0LjUsMi40IHYgLTEuNSBjIC0yLjIsMCAtMy41LC0xLjYgLTMuOSwtMy40IGggLTEuNSBjIC0wLDEuOCAtMS43LDMuNCAtMy42LDMuNCBoIC0wLjQgYyAtMi4yLDAgLTMuNiwtMS40IC0zLjgsLTMuNCBoIC0xLjcgbCAtMC4yLDEuMyBjIC0xLDAuNyAtMS4xLDIgLTMuMywyIGggLTAuNCBjIC0zLjMsMCAtMy4yLC0zLjQgLTQuMSwtMy40IGggLTEuMyBjIC0wLjIsMiAtMS40LDMuNCAtMy42LDMuNCB2IDEuNSB6IG0gLTIuMiwtMzMuMyBoIDMyIHYgMzcgaCAtMzIgViA4MS41IHogTSA2NS4xLDExNC44IHYgLTEuNSBjIDIsMCAzLjcsLTEuNiAzLjgsLTMuNCBoIDEuOSBjIDAsMS44IDEuNSwzLjQgMy40LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS45IGMgMCwyIDEuNywzLjQgMy44LDMuNCBoIDAuMiBjIDIuMiwwIDMuMiwtMS42IDMuNiwtMy40IGggMS43IGMgMCwyIDEuNywzLjQgMy44LDMuNCB2IDEuNSBjIC0yLDAgLTQuMSwtMSAtNC41LC0yLjQgLTEuNCwwLjkgLTEuNywyLjUgLTQuNiwyLjUgaCAtMC42IGMgLTIuOSwwIC0zLjEsLTEuNSAtNC41LC0yLjQgLTAuNCwxLjMgLTIuNCwyLjQgLTQuMSwyLjQgSCA3NC4xIGMgLTIuNCwwIC0zLjQsLTEuMiAtNC41LC0yLjQgLTAuNCwxLjQgLTIuNiwyLjQgLTQuNSwyLjQgbCAwLDAgeiBNIDk2LjUsOTMuNCBoIDYuNyB2IDEzLjMgSCA5Ni41IFYgOTMuNCB6IG0gLTMxLjQsNy45IGMgMiwwIDMuNiwtMS41IDMuOCwtMy40IGggMS45IGMgMC4yLDEuOCAxLjQsMy40IDMuNCwzLjQgaCAwLjQgYyAxLjgsMCAzLjUsLTEuNyAzLjYsLTMuNCBoIDEuOSBjIDAsMiAxLjcsMy40IDMuOCwzLjQgaCAwLjIgYyAxLjUsMCAzLjQsLTEuNSAzLjQsLTIuNiB2IC0wLjggaCAxLjkgYyAwLDEuOSAxLjgsMy40IDMuOCwzLjQgdiAxLjUgYyAtMy42LDAgLTMuOCwtMiAtNC45LC0yLjIgLTAuNCwxLjMgLTIuNSwyLjIgLTQuMiwyLjIgaCAtMC42IGMgLTEuNywwIC0zLjgsLTEgLTQuMSwtMi4yIC0xLDAuMyAtMS40LDIuMiAtNC41LDIuMiBIIDc0LjEgYyAtMi43LDAgLTMsLTEuMyAtNC41LC0yLjIgLTEsMS40IC0yLjIsMi4yIC00LjUsMi4yIHYgLTEuNSBsIDAsMCB6IG0gMCwtMTIgYyAyLDAgMy42LC0xLjUgMy44LC0zLjQgaCAxLjkgYyAwLjEsMS44IDEuNCwzLjQgMy40LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS43IDMuNiwtMy40IGggMS45IGMgMCwyIDEuNywzLjQgMy44LDMuNCBoIDAuMiBjIDEuNSwwIDMuNCwtMS41IDMuNCwtMi42IHYgLTAuOCBoIDEuOSBjIDAsMS45IDEuOCwzLjQgMy44LDMuNCB2IDEuNSBjIC0zLjEsMCAtMywtMSAtNC43LC0yIC0xLjQsMSAtMS43LDIuMSAtNC40LDIuMSBoIC0wLjYgYyAtMi43LDAgLTIuOSwtMS4xIC00LjMsLTIgLTEuNiwxIC0xLjYsMiAtNC41LDIgSCA3My45IGMgLTIuNCwwIC0yLjksLTEuMiAtNC4xLC0yIC0xLjYsMSAtMS43LDIgLTQuNywyIHYgLTEuNSBsIDAsMCB6IG0gMzEuNCwyMS4zIGggNi43IHYgMTAuMSBoIDM1LjYgViA3OS40IEwgMTAzLjMsNzkuMiBWIDg5LjUgSCA5Ni41IFYgNzkuNCBMIDYxLjIsNzkuMiB2IDQxLjYgaCAzNS40IHYgLTEwLjEgeiBtIDE0LjIsLTEyLjIgYyAwLDEuNCAtMS44LDIuOCAtMy42LDIuOCB2IDEuNSBjIDMuNCwwIDMuNSwtMS45IDQuNywtMi4yIDAuNCwxLjMgMi43LDIuMiA0LjUsMi4yIGggMC4yIGMgMi45LDAgMywtMS4zIDQuMywtMi4yIDEuMiwwLjkgMS43LDIuMiA0LjMsMi4yIGggMC44IGMgMi42LDAgMywtMS4zIDQuMywtMi4yIDEuNCwxIDEuNSwyLjIgNC42LDIuMiB2IC0xLjUgYyAtMS43LDAgLTMuOCwtMS42IC0zLjgsLTIuOCB2IC0wLjYgaCAtMS43IGMgLTAuMSwxLjggLTEuNiwzLjQgLTMuNiwzLjQgaCAtMC42IGMgLTEuNCwwIC0zLjQsLTEuNCAtMy40LC0yLjQgdiAtMC45IGggLTEuOSBjIDAsMS43IC0xLjcsMy40IC0zLjUsMy40IGggLTAuNCBjIC0xLjksMCAtMy41LC0xLjUgLTMuNiwtMy40IGggLTEuOCB2IDAuNiB6IG0gMCwtMTIgYyAwLDEuNCAtMS44LDIuOCAtMy42LDIuOCB2IDEuNSBjIDEuOCwwIDQsLTAuOSA0LjMsLTIuMiAxLjYsMS4xIDEuNywyLjIgNC45LDIuMiBoIDAuNCBjIDIuNiwwIDIuOSwtMS4zIDQuMywtMi4yIDAuMywxLjMgMi40LDIuMyA0LjEsMi4zIGggMC44IGMgMi43LDAgMywtMS4zIDQuNSwtMi4yIDAuNCwxLjMgMi43LDIuMiA0LjUsMi4yIHYgLTEuNSBjIC0xLjcsMCAtMy44LC0xLjYgLTMuOCwtMi44IHYgLTAuNiBoIC0xLjcgYyAtMC4xLDEuOCAtMS42LDMuNCAtMy42LDMuNCBoIC0wLjYgYyAtMS42LDAgLTMuNCwtMS40IC0zLjQsLTIuOCB2IC0wLjYgaCAtMS45IGMgMCwxLjcgLTEuNywzLjQgLTMuNSwzLjQgaCAtMC40IGMgLTEuOSwwIC0zLjUsLTEuNSAtMy42LC0zLjQgaCAtMS44IHYgMC41IHpcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGZpbGw6ISFSJiZHLGQ6XCJtIDY1LjEsMTE0LjggYyAxLjksMCA0LjEsLTEgNC41LC0yLjQgMS4xLDEuMiAyLjIsMi40IDQuNSwyLjQgaCAwLjYgYyAxLjgsMCAzLjgsLTEuMSA0LjEsLTIuNCAxLjQsMSAxLjYsMi40IDQuNSwyLjQgaCAwLjYgYyAyLjgsMCAzLjIsLTEuNiA0LjUsLTIuNCAwLjQsMS40IDIuNSwyLjQgNC41LDIuNCB2IC0xLjUgYyAtMi4xLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjYgYyAtMC40LDEuOCAtMS40LDMuNCAtMy42LDMuNCBoIC0wLjIgYyAtMi4xLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjggYyAtMCwxLjggLTEuNywzLjQgLTMuNiwzLjQgSCA3NC4xIGMgLTEuOCwwIC0zLjMsLTEuNiAtMy40LC0zLjQgaCAtMS45IGMgLTAsMS44IC0xLjgsMy40IC0zLjgsMy40IHYgMS41IGwgMCwwIHogbSAwLC0xMy41IHYgMS41IGMgMi4zLDAgMy42LC0wLjkgNC41LC0yLjIgMS40LDEgMS44LDIuMiA0LjUsMi4yIGggMC42IGMgMy4xLDAgMy41LC0yIDQuNSwtMi4yIDAuNCwxLjMgMi40LDIuMiA0LjEsMi4yIGggMC42IGMgMS43LDAgMy44LC0xIDQuMSwtMi4yIDEuMSwwLjMgMS4yLDIuMiA0LjksMi4yIHYgLTEuNSBjIC0yLDAgLTMuOCwtMS40IC0zLjgsLTMuNCBoIC0xLjkgdiAwLjggYyAwLDEuMiAtMS45LDIuNiAtMy40LDIuNiBoIC0wLjIgYyAtMiwwIC0zLjcsLTEuNCAtMy44LC0zLjQgaCAtMS44IGMgLTAsMS42IC0xLjcsMy40IC0zLjYsMy40IEggNzQuMSBjIC0yLDAgLTMuMiwtMS41IC0zLjQsLTMuNCBoIC0xLjkgYyAtMC4yLDEuOCAtMS43LDMuNCAtMy44LDMuNCBsIDAsMCB6IG0gMCwtMTIgdiAxLjUgYyAzLDAgMy4xLC0xIDQuNywtMiAxLjIsMC45IDEuNywyIDQuMSwyIGggMC42IGMgMi45LDAgMi45LC0xIDQuNSwtMiAxLjQsMC45IDEuNiwyIDQuMywyIGggMC42IGMgMi43LDAgMi45LC0xLjEgNC4zLC0yIDEuNiwxLjEgMS42LDIgNC43LDIgdiAtMS41IGMgLTIsMCAtMy44LC0xLjQgLTMuOCwtMy40IGggLTEuOSB2IDAuOCBjIDAsMS4yIC0xLjksMi42IC0zLjQsMi42IGggLTAuMiBjIC0yLDAgLTMuNywtMS40IC0zLjgsLTMuNCBoIC0xLjggYyAtMCwxLjcgLTEuNywzLjQgLTMuNiwzLjQgSCA3NC4xIGMgLTIsMCAtMy4yLC0xLjUgLTMuNCwtMy40IGggLTEuOSBjIC0wLjIsMS44IC0xLjcsMy40IC0zLjgsMy40IGwgMCwwIHogbSA0Mi4xLDI1LjQgdiAtMS41IGMgMi4yLDAgMy40LC0xLjQgMy42LC0zLjQgaCAxLjMgYyAxLDAgMC44LDMuNCA0LjEsMy40IGggMC40IGMgMi4yLDAgMi40LC0xLjQgMy4zLC0yLjEgbCAwLjIsLTEuMyBoIDEuNyBjIDAuMiwyIDEuNiwzLjQgMy44LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS41IGMgMC40LDEuOCAxLjcsMy40IDMuOSwzLjQgdiAxLjUgYyAtMS45LDAgLTQuMSwtMSAtNC41LC0yLjQgLTEuNSwxIC0xLjgsMi41IC00LjUsMi41IGggLTAuNCBjIC0yLDAgLTQuMSwtMSAtNC41LC0yLjQgaCAtMC40IGMgLTAuNCwxLjMgLTIuMywyLjQgLTQuMSwyLjQgaCAtMC40IGMgLTIuOSwwIC0zLjEsLTEuNCAtNC43LC0yLjQgLTAuNCwxLjQgLTIuNCwyLjQgLTQuMywyLjQgeiBtIDMuNiwtMTYuOCBoIDEuOSBjIDAsMS44IDEuNiwzLjQgMy41LDMuNCBoIDAuNCBjIDEuOCwwIDMuNSwtMS42IDMuNiwtMy40IGggMS45IHYgMC45IGMgMCwxIDIsMi40IDMuNCwyLjQgaCAwLjYgYyAxLjksMCAzLjQsLTEuNiAzLjYsLTMuNCBoIDEuNyB2IDAuNiBjIDAsMS4yIDIsMi44IDMuOCwyLjggdiAxLjUgYyAtMy4xLDAgLTMuMiwtMS4yIC00LjcsLTIuMiAtMS4zLDAuOSAtMS43LDIuMiAtNC40LDIuMiBoIC0wLjcgYyAtMi42LDAgLTMsLTEuMyAtNC4zLC0yLjIgLTEuMywxIC0xLjQsMi4yIC00LjMsMi4yIGggLTAuMiBjIC0xLjgsMCAtNC4yLC0xIC00LjUsLTIuMiAtMS4yLDAuMyAtMS4yLDIuMiAtNC43LDIuMiB2IC0xLjUgYyAxLjgsMCAzLjYsLTEuNCAzLjYsLTIuOCB2IC0wLjYgbCAwLDAgeiBtIDAsLTEyIGggMS45IGMgMCwxLjkgMS42LDMuNCAzLjUsMy40IGggMC40IGMgMS44LDAgMy41LC0xLjYgMy42LC0zLjQgaCAxLjkgdiAwLjYgYyAwLDEuNCAxLjgsMi44IDMuNCwyLjggaCAwLjYgYyAxLjksMCAzLjQsLTEuNiAzLjYsLTMuNCBoIDEuNyB2IDAuNiBjIDAsMS4yIDIsMi44IDMuOCwyLjggdiAxLjUgYyAtMS44LDAgLTQuMiwtMSAtNC41LC0yLjIgLTEuNSwxIC0xLjgsMi4yIC00LjYsMi4yIGggLTAuNyBjIC0xLjcsMCAtMy44LC0xIC00LjEsLTIuMiAtMS40LDAuOSAtMS43LDIuMiAtNC4zLDIuMiBoIC0wLjQgYyAtMy4xLDAgLTMuMiwtMS4yIC00LjksLTIuMiAtMC40LDEuMyAtMi41LDIuMiAtNC4zLDIuMiB2IC0xLjUgYyAxLjgsMCAzLjYsLTEuNCAzLjYsLTIuOCB2IC0wLjYgeiBtIC01LjgsMzIuNiBoIDMyIFYgODEuNSBoIC0zMiB2IDM3IHogbSAtMS43LC0xMS44IDAsLTEzLjMgLTYuOCwwIDAsMTMuMyB6XCJ9XSxpW1wiR1IuSU4uSUMuVFJBTlNQT1JUQVRJT04gSU5GUkFTVFJVQ1RVUkUuVFJBRkZJQyBDT05UUk9MIFBPSU5UXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gODUuNSw4MS4zIDAuNSwwLjcgMTMuNywxOC4yIDAuMywwLjUgMC4zLC0wLjUgMTMuNywtMTguMiAwLjUsLTAuNyAtMC45LDAgLTI3LjQsMCAtMC45LDAgeiBtIDEuNywwLjkgMjUuNywwIEwgMTAwLDk5LjMgODcuMiw4Mi4yIHogTSAxMDYuNyw1MC43IGMgMCwwLjIgLTAsMC41IC0wLjEsMC43IC0wLjEsMC4yIC0wLjIsMC40IC0wLjQsMC41IC0wLjIsMC4yIC0wLjQsMC4zIC0wLjcsMC40IC0wLjMsMC4xIC0wLjYsMC4xIC0xLDAuMSBsIC0wLjcsMCAwLDIuMSAtMC43LDAgMCwtNS42IDEuNSwwIGMgMC4zLDVlLTYgMC42LDAgMC45LDAuMSAwLjIsMC4xIDAuNCwwLjEgMC42LDAuMyAwLjIsMC4xIDAuNCwwLjMgMC41LDAuNSAwLjEsMC4yIDAuMiwwLjUgMC4yLDAuOCBtIC0wLjgsMCBjIC0xZS01LC0wLjIgLTAsLTAuNCAtMC4xLC0wLjUgLTAuMSwtMC4xIC0wLjIsLTAuMyAtMC4zLC0wLjMgLTAuMSwtMC4xIC0wLjMsLTAuMSAtMC40LC0wLjIgLTAuMiwtMCAtMC4zLC0wLjEgLTAuNiwtMC4xIGwgLTAuNywwIDAsMi4yIDAuNiwwIGMgMC4zLDNlLTYgMC41LC0wIDAuNywtMC4xIDAuMiwtMC4xIDAuMywtMC4xIDAuNSwtMC4zIDAuMSwtMC4xIDAuMiwtMC4yIDAuMiwtMC40IDAuMSwtMC4xIDAuMSwtMC4zIDAuMSwtMC40IG0gLTMuOSwzLjUgYyAtMC4xLDAuMSAtMC4zLDAuMSAtMC40LDAuMiAtMC4xLDAuMSAtMC4zLDAuMSAtMC40LDAuMiAtMC4yLDAgLTAuMywwLjEgLTAuNSwwLjEgLTAuMiwwIC0wLjQsMC4xIC0wLjYsMC4xIC0wLjQsMCAtMC44LC0wLjEgLTEuMSwtMC4yIC0wLjMsLTAuMSAtMC42LC0wLjMgLTAuOSwtMC41IC0wLjIsLTAuMiAtMC40LC0wLjUgLTAuNiwtMC45IC0wLjEsLTAuNCAtMC4yLC0wLjggLTAuMiwtMS4zIDAsLTAuNSAwLjEsLTAuOSAwLjIsLTEuMiAwLjEsLTAuNCAwLjMsLTAuNyAwLjYsLTAuOSAwLjIsLTAuMiAwLjUsLTAuNCAwLjksLTAuNiAwLjMsLTAuMSAwLjcsLTAuMiAxLjEsLTAuMiAwLjMsNmUtNiAwLjYsMCAwLjksMC4xIDAuMywwLjEgMC42LDAuMiAxLDAuNCBsIDAsMC45IC0wLjEsMCBjIC0wLjMsLTAuMyAtMC42LC0wLjQgLTAuOSwtMC42IC0wLjMsLTAuMSAtMC42LC0wLjIgLTEsLTAuMiAtMC4zLDVlLTYgLTAuNSwwIC0wLjgsMC4xIC0wLjIsMC4xIC0wLjQsMC4yIC0wLjYsMC40IC0wLjIsMC4yIC0wLjMsMC40IC0wLjQsMC43IC0wLjEsMC4zIC0wLjEsMC42IC0wLjEsMSAtMTBlLTcsMC40IDAuMSwwLjcgMC4yLDEgMC4xLDAuMyAwLjIsMC41IDAuNCwwLjcgMC4yLDAuMiAwLjQsMC4zIDAuNiwwLjQgMC4yLDAuMSAwLjUsMC4xIDAuNywwLjEgMC40LDEwZS03IDAuNywtMC4xIDEsLTAuMiAwLjMsLTAuMSAwLjYsLTAuMyAwLjksLTAuNiBsIDAuMSwwIDAsMC45IG0gLTUuMSwtNC41IC0yLDAgMCw0LjkgLTAuNywwIDAsLTQuOSAtMiwwIDAsLTAuNyA0LjcsMCAwLDAuNyBNIDg1LjksNDQuNiBsIDAsMC40IDAsMzYuNSAwLDAuNCAwLjQsMCAyNy40LDAgMC40LDAgMCwtMC40IDAsLTM2LjUgMCwtMC40IC0wLjQsMCAtMjcuNCwwIC0wLjQsMCB6IG0gMC45LDAuOSAyNi41LDAgMCwzNS42IC0yNi41LDAgMCwtMzUuNiB6XCJ9XSxpW1wiQUMuTTEuUklPVFwiXT1sKFwiUklPVFwiKSxpW1wiQUMuTTEuVEhSRUFUXCJdPWwoXCI/XCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdPWwoXCJFQ0VQXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgSU5DSURFTlQgQ09NTUFORCBDRU5URVJcIl09bChcIkVJQ0NcIiksaVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXT1sKFwiRU9DXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1kgU0hFTFRFUlwiXT1sKFwiRVNcIiksaVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl09bChcIlNBXCIpLGlbXCJBQy5NMS5FTUVSR0VOQ1lcIl09bChcIkVNRVJcIiksaVtcIkFDLk0xLkNPTU1FUkNJQUxcIl09bChcIkNPTVwiKSxpW1wiQUMuTTEuUFJPRFVDVElPTlwiXT1sKFwiUFJPRFwiKSxpW1wiQUMuTTEuUkVUQUlMXCJdPWwoXCJSVExcIiksaVtcIkFDLk0xLk1JTElUQVJZIEFSTU9SWVwiXT1sKFwiUkVTXCIpLGlbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl09bChcIkdFTlwiKSxpW1wiR1IuSS5GRi5DSVZJTElBTiBST1RBUlkgV0lOR1wiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOm8sZDpcIk04MCw3MCBsMTAsMTAgTTEyMCwxMTAgbC0xMCwtMTAgTTgwLDExMCBsMTAsLTEwIE0xMjAsNzAgbC0xMCwxMCBNMTAwLDExNSBsMCwyMCBNOTUsMTM1IGwxMCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOm8sZmlsbDohIVImJkcsZDpcIm0gMTEzLDkwIGMgLTAuMyw4LjggLTEuOSwyMC4zIC0xMC44LDI0LjYgLTcuNywyIC0xMi4zLC03LjEgLTEzLjgsLTEzLjMgLTIuNiwtMTEuNSAtMi4zLC0yNiA2LjksLTM0LjYgNi4wLC00LjkgMTMuMSwxLjkgMTQuOSw3LjggMiw0LjkgMi44LDEwLjIgMi44LDE1LjUgelwifV0saVtcIkdSLklDLkhPU1BJVEFMIFNISVBcIl09YShcIkFIXCIpLGlbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlQgVkVTU0VMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOlI/RzohQyYmRyxkOlwibSA3NSwxMDAgMCwtMzUgNTAsMCAwLDM1IDIwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMzUsMTAwIC0xNSwzNSAtMTAsMCAxNSwtMzUgelwifV0saVtcIkNZLklDLkNPTUJBVCBNSVNTSU9OIFRFQU1cIl09YShcIkNNVFwiKSxpW1wiQ1kuSUMuTkFUSU9OQUwgTUlTU0lPTiBURUFNXCJdPWEoXCJOTVRcIiksaVtcIkNZLklDLkNZQkVSIFBST1RFQ1RJT04gVEVBTVwiXT1hKFwiQ1BUXCIpLGlbXCJDWS5JQy5OQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdPWEoXCJDVEFcIiksaVtcIkNZLklDLk5PTiBOQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdPWEoXCJDVEFcIiksaVtcIkNZLklDLk5PTiBOQVRJT04gU1RBVEUgQ1lCRVIgVEhSRUFUIEFDVE9SXCJdLmZpbGw9Unx8Tj9HOiFDJiZHLGlbXCJDWS5JQy5OT04gTkFUSU9OIFNUQVRFIENZQkVSIFRIUkVBVCBBQ1RPUlwiXS5zdHJva2U9byxpW1wiQ1kuSUMuTk9OIE5BVElPTiBTVEFURSBDWUJFUiBUSFJFQVQgQUNUT1JcIl0uc3Ryb2tld2lkdGg9MyxpKWkuaGFzT3duUHJvcGVydHkoTCkmJihJLmhhc093blByb3BlcnR5KEwpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrTCksbi5jYWxsKHRoaXMsaVtMXSxPKSxJW0xdPWlbTF0pfXZhciBoPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbY10saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRy0tLS0tLS1cIl09W10sSVtcIlMtRy1VLS0tLS1cIl09W10sSVtcIlMtRy1VQy0tLS1cIl09W0VbXCJHUi5JQy5DT01CQVRcIl1dLElbXCJTLUctVUNELS0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl1dLElbXCJTLUctVUNEUy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLVVDRFNDLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBDSEFQQVJSQUxcIl1dLElbXCJTLUctVUNEU1MtXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIE1JU1NJTEVcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFNUSU5HRVJcIl1dLElbXCJTLUctVUNEU1YtXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgVlVMQ0FOXCJdXSxJW1wiUy1HLVVDRE0tLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDRE1MLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5NSVNTSUxFLkxJR0hUXCJdXSxJW1wiUy1HLVVDRE1MQVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNETU0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIE1JU1NJTEVcIl0sRVtcIkdSLklDLk1JU1NJTEUuTUVESVVNXCJdXSxJW1wiUy1HLVVDRE1ILVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdLEVbXCJHUi5JQy5NSVNTSUxFLkhFQVZZXCJdXSxJW1wiUy1HLVVDREgtLVwiXT1bRVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEVbXCJHUi5JQy5BSVIgREVGRU5TRSBIL01BRFwiXV0sSVtcIlMtRy1VQ0RISC1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgTUlTU0lMRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgSEFXS1wiXV0sSVtcIlMtRy1VQ0RIUC1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgTUlTU0lMRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgSC9NQUQgUEFUUklPVFwiXV0sSVtcIlMtRy1VQ0RHLS1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgR1VOIFVOSVRcIl1dLElbXCJTLUctVUNEQy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIENPTVBPU0lURVwiXV0sSVtcIlMtRy1VQ0RULS1cIl09W0VbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxFW1wiR1IuSUMuQUlSIERFRkVOU0UgVEFSR0VUSU5HIFVOSVRcIl1dLElbXCJTLUctVUNETy0tXCJdPVtFW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl0sRVtcIkdSLklDLkFJUiBERUZFTlNFIFRIRUFURVIgTUlTU0lMRSBERUZFTlNFIFVOSVRcIl1dLElbXCJTLUctVUNBLS0tXCJdPVtFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDQVQtLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FUQS1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDQVRXLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVtcIlMtRy1VQ0FUV1JcIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl0sRVtcIkdSLk0yLlJFQ09WRVJZIChNQUlOVEVOQU5DRSlcIl1dLElbXCJTLUctVUNBVEwtXCJdPVtFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ0FUTS1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLk1FRElVTVwiXV0sSVtcIlMtRy1VQ0FUSC1cIl09W0VbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLkhFQVZZXCJdXSxJW1wiUy1HLVVDQVRSLVwiXT1bRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sSVtcIlMtRy1VQ0FXLS1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXV0sSVtcIlMtRy1VQ0FXUy1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDQVdBLVwiXT1bRVtcIkdSLklDLkFSTU9SLCBXSEVFTEVEXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0FXVy1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVtcIlMtRy1VQ0FXV1JcIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXSxFW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sSVtcIlMtRy1VQ0FXTC1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNBV00tXCJdPVtFW1wiR1IuSUMuQVJNT1IsIFdIRUVMRURcIl0sRVtcIkdSLk0yLk1FRElVTVwiXV0sSVtcIlMtRy1VQ0FXSC1cIl09W0VbXCJHUi5JQy5BUk1PUiwgV0hFRUxFRFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNBV1ItXCJdPVtFW1wiR1IuSUMuQVJNT1IsIFdIRUVMRURcIl0sRVtcIkdSLk0yLlJFQ09WRVJZIChNQUlOVEVOQU5DRSlcIl1dLElbXCJTLUctVUNBQS0tXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FBRC1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdXSxJW1wiUy1HLVVDQUFMLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDQUFNLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDQUFTLVwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0FBVS1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0FBQy1cIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5NMi5BUkNUSUNcIl1dLElbXCJTLUctVUNBQUEtXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDQUFBVFwiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0FBQVdcIl09W0VbXCJHUi5JQy5GRi5BTlRJVEFOSy9BTlRJQVJNT1VSXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLldIRUVMRURcIl1dLElbXCJTLUctVUNBQUFTXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl1dLElbXCJTLUctVUNBQU8tXCJdPVtFW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVDQUFPU1wiXT1bRVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDVi0tLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdXSxJW1wiUy1HLVVDVkYtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl1dLElbXCJTLUctVUNWRlUtXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gRklYRUQgV0lOR1wiXSxFW1wiR1IuTTEuVVRJTElUWVwiXV0sSVtcIlMtRy1VQ1ZGQS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5BVFRBQ0tcIl1dLElbXCJTLUctVUNWVVRQXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gVEFDVElDQUwgQUlSIENPTlRST0wgUEFSVFlcIl1dLElbXCJTLUctVUNWVUZDXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gRk9SV0FSRCBBSVIgQ09OVFJPTExFUlwiXV0sSVtcIlMtRy1VQ1ZGUi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5SRUNPTlwiXV0sSVtcIlMtRy1VQ1ZSLS1cIl09Uj9bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lORyAyNTI1Q1wiXV06W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1ZSQS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQVRUQUNLXCJdXSxJW1wiUy1HLVVDVlJTLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5SRUNPTlwiXV0sSVtcIlMtRy1VQ1ZSVy1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1HLVVDVlJVLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdXSxJW1wiUy1HLVVDVlJVTFwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ1ZSVU1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuVVRJTElUWVwiXSxFW1wiR1IuTTIuTUVESVVNXCJdXSxJW1wiUy1HLVVDVlJVSFwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJHUi5NMS5VVElMSVRZXCJdLEVbXCJHUi5NMi5IRUFWWVwiXV0sSVtcIlMtRy1VQ1ZSVUNcIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuQ09NTUFORCBBTkQgQ09OVFJPTCBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1ZSVUVcIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTUVERVZBQ1wiXV0sSVtcIlMtRy1VQ1ZSTS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVwiXV0sSVtcIlMtRy1VQ1ZTLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuUEVSU09OTkVMIFJFQ09WRVJZXCJdXSxJW1wiUy1HLVVDVkMtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIENPTVBPU0lURVwiXV0sSVtcIlMtRy1VQ1ZWLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMi5WRVJUSUNBTCBPUiBTSE9SVCBUQUtFLU9GRiBBTkQgTEFORElORyBcIl1dLElbXCJTLUctVUNWVS0tXCJdPVtFW1wiR1IuSUMuVU5NQU5ORUQgU1lTVEVNU1wiXV0sSVtcIlMtRy1VQ1ZVRi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEVbXCJHUi5NMS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXV0sSVtcIlMtRy1VQ1ZVUi1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUctVUNJLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl1dLElbXCJTLUctVUNJTC0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDSU0tLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNJTy0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDSUEtLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0lTLS1cIl09W0VbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDSVotLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNJTi0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLkZGLk5BVkFMXCJdXSxJW1wiUy1HLVVDSUktLVwiXT1bRVtcIkdSLklDLkZGLklORkFOVFJZXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXV0sSVtcIlMtRy1VQ0lDLS1cIl09W0VbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDRS0tLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdXSxJW1wiUy1HLVVDRUMtLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdLEVbXCJHUi5NMS5DT01CQVRcIl1dLElbXCJTLUctVUNFQ1MtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0VDQS1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNFQ0MtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0yLkFSQ1RJQ1wiXV0sSVtcIlMtRy1VQ0VDTC1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTEuQ09NQkFUXCJdLEVbXCJHUi5NMi5MSUdIVFwiXV0sSVtcIlMtRy1VQ0VDTS1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTEuQ09NQkFUXCJdLEVbXCJHUi5NMi5NRURJVU1cIl1dLElbXCJTLUctVUNFQ0gtXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLkNPTUJBVFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNFQ1QtXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRU5HSU5FRVJcIl0pLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNFQ1ctXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVtcIlMtRy1VQ0VDTy1cIl09W0VbXCJHUi5JQy5FTkdJTkVFUlwiXSxFW1wiR1IuTTIuTU9VTlRBSU5cIl1dLElbXCJTLUctVUNFQ1ItXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDRU4tLVwiXT1bRVtcIkdSLklDLkVOR0lORUVSXCJdLEVbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl1dLElbXCJTLUctVUNFTk4tXCJdPVtFW1wiR1IuSUMuRU5HSU5FRVJcIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVDRi0tLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXV0sSVtcIlMtRy1VQ0ZILS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl1dLElbXCJTLUctVUNGSEUtXCJdPVtzLl9zY2FsZSguOCxFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdKSxFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDRkhTLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRkhBLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNGSEMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMi5BUkNUSUNcIl1dLElbXCJTLUctVUNGSE8tXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0ZITC1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0yLkxJR0hUXCJdXSxJW1wiUy1HLVVDRkhNLVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuTUVESVVNXCJdXSxJW1wiUy1HLVVDRkhILVwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVUNGSFgtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdXSxJW1wiUy1HLVVDRlItLVwiXT1bRVtcIkdSLklDLkZGLkZJRUxEIEFSVElMTEVSWSBST0NLRVRcIl1dLElbXCJTLUctVUNGUlMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5TSU5HTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJW1wiUy1HLVVDRlJTLVwiXT1bcy5fc2NhbGUoLjgsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sUj9bXTpFW1wiR1IuSUMuQVJNT1VSXCJdXSxJW1wiUy1HLVVDRlJTU1wiXT1bcy5fc2NhbGUoLjgsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0ZSU1JcIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0xLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRlJTVFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuTTIuVE9XRURcIl1dLElbXCJTLUctVUNGUk0tXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sUj9cIlwiOkVbXCJHUi5NMi5DUk9TUy1DT1VOVFJZIFRSVUNLXCJdXSxJW1wiUy1HLVVDRlJNU1wiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl1dLElbXCJTLUctVUNGUk1SXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRlJNVFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuTTEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXV0sSVtcIlMtRy1VQ0ZULS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLk0yLlRBUkdFVCBBQ1FVSVNJVElPTlwiXV0sSVtcIlMtRy1VQ0ZUUi1cIl09W3MuX3RyYW5zbGF0ZSgtMzAsMTAscy5fc2NhbGUoLjYsRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSkpLEVbXCJHUi5JQy5SQURBUlwiXV0sSVtcIlMtRy1VQ0ZUUy1cIl09W3MuX3RyYW5zbGF0ZSgwLDMwLHMuX3NjYWxlKC43LEVbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0pKSxFW1wiR1IuSUMuRkYuU09VTkRcIl1dLElbXCJTLUctVUNGVEYtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5NMS5PUFRJQ0FMXCJdLEVbXCJHUi5NMi5UQVJHRVQgQUNRVUlTSVRJT05cIl1dLElbXCJTLUctVUNGVEMtXCJdPVtFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDRlRDRFwiXT1bRVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUctVUNGVENNXCJdPVtzLl9zY2FsZSguOCxFW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdKSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ0ZUQS1cIl09W0VbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiR1IuTTEuTkFWQUxcIl1dLElbXCJTLUctVUNGTS0tXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdXSxJW1wiUy1HLVVDRk1TLVwiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVFJBQ0tFRFwiXV0sSVtcIlMtRy1VQ0ZNVy1cIl09SVtcIlMtRy1VQ0ZNU1dcIl09W0VbXCJHUi5JQy5NT1JUQVJcIl0sRVtcIkdSLk0yLlRSVUNLXCJdXSxJW1wiUy1HLVVDRk1ULVwiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVE9XRURcIl1dLElbXCJTLUctVUNGTVRBXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUctVUNGTVRTXCJdPVtFW1wiR1IuSUMuTU9SVEFSXCJdLEVbXCJHUi5NMi5UT1dFRFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRk1UQ1wiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDRk1UT1wiXT1bRVtcIkdSLklDLk1PUlRBUlwiXSxFW1wiR1IuTTIuVE9XRURcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDRk1MLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTIwLEVbXCJHUi5JQy5NT1JUQVJcIl0pLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdXSxJW1wiUy1HLVVDRlMtLVwiXT1bRVtcIkdSLklDLlNVUlZFWVwiXV0sSVtcIlMtRy1VQ0ZTUy1cIl09W0VbXCJHUi5JQy5TVVJWRVlcIl0sRVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sSVtcIlMtRy1VQ0ZTQS1cIl09W0VbXCJHUi5JQy5TVVJWRVlcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDRlNMLVwiXT1bRVtcIkdSLklDLlNVUlZFWVwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNGU08tXCJdPVtFW1wiR1IuSUMuU1VSVkVZXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ0ZPLS1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXV0sSVtcIlMtRy1VQ0ZPUy1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXSxFW1wiR1IuTTEuQUlSTU9CSUxFL0FJUiBBU1NBVUxUXCJdXSxJW1wiUy1HLVVDRk9BLVwiXT1bRVtcIkdSLklDLk1FVEVPUk9MT0dJQ0FMXCJdLEVbXCJHUi5NMi5BSVJCT1JORVwiXV0sSVtcIlMtRy1VQ0ZPTC1cIl09W0VbXCJHUi5JQy5NRVRFT1JPTE9HSUNBTFwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNGT08tXCJdPVtFW1wiR1IuSUMuTUVURU9ST0xPR0lDQUxcIl0sRVtcIkdSLk0yLk1PVU5UQUlOXCJdXSxJW1wiUy1HLVVDUi0tLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDUkgtLVwiXT1bRVtcIkdSLklDLkZGLkhPUlNFXCJdXSxJW1wiUy1HLVVDUlYtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLFI/RVtcIkdSLk0yLkNBVkFMUllcIl06W11dLElbXCJTLUctVUNSVkEtXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ1JWTS1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVDUlZHLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJW1wiUy1HLVVDUlZPLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1VQ1JDLS1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuQVJDVElDXCJdXSxJW1wiUy1HLVVDUlMtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5NMS5BSVJNT0JJTEUvQUlSIEFTU0FVTFRcIl1dLElbXCJTLUctVUNSQS0tXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVDUk8tLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5NMi5NT1VOVEFJTlwiXV0sSVtcIlMtRy1VQ1JMLS1cIl09SVtcIlMtRy1VQ1JMTC1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuTElHSFRcIl1dLElbXCJTLUctVUNSUi0tXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbXCJTLUctVUNSUkQtXCJdPVtFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl0sUj9FW1wiR1IuTTEuTUFSSU5FIERJVklTSU9OXCJdOltdXSxJW1wiUy1HLVVDUlJGLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5GRi5BTVBISUJJT1VTXCJdLEVbXCJHUi5NMS5GT1JDRVwiXV0sSVtcIlMtRy1VQ1JSTC1cIl09W0VbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdXSxJW1wiUy1HLVVDUlgtLVwiXT1bRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLFI/RVtcIkdSLk0yLkxPTkcgUkFOR0UgU1VSVkVJTExBTkNFXCJdOltzLl90cmFuc2xhdGUoMCwtMjAsRVtcIkdSLk0yLk1PVU5UQUlOXCJdKSxFW1wiR1IuTTIuTE9ORyBSQU5HRVwiXV1dLElbXCJTLUctVUNNLS0tXCJdPVtFW1wiR1IuSUMuTUlTU0lMRVwiXV0sSVtcIlMtRy1VQ01ULS1cIl09W0VbXCJHUi5JQy5NSVNTSUxFXCJdLEVbXCJHUi5NMi5UQUNUSUNBTCBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDTVMtLVwiXT1bRVtcIkdSLklDLk1JU1NJTEVcIl0sRVtcIkdSLk0yLlNUUkFURUdJQyBNSVNTSUxFXCJdXSxJW1wiUy1HLVVDUy0tLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdXSxJW1wiUy1HLVVDU1ctLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTIwLEVbXCJHUi5JQy5TRUNVUklUWVwiXSksRVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbXCJTLUctVUNTRy0tXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl1dLElbXCJTLUctVUNTR0QtXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl0sRVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJW1wiUy1HLVVDU0dNLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVUNTR0EtXCJdPVtFW1wiR1IuSUMuU0VDVVJJVFlcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VQ1NNLS1cIl09W0VbXCJHUi5JQy5TRUNVUklUWVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdXSxJW1wiUy1HLVVDU1ItLVwiXT1bRVtcIkdSLklDLlNFQ1VSSVRZXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VQ1NBLS1cIl09W3MuX3RyYW5zbGF0ZSgwLC0yMCxFW1wiR1IuSUMuU0VDVVJJVFlcIl0pLEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sSVtcIlMtRy1GLVMtLS1cIl09RVtcIkdSLklDLlNVUlZFSUxMQU5DRVwiXSxJW1wiUy1HLVVVLS0tLVwiXT1bRVtcIkdSLklDLkNPTUJBVCBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVQS0tLVwiXT1bRVtcIkdSLklDLkNCUk5cIl1dLElbXCJTLUctVVVBQy0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLElbXCJTLUctVVVBQ0MtXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0UvREVDT05cIl1dLElbXCJTLUctVVVBQ0NLXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0UvREVDT05cIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VVUFDQ01cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5TTU9LRS9ERUNPTlwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJW1wiUy1HLVVVQUNTLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLlNNT0tFXCJdXSxJW1wiUy1HLVVVQUNTTVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLlNNT0tFXCJdLEVbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbXCJTLUctVVVBQ1NBXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuU01PS0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXV0sSVtcIlMtRy1VVUFDUi1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5DSEVNSUNBTFwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbXCJTLUctVVVBQ1JXXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sRVtcIkdSLklDLkFSTU9VUlwiXSxFW1wiR1IuTTIuV0hFRUxFRFwiXV0sSVtcIlMtRy1VVUFDUlNcIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuSUMuQVJNT1VSXCJdLEVbXCJHUi5NMi5XSEVFTEVEXCJdLFI/RVtcIkdSLk0xLkNIRU1JQ0FMIFNVUlZFSUxMQU5DRVwiXTpbXV0sSVtcIlMtRy1VVUFOLS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5OVUNMRUFSXCJdXSxJW1wiUy1HLVVVQUItLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLElbXCJTLUctVVVBQlItXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQklPTE9HSUNBTFwiXSxFW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdLEVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVtcIlMtRy1VVUFELS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl1dLElbXCJTLUctVVVBRFQtXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuREVDT05UQU1JTkFUSU9OXCJdLEVbXCJHUi5NMi5UUk9PUFwiXV0sSVtcIlMtRy1VVUFERS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl0sRVtcIkdSLk0yLkVRVUlQTUVOVFwiXV0sSVtcIlMtRy1VVUFERVRcIl09W0VbXCJHUi5JQy5DQlJOXCJdLEVbXCJHUi5NMS5ERUNPTlRBTUlOQVRJT05cIl0sRVtcIkdSLk0yLkVRVUlNRU5UL1RST09QXCJdXSxJW1wiUy1HLVVVQUwtLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0yLkxBQk9SQVRPUllcIl1dLElbXCJTLUctVVVNLS0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdXSxJW1wiUy1HLVVVTUEtLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl1dLElbXCJTLUctVVVNUy0tXCJdPVtzLl90cmFuc2xhdGUoLTI1LDAsRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSksRVtcIkdSLklDLlJBRElPXCJdXSxJW1wiUy1HLVVVTVNFLVwiXT1bRVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXV0sSVtcIlMtRy1VVU1TRUFcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEVbXCJHUi5JQy5BUk1PVVJcIl0sRVtcIkdSLk0yLldIRUVMRURcIl1dLElbXCJTLUctVVVNU0VEXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5ESVJFQ1RJT04gRklORElOR1wiXV0sSVtcIlMtRy1VVU1TRUlcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLklOVEVSQ0VQVFwiXV0sSVtcIlMtRy1VVU1TRUpcIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbXCJTLUctVVVNU0VUXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVVNU0VDXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBXQVJGQVJFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVTUMtLVwiXT1bRVtcIkdSLklDLkNPVU5URVItSU5URUxMSUdFTkNFXCJdXSxJW1wiUy1HLVVVTVItLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXV0sSVtcIlMtRy1VVU1SRy1cIl09W0VbXCJHUi5JQy5NSUxJVEFSWSBJTlRFTExJR0VOQ0VcIl0sRVtcIkdSLk0xLlJBREFSXCJdXSxJW1wiUy1HLVVVTVJTLVwiXT1bcy5fdHJhbnNsYXRlKDAsMzAscy5fc2NhbGUoLjgsRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSkpLEVbXCJHUi5JQy5GRi5TRU5TT1JcIl1dLElbXCJTLUctVVVNUlNTXCJdPVtzLl90cmFuc2xhdGUoMCwzMCxzLl9zY2FsZSguOCxFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdKSksRVtcIkdSLklDLkZGLlNFTlNPUlwiXSxFW1wiR1IuTTEuU0VOU09SIENPTlRST0wgTU9EVUxFXCJdXSxJW1wiUy1HLVVVTVJYLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuR1JPVU5EIFNUQVRJT04gTU9EVUxFXCJdXSxJW1wiUy1HLVVVTU1PLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuTUVURU9ST0xPR0lDQUxcIl1dLElbXCJTLUctVVVNTy0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdLEVbXCJHUi5NMS5PUEVSQVRJT05TXCJdXSxJW1wiUy1HLVVVTVQtLVwiXT1bRVtcIkdSLklDLk1JTElUQVJZIElOVEVMTElHRU5DRVwiXSxFW1wiR1IuTTEuVEFDVElDQUwgRVhQTE9JVEFUSU9OXCJdXSxJW1wiUy1HLVVVTVEtLVwiXT1bRVtcIkdSLklDLklOVEVSUk9HQVRJT05cIl1dLElbXCJTLUctVVVNSi0tXCJdPVtFW1wiR1IuSUMuSk9JTlQgSU5URUxMSUdFTkNFIENFTlRSRVwiXV0sSVtcIlMtRy1VVUwtLS1cIl09W0VbXCJHUi5JQy5GRi5NSUxJVEFSWSBQT0xJQ0VcIl0sRVtcIkdSLklDLk1JTElUQVJZIFBPTElDRVwiXV0sSVtcIlMtRy1VVUxTLS1cIl09W0VbXCJHUi5JQy5TSE9SRSBQQVRST0xcIl1dLElbXCJTLUctVVVMTS0tXCJdPVtFW1wiR1IuSUMuTUlMSVRBUlkgUE9MSUNFXCJdXSxJW1wiUy1HLVVVTEMtLVwiXT1bRVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVtcIlMtRy1VVUxGLS1cIl09W3MuX3RyYW5zbGF0ZSgwLC0yNSxzLl9zY2FsZSguOCxFW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdKSksRVtcIkdSLklDLkFWSUFUSU9OIEZJWEVEIFdJTkdcIl1dLElbXCJTLUctVVVMRC0tXCJdPVtFW1wiR1IuSUMuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sSVtcIlMtRy1VVVMtLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl1dLElbXCJTLUctVVVTQS0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5BUkVBXCJdXSxJW1wiUy1HLVVVU0MtLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXV0sSVtcIlMtRy1VVVNDTC1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkxBUkdFIENPTU1VTklDQVRJT05TIENPTlRJTkdFTkNZIFBBQ0tBR0VcIl0sRVtcIkdSLk0yLkFJUkJPUk5FXCJdXSxJW1wiUy1HLVVVU08tLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuT1BFUkFUSU9OU1wiXV0sSVtcIlMtRy1VVVNGLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkZPUldBUkRcIl1dLElbXCJTLUctVVVTTS0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5NT0JJTEUgU1VCU0NSSUJFUiBFUVVJUE1FTlRcIl1dLElbXCJTLUctVVVTTVMtXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5TTUFMTCBFWFRFTlNJT04gTk9ERVwiXV0sSVtcIlMtRy1VVVNNTC1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLk0xLkxBUkdFIEVYVEVOU0lPTiBOT0RFXCJdXSxJW1wiUy1HLVVVU01OLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuTTEuTk9ERSBDRU5UUkVcIl1dLElbXCJTLUctVVVTUi0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5JQy5SQURJT1wiXV0sSVtcIlMtRy1VVVNSUy1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLkkuRkYuU0FURUxMSVRFXCJdXSxJW1wiUy1HLVVVU1JULVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdXSxJW1wiUy1HLVVVU1JXLVwiXT1bRVtcIkdSLklDLkZGLlNJR05BTFwiXSxFW1wiR1IuSUMuUkFESU8gUkVMQVlcIl1dLElbXCJTLUctVVVTUy0tXCJdPVtFW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEVbXCJHUi5NMS5TSUdOQUwgU1VQUE9SVFwiXV0sSVtcIlMtRy1VVVNXLS1cIl09W0VbXCJHUi5JQy5GRi5TSUdOQUxcIl0sRVtcIkdSLklDLlRFTEVQSE9ORSBTV0lUQ0hcIl1dLElbXCJTLUctVVVTWC0tXCJdPVtFW1wiR1IuSUMuRUxFQ1RST05JQyBSQU5HSU5HXCJdXSxJW1wiUy1HLVVVSS0tLVwiXT1bRVtcIkdSLklDLklORk9STUFUSU9OIE9QRVJBVElPTlNcIl1dLElbXCJTLUctVVVQLS0tXCJdPUlbXCJTLUctVVVYLS0tXCJdPVtFW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXSxFW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVVRS0tLVwiXT1bRVtcIkdSLklDLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXV0sSVtcIlMtRy1VVVQtLS1cIl09W0VbXCJHUi5JQy5UT1BPR1JBUEhJQ1wiXV0sSVtcIlMtRy1VVUQtLS1cIl09W0VbXCJHUi5JQy5EUklMTElOR1wiXV0sSVtcIlMtRy1VUy0tLS1cIl09W0VbXCJHUi5JQy5DT01CQVQgU0VSVklDRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQS0tLVwiXT1bRVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdXSxJW1wiUy1HLVVTQVQtLVwiXT1bRVtcIkdSLklDLkFETUlOSVNUUkFUSVZFXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBQy0tXCJdPVtFW1wiR1IuSUMuQURNSU5JU1RSQVRJVkVcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBSi0tXCJdPVtFW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXV0sSVtcIlMtRy1VU0FKVC1cIl09W0VbXCJHUi5JQy5KVURHRSBBRFZPQ0FURSBHRU5FUkFMXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBSkMtXCJdPVtFW1wiR1IuSUMuSlVER0UgQURWT0NBVEUgR0VORVJBTFwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FPLS1cIl09W0VbXCJHUi5JQy5QT1NUQUxcIl1dLElbXCJTLUctVVNBT1QtXCJdPVtFW1wiR1IuSUMuUE9TVEFMXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBT0MtXCJdPVtFW1wiR1IuSUMuUE9TVEFMXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQUYtLVwiXT1bRVtcIkdSLklDLkZJTkFOQ0VcIl1dLElbXCJTLUctVVNBRlQtXCJdPVtFW1wiR1IuSUMuRklOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQUZDLVwiXT1bRVtcIkdSLklDLkZJTkFOQ0VcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUy0tXCJdPVtFW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdXSxJW1wiUy1HLVVTQVNULVwiXT1bRVtcIkdSLklDLlBFUlNPTk5FTCBTRVJWSUNFU1wiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVNDLVwiXT1bRVtcIkdSLklDLlBFUlNPTk5FTCBTRVJWSUNFU1wiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FNLS1cIl09W0VbXCJHUi5JQy5NT1JUVUFSWSBBRkZBSVJTXCJdXSxJW1wiUy1HLVVTQU1ULVwiXT1bRVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FNQy1cIl09W0VbXCJHUi5JQy5NT1JUVUFSWSBBRkZBSVJTXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVItLVwiXT1bRVtcIkdSLklDLlJFTElHSU9VUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVJULVwiXT1bRVtcIkdSLklDLlJFTElHSU9VUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUkMtXCJdPVtFW1wiR1IuSUMuUkVMSUdJT1VTIFNVUFBPUlRcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUC0tXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlNcIl1dLElbXCJTLUctVVNBUFQtXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlNcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQQy1cIl09W0VbXCJHUi5JQy5QVUJMSUMgQUZGQUlSU1wiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQQi1cIl09W0VbXCJHUi5JQy5QVUJMSUMgQUZGQUlSUyBCUk9BRENBU1RcIl1dLElbXCJTLUctVVNBUEJUXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUEJDXCJdPVtFW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVBNLVwiXT1bRVtcIkdSLklDLkpPSU5UIElORk9STUFUSU9OIEJVUkVBVVwiXV0sSVtcIlMtRy1VU0FQTVRcIl09W0VbXCJHUi5JQy5KT0lOVCBJTkZPUk1BVElPTiBCVVJFQVVcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FQTUNcIl09W0VbXCJHUi5JQy5KT0lOVCBJTkZPUk1BVElPTiBCVVJFQVVcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBWC0tXCJdPVtFW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdXSxJW1wiUy1HLVVTQVhULVwiXT1bRVtcIkdSLklDLlJFUExBQ0VNRU5UIEhPTERJTkcgVU5JVFwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVhDLVwiXT1bRVtcIkdSLklDLlJFUExBQ0VNRU5UIEhPTERJTkcgVU5JVFwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU0FMLS1cIl09W0VbXCJHUi5JQy5MQUJPVVJcIl1dLElbXCJTLUctVVNBTFQtXCJdPVtFW1wiR1IuSUMuTEFCT1VSXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBTEMtXCJdPVtFW1wiR1IuSUMuTEFCT1VSXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVctLVwiXT1bRVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl1dLElbXCJTLUctVVNBV1QtXCJdPVtFW1wiR1IuSUMuTU9SQUxFLCBXRUxGQVJFLCBBTkQgUkVDUkVBVElPTlwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdXSxJW1wiUy1HLVVTQVdDLVwiXT1bRVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUS0tXCJdPVtFW1wiR1IuSUMuUVVBUlRFUk1BU1RFUlwiXV0sSVtcIlMtRy1VU0FRVC1cIl09W0VbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdLEVbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl1dLElbXCJTLUctVVNBUUMtXCJdPVtFW1wiR1IuSUMuUVVBUlRFUk1BU1RFUlwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU00tLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMXCJdXSxJW1wiUy1HLVVTTVQtLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVEhFQVRFUlwiXV0sSVtcIlMtRy1VU01DLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIENPUlBTXCJdXSxJW1wiUy1HLVVTTU0tLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUxcIl0sRVtcIkdSLklDLkZGLk1FRElDQUwgVFJFQVRNRU5UIEZBQ0lMSVRZXCJdXSxJW1wiUy1HLVVTTU1ULVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJTLUctVVNNTUMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJTLUctVVNNVi0tXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTFwiXSxFW1wiR1IuTTIuVkVURVJJTkFSWVwiXV0sSVtcIlMtRy1VU01WVC1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIFRIRUFURVJcIl0sRVtcIkdSLk0yLlZFVEVSSU5BUllcIl1dLElbXCJTLUctVVNNVkMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuTTIuVkVURVJJTkFSWVwiXV0sSVtcIlMtRy1VU01ELS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMXCJdLEVbXCJHUi5NMi5ERU5UQUxcIl1dLElbXCJTLUctVVNNRFQtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBUSEVBVEVSXCJdLEVbXCJHUi5NMi5ERU5UQUxcIl1dLElbXCJTLUctVVNNREMtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBDT1JQU1wiXSxFW1wiR1IuTTIuREVOVEFMXCJdXSxJW1wiUy1HLVVTTVAtLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUxcIl0sRVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLElbXCJTLUctVVNNUFQtXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTCBUSEVBVEVSXCJdLEVbXCJHUi5NMi5QU1lDSE9MT0dJQ0FMXCJdXSxJW1wiUy1HLVVTTVBDLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgQ09SUFNcIl0sRVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLElbXCJTLUctVVNTLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdXSxJW1wiUy1HLVVTU1QtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdXSxJW1wiUy1HLVVTU0MtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXV0sSVtcIlMtRy1VU1MxLS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElcIl1dLElbXCJTLUctVVNTMVQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElcIl1dLElbXCJTLUctVVNTMUMtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJXCJdXSxJW1wiUy1HLVVTUzItLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl1dLElbXCJTLUctVVNTMlQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJXCJdXSxJW1wiUy1HLVVTUzJDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlcIl1dLElbXCJTLUctVVNTMy0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJSUlcIl1dLElbXCJTLUctVVNTM1QtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1VU1MzQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1VU1MzQS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXSxzLl90cmFuc2xhdGUoMjUsNSxzLl9zY2FsZSguNSxFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0pKV0sSVtcIlMtRy1VU1MzQVRcIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdLHMuX3RyYW5zbGF0ZSgyNSw1LHMuX3NjYWxlKC41LEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSkpXSxJW1wiUy1HLVVTUzNBQ1wiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdLHMuX3RyYW5zbGF0ZSgyNSw1LHMuX3NjYWxlKC41LEVbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSkpXSxJW1wiUy1HLVVTUzQtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl1dLElbXCJTLUctVVNTNFQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElWXCJdXSxJW1wiUy1HLVVTUzRDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgSVZcIl1dLElbXCJTLUctVVNTNS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJW1wiUy1HLVVTUzVULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJW1wiUy1HLVVTUzVDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVlwiXV0sSVtcIlMtRy1VU1M2LS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFZJXCJdXSxJW1wiUy1HLVVTUzZULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSVwiXV0sSVtcIlMtRy1VU1M2Qy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFZJXCJdXSxJW1wiUy1HLVVTUzctLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVklJXCJdXSxJW1wiUy1HLVVTUzdULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl1dLElbXCJTLUctVVNTN0MtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlcIl1dLElbXCJTLUctVVNTOC0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdXSxJW1wiUy1HLVVTUzhULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBWSUlJXCJdXSxJW1wiUy1HLVVTUzhDLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBDT1JQU1wiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgVklJSVwiXV0sSVtcIlMtRy1VU1M5LS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElYXCJdXSxJW1wiUy1HLVVTUzlULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5GRi5DTEFTUyBJWFwiXV0sSVtcIlMtRy1VU1M5Qy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIElYXCJdXSxJW1wiUy1HLVVTU1gtLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVtcIlMtRy1VU1NYVC1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgVEhFQVRFUlwiXSxFW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVtcIlMtRy1VU1NYQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkZGLkNMQVNTIFhcIl1dLElbXCJTLUctVVNTTC0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5MQVVORFJZL0JBVEhcIl1dLElbXCJTLUctVVNTTFQtXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIFRIRUFURVJcIl0sRVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXV0sSVtcIlMtRy1VU1NMQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLkxBVU5EUlkvQkFUSFwiXV0sSVtcIlMtRy1VU1NXLS1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFlcIl0sRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLVVTU1dULVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5XQVRFUlwiXV0sSVtcIlMtRy1VU1NXQy1cIl09W0VbXCJHUi5JQy5GRi5TVVBQTFkgQ09SUFNcIl0sRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLVVTU1dQLVwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWVwiXSxFW1wiR1IuSUMuV0FURVIgUFVSSUZJQ0FUSU9OXCJdXSxJW1wiUy1HLVVTU1dQVFwiXT1bRVtcIkdSLklDLkZGLlNVUFBMWSBUSEVBVEVSXCJdLEVbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLElbXCJTLUctVVNTV1BDXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZIENPUlBTXCJdLEVbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLElbXCJTLUctVVNULS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbXCJTLUctVVNUVC0tXCJdPVtFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXV0sSVtcIlMtRy1VU1RDLS1cIl09W0VbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXV0sSVtcIlMtRy1VU1RNLS1cIl09W0VbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl1dLElbXCJTLUctVVNUTVQtXCJdPVtFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuTU9WRU1FTlQgQ09OVFJPTCBDRU5UUkVcIl1dLElbXCJTLUctVVNUTUMtXCJdPVtFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1PVkVNRU5UIENPTlRST0wgQ0VOVFJFXCJdXSxJW1wiUy1HLVVTVFItLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1RSVC1cIl09W0VbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1RSQy1cIl09W0VbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuTTEuUkFJTFJPQURcIl1dLElbXCJTLUctVVNUUy0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVTVFNULVwiXT1bRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk5BVkFMXCJdXSxJW1wiUy1HLVVTVFNDLVwiXT1bRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5OQVZBTFwiXV0sSVtcIlMtRy1VU1RBLS1cIl09W0VbXCJHUi5JQy5UUkFOU1BPUlRBVElPTlwiXSxFW1wiR1IuSUMuQUlSUE9SVCBPRiBERUJBUktBVElPTlwiXV0sSVtcIlMtRy1VU1RBVC1cIl09W0VbXCJHUi5JQy5GRi5USEVBVFJFIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLVVTVEFDLVwiXT1bRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLVVTVEktLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTVElULVwiXT1bRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1JU1NJTEVcIl1dLElbXCJTLUctVVNUSUMtXCJdPVtFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLk0xLk1JU1NJTEVcIl1dLElbXCJTLUctVVNYLS0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl1dLElbXCJTLUctVVNYVC0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU1hDLS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXV0sSVtcIlMtRy1VU1hILS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVVNYSFQtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTIuSEVBVllcIl1dLElbXCJTLUctVVNYSEMtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLkNPUlBTIFNVUFBPUlRcIl0sRVtcIkdSLk0yLkhFQVZZXCJdXSxJW1wiUy1HLVVTWFItLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1hSVC1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5NMi5SQUlMUk9BRFwiXV0sSVtcIlMtRy1VU1hSQy1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuTTIuUkFJTFJPQURcIl1dLElbXCJTLUctVVNYTy0tXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLk0xLkFNTVVOSVRJT05cIl1dLElbXCJTLUctVVNYT1QtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTEuQU1NVU5JVElPTlwiXV0sSVtcIlMtRy1VU1hPQy1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuQ09SUFMgU1VQUE9SVFwiXSxFW1wiR1IuTTEuQU1NVU5JVElPTlwiXV0sSVtcIlMtRy1VU1hPTS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuTTEuTUlTU0lMRVwiXV0sSVtcIlMtRy1VU1hPTVRcIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXSxFW1wiR1IuSUMuRkYuVEhFQVRSRSBTVVBQT1JUXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTWE9NQ1wiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5NMS5NSVNTSUxFXCJdXSxJW1wiUy1HLVVTWEUtLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMS5FTEVDVFJPLU9QVElDQUxcIl1dLElbXCJTLUctVVNYRVQtXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLklDLkZGLlRIRUFUUkUgU1VQUE9SVFwiXSxFW1wiR1IuTTEuRUxFQ1RSTy1PUFRJQ0FMXCJdXSxJW1wiUy1HLVVTWEVDLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5JQy5GRi5DT1JQUyBTVVBQT1JUXCJdLEVbXCJHUi5NMS5FTEVDVFJPLU9QVElDQUxcIl1dLElbXCJTLUctVVNYQkRSXCJdPVtFW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl0sRVtcIkdSLk0yLkJBVFRMRSBEQU1BR0UgUkVQQUlSXCJdXSxJW1wiUy1HLVVTWFBNLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdLEVbXCJHUi5NMi5QUkVWRU5USVZFIE1BSU5URU5BTkNFXCJdXSxJW1wiUy1HLVVTWFAtLVwiXT1bRVtcIkdSLklDLlBJUEVMSU5FXCJdXSxJW1wiUy1HLVVTWEVQLVwiXT1bRVtcIkdSLklDLkVOVklST05NRU5UQUwgUFJPVEVDVElPTlwiXV0sSVtcIlMtRy1VSC0tLS1cIl09W10sSVtcIlMtRy1VSDEtLS1cIl09W0VbXCJHUi5JQy5GRi5IRUFEUVVBUlRFUlMgT1IgSEVBRFFVQVJURVJTIEVMRU1FTlRcIl1dLElbXCJTLUctVUgyLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5GRi5IRUFEUVVBUlRFUlMgT1IgSEVBRFFVQVJURVJTIEVMRU1FTlRcIl1dLElbXCJTLUctVUhHTC0tXCJdPUlbXCJTLUctR0wtLS0tXCJdPVtFW1wiR1IuSUMuTElBSVNPTlwiXV19fSx4PXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbY10saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRy1FLS0tLS1cIl09W10sSVtcIlMtRy1FVy0tLS1cIl09W10sSVtcIlMtRy1FV00tLS1cIl09W0VbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXTUEtLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl1dLElbXCJTLUctRVdNQVMtXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdNQVNSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl0sRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVExBUlwiXV0sSVtcIlMtRy1FV01BU0VcIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEVbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVtcIlMtRy1FV01BSS1cIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbXCJTLUctRVdNQUlSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdLEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl1dLElbXCJTLUctRVdNQUlFXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdLEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdXSxJW1wiUy1HLUVXTUFMLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdNQUxSXCJdPVtFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJW1wiUy1HLUVXTUFMRVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0sRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEVMQVJcIl1dLElbXCJTLUctRVdNQVQtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjcsRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0pKSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUSEVBVFJFXCJdXSxJW1wiUy1HLUVXTUFUUlwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC43LEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdKSksRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEhFQVRSRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJW1wiUy1HLUVXTUFURVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC43LEVbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdKSksRVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEhFQVRSRVwiXSxFW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVtcIlMtRy1FV01TLS1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVtcIlMtRy1FV01TUy1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdNU0ktXCJdPVtFW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV01TTC1cIl09W0VbXCJHUi5FUS5TVVJGQUNFLVRPLVNVUkZBQ0UgTUlTU0lMRSBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV01ULS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXTVRMLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXTVRNLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV01USC1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBNSVNTSUxFIExBVU5DSEVSXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJW1wiUy1HLUVXUy0tLVwiXT1bRVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl1dLElbXCJTLUctRVdTTC0tXCJdPVtFW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdTTS0tXCJdPVtFW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXU0gtLVwiXT1bRVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdYLS0tXCJdPVtFW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXWEwtLVwiXT1bRVtcIkdSLkVRLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxzLl90cmFuc2xhdGUoMCwxMCxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl0pXSxJW1wiUy1HLUVXWE0tLVwiXT1bRVtcIkdSLkVRLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxzLl90cmFuc2xhdGUoMCwxMCxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdKV0sSVtcIlMtRy1FV1hILS1cIl09W0VbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJW1wiUy1HLUVXVC0tLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVtcIlMtRy1FV1RMLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXVE0tLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXVEgtLVwiXT1bRVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV1ItLS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXV0sSVtcIlMtRy1FV1JSLS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdSTC0tXCJdPVtFW1wiR1IuRVEuUklGTEVcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV1JILS1cIl09W0VbXCJHUi5FUS5SSUZMRVwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV1otLS1cIl09W0VbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJW1wiUy1HLUVXWkwtLVwiXT1bRVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdKV0sSVtcIlMtRy1FV1pNLS1cIl09W0VbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0pXSxJW1wiUy1HLUVXWkgtLVwiXT1bRVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJW1wiUy1HLUVXTy0tLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXV0sSVtcIlMtRy1FV09MLS1cIl09W0VbXCJHUi5FUS5NT1JUQVJcIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXT00tLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXT0gtLVwiXT1bRVtcIkdSLkVRLk1PUlRBUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FV0gtLS1cIl09W0VbXCJHUi5FUS5IT1dJVFpFUlwiXV0sSVtcIlMtRy1FV0hMLS1cIl09W0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdITFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdITS0tXCJdPVtFW1wiR1IuRVEuSE9XSVRaRVJcIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV0hNUy1cIl09W3MuX3RyYW5zbGF0ZSgwLC0xNSxzLl9zY2FsZSguOCxbRVtcIkdSLkVRLkhPV0lUWkVSXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdISC0tXCJdPVtFW1wiR1IuRVEuSE9XSVRaRVJcIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdISFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5IT1dJVFpFUlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0pKSxFW1wiR1IuRVEuSE9XSVRaRVIgVFJBQ0tFRFwiXV0sSVtcIlMtRy1FV0ctLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl1dLElbXCJTLUctRVdHTC0tXCJdPVtFW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEVbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVtcIlMtRy1FV0dNLS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl0sRVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVtcIlMtRy1FV0dILS1cIl09W0VbXCJHUi5FUS5BTlRJVEFOSyBHVU5cIl0sRVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbXCJTLUctRVdHUi0tXCJdPVtFW1wiR1IuRVEuUkVDT0lMTEVTUyBHVU5cIl1dLElbXCJTLUctRVdELS0tXCJdPVtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdXSxJW1wiUy1HLUVXREwtLVwiXT1bRVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXSxFW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbXCJTLUctRVdETFMtXCJdPVtzLl90cmFuc2xhdGUoMCwtMTUscy5fc2NhbGUoLjgsW0VbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSkpLEVbXCJHUi5FUS5IT1dJVFpFUiBUUkFDS0VEXCJdXSxJW1wiUy1HLUVXRE0tLVwiXT1bRVtcIkdSLkVRLkRJUkVDVCBGSVJFIEdVTlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXRE1TLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC44LFtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dKSksRVtcIkdSLkVRLkhPV0lUWkVSIFRSQUNLRURcIl1dLElbXCJTLUctRVdESC0tXCJdPVtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJW1wiUy1HLUVXREhTLVwiXT1bcy5fdHJhbnNsYXRlKDAsLTE1LHMuX3NjYWxlKC44LFtFW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEVbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSkpLEVbXCJHUi5FUS5IT1dJVFpFUiBUUkFDS0VEXCJdXSxJW1wiUy1HLUVXQS0tLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXV0sSVtcIlMtRy1FV0FMLS1cIl09W0VbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0sRVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJW1wiUy1HLUVXQU0tLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxFW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJW1wiUy1HLUVXQUgtLVwiXT1bRVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxFW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVtcIlMtRy1FVi0tLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXV0sSVtcIlMtRy1FVkEtLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxFW1wiR1IuRVEuQVJNT1VSRUQgVkVISUNMRVwiXV0sSVtcIlMtRy1FVkFULS1cIl09W0VbXCJHUi5FUS5UQU5LXCJdXSxJW1wiUy1HLUVWQVRMLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLkxJR0hUIFRBTktcIl1dLElbXCJTLUctRVZBVExSXCJdPUlbXCJTLUctRVZBVFctXCJdPVtFW1wiR1IuRVEuVEFOS1wiXSxFW1wiR1IuRVEuTElHSFQgVEFOS1wiXSxFW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQVRNLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdXSxJW1wiUy1HLUVWQVRNUlwiXT1JW1wiUy1HLUVWQVRYLVwiXT1bRVtcIkdSLkVRLlRBTktcIl0sRVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdLEVbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbXCJTLUctRVZBVEgtXCJdPVtFW1wiR1IuRVEuVEFOS1wiXSxFW1wiR1IuRVEuSEVBVlkgVEFOS1wiXV0sSVtcIlMtRy1FVkFUSFJcIl09SVtcIlMtRy1FVkFUWS1cIl09W0VbXCJHUi5FUS5UQU5LXCJdLEVbXCJHUi5FUS5IRUFWWSBUQU5LXCJdLEVbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbXCJTLUctRVZBQS0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl1dLElbXCJTLUctRVZBQVItXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVtcIlMtRy1FVkFJLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQUMtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVtcIlMtRy1FVkFTLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUiBDT01CQVQgU0VSVklDRSBTVVBQT1JUIFZFSElDTEVcIl1dLElbXCJTLUctRVZBTC0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgRklHSFRJTkcgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXV0sSVtcIlMtRy1FVlUtLS1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl1dLElbXCJTLUctRVZVQi0tXCJdPVtFW1wiR1IuRVEuQlVTXCJdXSxJW1wiUy1HLUVWVVMtLVwiXT1bRVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXV0sSVtcIlMtRy1FVlVTTC1cIl09W0VbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBMSUdIVFwiXV0sSVtcIlMtRy1FVlVTTS1cIl09W0VbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBNRURJVU1cIl1dLElbXCJTLUctRVZVU0gtXCJdPVtFW1wiR1IuRVEuU0VNSS1UUkFJTEVSIFRSVUNLXCJdLEVbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUgSEVBVllcIl1dLElbXCJTLUctRVZVTC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl1dLElbXCJTLUctRVZVWC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJW1wiUy1HLUVWVVItLVwiXT1bRVtcIkdSLkVRLldBVEVSIFZFSElDTEVcIl1dLElbXCJTLUctRVZVVC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLXCJdXSxJW1wiUy1HLUVWVVRMLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDS1wiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5MSUdIVFwiXV0sSVtcIlMtRy1FVlVUSC1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0suSEVBVllcIl1dLElbXCJTLUctRVZVQS0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbXCJTLUctRVZVQUEtXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVtcIlMtRy1FVkUtLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxzLl9zY2FsZSguNyxFW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJW1wiUy1HLUVWRUItLVwiXT1bRVtcIkdSLkVRLkJSSURHRVwiXV0sSVtcIlMtRy1FVkVFLS1cIl09W0VbXCJHUi5FUS5FQVJUSE1PVkVSXCJdXSxJW1wiUy1HLUVWRUMtLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdLHMuX3NjYWxlKC42LEVbXCJHUi5JQy5FTkdJTkVFUlwiXSldLElbXCJTLUctRVZFTS0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5NSU5FIExBWUlORyBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWRU1BLVwiXT1bRVtcIkdSLkVRLk1JTkUgQ0xFQVJJTkcgRVFVSVBNRU5UXCJdLEVbXCJHUi5FUS5UQU5LXCJdXSxJW1wiUy1HLUVWRU1WLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLEVbXCJHUi5FUS5BUk1PUkVEIENBUlJJRVIgV0lUSCBWT0xDQU5PXCJdXSxJW1wiUy1HLUVWRU1ULVwiXT1bRVtcIkdSLkVRLk1JTkUgQ0xFQVJJTkcgRVFVSVBNRU5UXCJdLHMuX3RyYW5zbGF0ZSgwLC0xMCxFW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdKV0sSVtcIlMtRy1FVkVNTC1cIl09W0VbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSxFW1wiR1IuRVEuQVJNT1JFRCBDQVJSSUVSIFdJVEggVk9MQ0FOT1wiXV0sSVtcIlMtRy1FVkVBLS1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXV0sSVtcIlMtRy1FVkVBQS1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxFW1wiR1IuRVEuVEFOS1wiXV0sSVtcIlMtRy1FVkVBVC1cIl09W0VbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxzLl90cmFuc2xhdGUoMCwtMTAsRVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSldLElbXCJTLUctRVZFTVNNXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sRVtcIkdSLkVRLk1JTkUgU0NBVFRFUkFCTEVcIl1dLElbXCJTLUctRVZFRC0tXCJdPVtFW1wiR1IuRVEuRE9aRVJcIl1dLElbXCJTLUctRVZFREEtXCJdPVtFW1wiR1IuRVEuRE9aRVIgQVJNT1JFRFwiXV0sSVtcIlMtRy1FVkVTLS1cIl09W0VbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxzLl9zY2FsZSguNixFW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJW1wiUy1HLUVWRVItLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLHMuX3NjYWxlKC42LEVbXCJHUi5JQy5FTkdJTkVFUlwiXSksRVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSIEVOR0lORUVSIFJFQ09OIFZFSElDTEVcIl1dLElbXCJTLUctRVZFSC0tXCJdPVtFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0sRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBCQUNLSE9FXCJdXSxJW1wiUy1HLUVWRUYtLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXSxFW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIEZFUlJZIFRSQU5TUE9SVEVSXCJdXSxJW1wiUy1HLUVWRC0tLVwiXT1bRVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ1JPU1MtQ09VTlRSWVwiXSxzLl9zY2FsZSguNyxFW1wiR1IuSUMuRFJJTExJTkdcIl0pXSxJW1wiUy1HLUVWVC0tLVwiXT1bRVtcIkdSLkVRLlRSQUlOIExPQ09NT1RJVkVcIl1dLElbXCJTLUctRVZDLS0tXCJdPVtFW1wiR1IuSS5DSVZJTElBTlwiXV0sSVtcIlMtRy1FVkNBLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl1dLElbXCJTLUctRVZDQUwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJW1wiUy1HLUVWQ0FNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbXCJTLUctRVZDQUgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ08tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl1dLElbXCJTLUctRVZDT0wtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXV0sSVtcIlMtRy1FVkNPTS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNPSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ00tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl1dLElbXCJTLUctRVZDTUwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXV0sSVtcIlMtRy1FVkNNTS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNNSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJW1wiUy1HLUVWQ1UtLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQ1VMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJW1wiUy1HLUVWQ1VNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVtcIlMtRy1FVkNVSC1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVtcIlMtRy1FVkNKLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdXSxJW1wiUy1HLUVWQ0pMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSkVFUCBUWVBFIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl1dLElbXCJTLUctRVZDSk0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbXCJTLUctRVZDSkgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVtcIlMtRy1FVkNULS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWQ1RMLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDVE0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDVEgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVtcIlMtRy1FVkNGLS1cIl09W0VbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDRkwtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWQ0ZNLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEVbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbXCJTLUctRVZDRkgtXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXSxFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJW1wiUy1HLUVWTS0tLVwiXT1bRVtcIkdSLkVRLlBBQ0sgQU5JTUFMXCJdXSxJW1wiUy1HLUVWUy0tLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFNVUFBPUlRcIl1dLElbXCJTLUctRVZTVC0tXCJdPVI/W0VbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxFW1wiR1IuRVEuTUlTU0lMRSBUUkFOU0xPQURFUlwiXV06W0VbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdXSxJW1wiUy1HLUVWU1ItLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFRSQU5TUE9SVEVSXCJdXSxJW1wiUy1HLUVWU0MtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIENSQU5FL0xPQURJTkcgREVWSUNFXCJdXSxJW1wiUy1HLUVWU1AtLVwiXT1bRVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEVbXCJHUi5FUS5NSVNTSUxFIFBST1BFTExBTlQgVFJBTlNQT1JURVJcIl1dLElbXCJTLUctRVZTVy0tXCJdPVtFW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sRVtcIkdSLkVRLk1JU1NJTEUgV0FSSEVBRCBUUkFOU1BPUlRFUlwiXV0sSVtcIlMtRy1FUy0tLS1cIl09W0VbXCJHUi5FUS5TRU5TT1JcIl1dLElbXCJTLUctRVNSLS0tXCJdPVtFW1wiR1IuRVEuUkFEQVJcIl1dLElbXCJTLUctRVNFLS0tXCJdPVtFW1wiR1IuRVEuU0VOU09SIEVNUExBQ0VEXCJdXSxJW1wiUy1HLUVYSS0tLVwiXT1bRVtcIkdSLkVRLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRVwiXV0sSVtcIlMtRy1FWC0tLS1cIl09W10sSVtcIlMtRy1FWEwtLS1cIl09W0VbXCJHUi5FUS5MQVNFUlwiXV0sSVtcIlMtRy1FWE4tLS1cIl09W0VbXCJHUi5FUS5DQlJOIEVRVUlQTUVOVFwiXV0sSVtcIlMtRy1FWEYtLS1cIl09W0VbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJW1wiUy1HLUVYTS0tLVwiXT1bRVtcIkdSLkVRLkxBTkQgTUlORVNcIl1dLElbXCJTLUctRVhNQy0tXCJdPVtFW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkVcIl1dLElbXCJTLUctRVhNTC0tXCJdPVtFW1wiR1IuRVEuQU5USVBFUlNPTk5FTCBMQU5EIE1JTkUgTEVTUyBUSEFOIExFVEhBTFwiXV07dmFyIGU9e1wiRS0tLS0tXCI6MCxcIkVXTS0tLVwiOjE0MCxcIkVXTUEtLVwiOjE0MCxcIkVXTUFTLVwiOjE0MCxFV01BU1I6MTQwLEVXTUFTRToxNDAsXCJFV01BSS1cIjoxNDAsRVdNQUlSOjE0MCxFV01BSUU6MTQwLFwiRVdNQUwtXCI6MTQwLEVXTUFMUjoxNDAsRVdNQUxFOjE0MCxcIkVXTUFULVwiOjE1MyxFV01BVFI6MTUzLEVXTUFURToxNTMsXCJFV01TLS1cIjoxNDAsXCJFV01TUy1cIjoxNDAsXCJFV01TSS1cIjoxNDAsXCJFV01TTC1cIjoxNDAsXCJFV01ULS1cIjoxNDAsXCJFV01UTC1cIjoxNDAsXCJFV01UTS1cIjoxNDAsXCJFV01USC1cIjoxNDAsXCJFV1MtLS1cIjoxNDAsXCJFV1NMLS1cIjoxNDAsXCJFV1NNLS1cIjoxNDAsXCJFV1NILS1cIjoxNDAsXCJFV1gtLS1cIjoxNDAsXCJFV1hMLS1cIjoxNDAsXCJFV1hNLS1cIjoxNDAsXCJFV1hILS1cIjoxNDAsXCJFV1QtLS1cIjoxNDAsXCJFV1RMLS1cIjoxNDAsXCJFV1RNLS1cIjoxNDAsXCJFV1RILS1cIjoxNDAsXCJFV1ItLS1cIjoxNDAsXCJFV1JMLS1cIjoxNDAsXCJFV1JNLS1cIjoxNDAsXCJFV1JILS1cIjoxNDAsXCJFV1otLS1cIjoxNDAsXCJFV1pMLS1cIjoxNDAsXCJFV1pNLS1cIjoxNDAsXCJFV1pILS1cIjoxNDAsXCJFV08tLS1cIjoxNDAsXCJFV09MLS1cIjoxNDAsXCJFV09NLS1cIjoxNDAsXCJFV09ILS1cIjoxNDAsXCJFV0gtLS1cIjoxNDAsXCJFV0hMLS1cIjoxNDAsXCJFV0hMUy1cIjoxMzAsXCJFV0hNLS1cIjoxNDAsXCJFV0hNUy1cIjoxMzAsXCJFV0hILS1cIjoxNDAsXCJFV0hIUy1cIjoxMzAsXCJFV0ctLS1cIjoxNDAsXCJFV0dMLS1cIjoxNDAsXCJFV0dNLS1cIjoxNDAsXCJFV0dILS1cIjoxNDAsXCJFV0dSLS1cIjoxNDAsXCJFV0QtLS1cIjoxNDAsXCJFV0RMLS1cIjoxNDAsXCJFV0RMUy1cIjoxMzAsXCJFV0RNLS1cIjoxNDAsXCJFV0RNUy1cIjoxMzAsXCJFV0RILS1cIjoxNDAsXCJFV0RIUy1cIjoxMzAsXCJFV0EtLS1cIjoxNDAsXCJFV0FMLS1cIjoxNDAsXCJFV0FNLS1cIjoxNDAsXCJFV0FILS1cIjoxNDAsXCJFVi0tLS1cIjoxMjksXCJFVkEtLS1cIjoxMjksXCJFVkFULS1cIjoxMzAsXCJFVkFUTC1cIjoxMzAsRVZBVExSOjEzMCxcIkVWQVRNLVwiOjEzMCxFVkFUTVI6MTMwLFwiRVZBVEgtXCI6MTMwLEVWQVRIUjoxMzAsXCJFVkFBLS1cIjoxMzAsXCJFVkFBUi1cIjoxMzAsXCJFVkFJLS1cIjoxMzAsXCJFVkFDLS1cIjoxMzAsXCJFVkFTLS1cIjoxMzAsXCJFVkFMLS1cIjoxNDAsXCJFVlUtLS1cIjoxMzAsXCJFVkFCLS1cIjoxMzAsXCJFVlVTLS1cIjoxNDAsXCJFVlVTTC1cIjoxNDAsXCJFVlVTTS1cIjoxNDAsXCJFVlVTSC1cIjoxNDAsXCJFVlVMLS1cIjoxNDAsXCJFVlVYLS1cIjoxNDAsXCJFVlVSLS1cIjoxMzAsXCJFVlVUTC1cIjoxMzAsXCJFVlVUSC1cIjoxMzAsXCJFVlVBLS1cIjoxMzAsXCJFVlVBQS1cIjoxMzAsXCJFVkUtLS1cIjoxMjksXCJFVkVCLS1cIjoxMzAsXCJFVkVFLS1cIjoxMzAsXCJFVkVDLS1cIjoxNDAsXCJFVkVNLS1cIjoxMzAsXCJFVkVNQS1cIjoxMzAsXCJFVkVNVi1cIjoxMzAsXCJFVkVNVC1cIjoxMzAsXCJFVkVNTC1cIjoxNDAsXCJFVkVBLS1cIjoxMjAsXCJFVkVBQS1cIjoxMzAsXCJFVkVBVC1cIjoxMzAsRVZFTVNNOjEzMCxcIkVWRUQtLVwiOjEzMCxcIkVWRURBLVwiOjEzMCxcIkVWRVMtLVwiOjEzMCxcIkVWRVItLVwiOjEzMCxcIkVWRUgtLVwiOjE0MCxcIkVWRUYtLVwiOjE0MCxcIkVWRC0tLVwiOjE0MCxcIkVWVC0tXCI6MTMwLFwiRVZDLS0tXCI6MTE5LFwiRVZDQS0tXCI6MTMyLjUsXCJFVkNBTC1cIjoxMzIuNSxcIkVWQ0FNLVwiOjEzMi41LFwiRVZDQUgtXCI6MTMyLjUsXCJFVkNPLS1cIjoxMzIuNSxcIkVWQ09MLVwiOjEzMi41LFwiRVZDT00tXCI6MTMyLjUsXCJFVkNPSC1cIjoxMzIuNSxcIkVWQ00tLVwiOjEzMi41LFwiRVZDTUwtXCI6MTMyLjUsXCJFVkNNTS1cIjoxMzIuNSxcIkVWQ01ILVwiOjEzMi41LFwiRVZDVS0tXCI6MTMyLjUsXCJFVkNVTC1cIjoxMzIuNSxcIkVWQ1VNLVwiOjEzMi41LFwiRVZDVUgtXCI6MTMyLjUsXCJFVkNKLS1cIjoxMzIuNSxcIkVWQ0pMLVwiOjEzMi41LFwiRVZDSk0tXCI6MTMyLjUsXCJFVkNKSC1cIjoxMzIuNSxcIkVWQ1QtLVwiOjEzMi41LFwiRVZDVEwtXCI6MTMyLjUsXCJFVkNUTS1cIjoxMzIuNSxcIkVWQ1RILVwiOjEzMi41LFwiRVZDRi0tXCI6MTMyLjUsXCJFVkNGTC1cIjoxMzIuNSxcIkVWQ0ZNLVwiOjEzMi41LFwiRVZDRkgtXCI6MTMyLjUsXCJFVk0tLS1cIjoxMjUsXCJFVlMtLS1cIjoxMjksXCJFVlNULS1cIjoxMjksXCJFVlNSLS1cIjoxMjksXCJFVlNDLS1cIjoxMjksXCJFVlNQLS1cIjoxMjksXCJFVlNXLS1cIjoxMjksXCJFUy0tLS1cIjoxNDAsXCJFU1ItLS1cIjoxMjAsXCJFU0UtLS1cIjoxMzYsXCJFWEktLS1cIjoxMTksXCJFWEwtLS1cIjoxNDUsXCJFWE4tLS1cIjoxNDAsXCJFWEYtLS1cIjoxMzUsXCJFWE0tLS1cIjoxMzAsXCJFWE1DLS1cIjoxMjIsXCJFWE1MLS1cIjoxMjJ9O2Zvcih2YXIgQSBpbiBlKWUuaGFzT3duUHJvcGVydHkoQSkmJih0W1wiUy1HLVwiK0FdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6ZVtBXX0pfX0sVT17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2NdLGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJTLUctSS0tLS0tXCJdPVtdLElbXCJTLUctSVItLS0tXCJdPVtFW1wiR1IuSU4uSUMuUkFXIE1BVEVSSUFMIFBST0RVQ1RJT04vU1RPUkFHRVwiXV0sSVtcIlMtRy1JUk0tLS1cIl09W0VbXCJHUi5JTi5JQy5NSU5FXCJdXSxJW1wiUy1HLUlSUC0tLVwiXT1bRVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVtcIlMtRy1JUk4tLS1cIl09W0VbXCJHUi5JQy5DQlJOXCJdXSxJW1wiUy1HLUlSTkItLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLElbXCJTLUctSVJOQy0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLElbXCJTLUctSVJOTi0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuTTEuTlVDTEVBUlwiXV0sSVtcIlMtRy1JUC0tLS1cIl09W0VbXCJHUi5JTi5JQy5QUk9DRVNTSU5HIEZBQ0lMSVRZXCJdXSxJW1wiUy1HLUlQRC0tLVwiXT1bRVtcIkdSLklDLkNCUk5cIl0sRVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sSVtcIlMtRy1JRS0tLS1cIl09W0VbXCJHUi5JQy5FUVVJUE1FTlQgTUFOVUZBQ1RVUkVcIl1dLElbXCJTLUctSVUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuVVRJTElUWSBGQUNJTElUWVwiXV0sSVtcIlMtRy1JVVItLS1cIl09W0VbXCJHUi5JTi5JQy5SRVNFQVJDSFwiXV0sSVtcIlMtRy1JVVQtLS1cIl09W0VbXCJHUi5JTi5JQy5URUxFQ09NTVVOSUNBVElPTlNcIl1dLElbXCJTLUctSVVFLS0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl1dLElbXCJTLUctSVVFTi0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl1dLElbXCJTLUctSVVFRC0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIERBTVwiXV0sSVtcIlMtRy1JVUVGLS1cIl09W0VbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSxFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVIgRk9TU0lMXCJdXSxJW1wiUy1HLUlVUC0tLVwiXT1bRVtcIkdSLklDLldBVEVSXCJdXSxJW1wiUy1HLUlNLS0tLVwiXT1bXSxJW1wiUy1HLUlNRi0tLVwiXT1bRVtcIkdSLklOLklDLkFUT01JQyBFTkVSR1lcIl1dLElbXCJTLUctSU1GQS0tXCJdPVtFW1wiR1IuSU4uSUMuQVRPTUlDIEVORVJHWVwiXSxFW1wiR1IuSU4uTTIuQVRPTUlDIEVORVJHWSBSRUFDVE9SXCJdXSxJW1wiUy1HLUlNRlAtLVwiXT1bRVtcIkdSLklOLklDLkFUT01JQyBFTkVSR1lcIl0sRVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVtcIlMtRy1JTUZQVy1cIl09W0VbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZIFdFQVBPTlMgR1JBREVcIl0sRVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVtcIlMtRy1JTUZTLS1cIl09W0VbXCJHUi5JTi5JQy5BVE9NSUMgRU5FUkdZXCJdLEVbXCJHUi5JTi5NMi5OVUNMRUFSIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbXCJTLUctSU1BLS0tXCJdPVtFW1wiR1IuSU4uSUMuQUlSQ1JBRlQgUFJPRFVDVElPTiAmIEFTU0VNQkxZXCJdXSxJW1wiUy1HLUlNRS0tLVwiXT1bRVtcIkdSLklDLkZGLkNMQVNTIFZcIl1dLElbXCJTLUctSU1HLS0tXCJdPVtFW1wiR1IuRVEuVEFOS1wiXV0sSVtcIlMtRy1JTVYtLS1cIl09W0VbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXV0sSVtcIlMtRy1JTU4tLS1cIl09W0VbXCJHUi5FUS5ET1pFUlwiXV0sSVtcIlMtRy1JTU5CLS1cIl09W0VbXCJHUi5JTi5JQy5CUklER0VcIl1dLElbXCJTLUctSU1DLS0tXCJdPVtFW1wiR1IuSUMuQ0JSTlwiXSxFW1wiR1IuSU4uTTIuQ0hFTUlDQUwgJiBCSU9MT0dJQ0FMIFdBUkZBUkVcIl1dLElbXCJTLUctSU1TLS0tXCJdPVtFW1wiR1IuSUMuTkFWQUxcIl0sRVtcIkdSLklOLk0yLlNISVAgQ09OU1RSVUNUSU9OXCJdXSxJW1wiUy1HLUlNTS0tLVwiXT1bRVtcIkdSLklDLk1JU1NJTEVcIl1dLElbXCJTLUctSUctLS0tXCJdPVtFW1wiR1IuSS5HT1ZFUk5NRU5UXCJdXSxJW1wiUy1HLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLkJBU0VcIl1dLElbXCJTLUctSUJBLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sRVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl1dLElbXCJTLUctSUJOLS0tXCJdPVtFW1wiR1IuSUMuTkFWQUxcIl1dLElbXCJTLUctSVQtLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbXCJTLUctSVgtLS0tXCJdPVtFW1wiR1IuSUMuRkYuTUVESUNBTFwiXV0sSVtcIlMtRy1JWEgtLS1cIl09W0VbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXV0sSVtcIlMtRy1JUlItLS1cIl09SVtcIlMtRy1JUlNSLS1cIl09W0VbXCJHUi5JTi5JQy5TRUEgU1VSRkFDRSBJTlNUQUxMQVRJT04sIE9JTCBSSUcvUExBVEZPUk1cIl1dfX07ZnVuY3Rpb24gZChJLHQsRSxSLGUsQSl7dmFyIEM9dC5mcmFtZSxUPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsUz10Lm51bWJlclNJREMsTj1FLmljb25Db2xvcltUXSxPPUUuaWNvbkZpbGxDb2xvcltUXSxHPUUuYmxhY2tbVF0sbz1FLndoaXRlW1RdLE09e307Zm9yKHZhciBpIGluIE1bXCJTRS5JQy5NSUxJVEFSWVwiXT1hKFwiTUlMXCIpLE1bXCJTRS5JQy5NQU5VQUwgVFJBQ0tcIl09YShcIk1BTlwiKSxNW1wiU0UuSUMuQ09NQkFUQU5UXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA4Ni45LDExMCBjIC0zLjYsMiAtNy4yLDMuOSAtMTAuOCw1LjkgMi4xLDIuOSA2LjcsMy45IDEwLDIuMSAyLjYsLTAuOSA0LjcsLTMuOCAzLjEsLTYuMSAtMC44LC0wLjYgLTEuNSwtMS4zIC0yLjMsLTEuOSB6IG0gMjYuMywwLjEgYyAzLjYsMiA3LjIsMy45IDEwLjgsNS45IC0yLjEsMi45IC02LjcsMy45IC0xMCwyLjEgLTIuNiwtMC45IC00LjcsLTMuOCAtMy4xLC02LjEgMC44LC0wLjYgMS41LC0xLjMgMi4zLC0xLjkgelwiLGZpbGw6ITF9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDExMi45LDExMCBjIC01LjYsLTQgLTExLjMsLTcuOSAtMTYuMSwtMTIuNSAtNC4yLC00LjUgLTcsLTkuOCAtOS4yLC0xNS4xIC0wLjgsNC40IC0wLjksOS4zIDIuNCwxMy4yIDMuNiw0LjUgOC42LDguMSAxMy41LDExLjggMi4zLDEuNyA0LjcsMy4zIDcuMSw0LjggMC44LC0wLjcgMS41LC0xLjUgMi4zLC0yLjIgbSAtMjUuNywwIGMgNS42LC00IDExLjMsLTcuOSAxNi4xLC0xMi41IDQuMiwtNC41IDcsLTkuOCA5LjIsLTE1LjEgMC44LDQuNCAwLjksOS4zIC0yLjQsMTMuMiAtMy42LDQuNSAtOC42LDguMSAtMTMuNSwxMS44IC0yLjMsMS43IC00LjcsMy4zIC03LjEsNC44IC0wLjgsLTAuNyAtMS41LC0xLjUgLTIuMywtMi4yXCIsZmlsbDpvLHN0cm9rZXdpZHRoOjJ9XSxNW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMCwxMjAgLTI1LC0xNyAxNSwyIDAsLTEwIDUsMCAwLC01IC0xNSwwIDAsLTUgMTUsMCAwLC01IDEwLDAgMCw1IDE1LDAgMCw1IC0xNSwwIDAsNSA1LDAgMCwxMCAxNSwtMiB6XCJ9LE1bXCJTRS5JQy5DQVJSSUVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEwMCAyMCwyMCAyMCwtMjAgLTIwLDAgMCwtMjAgLTIwLDAgelwifSxNW1wiU0UuSUMuQkFUVExFU0hJUFwiXT1hKFwiQkJcIiksTVtcIlNFLklDLkNJVklMSUFOXCJdPWEoXCJDSVZcIiksTVtcIlNFLklDLkNJVklMSUFOXCJdLmZpbGw9Unx8Uz9POiFDJiZPLE1bXCJTRS5JQy5DSVZJTElBTlwiXS5zdHJva2U9RyxNW1wiU0UuSUMuQ0lWSUxJQU5cIl0uc3Ryb2tld2lkdGg9MyxNW1wiU0UuSUMuQ1JVSVNFUlwiXT1hKFwiQ0NcIiksTVtcIlNFLklDLkNSVUlTRVIsIEdVSURFRCBNSVNTSUxFXCJdPWEoXCJDR1wiKSxNW1wiU0UuSUMuREVTVFJPWUVSXCJdPWEoXCJERFwiKSxNW1wiU0UuSUMuRlJJR0FURVwiXT1hKFwiRkZcIiksTVtcIlNFLklDLkNPUlZFVFRFXCJdPWEoXCJGU1wiKSxNW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl09YShcIkxMXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIFdBUkZBUkUgU0hJUFwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMDAsMTIwIDIwLDAgbSAtMjAsMCAtMjAsLTIwIDEwLDAgMCwtMjAgMjAsMCAwLDIwIDEwLDAgelwifSxNW1wiU0UuSUMuQU1QSElCSU9VUyBGT1JDRSBGTEFHU0hJUFwiXT1hKFwiTENDXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFRcIl09YShcIkxBXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgR0VORVJBTFwiXT1hKFwiTEhBXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgTVVMVEktUFVSUE9TRVwiXT1hKFwiTEhEXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIFRSQU5TUE9SVCwgRE9DS1wiXT1hKFwiTFBEXCIpLE1bXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgSEVMSUNPUFRFUlwiXT1hKFwiTFBIXCIpLE1bXCJTRS5JQy5MQU5ESU5HIFNISVBcIl09YShcIkxTXCIpLE1bXCJTRS5JQy5MQU5ESU5HIENSQUZUXCJdPWEoXCJMQ1wiKSxNW1wiU0UuSUMuTUlORSBXQVJGQVJFIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixkOlwibSA5OC4zLDgxIDAsNC4xIGMgLTIuNCwwLjMgLTQuNiwxLjQgLTYuNCwyLjkgbCAtMy41LC0zLjUgLTIuNCwyLjQgMy42LDMuNiBjIC0wLjksMS4zIC0xLjUsNC45IC0xLjgsNi41IGwgLTEwLjgsMCAwLDMgMywwIDIwLDIwIDIwLC0yMCAzLDAgMCwtMyAtMTAsMCBjIC0xLC0xLjcgLTIsLTUuMyAtMywtNi43IGwgNCwtMy43IC0yLC0yLjQgLTQsMy42IGMgLTIsLTEuNCAtNCwtMi40IC02LC0yLjcgbCAwLC00LjEgelwifSxNW1wiU0UuSUMuTUlORUxBWUVSXCJdPWEoXCJNTFwiKSxNW1wiU0UuSUMuTUlORVNXRUVQRVJcIl09YShcIk1TXCIpLE1bXCJTRS5JQy5NSU5FU1dFRVBFUiwgRFJPTkVcIl09YShcIk1TRFwiKSxNW1wiU0UuSUMuTUlORUhVTlRFUlwiXT1hKFwiTUhcIiksTVtcIlNFLklDLk1JTkUgQ09VTlRFUiBNRUFTVVJFIFNVUFBPUlQgU0hJUFwiXT1hKFI/XCJNQVwiOlwiTUNTXCIpLE1bXCJTRS5JQy5NSU5FIENPVU5URVJNRUFTVVJFU1wiXT1hKFwiTUNNXCIpLE1bXCJTRS5JQy5TRUEgU1VSRkFDRSBERUNPWVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDUsMTEwIDkwLDk1IDEwNSw4MCB6IE0gODUsMTEwIDcwLDk1IDg1LDgwIHogbSA0MCwtMzAgLTE1LDE1IDE1LDE1IHogbSAtNTUsNDAgMCwtNSA1NSwwIDAsNSB6XCJ9LE1bXCJTRS5JQy5QQVRST0xcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTAwIDIwLDIwIDIwLC0yMCAtMTAsMCAwLC0yMCAtMjAsMCAwLDIwIHpcIn0sTVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXT1hKFwiUENcIiksTVtcIlNFLklDLlBBVFJPTCBBTlRJIFNVQk1BUklORSBXQVJGQVJFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCwxMjAgLTI1LC0yNSA1LC01IDEwLDEwIDUsMCAwLC0yMCAxMCwwIDAsMjAgNSwwIDEwLC0xMCA1LDUgelwifSxNW1wiU0UuSUMuUEFUUk9MIEFOVElTSElQIE1JU1NJTEVcIl09YShcIlBNXCIpLE1bXCJTRS5JQy5QQVRST0wgVE9SUEVET1wiXT1hKFwiUFRcIiksTVtcIlNFLklDLlBBVFJPTCBHVU5cIl09YShcIlBHXCIpLE1bXCJTRS5JQy5QQVRST0wgU0hJUFwiXT1bXSxNW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FUXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMjAsMTIwIC00MCwwIC0xNSwtMjUgMTUsMCA1LC0xNSAxMCwwIC01LDE1IDQ1LDAgelwifSxNW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FULCBSSUdJRC1IVUxMIElORkxBVEFCTEUgQk9BVFwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJNIDg1IDgwIEwgODAgOTUgTCA2NSA5NSBMIDgwIDEyMCBMIDEyMCAxMjAgTCAxMzUgOTUgTCA5MCA5NSBMIDk1IDgwIEwgODUgODAgeiBNIDg3IDEwMC43IEwgOTMuMSAxMDAuNyBDIDk0LjYgMTAwLjcgOTUuNyAxMDAuOCA5Ni40IDEwMS4xIEMgOTcuMSAxMDEuMyA5Ny43IDEwMS44IDk4LjEgMTAyLjQgQyA5OC41IDEwMy4xIDk4LjcgMTAzLjggOTguNyAxMDQuNyBDIDk4LjcgMTA1LjggOTguNCAxMDYuNyA5Ny44IDEwNy40IEMgOTcuMSAxMDguMSA5Ni4yIDEwOC41IDk0LjkgMTA4LjcgQyA5NS42IDEwOS4xIDk2LjEgMTA5LjQgOTYuNSAxMDkuOSBDIDk2LjkgMTEwLjMgOTcuNCAxMTEuMSA5OC4xIDExMi4yIEwgOTkuOSAxMTUgTCA5Ni40IDExNSBMIDk0LjMgMTExLjkgQyA5My42IDExMC44IDkzLjEgMTEwLjEgOTIuOCAxMDkuOCBDIDkyLjUgMTA5LjUgOTIuMiAxMDkuMyA5MS45IDEwOS4yIEMgOTEuNiAxMDkuMSA5MS4yIDEwOSA5MC41IDEwOSBMIDg5LjkgMTA5IEwgODkuOSAxMTUgTCA4NyAxMTUgTCA4NyAxMDAuNyB6IE0gMTAxLjUgMTAwLjcgTCAxMDcuMiAxMDAuNyBDIDEwOC4zIDEwMC43IDEwOS4yIDEwMC43IDEwOS43IDEwMC44IEMgMTEwLjMgMTAwLjkgMTEwLjggMTAxLjEgMTExLjIgMTAxLjQgQyAxMTEuNyAxMDEuNyAxMTIgMTAyLjEgMTEyLjMgMTAyLjYgQyAxMTIuNiAxMDMuMSAxMTIuNyAxMDMuNyAxMTIuOCAxMDQuMyBDIDExMi43IDEwNSAxMTIuNiAxMDUuNiAxMTIuMiAxMDYuMSBDIDExMS45IDEwNi43IDExMS40IDEwNy4xIDExMC44IDEwNy40IEMgMTExLjYgMTA3LjcgMTEyLjMgMTA4LjEgMTEyLjggMTA4LjcgQyAxMTMuMiAxMDkuMyAxMTMuNSAxMTAgMTEzLjUgMTEwLjggQyAxMTMuNSAxMTEuNSAxMTMuMyAxMTIuMSAxMTMgMTEyLjggQyAxMTIuNyAxMTMuNCAxMTIuMyAxMTMuOCAxMTEuOCAxMTQuMiBDIDExMS4yIDExNC42IDExMC42IDExNC44IDEwOS44IDExNC45IEMgMTA5LjMgMTE1IDEwOC4yIDExNSAxMDYuMyAxMTUgTCAxMDEuNSAxMTUgTCAxMDEuNSAxMDAuNyB6IE0gMTA0LjMgMTAzLjEgTCAxMDQuMyAxMDYuNCBMIDEwNi4zIDEwNi40IEMgMTA3LjQgMTA2LjQgMTA4LjEgMTA2LjMgMTA4LjMgMTA2LjMgQyAxMDguOCAxMDYuMyAxMDkuMiAxMDYuMSAxMDkuNSAxMDUuOCBDIDEwOS44IDEwNS41IDEwOS45IDEwNS4xIDEwOS45IDEwNC43IEMgMTA5LjkgMTA0LjIgMTA5LjggMTAzLjkgMTA5LjYgMTAzLjYgQyAxMDkuMyAxMDMuMyAxMDkgMTAzLjIgMTA4LjUgMTAzLjEgQyAxMDguMiAxMDMuMSAxMDcuNCAxMDMuMSAxMDYgMTAzLjEgTCAxMDQuMyAxMDMuMSB6IE0gODkuOSAxMDMuMSBMIDg5LjkgMTA2LjggTCA5MiAxMDYuOCBDIDkzLjQgMTA2LjggOTQuMyAxMDYuNyA5NC42IDEwNi42IEMgOTUgMTA2LjQgOTUuMiAxMDYuMyA5NS40IDEwNiBDIDk1LjYgMTA1LjcgOTUuNyAxMDUuMyA5NS44IDEwNC45IEMgOTUuNyAxMDQuNCA5NS42IDEwNCA5NS4zIDEwMy43IEMgOTUuMSAxMDMuNCA5NC43IDEwMy4yIDk0LjMgMTAzLjIgQyA5NCAxMDMuMSA5My4zIDEwMy4xIDkyLjIgMTAzLjEgTCA4OS45IDEwMy4xIHogTSAxMDQuMyAxMDguOCBMIDEwNC4zIDExMi42IEwgMTA3IDExMi42IEMgMTA4LjEgMTEyLjYgMTA4LjcgMTEyLjYgMTA5IDExMi41IEMgMTA5LjQgMTEyLjQgMTA5LjggMTEyLjIgMTEwLjEgMTExLjkgQyAxMTAuMyAxMTEuNiAxMTAuNSAxMTEuMiAxMTAuNSAxMTAuNyBDIDExMC41IDExMC4zIDExMC40IDEwOS45IDExMC4yIDEwOS42IEMgMTA5LjkgMTA5LjMgMTA5LjYgMTA5LjEgMTA5LjMgMTA5IEMgMTA4LjkgMTA4LjggMTA4IDEwOC44IDEwNi43IDEwOC44IEwgMTA0LjMgMTA4LjggelwifSx7dHlwZTpcInRleHRcIixmaWxsOlI/TzohQyYmTyxzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MjAsdGV4dDpcIlJCXCJ9XSxNW1wiU0UuSUMuTUlMSVRBUlkgSkVUU0tJXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzUsMTA1IDAsMTUgLTYwLDAgLTEwLC0xNSAyMCwtMjUgMTAsMCAwLDEwIC01LDAgLTUsMTUgelwifSxNW1wiU0UuSUMuVU5NQU5ORUQgU1VSRkFDRSBXQVRFUiBWRUhJQ0xFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0sTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gMTEwLDgwIDE1LDE1IDAsMjUgTSA5MCw4MCA3NSw5NSBsIDAsMjVcIixmaWxsOiExfV0sUiYmTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXS5wdXNoKHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEwMCw4MCAtMTUsMTUgMCwyNSAzMCwwIDAsLTI1IC0xNSwtMTVcIn0pLE1bXCJTRS5JQy5OQVZZIFRBU0sgRk9SQ0VcIl09W01bXCJTRS5JQy5OQVZZIFRBU0sgT1JHQU5JWkFUSU9OIFVOSVRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6Uj8xNTA6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJURlwifV0sTVtcIlNFLklDLk5BVlkgVEFTSyBHUk9VUFwiXT1bTVtcIlNFLklDLk5BVlkgVEFTSyBPUkdBTklaQVRJT04gVU5JVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTpSPzE1MDoxMjAsZm9udHNpemU6MzAsdGV4dDpcIlRHXCJ9XSxNW1wiU0UuSUMuTkFWWSBUQVNLIFVOSVRcIl09W01bXCJTRS5JQy5OQVZZIFRBU0sgT1JHQU5JWkFUSU9OIFVOSVRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6Uj8xNTA6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJUVVwifV0sTVtcIlNFLklDLk5BVlkgVEFTSyBFTEVNRU5UXCJdPVtNW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OlI/MTUwOjEyMCxmb250c2l6ZTozMCx0ZXh0OlwiVEVcIn1dLE1bXCJTRS5JQy5DT05WT1lcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTE1IC0yMCwwIDAsLTM1IDgwLDAgMCwzNSAtMjAsMCAwLC0yMCAtNDAsMCB6XCJ9LE1bXCJTRS5JQy5OT05DT01CQVRBTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gODAsMTAwIDAsLTIwIDQwLDAgMCwyMCAxNSwwIDAsMjAgLTcwLDAgMCwtMjAgelwifSxNW1wiU0UuSUMuQVVYSUxJQVJZIFNISVBcIl09YShSP1wiQVJcIjpcIkFBXCIpLE1bXCJTRS5JQy5BTU1VTklUSU9OIFNISVBcIl09YShcIkFFXCIpLE1bXCJTRS5JQy5TVE9SRVMgU0hJUFwiXT1hKFwiQUZcIiksTVtcIlNFLklDLkFVWElMSUFSWSBGTEFHIE9SIENPTU1BTkQgU0hJUFwiXT1hKFwiQUdGXCIpLE1bXCJTRS5JQy5JTlRFTExJR0VOQ0UgQ09MTEVDVE9SXCJdPWEoUj9cIkpJXCI6XCJBSVwiKSxNW1wiU0UuSUMuT0NFQU4gUkVTRUFSQ0ggU0hJUFwiXT1hKFwiQUdPXCIpLE1bXCJTRS5JQy5TVVJWRVkgU0hJUFwiXT1hKFwiQUdTXCIpLE1bXCJTRS5JQy5IT1NQSVRBTCBTSElQXCJdPWEoXCJBSFwiKSxNW1wiU0UuSUMuQ0FSR08gU0hJUFwiXT1hKFwiQUtcIiksTVtcIlNFLklDLkNPTUJBVCBTVVBQT1JUIFNISVAsIEZBU1RcIl09YShcIkFPRVwiKSxNW1wiU0UuSUMuT0lMRVIsIFJFUExFTklTSE1FTlRcIl09YShcIkFPXCIpLE1bXCJTRS5JQy5SRVBBSVIgU0hJUFwiXT1hKFwiQVJcIiksTVtcIlNFLklDLlNVQk1BUklORSBURU5ERVJcIl09YShcIkFTXCIpLE1bXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HXCJdPWEoUj9cIkFTXCI6XCJBVFwiKSxNW1wiU0UuSUMuU0VSVklDRSBDUkFGVCwgWUFSRCwgR0VORVJBTFwiXT1hKFI/XCJZWVwiOlwiWVRcIiksTVtcIlNFLklDLkJBUkdFLCBOT1QgU0VMRi1QUk9QRUxMRURcIl09YShcIllCXCIpLE1bXCJTRS5JQy5CQVJHRSwgU0VMRi1QUk9QRUxMRURcIl09YShcIllTXCIpLE1bXCJTRS5JQy5UVUcsIEhBUkJPVVJcIl09YShcIllUXCIpLE1bXCJTRS5JQy5MQVVOQ0hcIl09YShcIllGVFwiKSxNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3NSwxMDAgMCwtMzUgNTAsMCAwLDM1IDIwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwifSxNW1wiU0UuSUMuQ0FSR08sIEdFTkVSQUxcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJDQVwiOlwiQVwifV0sTVtcIlNFLklDLkNPTlRBSU5FUiBTSElQXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLE1bXCJTRS5JQy5EUkVER0VcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiRFwifV0sTVtcIlNFLklDLlJBREFSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJNNzIsOTUgbDMwLC0yNSAwLDI1IDMwLC0yNSBNNzAsNzAgYzAsMzUgMTUsNTAgNTAsNTBcIixmaWxsOiExfSxNW1wiU0UuSUMuUk9MTCBPTi1ST0xMIE9GRlwiXT1bTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIEdFTkVSQUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOlwiMzBcIix0ZXh0OlI/XCJST1wiOlwiRVwifV0sTVtcIlNFLklDLkZFUlJZXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiRkVcIjpcIkZcIn1dLE1bXCJTRS5JQy5IRUFWWSBMSUZUXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkhcIn1dLE1bXCJTRS5JQy5IT1ZFUkNSQUZUXCJdPXt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gNjUsMTAwIDAsLTMwIDUsMTAgNjAsMCA1LC0xMCAwLDMwIDEwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgelwiOlwibSA5MCw4MCAwLDE1LjYgQyA3OC40LDk2LjkgNzAsMTAwLjYgNzAsMTA1IGMgMCw1LjUgMTMuNCwxMCAzMCwxMCAxNi42LDAgMzAsLTQuNSAzMCwtMTAgMCwtNC40IC04LjQsLTguMSAtMjAsLTkuNCBMIDExMCw4MCA5MCw4MCB6IG0gLTE1LDQwIDUwLDBcIn0sTVtcIlNFLklDLkhPVkVSQ1JBRlQgMjUyNURcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiSlwifV0sTVtcIlNFLklDLkhPVkVSQ1JBRlQgQ0lWSUxJQU5cIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IUMmJk8sZDpSP1wibSA2NSwxMDAgMCwtMzAgNSwxMCA2MCwwIDUsLTEwIDAsMzAgMTAsMCAtMTUsMzUgLTYwLDAgLTE1LC0zNSB6XCI6XCJtIDkwLDgwIDAsMTUuNiBDIDc4LjQsOTYuOSA3MCwxMDAuNiA3MCwxMDUgYyAwLDUuNSAxMy40LDEwIDMwLDEwIDE2LjYsMCAzMCwtNC41IDMwLC0xMCAwLC00LjQgLTguNCwtOC4xIC0yMCwtOS40IEwgMTEwLDgwIDkwLDgwIHogbSAtMTUsNDAgNTAsMFwifSxNW1wiU0UuSUMuSE9WRVJDUkFGVCBOT05DT01CQVRBTlRcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDEwMCAwLC0zMCA1LDEwIDYwLDAgNSwtMTAgMCwzMCAxMCwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIixzdHJva2V3aWR0aDohMX0sUj97dHlwZTpcInRleHRcIixmaWxsOm8sc3Ryb2tlOiExLHg6MTAwLHk6MTIwLGZvbnRzaXplOjMwLHRleHQ6XCJOQ1wifTpbXV0sTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIExBU0ggQ0FSUklFUiAoV0lUSCBCQVJHRVMpXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkxcIn1dLE1bXCJTRS5JQy5PSUxFUi9UQU5LRVJcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlI/XCJPVFwiOlwiT1wifV0sTVtcIlNFLklDLlBBU1NFTkdFUiBTSElQXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiUEFcIjpcIlBcIn1dLE1bXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HIENJVklMSUFOXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpSP1wiVFVcIjpcIlRcIn1dLE1bXCJTRS5JQy5UT1dcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjExNSxmb250c2l6ZTozMCx0ZXh0OlwiVFdcIn1dLE1bXCJTRS5JQy5UUkFOU1BPUlQgU0hJUCwgSEFaQVJET1VTIE1BVEVSSUFMXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIkhaXCJ9XSxNW1wiU0UuSUMuSlVOSy9ESE9XXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMTUsZm9udHNpemU6MzAsdGV4dDpcIlFKXCJ9XSxNW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXT1bTVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIEdFTkVSQUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTE1LGZvbnRzaXplOjMwLHRleHQ6XCJZQlwifV0sTVtcIlNFLklDLkhPU1BJVEFMIFNISVAyXCJdPVtNW1wiU0UuSUMuTUVSQ0hBTlQgU0hJUCwgR0VORVJBTFwiXSx7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gOTUsOTUgMCwtMTUgMTAsMCAwLDE1IDE1LDAgMCwxMCAtMTUsMCAwLDE1IC0xMCwwIDAsLTE1IC0xNSwwIDAsLTEwIHpcIn1dLE1bXCJTRS5JQy5GSVNISU5HIFZFU1NFTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3NSwxMDAgMCwtMTUgMjAsMCAwLDE1IDUwLDAgLTE1LDM1IC02MCwwIC0xNSwtMzUgeiBNIDEwNSw1Ny40IDEwNSwxMDAgbSAzMCwtMzUgLTMwLDM1XCJ9LE1bXCJTRS5JQy5EUklGVEVSXCJdPVtNW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJERlwifV0sTVtcIlNFLklDLlRSQVdMRVJcIl09W01bXCJTRS5JQy5GSVNISU5HIFZFU1NFTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxMjUsZm9udHNpemU6MzAsdGV4dDpcIlRSXCJ9XSxNW1wiU0UuSUMuRklTSElORyBWRVNTRUwgRFJFREdFXCJdPVtNW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJEUlwifV0sTVtcIlNFLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl09W01bXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdLHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMDAgLTE1LDM1IC0xMCwwIDE1LC0zNSB6XCJ9XSxNW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFDJiZPLGQ6XCJtIDEwNSw1NSAwLDQwIDM1LDAgeiBtIC01LC01IDAsNTAgbSA0NSwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIn0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRFwiXT17dHlwZTpcInBhdGhcIixmaWxsOlI/TzohQyYmTyxkOlwibSA3MCw5Ny40IDE1LC0zMCAxMCwwIC0xNSwzMCA2NSwwIC0xNSwzNSAtNjAsMCAtMTUsLTM1IHpcIn0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgUklHSUQtSFVMTCBJTkZMQVRBQkxFIEJPQVRcIl09W01bXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTI1LGZvbnRzaXplOjMwLHRleHQ6XCJSQlwifV0sTVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgU1BFRURCT0FUXCJdPVtNW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgTU9UT1JJWkVEXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyNSxmb250c2l6ZTozMCx0ZXh0OlwiU1BcIn1dLE1bXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpSP086IUMmJk8sZDpcIm0gODUsNjAgLTMwLDQ1IDEwLDE1IDc1LDAgMCwtMjAgLTYwLDAgMTAsLTMwIDUsMCAwLC0xMCB6XCJ9LE1bXCJTRS5JQy5VTk1BTk5FRCBTVVJGQUNFIFdBVEVSIFZFSElDTEUgKFVTVilcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohKCFSJiYhUykmJk8sc3Ryb2tlOkcsZDpcIm0gNjAsODQgNDAsMjAgNDAsLTIwIDAsOCAtNDAsMjUgLTQwLC0yNSB6XCJ9LE1bXCJTRS5JQy5PV04gU0hJUFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTplP046TyxkOlwibSA1MCwxMDAgMTAwLDAgbSAtNTAsLTUwIDAsMTAwIG0gNTAsLTUwIGMgMCwyNy42IC0yMi40LDUwIC01MCw1MCAtMjcuNiwwIC01MCwtMjIuNCAtNTAsLTUwIDAsLTI3LjYgMjIuNCwtNTAgNTAsLTUwIDI3LjYsMCA1MCwyMi40IDUwLDUwIHpcIn0sTVtcIlNFLklDLkRJVENIRUQgQUlSQ1JBRlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gMTQ1LDEyMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIC03NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gMTAsMTAgMjUsLTMwIC0xMCwtMTAgMTAsLTEwIDIwLDIwIC0xMCwzNSAtMTUsLTE1IC0xNSwxNSB6XCJ9LE1bXCJTRS5JQy5QRVJTT04gSU4gV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gMTA1LDExMCAxMCwtMTAgMCwtMTUgNSwwIDAsMjAgLTEwLDEwIHogbSAtMTAsMCAtMTAsLTEwIDAsLTE1IC01LDAgMCwyMCAxMCwxMCB6IG0gNSwtNSAwLC0xMCAtNSwwIC01LC01IDAsLTEwIDUsLTUgMTAsMCA1LDUgMCwxMCAtNSw1IC01LDAgbSAtMTUsMjUgMTUsLTE1IG0gNDUsMTUgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSAtNzUsMTUgMTUsLTE1IG0gMTUsMTUgLTE1LC0xNSBtIDQ1LDE1IC0xNSwtMTVcIn0sTVtcIlNFLklDLkRJU1RSRVNTRUQgVkVTU0VMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ZT9OOk8sc3Ryb2tlOmU/TjpPLGQ6XCJtIDEyMCw2NSAtMjAsMjAgMjAsLTIwIG0gLTUsNTUgLTM1LC0zNSAwLC0yMCA0NSw0NSB6IG0gLTMwLDAgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSA0NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gLTQ1LDE1IDE1LC0xNVwifSxNW1wiU0UuSUMuU0VBIE1JTkVMSUtFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ZT9OOk8sc3Ryb2tlOmU/TjpPLGQ6XCJtIDExNy43LDc1IGMgMy41LC0zLjUgNy4xLC03LjEgNy4xLC03LjEgbCA3LjEsNy4xIC03LjEsNy4xIG0gLTQ5LjUsMCBjIC0zLjUsLTMuNSAtNy4xLC03LjEgLTcuMSwtNy4xIGwgNy4xLC03LjEgNy4xLDcuMSBNIDk1LDcwIGMgMCwtNSAwLC0xMCAwLC0xMCBsIDEwLDAgMCwxMCBtIDI1LDMwIGMgMCwxNi42IC0xMy40LDMwIC0zMCwzMCAtMTYuNiwwIC0zMCwtMTMuNCAtMzAsLTMwIDAsLTE2LjYgMTMuNCwtMzAgMzAsLTMwIDE2LjYsMCAzMCwxMy40IDMwLDMwIHpcIn0sTVtcIlNFLklDLk5BVklHQVRJT05BTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTplP046XCJyZWRcIixkOlwibSA3NSw5MCAtMTAsMTAgNzAsMCAtMTAsMTBcIn0sTVtcIlNFLklDLklDRUJFUkdcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDplP046TyxzdHJva2U6ZT9OOk8sZDpcIm0gNzUsMTAwIDI1LC0zMCAyNSwzMCAtNSwxNSAtNSwtNSAtMTUsMjAgLTE1LC0yMCAtNSw1IHogbSAtMTUsMCA4MCwwXCJ9LE1bXCJTRS5JQy5GVVNFRCBUUkFDS1wiXT1bYShcIj9cIikse3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw2NSAxMCwzNSAtMTAsMzUgNjAsMCAtMTAsLTM1IDEwLC0zNSB6XCJ9XSxNW1wiU0UuTTEuT1dOIFNISVBcIl09bChcIk9XTlwiKSxNW1wiU0UuTTEuQU5USUFJUiBXQVJGQVJFXCJdPWwoXCJBQVdcIiksTVtcIlNFLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXT1sKFwiQVNXXCIpLE1bXCJTRS5NMS5FU0NPUlRcIl09bChcIkVcIiksTVtcIlNFLk0xLkVMRUNUUk9OSUMgV0FSRkFSRVwiXT1sKFwiRVdcIiksTVtcIlNFLk0xLklOVEVMTElHRU5DRSwgU1VSVkVJTExBTkNFLCBSRUNPTk5BSVNTQU5DRVwiXT1sKFwiSVNSXCIpLE1bXCJTRS5NMS5NSU5FIENPVU5URVIgTUVBU1VSRVNcIl09bChcIk1DTVwiKSxNW1wiU0UuTTEuTUlTU0lMRSBERUZFTlNFXCJdPWwoXCJNRFwiKSxNW1wiU0UuTTEuTUVESUNBTFwiXT1sKFwiTUVcIiksTVtcIlNFLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdPWwoXCJNQ01cIiksTVtcIlNFLk0xLk1JTkUgV0FSRkFSRVwiXT1sKFwiTUlXXCIpLE1bXCJTRS5NMS5SRU1PVEUgTVVMVEktTUlTU0lPTiBWRUhJSExFXCJdPWwoXCJSTVZcIiksTVtcIlNFLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVwiXT1sKFwiU09GXCIpLE1bXCJTRS5NMS5TVVJGQUNFIFdBUkZBUkVcIl09bChcIlNVV1wiKSxNW1wiU0UuTTEuQkFMTElTVElDIE1JU1NJTEVcIl09bChcIkJcIiksTVtcIlNFLk0xLkdVSURFRCBNSVNTSUxFXCJdPWwoXCJHXCIpLE1bXCJTRS5NMS5PVEhFUiBHVUlERUQgTUlTU0lMRVwiXT1sKFwiTVwiKSxNW1wiU0UuTTEuVE9SUEVET1wiXT1sKFwiVFwiKSxNW1wiU0UuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTRS5NMS5ISUpBQ0tFUlwiXT1sKFwiSEpcIiksTVtcIlNFLk0yLkNZQkVSU1BBQ0VcIl09cihcIkNZQlwiKSxNW1wiU0UuTTEuRFJPTkUtRVFVSVBQRURcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDgwLDY1IDIwLDEzIDIwLC0xMyAwLC01IC0yMCwxMCAtMjAsLTEwIHpcIn0sTVtcIlNFLk0xLkhFTElDT1BURVItRVFVSVBQRURcIl09bChcIkhcIiksTVtcIlNFLk0xLkJBTExJU1RJQyBNSVNTSUxFIERFRkVOU0UsIFNIT09URVJcIl09bChcIkJNXCIpLE1bXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRSBERUZFTlNFLCBMT05HLSBSQU5HRSBTVVJWRUlMTEFOQ0UgQU5EIFRSQUNLIChMUlMmVClcIl09bChcIlNUXCIpLE1bXCJTRS5NMS5TRUEtQkFTRSBYLUJBTkRcIl09bChcIlNCWFwiKSxNW1wiU0UuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdPWwoXCJIXCIpLE1bXCJTRS5NMi5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl09cihcIkFTV1wiKSxNW1wiU0UuTTIuTUlORSBXQVJGQVJFXCJdPXIoXCJNSVdcIiksTVtcIlNFLk0yLlNVUkZBQ0UgV0FSRkFSRVwiXT1yKFwiU1VXXCIpLE1bXCJTRS5NMi5OVUNMRUFSIFBPV0VSRURcIl09cihcIk5cIiksTVtcIlNFLk0yLkhFQVZZXCJdPXIoXCJIXCIpLE1bXCJTRS5NMi5MSUdIVFwiXT1yKFwiTFwiKSxNW1wiU0UuTTIuTUVESVVNXCJdPXIoXCJNXCIpLE1bXCJTRS5NMi5ET0NLXCJdPXIoXCJEXCIpLE1bXCJTRS5NMi5MT0dJU1RJQ1NcIl09cihcIkxPR1wiKSxNW1wiU0UuTTIuVEFOS1wiXT1yKFwiVFwiKSxNW1wiU0UuTTIuVkVISUNMRVwiXT1yKFwiVlwiKSxNW1wiU0UuTTIuRkFTVFwiXT1yKFwiRlwiKSxNW1wiU0UuTTIuQUlSLUNVU0hJT05FRFwiXT1yKFwiSlwiKSxNW1wiU0UuTTIuQUlSLUNVU0hJT05FRCAoVVNBIE9OTFkpXCJdPXIoXCJBQ1wiKSxNW1wiU0UuTTIuSFlEUk9GT0lMXCJdPXIoXCJLXCIpLE1bXCJTRS5NMi5BVVRPTk9NT1VTIENPTlRST0xcIl09cihcIkFVVFwiKSxNW1wiU0UuTTIuUkVNT1RFTFkgUElMT1RFRFwiXT1yKFwiUlBcIiksTVtcIlNFLk0yLkVYUEVOREFCTEVcIl09cihcIkVYUFwiKSxNKU0uaGFzT3duUHJvcGVydHkoaSkmJihJLmhhc093blByb3BlcnR5KGkpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIraSksbi5jYWxsKHRoaXMsTVtpXSxOKSxJW2ldPU1baV0pfXZhciBwPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbZF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUy0tLS0tLS1cIl09W10sSVtcIlMtUy1DLS0tLS1cIl09W0VbXCJTRS5JQy5DT01CQVRBTlRcIl1dLElbXCJTLVMtQ0wtLS0tXCJdPVtFW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl1dLElbXCJTLVMtQ0xDVi0tXCJdPVtFW1wiU0UuSUMuQ0FSUklFUlwiXV0sSVtcIlMtUy1DTEJCLS1cIl09W0VbXCJTRS5JQy5CQVRUTEVTSElQXCJdXSxJW1wiUy1TLUNMQ0MtLVwiXT1bRVtcIlNFLklDLkNSVUlTRVJcIl1dLElbXCJTLVMtQ0xERC0tXCJdPVtFW1wiU0UuSUMuREVTVFJPWUVSXCJdXSxJW1wiUy1TLUNMRkYtLVwiXT1bRVtcIlNFLklDLkZSSUdBVEVcIl1dLElbXCJTLVMtQ0xMTC0tXCJdPVtFW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl1dLElbXCJTLVMtQ0xMTEFTXCJdPVtFW1wiU0UuSUMuTElUVE9SQUwgQ09NQkFUQU5UIFNISVBcIl0sRVtcIlNFLk0yLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtUy1DTExMTUlcIl09W0VbXCJTRS5JQy5MSVRUT1JBTCBDT01CQVRBTlQgU0hJUFwiXSxFW1wiU0UuTTIuTUlORSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNMTExTVVwiXT1bRVtcIlNFLklDLkxJVFRPUkFMIENPTUJBVEFOVCBTSElQXCJdLEVbXCJTRS5NMi5TVVJGQUNFIFdBUkZBUkVcIl1dLElbXCJTLVMtQ0EtLS0tXCJdPVtFW1wiU0UuSUMuQU1QSElCSU9VUyBXQVJGQVJFIFNISVBcIl1dLElbXCJTLVMtQ0FMQS0tXCJdPVtSP0VbXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFRcIl06RVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVCBTSElQLCBHRU5FUkFMXCJdXSxJW1wiUy1TLUNBTFMtLVwiXT1bRVtcIlNFLklDLkxBTkRJTkcgU0hJUFwiXV0sSVtcIlMtUy1DQUxTTS1cIl09W0VbXCJTRS5JQy5MQU5ESU5HIFNISVBcIl0sRVtcIlNFLk0yLk1FRElVTVwiXV0sSVtcIlMtUy1DQUxTVC1cIl09W0VbXCJTRS5JQy5MQU5ESU5HIFNISVBcIl0sRVtcIlNFLk0yLlRBTktcIl1dLElbXCJTLVMtQ0FMQy0tXCJdPVtFW1wiU0UuSUMuTEFORElORyBDUkFGVFwiXV0sSVtcIlMtUy1DTS0tLS1cIl09W0VbXCJTRS5JQy5NSU5FIFdBUkZBUkUgVkVTU0VMXCJdXSxJW1wiUy1TLUNNTUwtLVwiXT1bRVtcIlNFLklDLk1JTkVMQVlFUlwiXV0sSVtcIlMtUy1DTU1TLS1cIl09W0VbXCJTRS5JQy5NSU5FU1dFRVBFUlwiXV0sSVtcIlMtUy1DTU1ILS1cIl09W0VbXCJTRS5JQy5NSU5FSFVOVEVSXCJdXSxJW1wiUy1TLUNNTUEtLVwiXT1bRVtcIlNFLklDLk1JTkUgQ09VTlRFUiBNRUFTVVJFIFNVUFBPUlQgU0hJUFwiXV0sSVtcIlMtUy1DTU1ELS1cIl09W0VbXCJTRS5JQy5NSU5FU1dFRVBFUiwgRFJPTkVcIl1dLElbXCJTLVMtQ1AtLS0tXCJdPVtFW1wiU0UuSUMuUEFUUk9MXCJdXSxJW1wiUy1TLUNQU0ItLVwiXT1bRVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXV0sSVtcIlMtUy1DUFNVLS1cIl09W0VbXCJTRS5JQy5QQVRST0wgQU5USSBTVUJNQVJJTkUgV0FSRkFSRVwiXV0sSVtcIlMtUy1DUFNVTS1cIl09W0VbXCJTRS5JQy5QQVRST0wgQU5USVNISVAgTUlTU0lMRVwiXV0sSVtcIlMtUy1DUFNVVC1cIl09W0VbXCJTRS5JQy5QQVRST0wgVE9SUEVET1wiXV0sSVtcIlMtUy1DUFNVRy1cIl09W0VbXCJTRS5JQy5QQVRST0wgR1VOXCJdXSxJW1wiUy1TLUNILS0tLVwiXT1bRVtcIlNFLklDLkhPVkVSQ1JBRlRcIl1dLElbXCJTLVMtRy0tLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdXSxJW1wiUy1TLUdGLS0tLVwiXT1JW1wiUy1TLUdULS0tLVwiXT1bRVtcIlNFLklDLk5BVlkgVEFTSyBGT1JDRVwiXV0sSVtcIlMtUy1HRy0tLS1cIl09W0VbXCJTRS5JQy5OQVZZIFRBU0sgR1JPVVBcIl1dLElbXCJTLVMtR1UtLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIFVOSVRcIl1dLElbXCJTLVMtR0UtLS0tXCJdPVtFW1wiU0UuSUMuTkFWWSBUQVNLIEVMRU1FTlRcIl1dLElbXCJTLVMtR0MtLS0tXCJdPVtFW1wiU0UuSUMuQ09OVk9ZXCJdXSxJW1wiUy1TLUNELS0tLVwiXT1bRVtcIlNFLklDLlNFQSBTVVJGQUNFIERFQ09ZXCJdXSxJW1wiUy1TLUNVLS0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXV0sSVtcIlMtUy1DVU0tLS1cIl09W0VbXCJTRS5JQy5VTk1BTk5FRCBTVVJGQUNFIFdBVEVSIFZFSElDTEVcIl0sRVtcIlNFLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJW1wiUy1TLUNVUy0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuQU5USVNVQk1BUklORSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNVTi0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuU1VSRkFDRSBXQVJGQVJFXCJdXSxJW1wiUy1TLUNVUi0tLVwiXT1bRVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXSxFW1wiU0UuTTEuUkVNT1RFIE1VTFRJLU1JU1NJT04gVkVISUhMRVwiXV0sSVtcIlMtUy1OLS0tLS1cIl09W0VbXCJTRS5JQy5OT05DT01CQVRBTlRcIl1dLElbXCJTLVMtTlItLS0tXCJdPVtFW1wiU0UuSUMuQVVYSUxJQVJZIFNISVBcIl1dLElbXCJTLVMtTlJBLS0tXCJdPVtFW1wiU0UuSUMuQU1NVU5JVElPTiBTSElQXCJdXSxJW1wiUy1TLU5STy0tLVwiXT1bRVtcIlNFLklDLk9JTEVSLCBSRVBMRU5JU0hNRU5UXCJdXSxJW1wiUy1TLU5GLS0tLVwiXT1JW1wiUy1TLU5GVC0tLVwiXT1bRVtcIlNFLklDLlRVRywgT0NFQU4gR09JTkdcIl1dLElbXCJTLVMtTkktLS0tXCJdPVtFW1wiU0UuSUMuSU5URUxMSUdFTkNFIENPTExFQ1RPUlwiXV0sSVtcIlMtUy1OTS0tLS1cIl09W0VbXCJTRS5JQy5IT1NQSVRBTCBTSElQXCJdXSxJW1wiUy1TLU5TLS0tLVwiXT1bRVtcIlNFLklDLlNFUlZJQ0UgQ1JBRlQsIFlBUkQsIEdFTkVSQUxcIl1dLElbXCJTLVMtTlItLS0tXCJdPVtFW1wiU0UuSUMuUkVQQUlSIFNISVBcIl1dLElbXCJTLVMtTlRTLS0tXCJdPVtFW1wiU0UuSUMuU1VCTUFSSU5FIFRFTkRFUlwiXV0sSVtcIlMtUy1OSC0tLS1cIl09W0VbXCJTRS5JQy5IT1ZFUkNSQUZUIE5PTkNPTUJBVEFOVFwiXV0sSVtcIlMtUy1YLS0tLS1cIl09W10sSVtcIlMtUy1YTS0tLS1cIl09W0VbXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdXSxJW1wiUy1TLVhNQy0tLVwiXT1bRVtcIlNFLklDLkNBUkdPLCBHRU5FUkFMXCJdXSxJW1wiUy1TLVhNRS0tLVwiXT1JW1wiUy1TLVhNUi0tLVwiXT1bRVtcIlNFLklDLlJPTEwgT04tUk9MTCBPRkZcIl1dLElbXCJTLVMtWE1PLS0tXCJdPVtFW1wiU0UuSUMuT0lMRVIvVEFOS0VSXCJdXSxJW1wiUy1TLVhNVC0tLVwiXT1JW1wiUy1TLVhNVFUtLVwiXT1bRVtcIlNFLklDLlRVRywgT0NFQU4gR09JTkcgQ0lWSUxJQU5cIl1dLElbXCJTLVMtWE1GLS0tXCJdPVtFW1wiU0UuSUMuRkVSUllcIl1dLElbXCJTLVMtWE1QLS0tXCJdPVtFW1wiU0UuSUMuUEFTU0VOR0VSIFNISVBcIl1dLElbXCJTLVMtWE1ILS0tXCJdPVtFW1wiU0UuSUMuVFJBTlNQT1JUIFNISVAsIEhBWkFSRE9VUyBNQVRFUklBTFwiXV0sSVtcIlMtUy1YTUQtLS1cIl09W0VbXCJTRS5JQy5EUkVER0VcIl1dLElbXCJTLVMtWE1UTy0tXCJdPVtFW1wiU0UuSUMuVE9XXCJdXSxJW1wiUy1TLVhGLS0tLVwiXT1bRVtcIlNFLklDLkZJU0hJTkcgVkVTU0VMXCJdXSxJW1wiUy1TLVhGREYtLVwiXT1bRVtcIlNFLklDLkRSSUZURVJcIl1dLElbXCJTLVMtWEZUUi0tXCJdPVtFW1wiU0UuSUMuVFJBV0xFUlwiXV0sSVtcIlMtUy1YRkRSLS1cIl09W0VbXCJTRS5JQy5GSVNISU5HIFZFU1NFTCBEUkVER0VcIl1dLElbXCJTLVMtWFItLS0tXCJdPVtFW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdXSxJW1wiUy1TLVhMLS0tLVwiXT1bRVtcIlNFLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl1dLElbXCJTLVMtWEgtLS0tXCJdPVtFW1wiU0UuSUMuSE9WRVJDUkFGVCBDSVZJTElBTlwiXV0sSVtcIlMtUy1YQS0tLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl1dLElbXCJTLVMtWEFSLS0tXCJdPVtFW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgTU9UT1JJWkVELCBSSUdJRC1IVUxMIElORkxBVEFCTEUgQk9BVFwiXV0sSVtcIlMtUy1YQVMtLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRUQsIFNQRUVEQk9BVFwiXV0sSVtcIlMtUy1YUC0tLS1cIl09W0VbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl1dLElbXCJTLVMtTy0tLS0tXCJdPVtFW1wiU0UuSUMuT1dOIFNISVBcIl1dLElbXCJTLVMtRS0tLS0tXCJdPVtdLElbXCJTLVMtRUQtLS0tXCJdPVtFW1wiU0UuSUMuRElUQ0hFRCBBSVJDUkFGVFwiXV0sSVtcIlMtUy1FUC0tLS1cIl09W0VbXCJTRS5JQy5QRVJTT04gSU4gV0FURVJcIl1dLElbXCJTLVMtRVYtLS0tXCJdPVtFW1wiU0UuSUMuRElTVFJFU1NFRCBWRVNTRUxcIl1dLElbXCJTLVMtWi0tLS0tXCJdPVtdLElbXCJTLVMtWk0tLS0tXCJdPVtFW1wiU0UuSUMuU0VBIE1JTkVMSUtFXCJdXSxJW1wiUy1TLVpOLS0tLVwiXT1bRVtcIlNFLklDLk5BVklHQVRJT05BTFwiXV0sSVtcIlMtUy1aSS0tLS1cIl09W0VbXCJTRS5JQy5JQ0VCRVJHXCJdXX19O2Z1bmN0aW9uIEQoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD10LmZyYW1lLFM9dC5udW1iZXJTSURDLE49RS5pY29uQ29sb3JbQ10sTz1FLmljb25GaWxsQ29sb3JbQ10sRz1FLndoaXRlW0NdLG89RS5ibGFja1tDXSxNPXt9O2Zvcih2YXIgaSBpbiBNW1wiU1UuSUMuTUlMSVRBUllcIl09YShcIk1JTFwiKSxNW1wiU1UuSUMuQ0lWSUxJQU5cIl09YShcIkNJVlwiKSxNW1wiU1UuSUMuQ0lWSUxJQU5cIl0uZmlsbD1SfHxTP086IVQmJk8sTVtcIlNVLklDLkNJVklMSUFOXCJdLnN0cm9rZT1vLE1bXCJTVS5JQy5DSVZJTElBTlwiXS5zdHJva2V3aWR0aD0zLE1bXCJTVS5JQy5NQU5VQUwgVFJBQ0tcIl09YShcIk1BTlwiKSxNW1wiU1UuSUMuU1VCTUFSSU5FXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDg1IDUwLDAgMTUsMTUgLTE1LDE1IC01MCwwIC0xNSwtMTUgelwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDExMCAtMTAsLTEwIDEwLC0xMCAyMCwwIDAsLTEwIDEwLDAgMCwxMCAyMCwwIDEwLDEwIC0xMCwxMCB6XCJ9LE1bXCJTVS5JQy5TVUJNQVJJTkUgQ09OVkVOVElPTkFMIFBST1BVTFNJT04sIFNVUkZBQ0VEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMTAgLTEwLC0xMCAxMCwtMTAgMjAsMCAwLC0xMCAxMCwwIDAsMTAgMjAsMCAxMCwxMCAtMTAsMTAgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDExMCAtMTAsLTEwIDEwLC0xMCAwLC0xMCA1MCwwIDAsMTAgMTAsMTAgLTEwLDEwIHpcIn0sTVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT04sIFNVUkZBQ0VEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMTAgLTEwLC0xMCAxMCwtMTAgMCwtMTAgNTAsMCAwLDEwIDEwLDEwIC0xMCwxMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTIwIDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMFwifV0sTVtcIlNVLklDLlNVQk1BUklORSBBVFRBQ0sgKFNTTilcIl09e3R5cGU6XCJ0ZXh0XCIsZmlsbDpHLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiQVwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIE1JU1NJTEUgKFRZUEUgVU5LTk9XTilcIl09e3R5cGU6XCJ0ZXh0XCIsZmlsbDpHLHN0cm9rZTohMSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiTVwifSxNW1wiU1UuSUMuU1VCTUFSSU5FIEdVSURFRCBNSVNTSUxFIChTU0dOKVwiXT17dHlwZTpcInRleHRcIixmaWxsOkcsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjMwLHRleHQ6XCJHXCJ9LE1bXCJTVS5JQy5TVUJNQVJJTkUgQkFMTElTVElDIE1JU1NJTEUgKFNTQk4pXCJdPXt0eXBlOlwidGV4dFwiLGZpbGw6RyxzdHJva2U6ITEseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIkJcIn0sTVtcIlNVLklDLlNVQk1BUklORSwgU1VSRkFDRURcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDgwIDUwLDAgMTUsMTUgLTE1LDE1IC01MCwwIC0xNSwtMTUgelwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDEyMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA3NSw4MCA1MCwwIDE1LDE1IC0xNSwxNSAtNTAsMCAtMTUsLTE1IHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzAsMTIwIDAsLTUgNjAsMCAwLDUgelwifV0sTVtcIlNVLklDLlNVQk1BUklORSwgU05PUktFTElOR1wiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsMTIwIC0xMCwtMTAgMTAsLTEwIDIwLDAgMCwtMjAgMTAsMCAwLDIwIDIwLDAgMTAsMTAgLTEwLDEwIHpcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSw5NSAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn1dLE1bXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXT17dHlwZTpcInBhdGhcIixkOlwibSA4NSw5MCAwLC0xMCAzMCwwIDAsMTAgbSAyMCwxMCBjIDAsNS41IC0xNS43LDEwIC0zNSwxMCAtMTkuMywwIC0zNSwtNC41IC0zNSwtMTAgMCwtNS41IDE1LjcsLTEwIDM1LC0xMCAxOS4zLDAgMzUsNC41IDM1LDEwIHpcIn0sTVtcIlNVLklDLk9USEVSIFNVQk1FUlNJQkxFLCBTVVJGQUNFRFwiXT1bTVtcIlNVLklDLk9USEVSIFNVQk1FUlNJQkxFXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTIwIDEwLC0xMCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMFwifV0sTVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwiLHN0cm9rZTohMX0sTVtcIlNVLklDLk5PTi1TVUJNQVJJTkVcIl09UiYmIVM/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCJOT05cIn06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEwMCxmb250c2l6ZToyNSx0ZXh0OlwiTk9OXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEyMCxmb250c2l6ZToyNSx0ZXh0OlwiU1VCXCJ9XSxNW1wiU1UuSUMuRElWRVIsIE1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwiTSAxMDAgODAgQyA5My43IDgwIDg4LjMgODIuNyA4NS44IDg4LjMgTCA4NS44IDg4LjMgTCA3Ny44IDg4LjMgTCA3Ny44IDEwNSBMIDg1LjggMTA1IEwgODUuOCAxMDQuOCBDIDg3LjMgMTA4LjIgODguOCAxMTAgOTIgMTExLjcgTCA5Mi4xIDExMS43IEwgODQuMiAxMjAgTCAxMTUuOCAxMjAgTCAxMDcuOSAxMTEuNyBMIDEwOCAxMTEuNyBDIDExMS4xIDExMCAxMTIuOCAxMDguMyAxMTQuMyAxMDUgTCAxMjIuMiAxMDUgTCAxMjIuMiA4OC4zIEwgMTE0LjMgODguMyBMIDExNC4zIDg4LjMgQyAxMTEuNyA4Mi44IDEwNi4zIDgwIDEwMCA4MCB6IE0gMTAwIDg2LjYgQyAxMDUuNCA4Ni42IDEwOS44IDkxLjEgMTA5LjggOTYuNiBDIDEwOS44IDEwMi4xIDEwNS40IDEwNi42IDEwMCAxMDYuNiBDIDk0LjYgMTA2LjYgOTAuMSAxMDIuMSA5MC4xIDk2LjYgQyA5MC4xIDkxLjEgOTQuNiA4Ni42IDEwMCA4Ni42IHogTSAxMDAgODkuNiBDIDk2LjIgODkuNiA5My4xIDkyLjcgOTMuMSA5Ni42IEMgOTMuMSAxMDAuNSA5Ni4yIDEwMy42IDEwMCAxMDMuNiBDIDEwMy44IDEwMy42IDEwNi44IDEwMC41IDEwNi44IDk2LjYgQyAxMDYuOCA5Mi43IDEwMy44IDg5LjYgMTAwIDg5LjYgelwifSxNW1wiU1UuSUMuU1VCTUVSU0lCTEUsIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDg1LDkwIDAsLTEwIDMwLDAgMCwxMCBtIDIwLDEwIGMgMCw1LjUgLTE1LjcsMTAgLTM1LDEwIC0xOS4zLDAgLTM1LC00LjUgLTM1LC0xMCAwLC01LjUgMTUuNywtMTAgMzUsLTEwIDE5LjMsMCAzNSw0LjUgMzUsMTAgelwifSxNW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVViksIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6Uj9POiFUJiZPLGQ6XCJtIDYwLDg0IDQwLDIwIDQwLC0yMCAwLDggLTQwLDI1IC00MCwtMjUgelwifSxNW1wiU1UuTTEuQ1lCRVJTUEFDRVwiXT1sKFwiQ1lCXCIpLE1bXCJTVS5NMS5ISUpBQ0tFUlwiXT1sKFwiSEpcIiksTVtcIlNVLk0yLkNZQkVSU1BBQ0VcIl09cihcIkNZQlwiKSxNW1wiU1UuSUMuRElWRVIsIENJVklMSUFOXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6TyxkOlwiTSAxMTQuMyw5NCBDIDExNC4zLDEwMi4zIDEwNy45LDEwOSAxMDAsMTA5IGMgLTcuOSwwIC0xNC4yLC02LjcgLTE0LjIsLTE1IDAsLTguMyA2LjQsLTE1IDE0LjIsLTE1IDcuOSwwIDE0LjMsNi43IDE0LjMsMTUgeiBtIDAsMjcgMTQuMywxNSAtNTcsMCAxNC4zLC0xNSBNIDEyNS43LDc5IGwgMTQuMywwIDAsMzAgLTE0LjMsMCBtIC01MS4zLDAgLTE0LjMsMCAwLC0zMCAxNC4zLDAgbSA1NC4yLDE1IGMgMCwxNi42IC0xMi44LDMwIC0yOC41LDMwIC0xNS43LDAgLTI4LjUsLTEzLjQgLTI4LjUsLTMwIEMgNzEuNSw3Ny40IDg0LjMsNjQgMTAwLDY0IDExNS43LDY0IDEyOC41LDc3LjQgMTI4LjUsOTQgelwifSxNW1wiU1UuSUMuVU5ERVJXQVRFUiBXRUFQT05cIl09YShcIldQTlwiKSxNW1wiU1UuSUMuVE9SUEVET1wiXT17dHlwZTpcInBhdGhcIixkOlwibSA2NSwxMDUgLTUsLTUgNSwtNSA2MCwwIGMgMCwwIDUsNSA1LDUgbCA1LC01IDAsMTAgLTUsLTUgLTUsNSB6XCJ9LE1bXCJTVS5JQy5JTVBST1ZJU0VEIEVYUExPU0lWRSBERVZJQ0UgKElFRClcIl09YShcIklFRFwiKSxNW1wiU1UuSUMuVU5ERVJXQVRFUiBERUNPWVwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6byxkOlI/XCJNIDEwNSwxMTAgOTAsOTUgMTA1LDgwIHogTSA4NSwxMTAgNzAsOTUgODUsODAgeiBtIDQwLC0zMCAtMTUsMTUgMTUsMTUgeiBtIC01NSw0MCAwLC01IDU1LDAgMCw1IHpcIjpcIk0gMTA1LDEyMCA5MCwxMDUgMTA1LDkwIHogTSA4NSwxMjAgNzAsMTA1IDg1LDkwIHogbSA0MCwtMzAgLTE1LDE1IDE1LDE1IHogbSAtNTUsLTUgMCwtNSA1NSwwIDAsNSB6XCIsZmlsbDpSP046T30sTVtcIlNVLklDLlVOREVSV0FURVIgREVDT1kgRFN5bWJvbFwiXT17dHlwZTpcInBhdGhcIixkOlwiTSA4NSA4MSBMIDY1IDk4IEwgODUgMTE5IEwgODUgODEgeiBNIDExMCA4MSBMIDkwIDk4IEwgMTEwIDExOSBMIDExMCA4MSB6IE0gMTM1IDgxIEwgMTE1IDk4IEwgMTM1IDExOSBMIDEzNSA4MSB6XCJ9LE1bXCJTVS5JQy5FQ0hPIFRSQUNLRVIgQ0xBU1NJRklFUiAoRVRDKS9QT1NTSUJMRSBDT05UQUNUIChQT1NDT04pXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjEzMCxmb250c2l6ZTo2MCx0ZXh0OlwiP1wifSxNW1wiU1UuSUMuRlVTRUQgVFJBQ0tcIl09W2EoXCI/XCIpLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsNjUgMTAsMzUgLTEwLDM1IDYwLDAgLTEwLC0zNSAxMCwtMzVcIn1dLE1bXCJTVS5JQy5TRUEgTUlORVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkUuaWNvbkNvbG9yLkhvc3RpbGUsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIk0gMTE1LjksNzMgMTI2LjUsNjIuNCAxMzcuMSw3MyAxMjYuNSw4My42IG0gLTUzLDAgTCA2Mi45LDczIDczLjUsNjIuNCA4NC4xLDczIG0gOC40LC0zIDAsLTE1IDE1LDAgMCwxNSBtIDIyLjUsMzAgYyAwLDE2LjYgLTEzLjQsMzAgLTMwLDMwIC0xNi42LDAgLTMwLC0xMy40IC0zMCwtMzAgMCwtMTYuNiAxMy40LC0zMCAzMCwtMzAgQyAxMTYuNiw3MCAxMzAsODMuNCAxMzAsMTAwIHpcIn0sTVtcIlNVLklDLlNFQSBNSU5FIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5Ib3N0aWxlLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc0LjgsMTI1LjIgNTAuNCwwIDAsMTIuNiAtNTAuNCwwIHpcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086RS5pY29uQ29sb3IuSG9zdGlsZSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOlMmJkE/XCJcIjohUiYmIVN8fGU/TzpFLmljb25Db2xvci5Ib3N0aWxlLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDEwMCwxMjggLTEwLDE1IDIwLDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIChJTiBPVEhFUiBQT1NJVElPTilcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDEzMCwxMDAgMTUsMCBNIDcwLDEwMCBsIC0xNSwwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBLSU5HRklTSEVSXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCJLXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgLSBTTUFMTCBPQkpFQ1RcIl09W01bXCJTVS5JQy5TRUEgTUlORVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIlNPXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwiTSAxMTUuOSw3MyAxMjYuNSw2Mi40IDEzNy4xLDczIDEyNi41LDgzLjYgbSAtNTMsMCBMIDYyLjksNzMgNzMuNSw2Mi40IDg0LjEsNzMgbSA4LjQsLTMgMCwtMTUgMTUsMCAwLDE1IG0gMjIuNSwzMCBjIDAsMTYuNiAtMTMuNCwzMCAtMzAsMzAgLTE2LjYsMCAtMzAsLTEzLjQgLTMwLC0zMCAwLC0xNi42IDEzLjQsLTMwIDMwLC0zMCBDIDExNi42LDcwIDEzMCw4My40IDEzMCwxMDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIkVYXCJ9LFM/W106e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046byx4OjE1MCx5OjQ2LGZvbnRzaXplOjQwLHRleHQ6XCJYXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NC44LDEyNS4yIDUwLjQsMCAwLDEyLjYgLTUwLjQsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkVcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzUsMTQwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkUgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTAwLDEyOCAtMTAsMTUgMjAsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgREVDT1lcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSAxMDYuNiwxMDEuNiAwLDI2LjMgLTEzLjEsLTEzLjEgeiBtIC0xOS43LDAgMCwyNi4zIC0xMy4xLC0xMy4xIHogbSAzOS40LDAgMCwyNi4zIC0xMy4xLC0xMy4xIDEzLjEsLTEzLjEgTSAxMDAsNzUuMyBjIC0xNC41LDAgLTI2LjMsMTEuOCAtMjYuMywyNi4zIGwgNTIuNSwwIEMgMTI2LjMsODcuMSAxMTQuNSw3NS4zIDEwMCw3NS4zIHogbSAtNi42LDAgMCwtMTMuMSAxMy4xLDAgMCwxMy4xIG0gLTI5LjgsMTIuMyAtOS4zLC05LjMgOS4zLC05LjMgOS4zLDkuMyBtIDI3LjksMCA5LjMsLTkuMyA5LjMsOS4zIC05LjMsOS4zXCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBERUNPWSwgQk9UVE9NL0dST1VORFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBNT09SRURcIl09W01bXCJTVS5JQy5TRUEgTUlORSBERUNPWVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigwLCAxMzAsIDI0KVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LDE0MCA1MCwwIE0gMTAwLDEwMCBsIDAsNDBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJNIDExNS45LDczIDEyNi41LDYyLjQgMTM3LjEsNzMgMTI2LjUsODMuNiBtIC01MywwIEwgNjIuOSw3MyA3My41LDYyLjQgODQuMSw3MyBtIDguNCwtMyAwLC0xNSAxNSwwIDAsMTUgbSAyMi41LDMwIGMgMCwxNi42IC0xMy40LDMwIC0zMCwzMCAtMTYuNiwwIC0zMCwtMTMuNCAtMzAsLTMwIDAsLTE2LjYgMTMuNCwtMzAgMzAsLTMwIEMgMTE2LjYsNzAgMTMwLDgzLjQgMTMwLDEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZXdpZHRoOjUsc3Ryb2tlOkE/RzpvLGQ6XCJtIDEzNSw2NSAtNzAsNzAgbSAwLC03MCA3MCw3MFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc0LjgsMTI1LjIgNTAuNCwwIDAsMTIuNiAtNTAuNCwwIHpcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIE1PT1JFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086RS5pY29uQ29sb3IuTmV1dHJhbCxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBSSVNJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkUuaWNvbkNvbG9yLk5ldXRyYWwsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTAwLDEyOCAtMTAsMTUgMjAsMCB6XCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKSBORVVUUkFMSVpFRFwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTMwLDEwMCAxNSwwIE0gNzAsMTAwIGwgLTE1LDBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEyLGZvbnRzaXplOjMwLHRleHQ6XCJFXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBCT1RUT01cIl09W01bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigyNTUsMjU1LDApXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUNcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LjUsMTM2LjggNDksMCBNIDEwMCwxMjQuNSBsIDAsMTIuM1wifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDc1LDE0MCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTBcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSU5FIEFOQ0hPUlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6ISghUiYmIVN8fGUpJiZvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTA1LGZvbnRzaXplOjE4LHRleHQ6XCJBTkNSXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwxNDEsNDIpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTEzLjgsMTI3LjYgLTI3LjYsMCAtMTMuOCwtMTMuOCAwLC0yNy42IDEzLjgsLTEzLjggMjcuNiwwIDEzLjgsMTMuOCAwLDI3LjYgelwifSxTP1tdOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOiFSJiYhU3x8ZT9OOm8seDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIiNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwxNDEsNDIpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCIxXCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIjJcIn0sTVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOmV8fCghUiYmIVN8fEE/RzpvKSx4OjEwMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiM1wifSxNW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDRcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEwLGZvbnRzaXplOjM1LHRleHQ6XCI0XCJ9LE1bXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIjVcIn0sTVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT05cIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjgsNFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwyNTUsMClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSAxMTMuOCwxMjcuNiAtMjcuNiwwIC0xMy44LC0xMy44IDAsLTI3LjYgMTMuOCwtMTMuOCAyNy42LDAgMTMuOCwxMy44IDAsMjcuNiB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOmV8fCghUiYmIVN8fEE/RzpvKSx4OjEwMCx5OjExMixmb250c2l6ZTozMCx0ZXh0OlwiTlJcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gQk9UVE9NXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTlwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiFSJiYhU3x8ZT9POkE/bzpcInJnYigyNTUsMjU1LDApXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBNT09SRURcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDI1NSwyNTUsMClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gRkxPQVRJTkdcIl09W01bXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzUsMTQwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMFwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUlwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMjU1LDI1NSwwKVwiLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6ZXx8KCFSJiYhU3x8QT9HOm8pLHg6MTAwLHk6MTEyLGZvbnRzaXplOjMwLHRleHQ6XCJPQlwifV0sTVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUiBORVVUUkFMSVpFRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpFLmljb25Db2xvci5OZXV0cmFsLHN0cm9rZTohUiYmIVN8fGU/TjpvLGQ6XCJtIDExMy44LDEyNy42IC0yNy42LDAgLTEzLjgsLTEzLjggMCwtMjcuNiAxMy44LC0xMy44IDI3LjYsMCAxMy44LDEzLjggMCwyNy42IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlfHxBP0c6byx4OjEwMCx5OjExMixmb250c2l6ZTozMCx0ZXh0OlwiT0JcIn0se3R5cGU6XCJwYXRoXCIsc3Ryb2tld2lkdGg6NSxzdHJva2U6QT9HOm8sZDpcIm0gMTM1LDY1IC03MCw3MCBtIDAsLTcwIDcwLDcwXCJ9XSxNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gMTEzLjgsMTI3LjYgLTI3LjYsMCAtMTMuOCwtMTMuOCAwLC0yNy42IDEzLjgsLTEzLjggMjcuNiwwIDEzLjgsMTMuOCAwLDI3LjYgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsZmlsbDplfHwoIVImJiFTfHxBP0c6bykseDoxMDAseToxMTIsZm9udHNpemU6MzAsdGV4dDpcIk5cIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEJPVFRPTVwiXT1bTVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6IVImJiFTfHxlP086QT9vOlwicmdiKDAsIDEzMCwgMjQpXCIsc3Ryb2tlOiFSJiYhU3x8ZT9OOm8sZDpcIm0gNzQuOCwxMjUuMiA1MC40LDAgMCwxMi42IC01MC40LDAgelwifV0sTVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gTU9PUkVEXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohUiYmIVN8fGU/TzpBP286XCJyZ2IoMCwgMTMwLCAyNClcIixzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NS41LDEzNi44IDQ5LDAgTSAxMDAsMTI0LjUgbCAwLDEyLjNcIn1dLE1bXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEZMT0FUSU5HXCJdPVtNW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2U6IVImJiFTfHxlP046byxkOlwibSA3NSwxNDAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwIDUsLTEwIDUsMTAgNSwtMTAgNSwxMCA1LC0xMCA1LDEwXCJ9XSxNW1wiU1UuSUMuVU5FWFBMT0RFRCBFWFBMT1NJVkUgT1JETkFOQ0VcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjgsNFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLkhvc3RpbGUsZDpcIm0gODUsNjUgMzAsMCAyMCwyMCAwLDMwIC0yMCwyMCAtMzAsMCAtMjAsLTIwIDAsLTMwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046RS5pY29uQ29sb3IuSG9zdGlsZSx4OjEwMCx5OjExMCxmb250c2l6ZTozMCx0ZXh0OlwiVVhPXCJ9XSxNW1wiU1UuSUMuRU5WSVJPTk1FTlRBTCBSRVBPUlQgTE9DQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLk5ldXRyYWwsZDpcIm0gNzAsNzAgMCw2MCA2MCwwIDAsLTYwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6IVImJiFTfHxlP046RS5pY29uQ29sb3IuTmV1dHJhbCx4OjEwMCx5OjEyMixmb250c2l6ZTo2MCx0ZXh0OlwiRVwifV0sTVtcIlNVLklDLkRJVkUgUkVQT1JUIExPQ0FUSU9OXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZTohUiYmIVN8fGU/TjpFLmljb25Db2xvci5OZXV0cmFsLGQ6XCJtIDcwLDcwIDAsNjAgNjAsMCAwLC02MCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSxmaWxsOiFSJiYhU3x8ZT9OOkUuaWNvbkNvbG9yLk5ldXRyYWwseDoxMDAseToxMjIsZm9udHNpemU6NjAsdGV4dDpcIkRcIn1dLE1bXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OL01BTk1BREVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDpPLHN0cm9rZTpvLGQ6XCJtIDE0MCwxMjUgLTgwLDAgMTAsLTMwIDEwLDIwIDIwLC01MCAyMCw1MCAxMCwtMjUgelwifSxNW1wiU1UuSUMuU0VBQkVEIElOU1RBTExBVElPTiwgTUFOLU1BREUsIE1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDgwIDAsNDAgNTAsMCAwLC0xNSAtMTUsMCAwLC0xMCAtMjAsMCAwLC0xNSB6XCJ9LE1bXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTk9OLU1JTElUQVJZXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6TyxkOlwibSA3NSw4MCAwLDQwIDUwLDAgMCwtMTUgLTE1LDAgMCwtMTAgLTIwLDAgMCwtMTUgelwifSxNW1wiU1UuSUMuU0VBQkVEIFJPQ0svU1RPTkUsIE9CU1RBQ0xFLCBPVEhFUlwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxNDAsMTI1IC04MCwwIDEwLC0zMCAxMCwyMCAyMCwtNTAgMjAsNTAgMTAsLTI1IHpcIn0sTVtcIlNVLklDLldSRUNLXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyNSw4NSAwLDMwIG0gLTUwLC0zMCAwLDMwIG0gMjUsLTQwIDAsNDUgbSAtNDAsLTIwIDgwLDBcIn0sTVtcIlNVLklDLk1BUklORSBMSUZFXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDEwMCAyMCwtMjAgNDUsMjAgMTUsLTEwIDAsMjAgLTE1LC0xMCAtNDUsMjAgelwifSxNW1wiU1UuSUMuU0VBIEFOT01BTFlcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSwxMDAgMTUsLTIwIDIwLDMwIDIwLC0zMCAxNSwyMCBtIC03MCwxMCAxNSwtMjAgMjAsMzAgMjAsLTMwIDE1LDIwXCJ9LE1bXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl09bChcIkFTV1wiKSxNW1wiU1UuTTEuQVVYSUxJQVJZXCJdPWwoXCJBVVhcIiksTVtcIlNVLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl09bChcIkMyXCIpLE1bXCJTVS5NMS5JTlRFTExJR0VOQ0UsIFNVUlZFSUxMQU5DRSwgUkVDT05OQUlTU0FOQ0VcIl09bChcIklTUlwiKSxNW1wiU1UuTTEuTUlORSBDT1VOVEVSTUVBU1VSRVNcIl09bChcIk1DTVwiKSxNW1wiU1UuTTEuTUlORSBXQVJGQVJFXCJdPWwoXCJNSVdcIiksTVtcIlNVLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXT1sKFwiU1VXXCIpLE1bXCJTVS5NMS5BVFRBQ0tcIl09bChcIkFcIiksTVtcIlNVLk0xLkJBTExJU1RJQyBNSVNTSUxFXCJdPWwoXCJCXCIpLE1bXCJTVS5NMS5HVUlERUQgTUlTU0lMRVwiXT1sKFwiR1wiKSxNW1wiU1UuTTEuT1RIRVIgR1VJREVEIE1JU1NJTEVTIChQT0lOVCBERUZFTkNFKVwiXT1sKFwiTVwiKSxNW1wiU1UuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFXCJdPWwoXCJTT0ZcIiksTVtcIlNVLk0xLlBPU1NJQkxFIFNVQk1BUklORSAtIExPVyAxXCJdPWwoXCJQMVwiKSxNW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl09bChcIlAyXCIpLE1bXCJTVS5NMS5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDNcIl09bChcIlAzXCIpLE1bXCJTVS5NMS5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDRcIl09bChcIlA0XCIpLE1bXCJTVS5NMS5QUk9CQUJMRSBTVUJNQVJJTkVcIl09bChcIlBCXCIpLE1bXCJTVS5NMS5DRVJUQUlOIFNVQk1BUklORVwiXT1sKFwiQ1RcIiksTVtcIlNVLk0xLkFOVEktVE9SUEVETyBUT1JQRURPXCJdPWwoXCJBVFRcIiksTVtcIlNVLk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXT1sKFwiSFwiKSxNW1wiU1UuTTIuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDFcIl09cihcIlAxXCIpLE1bXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBMT1cgMlwiXT1yKFwiUDJcIiksTVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggM1wiXT1yKFwiUDNcIiksTVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggNFwiXT1yKFwiUDRcIiksTVtcIlNVLk0yLlBST0JBQkxFIFNVQk1BUklORVwiXT1yKFwiUEJcIiksTVtcIlNVLk0yLkFJUiBJTkRFUEVOREVOVCBQUk9QVUxTSU9OXCJdPXIoXCJBSVwiKSxNW1wiU1UuTTIuQ0VSVFNVQlwiXT1yKFwiQ1RcIiksTVtcIlNVLk0yLkRJRVNFTCBQUk9QVUxTSU9OXCJdPXIoXCJEXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDFcIl09cihcIkQxXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDJcIl09cihcIkQyXCIpLE1bXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDNcIl09cihcIkQzXCIpLE1bXCJTVS5NMi5OVUNMRUFSIFBPV0VSRURcIl09cihcIk5cIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDFcIl09cihcIk4xXCIpLE1bXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAyXCJdPXIoXCJOMlwiKSxNW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgM1wiXT1yKFwiTjNcIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDRcIl09cihcIk40XCIpLE1bXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSA1XCJdPXIoXCJONVwiKSxNW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgNlwiXT1yKFwiTjZcIiksTVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDdcIl09cihcIk43XCIpLE1bXCJTVS5NMi5BVVRPTk9NT1VTIENPTlRST0xcIl09cihcIkFVVFwiKSxNW1wiU1UuTTIuUkVNT1RFTFkgUElMT1RFRFwiXT1yKFwiUlBcIiksTVtcIlNVLk0yLkVYUEVOREFCTEVcIl09cihcIkVYUFwiKSxNKU0uaGFzT3duUHJvcGVydHkoaSkmJihJLmhhc093blByb3BlcnR5KGkpJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIraSksbi5jYWxsKHRoaXMsTVtpXSxOKSxJW2ldPU1baV0pfXZhciBtPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbRF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtVS0tLS0tLS1cIl09W10sSVtcIlMtVS1TLS0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkVcIl1dLElbXCJTLVUtU0YtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FLCBTVVJGQUNFRFwiXV0sSVtcIlMtVS1TQi0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdXSxJW1wiUy1VLVNSLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORVwiXSxFW1wiU1UuTTIuQ0VSVFNVQlwiXV0sSVtcIlMtVS1TWC0tLS1cIl09W0VbXCJTVS5JQy5OT04tU1VCTUFSSU5FXCJdXSxJW1wiUy1VLVNOLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl1dLElbXCJTLVUtU05GLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTiwgU1VSRkFDRURcIl1dLElbXCJTLVUtU05BLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIEFUVEFDSyAoU1NOKVwiXV0sSVtcIlMtVS1TTk0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgTUlTU0lMRSAoVFlQRSBVTktOT1dOKVwiXV0sSVtcIlMtVS1TTkctLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkUgTlVDTEVBUiBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgR1VJREVEIE1JU1NJTEUgKFNTR04pXCJdXSxJW1wiUy1VLVNOQi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl0sRVtcIlNVLklDLlNVQk1BUklORSBCQUxMSVNUSUMgTUlTU0lMRSAoU1NCTilcIl1dLElbXCJTLVUtU0MtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdXSxJW1wiUy1VLVNDRi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTiwgU1VSRkFDRURcIl1dLElbXCJTLVUtU0NBLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgQVRUQUNLIChTU04pXCJdXSxJW1wiUy1VLVNDTS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIE1JU1NJTEUgKFRZUEUgVU5LTk9XTilcIl1dLElbXCJTLVUtU0NHLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FIENPTlZFTlRJT05BTCBQUk9QVUxTSU9OXCJdLEVbXCJTVS5JQy5TVUJNQVJJTkUgR1VJREVEIE1JU1NJTEUgKFNTR04pXCJdXSxJW1wiUy1VLVNDQi0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORSBDT05WRU5USU9OQUwgUFJPUFVMU0lPTlwiXSxFW1wiU1UuSUMuU1VCTUFSSU5FIEJBTExJU1RJQyBNSVNTSUxFIChTU0JOKVwiXV0sSVtcIlMtVS1TTy0tLS1cIl09W0VbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXV0sSVtcIlMtVS1TT0YtLS1cIl09W0VbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRSwgU1VSRkFDRURcIl1dLElbXCJTLVUtU1UtLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl1dLElbXCJTLVUtU1VNLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl0sRVtcIlNVLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJW1wiUy1VLVNVUy0tLVwiXT1bRVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpXCJdLEVbXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbXCJTLVUtU1VOLS0tXCJdPVtFW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl0sRVtcIlNVLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sSVtcIlMtVS1TMS0tLS1cIl09W0VbXCJTVS5JQy5TVUJNQVJJTkVcIl0sRVtcIlNVLk0yLlBPU1NJQkxFIFNVQk1BUklORSAtIExPVyAxXCJdXSxJW1wiUy1VLVMyLS0tLVwiXT1bRVtcIlNVLklDLlNVQk1BUklORVwiXSxFW1wiU1UuTTIuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl1dLElbXCJTLVUtUzMtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDNcIl1dLElbXCJTLVUtUzQtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QT1NTSUJMRSBTVUJNQVJJTkUgLSBISUdIIDRcIl1dLElbXCJTLVUtU0wtLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FXCJdLEVbXCJTVS5NMi5QUk9CQUJMRSBTVUJNQVJJTkVcIl1dLElbXCJTLVUtU0stLS0tXCJdPVtFW1wiU1UuSUMuU1VCTUFSSU5FLCBTTk9SS0VMSU5HXCJdXSxJW1wiUy1VLVctLS0tLVwiXT1bRVtcIlNVLklDLlVOREVSV0FURVIgV0VBUE9OXCJdXSxJW1wiUy1VLVdULS0tLVwiXT1bRVtcIlNVLklDLlRPUlBFRE9cIl1dLElbXCJTLVUtV00tLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkVcIl1dLElbXCJTLVUtV01ELS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01HLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgLSBCT1RUT01cIl1dLElbXCJTLVUtV01HRC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBCT1RUT01cIl1dLElbXCJTLVUtV01HWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdFLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxFQyAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdDLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXV0sSVtcIlMtVS1XTUdSLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gQk9UVE9NXCJdXSxJW1wiUy1VLVdNR08tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gQk9UVE9NXCJdXSxJW1wiUy1VLVdNTS0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIC0gTU9PUkVEXCJdXSxJW1wiUy1VLVdNTUQtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gTU9PUkVEXCJdXSxJW1wiUy1VLVdNTVgtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIEVYRVJDSVNFIE1JTkUgLSBNT09SRURcIl1dLElbXCJTLVUtV01NRS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBNT09SRURcIl1dLElbXCJTLVUtV01NQy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl1dLElbXCJTLVUtV01NUi0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTiAtIE1PT1JFRFwiXV0sSVtcIlMtVS1XTU1PLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIE1PT1JFRFwiXV0sSVtcIlMtVS1XTUYtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdXSxJW1wiUy1VLVdNRkQtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEZMT0FUSU5HXCJdXSxJW1wiUy1VLVdNRkUtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GQy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXV0sSVtcIlMtVS1XTUZSLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OIC0gRkxPQVRJTkdcIl1dLElbXCJTLVUtV01GTy0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1QgLSBGTE9BVElOR1wiXV0sSVtcIlMtVS1XTU8tLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSAoSU4gT1RIRVIgUE9TSVRJT04pXCJdXSxJW1wiUy1VLVdNT0QtLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIChJTiBPVEhFUiBQT1NJVElPTikgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01YLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXV0sSVtcIlMtVS1XTUUtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxFQ1wiXV0sSVtcIlMtVS1XTUEtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSU5FIEFOQ0hPUlwiXV0sSVtcIlMtVS1XTUMtLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBNSUxDT1wiXV0sSVtcIlMtVS1XTVItLS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORUdBVElWRSBSRUFDUVVJU0lUSU9OXCJdXSxJW1wiUy1VLVdNQi0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIEdFTkVSQUwgT0JTVFJVQ1RPUlwiXV0sSVtcIlMtVS1XTUJELS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1IgTkVVVFJBTElaRURcIl1dLElbXCJTLVUtV01OLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1RcIl1dLElbXCJTLVUtV01TLS0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgLSBSSVNJTkdcIl1dLElbXCJTLVUtV01TWC0tXCJdPVtFW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIFJJU0lOR1wiXV0sSVtcIlMtVS1XTVNELS1cIl09W0VbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIFJJU0lOR1wiXV0sSVtcIlMtVS1XVi0tLS1cIl09W0VbXCJTVS5JQy5BVVRPTk9NT1VTIFVOREVSV0FURVIgVkVISUNMRS8gVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIChBVVYvVVVWKVwiXV0sSVtcIlMtVS1XRC0tLS1cIl09W0VbXCJTVS5JQy5VTkRFUldBVEVSIERFQ09ZXCJdXSxJW1wiUy1VLVdETS0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZXCJdXSxJW1wiUy1VLVdETUctLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBCT1RUT00vR1JPVU5EXCJdXSxJW1wiUy1VLVdETU0tLVwiXT1bRVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBNT09SRURcIl1dLElbXCJTLVUtTi0tLS0tXCJdPVtFW1wiU1UuSUMuTk9OLVNVQk1BUklORVwiXV0sSVtcIlMtVS1ORC0tLS1cIl09W0VbXCJTVS5JQy5ESVZFUiwgQ0lWSUxJQU5cIl1dLElbXCJTLVUtTkItLS0tXCJdPVtdLElbXCJTLVUtRS0tLS0tXCJdPVtFW1wiU1UuSUMuRU5WSVJPTk1FTlRBTCBSRVBPUlQgTE9DQVRJT05cIl1dLElbXCJTLVUtVi0tLS0tXCJdPVtFW1wiU1UuSUMuRElWRSBSRVBPUlQgTE9DQVRJT05cIl1dLElbXCJTLVUtWC0tLS0tXCJdPVtFW1wiU1UuSUMuVU5FWFBMT0RFRCBFWFBMT1NJVkUgT1JETkFOQ0VcIl1dLElbXCJTLVUtTkJTLS0tXCJdPVtFW1wiU1UuSUMuU0VBQkVEIElOU1RBTExBVElPTi9NQU5NQURFXCJdXSxJW1wiUy1VLU5CUi0tLVwiXT1bRVtcIlNVLklDLlNFQUJFRCBST0NLL1NUT05FLCBPQlNUQUNMRSwgT1RIRVJcIl1dLElbXCJTLVUtTkJXLS0tXCJdPVtFW1wiU1UuSUMuV1JFQ0tcIl1dLElbXCJTLVUtTk0tLS0tXCJdPVtFW1wiU1UuSUMuTUFSSU5FIExJRkVcIl1dLElbXCJTLVUtTkEtLS0tXCJdPVtFW1wiU1UuSUMuU0VBIEFOT01BTFlcIl1dfX0sRj17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2MsUF0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtRi0tLS0tLS1cIl09W0VbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1GLUEtLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJW1wiUy1GLUFGLS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtQUZBLS0tXCJdPVtFW1wiQVIuSS5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiU09GLk0yLkFUVEFDS1wiXV0sSVtcIlMtRi1BRkstLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuUkVGVUVMXCJdXSxJW1wiUy1GLUFGVS0tLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIlNPRi5NMi5VVElMSVRZXCJdXSxJW1wiUy1GLUFGVUwtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkFJUi5NMi5MSUdIVFwiXV0sSVtcIlMtRi1BRlVNLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTUVESVVNXCJdXSxJW1wiUy1GLUFGVUgtLVwiXT1bRVtcIkFSLkkuTUlMSVRBUlkgRklYRUQgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkFJUi5NMi5IRUFWWVwiXV0sSVtcIlMtRi1BVi0tLS1cIl09W0VbXCJBUi5JLk1JTElUQVJZIEZJWEVEIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuVlNUT0xcIl1dLElbXCJTLUYtQUgtLS0tXCJdPVI/W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HIDI1MjVDXCJdXTpbRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtRi1BSEgtLS1cIl09W0VbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sRVtcIlNPRi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLElbXCJTLUYtQUhBLS0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJTT0YuTTIuQVRUQUNLXCJdXSxJW1wiUy1GLUFIVS0tLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiU09GLk0yLlVUSUxJVFlcIl1dLElbXCJTLUYtQUhVTC0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTElHSFRcIl1dLElbXCJTLUYtQUhVTS0tXCJdPVtFW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl0sRVtcIkFJUi5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJBSVIuTTIuTUVESVVNXCJdXSxJW1wiUy1GLUFIVUgtLVwiXT1bRVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXSxFW1wiQUlSLk0yLkhFQVZZXCJdXSxJW1wiUy1GLVNOLS0tLVwiXT1JW1wiUy1GLU4tLS0tLVwiXT1bRVtcIkdSLklDLk5BVkFMXCJdLEVbXCJBSVIuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFU1wiXV0sSVtcIlMtRi1TTlMtLS1cIl09SVtcIlMtRi1OUy0tLS1cIl09W0VbXCJHUi5JQy5TRUEtQUlSLUxBTkRcIl1dLElbXCJTLUYtU05VLS0tXCJdPUlbXCJTLUYtTlUtLS0tXCJdPVtFW1wiU09GLklDLlVOREVSV0FURVIgREVNT0xJVElPTiBURUFNXCJdXSxJW1wiUy1GLVNOQi0tLVwiXT1JW1wiUy1GLU5CLS0tLVwiXT1bRVtcIkdSLklDLkNPTUJBVEFOVFwiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtU05OLS0tXCJdPUlbXCJTLUYtTk4tLS0tXCJdPVtFW1wiR1IuSUMuU1VCTUFSSU5FIE5VQ0xFQVIgUFJPUFVMU0lPTlwiXSxFW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtRy0tLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbXCJTLUYtR1MtLS0tXCJdPVtFW1wiR1IuSUMuU1BFQ0lBTCBGT1JDRVNcIl1dLElbXCJTLUYtR1ItLS0tXCJdPUlbXCJTLUYtR1NSLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXSxFW1wiR1IuTTIuQUlSQk9STkVcIl1dLElbXCJTLUYtR1AtLS0tXCJdPUlbXCJTLUYtR1NQLS0tXCJdPVtFW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXV0sSVtcIlMtRi1HUEEtLS1cIl09SVtcIlMtRi1HU1BBLS1cIl09W0VbXCJHUi5FUS5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlMgRVFVSVBNRU5UXCJdLHMuX3RyYW5zbGF0ZSgwLC0zMCxzLl9zY2FsZSguNyxFW1wiQVIuSS5NSUxJVEFSWSBGSVhFRCBXSU5HXCJdKSldLElbXCJTLUYtR0MtLS0tXCJdPUlbXCJTLUYtR0NBLS0tXCJdPVtFW1wiR1IuSUMuQ0lWSUwgQUZGQUlSU1wiXV0sSVtcIlMtRi1HQi0tLS1cIl09SVtcIlMtRi1CLS0tLS1cIl09W0VbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdLEVbXCJHUi5NMi5TVVBQT1JUXCJdXX19O2Z1bmN0aW9uIGYoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1FLmljb25Db2xvcltDXSxTPXtcIlNJLklDLkNPTU1VTklDQVRJT05TXCI6e3R5cGU6XCJwYXRoXCIsZDpcIm0gOTMsMTIwIDE0LDAgMCwwIG0gLTcsLTI3IDAsMjcgbSAyLC0yNSA4LDIgLTUsNSAxMywzIG0gLTIwLC0xMCAtOCwyIDUsNSAtMTQsMyBtIDIxLC0xMyA4LC0yIC01LC01IDEzLC0zIG0gLTM3LDAgMTQsMyAtNSw1IDgsMlwiLGZpbGw6ITF9LFwiU0kuSUMuUkFEQVJcIjp7dHlwZTpcInBhdGhcIixkOlwibSAxMTUsOTAgLTE1LDE1IDAsLTE1IC0xNSwxNSBNIDgwLDg1IGMgMCwyNSAxNSwzNSAzNSwzNVwiLGZpbGw6ITF9fTtmb3IodmFyIE4gaW4gU1tcIlNJLkkuSkFNTUVSIC8gRUxFQ1RST05JQyBDT1VOVEVSLU1FQVNVUkVTXCJdPWEoXCJKXCIpLFNbXCJTSS5NMS5BTlRJLUFJUkNSQUZUIEZJUkUgQ09OVFJPTFwiXT1sKFwiQUFcIiksU1tcIlNJLk0xLkFJUkJPUk5FIFNFQVJDSCBBTkQgQk9NQklOR1wiXT1sKFwiQUJcIiksU1tcIlNJLk0xLkFJUkJPUk5FIElOVEVSQ0VQVFwiXT1sKFwiQUlcIiksU1tcIlNJLk0xLkFMVElNRVRFUlwiXT1sKFwiQUxcIiksU1tcIlNJLk0xLkFJUkJPUk5FIFJFQ09OTkFJU1NBTkNFIEFORCBNQVBQSU5HXCJdPWwoXCJBTVwiKSxTW1wiU0kuTTEuQUlSIFRSQUZGSUMgQ09OVFJPTFwiXT1sKFwiQVRcIiksU1tcIlNJLk0xLkJFQUNPTiBUUkFOU1BPTkRFUiAoTk9UIElGRilcIl09bChcIkJOXCIpLFNbXCJTSS5NMS5CQVRUTEVGSUVMRCBTVVJWRUlMTEFOQ0VcIl09bChcIkJTXCIpLFNbXCJTSS5NMS5DT05UUk9MTEVEIEFQUFJPQUNIXCJdPWwoXCJDQVwiKSxTW1wiU0kuTTEuQ09OVFJPTExFRCBJTlRFUkNFUFRcIl09bChcIkNJXCIpLFNbXCJTSS5NMS5DRUxMVUxBUi9NT0JJTEVcIl09bChcIkNNXCIpLFNbXCJTSS5NMS5DT0FTVEFMIFNVUlZFSUxMQU5DRVwiXT1sKFwiQ1NcIiksU1tcIlNJLk0xLkNZQkVSXCJdPWwoXCJDWUJcIiksU1tcIlNJLk0xLkRFQ09ZL01JTUlDXCJdPWwoXCJEQ1wiKSxTW1wiU0kuTTEuREFUQSBUUkFOU01JU1NJT05cIl09bChcIkRUXCIpLFNbXCJTSS5NMS5FQVJUSCBTVVJWRUlMTEFOQ0VcIl09bChcIkVTXCIpLFNbXCJTSS5NMS5FQVJMWSBXQVJOSU5HXCJdPWwoXCJFV1wiKSxTW1wiU0kuTTEuRklSRSBDT05UUk9MXCJdPWwoXCJGQ1wiKSxTW1wiU0kuTTEuR1JPVU5EIE1BUFBJTkdcIl09bChcIkdNXCIpLFNbXCJTSS5NMS5IRUlHSFQgRklORElOR1wiXT1sKFwiSEZcIiksU1tcIlNJLk0xLkhBUkJPUiBTVVJWRUlMTEFOQ0VcIl09bChcIkhTXCIpLFNbXCJTSS5NMS5JREVOVElGSUNBVElPTiwgRlJJRU5EIE9SIEZPRSAoSU5URVJST0dBVE9SKVwiXT1sKFwiSUZcIiksU1tcIlNJLk0xLklOU1RSVU1FTlQgTEFORElORyBTWVNURU1cIl09bChcIklMXCIpLFNbXCJTSS5NMS5JT05PU1BIRVJJQyBTT1VORElOR1wiXT1sKFwiSVNcIiksU1tcIlNJLk0xLklERU5USUZJQ0FUSU9OLCBGUklFTkQgT1IgRk9FIChUUkFOU1BPTkRFUilcIl09bChcIklUXCIpLFNbXCJTSS5NMS5CQVJSQUdFIEpBTU1FUlwiXT1sKFwiSkJcIiksU1tcIlNJLk0xLkNMSUNLIEpBTU1FUlwiXT1sKFwiSkNcIiksU1tcIlNJLk0xLkRFQ0VQVElWRSBKQU1NRVJcIl09bChcIkpEXCIpLFNbXCJTSS5NMS5GUkVRVUVOQ1kgU1dFUFQgSkFNTUVSXCJdPWwoXCJKRlwiKSxTW1wiU0kuTTEuSkFNTUVSIChHRU5FUkFMKVwiXT1sKFwiSkdcIiksU1tcIlNJLk0xLk5PSVNFIEpBTU1FUlwiXT1sKFwiSk5cIiksU1tcIlNJLk0xLlBVTFNFRCBKQU1NRVJcIl09bChcIkpQXCIpLFNbXCJTSS5NMS5SRVBFQVRFUiBKQU1NRVJcIl09bChcIkpSXCIpLFNbXCJTSS5NMS5TUE9UIE5PSVNFIEpBTU1FUlwiXT1sKFwiSlNcIiksU1tcIlNJLk0xLlRSQU5TUE9OREVSIEpBTU1FUlwiXT1sKFwiSlRcIiksU1tcIlNJLk0xLk1JU1NJTEUgQUNRVUlTSVRJT05cIl09bChcIk1BXCIpLFNbXCJTSS5NMS5NSVNTSUxFIENPTlRST0xcIl09bChcIk1DXCIpLFNbXCJTSS5NMS5NSVNTSUxFIERPV05MSU5LXCJdPWwoXCJNRFwiKSxTW1wiU0kuTTEuTUVURU9ST0xPR0lDQUxcIl09bChcIk1FXCIpLFNbXCJTSS5NMS5NVUxUSS1GVU5DVElPTlwiXT1sKFwiTUZcIiksU1tcIlNJLk0xLk1JU1NJTEUgR1VJREFOQ0VcIl09bChcIk1HXCIpLFNbXCJTSS5NMS5NSVNTSUxFIEhPTUlOR1wiXT1sKFwiTUhcIiksU1tcIlNJLk0xLk1JU1NJTEUgVFJBQ0tJTkdcIl09bChcIk1UXCIpLFNbXCJTSS5NMS5OQVZJR0FUSU9OQUwvR0VORVJBTFwiXT1sKFwiTkFcIiksU1tcIlNJLk0xLk5BVklHQVRJT05BTC9ESVNUQU5DRSBNRUFTVVJJTkcgRVFVSVBNRU5UXCJdPWwoXCJORFwiKSxTW1wiU0kuTTEuTkFWSUdBVElPTi9URVJSQUlOIEZPTExPV0lOR1wiXT1sKFwiTlRcIiksU1tcIlNJLk0xLk5BVklHQVRJT05BTC9XRUFUSEVSIEFWT0lEQU5DRVwiXT1sKFwiTldcIiksU1tcIlNJLk0xLk9NTkktTElORSBPRiBTSUdIVCAoTE9TKVwiXT1sKFwiT0xcIiksU1tcIlNJLk0xLlBST1hJTUlUWSBVU0VcIl09bChcIlBGXCIpLFNbXCJTSS5NMS5QT0lOVC1UTy1QT0lOVCBMSU5FIE9GIFNJR0hUIChMT1MpXCJdPWwoXCJQUFwiKSxTW1wiU0kuTTEuSU5TVFJVTUVOVEFUSU9OXCJdPWwoXCJSSVwiKSxTW1wiU0kuTTEuUkFOR0UgT05MWVwiXT1sKFwiUk9cIiksU1tcIlNJLk0xLlNPTk9CVU9ZXCJdPWwoXCJTQlwiKSxTW1wiU0kuTTEuU0FURUxMSVRFIERPV05MSU5LXCJdPWwoXCJTRFwiKSxTW1wiU0kuTTEuU1BBQ0VcIl09bChcIlNQXCIpLFNbXCJTSS5NMS5TVVJGQUNFIFNFQVJDSFwiXT1sKFwiU1NcIiksU1tcIlNJLk0xLlNIRUxMIFRSQUNLSU5HXCJdPWwoXCJTVFwiKSxTW1wiU0kuTTEuU0FURUxMSVRFIFVQTElOS1wiXT1sKFwiU1VcIiksU1tcIlNJLk0xLlRBUkdFVCBBQ1FVSVNJVElPTlwiXT1sKFwiVEFcIiksU1tcIlNJLk0xLlRBUkdFVCBJTExVTUlOQVRJT05cIl09bChcIlRJXCIpLFNbXCJTSS5NMS5UUk9QT1NQSEVSSUMgU0NBVFRFUlwiXT1sKFwiVFNcIiksU1tcIlNJLk0xLlRBUkdFVCBUUkFDS0lOR1wiXT1sKFwiVFRcIiksU1tcIlNJLk0xLlVOS05PV05cIl09bChcIlVOXCIpLFNbXCJTSS5NMS5WSURFTyBSRU1PVElOR1wiXT1sKFwiVlJcIiksU1tcIlNJLk0xLkVYUEVSSU1FTlRBTFwiXT1sKFwiWFBcIiksU1tcIlNJLk0xLkFMUEhBXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBXCJ9LFNbXCJTSS5NMS5CUkFWT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiQlwifSxTW1wiU0kuTTEuQ0hBUkxJRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiQ1wifSxTW1wiU0kuTTEuREVMVEFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkRcIn0sU1tcIlNJLk0xLkVDSE9cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkVcIn0sU1tcIlNJLk0xLkZPWFRST1RcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6NjgseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkZcIn0sU1tcIlNJLk0xLkhPVEVMXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJIXCJ9LFNbXCJTSS5NMS5JTkRZXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJJXCJ9LFNbXCJTSS5NMS5NSUtFXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJNXCJ9LFNbXCJTSS5NMS5PU0NBUlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiT1wifSxTW1wiU0kuTTEuUEFQQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiUFwifSxTW1wiU0kuTTEuU0lFUlJBXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjY4LHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJTXCJ9LFNbXCJTSS5NMS5UQU5HT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVFwifSxTW1wiU0kuTTEuVU5JRk9STVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDo2OCx5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVVwifSxTW1wiU0kuTTIuQUxQSEFcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJBXCJ9LFNbXCJTSS5NMi5CUkFWT1wiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkJcIn0sU1tcIlNJLk0yLkNIQVJMSUVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJDXCJ9LFNbXCJTSS5NMi5DWUJFUlwiXT1yKFwiQ1lCXCIpLFNbXCJTSS5NMi5ERUxUQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkRcIn0sU1tcIlNJLk0yLkVDSE9cIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJFXCJ9LFNbXCJTSS5NMi5GT1hUUk9UXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiRlwifSxTW1wiU0kuTTIuR09MRlwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIkdcIn0sU1tcIlNJLk0yLklORFlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJJXCJ9LFNbXCJTSS5NMi5MSU1BXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiTFwifSxTW1wiU0kuTTIuTUlLRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIk1cIn0sU1tcIlNJLk0yLk5PVkVNQkVSXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiTlwifSxTW1wiU0kuTTIuUEFQQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlBcIn0sU1tcIlNJLk0yLlNJRVJSQVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlNcIn0sU1tcIlNJLk0yLlRBTkdPXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEzMix5OjExMCxmb250c2l6ZToyNSx0ZXh0OlwiVFwifSxTW1wiU0kuTTIuVU5JRk9STVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMzIseToxMTAsZm9udHNpemU6MjUsdGV4dDpcIlVcIn0sU1tcIlNJLk0yLldISVNLRVlcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTMyLHk6MTEwLGZvbnRzaXplOjI1LHRleHQ6XCJXXCJ9LFNbXCJTSS5NMy5TUEFDRVwiXT17dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseTo3NSxmb250c2l6ZToyNSx0ZXh0OlwiU1wifSxTW1wiU0kuTTMuR1JPVU5EXCJdPXt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5Ojc1LGZvbnRzaXplOjI1LHRleHQ6XCJHXCJ9LFMpUy5oYXNPd25Qcm9wZXJ0eShOKSYmKEkuaGFzT3duUHJvcGVydHkoTikmJmNvbnNvbGUud2FybihcIk92ZXJyaWRlIG9mOiBcIitOKSxuLmNhbGwodGhpcyxTW05dLFQpLElbTl09U1tOXSl9dmFyIHo9e3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltmXSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiSS1QLVMtLS0tLVwiXT1bXSxJW1wiSS1QLVNDLS0tLVwiXT1bXSxJW1wiSS1QLVNDRC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLkRFTFRBXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUi0tLS1cIl09W10sSVtcIkktUC1TUkQtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuREVMVEFcIl0sRVtcIlNJLk0yLlRBTkdPXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuU0lFUlJBXCJdLEVbXCJTSS5NMy5TUEFDRVwiXV0sSVtcIkktUC1TUkktLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSU5EWVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXSxFW1wiU0kuTTMuU1BBQ0VcIl1dLElbXCJJLVAtU1JNLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSVC0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5UQU5HT1wiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSUy0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlBBUEFcIl0sRVtcIlNJLk0zLlNQQUNFXCJdXSxJW1wiSS1QLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXSxFW1wiU0kuTTMuU1BBQ0VcIl1dLElbXCJJLUEtUy0tLS0tXCJdPVtdLElbXCJJLUEtU0MtLS0tXCJdPVtdLElbXCJJLUEtU0NDLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLk1JS0VcIl1dLElbXCJJLUEtU0NPLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLk9TQ0FSXCJdLEVbXCJTSS5NMi5MSU1BXCJdXSxJW1wiSS1BLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdXSxJW1wiSS1BLVNDUy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlVOSUZPUk1cIl1dLElbXCJJLUEtU1ItLS0tXCJdPVtdLElbXCJJLUEtU1JBSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5JTkRZXCJdXSxJW1wiSS1BLVNSQVMtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuQlJBVk9cIl1dLElbXCJJLUEtU1JDLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLUEtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktQS1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktQS1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXV0sSVtcIkktQS1TUkktLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSU5EWVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktQS1TUk1BLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl1dLElbXCJJLUEtU1JNRC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkRFTFRBXCJdXSxJW1wiSS1BLVNSTUctLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5HT0xGXCJdXSxJW1wiSS1BLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktQS1TUk1GLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktQS1TUlRJLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLUEtU1JUQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktQS1TUlRULS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLlRBTkdPXCJdXSxJW1wiSS1BLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXV0sSVtcIkktRy1TLS0tLS1cIl09W10sSVtcIkktRy1TQy0tLS1cIl09W10sSVtcIkktRy1TQ0MtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuTUlLRVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDTy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5PU0NBUlwiXSxFW1wiU0kuTTIuTElNQVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU0NTLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLlNJRVJSQVwiXSxFW1wiU0kuTTIuVU5JRk9STVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNDVC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5UQU5HT1wiXSxFW1wiU0kuTTIuU0lFUlJBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1ItLS0tXCJdPVtdLElbXCJJLUctU1JBVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSQUEtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkItLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQlJBVk9cIl0sRVtcIlNJLk0yLlNJRVJSQVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSQ1MtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5DSEFSTElFXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkNBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkQtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuREVMVEFcIl0sRVtcIlNJLk0yLlRBTkdPXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JFLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkVDSE9cIl0sRVtcIlNJLk0yLldISVNLRVlcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSSC0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5IT1RFTFwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSSS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5JTkRZXCJdLEVbXCJTSS5NMi5GT1hUUk9UXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JNTS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkVDSE9cIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUk1BLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUk1HLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuR09MRlwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSTUYtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5GT1hUUk9UXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JTLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlNJRVJSQVwiXSxFW1wiU0kuTTIuVEFOR09cIl0sRVtcIlNJLk0zLkdST1VORFwiXV0sSVtcIkktRy1TUlRBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLkFMUEhBXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JUSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5JTkRZXCJdLEVbXCJTSS5NMy5HUk9VTkRcIl1dLElbXCJJLUctU1JUVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5UQU5HT1wiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1HLVNSVS0tLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5VTklGT1JNXCJdLEVbXCJTSS5NMi5OT1ZFTUJFUlwiXSxFW1wiU0kuTTMuR1JPVU5EXCJdXSxJW1wiSS1TLVMtLS0tLVwiXT1bXSxJW1wiSS1TLVNDLS0tLVwiXT1bXSxJW1wiSS1TLVNDQy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5DSEFSTElFXCJdLEVbXCJTSS5NMi5NSUtFXCJdXSxJW1wiSS1TLVNDTy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5PU0NBUlwiXSxFW1wiU0kuTTIuTElNQVwiXV0sSVtcIkktUy1TQ1AtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuUEFQQVwiXSxFW1wiU0kuTTIuUEFQQVwiXV0sSVtcIkktUy1TQ1MtLS1cIl09W0VbXCJTSS5JQy5DT01NVU5JQ0FUSU9OU1wiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5VTklGT1JNXCJdXSxJW1wiSS1TLVNSLS0tLVwiXT1bXSxJW1wiSS1TLVNSQVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5BTFBIQVwiXSxFW1wiU0kuTTIuVEFOR09cIl1dLElbXCJJLVMtU1JBQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkFMUEhBXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktUy1TUkNBLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuQ0hBUkxJRVwiXSxFW1wiU0kuTTIuQUxQSEFcIl1dLElbXCJJLVMtU1JDSS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkNIQVJMSUVcIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLVMtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktUy1TUkYtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRk9YVFJPVFwiXSxFW1wiU0kuTTIuQ0hBUkxJRVwiXV0sSVtcIkktUy1TUkgtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuSE9URUxcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl1dLElbXCJJLVMtU1JJLS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLklORFlcIl0sRVtcIlNJLk0yLkZPWFRST1RcIl1dLElbXCJJLVMtU1JNTS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkVDSE9cIl1dLElbXCJJLVMtU1JNQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLk1JS0VcIl0sRVtcIlNJLk0yLkFMUEhBXCJdXSxJW1wiSS1TLVNSTUctLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5HT0xGXCJdXSxJW1wiSS1TLVNSTVQtLVwiXT1bRVtcIlNJLklDLlJBREFSXCJdLEVbXCJTSS5NMS5NSUtFXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUk1GLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktUy1TUlMtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl1dLElbXCJJLVMtU1JUQS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktUy1TUlRJLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVEFOR09cIl0sRVtcIlNJLk0yLklORFlcIl1dLElbXCJJLVMtU1JUVC0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktUy1TUlUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVU5JRk9STVwiXSxFW1wiU0kuTTIuTk9WRU1CRVJcIl1dLElbXCJJLVUtUy0tLS0tXCJdPVtdLElbXCJJLVUtU0MtLS0tXCJdPVtdLElbXCJJLVUtU0NPLS0tXCJdPVtFW1wiU0kuSUMuQ09NTVVOSUNBVElPTlNcIl0sRVtcIlNJLk0xLk9TQ0FSXCJdLEVbXCJTSS5NMi5MSU1BXCJdXSxJW1wiSS1VLVNDUC0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5QQVBBXCJdLEVbXCJTSS5NMi5QQVBBXCJdXSxJW1wiSS1VLVNDUy0tLVwiXT1bRVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdLEVbXCJTSS5NMS5TSUVSUkFcIl0sRVtcIlNJLk0yLlVOSUZPUk1cIl1dLElbXCJJLVUtU1ItLS0tXCJdPVtdLElbXCJJLVUtU1JELS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLkRFTFRBXCJdLEVbXCJTSS5NMi5UQU5HT1wiXV0sSVtcIkktVS1TUkUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuRUNIT1wiXSxFW1wiU0kuTTIuV0hJU0tFWVwiXV0sSVtcIkktVS1TUk0tLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuTUlLRVwiXSxFW1wiU0kuTTIuRk9YVFJPVFwiXV0sSVtcIkktVS1TUlMtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuU0lFUlJBXCJdLEVbXCJTSS5NMi5TSUVSUkFcIl1dLElbXCJJLVUtU1JULS0tXCJdPVtFW1wiU0kuSUMuUkFEQVJcIl0sRVtcIlNJLk0xLlRBTkdPXCJdLEVbXCJTSS5NMi5BTFBIQVwiXV0sSVtcIkktVS1TUlUtLS1cIl09W0VbXCJTSS5JQy5SQURBUlwiXSxFW1wiU0kuTTEuVU5JRk9STVwiXSxFW1wiU0kuTTIuTk9WRU1CRVJcIl1dfX0sSD17dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2NdLGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJPLVYtQS0tLS0tXCJdPVtFW1wiU1QuSUMuQVJTT04vRklSRVwiXV0sSVtcIk8tVi1NLS0tLS1cIl09W0VbXCJTVC5JQy5LSUxMSU5HIFZJQ1RJTVwiXV0sSVtcIk8tVi1NQS0tLS1cIl09W0VbXCJTVC5JQy5LSUxMSU5HIFZJQ1RJTVwiXSxFW1wiU1QuTTEuTVVSREVSXCJdXSxJW1wiTy1WLU1CLS0tLVwiXT1bRVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLEVbXCJTVC5NMS5FWEVDVVRJT04gKFdST05HRlVMIEtJTExJTkcpXCJdXSxJW1wiTy1WLU1DLS0tLVwiXT1bRVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLEVbXCJTVC5NMS5BU1NBU1NJTkFUSU9OXCJdXSxJW1wiTy1WLUItLS0tLVwiXT1bRVtcIlNULklDLkJPTUJcIl1dLElbXCJPLVYtWS0tLS0tXCJdPVtFW1wiU1QuSUMuQk9PQlkgVFJBUFwiXV0sSVtcIk8tVi1ELS0tLS1cIl09W0VbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXV0sSVtcIk8tVi1TLS0tLS1cIl09W0VbXCJTVC5JQy5TTklQSU5HXCJdXSxJW1wiTy1WLVAtLS0tLVwiXT1bRVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVtcIk8tVi1FLS0tLS1cIl09W0VbXCJTVC5JQy5FWFBMT1NJT05cIl1dLElbXCJPLVYtRUktLS0tXCJdPVtFW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEVbXCJTVC5JQy5JRURcIl1dLElbXCJPLUwtQi0tLS0tXCJdPVtFW1wiU1QuSUMuQkxBQ0sgTElTVCBMT0NBVElPTlwiXV0sSVtcIk8tTC1HLS0tLS1cIl09W0VbXCJTVC5JQy5HUkFZIExJU1QgTE9DQVRJT05cIl1dLElbXCJPLUwtVy0tLS0tXCJdPVtFW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXV0sSVtcIk8tTC1NLS0tLS1cIl09W0VbXCJTVC5JQy5NQVNTIEdSQVZFIExPQ0FUSU9OXCJdXSxJW1wiTy1PLVAtLS0tLVwiXT1bRVtcIlNULklDLlBBVFJPTExJTkdcIl1dLElbXCJPLU8tUi0tLS0tXCJdPVtdLElbXCJPLU8tUlctLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuV0lMTElOR1wiXV0sSVtcIk8tTy1SQy0tLS1cIl09W0VbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEVbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXV0sSVtcIk8tTy1ELS0tLS1cIl09W0VbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdXSxJW1wiTy1PLU0tLS0tLVwiXT1bRVtcIlNULklDLk1JTkUgTEFZSU5HXCJdXSxJW1wiTy1PLVktLS0tLVwiXT1bRVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVtcIk8tTy1ZVC0tLS1cIl09W0VbXCJTVC5JQy5SQURJTyBBTkQgVEVMRVZJU0lPTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbXCJPLU8tWVctLS0tXCJdPVtFW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLEVbXCJTVC5NMS5XUklUVEVOIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVtcIk8tTy1ZSC0tLS1cIl09W0VbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sRVtcIlNULk0xLkhPVVNFLVRPLUhPVVNFXCJdXSxJW1wiTy1PLUYtLS0tLVwiXT1bRVtcIlNULklDLlNFQVJDSElOR1wiXV0sSVtcIk8tTy1TLS0tLS1cIl09W0VbXCJTVC5JQy5TUFlcIl1dLElbXCJPLU8tTy0tLS0tXCJdPVtFW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl1dLElbXCJPLU8tRS0tLS0tXCJdPVtFW1wiU1QuSUMuRVhUT1JUSU9OXCJdXSxJW1wiTy1PLUgtLS0tLVwiXT1bXSxJW1wiTy1PLUhULS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJPLU8tSEEtLS0tXCJdPVtFW1wiU1QuSUMuSElKQUNLSU5HIChBSVJQTEFORSlcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIk8tTy1IVi0tLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEJPQVQpXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJPLU8tSy0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sSVtcIk8tTy1LQS0tLS1cIl09W0VbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEVbXCJTVC5NMS5LSUROQVBQSU5HXCJdLEVbXCJTVC5JQy5BVFRFTVBURUQgQ1JJTUlOQUwgQUNUSVZJVFlcIl1dLElbXCJPLU8tQS0tLS0tXCJdPVtFW1wiU1QuSUMuQVJSRVNUXCJdXSxJW1wiTy1PLVUtLS0tLVwiXT1bRVtcIlNULklDLkRSVUcgUkVMQVRFRCBBQ1RJVklUSUVTXCJdXSxJW1wiTy1PLUMtLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdXSxJW1wiTy1PLUNBLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdLEVbXCJTVC5NMS5DT01CQVRcIl1dLElbXCJPLU8tQ0ItLS0tXCJdPVtFW1wiU1QuSUMuQ09NUE9TSVRFIExPU1NcIl0sRVtcIlNULk0xLkFDQ0lERU5UXCJdXSxJW1wiTy1PLUNDLS0tLVwiXT1bRVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdLEVbXCJTVC5NMS5PVEhFUlwiXV0sSVtcIk8tSS1SLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tSS1TLS0tLS1cIl09W0VbXCJTVC5JQy5TQUZFIEhPVVNFXCJdXSxJW1wiTy1JLUctLS0tLVwiXT1bRVtcIlNULklDLkdSQUZGSVRJXCJdXSxJW1wiTy1JLVYtLS0tLVwiXT1bRVtcIlNULklDLlZBTkRBTElTTS9MT09UL1JBTlNBQ0svUExVTkRFUi9TQUNLXCJdXSxJW1wiTy1JLUktLS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJW1wiTy1JLUQtLS0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5EUlVHXCJdXSxJW1wiTy1JLUYtLS0tLVwiXT1bRVtcIlNULklDLklOVEVSTkFMIFNFQ1VSSVRZIEZPUkNFXCJdXSxJW1wiTy1QLS0tLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl1dLElbXCJPLVAtQS0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuTEVBREVSXCJdXSxJW1wiTy1QLUItLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlRBUkdFVEVEXCJdXSxJW1wiTy1QLUMtLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlRFUlJPUklTVFwiXV0sSVtcIk8tRy0tLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tRy1BLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuRElTUExBQ0VEIFBFUlNPTlMsIFJFRlVHRUVTLCBBTkQgRVZBQ1VFRVNcIl1dLElbXCJPLUctQi0tLS0tXCJdPVtFW1wiU1QuSUMuR1JPVVBcIl0sRVtcIlNULk0xLk5PTkdPVkVSTk1FTlRBTCBPUkdBTklaQVRJT04gKE5HTylcIl1dLElbXCJPLUctQy0tLS0tXCJdPVtFW1wiU1QuSUMuR1JPVVBcIl0sRVtcIlNULk0xLlRFUlJPUklTVFwiXV0sSVtcIk8tRy1ELS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuUkVMSUdJT1VTXCJdXSxJW1wiTy1HLUUtLS0tLVwiXT1bRVtcIlNULklDLkdST1VQXCJdLEVbXCJTVC5NMS5GT1JFSUdOIEZJR0hURVJTXCJdXSxJW1wiTy1HLUYtLS0tLVwiXT1bRVtcIlNULklDLkdST1VQXCJdLEVbXCJTVC5NMS5HQU5HXCJdXSxJW1wiTy1SLS0tLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLlJBUEVcIl1dLElbXCJPLVItQS0tLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuUkFQRVwiXSxFW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdXX19O2Z1bmN0aW9uIFYoSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1cIkhvc3RpbGVcIiE9Q3x8ZT9FLmljb25Db2xvcltDXTpcInJnYigyNTUsIDAsIDApXCIsUz1cIkhvc3RpbGVcIiE9Q3x8ZT9FLmZpbGxDb2xvcltDXTpcInJnYigyNTUsIDAsIDApXCIsTj10Lm51bWJlclNJREMsTz1FLndoaXRlW0NdLEc9e307Zm9yKHZhciBvIGluIEdbXCJUUC5ERVNUUk9ZXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMCw0NSA4NSw0Ni43NSBtIDMwLDE2LjUgODUsNDYuNzUgTSAwLDE1NSA4NSwxMDguMjUgTSAxMTUsOTEuNzUgMjAwLDQ1XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkRcIn1dOnt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDAsMTU1IDIwMCw0NSBNIDAsNDUgMjAwLDE1NVwifSxHW1wiVFAuSU5URVJESUNUXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTk0LjIwMyw2NS42Njc0IDUuNDksLTIwLjQ5MDQgLTIwLjQ5LC01LjQ5MDQgTSAxMTUsOTEuNzUgMjAwLDQ1IE0gMCwxNTUgODUsMTA4LjI1IE0gMTg1LDg1IGwgMTUsMTUgLTE1LDE1IG0gLTcwLC0xNSA4NSwwIG0gLTIwMCwwIDg1LDBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiSVwifV06e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAwLDEwMCAyMDAsMCBNIDAsMTU1IDIwMCw0NS4yIE0gMTg1LDg1IGwgMTUsMTUgLTE1LDE1IG0gOS4yLC00OS4zIDUuNSwtMjAuNSAtMjAuNSwtNS41XCJ9LEdbXCJUUC5ORVVUUkFMSVpFXCJdPVJ8fE4/W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTE1LDEwOC4yNSAyMDAsMTU1IE0gMCw0NSA4NSw5MS43NVwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAxMTUsOTEuNzUgMjAwLDQ1IE0gMCwxNTUgODUsMTA4LjI1XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIk5cIn1dOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDAsNDUgMjAwLDE1NVwifSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAwLDE1NSAyMDAsNDVcIn1dLEdbXCJUUC5TVVBQUkVTU1wiXT1SfHxOP1t7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjEyLDVcIixkOlwiTSAxMTUsMTA4LjI1IDIwMCwxNTUgTSAwLDQ1IDg1LDkxLjc1XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDExNSw5MS43NSAyMDAsNDUgTSAwLDE1NSA4NSwxMDguMjVcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifV06W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMCw0NSAyMDAsMTU1XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDAsMTU1IDIwMCw0NVwifV0sR1tcIlRQLkRBVFVNXCJdPVt7dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLDUwIDAsNTAgNTAsMCBDIDE1MCw3Mi4zODU4IDEyNy42MTQsNTAgMTAwLDUwIFogbSAwLDUwIC01MCwwIGMgMCwyNy42MTQgMjIuMzg1OCw1MCA1MCw1MCB6XCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiVFAuQlJJRUYgQ09OVEFDVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsMCA3MCwwIG0gLTM1LDgwIDAsLTgwIG0gMCwxMDAgLTQ1LC0yMCA5MCwwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4Ojc1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIkJcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEyNSx5OjU1LGZvbnRzaXplOjQ1LHRleHQ6XCJDXCJ9XSxHW1wiVFAuTE9TVCBDT05UQUNUXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSwwIDcwLDAgbSAtMzUsODAgMCwtODAgbSAwLDEwMCAtNDUsLTIwIDkwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6NzUseTo1NSxmb250c2l6ZTo0NSx0ZXh0OlwiTFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTI1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5TSU5LRVJcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDE1IDAsNjUgTSA2MCwxNSA4MCwwIDEwMCwxNSAxMjAsMCAxNDAsMTVcIn0se3R5cGU6XCJwYXRoXCIsZDpcIk0gMTAwLDEwMCA1NSw4MCAxNDUsODAgWlwifV0sR1tcIlRQLlRSSUFMIFRSQUNLXCJdPVt7dHlwZTpcInBhdGhcIixkOlwibSA2NSwwIDcwLDAgbSAtMzUsODAgMCwtODAgbSAwLDEwMCAtNDUsLTIwIDkwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6NzUseTo1NSxmb250c2l6ZTo0NSx0ZXh0OlwiVFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTI1LHk6NTUsZm9udHNpemU6NDUsdGV4dDpcIlRcIn1dLEdbXCJUUC5TT05PQlVPWVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMDAsNjAgbCAwLC0zNSAxMCwxMCAwLC00NVwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjQwfV0sR1tcIlRQLlNPTk9CVU9ZIFBBVFRFUk4gQ0VOVEVSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUFwifV0sR1tcIlRQLlNPTk9CVU9ZIERJRkFSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiRFwifV0sR1tcIlRQLlNPTk9CVU9ZIExPRkFSXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTFwifV0sR1tcIlRQLlNPTk9CVU9ZIENBU1NcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJDXCJ9XSxHW1wiVFAuU09OT0JVT1kgRElDQVNTXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifV0sR1tcIlRQLlNPTk9CVU9ZIEJUXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiQlwifV0sR1tcIlRQLlNPTk9CVU9ZIEFOTVwiXT1bR1tcIlRQLlNPTk9CVU9ZXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dLEdbXCJUUC5TT05PQlVPWSBWTEFEXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiVlwifV0sR1tcIlRQLlNPTk9CVU9ZIEFUQUNcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJUXCJ9XSxHW1wiVFAuU09OT0JVT1kgQkFSUkFcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJCUlwifV0sR1tcIlRQLlNPTk9CVU9ZIEJBVEhZVEhFUk1PR1JBUEggVFJBTlNNSVRUSU5HIFNPTk9CVU9ZIChCVClcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJCXCJ9XSxHW1wiVFAuU09OT0JVT1kgQ09NTUFORCBBQ1RJVkUgTVVMVElCRUFNIFNPTk9CVU9ZIChDQU1CUylcIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJDTVwifV0sR1tcIlRQLlNPTk9CVU9ZIEVYUEVOREFCTEUgUkVMSUFCTEUgQUNPVVNUSUMgUEFUSCBTT05PQlVPWSAoRVJBUFMpXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiRVwifV0sR1tcIlRQLlNPTk9CVU9ZIFJPXCJdPVtHW1wiVFAuU09OT0JVT1lcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl09W0dbXCJUUC5TT05PQlVPWVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9XSxHW1wiVFAuU09OT0JVT1kgRVhQSVJFRFwiXT1bR1tcIlRQLlNPTk9CVU9ZXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNDAsNjAgbCAxMjAsODAgTSA0MCwxNDAgbCAxMjAsLTgwXCJ9XSxHW1wiVFAuU0VBUkNIXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDgwIDIwLDIwIC0yMCwyMCA0MCwwIC0yMCwtMjAgMjAsLTIwIHogTSA1MCwxNTAgMTUwLDUwIE0gNTAsNTAgMTUwLDE1MFwifSxHW1wiVFAuU0VBUkNIIEFSRUFcIl09W0dbXCJUUC5TRUFSQ0hcIl0sUnx8Tj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjYwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJTXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxNDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiU0FcIn1dLEdbXCJUUC5ESVAgUE9TSVRJT05cIl09W0dbXCJUUC5TRUFSQ0hcIl0sUnx8Tj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjYwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJEXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxNDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlBcIn1dOnt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiRElQXCJ9XSxHW1wiVFAuU0VBUkNIIENFTlRFUlwiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIm0gMTAwLDEwMCAtNTAsMTAgMCwtMjAgeiBtIDAsMCAxMCw1MCAtMjAsMCB6IG0gMCwwIDUwLC0xMCAwLDIwIHogbSAwLDAgLTEwLC01MCAyMCwwIHpcIn0sR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNjAsMTYwIDQwLDE2MCA0MCw0MCAxNjAsNDAgWlwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5OQVZJR0FUSU9OQUwgUkVGRVJFTkNFXCJdPSFOJiZSP3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTYwLDE2MCA0MCwxNjAgNDAsNDAgMTYwLDQwIFogTSAxNjAsMTYwIDQwLDQwIE0gNDAsMTYwIDE2MCw0MFwifTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDE2MCwxNjAgNDAsNDAgTSA0MCwxNjAgMTYwLDQwXCJ9LEdbXCJUUC5TUEVDSUFMIFBPSU5UXCJdPVtHW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5BSVJGSUVMRFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAzNSwxMjUgMTY1LDYwIG0gLTEzNSw0MCAxNDAsMFwifV0sR1tcIlRQLkRMUlBcIl09W0dbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIkRcIn1dLEdbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJQXCJ9XSxHW1wiVFAuUFJFLUxBTkRGQUxMIFdBWVBPSU5UXCJdPVtHW1wiVFAuUkVGRVJFTkNFIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIlBMXCJ9XSxHW1wiVFAuTUFSU0hBTEwgUE9JTlRcIl09W0dbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1MCxmb250c2l6ZTo0MCx0ZXh0OlwiTVwifV0sR1tcIlRQLlJFRkVSRU5DRSBQT0lOVCBXQVlQT0lOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJXXCJ9XSxHW1wiVFAuQ09SUklET1IgVEFCXCJdPVtHW1wiVFAuUkVGRVJFTkNFIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTAsZm9udHNpemU6NDAsdGV4dDpcIkNcIn1dLEdbXCJUUC5FTkVNWSBQT0lOVFwiXT1bR1tcIlRQLlJFRkVSRU5DRSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJFTllcIn1dLEdbXCJUUC5QT0lOVCBPRiBJTlRFUkVTVFwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIk0gMTI5LjAyMSw0MS45NTcgQyAxMjEuNDgsNDkuOTQ1OCAxMTAuOTg2LDU0LjQ4MTYgMTAwLDU0LjUgODkuMDQzMiw1NC40OTI4IDc4LjU2OSw0OS45OTE0IDcxLjAyMzQsNDIuMDQ2OSBMIDEwMCwxMDAgWlwifSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjE1LHI6NDB9XSxHW1wiUE9JTlQgT0YgSU5URVJFU1Qg4oCTIExBVU5DSCBFVkVOVFwiXT1bR1tcIlRQLlBPSU5UIE9GIElOVEVSRVNUXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTozMCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwiLHRleHQ6XCJMRVwifV0sR1tcIlRQLlNISVAgQVJFQSBPRiBJTlRFUkVTVCAoQUVHSVMgT05MWSlcIl09e3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0sR1tcIlRQLkFDVElWRSBNQU5PRVVWUkUgQVJFQSAoQUVHSVMgT05MWSlcIl09e3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLHN0cm9rZTpcInJnYigyNTQsMjAzLDQ3KVwiLGN4OjEwMCxjeToxMDAscjo2MH0sR1tcIlRQLlBMQU4gU0hJUFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOlMsc3Ryb2tlOlMsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLHN0cm9rZTpTLGN4OjEwMCxjeToxMDAscjo0NSxmaWxsOiExfV0sR1tcIlRQLkFJTSBQT0lOVFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjM1LGZpbGw6ITF9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjQ1LGZpbGw6ITF9XSxHW1wiVFAuREVGRU5ERUQgQVNTRVRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMzUgMCwtMzAgMjAsMCAwLDMwIG0gLTUwLDAgMCwtNTAgLTEwLDAgMCwtMjAgMjAsMCAwLDEwIDIwLDAgMCwtMTAgMjAsMCAwLDEwIDIwLDAgMCwtMTAgMjAsMCAwLDIwIC0xMCwwIDAsNTAgelwifSxHW1wiVFAuQ0hFTUlDQUwgRVZFTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTEwLDYwIEMgMTEwLDQwIDExNSwyNSA4MCwyMCBNIDkwLDYwIEMgOTAsNDAgODUsMjUgMTIwLDIwIG0gLTIwLDgwIC02MCwtMTEwIDEyMCwwIHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDIwIGMgMTAsMCAxMCwxNSAwLDE1IC0xMCwwIC0xMCwtMTUgMCwtMTUgeiBNIDgwLDM1IGMgMTAsMCAxMCwtMTUgMCwtMTUgLTEwLDAgLTEwLDE1IDAsMTUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzAsdGV4dDpcIkNcIn1dLEdbXCJUUC5DSEVNSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMTAsNjAgQyAxMTAsNDAgMTE1LDI1IDgwLDIwIE0gOTAsNjAgQyA5MCw0MCA4NSwyNSAxMjAsMjAgbSAtMjAsODAgLTYwLC0xMTAgMTIwLDAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMjAgYyAxMCwwIDEwLDE1IDAsMTUgLTEwLDAgLTEwLC0xNSAwLC0xNSB6IE0gODAsMzUgYyAxMCwwIDEwLC0xNSAwLC0xNSAtMTAsMCAtMTAsMTUgMCwxNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozMCx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLEdbXCJUUC5CSU9MT0dJQ0FMIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJCXCJ9XSxHW1wiVFAuQklPTE9HSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxMTAsNjAgQyAxMTAsNDAgMTE1LDI1IDgwLDIwIE0gOTAsNjAgQyA5MCw0MCA4NSwyNSAxMjAsMjAgbSAtMjAsODAgLTYwLC0xMTAgMTIwLDAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMjAsMjAgYyAxMCwwIDEwLDE1IDAsMTUgLTEwLDAgLTEwLC0xNSAwLC0xNSB6IE0gODAsMzUgYyAxMCwwIDEwLC0xNSAwLC0xNSAtMTAsMCAtMTAsMTUgMCwxNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozMCx0ZXh0OlwiQlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODUsZm9udHNpemU6MzAsdGV4dDpcIlRcIn1dLEdbXCJUUC5OVUNMRUFSIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJOXCJ9XSxHW1wiVFAuUkFESU9MT0dJQ0FMIEVWRU5UXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9XSxHW1wiVFAuUkFESU9MT0dJQ0FMIOKAkyBUT1hJQyBJTkRVU1RSSUFMIE1BVEVSSUFMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDExMCw2MCBDIDExMCw0MCAxMTUsMjUgODAsMjAgTSA5MCw2MCBDIDkwLDQwIDg1LDI1IDEyMCwyMCBtIC0yMCw4MCAtNjAsLTExMCAxMjAsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyMCwyMCBjIDEwLDAgMTAsMTUgMCwxNSAtMTAsMCAtMTAsLTE1IDAsLTE1IHogTSA4MCwzNSBjIDEwLDAgMTAsLTE1IDAsLTE1IC0xMCwwIC0xMCwxNSAwLDE1IHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjMwLHRleHQ6XCJSXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4NSxmb250c2l6ZTozMCx0ZXh0OlwiVFwifV0sR1tcIlRQLkRST1AgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzAsMTAwIDAsLTQwIG0gLTYwLDQwIDAsLTQwIG0gNjAsNDAgMCwwIGMgMCw4LjI4NCAtNi43MTYsMTUgLTE1LDE1IC04LjI4NCwwIC0xNSwtNi43MTYgLTE1LC0xNSBtIDAsMCAwLDAgYyAwLDguMjg0IC02LjcxNTcsMTUgLTE1LDE1IC04LjI4NDMsMCAtMTUsLTYuNzE2IC0xNSwtMTUgbSAzMCwtNDAgMCw0MFwifSxHW1wiVFAuRU5UUlkgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMDAsMTAwIDAsLTUwIG0gLTM1LDE1IDM1LDM1IDM1LC0zNSBtIC04NSwzNSAxMDAsMFwifSxHW1wiVFAuQUlSIERFVE9OQVRJT05cIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTUwIDkwLDAgbSAtMzUsLTk1IDUsMjAgMTUsLTEwIDAsMTUgMTUsNSAtMTUsMTAgMTUsMTAgLTE1LDUgNSwxNSAtMjAsLTUgLTUsMjAgLTEwLC0xNSAtMTAsMjAgLTUsLTI1IC0yMCwxMCA1LC0xNSBMIDU1LDEwNSA3MCw5NSA2MCw4NSA3MCw4MCA3MCw2NSA4NSw3NSA5MCw1NSAxMDAsNzAgWlwiLGZpbGw6ITF9LEdbXCJUUC5HUk9VTkQgWkVST1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6ITEsZDpcIk0gMTAwIDI4IEMgMTAwIDI4IDY1LjQzOTggMjkuODI2MSA2MS42NTQzIDU1IEMgNjAuMjgyNiA2NC4xMjEzIDc1LjAxMTUgNzAuNDg4NCA4Mi4yMzYzIDcxLjY1NDMgQyA4OS40NjExIDcyLjgyMDEgOTEuNzI3NyA1NS4zNDYyIDk4LjUwOTggNTYuMDM3MSBMIDkzIDkwIEMgOTMgOTAgNzAgOTAgNjcgOTcgQyA2NS4wMzA0IDEwMS41OTYgMTAwIDEwMCAxMDAgMTAwIEMgMTAwIDEwMCAxMzQuOTcgMTAxLjU5NiAxMzMgOTcgQyAxMzAgOTAgMTA3IDkwIDEwNyA5MCBMIDEwMS40OSA1Ni4wMzcxIEMgMTA4LjI3MiA1NS4zNDYyIDExMC41MzkgNzIuODIwMSAxMTcuNzY0IDcxLjY1NDMgQyAxMjQuOTg4IDcwLjQ4ODQgMTM5LjcxOCA2NC4xMjEzIDEzOC4zNDYgNTUgQyAxMzQuNTYgMjkuODI2MSAxMDAgMjggMTAwIDI4IHpcIn0sR1tcIlRQLkxBVU5DSEVEIFRPUlBFRE8gKEFFR0lTIE9OTFkpXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDE1MCw5MCAwLDIwIG0gLTEwLC0xMCAxMCwwIG0gLTk3LC0xMCA4NCwwIGMgMS42NjIsMCAzLDEuMzM4IDMsMyBsIDAsMTQgYyAwLDEuNjYyIC0xLjMzOCwzIC0zLDMgbCAtODQsMCBjIC0xLjY2MiwwIC0zLC0xLjMzOCAtMywtMyBsIDAsLTE0IGMgMCwtMS42NjIgMS4zMzgsLTMgMywtMyB6XCJ9LEdbXCJUUC5NU0wgREVURUNUIFBPSU5UXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDk1LDEwMCAwLC01NSAtMTAsMCAxNSwtMTUgMTUsMTUgLTEwLDAgMCw1NSBtIC01NSwwIDEwMCwwXCJ9LEdbXCJUUC5BQ09VU1RJQyBDT1VOVEVSIE1FQVNVUkUgKERFQ09ZKVwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDcuNSw1NSA5Mi41NTE4LDcwIDEwNy41LDg1IFogTSA1MCwzMCAxNTAsMzAgbSAtOTAsNzAgMCwtNSA4MCwwIDAsNSB6IG0gNzAsLTQ1IC0xNSwxNSAxNSwxNSB6IE0gODUsNTUgNzAsNzAgODUsODUgWiBtIDE1LC0yNSAwLDMzXCJ9LEdbXCJUUC5FTEVDVFJPTklDIENPVU5URVIgTUVBU1VSRVMgKEVDTSkgREVDT1lcIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDEyMCAtMjAsMTAgMjAsMTAgeiBtIDMwLDAgLTIwLDEwIDIwLDEwIDAsLTIwIHogbSAzMCwwIC0yMCwxMCAyMCwxMCB6IG0gLTI1LC0yMCBjIDAsMTAgLTEwLDE4IC0xOS40LDE0IC05LjQsLTIgLTEzLjgsLTE0LjcgLTgsLTIyLjUgNS4yLC04LjIgMTguNCwtOC43IDI0LjQsLTAuOCAyLDIuNiAzLDUuOSAzLDkuMyB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsNTAgMCwxMDAgMTAwLDAgMCwtMTAwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjgwLGZvbnRzaXplOjMwLHRleHQ6XCJFQ01cIn1dLEdbXCJUUC5JTVBBQ1QgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gNTAsMTAwIDQwLC0xMCAxMCwtNDAgMTAsNDAgNDAsMTAgLTQwLDEwIC0xMCw0MCAtMTAsLTQwIC00MCwtMTBcIn0sR1tcIlRQLlBSRURJQ1RFRCBJTVBBQ1QgUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCIxMiw1XCIsZDpcIm0gNTAsMTAwIDQwLC0xMCAxMCwtNDAgMTAsNDAgNDAsMTAgLTQwLDEwIC0xMCw0MCAtMTAsLTQwIC00MCwtMTBcIn0sR1tcIlRQLkZPUk1BVElPTlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw1MCAwLDEwMCBtIC01MCwtNTAgMTAwLDBcIn0sR1tcIlRQLkhBUkJPUlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDgwLDE0MCA1MCw2MCAxNTAsNjAgMTIwLDE0MFwifSxHW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl09W0dbXCJUUC5IQVJCT1JcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUVwifV0sR1tcIlRQLkhBUkJPUiBQT0lOVCBBXCJdPVtHW1wiVFAuSEFSQk9SXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkFcIn1dLEdbXCJUUC5IQVJCT1IgUE9JTlQgWVwiXT1bR1tcIlRQLkhBUkJPUlwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJZXCJ9XSxHW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl09W0dbXCJUUC5IQVJCT1JcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiWFwifV0sR1tcIlRQLlJPVVRFXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTM4LjQ4NCw3Ni44MiBjIDAsLTcuNDgyMyA2LjA2NiwtMTMuNTQ3OCAxMy41NDgsLTEzLjU0OCA3LjQ4MywtM2UtNCAxMy41NDksNi4wNjUzIDEzLjU0OSwxMy41NDggbSAtMjcuMDk3LDAgMCwwIGMgMCw2Ljk0ODQgLTUuNjM0LDEyLjU4MDcgLTEyLjU4MiwxMi41OCAtNi45NDgsLTRlLTQgLTEyLjU4LC01LjYzMjQgLTEyLjU4LC0xMi41OCBtIC0yNy4wOTcsMCBjIDJlLTQsLTcuNDgyMyA2LjA2NTcsLTEzLjU0NzggMTMuNTQ4LC0xMy41NDggNy40ODMsLTNlLTQgMTMuNTQ5LDYuMDY1MyAxMy41NDksMTMuNTQ4IG0gLTc5LjM1NTQsMCBjIDJlLTQsLTcuNDgyNCA2LjA2NiwtMTMuNTQ4IDEzLjU0ODQsLTEzLjU0OCA3LjQ4MjQsMCAxMy41NDgyLDYuMDY1NiAxMy41NDg0LDEzLjU0OCBtIDI1LjE2MTYsMCAwLDAgQyA4Ni4yMjQ2LDgzLjc2ODEgODAuNTkxOCw4OS40MDAzIDczLjY0MzcsODkuNCA2Ni42OTYsODkuMzk5OCA2MS4wNjM4LDgzLjc2NzcgNjEuMDYzNCw3Ni44MiBtIDc3LjQyMDYsNDcuMzI4IGMgMCwtNy40ODIgNi4wNjYsLTEzLjU0OCAxMy41NDgsLTEzLjU0OCA3LjQ4MywwIDEzLjU0OSw2LjA2NSAxMy41NDksMTMuNTQ4IG0gLTI3LjA5NywwIDAsMCBjIDAsNi45NDggLTUuNjM0LDEyLjU4MSAtMTIuNTgyLDEyLjU4IC02Ljk0OCwwIC0xMi41OCwtNS42MzIgLTEyLjU4LC0xMi41OCBtIC0yNy4wOTcsMCBjIDJlLTQsLTcuNDgyIDYuMDY1NywtMTMuNTQ4IDEzLjU0OCwtMTMuNTQ4IDcuNDgzLDAgMTMuNTQ5LDYuMDY1IDEzLjU0OSwxMy41NDggbSAtNzkuMzU1NCwwIGMgMmUtNCwtNy40ODIgNi4wNjYsLTEzLjU0OCAxMy41NDg0LC0xMy41NDggNy40ODI0LDAgMTMuNTQ4Miw2LjA2NiAxMy41NDg0LDEzLjU0OCBtIDI1LjE2MTYsMCAwLDAgYyAtNGUtNCw2Ljk0OCAtNS42MzMyLDEyLjU4IC0xMi41ODEzLDEyLjU4IC02Ljk0NzcsMCAtMTIuNTc5OSwtNS42MzIgLTEyLjU4MDMsLTEyLjU4IG0gLTI3LjA5NjgsLTIzLjY2NCAxMzIuNTE4NCwwXCJ9LEdbXCJUUC5ST1VURSBSRU5ERVpWT1VTXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlJPVVRFIERJVkVSU0lPTlNcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJEXCJ9XSxHW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJXXCJ9XSxHW1wiVFAuUk9VVEUgUElNXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifV0sR1tcIlRQLlJPVVRFIFBPSU5UIFJcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJQXCJ9XSxHW1wiVFAuUElDS0VUIFJPVVRFXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUEtcIn1dLEdbXCJUUC5QT0lOVCBSIFJPVVRFXCJdPVtHW1wiVFAuUk9VVEVcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE3MCxmb250c2l6ZTo0NSx0ZXh0OlwiUlwifV0sR1tcIlRQLlJFTkRFWlZPVVMgUk9VVEVcIl09W0dbXCJUUC5ST1VURVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTcwLGZvbnRzaXplOjQ1LHRleHQ6XCJSWlwifV0sR1tcIlRQLkFJUiBDT05UUk9MXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTQwLDE2NSAwLC0xMzAgbSAtODAsMCAwLDEzMFwifSxHW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5DT01CQVQgQUlSIFBBVFJPTCAoQ0FQKVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5BSVJCT1JORSBFQVJMWSBXQVJOSU5HIChBRVcpXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiV1wifV0sR1tcIlRQLlRBTktJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9LE58fFI/W106e3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XSxHW1wiVFAuRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlI/XCJBU1dcIjpcIkFTXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkZcIn0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XV0sR1tcIlRQLlJPVEFSWSBXSU5HXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTnx8Uj9be3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjMyLHRleHQ6XCJBU1dcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsODAgMCw0MCA3MCwtNDAgMCw0MCAtNzAsLTQwXCIsc3Ryb2tlOiExfV06W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkhcIn0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9XV0sR1tcIlRQLlNVQ0FQIC0gRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlwiU1VXXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV0sR1tcIlRQLlNVQ0FQIC0gUk9UQVJZIFdJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzIsdGV4dDpcIkFTV1wifSx7dHlwZTpcInBhdGhcIixkOlwibSA2NSw4MCAwLDQwIDcwLC00MCAwLDQwIC03MCwtNDBcIixzdHJva2U6ITF9XSxHW1wiVFAuTUlXIC0gRklYRUQgV0lOR1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo3NSxmb250c2l6ZTozMix0ZXh0OlI/XCJNSVdcIjpcIk1XXCJ9LHt0eXBlOlwicGF0aFwiLGQ6Uj9cIm0gMTAwLDgxLjMyMDMgYyAtMS41MTM1LC0wIC0yLjUzNjUsMi42NDI2IC0yLjUzNjUsMi42NDI2IGwgLTAuMTM2NSwxNC4xNDY1IC0yOC4zNjQxLDI5Ljk5OTYgMC4xNDg0LDQuNjA0IDI4LjUxNjIsLTE4Ljc0OCAtMC4yOTI5LDI0LjQzIC02LjMwNzMsNi4wMTcgLTAuMDk2LDMuNzY2IDguMDMxMywtMy41MjQgMS4wMzEyLDMuMzI2IDAsMC4wMiAwLC0wLjAxIDAsMC4wMSAwLC0wLjAyIDEuMDMxMiwtMy4zMjYgOC4wMzEsMy41MjQgLTAuMDksLTMuNzY2IC02LjMwOSwtNi4wMTcgLTAuMjkzLC0yNC40MyAyOC41MTgsMTguNzQ4IDAuMTQ2LC00LjYwNCAtMjguMzY0LC0yOS45OTk2IC0wLjEzNiwtMTQuMTQ2NSBjIDAsMCAtMS4wMTQsLTIuNjQxNiAtMi41MjgsLTIuNjQyNiB6XCI6XCJNIDgwLDg4LjMgQyA2MCw4MCA2MCwxMjAgODAsMTExLjQgTCAxMDAuMiw5OS45IDEyMCwxMTEuMyBDIDE0MCwxMjAgMTQwLDgwIDEyMCw4OC42IGwgLTE5LjgsMTEuMyB6XCIsc3Ryb2tlOiExfV0sR1tcIlRQLk1JVyAtIFJPVEFSWSBXSU5HXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjMyLHRleHQ6Uj9cIk1JV1wiOlwiTVdcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNjUsODAgMCw0MCA3MCwtNDAgMCw0MCAtNzAsLTQwXCIsc3Ryb2tlOiExfV0sR1tcIlRQLlNUUklLRSBJUFwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiU1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuQ09SUklET1IgVEFCIFBPSU5UXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiQ1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5BSVIgQ09OVFJPTCBSRU5ERVpWT1VTXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ok58fFI/MTE1OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiUlpcIn1dLEdbXCJUUC5DQVAgU1RBVElPTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIkNcIn1dLEdbXCJUUC5BRVcgU1RBVElPTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIldcIn1dLEdbXCJUUC5UQUNBTlwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTpOfHxSPzExNToxNTUsZm9udHNpemU6NDUsdGV4dDpcIlRcIn0sTnx8Uj9bXTp7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC5SRVBMRU5JU0hNRU5UIFNUQVRJT05cIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJSUFwifV0sR1tcIlRQLlRBTktJTkdcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6Tnx8Uj8xMTU6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJLXCJ9XSxHW1wiVFAuVE9NQ0FUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTnx8Uj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJUQ1wifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuUkVTQ1VFXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0sTj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJSU1wifTpSP3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJDXCJ9Olt7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJSXCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV1dLEdbXCJUUC5SRVBMRU5JU0hcIl09W0dbXCJUUC5BSVIgQ09OVFJPTFwiXSxOfHxSP3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJQXCJ9Olt7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTU1LGZvbnRzaXplOjQ1LHRleHQ6XCJGXCJ9LHt0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV1dLEdbXCJUUC5NQVJTSEFMTFwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLE58fFI/e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifTpbe3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1NSxmb250c2l6ZTo0NSx0ZXh0OlwiTVwifSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dXSxHW1wiVFAuVU5NQU5ORUQgQUVSSUFMIFNZU1RFTVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3MCw4NSAzMCwxNSAzMCwtMTUgMCwxNSAtMzAsMTUgLTMwLC0xNSB6XCJ9XSxHW1wiVFAuVlRVQVwiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA3MCw5NSAzMCwxNSAzMCwtMTUgMCwzMCAtMzAsLTE1IC0zMCwxNSB6IG0gMCwtMjUgMzAsMTUgMzAsLTE1IDAsMTUgLTMwLDE1IC0zMCwtMTUgelwifV0sR1tcIlRQLk9SQklUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifV0sR1tcIlRQLk9SQklUIC0gRklHVVJFIEVJR0hUXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJGOFwifV0sR1tcIlRQLk9SQklUIC0gUkFDRSBUUkFDS1wiXT1bR1tcIlRQLkFJUiBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIk9cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE1MCxmb250c2l6ZTo0MCx0ZXh0OlwiUlRcIn1dLEdbXCJUUC5PUkJJVCAtIFJBTkRPTSwgQ0xPU0VEXCJdPVtHW1wiVFAuQUlSIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiT1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTUwLGZvbnRzaXplOjQwLHRleHQ6XCJSQ1wifV0sR1tcIlRQLkFDVElPTiBQT0lOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYwLDQ1IDgwLDAgbSAtNDAsNTUgLTQwLC01NSAwLC0xMDUgODAsMCAwLDEwNSB6XCJ9LEdbXCJUUC5BQ1RJT04gQ0hFQ0sgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQ0tQXCJ9XSxHW1wiVFAuQ09OVEFDVCBQT0lOVFwiXT1OP3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNTAsNTAgMTUwLDUwIDE1MCwxNTAgNTAsMTUwelwifTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwxMDAgMCwtMzUgLTQ1LDAgMCwtNzUgOTAsMCAwLDc1IC00NSwwXCJ9LEdbXCJUUC5DRU5UUkUgT0YgTUFJTiBFRkZPUlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTU1LDEwMCAwLC0zNSBNIDQ1LDEwMCA0NSw2NSBtIDg4LDAgMCwzNSBtIC0yMiwtMzUgMCwzNSBtIC0yMiwtMzUgMCwzNSBtIC0yMiwwIDAsLTM1IG0gLTM3LDcwIDAsLTM1IDE0MCwwIDAsNDBcIn1dLEdbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTM1IDcwLC03MCBtIC03MCwwIDcwLDcwXCJ9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiVFAuREVDSVNJT04gUE9JTlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA5OS45OTk4LDI1LjU4ODYgMTE3LjA2MSw3Ni41MTkyIDE3MC43Nyw3Ny4wMDU0IDEyNy42MDQsMTA4Ljk2OCAxNDMuNzM4LDE2MC4yIDEwMCwxMjkuMDI0IDU2LjI2MjQsMTYwLjIgNzIuMzk2NywxMDguOTY4IDI5LjIzMDYsNzcuMDA1OSA4Mi45NDAzLDc2LjUxOTIgWlwifSxHW1wiVFAuRElTVFJFU1MgQ0FMTFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJTT1NcIn1dLEdbXCJUUC5FTlRSWSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVDXCJ9XSxHW1wiVFAuRkxZLVRPLVBPSU5UIChTT05PQlVPWSlcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiRlRQXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToyMCxmb250c2l6ZTozNSx0ZXh0OlwiU0JZXCJ9XSxHW1wiVFAuRkxZLVRPLVBPSU5UIChXRUFQT04pXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkZUUFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzUsdGV4dDpcIldQTlwifV0sR1tcIlRQLkZMWS1UTy1QT0lOVCAoTk9STUFMKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJGVFBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjIwLGZvbnRzaXplOjM1LHRleHQ6XCJOUk1cIn1dLEdbXCJUUC5BQ1RJT04gTElOS1VQIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkxVXCJ9XSxHW1wiVFAuQUNUSU9OIFBBU1NBR0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUFBcIn1dLEdbXCJUUC5BQ1RJT04gUkFMTFkgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUkxZXCJ9XSxHW1wiVFAuQUNUSU9OIFJFTEVBU0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiUlBcIn1dLEdbXCJUUC5BQ1RJT04gU1RBUlQgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiU1BcIn1dLEdbXCJUUC5BQ1RJT04gQU1ORVNUWSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBTU5cIn1dLEdbXCJUUC5XQVlQT0lOVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gNjUsMTM1IDcwLC03MCBtIC03MCwwIDcwLDcwXCJ9LEdbXCJUUC5DT01CQVRBTlQgU1RBVElPTlwiXT1bR1tcIlRQLldBWVBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiQ0JUXCJ9XSxHW1wiVFAuUElDS0VUIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIlBLVFwifV0sR1tcIlRQLkFTVyBTSElQIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIkFTV1wifV0sR1tcIlRQLlJFUExFTklTSE1FTlQgQVQgU0VBIChSQVMpIFNUQVRJT05cIl09W0dbXCJUUC5XQVlQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NzUseToxMTUsZm9udHNpemU6NDAsdGV4dDpcIlJBU1wifV0sR1tcIlRQLlJFU0NVRSBTVEFUSU9OXCJdPVtHW1wiVFAuV0FZUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4Ojc1LHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJSU0NcIn1dLEdbXCJUUC5TVUJNQVJJTkUgU1RBVElPTlwiXT1bR1tcIlRQLldBWVBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo3NSx5OjExNSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VCXCJ9XSxHW1wiVFAuQVNXIFNVQk1BUklORSBTVEFUSU9OXCJdPVtHW1wiVFAuV0FZUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4Ojc1LHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJBU1cvU1VCXCJ9XSxHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDMwLDYwIDE0MCwwIG0gLTE0MCw4MCAxNDAsMFwifSxHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC4oVVNWKSBDT05UUk9MIFNUQVRJT05cIl09W0dbXCJUUC5TRUEgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsMTE1IDQ1LC0yMCAwLC0xNSAtNDUsMjAgLTQ1LC0yMCAwLDE1IHpcIn1dLEdbXCJUUC4oVVNWKVwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU1LDEwMCA0NSwyMCA0NSwtMjAgMCwxNSAtNDUsMjAgLTQ1LC0yMCB6XCJ9XSxHW1wiVFAuKFJNVikgVVNWIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiUk1WXCJ9XSxHW1wiVFAuVVNWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSBTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC4oVVNWKVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTUsZm9udHNpemU6NDAsdGV4dDpcIk1XXCJ9XSxHW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VXXCJ9XSxHW1wiVFAuVVNWIC0gTUlXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVU1YpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiTUlXXCJ9XSxHW1wiVFAuQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFNVUkZBQ0UgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTVdcIn1dLEdbXCJUUC5OT04tQ09NQkFUQU5UIFNVUkZBQ0UgU1RBVElPTlwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiTkNcIn1dLEdbXCJUUC5TVVcgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJTVVdcIn1dLEdbXCJUUC5NSVcgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJNSVdcIn1dLEdbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJQS1wifV0sR1tcIlRQLlJFTkRFWlZPVVMgQ09OVFJPTCBQT0lOVFwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlpcIn1dLEdbXCJUUC5SRVBMRU5JU0hNRU5UIEFUIFNFQSBTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC5TRUEgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDUsdGV4dDpcIlJBU1wifV0sR1tcIlRQLlJFU0NVRSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJSU1wifV0sR1tcIlRQLlJFUExFTklTSE1FTlQgQ09OVFJPTCBQT0lOVFwiXT1bR1tcIlRQLlNFQSBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSx0ZXh0OlwiUlBcIn1dLEdbXCJUUC5OT05DT01CQVRBTlQgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LHRleHQ6XCJOQ1wifV0sR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzAsMTQwIDE0MCwwXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNFwiLGQ6XCJtIDMwLDYwIDE0MCwwXCJ9XSxHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxNX1dLEdbXCJUUC4oVVVWKSBDT05UUk9MIFNUQVRJT05cIl09W0dbXCJUUC5TVUIgU1VSRkFDRSBDT05UUk9MXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsMTE1IDQ1LC0yMCAwLC0xNSAtNDUsMjAgLTQ1LC0yMCAwLDE1IHpcIn1dLEdbXCJUUC4oVVVWKVwiXT1bR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDU1LDEwMCA0NSwyMCA0NSwtMjAgMCwxNSAtNDUsMjAgLTQ1LC0yMCB6XCJ9XSxHW1wiVFAuVVVWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiQVNXXCJ9XSxHW1wiVFAuTUlORSBXQVJGQVJFIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSBTVUJTVVJGQUNFIFNUQVRJT05cIl09W0dbXCJUUC4oVVVWKVwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTUsZm9udHNpemU6NDAsdGV4dDpcIk1XXCJ9XSxHW1wiVFAuVVVWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiU1VXXCJ9XSxHW1wiVFAuVVVWIC0gTUlXIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLihVVVYpXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5NSxmb250c2l6ZTo0MCx0ZXh0OlwiTUlXXCJ9XSxHW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXT1bR1tcIlRQLlNVQiBTVVJGQUNFIENPTlRST0xcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzMCxmb250c2l6ZTozNSx0ZXh0OlwiU1NcIn0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNzUsOTUgMCwtMjAgNTAsMCAwLDIwIHogbSAyNSwtMzAgMCw0MFwifV0sR1tcIlRQLkFTVyBTVUJNQVJJTkUgQ09OVFJPTCBTVEFUSU9OXCJdPVtHW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTFwiXSx7dHlwZTpcInBhdGhcIixkOlwibSA2OC43NSwxMDUgLTEyLjUsMTIuNSAxMi41LDEyLjUgNjIuNSwwIDEyLjUsLTEyLjUgLTEyLjUsLTEyLjUgeiBNIDc1LDk1IGwgMCwtMjAgNTAsMCAwLDIwIHogbSAyNSwtMzAgMCw0MFwifV0sR1tcIlRQLkFJUiBDT05UUk9MIFBPSU5UIChBQ1ApXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjUwfSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6OTAsZm9udHNpemU6MzAsdGV4dDpcIkFDUFwifV0sR1tcIlRQLkNPTU1VTklDQVRJT05TIENIRUNLUE9JTlRcIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo5MCxmb250c2l6ZTozMCx0ZXh0OlwiQ0NQXCJ9XSxHW1wiVFAuUFVMTC1VUCBQT0lOVFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MTE1LGZvbnRzaXplOjQwLHRleHQ6XCJQVVBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2NSw4MCAwLDQwIDcwLC00MCAwLDQwIHpcIn1dLEdbXCJUUC5ET1dORUQgQUlSQ1JFVyBQSUNLVVAgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6LTM1LHI6MTJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzUsMzUgNTAsMCBtIC0yNSwtNDUgMCw0NSBtIC0zMCwtNzUgMzAsMzAgMzAsLTMwXCJ9XSxHW1wiVFAuRFVNTVkgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDc1LDEwMCBjIDAsNS41MjMgLTQuNDc3MiwxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjI4LDAgMTAsNC40NzcyIDEwLDEwIHogbSA3MCwwIGMgMCw1LjUyMyAtNC40NzcsMTAgLTEwLDEwIC01LjUyMywwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6IG0gLTM1LDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC03MCwtNDAgMCw4MCAxMjAsMCAwLC04MCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTUsMTBcIixkOlwiTSAxNjAsNjAgMTAwLC01IE0gNDAsNjAgMTAwLC01XCJ9XSxHW1wiVFAuVEFSR0VUIFJFRkVSRU5DRVwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDUwLDEwMCAxMDAsMCBtIC01MCwtNTAgMCwxMDBcIn0sR1tcIlRQLk9CU0VSVkFUSU9OIFBPU1QvT1VUUE9TVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCw0NSA0Ny42LDgyLjUgLTk1LjIsMCB6XCJ9LEdbXCJUUC5DT01CQVQgT1VUUE9TVFwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDE0MCwxNDAgMCwtMTIuNSBtIC0xNiwxMi41IDAsLTEyLjUgbSAtMTYsMTIuNSAwLC0xMi41IG0gLTQ4LjAwMDEsMTIuNSAzZS00LC0xMi41IG0gMTUuOTk5MywxMi41IDRlLTQsLTEyLjUwMSBtIDE2LDEyLjUwMSAzZS00LC0xMi41IG0gLTQ2LjQzLC0xMi40OTMgMTAuODI1Niw2LjI1IG0gLTIuODI1NiwtMjAuMTA3IDEwLjgyNTYsNi4yNTEgbSAtMi44MjU3LC0yMC4xMDcxIDEwLjgyNTcsNi4yNTA2IG0gMTMuMTc0MywtNDcuODE5OCAxMC44MjU3LDYuMjUwNiBtIC0xOC44MjUzLDcuNjA1NiAxMC44MjU2LDYuMjUwNiBtIC0xOC44MjYsNy42MDYgMTAuODI1Nyw2LjI1MDYgTSAxMTQuNDMsNDUuNzI1IGwgLTEwLjgyNiw2LjI1IG0gMTguODI2LDcuNjA2NCAtMTAuODI2LDYuMjUgbSAxOC44MjYsNy42MDY0IC0xMC44MjYsNi4yNSBtIDM0LjgyNiwzNS4zMTkyIC0xMC44MjYsNi4yNSBtIDIuODI2LC0yMC4xMDYgLTEwLjgyNiw2LjI1IG0gMi44MjYsLTIwLjEwNjggLTEwLjgyNiw2LjI1IE0gOTkuOTk5OCw0NSBsIDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHpcIn0sR1tcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA1Mi4zNjg3LDEyNy41IDEyMy44MTYsODYuMjQ5OSBNIDk5Ljk5OTgsNDUgbCA0Ny42MzEyLDgyLjUgLTk1LjI2MjMsMCB6XCJ9LEdbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdPVtHW1wiVFAuT0JTRVJWQVRJT04gUE9TVC9SRUNPTk5BSVNTQU5DRVwiXSx7dHlwZTpcInBhdGhcIixkOlwibSAxMTUsMTAwIGMgMCw4LjI4NCAtNi43MTYsMTUgLTE1LDE1IC04LjI4NDMsMCAtMTUsLTYuNzE2IC0xNSwtMTUgMCwtOC4yODQzIDYuNzE1NywtMTUgMTUsLTE1IDguMjg0LDAgMTUsNi43MTU3IDE1LDE1IHpcIn1dLEdbXCJUUC5TRU5TT1IgT1VUUE9TVFwiXT1OP1t7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDk5Ljk5OTgsNDUgbCA0Ny42MzEyLDgyLjUgLTk1LjI2MjMsMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsODAgYyAwLDcuNSAxMi41LDIwIDIwLDIwIC03LjUsMCAtMjAsMTIuNSAtMjAsMjAgMCwtNy41IC0xMi41LC0yMCAtMjAsLTIwIDcuNSwwIDIwLC0xMi41IDIwLC0yMCB6XCJ9XTp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYxLjE3MzgsMTEyLjI1IDIzLjY2MDEsMCBtIDMwLjMzMjEsMCAyMy42NiwwIE0gODAsMTA1IGwgMTAsMTUgMjAsMCAxMCwtMTUgeiBtIDE5Ljk5OTgsLTYwIDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHpcIn0sR1tcIlRQLkNCUk4gT0JTRVJWQVRJT04gUE9TVFwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5OS45OTk4LDQ1IDQ3LjYzMTIsODIuNSAtOTUuMjYyMywwIHogTSA4OCwxMTkgYyAyLjE4MjQsLTEzLjI4OCA3LjcxNTcsLTI0LjIyIDIyLC0yOSBtIDEuODI5LDI5IEMgMTA5LjY2NCwxMDUuNzEyIDEwNC4xNzMsOTQuNzggOTAsOTAgTSA1Mi4zNjg3LDEyNy41IDEyMy44MTYsODYuMjQ5OVwifSx7dHlwZTpcInBhdGhcIixkOlwibSA5MSw5MiBjIDAsMi43NjE0IC0yLjIzODYsNSAtNSw1IC0yLjc2MTQsMCAtNSwtMi4yMzg2IC01LC01IDAsLTIuNzYxNCAyLjIzODYsLTUgNSwtNSAyLjc2MTQsMCA1LDIuMjM4NiA1LDUgeiBtIDI4LjAxMSwwIGMgMCwyLjc2NzggLTIuMjQzLDUuMDExNyAtNS4wMTEsNS4wMTIgLTIuNzY4LC0zZS00IC01LjAxMSwtMi4yNDQyIC01LjAxMSwtNS4wMTIgMCwtMi43Njc2IDIuMjQzLC01LjAxMTIgNS4wMTEsLTUuMDExNSAyLjc2OCwzZS00IDUuMDExLDIuMjQzOSA1LjAxMSw1LjAxMTUgelwifV0sR1tcIlRQLlBPSU5UIE9GIERFUEFSVFVSRVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJQRFwifV0sR1tcIlRQLkZJWEVEIEFORCBQUkVGQUJSSUNBVEVEXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDYwLDEwMCA0MCwtNjUgNDAsNjUgelwifSxHW1wiVFAuVEVUUkFIRURST05TXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjAsMTAwIDQwLC02NSA0MCw2NVwifSxHW1wiVFAuVEVUUkFIRURST05TIE1PVkFCTEVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA2MCwxMDAgNDAsLTY1IDQwLDY1IHpcIn0sR1tcIlRQLkJPT0JZIFRSQVBcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA3Ny4yNDEzLDg3LjkzMTEgMTAwLDUwIDEyMi43ODEsODcuOTY4NyBNIDEzMCwxMDAgYyAwLDEwLjI0IC0xMy40MzEsMTguNTQxIC0zMCwxOC41NDEgLTE2LjU2ODUsMCAtMzAsLTguMzAxIC0zMCwtMTguNTQxIDAsLTEwLjIzOTkgMTMuNDMxNSwtMTguNTQxIDMwLC0xOC41NDEgMTYuNTY5LDAgMzAsOC4zMDExIDMwLDE4LjU0MSB6XCJ9LEdbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTI5LDEwMCBjIDAsMTYuMDE2IC0xMi45ODQsMjkgLTI5LDI5IC0xNi4wMTYzLDAgLTI5LC0xMi45ODQgLTI5LC0yOSAwLC0xNi4wMTYzIDEyLjk4MzcsLTI5IDI5LC0yOSAxNi4wMTYsMCAyOSwxMi45ODM3IDI5LDI5IHpcIn0sR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXT17dHlwZTpcInBhdGhcIixkOlwibSAxMjksMTAwIGMgMCwxNi4wMTYgLTEyLjk4NCwyOSAtMjksMjkgLTE2LjAxNjMsMCAtMjksLTEyLjk4NCAtMjksLTI5IDAsLTE2LjAxNjMgMTIuOTgzNywtMjkgMjksLTI5IDE2LjAxNiwwIDI5LDEyLjk4MzcgMjksMjkgelwifSxHW1wiVFAuKEFUKSBBTlRJSEFORExJTkcgREVWSUNFXCJdPVtHW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDEzMCAwLDY1IDE1LC0xNVwifV0sR1tcIlRQLihBVCkgRElSRUNUSU9OQUxcIl09W0dbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCI1LDVcIixkOlwibSAxMDAsNzAgMCwtNjBcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwyMCAxMCwtMTAgMTAsMTBcIn1dLEdbXCJUUC5BTlRJUEVSU09OTkVMIChBUCkgTUlORVNcIl09W0dbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1MCw1MCAyOS41LDI5LjUgbSA0MSwwIEwgMTUwLDUwXCJ9XSxHW1wiVFAuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUU1wiXT1bR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEzMSwxMDAgMTAsMCBNIDUwLDUwIDc5LjUsNzkuNSBtIDQxLDAgTCAxNTAsNTAgbSAtNCw1MCAxMCwwIG0gNSwwIDEwLDAgbSAtMTAsLTEwIDEwLDEwIC0xMCwxMFwifV0sR1tcIlRQLldJREUgQVJFQSBNSU5FU1wiXT1bR1tcIlRQLkFOVElUQU5LIE1JTkUgKEFUKVwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDUwLDExMCAyNSw0MCAxMiwtMjQgTSAxMTMsMTI2IDEyNSwxNTAgMTUwLDExMFwifV0sR1tcIlRQLlBMQU5ORUQgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjE1LDE1XCIsZDpcIm0gNDAsNjUgMCw3MCAxMjAsMCAwLC03MCB6XCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzUsMTAwIGMgMCw1LjUyMyAtNC40NzcyLDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMjgsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIDcwLDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIzLDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NywtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHogbSAtMzUsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6XCJ9XSxHW1wiVFAuTUlORUZJRUxEUyBTVEFUSUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA0MCw2NSAwLDcwIDEyMCwwIDAsLTcwIHogbSA3MCwzNSBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6IG0gMzUsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjMsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3LC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC03MCwwIGMgMCw1LjUyMyAtNC40NzcyLDEwIC0xMCwxMCAtNS41MjI4LDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMjgsMCAxMCw0LjQ3NzIgMTAsMTAgelwifSxHW1wiVFAuTUlORUZJRUxELCBTVEFUSUNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAyNSw2NSAwLDcwIDE1MCwwIDAsLTcwIHpcIn0sdC5ub3RwcmVzZW50JiYoR1tcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdPUdbXCJUUC5QTEFOTkVEIE1JTkVGSUVMRFwiXSksR1tcIlRQLkFOVElUQU5LIChBVCkgTUlORUZJRUxEXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDQwLDY1IDAsNzAgMTIwLDAgMCwtNzAgelwifSx7dHlwZTpcInBhdGhcIixkOlwibSA3NSwxMDAgYyAwLDUuNTIzIC00LjQ3NzIsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3MiwtMTAgMTAsLTEwIDUuNTIyOCwwIDEwLDQuNDc3MiAxMCwxMCB6IG0gNzAsMCBjIDAsNS41MjMgLTQuNDc3LDEwIC0xMCwxMCAtNS41MjMsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3LC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIC0zNSwwIGMgMCw1LjUyMyAtNC40NzcsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3IC0xMCwtMTAgMCwtNS41MjI4IDQuNDc3MiwtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHpcIn1dLEdbXCJUUC5TQ0FUVEVSQUJMRSBNSU5FU1wiXT1bR1tcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiU1wifV0sR1tcIlRQLkFOVElQRVJTT05ORUwgKEFQKSBNSU5FRklFTERcIl09W3t0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiK1NcIn0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA0MCw2NSAwLDcwIDEyMCwwIDAsLTcwIHpcIn0se3R5cGU6XCJwYXRoXCIsZDpcIk0gNzIuMDcwMyw5Mi45Mjk3IDgwLDgyLjM2MjIgbSAtMzAsMCA3LjkyOTcsMTAuNTY3NSBtIDQ5LjE0MDMsMCA3LjkzLC0xMC41Njc1IG0gLTMwLDAgNy45Mjk3LDEwLjU2NzUgbSA0OS4xNDAzLDAgNy45MywtMTAuNTY3NSBtIC0zMCwwIDcuOTMsMTAuNTY3NSBNIDExMCwxMDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjMsMCAxMCw0LjQ3NzIgMTAsMTAgeiBtIDM1LDAgYyAwLDUuNTIzIC00LjQ3NywxMCAtMTAsMTAgLTUuNTIzLDAgLTEwLC00LjQ3NyAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NywtMTAgMTAsLTEwIDUuNTIzLDAgMTAsNC40NzcyIDEwLDEwIHogbSAtNzAsMCBjIDAsNS41MjMgLTQuNDc3MiwxMCAtMTAsMTAgLTUuNTIyOCwwIC0xMCwtNC40NzcgLTEwLC0xMCAwLC01LjUyMjggNC40NzcyLC0xMCAxMCwtMTAgNS41MjI4LDAgMTAsNC40NzcyIDEwLDEwIHpcIn1dLEdbXCJUUC5TQ0FUVEVSQUJMRSBNSU5FRklFTEQgV0lUSCBTRUxGLURFU1RSVUNUXCJdPVtHW1wiVFAuQU5USVRBTksgKEFUKSBNSU5FRklFTERcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjYwLGZvbnRzaXplOjM1LHRleHQ6XCJTXCJ9XSxHW1wiVFAuVk9MQ0FOTyBNSU5FRklFTERcIl09W0dbXCJUUC5BTlRJVEFOSyAoQVQpIE1JTkVGSUVMRFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NjAsZm9udHNpemU6MzUsdGV4dDpcIlZcIn1dLEdbXCJUUC5UT1dFUiBMT1dcIl09W3t0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeToxMDAscjo3fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gNzUsMTA1IDI1LC02NSAyNSw2NVwifV0sR1tcIlRQLlRPV0VSIEhJR0hcIl09W3t0eXBlOlwiY2lyY2xlXCIsc3Ryb2tlOiExLGN4OjEwMCxjeToxMDAscjo3fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZXdpZHRoOjgsZDpcIm0gMTAwLDQwIGMgMi4zNTgsMzEuNjc1NCA3LjE2Miw1OS4yNTMxIDI1LDY0Ljk5OSBNIDEwMCw0MCBjIC0yLjM1OCwzMS42NzU0IC03LjE2MjQsNTkuMjUzMSAtMjUsNjVcIn1dLEdbXCJUUC5FTkdJTkVFUiBSRUdVTEFUSU5HIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVSUFwifV0sR1tcIlRQLkVBUlRIV09SSy9GT1JUSUZJQ0FUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDY1LDY1IDAsNzAgNzAsMCAwLC03MCAtNzAsMHpcIn0sR1tcIlRQLkZPUlRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzUsNjUgMTUsLTE1IG0gLTE1LDg1IDE1LDE1IE0gNjUsMTM1IDUwLDE1MCBtIDE1LC04NSAwLDcwIDcwLDAgMCwtNzAgLTcwLDAgLTE1LC0xNVwifSxHW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSwxMzUgMTUsMCBtIC0xMDAsMCAxNSwwIG0gMCwtNzAgMCw3MCA3MCwwIDAsLTcwIC03MCwwXCJ9LEdbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDEzNSw2NSAxNSwwIG0gLTEwMCwwIDE1LDAgbSAwLDcwIDAsLTcwIDcwLDAgMCw3MCAtNzAsMFwifSxHW1wiVFAuTlVDTEVBUiBERVRPTkFUSU9OUyBHUk9VTkQgWkVST1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohZSYmXCJyZ2IoMjU1LDI1NSwwKVwiLGQ6XCJtIDg1LDI1IDAsNzUgMzAsMCAwLC03NSBtIC01MCwwIGMgMCwtNTAgNzAsLTUwIDcwLDAgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzUsdGV4dDpcIk5cIn1dLEdbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPIFBMQU5ORURcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjUsNVwiLGZpbGw6IWUmJlwicmdiKDI1NSwyNTUsMClcIixkOlwibSA4NSwyNSAwLDc1IDMwLDAgMCwtNzUgbSAtNTAsMCBjIDAsLTUwIDcwLC01MCA3MCwwIHpcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Ojc1LGZvbnRzaXplOjM1LHRleHQ6XCJOXCJ9XSxHW1wiVFAuTlVDTEVBUiBGQUxMT1VUIFBST0RVQ0lOR1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjAsODUgLTE1LDE1IG0gLTI1LDAgNDAsLTM1IE0gODAsODAgMTIwLDQwIE0gODAsNTUgMTE1LDI1IE0gODAsNDAgOTUsMjUgbSAtNDAsMCBjIDAsLTYwIDkwLC02MCA5MCwwIHogbSAyNSwwIDAsNzUgNDAsMCAwLC03NVwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NzUsZm9udHNpemU6MzUsdGV4dDpcIk5cIn1dLEdbXCJUUC5SRUxFQVNFIEVWRU5UUyBCSU9MT0dJQ0FMXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiFlJiZcInJnYigyNTUsMjU1LDApXCIsZDpcIm0gODUsLTE1IDAsNjAgLTI1LDU1IDgwLDAgLTI1LC01NSAwLC02MCB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4NSxmb250c2l6ZTozNSx0ZXh0OlwiQlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiQklPXCJ9XSxHW1wiVFAuUkVMRUFTRSBFVkVOVFMgQ0hFTUlDQUxcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6IWUmJlwicmdiKDI1NSwyNTUsMClcIixkOlwibSA4NSwtMTUgMCw1OS4wNjI1IEMgNzUuNzMxMyw0OS40MTM3IDcwLjAxNTQsNTkuMjk3NSA3MCw3MCBjIDAsMTYuNTY4NSAxMy40MzE1LDMwIDMwLDMwIDE2LjU2OSwwIDMwLC0xMy40MzE1IDMwLC0zMCAtMC4wMSwtMTAuNzA2NyAtNS43MjgsLTIwLjU5NTkgLTE1LC0yNS45NDkyIEwgMTE1LC0xNSBaXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo4MCxmb250c2l6ZTozNSx0ZXh0OlwiQ1wifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNSx0ZXh0OlwiQ01MXCJ9XSxHW1wiVFAuREVDT04gU0lURS9QT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn1dLEdbXCJUUC5BTFRFUk5BVEUgREVDT04gU0lURS9QT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjAsZm9udHNpemU6MzUsdGV4dDpcIkFMVFwifV0sR1tcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRST09QUylcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJUXCJ9XSxHW1wiVFAuREVDT04gU0lURS9QT0lOVCAoRVFVSVBNRU5UKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjM1LHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjAsZm9udHNpemU6MzUsdGV4dDpcIkVcIn1dLEdbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJFL1RcIn1dLEdbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChPUEVSQVRJT05BTCBERUNPTlRBTUlOQVRJT04pXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MCxmb250c2l6ZTozNSx0ZXh0OlwiT1wifV0sR1tcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRIT1JPVUdIIERFQ09OVEFNSU5BVElPTilcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozNSx0ZXh0OlwiRENOXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTowLGZvbnRzaXplOjM1LHRleHQ6XCJUSFwifV0sR1tcIlRQLk1BSU4gRVFVSVBNRU5UIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzAsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTEwLGZvbnRzaXplOjI1LHRleHQ6XCIoTSlcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzLGZvbnRzaXplOjI1LHRleHQ6XCJFXCJ9XSxHW1wiVFAuRk9SV0FSRCBUUk9PUCBERUNPTlRBTUlOQVRJT04gUE9JTlQvU0lURVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTMwLGZvbnRzaXplOjMwLHRleHQ6XCJEQ05cIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0xMCxmb250c2l6ZToyNSx0ZXh0OlwiKEYpXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMyxmb250c2l6ZToyNSx0ZXh0OlwiVFwifV0sR1tcIlRQLldPVU5ERUQgUEVSU09OTkVMIERFQ09OVEFNSU5BVElPTiBTSVRFXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMzAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MCxmb250c2l6ZTozNSx0ZXh0OlwiV1wifV0sR1tcIlRQLkFNQlVMQU5DRSBDT05UUk9MIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkFDUFwifV0sR1tcIlRQLkFNQlVMQU5DRSBMT0FEIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkFMUFwifV0sR1tcIlRQLkFNQlVMQU5DRSBSRUxBWSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBUlBcIn1dLEdbXCJUUC5ERUNPTiBQT0lOVCAoTUFJTikgRVFVSVBNRU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsdGV4dDpcIihNKUVcIn1dLEdbXCJUUC5ERUNPTiBQT0lOVCAoRk9SV0FSRCkgVFJPT1BTXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRDTlwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsdGV4dDpcIihGKVRcIn1dLEdbXCJUUC5QT0lOVC9TSU5HTEUgVEFSR0VUXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsMTAwIDEwMCwwIG0gLTUwLC01MCAwLDEwMFwifSxHW1wiVFAuS05PV04gUE9JTlRcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsMTAwIDEwMCwwIG0gLTUwLC01MCAwLDEwMFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTAseTo4MCxmb250c2l6ZTozMCx0ZXh0OlwiS05QXCJ9XSxHW1wiVFAuTlVDTEVBUiBUQVJHRVRcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCwxMDAgLTQwLDAgbSA1MCwxMCAwLDQwIG0gMTAsLTUwIDQwLDAgbSAtNTAsLTEwIDAsLTQwIG0gMi41LDUwIGMgMCwxLjM4MSAtMS4xMTksMi41IC0yLjUsMi41IC0xLjM4MDcsMCAtMi41LC0xLjExOSAtMi41LC0yLjUgMCwtMS4zODA3IDEuMTE5MywtMi41IDIuNSwtMi41IDEuMzgxLDAgMi41LDEuMTE5MyAyLjUsMi41IHpcIn0sR1tcIlRQLlRBUkdFVFJFQ09SREVEIChBRUdJUyBPTkxZKVwiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAwLDUwIDAsMTAwIDIwMCwwIDAsLTEwMCB6XCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMDAsOTAgLTEwLDEwIDEwLDEwIDEwLC0xMCB6XCJ9XSxHW1wiVFAuRklSRSBTVVBQT1JUIFNUQVRJT05cIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNTAsNTAgMTUwLDE1MCBNIDUwLDE1MCAxNTAsNTBcIn0sTj97dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcImxlZnRcIix4OjEyMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiRlNTXCJ9OltdXSxHW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiU0NQXCJ9XSxHW1wiVFAuRklSSU5HIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkZQXCJ9XSxHW1wiVFAuUkVMT0FEIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlJMUFwifV0sR1tcIlRQLkhJREUgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiSFBcIn1dLEdbXCJUUC5MQVVOQ0ggUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiTFBcIn1dLEdbXCJUUC5BTUJVTEFOQ0UgRVhDSEFOR0UgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQVhQXCJ9XSxHW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkNBTlwifV0sR1tcIlRQLkNBU1VBTFRZIENPTExFQ1RJT04gUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQ0NQXCJ9XSxHW1wiVFAuQ0lWSUxJQU4gQ09MTEVDVElPTiBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJDSVZcIn1dLEdbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkRFVFwifV0sR1tcIlRQLkVQVyBDT0xMRUNUSU9OIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkVQV1wifV0sR1tcIlRQLkxPR0lTVElDUyBSRUxFQVNFIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIkxSUFwifV0sR1tcIlRQLk1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiTUNQXCJ9XSxHW1wiVFAuTUVESUNBTCBFVkFDVUFUSU9OIChNRURFVkFDKSBQSUNLVVAgUE9JTlRcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0zMCxmb250c2l6ZTozMCx0ZXh0OlwiTUVQXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSA5NSwtMjUgMCwxMCAtMTAsMCAwLDEwIDEwLDAgMCwxMCAxMCwwIDAsLTEwIDEwLDAgMCwtMTAgLTEwLDAgMCwtMTAgelwifV0sR1tcIlRQLlJFQVJNLCBSRUZVRUwgQU5EIFJFU1VQUExZIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlIzUFwifV0sR1tcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJST01cIn1dLEdbXCJUUC5UUkFGRklDIENPTlRST0wgUE9TVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJUQ1BcIn1dLEdbXCJUUC5UUkFJTEVSIFRSQU5TRkVSIFBPSU5UXCJdPVtHW1wiVFAuQUNUSU9OIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzUsdGV4dDpcIlRUUFwifV0sR1tcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjI1LHRleHQ6XCJVTUNQXCJ9XSxHW1wiVFAuU1VQUExZIFBPSU5UXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjAsMzAgODAsMCBtIC04MCwxNSA4MCwwIG0gLTQwLDU1IC00MCwtNTUgMCwtMTA1IDgwLDAgMCwxMDUgelwifSxHW1wiVFAuTkFUTyBDTEFTUyBJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6NDUsdGV4dDpcIklcIn1dLEdbXCJUUC5OQVRPIENMQVNTIElJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6NDUsdGV4dDpcIklJXCJ9XSxHW1wiVFAuTkFUTyBDTEFTUyBJSUlcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTo0NSx0ZXh0OlwiSUlJXCJ9XSxHW1wiVFAuTkFUTyBDTEFTUyBJVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjQ1LHRleHQ6XCJJVlwifV0sR1tcIlRQLk5BVE8gQ0xBU1MgVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLC0xMCA0MCwwIG0gLTMyLDAgMCwtMjYuNyBjIDAsLTE3LjggMjQsLTE3LjggMjQsMCBMIDExMiwtMTBcIn1dLEdbXCJUUC5TUCBDTEFTUyBJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTE1LC01MCBjIC00NSw1IC00NSw2NSAwLDcwIC0yMCwtMjUgLTIwLC01MCAwLC03MCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSUlcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsc3Ryb2tlOiExLGQ6XCJtIDEwMS4xNDMsMy45MTYwMiBxIDMuNjYyLC0wLjI2MzY4IDQuNzQ2LC0xLjA4Mzk5IDEuMDg0LC0wLjg0OTYxIDEuMDg0LC00LjMzNTk0IGwgMCwtMjYuNjg5NDkgcSAwLC0zLjMxMDUgLTEuMDg0LC00LjI0OCAtMS4wODQsLTAuOTY2OCAtNC43NDYsLTEuMTQyNiBsIDAsLTEuMTEzMyAxNy43NTMsMCAwLDEuMTEzMyBxIC0zLjY2MiwwLjE3NTggLTQuNzQ2LDEuMTQyNiAtMS4wODQsMC45Mzc1IC0xLjA4NCw0LjI0OCBsIDAsMjYuNjg5NDkgcSAwLDMuNDg2MzMgMS4wODQsNC4zMzU5NCAxLjA4NCwwLjgyMDMxIDQuNzQ2LDEuMDgzOTkgbCAwLDEuMDgzOTggLTE3Ljc1MywwIDAsLTEuMDgzOTggeiBtIDguODc3LC0zOC42MTMzMiAwLDAgeiBNIDgxLjEwMzUsMy45MTYwMiBxIDMuNjYyMSwtMC4yNjM2OCA0Ljc0NjEsLTEuMDgzOTkgMS4wODQsLTAuODQ5NjEgMS4wODQsLTQuMzM1OTQgbCAwLC0yNi42ODk0OSBxIDAsLTMuMzEwNSAtMS4wODQsLTQuMjQ4IC0xLjA4NCwtMC45NjY4IC00Ljc0NjEsLTEuMTQyNiBsIDAsLTEuMTEzMyAxNy43NTM5LDAgMCwxLjExMzMgcSAtMy42NjIxLDAuMTc1OCAtNC43NDYxLDEuMTQyNiAtMS4wODQsMC45Mzc1IC0xLjA4NCw0LjI0OCBsIDAsMjYuNjg5NDkgcSAwLDMuNDg2MzMgMS4wODQsNC4zMzU5NCAxLjA4NCwwLjgyMDMxIDQuNzQ2MSwxLjA4Mzk5IGwgMCwxLjA4Mzk4IC0xNy43NTM5LDAgMCwtMS4wODM5OCB6IG0gOC44NzcsLTM4LjYxMzMyIDAsMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSUlJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDIwIDAsLTMwIC0yMCwtNDAgNDAsMCAtMjAsNDBcIn1dLEdbXCJUUC5TUCBDTEFTUyBJVlwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEwMCwtNDAgMCwyMCBtIC0yNSwxMCAwLC0zMCA1MCwwIDAsMzBcIn1dLEdbXCJUUC5TUCBDTEFTUyBWXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODAsMTUgMCwtNTAgYyAwLC0yMCA0MCwtMjAgNDAsMCBsIDAsNTAgbSAtNTAsMCA2MCwwXCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3NSwtMjAgNTAsMCBtIC0yNSwxNSAxNSwyNSBtIC0xNSwtNTAgMCwyNSAtMjAsMjUgbSAzMCwtNjAgYyAwLDUuNTIyOCAtNC40NzcsMTAgLTEwLDEwIC01LjUyMjgsMCAtMTAsLTQuNDc3MiAtMTAsLTEwIDAsLTUuNTIyOCA0LjQ3NzIsLTEwIDEwLC0xMCA1LjUyMywwIDEwLDQuNDc3MiAxMCwxMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklJXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODUsLTI1IGMgMTAsLTEwIDIwLC0xMCAzMCwwXCJ9LHt0eXBlOlwicGF0aFwiLGQ6XCJtIDEyOS42LC0yMCBjIDAsNS4zMDE5IC00LjI5OCw5LjU5OTkgLTkuNiw5LjU5OTggLTUuMzAyLDEwZS01IC05LjYsLTQuMjk3OSAtOS42LC05LjU5OTggMCwtNS4zMDE5IDQuMjk4LC05LjU5OTkgOS42LC05LjU5OTggNS4zMDIsLTFlLTQgOS42LDQuMjk3OSA5LjYsOS41OTk4IHogbSAtNDAuNDg4NiwwIGMgMCw1LjAzMjEgLTQuMDc5Myw5LjExMTQgLTkuMTExNCw5LjExMTQgLTUuMDMyMSwwIC05LjExMTQsLTQuMDc5MyAtOS4xMTE0LC05LjExMTQgMCwtNS4wMzIxIDQuMDc5MywtOS4xMTE0IDkuMTExNCwtOS4xMTE0IDUuMDMyMSwwIDkuMTExNCw0LjA3OTMgOS4xMTE0LDkuMTExNCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgVklJSVwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDYwLC0xNSA4MCwwIG0gLTQwLC00NSAwLDkwXCJ9XSxHW1wiVFAuU1AgQ0xBU1MgSVhcIl09W0dbXCJUUC5TVVBQTFkgUE9JTlRcIl0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMjEuMjEzLC0zNi4yMTMyIC03LjA4LDcuMDgwMiBNIDg1Ljg2NjksLTAuODY2OTgyIDc4Ljc4NjgsNi4yMTMyIG0gMCwtNDIuNDI2NCA3LjA4MDEsNy4wODAyIG0gMjguMjY2MSwyOC4yNjYwMTggNy4wOCw3LjA4MDE4MiBNIDEwMCwtNDUgbCAwLDEwIG0gMCw0MCAwLDEwIG0gLTMwLC0zMCAxMCwwIG0gNDAsMCAxMCwwIG0gLTEwLDAgYyAwLDExLjA0NTY5IC04Ljk1NCwyMCAtMjAsMjAgLTExLjA0NTcsMCAtMjAsLTguOTU0MzEgLTIwLC0yMCAwLC0xMS4wNDU3IDguOTU0MywtMjAgMjAsLTIwIDExLjA0NiwwIDIwLDguOTU0MyAyMCwyMCB6XCJ9XSxHW1wiVFAuU1AgQ0xBU1MgWFwiXT1bR1tcIlRQLlNVUFBMWSBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTEwLGZvbnRzaXplOjQwLHRleHQ6XCJDQVwifV0sR1tcIlRQLk1FRElDQUwgU1VQUExZIFBPSU5UXCJdPVtHW1wiVFAuU1VQUExZIFBPSU5UXCJdLHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLC0yMCAwLC00MCBtIC00MCwyNSA4MCwwXCJ9XSxHW1wiVFAuQU1NVU5JVElPTiBTVVBQTFkgUE9JTlQgKEFTUClcIl09W0dbXCJUUC5BQ1RJT04gUE9JTlRcIl0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNSx0ZXh0OlwiQVNQXCJ9XSxHW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXT1bR1tcIlRQLkFDVElPTiBQT0lOVFwiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LHRleHQ6XCJBVFBcIn1dLEdbXCJUUC5UQVJHRVQgSEFORE9WRVJcIl09W3t0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjEwLDVcIixmaWxsOiExLGQ6XCJtIDEwMCw0NSAtMTUsNDAgLTQwLDE1IDQwLDE1IDE1LDQwIDE1LC00MCA0MCwtMTUgLTQwLC0xNSB6XCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTAsZm9udHNpemU6MzAsdGV4dDpcIlRIXCJ9XSxHW1wiVFAuS0VZIFRFUlJBSU5cIl09W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDE0NSwxMDAgYSA0NSw0NSAwIDAgMSAtNDUsNDUgNDUsNDUgMCAwIDEgLTQ1LC00NSA0NSw0NSAwIDAgMSA0NSwtNDUgNDUsNDUgMCAwIDEgNDUsNDUgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6ODAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIktcIixmaWxsOk99XSxHW1wiVFAuQlQgQk9VWSBEUk9QXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDY1LDQ1IDAsMTEwIDcwLDAgMCwtMTEwIG0gLTM1LDk1IDAsLTk1IG0gLTM1LDAgNzAsMFwifSx7dHlwZTpcInBhdGhcIixkOlwibSAxMDQsMTAwIGMgMCwyIC0zLDIgLTQuOCwyIC0xLjQsMCAtNC4xLC0xIC0yLjcsLTIuOSAxLjksLTEuNCA0LjUsLTEuNCA2LjUsLTAuNCAxLDAuMyAxLDAuNyAxLDEuMyB6IG0gMCw0MCBjIDAsMiAtMywyIC00LjgsMiAtMS40LDAgLTQuMSwtMSAtMi43LC0zIDEuOSwtMSA0LjUsLTEgNi41LDAgMSwwIDEsMCAxLDEgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6ODAseToxMTAsZm9udHNpemU6MzUsdGV4dDpcIkJcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEyMCx5OjExMCxmb250c2l6ZTozNSx0ZXh0OlwiVFwifV0sR1tcIlRQLlJFUE9SVEVEIEJPVFRPTUVEIFNVQlwiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDEyOSwxMjIuNCA3MC45LDc4LjggbSAwLDQzLjYgNTguMSwtNDMuNiBtIC04MCwtMTQuNSAwLDQzLjYgMjksMCAwLDI5IDQzLjYsMCAwLC0yOSAyOSwwIDAsLTQzLjZcIn0sR1tcIlRQLk1PVklORyBIQVZFTlwiXT17dHlwZTpcInBhdGhcIixkOlwiTSAxMDguMTQyLDEwMCBBIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDAsMTA4LjE0MiA4LjE0MTY3LDguMTQxNjcgMCAwIDEgOTEuODU4MywxMDAgOC4xNDE2Nyw4LjE0MTY3IDAgMCAxIDEwMCw5MS44NTgzIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDguMTQyLDEwMCBaIE0gNDUsNTUgbCAwLDkwIG0gMTEwLC05MCAwLDkwIG0gLTExMCwtNDUgMTEwLDBcIn0sR1tcIlRQLlNDUkVFTiBDRU5UUkVcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTAwLDU1IDAsOTAgbSA4LjE0MiwtNDUgQSA4LjE0MTY3LDguMTQxNjcgMCAwIDEgMTAwLDEwOC4xNDIgOC4xNDE2Nyw4LjE0MTY3IDAgMCAxIDkxLjg1ODMsMTAwIDguMTQxNjcsOC4xNDE2NyAwIDAgMSAxMDAsOTEuODU4MyA4LjE0MTY3LDguMTQxNjcgMCAwIDEgMTA4LjE0MiwxMDAgWlwifSxHW1wiVFAuU0hPUkUgQ09OVFJPTCBTVEFUSU9OXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzAsMTU1IDE0MCwwIG0gLTI3LC0yMCAyLC0xMCAtMTAsNSBtIC03OCw1IC0yLC0xMCAxMCw1IG0gMzUsLTU1IDAsNjggbSA3LjUsLTc2IEEgNy41LDcuNSAwIDAgMSAxMDAsNzQuNSA3LjUsNy41IDAgMCAxIDkyLjUsNjcgNy41LDcuNSAwIDAgMSAxMDAsNTkuNSA3LjUsNy41IDAgMCAxIDEwNy41LDY3IFogbSAtNTIuNSw4IDkwLDAgbSAtOTAsNTAgYyAxNSwyNSA3NSwyNSA5MCwwIE0gNDAsNDUgNTAsNTUgNjAsNDUgNzAsNTUgODAsNDUgbCAxMCwxMCAxMCwtMTAgMTAsMTAgMTAsLTEwIDEwLDEwIDEwLC0xMCAxMCwxMCAxMCwtMTBcIn0sR1tcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTQ1LDEyMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIC03NSwxNSAxNSwtMTUgbSAxNSwxNSAtMTUsLTE1IG0gMTAsMTAgMjUsLTMwIC0xMCwtMTAgMTAsLTEwIDIwLDIwIC0xMCwzNSAtMTUsLTE1IC0xNSwxNSB6XCJ9LEdbXCJUUC5QRVJTT04gSU4gV0FURVJcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTA1LDExMCAxMCwtMTAgMCwtMTUgNSwwIDAsMjAgLTEwLDEwIHogbSAtMTAsMCAtMTAsLTEwIDAsLTE1IC01LDAgMCwyMCAxMCwxMCB6IG0gNSwtNSAwLC0xMCAtNSwwIC01LC01IDAsLTEwIDUsLTUgMTAsMCA1LDUgMCwxMCAtNSw1IC01LDAgbSAtMTUsMjUgMTUsLTE1IG0gNDUsMTUgLTE1LC0xNSBtIC0xNSwxNSAxNSwtMTUgbSAtNzUsMTUgMTUsLTE1IG0gMTUsMTUgLTE1LC0xNSBtIDQ1LDE1IC0xNSwtMTVcIn0sR1tcIlRQLkNMVVRURVIsIFNUQVRJT05BUlkgT1IgQ0VBU0UgUkVQT1JUSU5HXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNjUsMTM1IGMgMjMuMywtMjMgNDcsLTQ2LjcgNzAsLTcwIG0gLTcwLDAgYyAyMy4zLDIzLjMgNDcsNDcgNzAsNzAgbSAtMzUsLTQgYyAtMTkuNywwIC00Ny44LC04IC01MCwtMzEgMywtMjQuOSAzMy45LC0zMiA1NSwtMzAuNyAxOSwwLjggNDYsMTAuOSA0NSwzMy43IC01LDIxIC0zMSwyOCAtNTAsMjggeiBtIDMxLC0zMSBjIDAsMjAgLTgsNDggLTMxLDUwIEMgNzUuMSwxNDcgNjgsMTE2IDY5LjMsOTUgNzAuMSw3Ni4yIDgwLjIsNDguNiAxMDMsNTAuMiBjIDIxLDQuOSAyOCwzMS4xIDI4LDQ5LjggelwifSxHW1wiVFAuVEVOVEFUSVZFIE9SIFBST1ZJU0lPTkFMIFRSQUNLXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTMwLjkwMiwxMDAgQSAzMC45MDE3LDUwIDAgMCAxIDEwMCwxNTAgMzAuOTAxNyw1MCAwIDAgMSA2OS4wOTgzLDEwMCAzMC45MDE3LDUwIDAgMCAxIDEwMCw1MCAzMC45MDE3LDUwIDAgMCAxIDEzMC45MDIsMTAwIFogTSAxMDAsMTMwLjkwMiBBIDUwLDMwLjkwMTcgMCAwIDEgNTAsMTAwIDUwLDMwLjkwMTcgMCAwIDEgMTAwLDY5LjA5ODMgNTAsMzAuOTAxNyAwIDAgMSAxNTAsMTAwIDUwLDMwLjkwMTcgMCAwIDEgMTAwLDEzMC45MDIgWlwifSxHW1wiVFAuRElTVFJFU1NFRCBWRVNTRUxcIl09e3R5cGU6XCJwYXRoXCIsZDpcIm0gMTIwLDY1IC0yMCwyMCAyMCwtMjAgbSAtNSw1NSAtMzUsLTM1IDAsLTIwIDQ1LDQ1IHogbSAtMzAsMCAtMTUsLTE1IG0gLTE1LDE1IDE1LC0xNSBtIDQ1LDE1IDE1LC0xNSBtIDE1LDE1IC0xNSwtMTUgbSAtNDUsMTUgMTUsLTE1XCJ9LEdbXCJUUC5TRUEgTUlORUxJS0VcIl09e3R5cGU6XCJwYXRoXCIsZDpcIk0gNzUsNzUgNTUsNTUgbSA0NSwtMTUgMCwyNSBtIDI1LDEwIDIwLC0yMCBtIC04MCw2MCAwLC0zMCAyMCwtMjAgMzAsMCAyMCwyMCAwLDMwIC0yMCwyMCAtMzAsMCB6XCJ9LEdbXCJUUC5JQ0VCRVJHXCJdPXt0eXBlOlwicGF0aFwiLGQ6XCJtIDc1LDEwMCAyNSwtMzAgMjUsMzAgLTUsMTUgLTUsLTUgLTE1LDIwIC0xNSwtMjAgLTUsNSB6IG0gLTE1LDAgODAsMFwifSxHW1wiVFAuT0lMIFJJRy9QTEFURk9STVwiXT1be3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTAwIDAsLTUwIG0gNzUsNTAgMCw0MCBtIDIwLC00MCAwLDQwIG0gLTExNSwwIDAsLTQwIDEzMCwwXCIsZmlsbDohMX0se3R5cGU6XCJwYXRoXCIsZDpcIm0gNTUsMTAwIDAsLTE1IDI1LDAgMCwxNSB6XCJ9XSxHW1wiVFAuQk9UVE9NIFJFVFVSTlwiXT17dHlwZTpcInBhdGhcIixkOlwibSA1MCwxMDAgMTUsLTM1IDE1LDMwIDIwLC01NSAyMCw1NSAxNSwtMzUgMTUsNDAgelwifSxHW1wiVFAuSU5TVEFMTEFUSU9OL01BTk1BREVcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1MCwxMDAgMTUsLTM1IDE1LDMwIDIwLC01NSAyMCw1NSAxNSwtMzUgMTUsNDAgelwifSxHW1wiVFAuV1JFQ0ssIE5PTiBEQU5HRVJPVVNcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxMzUsODUgMCwzMCBtIC04NSwtMTUgMTAwLDAgbSAtODUsLTE1IDAsMzAgbSAzNSwtNDAgMCw1MFwifSxHW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXT1bR1tcIlRQLldSRUNLLCBOT04gREFOR0VST1VTXCJdLHt0eXBlOlwicGF0aFwiLHN0cm9rZWRhc2hhcnJheTpcIjUsNVwiLGZpbGw6ITEsZDpcIm0gMTU2LjU0NywxMDAgYyAwLDE2LjM4MiAtMjUuMTYyLDI5LjY2MiAtNTYuMjAyLDI5LjY2MiAtMzEuMDM5NSwwIC01Ni4yMDE5LC0xMy4yOCAtNTYuMjAxNywtMjkuNjYyIDAsLTE2LjM4MTggMjUuMTYyNCwtMjkuNjYxOCA1Ni4yMDE3LC0yOS42NjE4IDMxLjAzOSwtMWUtNCA1Ni4yMDIsMTMuMjggNTYuMjAyLDI5LjY2MTggelwifV0sR1tcIlRQLk1BUklORSBMSUZFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTohMSxkOlwibSAxMzIsNzUgMCw1MCA4MywtMzcuNSAwLDI1IEwgMTMyLDc1IG0gLTMyLDI1IDI1LjUsLTI1IDAsNTAgelwifSxHW1wiVFAuU0VBIEFOT01BTFlcIl09e3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNTAsODAgMTMwLDM1IDEwMCwxMDAgNzAsMzUgNTAsODAgbSAwLDIwIDIwLC00NSAzMCw2NSAzMCwtNjUgMjAsNDVcIn0sR1tcIlRQLkZJWCBBQ09VU1RJQ1wiXT17dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJNIDUwLDE1MCAxNTAsNTAgTSA1MCw1MCAxNTAsMTUwIG0gLTUwLC0xMDAgMCwxMDBcIn0sR1tcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNTAsOTAgMTUsMjAgNSwtMjAgMTUsMjAgNSwtMjAgMjAsMjAgNSwtMjAgMTUsMjAgNSwtMjAgMTUsMjAgTSA1MCwxNTAgMTUwLDUwIE0gNTAsNTAgMTUwLDE1MCBtIC01MCwtMTAwIDAsMTAwXCJ9LEdbXCJUUC5FTEVDVFJPIE1BR05FVElDIC0gTUFHTkVUSUMgQU5PTUFMWSBERVRFQ1RJT04gKE1BRClcIl09W0dbXCJUUC5GSVggRUxFQ1RSTy1NQUdORVRJQ1wiXSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTgwLGZvbnRzaXplOjM1LHRleHQ6XCJNQURcIn1dLEdbXCJUUC5GSVggRUxFQ1RSTy1PUFRJQ0FMXCJdPXt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTUwLDEwMCBjIDAsNi45MDQgLTIyLjM4NiwxMi41IC01MCwxMi41IC0yNy42MTQyLDAgLTUwLC01LjU5NiAtNTAsLTEyLjUgMCwtNi45MDM2IDIyLjM4NTgsLTEyLjUgNTAsLTEyLjUgMjcuNjE0LDAgNTAsNS41OTY0IDUwLDEyLjUgeiBNIDUwLDE1MCAxNTAsNTAgTSA1MCw1MCAxNTAsMTUwIG0gLTUwLC0xMDAgMCwxMDBcIn0sR1tcIlRQLkZJUkVcIl09e3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLGZpbGw6RS5pY29uQ29sb3JbQ10sdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjM1LHRleHQ6XCJGSVJFXCJ9LEdbXCJUUC5JTkRJUkVDVCBGSVJFXCJdPXt0eXBlOlwicGF0aFwiLHN0cm9rZTpFLmljb25Db2xvcltDXSxmaWxsOiExLGQ6XCJtIDEwMCw2MCAwLDgwIG0gLTQwLC00MCA4MCwwXCJ9LEdbXCJUUC5BTUJVU0hcIl09e3R5cGU6XCJwYXRoXCIsc3Ryb2tlOkUuaWNvbkNvbG9yW0NdLGZpbGw6ITEsZDpcIm0gNzcuNSwxMDYgMjAsMCBtIC0yMCwtMTIgMjAsMCBNIDc1LDgyIDk1LDgyIG0gLTIwLDM2IDIwLDAgbSAtMjUsMTIgMjAsMCBNIDcwLDcwIDkwLDcwIE0gODAsNjAgYyAyNSwxNSAyNSw2NSAwLDgwIG0gNDUsLTUwIDEwLDEwIC0xMCwxMCBtIC0yNSwtMTAgMzUsMFwifSxHW1wiVFAuUk9BRCBCTE9DS1wiXT17dHlwZTpcInBhdGhcIixzdHJva2U6RS5pY29uQ29sb3JbQ10sZmlsbDohMSxkOlwibSA3MywxMzMgNjAsLTYwIG0gLTY2LDU0IDYwLC02MCBtIC01NCwwIDYwLDYwIG0gLTY2LC01NCA2MCw2MFwifSxHW1wiVFAuUk9BRCBCTE9DSyAoVU5ERVIgQ09OU1RSVUNUSU9OKVwiXT1be3R5cGU6XCJwYXRoXCIsc3Ryb2tlOkUuaWNvbkNvbG9yW0NdLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiNSw1XCIsZDpcIm0gNzMsNjcgNjAsNjAgbSAtNjYsLTU0IDYwLDYwXCJ9LHt0eXBlOlwicGF0aFwiLHN0cm9rZTpFLmljb25Db2xvcltDXSxmaWxsOiExLGQ6XCJNIDczLDEzMyAxMzMsNzMgTSA2NywxMjcgMTI3LDY3XCJ9XSxHW1wiVFAuVklUQUwgQVJFQSBDRU5UUkVcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNDUsMTAwIDExMCwwIG0gMCwtNDAgMCw4NSBNIDQ1LDYwIGwgMCw4MCBtIDU1LC04MCAwLDgwXCJ9XSxHW1wiVFAuRVNUSU1BVEVEIFBPU0lUSU9OIChFUClcIl09W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsc3Ryb2tlZGFzaGFycmF5OlwiMTIsNVwiLGQ6XCJNIDE2MCwxNjAgNDAsMTYwIDQwLDQwIDE2MCw0MCBaXCJ9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTQwLDEwMCBjIDEsMjYgLTI3LDQ3IC01MS44LDM4IEMgNjMuMSwxMzEgNTEuNSw5OC4zIDY3LDc3LjQgYyAxMy44LC0yMS45IDQ5LC0yMy4yIDY0LC0yLjMgNiw3IDksMTUuOSA5LDI0LjkgelwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjM1LHRleHQ6XCJFUFwifV0sR1tcIkZPUldBUkQgT0JTRVJWRVIgLyBTUE9UVEVSIFBPU0lUSU9OXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjozfSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDQwLDEzNSA2MCwtNzUgNjAsNzUgelwifV0sR1tcIk1BTiBNQURFIFNQQUNFIERFQlJJUyBTTUFMTFwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAsMTEwIDc1LDEwMCA2MCw5MCBtIDUwLDUwIC0xMCwtMTUgLTEwLDE1IG0gNTAsLTUwIC0xNSwxMCAxNSwxMCBNIDkwLDYwIDEwMCw3NSAxMTAsNjBcIn1dLEdbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgTUVESVVNXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxN30se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH1dLEdbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgQklHXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjEwMCxjeToxMDAscjoxN30se3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjEwMCxjeToxMDAscjo1MH0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA5MCw3NSAxMCwtMTUgMTAsMTUgTSA3NSwxMTAgNjAsMTAwIDc1LDkwIG0gMzUsMzUgLTEwLDE1IC0xMCwtMTUgbSAzNSwtMzUgMTUsMTAgLTE1LDEwXCJ9XSxHW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgU01BTExcIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gNjAsMTEwIDc1LDEwMCA2MCw5MCBtIDUwLDUwIC0xMCwtMTUgLTEwLDE1IG0gNTAsLTUwIC0xNSwxMCAxNSwxMCBNIDkwLDYwIDEwMCw3NSAxMTAsNjBcIn1dLEdbXCJOQVRVUkFMIFNQQUNFIERFQlJJUyBNRURJVU1cIl09W3t0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6MTd9LHt0eXBlOlwiY2lyY2xlXCIsZmlsbDohMSxjeDoxMDAsY3k6MTAwLHI6NTB9XSxHW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgQklHXCJdPVt7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjE3fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjUwfSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDkwLDc1IDEwLC0xNSAxMCwxNSBNIDc1LDExMCA2MCwxMDAgNzUsOTAgbSAzNSwzNSAtMTAsMTUgLTEwLC0xNSBtIDM1LC0zNSAxNSwxMCAtMTUsMTBcIn1dLEdbXCJUUC5NMS5VTlNQRUNJRklFRFwiXT1be3R5cGU6XCJjaXJjbGVcIixmaWxsOiExLGN4OjU1LGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcImNpcmNsZVwiLGZpbGw6ITEsY3g6MTQ1LGN5OjEwMCxyOjE1fV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjU1LGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDM1LDc1IDEwLjYsMTMuMyBtIDE4LjgsMCAxMC42LC0xMy4zXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDgwLDc1IDEwLjYsMTMuMyBtIDE4LjgsMCAxMC42LC0xMy4zXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTQ1LGN5OjEwMCxyOjE1fSx7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDEyNSw3NSAxMC42LDEzLjMgbSAxOC44LDAgMTAuNiwtMTMuM1wifV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSA2NC40LDg4LjMgNzUsNzUgbSAtNDAsMCAxMC42LDEzLjMgbSAzMi40LDEwIDIsMS43IC0yLDIgeiBtIC04LDEuNyAzLjMsMFwifV0sR1tcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIk0gMTA5LDg4LjMgMTIwLDc1IG0gLTQwLDAgMTAuNiwxMy4zIG0gMzIuNCwxMCAyLDEuNyAtMiwyIHogbSAtOCwxLjcgMywwXCJ9XSxHW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjE0NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwiTSAxNTQsODguMyAxNjUsNzUgbSAtNDAsMCAxMSwxMy4zIG0gMzIsMTAgMiwxLjcgLTIsMiB6IG0gLTgsMS43IDMsMFwifV0sR1tcIlRQLk0xLkFOVElUQU5LIE1JTkUgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX1dLEdbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDJcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6MTAwLGN5OjEwMCxyOjE1fV0sR1tcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxNDUsY3k6MTAwLHI6MTV9XSxHW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDo1NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA1NSwxMTUgMCwxMyA2LC02XCJ9XSxHW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTAwLDExNSAwLDEzIDYsLTZcIn1dLEdbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAzXCJdPVt7dHlwZTpcImNpcmNsZVwiLGN4OjE0NSxjeToxMDAscjoxNX0se3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSAxNDUsMTE1IDAsMTMgNiwtNlwifV0sR1tcIlRQLk0xLldJREUgQVJFQSBBTlRJVEFOSyBNSU5FIDFcIl09W3t0eXBlOlwiY2lyY2xlXCIsY3g6NTUsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMzUsMTE1IDgsMTAgNS41LC0xMSBtIDEzLDAgNS41LDExIDgsLTEwXCJ9XSxHW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxMDAsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gODAsMTE1IDgsMTAgNS41LC0xMSBtIDEzLDAgNS41LDExIDgsLTEwXCJ9XSxHW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXT1be3R5cGU6XCJjaXJjbGVcIixjeDoxNDUsY3k6MTAwLHI6MTV9LHt0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gMTI1LDExNSA4LDEwIDUuNSwtMTEgbSAxMywwIDUuNSwxMSA4LC0xMFwifV0sR1tcIlRQLk0xLk1JTkUgQ0xVU1RFUiAxXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjcuNSw1XCIsZDpcIm0gNzMsMTEwIC0zNiwwIGMgMCwtMTAgMywtMjAgMTgsLTIwIDE1LDAgMTgsMTAgMTgsMjAgelwifV0sR1tcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdPVt7dHlwZTpcInBhdGhcIixmaWxsOiExLHN0cm9rZWRhc2hhcnJheTpcIjcuNSw1XCIsZDpcIm0gMTE4LDExMCAtMzYsMCBjIDAsLTEwIDMsLTIwIDE4LC0yMCAxNSwwIDE4LDEwIDE4LDIwIHpcIn1dLEdbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXT1be3R5cGU6XCJwYXRoXCIsZmlsbDohMSxzdHJva2VkYXNoYXJyYXk6XCI3LjUsNVwiLGQ6XCJtIDE2MywxMTAgLTM2LDAgYyAwLC0xMCAzLC0yMCAxOCwtMjAgMTUsMCAxOCwxMCAxOCwyMCB6XCJ9XSxHKUcuaGFzT3duUHJvcGVydHkobykmJihJLmhhc093blByb3BlcnR5KG8pJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrbyksbi5jYWxsKHRoaXMsR1tvXSxUKSxJW29dPUdbb10pfXZhciBrPXt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbVl0sbGFiZWxzOmZ1bmN0aW9uKEkpe0lbXCJHLVQtRC0tLS0tXCJdPXt9LElbXCJHLVQtSS0tLS0tXCJdPXt9LElbXCJHLVQtTi0tLS0tXCJdPXt9LElbXCJHLUctR1BVVUQtXCJdPXt9LElbXCJHLUctR1BVVUItXCJdPXt9LElbXCJHLUctR1BVVUwtXCJdPXt9LElbXCJHLUctR1BVVVMtXCJdPXt9LElbXCJHLUctR1BVWS0tXCJdPXt9LElbXCJHLUctR1BVWVAtXCJdPXt9LElbXCJHLUctR1BVWUQtXCJdPXt9LElbXCJHLUctR1BVWUwtXCJdPXt9LElbXCJHLUctR1BVWUMtXCJdPXt9LElbXCJHLUctR1BVWVMtXCJdPXt9LElbXCJHLUctR1BVWUItXCJdPXt9LElbXCJHLUctR1BVWUEtXCJdPXt9LElbXCJHLUctR1BVWVYtXCJdPXt9LElbXCJHLUctR1BVWVQtXCJdPXt9LElbXCJHLUctR1BVWVItXCJdPXt9LElbXCJHLUctR1BVWUstXCJdPXt9LElbXCJHLUctR1BVWVgtXCJdPXt9LElbXCJHLUctR1BVUy0tXCJdPXt9LElbXCJHLUctR1BVU0EtXCJdPXt9LElbXCJHLUctR1BVU0QtXCJdPXt9LElbXCJHLUctR1BVU0MtXCJdPXt9LElbXCJHLUctR1BSLS0tXCJdPXt9LElbXCJHLUctR1BSTi0tXCJdPXt9LElbXCJHLUctR1BSUy0tXCJdPXt9LElbXCJHLUctR1BSRC0tXCJdPXt9LElbXCJHLUctR1BSUC0tXCJdPXt9LElbXCJHLUctR1BSTS0tXCJdPXt9LElbXCJHLUctR1BSVy0tXCJdPXt9LElbXCJHLUctR1BSQy0tXCJdPXt9LElbXCJHLUctR1BSSS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjMwLGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQV0EtLVwiXT17fSxJW1wiRy1HLUdQV0QtLVwiXT17fSxJW1wiRy1HLUdQV0UtLVwiXT17fSxJW1wiRy1HLUdQV0ctLVwiXT17fSxJW1wiRy1HLUdQV00tLVwiXT17fSxJW1wiRy1HLUdQV0ktLVwiXT17fSxJW1wiRy1HLUdQV1AtLVwiXT17fSxJW1wiRy1HLUdQRi0tLVwiXT17fSxJW1wiRy1HLUdQSC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQSFEtLVwiXT17fSxJW1wiRy1HLUdQSEEtLVwiXT17fSxJW1wiRy1HLUdQSFktLVwiXT17fSxJW1wiRy1HLUdQSFgtLVwiXT17fSxJW1wiRy1HLUdQTy0tLVwiXT17fSxJW1wiRy1HLUdQT1otLVwiXT17fSxJW1wiRy1HLUdQT0QtLVwiXT17fSxJW1wiRy1HLUdQT1ctLVwiXT17fSxJW1wiRy1HLUdQT1AtLVwiXT17fSxJW1wiRy1HLUdQT1ItLVwiXT17fSxJW1wiRy1HLUdQQS0tLVwiXT17fSxJW1wiRy1HLUdQQVAtLVwiXT17fSxJW1wiRy1HLUdQQVctLVwiXT17fSxJW1wiRy1HLUdQQUstLVwiXT17fSxJW1wiRy1HLUdQQUEtLVwiXT17fSxJW1wiRy1HLUdQQUgtLVwiXT17fSxJW1wiRy1HLUdQQUItLVwiXT17fSxJW1wiRy1HLUdQQUMtLVwiXT17fSxJW1wiRy1HLUdQQUQtLVwiXT17fSxJW1wiRy1HLUdQQUUtLVwiXT17fSxJW1wiRy1HLUdQQVMtLVwiXT17fSxJW1wiRy1HLUdQQVQtLVwiXT17fSxJW1wiRy1HLUdQQU8tLVwiXT17fSxJW1wiRy1HLUdQQVItLVwiXT17fSxJW1wiRy1HLUdQQUwtLVwiXT17fSxJW1wiRy1HLUdQQUYtLVwiXT17fSxJW1wiRy1HLUdQQUctLVwiXT17fSxJW1wiRy1HLUdQQUktLVwiXT17fSxJW1wiRy1HLUdQQUotLVwiXT17fSxJW1wiRy1HLUdQQU0tLVwiXT17fSxJW1wiRy1HLUdQQU4tLVwiXT17fSxJW1wiRy1HLUdQUC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxhZGRpdGlvbmFsSW5mb3JtYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBLLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUEMtLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo0MCxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRy1HUFBPLS1cIl09e30sSVtcIkctRy1HUFBELS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUdQUEwtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUctR1BQUC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBSLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUEUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUctR1BQUy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRy1HUFBBLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1HLUdQUFctLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyNSxmb250c2l6ZTo3MH19LElbXCJHLUctR1BDLS0tXCJdPXt9LElbXCJHLUctR1BDVS0tXCJdPXt9LElbXCJHLUctR1BDVVItXCJdPXt9LElbXCJHLUctR1BDVUEtXCJdPXt9LElbXCJHLUctR1BDVVMtXCJdPXt9LElbXCJHLUctR1BDVU0tXCJdPXt9LElbXCJHLUctR1BDQS0tXCJdPXt9LElbXCJHLUctR1BDUy0tXCJdPXt9LElbXCJHLUctR1BDTS0tXCJdPXt9LElbXCJHLUctR1BDUC0tXCJdPXt9LElbXCJHLUctR1BDUi0tXCJdPXt9LElbXCJHLUctR1BDQy0tXCJdPXt9LElbXCJHLUctR1BDRS0tXCJdPXt9LElbXCJHLUctR1BDTi0tXCJdPXt9LElbXCJHLUctR1BCLS0tXCJdPXt9LElbXCJHLUctR1BCVS0tXCJdPXt9LElbXCJHLUctR1BCVUEtXCJdPXt9LElbXCJHLUctR1BCVVMtXCJdPXt9LElbXCJHLUctR1BCVU0tXCJdPXt9LElbXCJHLUctR1BCUy0tXCJdPXt9LElbXCJHLUctR1BCU0EtXCJdPXt9LElbXCJHLUctQVBQLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRy1BUEMtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLUFQVS0tLVwiXT17fSxJW1wiRy1HLUFQRC0tLVwiXT17fSxJW1wiRy1HLVBOLS0tLVwiXT17fSxJW1wiRy1HLURQVC0tLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExNSx5Ojg1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1HLURQTy0tLVwiXT17fSxJW1wiRy1HLURQT0MtLVwiXT17fSxJW1wiRy1HLURQT1ItLVwiXT17fSxJW1wiRy1HLURQT0YtLVwiXT17fSxJW1wiRy1HLURQT1MtLVwiXT17fSxJW1wiRy1HLURQT04tLVwiXT17fSxJW1wiRy1HLU9QUC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tT0FPRi0tXCJdPXt9LElbXCJHLU0tT0FPTS0tXCJdPXt9LElbXCJHLU0tT0FPUC0tXCJdPXt9LElbXCJHLU0tT0ItLS0tXCJdPXt9LElbXCJHLU0tT01VLS0tXCJdPXt9LElbXCJHLU0tT01ULS0tXCJdPXt9LElbXCJHLU0tT01ELS0tXCJdPXt9LElbXCJHLU0tT01FLS0tXCJdPXt9LElbXCJHLU0tT01QLS0tXCJdPXt9LElbXCJHLU0tT01XLS0tXCJdPXt9LElbXCJHLU0tT0ZTLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTo1NSxmb250c2l6ZTo0MH0saG9zdGlsZTpbe3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDozNSx5OjExMCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSx7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTY1LHk6MTEwLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9XSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNzUsZm9udHNpemU6NDB9fSxJW1wiRy1NLU9IVEwtLVwiXT17YWx0aXR1ZGVEZXB0aDp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6NjAsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLU0tT0hUSC0tXCJdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTUseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctTS1CQ1AtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLVNFLS0tLVwiXT17fSxJW1wiRy1NLVNGLS0tLVwiXT17fSxJW1wiRy1NLVNTLS0tLVwiXT17fSxJW1wiRy1NLVNVLS0tLVwiXT17fSxJW1wiRy1NLU5aLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToyMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToyMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTAwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE0MCxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjUsZm9udHNpemU6MzV9LHR5cGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjYwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORi0tLS1cIl09e30sSVtcIkctTS1ORUItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORUMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctTS1ORFAtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLU5EQS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tTkRULS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctTS1OREUtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1NLU5EQi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU0tTkRPLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctTS1OREQtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1GLVBUUy0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjEyMCx5OjgwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QVE4tLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctRi1QQ0YtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjUseToxMTUsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUYtUENTLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QQ0ItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1GLVBDUi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUYtUENILS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctRi1QQ0wtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBYLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUEMtLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QWS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBULS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUEQtLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QRS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBMLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUE0tLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QUi0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBVLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUE8tLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QSS0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBOLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFMtLS0tXCJdPXt9LElbXCJHLVMtUFNaLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTQS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0ItLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNDLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTRC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0UtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNGLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTRy0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QU0gtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLVMtUFNJLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBTSi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctUy1QQS0tLS1cIl09e30sSVtcIkctUy1QQVMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1TLVBBVC0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLU8tRUQtLS0tXCJdPXt9LElbXCJHLU8tRVAtLS0tXCJdPXt9LElbXCJHLU8tRVYtLS0tXCJdPXt9LElbXCJHLU8tSE0tLS0tXCJdPXt9LElbXCJHLU8tSEktLS0tXCJdPXt9LElbXCJHLU8tSE8tLS0tXCJdPXt9LElbXCJHLU8tU0ItLS0tXCJdPXt9LElbXCJHLU8tU0JNLS0tXCJdPXt9LElbXCJHLU8tU0JOLS0tXCJdPXt9LElbXCJHLU8tU0JXLS0tXCJdPXt9LElbXCJHLU8tU0JYLS0tXCJdPXt9LElbXCJHLU8tU00tLS0tXCJdPXt9LElbXCJHLU8tU1MtLS0tXCJdPXt9LElbXCJHLU8tRkEtLS0tXCJdPXt9LElbXCJHLU8tRkUtLS0tXCJdPXt9LElbXCJHLU8tRk8tLS0tXCJdPXt9fSxpY29uczpmdW5jdGlvbihJLHQsRSxSKXtJW1wiRy1ULUQtLS0tLVwiXT1FW1wiVFAuREVTVFJPWVwiXSx0W1wiRy1ULUQtLS0tLVwiXT17eDE6MCx4MjoyMDAseTE6NDAseTI6MTYwfSxJW1wiRy1ULUktLS0tLVwiXT1FW1wiVFAuSU5URVJESUNUXCJdLHRbXCJHLVQtSS0tLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLVQtTi0tLS0tXCJdPUVbXCJUUC5ORVVUUkFMSVpFXCJdLHRbXCJHLVQtTi0tLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BVVUQtXCJdPUVbXCJUUC5EQVRVTVwiXSx0W1wiRy1HLUdQVVVELVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVVQi1cIl09RVtcIlRQLkJSSUVGIENPTlRBQ1RcIl0sdFtcIkctRy1HUFVVQi1cIl09e3gxOjUwLHgyOjE1MCx5MTowLHkyOjEwMH0sSVtcIkctRy1HUFVVTC1cIl09RVtcIlRQLkxPU1QgQ09OVEFDVFwiXSx0W1wiRy1HLUdQVVVMLVwiXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJW1wiRy1HLUdQVVVTLVwiXT1FW1wiVFAuU0lOS0VSXCJdLHRbXCJHLUctR1BVVVMtXCJdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbXCJHLUctR1BVWS0tXCJdPUVbXCJUUC5TT05PQlVPWVwiXSx0W1wiRy1HLUdQVVktLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWVAtXCJdPUVbXCJUUC5TT05PQlVPWSBQQVRURVJOIENFTlRFUlwiXSx0W1wiRy1HLUdQVVlQLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUQtXCJdPUVbXCJUUC5TT05PQlVPWSBESUZBUlwiXSx0W1wiRy1HLUdQVVlELVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUwtXCJdPUVbXCJUUC5TT05PQlVPWSBMT0ZBUlwiXSx0W1wiRy1HLUdQVVlMLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUMtXCJdPUVbXCJUUC5TT05PQlVPWSBDQVNTXCJdLHRbXCJHLUctR1BVWUMtXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZUy1cIl09RVtcIlRQLlNPTk9CVU9ZIERJQ0FTU1wiXSx0W1wiRy1HLUdQVVlTLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUItXCJdPUVbXCJUUC5TT05PQlVPWSBCVFwiXSx0W1wiRy1HLUdQVVlCLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWUEtXCJdPUVbXCJUUC5TT05PQlVPWSBBTk1cIl0sdFtcIkctRy1HUFVZQS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1HLUdQVVlWLVwiXT1FW1wiVFAuU09OT0JVT1kgVkxBRFwiXSx0W1wiRy1HLUdQVVlWLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVWVQtXCJdPUVbXCJUUC5TT05PQlVPWSBBVEFDXCJdLHRbXCJHLUctR1BVWVQtXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZUi1cIl09RVtcIlRQLlNPTk9CVU9ZIFJPXCJdLHRbXCJHLUctR1BVWVItXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctRy1HUFVZSy1cIl09RVtcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl0sdFtcIkctRy1HUFVZSy1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1HLUdQVVlYLVwiXT1FW1wiVFAuU09OT0JVT1kgRVhQSVJFRFwiXSx0W1wiRy1HLUdQVVlYLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUctR1BVUy0tXCJdPUVbXCJUUC5TRUFSQ0hcIl0sdFtcIkctRy1HUFVTLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BVU0EtXCJdPUVbXCJUUC5TRUFSQ0ggQVJFQVwiXSx0W1wiRy1HLUdQVVNBLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVTRC1cIl09RVtcIlRQLkRJUCBQT1NJVElPTlwiXSx0W1wiRy1HLUdQVVNELVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUFVTQy1cIl09RVtcIlRQLlNFQVJDSCBDRU5URVJcIl0sdFtcIkctRy1HUFVTQy1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BSLS0tXCJdPUVbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0sdFtcIkctRy1HUFItLS1cIl09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BSTi0tXCJdPUVbXCJUUC5OQVZJR0FUSU9OQUwgUkVGRVJFTkNFXCJdLHRbXCJHLUctR1BSTi0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUlMtLVwiXT1FW1wiVFAuU1BFQ0lBTCBQT0lOVFwiXSx0W1wiRy1HLUdQUlMtLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUFJELS1cIl09RVtcIlRQLkRMUlBcIl0sdFtcIkctRy1HUFJELS1cIl09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BSUC0tXCJdPUVbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXSx0W1wiRy1HLUdQUlAtLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUFJNLS1cIl09RVtcIlRQLk1BUlNIQUxMIFBPSU5UXCJdLHRbXCJHLUctR1BSTS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUlctLVwiXT1FW1wiVFAuUkVGRVJFTkNFIFBPSU5UIFdBWVBPSU5UXCJdLHRbXCJHLUctR1BSVy0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUkMtLVwiXT1FW1wiVFAuQ09SUklET1IgVEFCXCJdLHRbXCJHLUctR1BSQy0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQUkktLVwiXT1FW1wiVFAuUE9JTlQgT0YgSU5URVJFU1RcIl0sdFtcIkctRy1HUFJJLS1cIl09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbXCJHLUctR1BXQS0tXCJdPUVbXCJUUC5BSU0gUE9JTlRcIl0sdFtcIkctRy1HUFdBLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BXRC0tXCJdPUVbXCJUUC5EUk9QIFBPSU5UXCJdLHRbXCJHLUctR1BXRC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTIwfSxJW1wiRy1HLUdQV0UtLVwiXT1FW1wiVFAuRU5UUlkgUE9JTlRcIl0sdFtcIkctRy1HUFdFLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MH0sSVtcIkctRy1HUFdHLS1cIl09RVtcIlRQLkdST1VORCBaRVJPXCJdLHRbXCJHLUctR1BXRy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbXCJHLUctR1BXTS0tXCJdPUVbXCJUUC5NU0wgREVURUNUIFBPSU5UXCJdLHRbXCJHLUctR1BXTS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbXCJHLUctR1BXSS0tXCJdPUVbXCJUUC5JTVBBQ1QgUE9JTlRcIl0sdFtcIkctRy1HUFdJLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BXUC0tXCJdPUVbXCJUUC5QUkVESUNURUQgSU1QQUNUIFBPSU5UXCJdLHRbXCJHLUctR1BXUC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQRi0tLVwiXT1FW1wiVFAuRk9STUFUSU9OXCJdLHRbXCJHLUctR1BGLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSC0tLVwiXT1FW1wiVFAuSEFSQk9SXCJdLHRbXCJHLUctR1BILS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSFEtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sdFtcIkctRy1HUEhRLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BIQS0tXCJdPUVbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSx0W1wiRy1HLUdQSEEtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1HUEhZLS1cIl09RVtcIlRQLkhBUkJPUiBQT0lOVCBZXCJdLHRbXCJHLUctR1BIWS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUdQSFgtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl0sdFtcIkctRy1HUEhYLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BPLS0tXCJdPUVbXCJUUC5ST1VURVwiXSx0W1wiRy1HLUdQTy0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUE9aLS1cIl09RVtcIlRQLlJPVVRFIFJFTkRFWlZPVVNcIl0sdFtcIkctRy1HUE9aLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPRC0tXCJdPUVbXCJUUC5ST1VURSBESVZFUlNJT05TXCJdLHRbXCJHLUctR1BPRC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1HLUdQT1ctLVwiXT1FW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sdFtcIkctRy1HUE9XLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPUC0tXCJdPUVbXCJUUC5ST1VURSBQSU1cIl0sdFtcIkctRy1HUE9QLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUctR1BPUi0tXCJdPUVbXCJUUC5ST1VURSBQT0lOVCBSXCJdLHRbXCJHLUctR1BPUi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1HLUdQQS0tLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUEEtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBUC0tXCJdPUVbXCJUUC5DT01CQVQgQUlSIFBBVFJPTCAoQ0FQKVwiXSx0W1wiRy1HLUdQQVAtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFXLS1cIl09RVtcIlRQLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkcgKEFFVylcIl0sdFtcIkctRy1HUEFXLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBSy0tXCJdPUVbXCJUUC5UQU5LSU5HXCJdLHRbXCJHLUctR1BBSy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUEtLVwiXT1FW1wiVFAuRklYRUQgV0lOR1wiXSx0W1wiRy1HLUdQQUEtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFILS1cIl09RVtcIlRQLlJPVEFSWSBXSU5HXCJdLHRbXCJHLUctR1BBSC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUItLVwiXT1FW1wiVFAuU1VDQVAgLSBGSVhFRCBXSU5HXCJdLHRbXCJHLUctR1BBQi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1HLUdQQUMtLVwiXT1FW1wiVFAuU1VDQVAgLSBST1RBUlkgV0lOR1wiXSx0W1wiRy1HLUdQQUMtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFELS1cIl09RVtcIlRQLk1JVyAtIEZJWEVEIFdJTkdcIl0sdFtcIkctRy1HUEFELS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUctR1BBRS0tXCJdPUVbXCJUUC5NSVcgLSBST1RBUlkgV0lOR1wiXSx0W1wiRy1HLUdQQUUtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctRy1HUEFTLS1cIl09RVtcIlRQLlNUUklLRSBJUFwiXSx0W1wiRy1HLUdQQVMtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFULS1cIl09RVtcIlRQLlRBQ0FOXCJdLHRbXCJHLUctR1BBVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU8tLVwiXT1FW1wiVFAuVE9NQ0FUXCJdLHRbXCJHLUctR1BBTy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQVItLVwiXT1FW1wiVFAuUkVTQ1VFXCJdLHRbXCJHLUctR1BBUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQUwtLVwiXT1FW1wiVFAuUkVQTEVOSVNIXCJdLHRbXCJHLUctR1BBTC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQUYtLVwiXT1FW1wiVFAuVU5NQU5ORUQgQUVSSUFMIFNZU1RFTVwiXSx0W1wiRy1HLUdQQUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFHLS1cIl09RVtcIlRQLlZUVUFcIl0sdFtcIkctRy1HUEFHLS1cIl09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbXCJHLUctR1BBSS0tXCJdPUVbXCJUUC5PUkJJVFwiXSx0W1wiRy1HLUdQQUktLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUEFKLS1cIl09RVtcIlRQLk9SQklUIC0gRklHVVJFIEVJR0hUXCJdLHRbXCJHLUctR1BBSi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU0tLVwiXT1FW1wiVFAuT1JCSVQgLSBSQUNFIFRSQUNLXCJdLHRbXCJHLUctR1BBTS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJW1wiRy1HLUdQQU4tLVwiXT1FW1wiVFAuT1JCSVQgLSBSQU5ET00sIENMT1NFRFwiXSx0W1wiRy1HLUdQQU4tLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVtcIkctRy1HUFAtLS1cIl09RVtcIlRQLkFDVElPTiBQT0lOVFwiXSx0W1wiRy1HLUdQUC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBLLS1cIl09RVtcIlRQLkFDVElPTiBDSEVDSyBQT0lOVFwiXSx0W1wiRy1HLUdQUEstLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBDLS1cIl09RVtcIlRQLkNPTlRBQ1QgUE9JTlRcIl0sdFtcIkctRy1HUFBDLS1cIl09e3gxOjU1LHgyOjE0NSx5MTotMTB9LElbXCJHLUctR1BQTy0tXCJdPUVbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl0sdFtcIkctRy1HUFBPLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctR1BQRC0tXCJdPUVbXCJUUC5ERUNJU0lPTiBQT0lOVFwiXSx0W1wiRy1HLUdQUEQtLVwiXT17eDE6MzAseDI6MTcwLHkxOjI1LHkyOjE2MH0sSVtcIkctRy1HUFBMLS1cIl09RVtcIlRQLkFDVElPTiBMSU5LVVAgUE9JTlRcIl0sdFtcIkctRy1HUFBMLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUctR1BQUC0tXCJdPUVbXCJUUC5BQ1RJT04gUEFTU0FHRSBQT0lOVFwiXSx0W1wiRy1HLUdQUFAtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBSLS1cIl09RVtcIlRQLkFDVElPTiBSQUxMWSBQT0lOVFwiXSx0W1wiRy1HLUdQUFItLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1HUFBFLS1cIl09RVtcIlRQLkFDVElPTiBSRUxFQVNFIFBPSU5UXCJdLHRbXCJHLUctR1BQRS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1HLUdQUFMtLVwiXT1FW1wiVFAuQUNUSU9OIFNUQVJUIFBPSU5UXCJdLHRbXCJHLUctR1BQUy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1HLUdQUEEtLVwiXT1FW1wiVFAuQUNUSU9OIEFNTkVTVFkgUE9JTlRcIl0sdFtcIkctRy1HUFBBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUctR1BQVy0tXCJdPUVbXCJUUC5XQVlQT0lOVFwiXSx0W1wiRy1HLUdQUFctLVwiXT17eDE6NjAseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEMtLS1cIl09RVtcIlRQLlNFQSBTVVJGQUNFIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQy0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVLS1cIl09RVtcIlRQLihVU1YpIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1UtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVUi1cIl09RVtcIlRQLihSTVYpIFVTViBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENVUi1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDVUEtXCJdPUVbXCJUUC5VU1YgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDVUEtXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1VTLVwiXT1FW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1VTLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENVTS1cIl09RVtcIlRQLlVTViAtIE1JVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENVTS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDQS0tXCJdPUVbXCJUUC5BU1cgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDQS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1MtLVwiXT1FW1wiVFAuU1VXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQ1MtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUENNLS1cIl09RVtcIlRQLk1JVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUENNLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDUC0tXCJdPUVbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDUC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ1ItLVwiXT1FW1wiVFAuUkVOREVaVk9VUyBDT05UUk9MIFBPSU5UXCJdLHRbXCJHLUctR1BDUi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQ0MtLVwiXT1FW1wiVFAuUkVTQ1VFIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUENDLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDRS0tXCJdPUVbXCJUUC5SRVBMRU5JU0hNRU5UIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRy1HUENFLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BDTi0tXCJdPUVbXCJUUC5OT05DT01CQVRBTlQgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BDTi0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQi0tLVwiXT1FW1wiVFAuU1VCIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCLS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlUtLVwiXT1FW1wiVFAuKFVVVikgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCVS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlVBLVwiXT1FW1wiVFAuVVVWIC0gQVNXIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQlVBLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEJVUy1cIl09RVtcIlRQLlVVViAtIFNVVyBDT05UUk9MIFNUQVRJT05cIl0sdFtcIkctRy1HUEJVUy1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbXCJHLUctR1BCVU0tXCJdPUVbXCJUUC5VVVYgLSBNSVcgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCVU0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUdQQlMtLVwiXT1FW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSx0W1wiRy1HLUdQQlMtLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctRy1HUEJTQS1cIl09RVtcIlRQLkFTVyBTVUJNQVJJTkUgQ09OVFJPTCBTVEFUSU9OXCJdLHRbXCJHLUctR1BCU0EtXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1HLUFQUC0tLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlQgKEFDUClcIl0sdFtcIkctRy1BUFAtLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUctQVBDLS0tXCJdPUVbXCJUUC5DT01NVU5JQ0FUSU9OUyBDSEVDS1BPSU5UXCJdLHRbXCJHLUctQVBDLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1HLUFQVS0tLVwiXT1FW1wiVFAuUFVMTC1VUCBQT0lOVFwiXSx0W1wiRy1HLUFQVS0tLVwiXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVtcIkctRy1BUEQtLS1cIl09RVtcIlRQLkRPV05FRCBBSVJDUkVXIFBJQ0tVUCBQT0lOVFwiXSx0W1wiRy1HLUFQRC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRy1QTi0tLS1cIl09RVtcIlRQLkRVTU1ZIE1JTkVGSUVMRFwiXSx0W1wiRy1HLVBOLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNDB9LElbXCJHLUctRFBULS0tXCJdPUVbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbXCJHLUctRFBPLS0tXCJdPUVbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sdFtcIkctRy1EUE8tLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPQy0tXCJdPUVbXCJUUC5DT01CQVQgT1VUUE9TVFwiXSx0W1wiRy1HLURQT0MtLVwiXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVtcIkctRy1EUE9SLS1cIl09RVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sdFtcIkctRy1EUE9SLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPRi0tXCJdPUVbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdLHRbXCJHLUctRFBPRi0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJW1wiRy1HLURQT1MtLVwiXT1FW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sdFtcIkctRy1EUE9TLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctRFBPTi0tXCJdPUVbXCJUUC5DQlJOIE9CU0VSVkFUSU9OIFBPU1RcIl0sdFtcIkctRy1EUE9OLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUctT1BQLS0tXCJdPUVbXCJUUC5QT0lOVCBPRiBERVBBUlRVUkVcIl0sdFtcIkctRy1PUFAtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tT0FPRi0tXCJdPUVbXCJUUC5GSVhFRCBBTkQgUFJFRkFCUklDQVRFRFwiXSx0W1wiRy1NLU9BT0YtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1NLU9BT00tLVwiXT1FW1wiVFAuVEVUUkFIRURST05TXCJdLHRbXCJHLU0tT0FPTS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MzB9LElbXCJHLU0tT0FPUC0tXCJdPUVbXCJUUC5URVRSQUhFRFJPTlMgTU9WQUJMRVwiXSx0W1wiRy1NLU9BT1AtLVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1NLU9CLS0tLVwiXT1FW1wiVFAuQk9PQlkgVFJBUFwiXSxJW1wiRy1NLU9NVS0tLVwiXT1FW1wiVFAuVU5TUEVDSUZJRUQgTUlORVwiXSxJW1wiRy1NLU9NVC0tLVwiXT1FW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLElbXCJHLU0tT01ELS0tXCJdPUVbXCJUUC4oQVQpIEFOVElIQU5ETElORyBERVZJQ0VcIl0sdFtcIkctTS1PTUQtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxOTV9LElbXCJHLU0tT01FLS0tXCJdPUVbXCJUUC4oQVQpIERJUkVDVElPTkFMXCJdLHRbXCJHLU0tT01FLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6MTAseTI6MTQwfSxJW1wiRy1NLU9NUC0tLVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbXCJHLU0tT01XLS0tXCJdPUVbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVtcIkctTS1PRlMtLS1cIl09RVtcIlRQLk1JTkVGSUVMRFMgU1RBVElDXCJdLHRbXCJHLU0tT0ZTLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJW1wiRy1NLU9IVEwtLVwiXT1FW1wiVFAuVE9XRVIgTE9XXCJdLHRbXCJHLU0tT0hUTC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzAseTI6MTIwfSxJW1wiRy1NLU9IVEgtLVwiXT1FW1wiVFAuVE9XRVIgSElHSFwiXSx0W1wiRy1NLU9IVEgtLVwiXT17eDE6NTAseDI6MTUwLHkxOjMwLHkyOjEyMH0sSVtcIkctTS1CQ1AtLS1cIl09RVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sdFtcIkctTS1CQ1AtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tU0UtLS0tXCJdPUVbXCJUUC5FQVJUSFdPUksvRk9SVElGSUNBVElPTlwiXSxJW1wiRy1NLVNGLS0tLVwiXT1FW1wiVFAuRk9SVFwiXSxJW1wiRy1NLVNTLS0tLVwiXT1FW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdLElbXCJHLU0tU1UtLS0tXCJdPUVbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbXCJHLU0tTlotLS0tXCJdPUVbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPXCJdLHRbXCJHLU0tTlotLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5GLS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBGQUxMT1VUIFBST0RVQ0lOR1wiXSx0W1wiRy1NLU5GLS0tLVwiXT17eDE6NTAseDI6MTUwLHkxOi0yMH0sSVtcIkctTS1ORUItLS1cIl09RVtcIlRQLlJFTEVBU0UgRVZFTlRTIEJJT0xPR0lDQUxcIl0sdFtcIkctTS1ORUItLS1cIl09e3gxOi0xMCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5FQy0tLVwiXT1FW1wiVFAuUkVMRUFTRSBFVkVOVFMgQ0hFTUlDQUxcIl0sdFtcIkctTS1ORUMtLS1cIl09e3gxOi0yMCx4MjoxNDAseTE6LTIwfSxJW1wiRy1NLU5EUC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVFwiXSx0W1wiRy1NLU5EUC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTS1OREEtLS1cIl09RVtcIlRQLkFMVEVSTkFURSBERUNPTiBTSVRFL1BPSU5UXCJdLHRbXCJHLU0tTkRBLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1NLU5EVC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoVFJPT1BTKVwiXSx0W1wiRy1NLU5EVC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTS1OREUtLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKEVRVUlQTUVOVClcIl0sdFtcIkctTS1OREUtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tTkRCLS0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl0sdFtcIkctTS1OREItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLU0tTkRPLS0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChPUEVSQVRJT05BTCBERUNPTlRBTUlOQVRJT04pXCJdLHRbXCJHLU0tTkRPLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1NLU5ERC0tLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoVEhPUk9VR0ggREVDT05UQU1JTkFUSU9OKVwiXSx0W1wiRy1NLU5ERC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctRi1QVFMtLS1cIl09RVtcIlRQLlBPSU5UL1NJTkdMRSBUQVJHRVRcIl0sSVtcIkctRi1QVE4tLS1cIl09RVtcIlRQLk5VQ0xFQVIgVEFSR0VUXCJdLElbXCJHLUYtUENGLS0tXCJdPUVbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxJW1wiRy1GLVBDUy0tLVwiXT1FW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl0sdFtcIkctRi1QQ1MtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENCLS0tXCJdPUVbXCJUUC5GSVJJTkcgUE9JTlRcIl0sdFtcIkctRi1QQ0ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENSLS0tXCJdPUVbXCJUUC5SRUxPQUQgUE9JTlRcIl0sdFtcIkctRi1QQ1ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUYtUENILS0tXCJdPUVbXCJUUC5ISURFIFBPSU5UXCJdLHRbXCJHLUYtUENILS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1GLVBDTC0tLVwiXT1FW1wiVFAuTEFVTkNIIFBPSU5UXCJdLHRbXCJHLUYtUENMLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBYLS0tLVwiXT1FW1wiVFAuQU1CVUxBTkNFIEVYQ0hBTkdFIFBPSU5UXCJdLHRbXCJHLVMtUFgtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBDLS0tLVwiXT1FW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdLHRbXCJHLVMtUEMtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBZLS0tLVwiXT1FW1wiVFAuQ0FTVUFMVFkgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1TLVBZLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QVC0tLS1cIl09RVtcIlRQLkNJVklMSUFOIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QVC0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUEQtLS0tXCJdPUVbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLVMtUEQtLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBFLS0tLVwiXT1FW1wiVFAuRVBXIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QRS0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUEwtLS0tXCJdPUVbXCJUUC5MT0dJU1RJQ1MgUkVMRUFTRSBQT0lOVFwiXSx0W1wiRy1TLVBMLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTS0tLS1cIl09RVtcIlRQLk1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctUy1QTS0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUFItLS0tXCJdPUVbXCJUUC5SRUFSTSwgUkVGVUVMIEFORCBSRVNVUFBMWSBQT0lOVFwiXSx0W1wiRy1TLVBSLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QVS0tLS1cIl09RVtcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXSx0W1wiRy1TLVBVLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTy0tLS1cIl09RVtcIlRQLlRSQUZGSUMgQ09OVFJPTCBQT1NUXCJdLHRbXCJHLVMtUE8tLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBJLS0tLVwiXT1FW1wiVFAuVFJBSUxFUiBUUkFOU0ZFUiBQT0lOVFwiXSx0W1wiRy1TLVBJLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QTi0tLS1cIl09RVtcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1TLVBOLS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU1otLS1cIl09RVtcIlRQLlNVUFBMWSBQT0lOVFwiXSx0W1wiRy1TLVBTWi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0EtLS1cIl09RVtcIlRQLlNQIENMQVNTIElcIl0sdFtcIkctUy1QU0EtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLVMtUFNCLS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJSVwiXSx0W1wiRy1TLVBTQi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0MtLS1cIl09RVtcIlRQLlNQIENMQVNTIElJSVwiXSx0W1wiRy1TLVBTQy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0QtLS1cIl09RVtcIlRQLlNQIENMQVNTIElWXCJdLHRbXCJHLVMtUFNELS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTRS0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVlwiXSx0W1wiRy1TLVBTRS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0YtLS1cIl09RVtcIlRQLlNQIENMQVNTIFZJXCJdLHRbXCJHLVMtUFNGLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTRy0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVklJXCJdLHRbXCJHLVMtUFNHLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTSC0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgVklJSVwiXSx0W1wiRy1TLVBTSC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QU0ktLS1cIl09RVtcIlRQLlNQIENMQVNTIElYXCJdLHRbXCJHLVMtUFNJLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBTSi0tLVwiXT1FW1wiVFAuU1AgQ0xBU1MgWFwiXSx0W1wiRy1TLVBTSi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctUy1QQVMtLS1cIl09RVtcIlRQLkFNTVVOSVRJT04gU1VQUExZIFBPSU5UIChBU1ApXCJdLHRbXCJHLVMtUEFTLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1TLVBBVC0tLVwiXT1FW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXSx0W1wiRy1TLVBBVC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctTy1FRC0tLS1cIl09RVtcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl0sSVtcIkctTy1FUC0tLS1cIl09RVtcIlRQLlBFUlNPTiBJTiBXQVRFUlwiXSxJW1wiRy1PLUVWLS0tLVwiXT1FW1wiVFAuRElTVFJFU1NFRCBWRVNTRUxcIl0sSVtcIkctTy1ITS0tLS1cIl09RVtcIlRQLlNFQSBNSU5FTElLRVwiXSx0W1wiRy1PLUhNLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE1MH0sSVtcIkctTy1ISS0tLS1cIl09RVtcIlRQLklDRUJFUkdcIl0sdFtcIkctTy1ISS0tLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLU8tSE8tLS0tXCJdPUVbXCJUUC5PSUwgUklHL1BMQVRGT1JNXCJdLHRbXCJHLU8tSE8tLS0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJW1wiRy1PLVNCLS0tLVwiXT1FW1wiVFAuQk9UVE9NIFJFVFVSTlwiXSx0W1wiRy1PLVNCLS0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVtcIkctTy1TQk0tLS1cIl09RVtcIlRQLklOU1RBTExBVElPTi9NQU5NQURFXCJdLHRbXCJHLU8tU0JNLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTAwfSxJW1wiRy1PLVNCTi0tLVwiXT1FW1wiVFAuQk9UVE9NIFJFVFVSTlwiXSx0W1wiRy1PLVNCTi0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVtcIkctTy1TQlctLS1cIl09RVtcIlRQLldSRUNLLCBOT04gREFOR0VST1VTXCJdLHRbXCJHLU8tU0JXLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NzAseTI6MTMwfSxJW1wiRy1PLVNCWC0tLVwiXT1FW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXSx0W1wiRy1PLVNCWC0tLVwiXT17eDE6NDAseDI6MTYwLHkxOjcwLHkyOjEzMH0sSVtcIkctTy1TTS0tLS1cIl09RVtcIlRQLk1BUklORSBMSUZFXCJdLHRbXCJHLU8tU00tLS0tXCJdPXt4MToxMDAseDI6MjIwLHkxOjcwLHkyOjEzMH0sSVtcIkctTy1TUy0tLS1cIl09RVtcIlRQLlNFQSBBTk9NQUxZXCJdLHRbXCJHLU8tU1MtLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MzAseTI6MTIwfSxJW1wiRy1PLUZBLS0tLVwiXT1FW1wiVFAuRklYIEFDT1VTVElDXCJdLElbXCJHLU8tRkUtLS0tXCJdPUVbXCJUUC5GSVggRUxFQ1RSTy1NQUdORVRJQ1wiXSxJW1wiRy1PLUZPLS0tLVwiXT1FW1wiVFAuRklYIEVMRUNUUk8tT1BUSUNBTFwiXX19O3ZhciBCPVtMLHksaCx4LFUscCxtLEYse3R5cGU6XCJsZXR0ZXJcIixnZXRNZXRhZGF0YTpvLGdldEljb25zOk0saWNvblBhcnRzOltWXSxsYWJlbHM6ZnVuY3Rpb24oSSl7SVtcIkctVC1HRC0tLS1cIl09e30sSVtcIkctVC1HSS0tLS1cIl09e30sSVtcIkctVC1HTi0tLS1cIl09e30sSVtcIkctQy1NR1BGRS1cIl09e30sSVtcIkctQy1NR1BGQS1cIl09e30sSVtcIkctQy1NR1BGTy1cIl09e30sSVtcIkctQy1NR1BJLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MzAsZm9udHNpemU6NDUsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtTUFBUC0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1NQUFDLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU1BQVUtLVwiXT17fSxJW1wiRy1DLU1BQUQtLVwiXT17fSxJW1wiRy1DLU1ETi0tLVwiXT17fSxJW1wiRy1DLU1NUFQtLVwiXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExNSx5Ojg1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU1NUE8tLVwiXT17fSxJW1wiRy1DLU1NUE9DLVwiXT17fSxJW1wiRy1DLU1NUE9SLVwiXT17fSxJW1wiRy1DLU1NUE9GLVwiXT17fSxJW1wiRy1DLU1NUE9TLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1NUE9OLVwiXT17fSxJW1wiRy1DLU1PUEQtLVwiXT17fSxJW1wiRy1DLUJPQVRELVwiXT17fSxJW1wiRy1DLUJPQUItLVwiXT17fSxJW1wiRy1DLUJPQU1BLVwiXT17fSxJW1wiRy1DLUJPQU1ULVwiXT17fSxJW1wiRy1DLUJPQU1ELVwiXT17fSxJW1wiRy1DLUJPQU1DLVwiXT17fSxJW1wiRy1DLUJPQU1VLVwiXT17fSxJW1wiRy1DLUJPQU1OLVwiXT17fSxJW1wiRy1DLUJPQUlQLVwiXT17fSxJW1wiRy1DLUJPQUlDLVwiXT17fSxJW1wiRy1DLUJPQUlOLVwiXT17fSxJW1wiRy1DLUJPQUlTLVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQUlILVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQUlELVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJPQVYtLVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTY1LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLUJZQ0ctLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQlNFLS0tXCJdPXt9LElbXCJHLUMtQlNGLS0tXCJdPXt9LElbXCJHLUMtQlNILS0tXCJdPXt9LElbXCJHLUMtQlNVLS0tXCJdPXt9LElbXCJHLUMtQldOLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjIwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjIwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTQwLGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yNSxmb250c2l6ZTozNX0sdHlwZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6NjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMDAsZm9udHNpemU6MzV9fSxJW1wiRy1DLUJXRS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToyMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToyMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTAwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjE0MCxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjUsZm9udHNpemU6MzV9LHR5cGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjYwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAwLGZvbnRzaXplOjM1fX0sSVtcIkctQy1CV0ktLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MjAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MjAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwMCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxNDAsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjM1fSx0eXBlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTo2MCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwMCxmb250c2l6ZTozNX19LElbXCJHLUMtQldGLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjIwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjIwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTQwLGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yNSxmb250c2l6ZTozNX0sdHlwZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6NjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMDAsZm9udHNpemU6MzV9fSxJW1wiRy1DLUJXUC0tLVwiXT17fSxJW1wiRy1DLUJXRFAtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldEQS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RULS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUJXREUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldEUy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RPLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUJXREctLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtQldERU0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1CV0RURi1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLUZTVFAtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjEyMCx5OjgwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1GU1MtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjUseToxMTUsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtRkFVLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6ODAsZm9udHNpemU6NDAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtU1BBLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUEMtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQWS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BULS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUEQtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQRS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BMLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUE0tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BVLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUE8tLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSx1bmlxdWVEZXNpZ25hdGlvbjE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMCxmb250c2l6ZTozNSxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQSS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BOLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFULS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRQS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUItLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFDLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRRC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUUtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFGLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRRy0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQUUgtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1TUFFJLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTotMzAsZm9udHNpemU6NDB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BRSi0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLVNQTUEtLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtU1BNVC0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PWC0tLS1cIl09e30sSVtcIkctQy1PWFJOLS1cIl09e30sSVtcIkctQy1PWFJELS1cIl09e30sSVtcIkctQy1PWFVELS1cIl09e30sSVtcIkctQy1PWFVCLS1cIl09e30sSVtcIkctQy1PWFVMLS1cIl09e30sSVtcIkctQy1PWFVTLS1cIl09e30sSVtcIkctQy1PWFdBLS1cIl09e30sSVtcIkctQy1PWFdELS1cIl09e30sSVtcIkctQy1PWFdFLS1cIl09e30sSVtcIkctQy1PWFdHLS1cIl09e30sSVtcIkctQy1PWFdNLS1cIl09e30sSVtcIkctQy1PWFdJLS1cIl09e30sSVtcIkctQy1PWFdQLS1cIl09e30sSVtcIkctQy1PWFktLS1cIl09e30sSVtcIkctQy1PWFlQLS1cIl09e30sSVtcIkctQy1PWFlELS1cIl09e30sSVtcIkctQy1PWFlMLS1cIl09e30sSVtcIkctQy1PWFlDLS1cIl09e30sSVtcIkctQy1PWFlTLS1cIl09e30sSVtcIkctQy1PWFlCLS1cIl09e30sSVtcIkctQy1PWFlBLS1cIl09e30sSVtcIkctQy1PWFlWLS1cIl09e30sSVtcIkctQy1PWFlULS1cIl09e30sSVtcIkctQy1PWFlSLS1cIl09e30sSVtcIkctQy1PWFlLLS1cIl09e30sSVtcIkctQy1PWE4tLS1cIl09e30sSVtcIkctQy1PWEgtLS1cIl09e30sSVtcIkctQy1PWEhRLS1cIl09e30sSVtcIkctQy1PWEhBLS1cIl09e30sSVtcIkctQy1PWEhZLS1cIl09e30sSVtcIkctQy1PWEhYLS1cIl09e30sSVtcIkctQy1PWFItLS1cIl09e30sSVtcIkctQy1PWFJSLS1cIl09e30sSVtcIkctQy1PWFJELS1cIl09e30sSVtcIkctQy1PWFJXLS1cIl09e30sSVtcIkctQy1PWFJQLS1cIl09e30sSVtcIkctQy1PWFJULS1cIl09e30sSVtcIkctQy1PWFNUQy1cIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YU1RDUFwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo5Mixmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseToxMjgsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT1hTVENBXCJdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjkyLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyOCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PWFNUUi1cIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YU1RILVwiXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo5Mixmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseToxMjgsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT1hTVFMtXCJdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjkyLGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyOCxmb250c2l6ZTozMCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PWFNUU0FcIl09e2R0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6OTIsZm9udHNpemU6MzAsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI4LGZvbnRzaXplOjMwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJW1wiRy1DLU9YUy0tLVwiXT17fSxJW1wiRy1DLU9YU0EtLVwiXT17fSxJW1wiRy1DLU9YU0QtLVwiXT17fSxJW1wiRy1DLU9YU0MtLVwiXT17fSxJW1wiRy1DLU9YQUMtLVwiXT17fSxJW1wiRy1DLU9YQUEtLVwiXT17fSxJW1wiRy1DLU9YQVQtLVwiXT17fSxJW1wiRy1DLU9YQUstLVwiXT17fSxJW1wiRy1DLU9YQUYtLVwiXT17fSxJW1wiRy1DLU9YQUgtLVwiXT17fSxJW1wiRy1DLU9YQU8tLVwiXT17fSxJW1wiRy1DLU9YQVItLVwiXT17fSxJW1wiRy1DLU9YQVAtLVwiXT17fSxJW1wiRy1DLU9YQU0tLVwiXT17fSxJW1wiRy1DLU9YQVMtLVwiXT17fSxJW1wiRy1DLU9YQUQtLVwiXT17fSxJW1wiRy1DLU9HLS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LHVuaXF1ZURlc2lnbmF0aW9uMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEwLGZvbnRzaXplOjM1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dDLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PR1AtLS1cIl09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6NDAsZm9udHNpemU6NDUsZm9udHdlaWdodDpcImJvbGRcIn19LElbXCJHLUMtT0dULS0tXCJdPXt9LElbXCJHLUMtT0dELS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVtcIkctQy1PR0wtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLU9HTi0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dSLS0tXCJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseTotMzAsZm9udHNpemU6NDB9LGR0ZzE6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5OjEwLGZvbnRzaXplOjQwfX0sSVtcIkctQy1PR1MtLS1cIl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxJW1wiRy1DLU9HSS0tLVwiXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbXCJHLUMtT0dXLS0tXCJdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6MTI1LGZvbnRzaXplOjcwfX0sSVtcIkctTy1WQS0tLS1cIl09e30sSVtcIkctTy1WUi0tLS1cIl09e30sSVtcIkctTy1WRS0tLS1cIl09e30sSVtcIkctTy1WQi0tLS1cIl09e30sSVtcIkctTy1WWS0tLS1cIl09e30sSVtcIkctTy1WRC0tLS1cIl09e30sSVtcIkctTy1WSS0tLS1cIl09e30sSVtcIkctTy1WTS0tLS1cIl09e30sSVtcIkctTy1WSy0tLS1cIl09e30sSVtcIkctTy1WUy0tLS1cIl09e30sSVtcIkctTy1WUC0tLS1cIl09e30sSVtcIkctTy1WVS0tLS1cIl09e30sSVtcIkctTy1WQy0tLS1cIl09e30sSVtcIkctTy1WSC0tLS1cIl09e30sSVtcIkctTy1WRi0tLS1cIl09e30sSVtcIkctTy1WTy0tLS1cIl09e30sSVtcIkctTy1WTC0tLS1cIl09e30sSVtcIkctTy1WWC0tLS1cIl09e30sSVtcIkctTy1WWi0tLS1cIl09e30sSVtcIkctTy1MQi0tLS1cIl09e30sSVtcIkctTy1MRy0tLS1cIl09e30sSVtcIkctTy1MVy0tLS1cIl09e30sSVtcIkctTy1QUi0tLS1cIl09e30sSVtcIkctTy1QUkItLS1cIl09e30sSVtcIkctTy1QVC0tLS1cIl09e30sSVtcIkctTy1QQy0tLS1cIl09e30sSVtcIkctTy1QQ1UtLS1cIl09e30sSVtcIkctTy1QRC0tLS1cIl09e30sSVtcIkctTy1QTS0tLS1cIl09e30sSVtcIkctTy1QSC0tLS1cIl09e30sSVtcIkctTy1QSFktLS1cIl09e30sSVtcIkctTy1QSFctLS1cIl09e30sSVtcIkctTy1QSEctLS1cIl09e30sSVtcIkctTy1QSFQtLS1cIl09e30sSVtcIkctTy1QRy0tLS1cIl09e30sSVtcIkctTy1QUy0tLS1cIl09e30sSVtcIkctTy1QRi0tLS1cIl09e30sSVtcIkctTy1QSS0tLS1cIl09e30sSVtcIkctTy1QRS0tLS1cIl09e30sSVtcIkctTy1QWC0tLS1cIl09e30sSVtcIkctTy1QSlYtLS1cIl09e30sSVtcIkctTy1QSkEtLS1cIl09e30sSVtcIkctTy1QSkItLS1cIl09e30sSVtcIkctTy1QSy0tLS1cIl09e30sSVtcIkctTy1QQS0tLS1cIl09e30sSVtcIkctTy1QTy0tLS1cIl09e30sSVtcIkctTy1JUi0tLS1cIl09e30sSVtcIkctTy1JUy0tLS1cIl09e30sSVtcIkctTy1JRy0tLS1cIl09e30sSVtcIkctTy1JVi0tLS1cIl09e30sSVtcIkctTy1JSy0tLS1cIl09e30sSVtcIkctTy1JRC0tLS1cIl09e30sSVtcIkctTy1JRi0tLS1cIl09e319LGljb25zOmZ1bmN0aW9uKEksdCxFLFIpe0lbXCJHLVQtR0QtLS0tXCJdPUVbXCJUUC5ERVNUUk9ZXCJdLHRbXCJHLVQtR0QtLS0tXCJdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbXCJHLVQtR0ktLS0tXCJdPUVbXCJUUC5JTlRFUkRJQ1RcIl0sdFtcIkctVC1HSS0tLS1cIl09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVtcIkctVC1HTi0tLS1cIl09RVtcIlRQLk5FVVRSQUxJWkVcIl0sdFtcIkctVC1HTi0tLS1cIl09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1NR1BGRS1cIl09RVtcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdLElbXCJHLUMtTUdQRkEtXCJdPUVbXCJUUC5GSVggQUNPVVNUSUNcIl0sSVtcIkctQy1NR1BGTy1cIl09RVtcIlRQLkZJWCBFTEVDVFJPLU9QVElDQUxcIl0sSVtcIkctQy1NR1BJLS1cIl09RVtcIlRQLlBPSU5UIE9GIElOVEVSRVNUXCJdLHRbXCJHLUMtTUdQSS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6LTI1fSxJW1wiRy1DLU1BQVAtLVwiXT1FW1wiVFAuQUlSIENPTlRST0wgUE9JTlQgKEFDUClcIl0sdFtcIkctQy1NQUFQLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtTUFBQy0tXCJdPUVbXCJUUC5DT01NVU5JQ0FUSU9OUyBDSEVDS1BPSU5UXCJdLHRbXCJHLUMtTUFBQy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU1BQVUtLVwiXT1FW1wiVFAuUFVMTC1VUCBQT0lOVFwiXSx0W1wiRy1DLU1BQVUtLVwiXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1NQUFELS1cIl09RVtcIlRQLkRPV05FRCBBSVJDUkVXIFBJQ0tVUCBQT0lOVFwiXSx0W1wiRy1DLU1BQUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1NRE4tLS1cIl09RVtcIlRQLkRVTU1ZIE1JTkVGSUVMRFwiXSx0W1wiRy1DLU1ETi0tLVwiXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNDB9LElbXCJHLUMtTU1QVC0tXCJdPUVbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbXCJHLUMtTU1QTy0tXCJdPUVbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sdFtcIkctQy1NTVBPLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT0MtXCJdPUVbXCJUUC5DT01CQVQgT1VUUE9TVFwiXSx0W1wiRy1DLU1NUE9DLVwiXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVtcIkctQy1NTVBPUi1cIl09RVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sdFtcIkctQy1NTVBPUi1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT0YtXCJdPUVbXCJUUC5GT1JXQVJEIE9CU0VSVkVSIFBPU0lUSU9OXCJdLHRbXCJHLUMtTU1QT0YtXCJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJW1wiRy1DLU1NUE9TLVwiXT1FW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sdFtcIkctQy1NTVBPUy1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU1QT04tXCJdPUVbXCJUUC5DQlJOIE9CU0VSVkFUSU9OIFBPU1RcIl0sdFtcIkctQy1NTVBPTi1cIl09e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbXCJHLUMtTU9QRC0tXCJdPUVbXCJUUC5QT0lOVCBPRiBERVBBUlRVUkVcIl0sdFtcIkctQy1NT1BELS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQk9BVEQtXCJdPUVbXCJUUC5GSVhFRCBBTkQgUFJFRkFCUklDQVRFRFwiXSx0W1wiRy1DLUJPQVRELVwiXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJW1wiRy1DLUJPQUItLVwiXT1FW1wiVFAuQk9PQlkgVFJBUFwiXSxJW1wiRy1DLUJPQU1BLVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbXCJHLUMtQk9BTVQtXCJdPUVbXCJUUC5BTlRJVEFOSyBNSU5FIChBVClcIl0sSVtcIkctQy1CT0FNRC1cIl09RVtcIlRQLihBVCkgQU5USUhBTkRMSU5HIERFVklDRVwiXSx0W1wiRy1DLUJPQU1ELVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE5NX0sSVtcIkctQy1CT0FNQy1cIl09RVtcIlRQLihBVCkgRElSRUNUSU9OQUxcIl0sdFtcIkctQy1CT0FNQy1cIl09e3gxOjYwLHgyOjE0MCx5MToxMCx5MjoxNDB9LElbXCJHLUMtQk9BTVUtXCJdPUVbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdLElbXCJHLUMtQk9BTVctXCJdPUVbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVtcIkctQy1CT0FJUC1cIl09RVtcIlRQLlBMQU5ORUQgTUlORUZJRUxEXCJdLHRbXCJHLUMtQk9BSVAtXCJdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJW1wiRy1DLUJPQUlDLVwiXT1FW1wiVFAuTUlORUZJRUxEUyBTVEFUSUNcIl0sdFtcIkctQy1CT0FJQy1cIl09e3gxOjQwLHgyOjE2MCx5MTo2MCx5MjoxNDB9LElbXCJHLUMtQk9BSU4tXCJdPUVbXCJUUC5BTlRJVEFOSyAoQVQpIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQUlOLVwiXT17eDE6NDAseDI6MTYwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1CT0FJUy1cIl09RVtcIlRQLlNDQVRURVJBQkxFIE1JTkVTXCJdLHRbXCJHLUMtQk9BSVMtXCJdPXt4MTo0MCx4MjoxNjAseTE6MjAseTI6MTQwfSxJW1wiRy1DLUJPQUlILVwiXT1FW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQUlILVwiXT17eDE6NDAseDI6MTYwLHkxOjIwLHkyOjE0MH0sSVtcIkctQy1CT0FJRC1cIl09RVtcIlRQLlNDQVRURVJBQkxFIE1JTkVGSUVMRCBXSVRIIFNFTEYtREVTVFJVQ1RcIl0sdFtcIkctQy1CT0FJRC1cIl09e3gxOjQwLHgyOjE2MCx5MToyMCx5MjoxNDB9LElbXCJHLUMtQk9BVi0tXCJdPUVbXCJUUC5WT0xDQU5PIE1JTkVGSUVMRFwiXSx0W1wiRy1DLUJPQVYtLVwiXT17eDE6NDAseDI6MTYwLHkxOjIwLHkyOjE0MH0sSVtcIkctQy1CWUNHLS1cIl09RVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sdFtcIkctQy1CWUNHLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQlNFLS0tXCJdPUVbXCJUUC5FQVJUSFdPUksvRk9SVElGSUNBVElPTlwiXSxJW1wiRy1DLUJTRi0tLVwiXT1FW1wiVFAuRk9SVFwiXSxJW1wiRy1DLUJTSC0tLVwiXT1FW1wiVFAuU1VSRkFDRSBTSEVMVEVSXCJdLElbXCJHLUMtQlNVLS0tXCJdPUVbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbXCJHLUMtQldOLS0tXCJdPUVbXCJUUC5OVUNMRUFSIERFVE9OQVRJT05TIEdST1VORCBaRVJPXCJdLHRbXCJHLUMtQldOLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTIwfSxJW1wiRy1DLUJXRS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBERVRPTkFUSU9OUyBHUk9VTkQgWkVST1wiXSx0W1wiRy1DLUJXRS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV0ktLS1cIl09RVtcIlRQLk5VQ0xFQVIgREVUT05BVElPTlMgR1JPVU5EIFpFUk8gUExBTk5FRFwiXSx0W1wiRy1DLUJXSS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV0YtLS1cIl09RVtcIlRQLk5VQ0xFQVIgREVUT05BVElPTlMgR1JPVU5EIFpFUk8gUExBTk5FRFwiXSx0W1wiRy1DLUJXRi0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0yMH0sSVtcIkctQy1CV1AtLS1cIl09RVtcIlRQLk5VQ0xFQVIgRkFMTE9VVCBQUk9EVUNJTkdcIl0sdFtcIkctQy1CV1AtLS1cIl09e3gxOjUwLHgyOjE1MCx5MTotMjB9LElbXCJHLUMtQldEUC0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UXCJdLHRbXCJHLUMtQldEUC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREEtLVwiXT1FW1wiVFAuQUxURVJOQVRFIERFQ09OIFNJVEUvUE9JTlRcIl0sdFtcIkctQy1CV0RBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQldEVC0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUUk9PUFMpXCJdLHRbXCJHLUMtQldEVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREUtLVwiXT1FW1wiVFAuREVDT04gU0lURS9QT0lOVCAoRVFVSVBNRU5UKVwiXSx0W1wiRy1DLUJXREUtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RTLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKEVRVUlQTUVOVCBBTkQgVFJPT1BTKVwiXSx0W1wiRy1DLUJXRFMtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RPLS1cIl09RVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKE9QRVJBVElPTkFMIERFQ09OVEFNSU5BVElPTilcIl0sdFtcIkctQy1CV0RPLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtQldERy0tXCJdPUVbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUSE9ST1VHSCBERUNPTlRBTUlOQVRJT04pXCJdLHRbXCJHLUMtQldERy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLUJXREVNLVwiXT1FW1wiVFAuREVDT04gUE9JTlQgKE1BSU4pIEVRVUlQTUVOVFwiXSx0W1wiRy1DLUJXREVNLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1CV0RURi1cIl09RVtcIlRQLkRFQ09OIFBPSU5UIChGT1JXQVJEKSBUUk9PUFNcIl0sdFtcIkctQy1CV0RURi1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtRlNUUC0tXCJdPUVbXCJUUC5QT0lOVC9TSU5HTEUgVEFSR0VUXCJdLElbXCJHLUMtRlNTLS0tXCJdPUVbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxJW1wiRy1DLUZBVS0tLVwiXT1FW1wiVFAuTlVDTEVBUiBUQVJHRVRcIl0sSVtcIkctQy1TUEEtLS1cIl09RVtcIlRQLkFNQlVMQU5DRSBFWENIQU5HRSBQT0lOVFwiXSx0W1wiRy1DLVNQQS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEMtLS1cIl09RVtcIlRQLkNBTk5JQkFMSVpBVElPTiBQT0lOVFwiXSx0W1wiRy1DLVNQQy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFktLS1cIl09RVtcIlRQLkNBU1VBTFRZIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1TUFktLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BULS0tXCJdPUVbXCJUUC5DSVZJTElBTiBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BULS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQRC0tLVwiXT1FW1wiVFAuREVUQUlORUUgQ09MTEVDVElPTiBQT0lOVFwiXSx0W1wiRy1DLVNQRC0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEUtLS1cIl09RVtcIlRQLkVQVyBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BFLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQTC0tLVwiXT1FW1wiVFAuTE9HSVNUSUNTIFJFTEVBU0UgUE9JTlRcIl0sdFtcIkctQy1TUEwtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BNLS0tXCJdPUVbXCJUUC5NQUlOVEVOQU5DRSBDT0xMRUNUSU9OIFBPSU5UXCJdLHRbXCJHLUMtU1BNLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQUi0tLVwiXT1FW1wiVFAuUkVBUk0sIFJFRlVFTCBBTkQgUkVTVVBQTFkgUE9JTlRcIl0sdFtcIkctQy1TUFItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BVLS0tXCJdPUVbXCJUUC5SRUZVRUwgT04gVEhFIE1PVkUgUE9JTlRcIl0sdFtcIkctQy1TUFUtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BPLS0tXCJdPUVbXCJUUC5UUkFGRklDIENPTlRST0wgUE9TVFwiXSx0W1wiRy1DLVNQTy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUEktLS1cIl09RVtcIlRQLlRSQUlMRVIgVFJBTlNGRVIgUE9JTlRcIl0sdFtcIkctQy1TUEktLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BOLS0tXCJdPUVbXCJUUC5VTklUIE1BSU5URU5BTkNFIENPTExFQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1TUE4tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRVC0tXCJdPUVbXCJUUC5TVVBQTFkgUE9JTlRcIl0sdFtcIkctQy1TUFFULS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRQS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJXCJdLHRbXCJHLUMtU1BRQS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLVNQUUItLVwiXT1FW1wiVFAuU1AgQ0xBU1MgSUlcIl0sdFtcIkctQy1TUFFCLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRQy0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJSUlcIl0sdFtcIkctQy1TUFFDLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRRC0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJVlwiXSx0W1wiRy1DLVNQUUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFFLS1cIl09RVtcIlRQLlNQIENMQVNTIFZcIl0sdFtcIkctQy1TUFFFLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRRi0tXCJdPUVbXCJUUC5TUCBDTEFTUyBWSVwiXSx0W1wiRy1DLVNQUUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFHLS1cIl09RVtcIlRQLlNQIENMQVNTIFZJSVwiXSx0W1wiRy1DLVNQUUctLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFILS1cIl09RVtcIlRQLlNQIENMQVNTIFZJSUlcIl0sdFtcIkctQy1TUFFILS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BRSS0tXCJdPUVbXCJUUC5TUCBDTEFTUyBJWFwiXSx0W1wiRy1DLVNQUUktLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUFFKLS1cIl09RVtcIlRQLlNQIENMQVNTIFhcIl0sdFtcIkctQy1TUFFKLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtU1BNQS0tXCJdPUVbXCJUUC5BTU1VTklUSU9OIFNVUFBMWSBQT0lOVCAoQVNQKVwiXSx0W1wiRy1DLVNQTUEtLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1TUE1ULS1cIl09RVtcIlRQLkFNTVVOSVRJT04gVFJBTlNGRVIgUE9JTlQgKEFUUClcIl0sdFtcIkctQy1TUE1ULS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT1gtLS0tXCJdPUVbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLHRbXCJHLUMtT1gtLS0tXCJdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YUk4tLVwiXT1FW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSx0W1wiRy1DLU9YUk4tLVwiXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1PWFVELS1cIl09RVtcIlRQLkRBVFVNXCJdLHRbXCJHLUMtT1hVRC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YVUItLVwiXT1FW1wiVFAuQlJJRUYgQ09OVEFDVFwiXSx0W1wiRy1DLU9YVUItLVwiXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJW1wiRy1DLU9YVUwtLVwiXT1FW1wiVFAuTE9TVCBDT05UQUNUXCJdLHRbXCJHLUMtT1hVTC0tXCJdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbXCJHLUMtT1hVUy0tXCJdPUVbXCJUUC5TSU5LRVJcIl0sdFtcIkctQy1PWFVTLS1cIl09e3gxOjUwLHgyOjE1MCx5MTowLHkyOjEwMH0sSVtcIkctQy1PWFdBLS1cIl09RVtcIlRQLkFJTSBQT0lOVFwiXSx0W1wiRy1DLU9YV0EtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWFdELS1cIl09RVtcIlRQLkRST1AgUE9JTlRcIl0sdFtcIkctQy1PWFdELS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxMjB9LElbXCJHLUMtT1hXRS0tXCJdPUVbXCJUUC5FTlRSWSBQT0lOVFwiXSx0W1wiRy1DLU9YV0UtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwfSxJW1wiRy1DLU9YV0ctLVwiXT1FW1wiVFAuR1JPVU5EIFpFUk9cIl0sdFtcIkctQy1PWFdHLS1cIl09e3gxOjUwLHgyOjE1MCx5MTozMH0sSVtcIkctQy1PWFdNLS1cIl09RVtcIlRQLk1TTCBERVRFQ1QgUE9JTlRcIl0sdFtcIkctQy1PWFdNLS1cIl09e3gxOjUwLHgyOjE1MCx5MTozMH0sSVtcIkctQy1PWFdJLS1cIl09RVtcIlRQLklNUEFDVCBQT0lOVFwiXSx0W1wiRy1DLU9YV0ktLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWFdQLS1cIl09RVtcIlRQLlBSRURJQ1RFRCBJTVBBQ1QgUE9JTlRcIl0sdFtcIkctQy1PWFdQLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hZLS0tXCJdPUVbXCJUUC5TT05PQlVPWVwiXSx0W1wiRy1DLU9YWS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZUC0tXCJdPUVbXCJUUC5TT05PQlVPWSBQQVRURVJOIENFTlRFUlwiXSx0W1wiRy1DLU9YWVAtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZRC0tXCJdPUVbXCJUUC5TT05PQlVPWSBESUZBUlwiXSx0W1wiRy1DLU9YWUQtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZTC0tXCJdPUVbXCJUUC5TT05PQlVPWSBMT0ZBUlwiXSx0W1wiRy1DLU9YWUwtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQy0tXCJdPUVbXCJUUC5TT05PQlVPWSBDQVNTXCJdLHRbXCJHLUMtT1hZQy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlTLS1cIl09RVtcIlRQLlNPTk9CVU9ZIERJQ0FTU1wiXSx0W1wiRy1DLU9YWVMtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQi0tXCJdPUVbXCJUUC5TT05PQlVPWSBCVFwiXSx0W1wiRy1DLU9YWUItLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZQS0tXCJdPUVbXCJUUC5TT05PQlVPWSBBTk1cIl0sdFtcIkctQy1PWFlBLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1DLU9YWVYtLVwiXT1FW1wiVFAuU09OT0JVT1kgVkxBRFwiXSx0W1wiRy1DLU9YWVYtLVwiXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbXCJHLUMtT1hZVC0tXCJdPUVbXCJUUC5TT05PQlVPWSBBVEFDXCJdLHRbXCJHLUMtT1hZVC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlSLS1cIl09RVtcIlRQLlNPTk9CVU9ZIFJPXCJdLHRbXCJHLUMtT1hZUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVtcIkctQy1PWFlLLS1cIl09RVtcIlRQLlNPTk9CVU9ZIEtJTkdQSU5cIl0sdFtcIkctQy1PWFlLLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJW1wiRy1DLU9YTi0tLVwiXT1FW1wiVFAuRk9STUFUSU9OXCJdLHRbXCJHLUMtT1hOLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSC0tLVwiXT1FW1wiVFAuSEFSQk9SXCJdLHRbXCJHLUMtT1hILS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSFEtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sdFtcIkctQy1PWEhRLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hIQS0tXCJdPUVbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSx0W1wiRy1DLU9YSEEtLVwiXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVtcIkctQy1PWEhZLS1cIl09RVtcIlRQLkhBUkJPUiBQT0lOVCBZXCJdLHRbXCJHLUMtT1hIWS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YSFgtLVwiXT1FW1wiVFAuSEFSQk9SIFBPSU5UIFhcIl0sdFtcIkctQy1PWEhYLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hSLS0tXCJdPUVbXCJUUC5ST1VURVwiXSx0W1wiRy1DLU9YUi0tLVwiXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFJSLS1cIl09RVtcIlRQLlJPVVRFIFJFTkRFWlZPVVNcIl0sdFtcIkctQy1PWFJSLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSRC0tXCJdPUVbXCJUUC5ST1VURSBESVZFUlNJT05TXCJdLHRbXCJHLUMtT1hSRC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1DLU9YUlctLVwiXT1FW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sdFtcIkctQy1PWFJXLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSUC0tXCJdPUVbXCJUUC5ST1VURSBQSU1cIl0sdFtcIkctQy1PWFJQLS1cIl09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbXCJHLUMtT1hSVC0tXCJdPUVbXCJUUC5ST1VURSBQT0lOVCBSXCJdLHRbXCJHLUMtT1hSVC0tXCJdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJW1wiRy1DLU9YU1RDLVwiXT1FW1wiVFAuQ09NQkFUQU5UIFNUQVRJT05cIl0sdFtcIkctQy1PWFNUQy1cIl09e3gxOi0xNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YU1RDUFwiXT1FW1wiVFAuUElDS0VUIFNUQVRJT05cIl0sdFtcIkctQy1PWFNUQ1BcIl09e3gxOi0xNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YU1RDQVwiXT1FW1wiVFAuQVNXIFNISVAgU1RBVElPTlwiXSx0W1wiRy1DLU9YU1RDQVwiXT17eDE6LTE1LHgyOjE0MCx5MTo2MCx5MjoxNDB9LElbXCJHLUMtT1hTVFItXCJdPUVbXCJUUC5SRVBMRU5JU0hNRU5UIEFUIFNFQSAoUkFTKSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVFItXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUSC1cIl09RVtcIlRQLlJFU0NVRSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVEgtXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUUy1cIl09RVtcIlRQLlNVQk1BUklORSBTVEFUSU9OXCJdLHRbXCJHLUMtT1hTVFMtXCJdPXt4MTotMTUseDI6MTQwLHkxOjYwLHkyOjE0MH0sSVtcIkctQy1PWFNUU0FcIl09RVtcIlRQLkFTVyBTVUJNQVJJTkUgU1RBVElPTlwiXSx0W1wiRy1DLU9YU1RTQVwiXT17eDE6LTExNSx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1DLU9YUy0tLVwiXT1FW1wiVFAuU0VBUkNIXCJdLHRbXCJHLUMtT1hTLS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YU0EtLVwiXT1FW1wiVFAuU0VBUkNIIEFSRUFcIl0sdFtcIkctQy1PWFNBLS1cIl09e3gxOjIwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hTRC0tXCJdPUVbXCJUUC5ESVAgUE9TSVRJT05cIl0sdFtcIkctQy1PWFNELS1cIl09e3gxOjEwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJHLUMtT1hTQy0tXCJdPUVbXCJUUC5TRUFSQ0ggQ0VOVEVSXCJdLHRbXCJHLUMtT1hTQy0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9YQUMtLVwiXT1FW1wiVFAuQ09NQkFUIEFJUiBQQVRST0wgKENBUClcIl0sdFtcIkctQy1PWEFDLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBQS0tXCJdPUVbXCJUUC5BSVJCT1JORSBFQVJMWSBXQVJOSU5HIChBRVcpXCJdLHRbXCJHLUMtT1hBQS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVQtLVwiXT1FW1wiVFAuVEFDQU5cIl0sdFtcIkctQy1PWEFULS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBSy0tXCJdPUVbXCJUUC5UQU5LSU5HXCJdLHRbXCJHLUMtT1hBSy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQUYtLVwiXT1FW1wiVFAuRklYRUQgV0lOR1wiXSx0W1wiRy1DLU9YQUYtLVwiXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVtcIkctQy1PWEFILS1cIl09RVtcIlRQLlJPVEFSWSBXSU5HXCJdLHRbXCJHLUMtT1hBSC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQU8tLVwiXT1FW1wiVFAuVE9NQ0FUXCJdLHRbXCJHLUMtT1hBTy0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVItLVwiXT1FW1wiVFAuUkVTQ1VFXCJdLHRbXCJHLUMtT1hBUi0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQVAtLVwiXT1FW1wiVFAuUkVQTEVOSVNIXCJdLHRbXCJHLUMtT1hBUC0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJW1wiRy1DLU9YQU0tLVwiXT1FW1wiVFAuTUFSU0hBTExcIl0sdFtcIkctQy1PWEFNLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBUy0tXCJdPUVbXCJUUC5TVFJJS0UgSVBcIl0sdFtcIkctQy1PWEFTLS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT1hBRC0tXCJdPUVbXCJUUC5DT1JSSURPUiBUQUIgUE9JTlRcIl0sdFtcIkctQy1PWEFELS1cIl09e3gxOjYwLHgyOjE0MCx5MTo0MCx5MjoxNjB9LElbXCJHLUMtT0ctLS0tXCJdPUVbXCJUUC5BQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1PRy0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dDLS0tXCJdPUVbXCJUUC5BQ1RJT04gUE9JTlRcIl0sdFtcIkctQy1PR0MtLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dQLS0tXCJdPUVbXCJUUC5DT05UQUNUIFBPSU5UXCJdLHRbXCJHLUMtT0dQLS0tXCJdPXt4MTo1NSx4MjoxNDUseTE6LTEwfSxJW1wiRy1DLU9HVC0tLVwiXT1FW1wiVFAuQ09PUkRJTkFUSU9OIFBPSU5UXCJdLHRbXCJHLUMtT0dULS0tXCJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJW1wiRy1DLU9HRC0tLVwiXT1FW1wiVFAuREVDSVNJT04gUE9JTlRcIl0sdFtcIkctQy1PR0QtLS1cIl09e3gxOjMwLHgyOjE3MCx5MToyNSx5MjoxNjB9LElbXCJHLUMtT0dMLS0tXCJdPUVbXCJUUC5BQ1RJT04gTElOS1VQIFBPSU5UXCJdLHRbXCJHLUMtT0dMLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJW1wiRy1DLU9HTi0tLVwiXT1FW1wiVFAuQUNUSU9OIFBBU1NBR0UgUE9JTlRcIl0sdFtcIkctQy1PR04tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dSLS0tXCJdPUVbXCJUUC5BQ1RJT04gUkFMTFkgUE9JTlRcIl0sdFtcIkctQy1PR1ItLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJHLUMtT0dTLS0tXCJdPUVbXCJUUC5BQ1RJT04gUkVMRUFTRSBQT0lOVFwiXSx0W1wiRy1DLU9HUy0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1PR0ktLS1cIl09RVtcIlRQLkFDVElPTiBTVEFSVCBQT0lOVFwiXSx0W1wiRy1DLU9HSS0tLVwiXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVtcIkctQy1PR1ctLS1cIl09RVtcIlRQLldBWVBPSU5UXCJdLHRbXCJHLUMtT0dXLS0tXCJdPXt4MTo2MCx4MjoxNDAseTE6NjAseTI6MTQwfSxJW1wiRy1PLVZBLS0tLVwiXT1FW1wiVFAuRklSRVwiXSxJW1wiRy1PLVZSLS0tLVwiXT1FW1wiR1IuRVEuSE9XSVRaRVJcIl0sSVtcIkctTy1WRS0tLS1cIl09RVtcIlNULklDLktJTExJTkcgVklDVElNXCJdLElbXCJHLU8tVkItLS0tXCJdPUVbXCJBSVIuTUlTU0lMRS5JQy5CT01CXCJdLElbXCJHLU8tVlktLS0tXCJdPUVbXCJTVC5JQy5CT09CWSBUUkFQXCJdLElbXCJHLU8tVkQtLS0tXCJdPUVbXCJTVC5JQy5EUklWRS1CWSBTSE9PVElOR1wiXSxJW1wiRy1PLVZJLS0tLVwiXT1FW1wiVFAuSU5ESVJFQ1QgRklSRVwiXSxJW1wiRy1PLVZNLS0tLVwiXT1FW1wiR1IuRVEuTU9SVEFSXCJdLElbXCJHLU8tVkstLS0tXCJdPUVbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0sSVtcIkctTy1WUy0tLS1cIl09RVtcIlNULklDLlNOSVBJTkdcIl0sSVtcIkctTy1WUC0tLS1cIl09RVtcIlNULklDLlBPSVNPTklOR1wiXSxJW1wiRy1PLVZVLS0tLVwiXT1FW1wiVFAuQU1CVVNIXCJdLElbXCJHLU8tVkMtLS0tXCJdPUVbXCJHUi5JQy5GRi5DTEFTUyBWXCJdLElbXCJHLU8tVkgtLS0tXCJdPUVbXCJBUi5JLkZGLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdLElbXCJHLU8tVkYtLS0tXCJdPVtFW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sRVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVtcIkctTy1WTy0tLS1cIl09RVtcIkdSLklDLkZGLklORkFOVFJZXCJdLElbXCJHLU8tVkwtLS0tXCJdPUVbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxJW1wiRy1PLVZYLS0tLVwiXT1FW1wiR1IuSUMuRkYuU0lHTkFMXCJdLElbXCJHLU8tVlotLS0tXCJdPUVbXCJHUi5JQy5GRi5TVVBQTFlcIl0sSVtcIkctTy1MQi0tLS1cIl09RVtcIlNULklDLkJMQUNLIExJU1QgTE9DQVRJT05cIl0sSVtcIkctTy1MRy0tLS1cIl09RVtcIlNULklDLkdSQVkgTElTVCBMT0NBVElPTlwiXSxJW1wiRy1PLUxXLS0tLVwiXT1FW1wiU1QuSUMuV0hJVEUgTElTVCBMT0NBVElPTlwiXSxJW1wiRy1PLVBSLS0tLVwiXT1FW1wiVFAuUk9BRCBCTE9DS1wiXSxJW1wiRy1PLVBSQi0tLVwiXT1FW1wiVFAuUk9BRCBCTE9DSyAoVU5ERVIgQ09OU1RSVUNUSU9OKVwiXSxJW1wiRy1PLVBULS0tLVwiXT1FW1wiU1QuSUMuUEFUUk9MTElOR1wiXSxJW1wiRy1PLVBDLS0tLVwiXT1bRVtcIlNULklDLklORElWSURVQUxcIl0sRVtcIlNULk0xLldJTExJTkdcIl1dLElbXCJHLU8tUENVLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuQ09FUkNFRC9JTVBSRVNTRURcIl1dLElbXCJHLU8tUEQtLS0tXCJdPUVbXCJTVC5JQy5ERU1PTlNUUkFUSU9OXCJdLElbXCJHLU8tUE0tLS0tXCJdPUVbXCJTVC5JQy5NSU5FIExBWUlOR1wiXSxJW1wiRy1PLVBILS0tLVwiXT1FW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLElbXCJHLU8tUEhZLS0tXCJdPUVbXCJTVC5JQy5SQURJTyBBTkQgVEVMRVZJU0lPTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sSVtcIkctTy1QSFctLS1cIl09W0VbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl0sRVtcIlNULk0xLldSSVRURU4gUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdXSxJW1wiRy1PLVBIRy0tLVwiXT1bRVtcIlNULklDLlBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXSxFW1wiU1QuTTEuV1JJVFRFTiBQU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbXCJHLU8tUEhULS0tXCJdPVtFW1wiU1QuSUMuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdLEVbXCJTVC5NMS5IT1VTRS1UTy1IT1VTRVwiXV0sSVtcIkctTy1QRy0tLS1cIl09RVtcIlNULklDLlNFQVJDSElOR1wiXSxJW1wiRy1PLVBTLS0tLVwiXT1FW1wiU1QuSUMuU1BZXCJdLElbXCJHLU8tUEYtLS0tXCJdPUVbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxJW1wiRy1PLVBJLS0tLVwiXT1FW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl0sSVtcIkctTy1QRS0tLS1cIl09W0VbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sRVtcIkdSLklDLkZGLklOVEVSQ0VQVFwiXV0sSVtcIkctTy1QWC0tLS1cIl09RVtcIlNULklDLkVYVE9SVElPTlwiXSxJW1wiRy1PLVBKVi0tLVwiXT1bRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJHLU8tUEpBLS0tXCJdPVtFW1wiU1QuSUMuSElKQUNLSU5HIChBSVJQTEFORSlcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIkctTy1QSkItLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEJPQVQpXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJHLU8tUEstLS0tXCJdPVtFW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxFW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sSVtcIkctTy1QQS0tLS1cIl09RVtcIlNULklDLkFSUkVTVFwiXSxJW1wiRy1PLVBPLS0tLVwiXT1FW1wiU1QuSUMuRFJVRyBSRUxBVEVEIEFDVElWSVRJRVNcIl0sSVtcIkctTy1JUi0tLS1cIl09RVtcIlNULklDLkdST1VQXCJdLElbXCJHLU8tSVMtLS0tXCJdPUVbXCJTVC5JQy5TQUZFIEhPVVNFXCJdLElbXCJHLU8tSUctLS0tXCJdPUVbXCJTVC5JQy5HUkFGRklUSVwiXSxJW1wiRy1PLUlWLS0tLVwiXT1FW1wiU1QuSUMuVkFOREFMSVNNL0xPT1QvUkFOU0FDSy9QTFVOREVSL1NBQ0tcIl0sSVtcIkctTy1JSy0tLS1cIl09RVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdLElbXCJHLU8tSUQtLS0tXCJdPVtFW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl0sRVtcIlNULk0xLkRSVUdcIl1dLElbXCJHLU8tSUYtLS0tXCJdPUVbXCJTVC5JQy5JTlRFUk5BTCBTRUNVUklUWSBGT1JDRVwiXX19XSxZPVtMLHksaCx4LFUscCxtLEYseixILHt0eXBlOlwibGV0dGVyXCIsZ2V0TWV0YWRhdGE6byxnZXRJY29uczpNLGljb25QYXJ0czpbZnVuY3Rpb24oSSx0LEUsUixlLEEpe3ZhciBDPXQuYWZmaWxpYXRpb258fFwiRnJpZW5kXCIsVD1FLmljb25Db2xvcltDXSxTPXtcIjI1MjVCLkFTV1NVQlwiOnt0eXBlOlwicGF0aFwiLGQ6XCJtIDgwLDg1IDQwLDAgMCwtMjAgLTQwLDAgeiBtIDIwLC0zMCAwLDQwIG0gLTQwLDE1IDE1LDE1IDUwLDAgMTUsLTE1IC0xNSwtMTUgLTUwLDAgelwifSxcIjI1MjVCLk5DQlRULlNUTlwiOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJOQ1wifV0sXCIyNTI1Qi5TVE4uQVNXU0hQXCI6W3t0eXBlOlwicGF0aFwiLGZpbGw6ITEsZDpcIm0gNzAsODUgNjAsMCAwLDMwIC02MCwwIHogbSAzMCwtMTUgMCw2MFwifSx7dHlwZTpcInRleHRcIixzdHJva2U6ITEseDoxMDAseToxNDUsZm9udHNpemU6MzAsdGV4dDpcIkFTXCJ9XSxcIjI1MjVCLlNUTi5QS1RcIjpbe3R5cGU6XCJwYXRoXCIsZmlsbDohMSxkOlwibSA3MCw4NSA2MCwwIDAsMzAgLTYwLDAgeiBtIDMwLC0xNSAwLDYwXCJ9LHt0eXBlOlwidGV4dFwiLHN0cm9rZTohMSx4OjEwMCx5OjE0NSxmb250c2l6ZTozMCx0ZXh0OlwiUEtcIn1dLFwiMjUyNUIuU1ROLlJTQ1wiOlt7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJSU1wifV0sXCIyNTI1Qi5TVE5cIjp7dHlwZTpcInBhdGhcIixmaWxsOiExLGQ6XCJtIDcwLDg1IGMgMjAsMCA0MCwwIDYwLDAgMCwxMCAwLDIwIDAsMzAgLTIwLDAgLTQwLDAgLTYwLDAgMCwtMTAgMCwtMjAgMCwtMzAgeiBtIDMwLC0xNSBjIDAsMjAgMCw0MCAwLDYwIG0gMzUsLTUgQyAxMjAsMTQ4IDgyLjcsMTQ5IDY2LjgsMTI2IDQ5LjIsMTA1IDU5LjEsNjkuMiA4NS4yLDYwLjEgMTAzLDUzLjEgMTI0LDU5LjQgMTM1LDc0LjhcIn0sXCIyNTI1Qi5TVUIuU1ROXCI6W3t0eXBlOlwicGF0aFwiLGQ6XCJtIDcwLDg1IDYwLDAgMCwzMCAtNjAsMCB6IG0gMzAsLTE1IDAsNjBcIn0se3R5cGU6XCJ0ZXh0XCIsc3Ryb2tlOiExLHg6MTAwLHk6MTQ1LGZvbnRzaXplOjMwLHRleHQ6XCJTU1wifV19O2Zvcih2YXIgTiBpbiBTKVMuaGFzT3duUHJvcGVydHkoTikmJihJLmhhc093blByb3BlcnR5KE4pJiZjb25zb2xlLndhcm4oXCJPdmVycmlkZSBvZjogXCIrTiksbi5jYWxsKHRoaXMsU1tOXSxUKSxJW05dPVNbTl0pfV0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIlMtUy1TLS0tLS1cIl09RVtcIjI1MjVCLlNUTlwiXSxJW1wiUy1TLVNQLS0tLVwiXT1FW1wiMjUyNUIuU1ROLlBLVFwiXSxJW1wiUy1TLVNBLS0tLVwiXT1FW1wiMjUyNUIuU1ROLkFTV1NIUFwiXSxJW1wiUy1TLU5OLS0tLVwiXT1FW1wiMjUyNUIuTkNCVFQuU1ROXCJdLElbXCJTLVMtTk5SLS0tXCJdPUVbXCIyNTI1Qi5TVE4uUlNDXCJdLElbXCJTLVUtU1MtLS0tXCJdPUVbXCIyNTI1Qi5TVUIuU1ROXCJdLElbXCJTLVUtU1NBLS0tXCJdPUVbXCIyNTI1Qi5BU1dTVUJcIl0sSVtcIkctTy1TQldELS1cIl09RVtcIlRQLldSRUNLLCBEQU5HRVJPVVNcIl0sdFtcIkctTy1TQlhELS1cIl09e3gxOjM1LHgyOjE2NSx5MTo3MCx5MjoxMzB9fX0sa10sVz1bTCx5LGgseCxVLHAsbSxGLHosSCx7dHlwZTpcImxldHRlclwiLGdldE1ldGFkYXRhOm8sZ2V0SWNvbnM6TSxpY29uUGFydHM6W2MsVl0saWNvbnM6ZnVuY3Rpb24oSSx0LEUsUil7SVtcIkUtSS1BLS0tLS1cIl09W0VbXCJBQy5JQy5DUklNSU5BTC5DSVZJTCBESVNUVVJCQU5DRVwiXV0sSVtcIkUtSS1BQy0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiQUMuTTEuUklPVFwiXV0sSVtcIkUtSS1CLS0tLS1cIl09W0VbXCJBQy5JQy5DUklNSU5BTC5BQ1RJVklUWS5JTkNJREVOVFwiXV0sSVtcIkUtSS1CQS0tLS1cIl09W0VbXCJTVC5JQy5CT01CXCJdLEVbXCJBQy5NMS5USFJFQVRcIl1dLElbXCJFLUktQkMtLS0tXCJdPVtFW1wiU1QuSUMuRVhQTE9TSU9OXCJdLHMuX3NjYWxlKC42LEVbXCJTVC5JQy5CT01CXCJdKV0sSVtcIkUtSS1CRC0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXSxFW1wiU1QuTTEuTE9PVFwiXV0sSVtcIkUtSS1CRi0tLS1cIl09W0VbXCJBQy5JQy5TSE9PVElOR1wiXV0sSVtcIkUtSS1DLS0tLS1cIl09W0VbXCJBQy5JQy5GSVJFIEVWRU5UXCJdXSxJW1wiRS1JLUNBLS0tLVwiXT1bRVtcIkFDLklDLkhPVCBTUE9UXCJdXSxJW1wiRS1JLUNCLS0tLVwiXT1bRVtcIkFDLklDLk5PTi1SRXNJZEVOVElBTCBGSVJFXCJdXSxJW1wiRS1JLUNDLS0tLVwiXT1bRVtcIkFDLklDLkZJUkUgT1JJR0lOXCJdXSxJW1wiRS1JLUNELS0tLVwiXT1bRVtcIkFDLklDLlJFc0lkRU5USUFMIEZJUkVcIl1dLElbXCJFLUktQ0UtLS0tXCJdPVtFW1wiQUMuSUMuU0NIT09MIEZJUkVcIl1dLElbXCJFLUktQ0YtLS0tXCJdPVtFW1wiQUMuSUMuU01PS0VcIl1dLElbXCJFLUktQ0ctLS0tXCJdPVtFW1wiQUMuSUMuU1BFQ0lBTCBORUVEUyBGSVJFXCJdXSxJW1wiRS1JLUNILS0tLVwiXT1bRVtcIkFDLklDLldJTEQgRklSRVwiXV0sSVtcIkUtSS1ELS0tLS1cIl09W0VbXCJBQy5JQy5IQVpBUkRPVVMgTUFURVJJQUxTIElOQ0lERU5UXCJdXSxJW1wiRS1JLURBLS0tLVwiXT1bRVtcIkFDLklDLkNIRU1JQ0FMIEFHRU5UXCJdXSxJW1wiRS1JLURCLS0tLVwiXT1bRVtcIkFDLklDLkNPUlJPU0lWRSBNQVRFUklBTFwiXV0sSVtcIkUtSS1EQy0tLS1cIl09W0VbXCJBQy5JQy5IQVpBUkRPVVMgV0hFTiBXRVRcIl1dLElbXCJFLUktREQtLS0tXCJdPVtFW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURFLS0tLVwiXT1bRVtcIkFDLklDLkZMQU1NQUJMRSBHQVNcIl1dLElbXCJFLUktREYtLS0tXCJdPVtFW1wiQUMuSUMuRkxBTU1BQkxFIExJUVVJRFwiXV0sSVtcIkUtSS1ERy0tLS1cIl09W0VbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl1dLElbXCJFLUktREgtLS0tXCJdPVtFW1wiQUMuSUMuTk9OLUZMQU1NQUJMRSBHQVNcIl1dLElbXCJFLUktREktLS0tXCJdPVtFW1wiQUMuSUMuT1JHQU5JQyBQRVJPWElERVwiXV0sSVtcIkUtSS1ESi0tLS1cIl09W0VbXCJBQy5JQy5PWElESVpFUlwiXV0sSVtcIkUtSS1ESy0tLS1cIl09W0VbXCJBQy5JQy5SQURJT0FDVElWRSBNQVRFUklBTFwiXV0sSVtcIkUtSS1ETC0tLS1cIl09W0VbXCJBQy5JQy5TUE9OVEFORU9VU0xZIENPTUJVU1RJQkxFIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURNLS0tLVwiXT1bRVtcIkFDLklDLlRPWElDIEdBU1wiXV0sSVtcIkUtSS1ETi0tLS1cIl09W0VbXCJBQy5JQy5UT1hJQyBJTkZFQ1RJT1VTIE1BVEVSSUFMXCJdXSxJW1wiRS1JLURPLS0tLVwiXT1bRVtcIkFDLklDLlVORVhQTE9ERUQgT1JETkFOQ0VcIl1dLElbXCJFLUktRS0tLS0tXCJdPVtFW1wiU1QuTTEuSU5DSURFTlRcIl0sRVtcIlNULklDLkhJSkFDS0lORyAoQUlSUExBTkUpXCJdXSxJW1wiRS1JLUVBLS0tLVwiXT1bRVtcIlNULk0xLkFDQ0lERU5UXCJdLEVbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXV0sSVtcIkUtSS1GLS0tLS1cIl09W0VbXCJTVC5NMS5JTkNJREVOVFwiXSxFW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVtcIkUtSS1GQS0tLS1cIl09W0VbXCJTVC5NMS5BQ0NJREVOVFwiXSxFW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVtcIkUtSS1HLS0tLS1cIl09W0VbXCJTVC5NMS5JTkNJREVOVFwiXSxFW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVtcIkUtSS1HQS0tLS1cIl09W0VbXCJTVC5NMS5BQ0NJREVOVFwiXSxFW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVtcIkUtSS1HQi0tLS1cIl09W0VbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdLEVbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLElbXCJFLUktSC0tLS0tXCJdPVtFW1wiU1QuTTEuSU5DSURFTlRcIl0sRVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJW1wiRS1JLUhBLS0tLVwiXT1bRVtcIlNULk0xLkFDQ0lERU5UXCJdLEVbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXV0sSVtcIkUtTi1BLS0tLS1cIl09W10sSVtcIkUtTi1BQS0tLS1cIl09W0VbXCJBQy5JQy5BRlRFUlNIT0NLXCJdXSxJW1wiRS1OLUFCLS0tLVwiXT1bRVtcIkFDLklDLkFWQUxBTkNIRVwiXV0sSVtcIkUtTi1BQy0tLS1cIl09W0VbXCJBQy5JQy5FQVJUSFFVQUtFIEVQSUNFTlRFUlwiXV0sSVtcIkUtTi1BRC0tLS1cIl09W0VbXCJBQy5JQy5MQU5EU0xJREVcIl1dLElbXCJFLU4tQUUtLS0tXCJdPVtFW1wiQUMuSUMuU1VCU0lERU5DRVwiXV0sSVtcIlctUy1XU1ZFLS1cIl09W0VbXCJBQy5JQy5WT0xDQU5JQyBFUlVQVElPTlwiXV0sSVtcIkUtTi1BRy0tLS1cIl09W0VbXCJBQy5JQy5WT0xDQU5JQyBUSFJFQVRcIl1dLElbXCJXLVMtV1NELUxJXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuRFJJWlpMRS5JTlRFUk1JVFRFTlQgTElHSFRcIl1dLElbXCJFLU4tQi0tLS0tXCJdPVtdLElbXCJFLU4tQkItLS0tXCJdPVtFW1wiQUMuSUMuRFJPVUdIVFwiXV0sSVtcIkUtTi1CQy0tLS1cIl09W0VbXCJBQy5JQy5GTE9PRFwiXV0sSVtcIlctUy1XU0ZHU09cIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5GT0cuU0tZIE9CU0NVUkVEXCJdXSxJW1wiVy1TLVdTR1JMLVwiXT1bRVtcIkFUTU9TUEhFUklDLklDLkhBSUwuTElHSFQgTk9UIEFTU09DSUFURUQgV0lUSCBUSFVOREVSXCJdXSxJW1wiRS1OLUJGLS0tLVwiXT1bRVtcIkFDLklDLklOVkVSU0lPTlwiXV0sSVtcIlctUy1XU1ItTElcIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5SQUlOLklOVEVSTUlUVEVOVCBMSUdIVFwiXV0sSVtcIlctUy1XU0RTTE1cIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5EVVNUIE9SIFNBTkQuTElHSFQgVE8gTU9ERVJBVEVcIl1dLElbXCJXLVMtV1NTLUxJXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuU05PVy5JTlRFUk1JVFRFTlQgTElHSFRcIl1dLElbXCJXLVMtV1NUTUgtXCJdPVtFW1wiQVRNT1NQSEVSSUMuSUMuU1RPUk1TLlRIVU5ERVJTVE9STSBMSUdIVCBUTyBNT0RFUkFURSAtIFdJVEggSEFJTFwiXV0sSVtcIlctUy1XU1QtRkNcIl09W0VbXCJBVE1PU1BIRVJJQy5JQy5TVE9STVMuRlVOTkVMIENMT1VEIChUT1JOQURPL1dBVEVSU1BPVVQpXCJdXSxJW1wiVy1TLVdTVFNTLVwiXT1bRVtcIkFUTU9TUEhFUklDLklDLlRST1BJQ0FMIFNUT1JNIFNZU1RFTVMuVFJPUElDQUwgU1RPUk1cIl1dLElbXCJFLU4tQk0tLS0tXCJdPVtFW1wiQUMuSUMuVFNVTkFNSVwiXV0sSVtcIkUtTi1DLS0tLS1cIl09W10sSVtcIkUtTi1DQS0tLS1cIl09W0VbXCJBQy5JQy5CSVJEXCJdXSxJW1wiRS1OLUNCLS0tLVwiXT1bRVtcIkFDLklDLklOU0VDVFwiXV0sSVtcIkUtTi1DQy0tLS1cIl09W0VbXCJBQy5JQy5NSUNST0JJQUxcIl1dLElbXCJFLU4tQ0QtLS0tXCJdPVtFW1wiQUMuSUMuUkVQVElMRVwiXV0sSVtcIkUtTi1DRS0tLS1cIl09W0VbXCJBQy5JQy5ST0RFTlRcIl1dLElbXCJFLU8tQS0tLS0tXCJdPUlbXCJFLU8tQUEtLS0tXCJdPUlbXCJFLU8tQUItLS0tXCJdPUlbXCJFLU8tQUMtLS0tXCJdPUlbXCJFLU8tQUQtLS0tXCJdPVtFW1wiR1IuSUMuRU1FUkdFTkNZIE1FRElDQUwgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUFFLS0tLVwiXT1bRVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEVbXCJHUi5NMS5NRURFVkFDXCJdXSxJW1wiRS1PLUFGLS0tLVwiXT1bcy5fdHJhbnNsYXRlKDAsMTAscy5fc2NhbGUoLjgsRVtcIkdSLkkuRkYuQ0lWSUxJQU4gUk9UQVJZIFdJTkdcIl0pKSxFW1wiR1IuTTEuTUVERVZBQ1wiXV0sSVtcIkUtTy1BRy0tLS1cIl09W0VbXCJBQy5JQy5IRUFMVEggREVQQVJUTUVOVCBGQUNJTElUWVwiXV0sSVtcIkUtTy1BSi0tLS1cIl09W0VbXCJBQy5JQy5NRURJQ0FMIEZBQ0lMSVRJRVMgT1VUUEFUSUVOVFwiXV0sSVtcIkUtTy1BSy0tLS1cIl09W0VbXCJBQy5JQy5PUEVSQVRJT04vRU1FUkdFTkNZIE1FRElDQUwgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUFMLS0tLVwiXT1bRVtcIkFDLklDLlBIQVJNQUNZXCJdXSxJW1wiRS1PLUFNLS0tLVwiXT1bRVtcIkFDLklDLlRSSUFHRVwiXV0sSVtcIkUtTy1CLS0tLS1cIl09SVtcIkUtTy1CQS0tLS1cIl09SVtcIkUtTy1CQi0tLS1cIl09SVtcIkUtTy1CQy0tLS1cIl09W0VbXCJHUi5JQy5GRi5FTUVSR0VOQ1kgT1BFUkFUSU9OXCJdXSxJW1wiRS1PLUJELS0tLVwiXT1bcy5fc2NhbGUoLjcsRVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEVbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdXSxJW1wiRS1PLUJFLS0tLVwiXT1bcy5fc2NhbGUoLjcsRVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEVbXCJBQy5NMS5FTUVSR0VOQ1kgSU5DSURFTlQgQ09NTUFORCBDRU5URVJcIl1dLElbXCJFLU8tQkYtLS0tXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksRVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXV0sSVtcIkUtTy1CRy0tLS1cIl09W0VbXCJBQy5JQy5FTUVSR0VOQ1kgUFVCTElDIElORk9STUFUSU9OIENFTlRFUlwiXV0sSVtcIkUtTy1CSC0tLS1cIl09W3MuX3NjYWxlKC43LEVbXCJHUi5JQy5GRi5FTUVSR0VOQ1kgT1BFUkFUSU9OXCJdKSxFW1wiQUMuTTEuRU1FUkdFTkNZIFNIRUxURVJcIl1dLElbXCJFLU8tQkktLS0tXCJdPVtzLl9zY2FsZSguNyxFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksRVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl1dLElbXCJFLU8tQkotLS0tXCJdPVtFW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXV0sSVtcIkUtTy1CSy0tLS1cIl09SVtcIlMtRy1VU1NXLS1cIl0sSVtcIkUtTy1CTC0tLS1cIl09W0VbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxFW1wiQUMuTTEuRU1FUkdFTkNZXCJdXSxJW1wiRS1PLUMtLS0tLVwiXT1JW1wiRS1PLUNBLS0tLVwiXT1JW1wiRS1PLUNCLS0tLVwiXT1JW1wiRS1PLUNFLS0tLVwiXT1bRVtcIkdSLklDLkZJUkUgUFJPVEVDVElPTlwiXV0sSVtcIkUtTy1DQy0tLS1cIl09W0VbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl1dLElbXCJFLU8tQ0QtLS0tXCJdPVtFW1wiQUMuSUMuT1RIRVIgV0FURVIgU1VQUExZIExPQ0FUSU9OXCJdXSxJW1wiRS1PLUQtLS0tLVwiXT1JW1wiRS1PLURBLS0tLVwiXT1JW1wiRS1PLURCLS0tLVwiXT1JW1wiRS1PLURDLS0tLVwiXT1bRVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVtcIkUtTy1ERC0tLS1cIl09SVtcIkUtTy1EREEtLS1cIl09SVtcIkUtTy1EREItLS1cIl09SVtcIkUtTy1EREMtLS1cIl09W0VbXCJHUi5JQy5CVVJFQVUgT0YgQUxDT0hPTCwgVE9CQUNDTywgRklSRUFSTVMgQU5EIEVYUExPU0lWRVMgKEFURikgKERFUEFSVE1FTlQgT0YgSlVTVElDRSlcIl1dLElbXCJFLU8tREUtLS0tXCJdPUlbXCJFLU8tREVBLS0tXCJdPUlbXCJFLU8tREVCLS0tXCJdPUlbXCJFLU8tREVDLS0tXCJdPVtFW1wiR1IuSUMuRkYuQk9SREVSIFBBVFJPTFwiXV0sSVtcIkUtTy1ERi0tLS1cIl09SVtcIkUtTy1ERkEtLS1cIl09SVtcIkUtTy1ERkItLS1cIl09SVtcIkUtTy1ERkMtLS1cIl09W0VbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbXCJFLU8tREctLS0tXCJdPUlbXCJFLU8tREdBLS0tXCJdPUlbXCJFLU8tREdCLS0tXCJdPUlbXCJFLU8tREdDLS0tXCJdPVtFW1wiR1IuSUMuRFJVRyBFTkZPUkNFTUVOVCBBR0VOQ1kgKERFQSlcIl1dLElbXCJFLU8tREgtLS0tXCJdPUlbXCJFLU8tREhBLS0tXCJdPUlbXCJFLU8tREhCLS0tXCJdPUlbXCJFLU8tREhDLS0tXCJdPVtFW1wiR1IuSUMuRkYuREVQQVJUTUVOVCBPRiBKVVNUSUNFIChET0opXCJdXSxJW1wiRS1PLURJLS0tLVwiXT1JW1wiRS1PLURJQS0tLVwiXT1JW1wiRS1PLURJQi0tLVwiXT1JW1wiRS1PLURJQy0tLVwiXT1bRVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbXCJFLU8tREotLS0tXCJdPUlbXCJFLU8tREpCLS0tXCJdPUlbXCJFLU8tREpDLS0tXCJdPVtFW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UXCJdXSxJW1wiRS1PLURLLS0tLVwiXT1bRVtcIkdSLklDLkZGLlBSSVNPTlwiXV0sSVtcIkUtTy1ETC0tLS1cIl09SVtcIkUtTy1ETEEtLS1cIl09SVtcIkUtTy1ETEItLS1cIl09SVtcIkUtTy1ETEMtLS1cIl09W0VbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbXCJFLU8tRE0tLS0tXCJdPUlbXCJFLU8tRE1BLS0tXCJdPUlbXCJFLU8tRE1CLS0tXCJdPUlbXCJFLU8tRE1DLS0tXCJdPVtFW1wiR1IuSUMuVFJBTlNQT1JUQVRJT04gU0VDVVJJVFkgQUdFTkNZIChUU0EpXCJdXSxJW1wiRS1PLUROLS0tLVwiXT1JW1wiRS1PLUROQS0tLVwiXT1JW1wiRS1PLUROQy0tLVwiXT1bRVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVCBWRVNTRUxcIl1dLElbXCJFLU8tRE8tLS0tXCJdPUlbXCJFLU8tRE9BLS0tXCJdPUlbXCJFLU8tRE9CLS0tXCJdPUlbXCJFLU8tRE9DLS0tXCJdPVtFW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVtcIkUtTy1FQS0tLS1cIl09W3MuX3NjYWxlKC42LEVbXCJHUi5FUS5TRU5TT1JcIl0pLEVbXCJHUi5NMS5CSU9MT0dJQ0FMXCJdXSxJW1wiRS1PLUVCLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLkNIRU1JQ0FMXCJdXSxJW1wiRS1PLUVDLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLklOVFJVU0lPTlwiXV0sSVtcIkUtTy1FRC0tLS1cIl09W3MuX3NjYWxlKC42LEVbXCJHUi5FUS5TRU5TT1JcIl0pLEVbXCJHUi5NMS5OVUNMRUFSXCJdXSxJW1wiRS1PLUVFLS0tLVwiXT1bcy5fc2NhbGUoLjYsRVtcIkdSLkVRLlNFTlNPUlwiXSksRVtcIkdSLk0xLlJBRElPTE9HSUNBTFwiXV0sSVtcIkUtRi1BLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSRSBBTkQgRk9PRCBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1BQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BR1JJQ1VMVFVSQUwgTEFCT1JBVE9SWVwiXV0sSVtcIkUtRi1BQi0tLS1cIl09W0VbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXV0sSVtcIkUtRi1BQy0tLS1cIl09W0VbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxFW1wiQUMuTTEuQ09NTUVSQ0lBTFwiXV0sSVtcIkUtRi1BRC0tLS1cIl09W0VbXCJHUi5JTi5JQy5GQVJNL1JBTkNIXCJdXSxJW1wiRS1GLUFFLS0tLVwiXT1bRVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdLEVbXCJBQy5NMS5QUk9EVUNUSU9OXCJdXSxJW1wiRS1GLUFGLS0tLVwiXT1bRVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdLEVbXCJBQy5NMS5SRVRBSUxcIl1dLElbXCJFLUYtQUctLS0tXCJdPVtFW1wiR1IuSU4uSUMuR1JBSU4gU1RPUkFHRVwiXV0sSVtcIkUtRi1CLS0tLS1cIl09W0VbXCJBQy5JQy5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1CQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BVE1cIl1dLElbXCJFLUYtQkItLS0tXCJdPVtFW1wiR1IuSU4uSUMuQkFOS1wiXV0sSVtcIkUtRi1CQy0tLS1cIl09W0VbXCJHUi5JTi5JQy5CVUxMSU9OIFNUT1JBR0VcIl1dLElbXCJFLUYtQkQtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRkVERVJBTCBSRVNFUlZFIEJBTktcIl1dLElbXCJFLUYtQkUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRklOQU5DSUFMIEVYQ0hBTkdFXCJdXSxJW1wiRS1GLUJGLS0tLVwiXT1bRVtcIkdSLklOLklDLkZJTkFOQ0lBTCBTRVJWSUNFUywgT1RIRVJcIl1dLElbXCJFLUYtQy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuQ09NTUVSQ0lBTCBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1DQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DSEVNSUNBTCBQTEFOVFwiXV0sSVtcIkUtRi1DQi0tLS1cIl09W0VbXCJHUi5JTi5JQy5GSVJFQVJNUyBNQU5VRkFDVFVSRVJcIl1dLElbXCJFLUYtQ0MtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRklSRUFSTVMgUkVUQUlMRVJcIl1dLElbXCJFLUYtQ0QtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFBST0RVQ1RJT05cIl1dLElbXCJFLUYtQ0UtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbXCJFLUYtQ0YtLS0tXCJdPVtFW1wiR1IuSU4uSUMuSU5EVVNUUklBTCBTSVRFXCJdXSxJW1wiRS1GLUNHLS0tLVwiXT1bRVtcIkdSLklOLklDLkxBTkRGSUxMXCJdXSxJW1wiRS1GLUNILS0tLVwiXT1bRVtcIkdSLklOLklDLlBIQVJNQUNFVVRJQ0FMIE1BTlVGQUNUVVJFUlwiXV0sSVtcIkUtRi1DSS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT05UQU1JTkFURUQgSEFaQVJET1VTIFdBU1RFIFNJVEVcIl1dLElbXCJFLUYtQ0otLS0tXCJdPVtFW1wiR1IuSU4uSUMuVE9YSUMgUkVMRUFTRSBJTlZFTlRPUllcIl1dLElbXCJFLUYtRC0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuRURVQ0FUSU9OQUwgRkFDSUxJVElFUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVtcIkUtRi1EQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT0xMRUdFL1VOSVZFUlNJVFlcIl1dLElbXCJFLUYtREItLS0tXCJdPVtFW1wiR1IuSU4uSUMuU0NIT09MXCJdXSxJW1wiRS1GLUVBLS0tLVwiXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjc1LEVbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSkpLEVbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl1dLElbXCJFLUYtRUItLS0tXCJdPVtFW1wiR1IuSU4uSUMuTkFUVVJBTCBHQVMgRkFDSUxJVFlcIl1dLElbXCJFLUYtRUUtLS0tXCJdPVtFW1wiR1IuSU4uSUMuUFJPUEFORSBGQUNJTElUWVwiXV0sSVtcIkUtRi1GLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5HT1ZFUk5NRU5UIFNJVEUgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtRy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtR0EtLS0tXCJdPVtFW1wiR1IuSU4uSUMuQkFTRVwiXSxFW1wiQUMuTTEuTUlMSVRBUlkgQVJNT1JZXCJdXSxJW1wiRS1GLUgtLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1RBTCBTRVJWSUNFIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUhBLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1RBTCBESVNUUklCVVRJT04gQ0VOVEVSXCJdXSxJW1wiRS1GLUhCLS0tLVwiXT1bRVtcIkdSLklOLklDLlBPU1QgT0ZGSUNFXCJdXSxJW1wiRS1GLUktLS0tLVwiXT1bRVtcIkdSLklOLklDLlBVQkxJQyBWRU5VRVMgSU5GUkFTVFJVQ1RVUkVcIl1dLElbXCJFLUYtSUEtLS0tXCJdPVtFW1wiR1IuSU4uSUMuRU5DTE9TRUQgRkFDSVRMSVRZIChQVUJMSUMgVkVOVUUpXCJdXSxJW1wiRS1GLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLk9QRU4gRkFDSUxJVFkgKE9QRU4gVkVOVUUpXCJdXSxJW1wiRS1GLUlDLS0tLVwiXT1bRVtcIkdSLklOLklDLlJFQ1JFQVRJT05BTCBBUkVBXCJdXSxJW1wiRS1GLUlELS0tLVwiXT1bRVtcIkdSLklOLklDLlJFTElHSU9VUyBJTlNUSVRVVElPTlwiXV0sSVtcIkUtRi1KLS0tLS1cIl09W0VbXCJHUi5JTi5JQy5TUEVDSUFMIE5FRURTIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUpBLS0tLVwiXT1bRVtcIkdSLklOLklDLkFEVUxUIERBWSBDQVJFXCJdXSxJW1wiRS1GLUpCLS0tLVwiXT1bRVtcIkdSLklOLklDLkNISUxEIERBWSBDQVJFXCJdXSxJW1wiRS1GLUpDLS0tLVwiXT1bRVtcIkdSLklOLklDLkVMREVSIENBUkVcIl1dLElbXCJFLUYtSy0tLS0tXCJdPVtFW1wiR1IuSU4uSUMuVEVMRUNPTU1VTklDQVRJT05TIElORlJBU1RSVUNUVVJFXCJdXSxJW1wiRS1GLUtCLS0tLVwiXT1bRVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBUT1dFUlwiXV0sSVtcIkUtRi1MQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5BSVIgVFJBRkZJQyBDT05UUk9MIEZBQ0lMSVRZXCJdXSxJW1wiRy1NLUJDQi0tLVwiXT1bRVtcIkdSLklOLklDLkJSSURHRVwiXV0sdFtcIkctTS1CQ0ItLS1cIl09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbXCJFLUYtTEQtLS0tXCJdPVtFW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXV0sSVtcIkUtRi1MRS0tLS1cIl09W0VbXCJHUi5JQy5GRVJSWVwiXV0sSVtcIkUtRi1MRi0tLS1cIl09W0VbXCJHUi5JTi5JQy5IRUxJQ09QVEVSIExBTkRJTkcgU0lURVwiXV0sSVtcIlctUy1NTC0tLS1cIl09W0VbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBMT0NLXCJdXSxJW1wiRS1GLUxILS0tLVwiXT1bRVtcIkdSLklDLk1BSU5URU5BTkNFXCJdXSxJW1wiRS1GLUxKLS0tLVwiXT1bRVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJW1wiRS1GLUxLLS0tLVwiXT1bRVtcIkdSLklOLklDLlJFU1QgU1RPUFwiXV0sSVtcIlctUy1IUEJBLS1cIl09W0VbXCJHUi5JTi5JQy5UUkFOU1BPUlRBVElPTiBJTkZSQVNUUlVDVFVSRSBTSElQIEFOQ0hPUkFHRVwiXV0sSVtcIkUtRi1MTS0tLS1cIl09W0VbXCJHUi5JTi5JQy5UT0xMIEZBQ0lMSVRZXCJdXSxJW1wiRy1TLVBPLS0tLVwiXT1FW1wiVFAuVFJBRkZJQyBDT05UUk9MIFBPU1RcIl0sdFtcIkctUy1QTy0tLS1cIl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbXCJFLUYtTE8tLS0tXCJdPVtFW1wiR1IuSU4uSUMuVFJBRkZJQyBJTlNQRUNUSU9OIEZBQ0lMSVRZXCJdXSxJW1wiRS1GLUxQLS0tLVwiXT1bRVtcIkdSLklOLklDLlRVTk5FTFwiXV0sSVtcIkUtRi1NQS0tLS1cIl09W0VbXCJHUi5JTi5JQy5DT05UUk9MIFZBTFZFXCJdXSxJW1wiRS1GLU1CLS0tLVwiXT1bRVtcIkdSLklOLklDLkRBTVwiXV0sSVtcIkUtRi1NQy0tLS1cIl09W0VbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXV0sSVtcIkUtRi1NRC0tLS1cIl09W0VbXCJHUi5JTi5JQy5HUk9VTkQgV0FURVIgV0VMTFwiXV0sSVtcIkUtRi1NRS0tLS1cIl09W0VbXCJHUi5JTi5JQy5QVU1QSU5HIFNUQVRJT05cIl1dLElbXCJFLUYtTUYtLS0tXCJdPVtFW1wiR1IuSU4uSUMuUkVTRVJWT0lSXCJdXSxJW1wiRS1GLU1HLS0tLVwiXT1bRVtcIkdSLklOLklDLlNUT1JBR0UgVE9XRVJcIl1dLElbXCJFLUYtTUgtLS0tXCJdPVtFW1wiR1IuSU4uSUMuU1VSRkFDRSBXQVRFUiBJTlRBS0VcIl1dLElbXCJFLUYtTUktLS0tXCJdPVtFW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbXCJPLU8tRC0tLS0tXCJdPVtFW1wiU1QuSUMuREVNT05TVFJBVElPTlwiXV0sSVtcIk8tSS1SLS0tLS1cIl09W0VbXCJTVC5JQy5HUk9VUFwiXV0sSVtcIk8tVi1CLS0tLS1cIl09W0VbXCJTVC5JQy5CT01CXCJdXSxJW1wiTy1WLVAtLS0tLVwiXT1bRVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVtcIk8tTy1IQS0tLS1cIl09W0VbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXSxFW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSxJW1wiTy1PLUhWLS0tLVwiXT1bRVtcIlNULklDLkhJSkFDS0lORyAoQk9BVClcIl0sRVtcIlNULk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sSVtcIk8tTy1IVC0tLS1cIl09W0VbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXSxFW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSxJW1wiUy1HLUlYSC0tLVwiXT1bRVtcIkdSLklDLkZGLk1FRElDQUwgVFJFQVRNRU5UIEZBQ0lMSVRZXCJdXSxJW1wiUy1TLU5NLS0tLVwiXT1bRVtcIkdSLklDLkhPU1BJVEFMIFNISVBcIl1dLElbXCJFLU8tQkstLS0tXCJdPVtFW1wiR1IuSUMuRkYuU1VQUExZXCJdLEVbXCJHUi5JQy5XQVRFUlwiXV0sSVtcIlMtRy1VVUxDLS1cIl09W0VbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlRcIl1dLElbXCJTLVMtWEwtLS0tXCJdPVtFW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVtcIlMtRy1FUy0tLS1cIl09W0VbXCJHUi5FUS5TRU5TT1JcIl1dLElbXCJTLUctSVVFLS0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl1dLElbXCJTLUctSVVFTi0tXCJdPVtFW1wiR1IuSU4uSUMuRUxFQ1RSSUMgUE9XRVJcIl0sRVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSIE5VQ0xFQVJcIl1dLElbXCJTLUctSVJQLS0tXCJdPVtFW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdXSxJW1wiUy1HLUlCLS0tLVwiXT1bRVtcIkdSLklOLklDLkJBU0VcIl1dLElbXCJTLUctSVVULS0tXCJdPVtFW1wiR1IuSU4uSUMuVEVMRUNPTU1VTklDQVRJT05TXCJdXSxJW1wiUy1HLUlULS0tLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdXSxJW1wiUy1HLUlCQS0tLVwiXT1bRVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEVbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJW1wiUy1HLUlCTi0tLVwiXT1bRVtcIkdSLklDLk5BVkFMXCJdXSxJW1wiUy1HLUlVUC0tLVwiXT1bRVtcIkdSLklDLldBVEVSXCJdXX19LGtdO2Z1bmN0aW9uIHUoSSx0LEUpe3ZhciBSPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpLGU9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDMsMSksQT10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoNCwyKSxDPXRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cig2LDEpLFQ9dGhpcy5vcHRpb25zLnNpZGMuc3Vic3RyKDcsMSksUz10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoOCwyKSxOPXQuZnVuY3Rpb25pZD10aGlzLm9wdGlvbnMuc2lkYy5zdWJzdHIoMTAsMTApO3JldHVybiB0LmNvbnRleHQ9RS5jb250ZXh0W3BhcnNlSW50KHRoaXMub3B0aW9ucy5zaWRjLnN1YnN0cigyLDEpKV0sdC5hZmZpbGlhdGlvbj17MDpcIlVua25vd25cIiwxOlwiVW5rbm93blwiLDI6XCJGcmllbmRcIiwzOlwiRnJpZW5kXCIsNDpcIk5ldXRyYWxcIiw1OlwiSG9zdGlsZVwiLDY6XCJIb3N0aWxlXCJ9W2VdLHQuZGltZW5zaW9uPXtcIjAwXCI6XCJTZWFcIixcIjAxXCI6XCJBaXJcIixcIjAyXCI6XCJBaXJcIixcIjA1XCI6XCJBaXJcIixcIjA2XCI6XCJBaXJcIiwxMDpcIkdyb3VuZFwiLDExOlwiR3JvdW5kXCIsMTI6XCJHcm91bmRcIiwxNTpcIkdyb3VuZFwiLDIwOlwiR3JvdW5kXCIsMzA6XCJTZWFcIiwzNTpcIlN1YnN1cmZhY2VcIiwzNjpcIlN1YnN1cmZhY2VcIiwzOTpcIlN1YnN1cmZhY2VcIiw0MDpcIkdyb3VuZFwiLDUwOlwiQWlyXCIsNTE6XCJBaXJcIiw1MjpcIkdyb3VuZFwiLDUzOlwiU2VhXCIsNTQ6XCJTdWJzdXJmYWNlXCIsNjA6XCJHcm91bmRcIn1bQV18fFwiXCIsXCIxMFwiIT1BJiZcIjExXCIhPUEmJlwiMjVcIiE9QSYmXCIyN1wiIT1BJiZcIjQwXCIhPUF8fCh0LnVuaXQ9ITApLFwiMDVcIiE9QSYmXCIwNlwiIT1BJiZcIjUwXCIhPUF8fCh0LnNwYWNlPSEwKSxcIjQwXCI9PUEmJih0LmFjdGl2aXR5PSEwKSxcIjIwXCI9PUEmJih0Lmluc3RhbGxhdGlvbj0hMCksXCIyNVwiPT1BJiYodC5jb250cm9sTWVhc3VyZT0hMCksXCI2MFwiPT1BJiYodC5jeWJlcnNwYWNlPSEwKSxcIjM2XCI9PUEmJiExPT09dGhpcy5zdHlsZS5hbHRlcm5hdGVNZWRhbCYmKHQuZmlsbD0hMSksXCIzMFwiPT1BJiYxNWU0PT1OLnN1YnN0cigwLDYpJiYodC5mcmFtZT0hMSksXCIxXCI9PUMmJih0Lm5vdHByZXNlbnQ9SS5fZGFzaEFycmF5cy5hbnRpY2lwYXRlZCksXCIwXCIhPWUmJlwiMlwiIT1lJiZcIjVcIiE9ZXx8KHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzBcIj09QSYmMTZlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzVcIj09QSYmMTRlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMzVcIj09QSYmMTVlND09Ti5zdWJzdHIoMCw2KSYmKHQubm90cHJlc2VudD1JLl9kYXNoQXJyYXlzLnBlbmRpbmcpLFwiMlwiIT1DJiZcIjNcIiE9QyYmXCI0XCIhPUMmJlwiNVwiIT1DfHwodC5jb25kaXRpb249RS5zdGF0dXNbcGFyc2VJbnQoQyldKSx0LmJhc2VEaW1lbnNpb249dC5kaW1lbnNpb24sdC5iYXNlQWZmaWxhdGlvbj10LmFmZmlsaWF0aW9uLFwiNVwiPT1lJiZcIjFcIj09UiYmKHQuam9rZXI9ITApLFwiNlwiPT1lJiZcIjFcIj09UiYmKHQuZmFrZXI9ITApLCh0Lmpva2VyfHx0LmZha2VyKSYmKHQuYWZmaWxpYXRpb249RS5hZmZpbGlhdGlvblsxXSksXCIwMFwiPT1BJiYodC5kaW1lbnNpb25Vbmtub3duPSEwKSxcIjAwXCI9PUEmJlwiMVwiPT1SJiZcIlVua25vd25cIiE9dC5hZmZpbGlhdGlvbiYmKHQuYWZmaWxpYXRpb249XCJcIiksXCIyN1wiPT1BJiYodC5kaW1lbnNpb249XCJMYW5kRGlzbW91bnRlZEluZGl2aWR1YWxcIix0LmRpc21vdW50ZWQ9ITApLFwiMTVcIiE9QSYmXCI1MlwiIT1BfHwodC5kaW1lbnNpb249RS5kaW1lbnNpb25bMl0pLC0xPFtcIjFcIixcIjNcIixcIjVcIixcIjdcIl0uaW5kZXhPZihUKSYmKHQuZmVpbnREdW1teT0hMCksLTE8W1wiMlwiLFwiM1wiLFwiNlwiLFwiN1wiXS5pbmRleE9mKFQpJiYodC5oZWFkcXVhcnRlcnM9ITApLC0xPFtcIjRcIixcIjVcIixcIjZcIixcIjdcIl0uaW5kZXhPZihUKSYmKHQudGFza0ZvcmNlPSEwKSxTPD0zMCYmKHQuZWNoZWxvbj1FLmVjaGVsb25Nb2JpbGl0eVtTXSksMzA8PVMmJlM8NzAmJih0Lm1vYmlsaXR5PUUuZWNoZWxvbk1vYmlsaXR5W1NdKSw3MDw9UyYmUzw4MCYmKHQubGVhZGVyc2hpcD1FLmVjaGVsb25Nb2JpbGl0eVtTXSksKFwiMDFcIj09QSYmXCIxMlwiPT1OLnN1YnN0cmluZygwLDIpfHxcIjA1XCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKXx8XCIxMVwiPT1BfHxcIjEyXCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKXx8XCIxNVwiPT1BJiZcIjE2XCI9PU4uc3Vic3RyaW5nKDAsMil8fFwiMzBcIj09QSYmXCIxNFwiPT1OLnN1YnN0cmluZygwLDIpfHxcIjM1XCI9PUEmJlwiMTJcIj09Ti5zdWJzdHJpbmcoMCwyKSkmJih0LmNpdmlsaWFuPSEwKSx0fWZ1bmN0aW9uIHYoSSx0LEUsUil7dmFyIGU9e30sQT17fSxDPXt9LFQ9e307Zm9yKHZhciBTIGluIEkuX2ljb25TSURDLm51bWJlcilJLl9pY29uU0lEQy5udW1iZXIuaGFzT3duUHJvcGVydHkoUykmJkkuX2ljb25TSURDLm51bWJlcltTXS5jYWxsKHRoaXMsZSxBLEMsVCx0LEUsUik7cmV0dXJue2ljb25zOmUsbTE6QSxtMjpDLGJib3g6VH19dmFyIFE9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOlAsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwMVwiPT1lJiYoSVsxMWU0XT1bQVtcIkFSLkkuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIkFSLkkuRklYRUQtV0lORyBEU3ltYm9sXCJdXSxJWzExMDEwMV09W0FbXCJBUi5JLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVsxMTAxMDJdPVtBW1wiQVIuSS5BVFRBQ0svU1RSSUtFXCJdXSxJWzExMDEwM109W0FbXCJBUi5JLkJPTUJFUlwiXV0sSVsxMTAxMDRdPVtBW1wiQVIuSS5GSUdIVEVSXCJdXSxJWzExMDEwNV09W0FbXCJBUi5JLkZJR0hURVIvQk9NQkVSXCJdXSxJWzExMDEwNl09W10sSVsxMTAxMDddPVtBW1wiQVIuSS5DQVJHT1wiXV0sSVsxMTAxMDhdPVtBW1wiQVIuSS5KQU1NRVIgLyBFTEVDVFJPTklDIENPVU5URVItTUVBU1VSRVNcIl1dLElbMTEwMTA5XT1bQVtcIkFSLkkuVEFOS0VSXCJdXSxJWzExMDExMF09W0FbXCJBUi5JLlBBVFJPTFwiXV0sSVsxMTAxMTFdPVtBW1wiQVIuSS5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMTAxMTJdPVtBW1wiQVIuSS5UUkFJTkVSXCJdXSxJWzExMDExM109W0FbXCJBUi5JLlVUSUxJVFlcIl1dLElbMTEwMTE0XT1bQVtcIkFSLkkuVlNUT0xcIl1dLElbMTEwMTE1XT1bQVtcIkFSLkkuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSxJWzExMDExNl09W0FbXCJBUi5JLkFJUkJPUk5FIEVBUkxZIFdBUk5JTkdcIl1dLElbMTEwMTE3XT1bQVtcIkFSLkkuQU5USVNVUkZBQ0UgV0FSRkFSRVwiXV0sSVsxMTAxMThdPVtBW1wiQVIuSS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLElbMTEwMTE5XT1bQVtcIkFSLkkuQ09NTVVOSUNBVElPTlNcIl1dLElbMTEwMTIwXT1bQVtcIkFSLkkuQ09NQkFUIFNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzExMDEyMV09W0FbXCJBUi5JLkVMRUNUUk9OSUMgU1VQUE9SVFwiXV0sSVsxMTAxMjJdPVtBW1wiQVIuSS5HT1ZFUk5NRU5UXCJdXSxJWzExMDEyM109W0FbXCJBUi5JLk1JTkUgQ09VTlRFUk1FQVNVUkVTXCJdXSxJWzExMDEyNF09W0FbXCJBUi5JLlBFUlNPTk5FTCBSRUNPVkVSWSBEU3ltYm9sXCJdXSxJWzExMDEyNV09W0FbXCJBUi5JLlNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzExMDEyNl09W0FbXCJBUi5JLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLElbMTEwMTI3XT1bQVtcIkFSLkkuVUxUUkEgTElHSFRcIl1dLElbMTEwMTI4XT1bQVtcIkFSLkkuUEhPVE9HUkFQSElDIFJFQ09OTkFJU1NBTkNFXCJdXSxJWzExMDEyOV09W0FbXCJBUi5JLlZJUFwiXV0sSVsxMTAxMzBdPVtBW1wiQVIuSS5TVVBSRVNTSU9OIE9GIEVORU1ZIEFJUiBERUZFTkNFXCJdXSxJWzExMDEzMV09W0FbXCJBUi5JLlBBU1NFTkdFUlwiXV0sSVsxMTAxMzJdPVtBW1wiQVIuSS5FU0NPUlRcIl1dLElbMTEwMTMzXT1bQVtcIkFSLkkuRUxFQ1RST05JQyBBVFRBQ0sgKEVBKVwiXV0sSVsxMTAyMDBdPVtBW1wiQVIuSS5NSUxJVEFSWSBST1RBUlkgV0lOR1wiXV0sSVsxMTAzMDBdPVtBW1wiQVIuSS5VTk1BTk5FRCBBRVJJQUwgVkVISUNMRVwiXV0sSVsxMTA0MDBdPVtBW1wiQVIuSS5WRVJUSUNBTC1UQUtFT0ZGIFVBViAoVlQtVUFWKVwiXV0sSVsxMTA1MDBdPVtBW1wiQVIuSS5NSUxJVEFSWSBCQUxMT09OXCJdXSxJWzExMDYwMF09W0FbXCJBUi5JLk1JTElUQVJZIEFJUlNISVBcIl1dLElbMTEwNzAwXT1bQVtcIkFSLkkuVEVUSEVSRUQgTElHSFRFUiBUSEFOIEFJUlwiXV0sSVsxMmU0XT1bQVtcIkFSLkkuQ0lWSUxJQU5cIl1dLElbMTIwMTAwXT1bQVtcIkFSLkkuQ0lWSUxJQU4gRklYRUQtV0lORyBEU3ltYm9sXCJdXSxJWzEyMDIwMF09W0FbXCJBUi5JLkNJVklMSUFOIFJPVEFSWSBXSU5HXCJdXSxJWzEyMDMwMF09W0FbXCJBUi5JLkNJVklMSUFOIFVOTUFOTkVEIEFFUklBTCBWRUhJQ0xFXCJdXSxJWzEyMDQwMF09W0FbXCJBUi5JLkNJVklMSUFOIEJBTExPT05cIl1dLElbMTIwNTAwXT1bQVtcIkFSLkkuQ0lWSUxJQU4gQUlSU0hJUFwiXV0sSVsxMjA2MDBdPVtBW1wiQVIuSS5DSVZJTElBTiBURVRIRVJFRCBMSUdIVEVSIFRIQU4gQUlSXCJdXSxJWzEzZTRdPVtBW1wiQVIuSS5XRUFQT05cIl1dLElbMTMwMTAwXT1bQVtcIkFSLkkuQk9NQlwiXV0sSVsxMzAyMDBdPVtBW1wiQVIuSS5VTkRFUldBVEVSIERFQ09ZIERTeW1ib2xcIl1dLElbMTRlNF09W0FbXCJBUi5JLk1BTlVBTCBUUkFDS1wiXV0sdFtcIjAxXCJdPVtBW1wiQUlSLk0xLkFUVEFDS1wiXV0sdFtcIjAyXCJdPVtBW1wiQUlSLk0xLkJPTUJFUlwiXV0sdFtcIjAzXCJdPVtBW1wiQUlSLk0xLkNBUkdPXCJdXSx0W1wiMDRcIl09W0FbXCJBSVIuTTEuRklHSFRFUlwiXV0sdFtcIjA1XCJdPVtBW1wiQUlSLk0xLklOVEVSQ0VQVE9SXCJdXSx0W1wiMDZcIl09W0FbXCJBSVIuTTEuVEFOS0VSXCJdXSx0W1wiMDdcIl09W0FbXCJBSVIuTTEuVVRJTElUWVwiXV0sdFtcIjA4XCJdPVtBW1wiQUlSLk0xLlZTVE9MXCJdXSx0W1wiMDlcIl09W0FbXCJBSVIuTTEuUEFTU0VOR0VSXCJdXSx0WzEwXT1bQVtcIkFJUi5NMS5VTFRSQSBMSUdIVFwiXV0sdFsxMV09W0FbXCJBSVIuTTEuQUlSQk9STkUgQ09NTUFORCBQT1NUXCJdXSx0WzEyXT1bQVtcIkFJUi5NMS5BSVJCT1JORSBFQVJMWSBXQVJOSU5HXCJdXSx0WzEzXT1bQVtcIkFJUi5NMS5HT1ZFUk5NRU5UXCJdXSx0WzE0XT1bQVtcIkFJUi5NMS5NRURFVkFDXCJdXSx0WzE1XT1bQVtcIkFJUi5NMS5FU0NPUlRcIl1dLHRbMTZdPVtBW1wiQUlSLk0xLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sdFsxN109W0FbXCJBSVIuTTEuUEFUUk9MXCJdXSx0WzE4XT1bQVtcIkFJUi5NMS5SRUNPTk5BSVNTQU5DRVwiXV0sdFsxOV09W0FbXCJBSVIuTTEuVFJBSU5FUlwiXV0sdFsyMF09W0FbXCJBSVIuTTEuUEhPVE9HUkFQSElDXCJdXSx0WzIxXT1bQVtcIkFJUi5NMS5QRVJTT05ORUwgUkVDT1ZFUllcIl1dLHRbMjJdPVtBW1wiQUlSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFsyM109W0FbXCJBSVIuTTEuQ09NTVVOSUNBVElPTlNcIl1dLHRbMjRdPVtBW1wiQUlSLk0xLkVMRUNUUk9OSUMgU1VQUE9SVCAoRVMpXCJdXSx0WzI1XT1bQVtcIkFJUi5NMS5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sdFsyNl09W0FbXCJBSVIuTTEuU0VBUkNIIEFORCBSRVNDVUVcIl1dLHRbMjddPVtBW1wiQUlSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl1dLHRbMjhdPVtBW1wiQUlSLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sdFsyOV09W0FbXCJBSVIuTTEuVklQXCJdXSx0WzMwXT1bQVtcIkFJUi5NMS5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLHRbMzFdPVtBW1wiQUlSLk0xLlNVUFJFU1NJT04gT0YgRU5FTVkgQUlSIERFRkVOQ0VcIl1dLHRbMzJdPVtBW1wiQUlSLk0xLkFOVElTVVJGQUNFIFdBUkZBUkVcIl1dLHRbMzNdPVtBW1wiQUlSLk0xLkZJR0hURVIvQk9NQkVSXCJdXSx0WzM0XT1bQVtcIkFJUi5NMS5JTlRFTlNJVkUgQ0FSRVwiXV0sdFszNV09W0FbXCJBSVIuTTEuRUxFQ1RST05JQyBBVFRBQ0sgKEVBKVwiXV0sdFszNl09W0FbXCJBSVIuTTEuTVVMVElNSVNTSU9OXCJdXSx0WzM3XT1bQVtcIkFJUi5NMS5ISUpBQ0tJTkdcIl1dLHRbMzhdPVtBW1wiQUlSLk0xLkFTVyBIRUxPLUxBTVBTXCJdXSx0WzM5XT1bQVtcIkFJUi5NMS5BU1cgSEVMTyAtIFNILTYwUlwiXV0sdFs0MF09W0FbXCJBSVIuTTEuSElKQUNLRVJcIl1dLHRbNDFdPVtBW1wiQUlSLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIkFJUi5NMi5IRUFWWVwiXV0sRVtcIjAyXCJdPVtBW1wiQUlSLk0yLk1FRElVTVwiXV0sRVtcIjAzXCJdPVtBW1wiQUlSLk0yLkxJR0hUXCJdXSxFW1wiMDRcIl09W0FbXCJBSVIuTTIuQk9PTS1PTkxZXCJdXSxFW1wiMDVcIl09W0FbXCJBSVIuTTIuRFJPVUdFLU9OTFlcIl1dLEVbXCIwNlwiXT1bQVtcIkFJUi5NMi5CT09NIEFORCBEUk9VR0VcIl1dLEVbXCIwN1wiXT1bQVtcIkFJUi5NMi5DTE9TRSBSQU5HRVwiXV0sRVtcIjA4XCJdPVtBW1wiQUlSLk0yLlNIT1JUIFJBTkdFXCJdXSxFW1wiMDlcIl09W0FbXCJBSVIuTTIuTUVESVVNIFJBTkdFXCJdXSxFWzEwXT1bQVtcIkFJUi5NMi5MT05HIFJBTkdFXCJdXSxFWzExXT1bQVtcIkFJUi5NMi5ET1dOTElOS0VEXCJdXSxFWzEyXT1bQVtcIkFJUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxnPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpQLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMDJcIj09ZSYmKElbMTFlNF09W0FbXCJBSVIuTUlTU0lMRS5JQ09OXCJdXSx0W1wiMDFcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5BSVJcIl1dLHRbXCIwMlwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNVUkZBQ0VcIl1dLHRbXCIwM1wiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNVQlNVUkZBQ0VcIl1dLHRbXCIwNFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLlNQQUNFXCJdXSx0W1wiMDVcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5BTlRJLUJBTExJU1RJQ1wiXV0sdFtcIjA2XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTEuQkFMTElTVElDXCJdXSx0W1wiMDdcIl09W0FbXCJBSVIuTUlTU0lMRS5NMS5DUlVJU0VcIl1dLHRbXCIwOFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0xLklOVEVSQ0VQVE9SXCJdXSxFW1wiMDFcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5BSVJcIl1dLEVbXCIwMlwiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNVUkZBQ0VcIl1dLEVbXCIwM1wiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNVQlNVUkZBQ0VcIl1dLEVbXCIwNFwiXT1bQVtcIkFJUi5NSVNTSUxFLk0yLlNQQUNFXCJdXSxFW1wiMDVcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5MQVVOQ0hFRFwiXV0sRVtcIjA2XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuTUlTU0lMRVwiXV0sRVtcIjA3XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuUEFUUklPVFwiXV0sRVtcIjA4XCJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuU1RBTkRBUkQgTUlTU0lMRSAtIDIgKFNNLTIpXCJdXSxFW1wiMDlcIl09W0FbXCJBSVIuTUlTU0lMRS5NMi5TVEFOREFSRCBNSVNTSUxFIC0gNiAoU00tNilcIl1dLEVbMTBdPVtBW1wiQUlSLk1JU1NJTEUuTTIuRVZPTFZFRCBTRUEgU1BBUlJPVyBNSVNTSUxFIChFU1NNKVwiXV0sRVsxMV09W0FbXCJBSVIuTUlTU0lMRS5NMi5ST0xMSU5HIEFJUkZSQU1FIE1JU1NJTEUgKFJBTSlcIl1dLEVbMTJdPVtBW1wiQUlSLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl1dLEVbMTNdPVtBW1wiQUlSLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdXSxFWzE0XT1bQVtcIkFJUi5NSVNTSUxFLk0yLklOVEVSTUVESUFURSBSQU5HRVwiXV0sRVsxNV09W0FbXCJBSVIuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdXSxFWzE2XT1bQVtcIkFJUi5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl1dKX19LGI9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmksaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwNVwiPT1lJiYoSVsxMWU0XT1bQVtcIlNQLkkuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIlNQLkkuU1BBQ0UgVkVISUNMRVwiXV0sSVsxMTAyMDBdPVtBW1wiU1AuSS5SRS1FTlRSWSBWRUhJQ0xFXCJdXSxJWzExMDMwMF09W0FbXCJTUEFDRS5QTEFORVQgTEFOREVSXCJdXSxJWzExMDQwMF09W0FbXCJTUC5JLk9SQklURVIgU0hVVFRMRVwiXV0sSVsxMTA1MDBdPVtBW1wiU1AuSS5DQVBTVUxFXCJdXSxJWzExMDYwMF09W0FbXCJTUC5JLlNBVEVMTElURSwgR0VORVJBTFwiXV0sSVsxMTA3MDBdPVtBW1wiU1AuSS5TQVRFTExJVEVcIl1dLElbMTEwODAwXT1bQVtcIlNQLkkuQU5USVNBVEVMTElURSBXRUFQT05cIl1dLElbMTEwOTAwXT1bQVtcIlNQLkkuQVNUUk9OT01JQ0FMIFNBVEVMTElURVwiXV0sSVsxMTFlM109W0FbXCJTUC5JLkJJT1NBVEVMTElURVwiXV0sSVsxMTExMDBdPVtBW1wiU1AuSS5DT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl1dLElbMTExMjAwXT1bQVtcIlNQLkkuRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdXSxJWzExMTMwMF09W0FbXCJTUC5JLk1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl1dLElbMTExNDAwXT1bQVtcIlNQLkkuTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXV0sSVsxMTE1MDBdPVtBW1wiU1AuSS5SRUNPTk5BSVNTQU5DRSBTQVRFTExJVEVcIl1dLElbMTExNjAwXT1bQVtcIlNQLkkuU1BBQ0UgU1RBVElPTlwiXV0sSVsxMTE3MDBdPVtBW1wiU1AuSS5URVRIRVJFRCBTQVRFTExJVEVcIl1dLElbMTExODAwXT1bQVtcIlNQLkkuV0VBVEhFUiBTQVRFTExJVEVcIl1dLElbMTExOTAwXT1bQVtcIlNQLkkuU1BBQ0UgTEFVTkNIIFZFSElDTEVcIl1dLElbMTJlNF09W0FbXCJTUC5JLkNJVklMSUFOXCJdXSxJWzEyMDEwMF09W0FbXCJTUC5JLkNJVklMSUFOIE9SQklURVIgU0hVVFRMRVwiXV0sSVsxMjAyMDBdPVtBW1wiU1AuSS5DSVZJTElBTiBDQVBTVUxFXCJdXSxJWzEyMDMwMF09W0FbXCJTUC5JLkNJVklMSUFOIFNBVEVMTElURVwiXV0sSVsxMjA0MDBdPVtBW1wiU1AuSS5DSVZJTElBTiBBU1RST05PTUlDQUwgU0FURUxMSVRFXCJdXSxJWzEyMDUwMF09W0FbXCJTUC5JLkNJVklMSUFOIEJJT1NBVEVMTElURVwiXV0sSVsxMjA2MDBdPVtBW1wiU1AuSS5DSVZJTElBTiBDT01NVU5JQ0FUSU9OUyBTQVRFTExJVEVcIl1dLElbMTIwNzAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gRUFSVEggT0JTRVJWQVRJT04gU0FURUxMSVRFXCJdXSxJWzEyMDgwMF09W0FbXCJTUC5JLkNJVklMSUFOIE1JTklBVFVSSVpFRCBTQVRFTExJVEVcIl1dLElbMTIwOTAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gTkFWSUdBVElPTkFMIFNBVEVMTElURVwiXV0sSVsxMjFlM109W0FbXCJTUC5JLkNJVklMSUFOIFNQQUNFIFNUQVRJT05cIl1dLElbMTIxMTAwXT1bQVtcIlNQLkkuQ0lWSUxJQU4gVEVUSEVSRUQgU0FURUxMSVRFXCJdXSxJWzEyMTIwMF09W0FbXCJTUC5JLkNJVklMSUFOIFdFQVRIRVIgU0FURUxMSVRFXCJdXSxJWzEzZTRdPVtBW1wiU1AuSS5NQU5VQUwgVFJBQ0tcIl1dLHRbXCIwMVwiXT1bQVtcIlNQLk0xLkxPVyBFQVJUSCBPUkJJVCAoTEVPKVwiXV0sdFtcIjAyXCJdPVtBW1wiU1AuTTEuTUVESVVNIEVBUlRIIE9SQklUIChNRU8pXCJdXSx0W1wiMDNcIl09W0FbXCJTUC5NMS5ISUdIIEVBUlRIIE9SQklUIChIRU8pXCJdXSx0W1wiMDRcIl09W0FbXCJTUC5NMS5HRU9TWU5DSFJPTk9VUyBPUkJJVCAoR1NPKVwiXV0sdFtcIjA1XCJdPVtBW1wiU1AuTTEuR0VPU1RBVElPTkFSWSBPUkJJVCAoR08pXCJdXSx0W1wiMDZcIl09W0FbXCJTUC5NMS5NT0xOSVlBIE9SQklUIChNTylcIl1dLHRbXCIwN1wiXT1bQVtcIlNQLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNQLk0yLk9QVElDQUxcIl1dLEVbXCIwMlwiXT1bQVtcIlNQLk0yLklORlJBUkVEXCJdXSxFW1wiMDNcIl09W0FbXCJTUC5NMi5SQURBUlwiXV0sRVtcIjA0XCJdPVtBW1wiU1AuTTIuU0lHTkFMUyBJTlRFTExJR0VOQ0UgKFNJR0lOVClcIl1dLEVbXCIwNVwiXT1bQVtcIlNQLk0yLkNZQkVSU1BBQ0VcIl1dKX19LEs9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmksaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCIwNlwiPT1lJiYoSVsxMWU0XT1bQVtcIlNQQUNFLk1JU1NJTEUuSUNPTlwiXV0sdFtcIjAxXCJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMS5CQUxMSVNUSUNcIl1dLHRbXCIwMlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTEuU1BBQ0VcIl1dLHRbXCIwM1wiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTEuSU5URVJDRVBUT1JcIl1dLEVbXCIwMVwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuU0hPUlQgUkFOR0VcIl1dLEVbXCIwMlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuTUVESVVNIFJBTkdFXCJdXSxFW1wiMDNcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSTUVESUFURSBSQU5HRVwiXV0sRVtcIjA0XCJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMi5MT05HIFJBTkdFXCJdXSxFW1wiMDVcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLklOVEVSQ09OVElORU5UQUxcIl1dLEVbXCIwNlwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuQVJST1dcIl1dLEVbXCIwN1wiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuR1JPVU5ELUJBU0VEIElOVEVSQ0VQVE9SIChHQkkpXCJdXSxFW1wiMDhcIl09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlBBVFJJT1RcIl1dLEVbXCIwOVwiXT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuU1RBTkRBUkQgTUlTU0lMRSAtIFRFUk1JTkFMIFBIQVNFIChTTS1UKVwiXV0sRVsxMF09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlNUQU5EQVJEIE1JU1NJTEUgLSAzIChTTS0zKVwiXV0sRVsxMV09W0FbXCJTUEFDRS5NSVNTSUxFLk0yLlRFUk1JTkFMIEhJR0gtQUxUSVRVREUgQVJFQSBERUZFTlNFIChUSEFBRClcIl1dLEVbMTJdPVtBW1wiU1BBQ0UuTUlTU0lMRS5NMi5TUEFDRVwiXV0sRVsxM109W0FbXCJTUEFDRS5NSVNTSUxFLk0yLkNMT1NFIFJBTkdFXCJdXSxFWzE0XT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuREVCUklTXCJdXSxFWzE1XT1bQVtcIlNQQUNFLk1JU1NJTEUuTTIuVU5LTk9XTlwiXV0pfX0sWD17dHlwZTpcIm51bWJlclwiLGdldE1ldGFkYXRhOnUsZ2V0SWNvbnM6dixpY29uUGFydHM6YyxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjEwXCI9PWUmJihJWzExZTRdPVtBW1wiR1IuSUMuQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTEwMjAwXT1bQVtcIkdSLklDLkNJVklMIEFGRkFJUlNcIl1dLElbMTEwMzAwXT1bQVtcIkdSLklDLkNJVklMLU1JTElUQVJZLUNPT1BFUkFUSU9OXCJdXSxJWzExMDQwMF09W0FbXCJHUi5JQy5JTkZPUk1BVElPTiBPUEVSQVRJT05TXCJdXSxJWzExMDUwMF09W0FbXCJHUi5JQy5MSUFJU09OXCJdXSxJWzExMDUwMV09W0FbXCJHUi5JQy5MSUFJU09OXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMTA2MDBdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5GT1JNQVRJT04gU1VQUE9SVCBPUEVSQVRJT05TIChNSVNPKVwiXV0sSVsxMTA2MDFdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5GT1JNQVRJT04gU1VQUE9SVCBPUEVSQVRJT05TIChNSVNPKVwiXSxBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTEwNzAwXT1bQVtcIkdSLklDLlJBRElPXCJdXSxJWzExMDgwMF09W0FbXCJHUi5JQy5SQURJTyBSRUxBWVwiXV0sSVsxMTA5MDBdPVtBW1wiR1IuSUMuUkFESU8gVEVMRVRZUEUgQ0VOVFJFXCJdXSxJWzExMWUzXT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXV0sSVsxMTEwMDFdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJT1wiXV0sSVsxMTEwMDJdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJTyBSRUxBWVwiXV0sSVsxMTEwMDNdPVtBW1wiR1IuSUMuRkYuU0lHTkFMXCJdLEFbXCJHUi5JQy5SQURJTyBURUxFVFlQRSBDRU5UUkVcIl1dLElbMTExMDA0XT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXSxBW1wiR1IuSS5GRi5TQVRFTExJVEVcIl1dLElbMTExMDA1XT1bQVtcIkdSLklDLkZGLlNJR05BTFwiXSxBW1wiR1IuSUMuVklERU8gSU1BR0VSWVwiXV0sSVsxMTExMDBdPVtBW1wiR1IuSS5GRi5TQVRFTExJVEVcIl1dLElbMTExMjAwXT1bQVtcIkdSLklDLlZJREVPIElNQUdFUllcIl1dLElbMTExMzAwXT1bQVtcIkdSLklDLlNQQUNFXCJdXSxJWzExMTQwMF09W0FbXCJHUi5JQy5TUEVDSUFMIFRST09QU1wiXV0sSVsxMmU0XT1bXSxJWzEyMDEwMF09W0FbXCJHUi5JQy5GRi5BSVIgQVNTQVVMVCBXSVRIIE9SR0FOSUMgTElGVFwiXV0sSVsxMjAyMDBdPVtBW1wiR1IuSUMuQUlSIFRSQUZGSUMgU0VSVklDRVNcIl1dLElbMTIwMzAwXT1bQVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbMTIwNDAwXT1bQVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl1dLElbMTIwNDAxXT1bQVtcIkdSLklDLkZGLkFOVElUQU5LL0FOVElBUk1PVVJcIl0sQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjA0MDJdPVtBW1wiR1IuSUMuRkYuQU5USVRBTksvQU5USUFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJWzEyMDUwMF09W0FbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTIwNTAxXT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbMTIwNTAyXT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVsxMjA2MDBdPVtBW1wiR1IuSUMuQVZJQVRJT04gUk9UQVJZIFdJTkdcIl1dLElbMTIwNjAxXT1bQVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjA3MDBdPVtBW1wiR1IuSUMuQVZJQVRJT04gQ09NUE9TSVRFXCJdXSxJWzEyMDgwMF09W0FbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdXSxJWzEyMDgwMV09W0FbXCJHUi5JQy5BVklBVElPTiBGSVhFRCBXSU5HXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjA5MDBdPVtBW1wiR1IuSUMuQ09NQkFUXCJdXSxJWzEyMWUzXT1bQVtcIkdSLklDLkNPTUJJTkVEIEFSTVNcIl1dLElbMTIxMTAwXT1bQVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJWzEyMTEwMV09W0FbXCJHUi5JQy5GRi5JTkZBTlRSWVwiXSxBW1wiR1IuSUMuRkYuQU1QSElCSU9VU1wiXV0sSVsxMjExMDJdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjExMDNdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkZGLk1BSU4gR1VOIFNZU1RFTVwiXV0sSVsxMjExMDRdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVsxMjExMDVdPVtBW1wiR1IuSUMuRkYuSU5GQU5UUllcIl0sQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuTUFJTiBHVU4gU1lTVEVNXCJdXSxJWzEyMTEwNl09W0FbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl1dLElbMTIxMjAwXT1bQVtcIkdSLklDLk9CU0VSVkVSL09CU0VSVkFUSU9OXCJdXSxJWzEyMTMwMF09W0FbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXV0sSVsxMjEzMDFdPVtBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLlNVUlZFSUxMQU5DRVwiXV0sSVsxMjEzMDJdPVtBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLkZGLkFNUEhJQklPVVNcIl1dLElbMTIxMzAzXT1bQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTIxNDAwXT1bQVtcIkdSLklDLlNFQS1BSVItTEFORFwiXV0sSVsxMjE1MDBdPVtBW1wiR1IuSUMuU05JUEVSXCJdXSxJWzEyMTYwMF09W0FbXCJHUi5JQy5TVVJWRUlMTEFOQ0VcIl1dLElbMTIxNzAwXT1bQVtcIkdSLklDLlNQRUNJQUwgRk9SQ0VTXCJdXSxJWzEyMTgwMF09W0FbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJWzEyMTgwMV09W0FbXCJHUi5JQy5GSVhFRCBXSU5HIE1JU09cIl1dLElbMTIxODAyXT1bQVtcIkdSLklDLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVNcIl0sQVtcIkdSLklDLkZGLklORkFOVFJZXCJdXSxJWzEyMTgwM109W0FbXCJHUi5JQy5DT01CQVRBTlRcIl0sQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLElbMTIxODA0XT1bQVtcIkdSLklDLlNVQk1BUklORSBOVUNMRUFSIFBST1BVTFNJT05cIl0sQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLElbMTIxODA1XT1bQVtcIlNPRi5JQy5VTkRFUldBVEVSIERFTU9MSVRJT04gVEVBTVwiXV0sSVsxMjE5MDBdPVtBW1wiR1IuSUMuVU5NQU5ORUQgU1lTVEVNU1wiXV0sSVsxMjJlM109W0FbXCJHUi5JQy5SQU5HRVJcIl1dLElbMTNlNF09W10sSVsxMzAxMDBdPVtBW1wiR1IuSUMuRkYuQUlSIERFRkVOQ0VcIl1dLElbMTMwMTAxXT1bQVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEFbXCJHUi5JQy5GRi5NQUlOIEdVTiBTWVNURU1cIl1dLElbMTMwMTAyXT1bQVtcIkdSLklDLkZGLkFJUiBERUZFTkNFXCJdLEFbXCJHUi5JQy5BSVIgREVGRU5TRSBNSVNTSUxFXCJdXSxJWzEzMDEwM109W0FbXCJHUi5JQy5GRi5BSVIgREVGRU5DRVwiXSxBW1wiR1IuSUMuQUlSIEFORCBNSVNTSUxFIERFRkVOU0VcIl1dLElbMTMwMjAwXT1bQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl0sQVtcIkdSLklDLkFWSUFUSU9OIFJPVEFSWSBXSU5HXCJdLEFbXCJHUi5NMS5OQVZBTFwiXV0sSVsxMzAzMDBdPVtBW1wiR1IuSUMuRklFTEQgQVJUSUxMRVJZXCJdXSxJWzEzMDMwMV09W3MuX3NjYWxlKC44LEFbXCJHUi5JQy5GSUVMRCBBUlRJTExFUllcIl0pLEFbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTMwMzAyXT1bcy5fc2NhbGUoLjgsQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuSUMuRkYuUkVDT05OQUlTU0FOQ0VcIl1dLElbMTMwMzAzXT1bcy5fc2NhbGUoLjgsQVtcIkdSLklDLkZJRUxEIEFSVElMTEVSWVwiXSksQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzEzMDQwMF09W0FbXCJHUi5JQy5GSUVMRCBBUlRJTExFUlkgT0JTRVJWRVJcIl1dLElbMTMwNTAwXT1bQVtcIkdSLklDLkpPSU5UIEZJUkUgU1VQUE9SVFwiXV0sSVsxMzA2MDBdPVtBW1wiR1IuSUMuTUVURU9ST0xPR0lDQUxcIl1dLElbMTMwNzAwXT1bQVtcIkdSLklDLk1JU1NJTEVcIl1dLElbMTMwODAwXT1bQVtcIkdSLklDLk1PUlRBUlwiXV0sSVsxMzA4MDFdPVtBW1wiR1IuSUMuTU9SVEFSXCJdLEFbXCJHUi5NMi5UUkFDS0VEXCJdXSxJWzEzMDgwMl09W0FbXCJHUi5JQy5NT1JUQVJcIl0sQVtcIkdSLk0yLlRSVUNLXCJdXSxJWzEzMDgwM109W0FbXCJHUi5JQy5NT1JUQVJcIl0sQVtcIkdSLk0yLlRPV0VEXCJdXSxJWzEzMDkwMF09W0FbXCJHUi5JQy5TVVJWRVlcIl1dLElbMTRlNF09W10sSVsxNDAxMDBdPVtBW1wiR1IuSUMuQ0JSTlwiXV0sSVsxNDAxMDFdPVtBW1wiR1IuSUMuQ0JSTlwiXSxBW1wiR1IuSUMuQVJNT1VSXCJdXSxJWzE0MDEwMl09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTQwMTAzXT1bQVtcIkdSLklDLkNCUk5cIl0sQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzE0MDEwNF09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxBW1wiR1IuSUMuQVJNT1VSXCJdXSxJWzE0MDEwNV09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRVwiXSxBW1wiR1IuSUMuRkYuTU9UT1JJWkVEXCJdXSxJWzE0MDEwNl09W0FbXCJHUi5JQy5DQlJOXCJdLEFbXCJHUi5DSEVNSUNBTCwgQklPTE9HSUNBTCwgUkFESU9MT0dJQ0FMLCBOVUNMRUFSLCBBTkQgSElHSC1ZSUVMRCBFWFBMT1NJVkVTXCJdXSxJWzE0MDIwMF09W0FbXCJHUi5JQy5DT01CQVQgU1VQUE9SVCAoTUFOT0VVVlJFIEVOSEFOQ0VNRU5UKVwiXV0sSVsxNDAzMDBdPVtBW1wiR1IuSUMuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sSVsxNDA0MDBdPVtBW1wiR1IuSUMuRElWRVIsIENJVklMSUFOXCJdXSxJWzE0MDUwMF09W0FbXCJHUi5JQy5ET0dcIl1dLElbMTQwNjAwXT1bQVtcIkdSLklDLkRSSUxMSU5HXCJdXSxJWzE0MDcwMF09W0FbXCJHUi5JQy5FTkdJTkVFUlwiXV0sSVsxNDA3MDFdPVtBW1wiR1IuSUMuRU5HSU5FRVIgTUVDSEFOSVpFRFwiXV0sSVsxNDA3MDJdPVtBW1wiR1IuSUMuRU5HSU5FRVJcIl0sQVtcIkdSLklDLkZGLk1PVE9SSVpFRFwiXV0sSVsxNDA3MDNdPVtBW1wiR1IuSUMuRU5HSU5FRVJcIl0sQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFXCJdXSxJWzE0MDgwMF09W0FbXCJHUi5JQy5FWFBMT1NJVkUgT1JETkFOQ0UgRElTUE9TQUxcIl1dLElbMTQwOTAwXT1bQVtcIkdSLklDLkZJRUxEIENBTVAgQ09OU1RSVUNUSU9OXCJdXSxJWzE0MWUzXT1bQVtcIkdSLklDLkZJUkUgUFJPVEVDVElPTlwiXV0sSVsxNDExMDBdPVtBW1wiR1IuSUMuR0VPU1BBVElBTCBTVVBQT1JUXCJdXSxJWzE0MTIwMF09W0FbXCJHUi5JQy5NSUxJVEFSWSBQT0xJQ0VcIl1dLElbMTQxMzAwXT1bQVtcIkdSLklDLk1JTkVcIl1dLElbMTQxNDAwXT1bQVtcIkdSLklDLk1JTkUgQ0xFQVJJTkdcIl1dLElbMTQxNTAwXT1bQVtcIkdSLklDLk1JTkUgTEFVTkNISU5HXCJdXSxJWzE0MTYwMF09W0FbXCJHUi5JQy5NSU5FIExBWUlOR1wiXV0sSVsxNDE3MDBdPVtBW1wiR1IuSUMuU0VDVVJJVFlcIl1dLElbMTQxNzAxXT1bQVtcIkdSLklDLlNFQ1VSSVRZXCJdLEFbXCJHUi5JQy5BUk1PVVJcIl1dLElbMTQxNzAyXT1bQVtcIkdSLklDLlNFQ1VSSVRZXCJdLEFbXCJHUi5JQy5GRi5NT1RPUklaRURcIl1dLElbMTQxODAwXT1bQVtcIkdSLklDLlNFQVJDSCBBTkQgUkVTQ1VFXCJdXSxJWzE0MTkwMF09W0FbXCJHUi5JQy5TRUNVUklUWSBQT0xJQ0UgKEFJUilcIl1dLElbMTQyZTNdPVtBW1wiR1IuSUMuU0hPUkUgUEFUUk9MXCJdXSxJWzE0MjEwMF09W0FbXCJHUi5JQy5UT1BPR1JBUEhJQ1wiXV0sSVsxNDIyMDBdPVtBW1wiR1IuSUMuQUlSIEFORCBNSVNTSUxFIERFRkVOU0VcIl1dLElbMTVlNF09W10sSVsxNTAxMDBdPVtBW1wiR1IuSUMuRkYuQU5BTFlTSVNcIl1dLElbMTUwMjAwXT1bQVtcIkdSLklDLkNPVU5URVItSU5URUxMSUdFTkNFXCJdXSxJWzE1MDMwMF09W0FbXCJHUi5JQy5GRi5ESVJFQ1RJT04gRklORElOR1wiXV0sSVsxNTA0MDBdPVtBW1wiR1IuSUMuRUxFQ1RST05JQyBSQU5HSU5HXCJdXSxJWzE1MDUwMF09W0FbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl1dLElbMTUwNTAxXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuQU5BTFlTSVNcIl1dLElbMTUwNTAyXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuRElSRUNUSU9OIEZJTkRJTkdcIl1dLElbMTUwNTAzXT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuSU5URVJDRVBUXCJdXSxJWzE1MDUwNF09W0FbXCJHUi5JQy5FTEVDVFJPTklDIFdBUkZBUkVcIl0sQVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbMTUwNTA1XT1bQVtcIkdSLklDLkVMRUNUUk9OSUMgV0FSRkFSRVwiXSxBW1wiR1IuSUMuRkYuU0VBUkNIXCJdXSxJWzE1MDYwMF09W0FbXCJHUi5JQy5GRi5JTlRFUkNFUFRcIl1dLElbMTUwNzAwXT1bQVtcIkdSLklDLklOVEVSUk9HQVRJT05cIl1dLElbMTUwODAwXT1bQVtcIkdSLklDLkZGLkpBTU1JTkdcIl1dLElbMTUwOTAwXT1bQVtcIkdSLklDLkpPSU5UIElOVEVMTElHRU5DRSBDRU5UUkVcIl1dLElbMTUxZTNdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSU5URUxMSUdFTkNFXCJdXSxJWzE1MTEwMF09W0FbXCJHUi5JQy5GRi5TRUFSQ0hcIl1dLElbMTUxMjAwXT1bQVtcIkdSLklDLlNFTlNPUlwiXV0sSVsxNTEzMDBdPVtBW1wiR1IuSUMuTUlMSVRBUlkgSElTVE9SWVwiXV0sSVsxNmU0XT1bQVtcIkdSLklDLlNVU1RBSU5NRU5UXCJdXSxJWzE2MDEwMF09W0FbXCJHUi5JQy5BRE1JTklTVFJBVElWRVwiXV0sSVsxNjAyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBBTExcIl1dLElbMTYwMzAwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5JQy5BSVJQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJWzE2MDQwMF09W0FbXCJHUi5JQy5BTU1VTklUSU9OXCJdXSxJWzE2MDUwMF09W0FbXCJHUi5JQy5CQU5EXCJdXSxJWzE2MDUwMV09W0FbXCJHUi5JQy5BUk1ZIE1VU0lDXCJdXSxJWzE2MDYwMF09W0FbXCJHUi5JQy5DT01CQVQgU0VSVklDRSBTVVBQT1JUXCJdXSxJWzE2MDcwMF09W0FbXCJHUi5JQy5GSU5BTkNFXCJdXSxJWzE2MDgwMF09W0FbXCJHUi5JQy5KVURHRSBBRFZPQ0FURSBHRU5FUkFMXCJdXSxJWzE2MDkwMF09W0FbXCJHUi5JQy5MQUJPVVJcIl1dLElbMTYxZTNdPVtBW1wiR1IuSUMuTEFVTkRSWS9CQVRIXCJdXSxJWzE2MTEwMF09W0FbXCJHUi5JQy5NQUlOVEVOQU5DRVwiXV0sSVsxNjEyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5NQVRFUklFTFwiXV0sSVsxNjEzMDBdPVtBW1wiR1IuSUMuRkYuTUVESUNBTFwiXV0sSVsxNjE0MDBdPVtBW1wiR1IuSUMuRkYuTUVESUNBTCBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbMTYxNTAwXT1bQVtcIkdSLklDLk1PUkFMRSwgV0VMRkFSRSwgQU5EIFJFQ1JFQVRJT05cIl1dLElbMTYxNjAwXT1bQVtcIkdSLklDLk1PUlRVQVJZIEFGRkFJUlNcIl1dLElbMTYxNzAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgTVVMVElQTEVcIl1dLElbMTYxODAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgSVwiXV0sSVsxNjE5MDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJSVwiXV0sSVsxNjJlM109W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVsxNjIxMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5OQVRPIFNVUFBMWSBDTEFTUyBJVlwiXV0sSVsxNjIyMDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBWXCJdXSxJWzE2MjMwMF09W0FbXCJHUi5JQy5PUkROQU5DRVwiXV0sSVsxNjI0MDBdPVtBW1wiR1IuSUMuUEVSU09OTkVMIFNFUlZJQ0VTXCJdXSxJWzE2MjUwMF09W0FbXCJHUi5JQy5QRVRST0xFVU0gT0lMIExVQlJJQ0FOVFNcIl1dLElbMTYyNjAwXT1bQVtcIkdSLklDLlBJUEVMSU5FXCJdXSxJWzE2MjcwMF09W0FbXCJHUi5JQy5QT1NUQUxcIl1dLElbMTYyODAwXT1bQVtcIkdSLklDLlBVQkxJQyBBRkZBSVJTXCJdXSxJWzE2MjkwMF09W0FbXCJHUi5JQy5RVUFSVEVSTUFTVEVSXCJdXSxJWzE2M2UzXT1bQVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJWzE2MzEwMF09W0FbXCJHUi5JQy5SRUxJR0lPVVMgU1VQUE9SVFwiXV0sSVsxNjMyMDBdPVtBW1wiR1IuSUMuUkVQTEFDRU1FTlQgSE9MRElORyBVTklUXCJdXSxJWzE2MzMwMF09W0FbXCJHUi5JQy5TRUFQT1JUIE9GIERFQkFSS0FUSU9OXCJdXSxJWzE2MzQwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl1dLElbMTYzNTAwXT1bQVtcIkdSLklDLkpPSU5UIElORk9STUFUSU9OIEJVUkVBVVwiXV0sSVsxNjM2MDBdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl1dLElbMTYzNjAxXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5JQy5GTE9BVElORyBDUkFGVFwiXV0sSVsxNjM3MDBdPVtBW1wiR1IuSUMuRkYuU1VQUExZXCJdLEFbXCJHUi5JQy5GRi5DTEFTUyBJXCJdXSxJWzE2MzgwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJXCJdXSxJWzE2MzkwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXV0sSVsxNjRlM109W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIElWXCJdXSxJWzE2NDEwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIFZcIl1dLElbMTY0MjAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgVklcIl1dLElbMTY0MzAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgVklJXCJdXSxJWzE2NDQwMF09W0FbXCJHUi5JQy5GRi5TVVBQTFlcIl0sQVtcIkdSLklDLkZGLkNMQVNTIFZJSUlcIl1dLElbMTY0NTAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgSVhcIl1dLElbMTY0NjAwXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuQ0xBU1MgWFwiXV0sSVsxNjQ3MDBdPVtBW1wiR1IuSUMuV0FURVJcIl1dLElbMTY0ODAwXT1bQVtcIkdSLklDLldBVEVSIFBVUklGSUNBVElPTlwiXV0sSVsxNjQ5MDBdPVtBW1wiR1IuSUMuUFVCTElDIEFGRkFJUlMgQlJPQURDQVNUXCJdXSxJWzE2NWUzXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuRkYuTkFUTyBTVVBQTFkgQ0xBU1MgQUxMXCJdXSxJWzE2NTEwMF09W0FbXCJHUi5JQy5JTlRFUlBSRVRFUi9UUkFOU0xBVE9SXCJdXSxJWzE2NTIwMF09W0FbXCJHUi5JQy5TVVBQT1JUXCJdXSxJWzE2NTMwMF09W0FbXCJHUi5JQy5BUk1ZIEZJRUxEIFNVUFBPUlRcIl1dLElbMTY1NDAwXT1bQVtcIkdSLklDLkNPTlRSQUNUSU5HIFNFUlZJQ0VTXCJdXSxJWzE2NTUwMF09W0FbXCJHUi5JQy5QQVJBQ0hVVEUgUklHR0VSXCJdXSxJWzE3ZTRdPVtdLElbMTcwMTAwXT1bQVtcIkdSLklDLk5BVkFMXCJdXSxJWzE4ZTRdPVtdLElbMTgwMTAwXT1bQVtcIkdSLklDLkFMTElFRCBDT01NQU5EIEVVUk9QRSBSQVBJRCBSRUFDVElPTiBDT1JQUyAoQVJSQylcIl1dLElbMTgwMjAwXT1bQVtcIkdSLklDLkFMTElFRCBDT01NQU5EIE9QRVJBVElPTlNcIl1dLElbMTgwMzAwXT1bQVtcIkdSLklDLklOVEVSTkFUSU9OQUwgU0VDVVJJVFkgQVNTSVNUQU5DRSBGT1JDRSAoSVNBRilcIl1dLElbMTgwNDAwXT1bQVtcIkdSLklDLk1VTFRJTkFUSU9OQUwgKE1OKVwiXV0sSVsxOWU0XT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMmU1XT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsyMDAxMDBdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzIwMDIwMF09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzIwMDMwMF09W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMjAwNDAwXT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzIwMDUwMF09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMjAwNjAwXT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMjAwNzAwXT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsyMDA4MDBdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzIwMDkwMF09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMjAxZTNdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT04gU0VDVVJJVFkgQUdFTkNZIChUU0EpXCJdXSxJWzIwMTEwMF09W0FbXCJHUi5JQy5MQVcgRU5GT1JDRU1FTlQgVkVTU0VMXCJdXSxJWzIwMTIwMF09W0FbXCJHUi5JQy5GRi5VUyBNQVJTSEFMUyBTRVJWSUNFXCJdXSxJWzIwMTMwMF09W0FbXCJTVC5JQy5JTlRFUk5BTCBTRUNVUklUWSBGT1JDRVwiXV0sdFtcIjAxXCJdPVtDP0FbXCJHUi5NMS5UQUNUSUNBTCBTQVRFTExJVEUgQ09NTVVOSUNBVElPTlNcIl06QVtcIkdSLk0xLkFJUk1PQklMRS9BSVIgQVNTQVVMVFwiXV0sdFtcIjAyXCJdPVtBW1wiR1IuTTEuQVJFQVwiXV0sdFtcIjAzXCJdPVtBW1wiR1IuTTEuQVRUQUNLXCJdXSx0W1wiMDRcIl09W0FbXCJHUi5NMS5CSU9MT0dJQ0FMXCJdXSx0W1wiMDVcIl09W0FbXCJHUi5NMS5CT1JERVJcIl1dLHRbXCIwNlwiXT1bQVtcIkdSLk0xLkJSSURHSU5HXCJdXSx0W1wiMDdcIl09W0FbXCJHUi5NMS5DSEVNSUNBTFwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuTTEuQ0xPU0UgUFJPVEVDVElPTlwiXV0sdFtcIjA5XCJdPVtBW1wiR1IuTTEuQ09NQkFUXCJdXSx0WzEwXT1bQVtcIkdSLk0xLkNPTU1BTkQgQU5EIENPTlRST0xcIl1dLHRbMTFdPVtBW1wiR1IuTTEuQ09NTVVOSUNBVElPTlMgQ09OVElOR0VOQ1kgUEFDS0FHRVwiXV0sdFsxMl09W0FbXCJHUi5NMS5DT05TVFJVQ1RJT05cIl1dLHRbMTNdPVtBW1wiR1IuTTEuQ1JPU1MgQ1VMVFVSQUwgQ09NTVVOSUNBVElPTlwiXV0sdFsxNF09W0FbXCJHUi5NMS5DUk9XRCBBTkQgUklPVCBDT05UUk9MXCJdXSx0WzE1XT1bQVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sdFsxNl09W0FbXCJHUi5NMS5ERVRFTlRJT05cIl1dLHRbMTddPVtBW1wiR1IuTTEuRElSRUNUIENPTU1VTklDQVRJT05TXCJdXSx0WzE4XT1bQVtcIkdSLk0xLkRJVklOR1wiXV0sdFsxOV09W0FbXCJHUi5NMS5ESVZJU0lPTlwiXV0sdFsyMF09W0FbXCJHUi5NMS5ET0dcIl1dLHRbMjFdPVtBW1wiR1IuTTEuRFJJTExJTkdcIl1dLHRbMjJdPVtBW1wiR1IuTTEuRUxFQ1RSTy1PUFRJQ0FMXCJdXSx0WzIzXT1bQVtcIkdSLk0xLkVOSEFOQ0VEXCJdXSx0WzI0XT1bQVtcIkdSLk0xLkVYUExPU0lWRSBPUkROQU5DRSBESVNQT1NBTFwiXV0sdFsyNV09W0FbXCJHUi5NMS5GSVJFIERJUkVDVElPTiBDRU5UUkVcIl1dLHRbMjZdPVtBW1wiR1IuTTEuRk9SQ0VcIl1dLHRbMjddPVtBW1wiR1IuTTEuRk9SV0FSRFwiXV0sdFsyOF09W0FbXCJHUi5NMS5HUk9VTkQgU1RBVElPTiBNT0RVTEVcIl1dLHRbMjldPVtBW1wiR1IuTTEuTEFORElORyBTVVBQT1JUXCJdXSx0WzMwXT1bQVtcIkdSLk0xLkxBUkdFIEVYVEVOU0lPTiBOT0RFXCJdXSx0WzMxXT1bQVtcIkdSLk0xLk1BSU5URU5BTkNFXCJdXSx0WzMyXT1bQVtcIkdSLk0xLk1FVEVPUk9MT0dJQ0FMXCJdXSx0WzMzXT1bQVtcIkdSLk0xLk1JTkUgQ09VTlRFUk1FQVNVUkVcIl1dLHRbMzRdPVtBW1wiR1IuTTEuTUlTU0lMRVwiXV0sdFszNV09W0FbXCJHUi5NMS4oTU9CSUxFKSBBRFZJU09SIEFORCBTVVBQT1JUXCJdXSx0WzM2XT1bQVtcIkdSLk0xLk1PQklMRSBTVUJTQ1JJQkVSIEVRVUlQTUVOVFwiXV0sdFszN109W0FbXCJHUi5NMS5NT0JJTElUWSBTVVBQT1JUXCJdXSx0WzM4XT1bQVtcIkdSLk0xLk1PVkVNRU5UIENPTlRST0wgQ0VOVFJFXCJdXSx0WzM5XT1bQVtcIkdSLk0xLk1VTFRJTkFUSU9OQUxcIl1dLHRbNDBdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTCBTUEVDSUFMSVpFRCBVTklUXCJdXSx0WzQxXT1bQVtcIkdSLk0xLk1VTFRJUExFIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sdFs0Ml09W0FbXCJHUi5NMS5OQVRPIE1FRElDQUwgUk9MRSAxXCJdXSx0WzQzXT1bQVtcIkdSLk0xLk5BVE8gTUVESUNBTCBST0xFIDJcIl1dLHRbNDRdPVtBW1wiR1IuTTEuTkFUTyBNRURJQ0FMIFJPTEUgM1wiXV0sdFs0NV09W0FbXCJHUi5NMS5OQVRPIE1FRElDQUwgUk9MRSA0XCJdXSx0WzQ2XT1bQVtcIkdSLk0xLk5BVkFMXCJdXSx0WzQ3XT1bQz9BW1wiR1IuTTEuVU5NQU5ORUQgQUVSSUFMIFZFSElDTEVcIl06QVtcIkdSLk0xLk5PREUgQ0VOVFJFXCJdXSx0WzQ4XT1bQVtcIkdSLk0xLk5VQ0xFQVJcIl1dLHRbNDldPVtBW1wiR1IuTTEuT1BFUkFUSU9OU1wiXV0sdFs1MF09W0FbXCJHUi5NMS5SQURBUlwiXV0sdFs1MV09W0FbXCJHUi5NMS5SQURJTyBGUkVRVUVOQ1kgSURFTlRJRklDQVRJT04gKFJGSUQpIElOVEVSUk9HQVRPUi8gU0VOU09SXCJdXSx0WzUyXT1bQVtcIkdSLk0xLlJBRElPTE9HSUNBTFwiXV0sdFs1M109W0FbXCJHUi5NMS5TRUFSQ0ggQU5EIFJFU0NVRVwiXV0sdFs1NF09W0FbXCJHUi5NMS5TRUNVUklUWVwiXV0sdFs1NV09W0FbXCJHUi5NMS5TRU5TT1JcIl1dLHRbNTZdPVtDP0FbXCJHUi5NMS5XRUFQT05cIl06QVtcIkdSLk0xLlNFTlNPUiBDT05UUk9MIE1PRFVMRVwiXV0sdFs1N109W0FbXCJHUi5NMS5TSUdOQUxTIElOVEVMTElHRU5DRVwiXV0sdFs1OF09W0M/QVtcIkdSLk0xLkFSTU9SRURcIl06QVtcIkdSLk0xLlNJTkdMRSBTSEVMVEVSIFNXSVRDSFwiXV0sdFs1OV09W0FbXCJHUi5NMS5TSU5HTEUgUk9DS0VUIExBVU5DSEVSXCJdXSx0WzYwXT1bQVtcIkdSLk0xLlNNT0tFXCJdXSx0WzYxXT1bQVtcIkdSLk0xLlNOSVBFUlwiXV0sdFs2Ml09W0FbXCJHUi5NMS5TT1VORCBSQU5HSU5HXCJdXSx0WzYzXT1bQVtcIkdSLk0xLlNQRUNJQUwgT1BFUkFUSU9OUyBGT1JDRVMgKFNPRilcIl1dLHRbNjRdPVtBW1wiR1IuTTEuU1BFQ0lBTCBXRUFQT05TIEFORCBUQUNUSUNTXCJdXSx0WzY1XT1bQVtcIkdSLk0xLlNVUlZFWVwiXV0sdFs2Nl09W0FbXCJHUi5NMS5UQUNUSUNBTCBFWFBMT0lUQVRJT05cIl1dLHRbNjddPVtBW1wiR1IuTTEuVEFSR0VUIEFDUVVJU0lUSU9OXCJdXSx0WzY4XT1bQVtcIkdSLk0xLlRPUE9HUkFQSElDXCJdXSx0WzY5XT1bQVtcIkdSLk0xLlVUSUxJVFlcIl1dLHRbNzBdPVtBW1wiR1IuTTEuVklERU8gSU1BR0VSWVwiXV0sdFs3MV09W0M/QVtcIkdSLk0xLk1PQklMSVRZIEFTU0FVTFRcIl06QVtcIkdSLk0xLkFDQ0lERU5UXCJdXSx0WzcyXT1bQz9BW1wiR1IuTTEuQU1QSElCSU9VUyBXQVJGQVJFIFNISVAgXCJdOkFbXCJHUi5NMS5PVEhFUlwiXV0sdFs3M109W0M/QVtcIkdSLk0xLkxPQUQgSEFORExJTkcgU1lTVEVNXCJdOkFbXCJHUi5NMS5DSVZJTElBTlwiXV0sdFs3NF09W0M/QVtcIkdSLk0xLlBBTExFVElaRUQgTE9BRCBTWVNURU1cIl06QVtcIkdSLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFs3NV09W0FbXCJHUi5NMS5NRURFVkFDXCJdXSx0Wzc2XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLHRbNzddPVtBW1wiR1IuTTEuU1VQUE9SVFwiXV0sdFs3OF09W0FbXCJHUi5NMS5BVklBVElPTlwiXV0sdFs3OV09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl1dLHRbODBdPVtBW1wiR1IuTTEuVElMVC1ST1RPUlwiXV0sdFs4MV09W0FbXCJHUi5NMS5DT01NQU5EIFBPU1QgTk9ERVwiXV0sdFs4Ml09W0FbXCJHUi5NMS5KT0lOVCBORVRXT1JLIE5PREVcIl1dLHRbODNdPVtBW1wiR1IuTTEuUkVUUkFOU01JU1NJT04gU0lURVwiXV0sdFs4NF09W0FbXCJHUi5NMS5BU1NBVUxUXCJdXSx0Wzg1XT1bQVtcIkdSLk0xLldFQVBPTlNcIl1dLHRbODZdPVtBW1wiR1IuTTEuQ1JJTUlOQUwgSU5WRVNUSUdBVElPTiBESVZJU0lPTlwiXV0sdFs4N109W0FbXCJHUi5NMS5ESUdJVEFMXCJdXSx0Wzg4XT1bQVtcIkdSLk0xLk5FVFdPUksgT1IgTkVUV09SSyBPUEVSQVRJT05TXCJdXSx0Wzg5XT1bQVtcIkdSLk0xLkFJUkZJRUxELCBBRVJJQUwgUE9SVCBPRiBERUJBUktBVElPTiwgT1IgQUVSSUFMIFBPUlQgT0YgRU1CQVJLQVRJT05cIl1dLHRbOTBdPVtBW1wiR1IuTTEuUElQRUxJTkVcIl1dLHRbOTFdPVtBW1wiR1IuTTEuUE9TVEFMXCJdXSx0WzkyXT1bQVtcIkdSLk0xLldBVEVSXCJdXSx0WzkzXT1bQVtcIkdSLk0xLklOREVQRU5ERU5UIENPTU1BTkRcIl1dLHRbOTRdPVtBW1wiR1IuTTEuVEhFQVRSRVwiXV0sdFs5NV09W0FbXCJHUi5NMS5BUk1ZXCJdXSx0Wzk2XT1bQVtcIkdSLk0xLkNPUlBTXCJdXSx0Wzk3XT1bQVtcIkdSLk0xLkJSSUdBREVcIl1dLHRbOThdPVtBW1wiR1IuSUMuRkYuSEVBRFFVQVJURVJTIE9SIEhFQURRVUFSVEVSUyBFTEVNRU5UXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5NMi5BSVJCT1JORVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuQVJDVElDXCJdXSxFW1wiMDNcIl09W0FbXCJHUi5NMi5CQVRUTEUgREFNQUdFIFJFUEFJUlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuQklDWUNMRSBFUVVJUFBFRFwiXV0sRVtcIjA1XCJdPVtBW1wiR1IuTTIuQ0FTVUFMVFkgU1RBR0lOR1wiXV0sRVtcIjA2XCJdPVtBW1wiR1IuTTIuQ0xFQVJJTkdcIl1dLEVbXCIwN1wiXT1bQVtcIkdSLk0yLkNMT1NFIFJBTkdFXCJdXSxFW1wiMDhcIl09W0FbXCJHUi5NMi5DT05UUk9MXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5ERUNPTlRBTUlOQVRJT05cIl1dLEVbMTBdPVtBW1wiR1IuTTIuREVNT0xJVElPTlwiXV0sRVsxMV09W0FbXCJHUi5NMi5ERU5UQUxcIl1dLEVbMTJdPVtBW1wiR1IuTTIuRElHSVRBTFwiXV0sRVsxM109W0FbXCJHUi5NMi5FTkhBTkNFRCBQT1NJVElPTiBMT0NBVElPTiBSRVBPUlRJTkcgU1lTVEVNXCJdXSxFWzE0XT1bQVtcIkdSLk0yLkVRVUlQTUVOVFwiXV0sRVsxNV09W0FbXCJHUi5NMi5IRUFWWVwiXV0sRVsxNl09W0FbXCJHUi5NMi5ISUdIIEFMVElUVURFXCJdXSxFWzE3XT1bQVtcIkdSLk0yLklOVEVSTU9EQUxcIl1dLEVbMThdPVtBW1wiR1IuTTIuSU5URU5TSVZFIENBUkVcIl1dLEVbMTldPVtBW1wiR1IuTTIuTElHSFRcIl1dLEVbMjBdPVtBW1wiR1IuTTIuTEFCT1JBVE9SWVwiXV0sRVsyMV09W0FbXCJHUi5NMi5MQVVOQ0hFUlwiXV0sRVsyMl09W0FbXCJHUi5NMi5MT05HIFJBTkdFXCJdXSxFWzIzXT1bQVtcIkdSLk0yLkxPVyBBTFRJVFVERVwiXV0sRVsyNF09W0FbXCJHUi5NMi5NRURJVU1cIl1dLEVbMjVdPVtBW1wiR1IuTTIuTUVESVVNIEFMVElUVURFXCJdXSxFWzI2XT1bQVtcIkdSLk0yLk1FRElVTSBSQU5HRVwiXV0sRVsyN109W0FbXCJHUi5NMi5NT1VOVEFJTlwiXV0sRVsyOF09W0FbXCJHUi5NMi5ISUdIIFRPIE1FRElVTSBBTFRJVFVERVwiXV0sRVsyOV09W0FbXCJHUi5NMi5NVUxUSS1DSEFOTkVMXCJdXSxFWzMwXT1bQVtcIkdSLk0yLk9QVElDQUxcIl1dLEVbMzFdPVtBW1wiR1IuTTIuUEFDSyBBTklNQUxcIl1dLEVbMzJdPVtBW1wiR1IuTTIuUEFUSUVOVCBFVkFDVUFUSU9OIENPT1JESU5BVElPTlwiXV0sRVszM109W0FbXCJHUi5NMi5QUkVWRU5USVZFIE1BSU5URU5BTkNFXCJdXSxFWzM0XT1bQVtcIkdSLk0yLlBTWUNIT0xPR0lDQUxcIl1dLEVbMzVdPVtBW1wiR1IuTTIuUkFESU8gUkVMQVkgTElORSBPRiBTSUdIVFwiXV0sRVszNl09W0FbXCJHUi5NMi5SQUlMUk9BRFwiXV0sRVszN109W0FbXCJHUi5NMi5SRUNPVkVSWSAoVU5NQU5ORUQgU1lTVEVNUylcIl1dLEVbMzhdPVtBW1wiR1IuTTIuUkVDT1ZFUlkgKE1BSU5URU5BTkNFKVwiXV0sRVszOV09W0FbXCJHUi5NMi5SRVNDVUUgQ09PUkRJTkFUSU9OIENFTlRSRVwiXV0sRVs0MF09W0FbXCJHUi5NMi5SSVZFUklORVwiXV0sRVs0MV09W0FbXCJHUi5NMi5TSU5HTEUgQ0hBTk5FTFwiXV0sRVs0Ml09W0FbXCJHUi5NMi5TS0lcIl1dLEVbNDNdPVtBW1wiR1IuTTIuU0hPUlQgUkFOR0VcIl1dLEVbNDRdPVtBW1wiR1IuTTIuU1RSQVRFR0lDXCJdXSxFWzQ1XT1bQVtcIkdSLk0yLlNVUFBPUlRcIl1dLEVbNDZdPVtBW1wiR1IuTTIuVEFDVElDQUxcIl1dLEVbNDddPVtBW1wiR1IuTTIuVE9XRURcIl1dLEVbNDhdPVtBW1wiR1IuTTIuVFJPT1BcIl1dLEVbNDldPVtBW1wiR1IuTTIuVkVSVElDQUwgT1IgU0hPUlQgVEFLRS1PRkYgQU5EIExBTkRJTkcgXCJdXSxFWzUwXT1bQVtcIkdSLk0yLlZFVEVSSU5BUllcIl1dLEVbNTFdPVtBW1wiR1IuTTIuV0hFRUxFRFwiXV0sRVs1Ml09W0FbXCJHUi5NMi5ISUdIIFRPIExPVyBBTFRJVFVERVwiXV0sRVs1M109W0FbXCJHUi5NMi5NRURJVU0gVE8gTE9XIEFMVElUVURFXCJdXSxFWzU0XT1bQVtcIkdSLk0yLkFUVEFDS1wiXV0sRVs1NV09W0FbXCJHUi5NMi5SRUZVRUxcIl1dLEVbNTZdPVtBW1wiR1IuTTIuVVRJTElUWVwiXV0sRVs1N109W0FbXCJHUi5NMi5DT01CQVQgU0VBUkNIIEFORCBSRVNDVUVcIl1dLEVbNThdPVtBW1wiR1IuTTIuR1VFUklMTEFcIl1dLEVbNTldPVtBW1wiR1IuTTIuQUlSIEFTU0FVTFRcIl1dLEVbNjBdPVtBW1wiR1IuTTIuQU1QSElCSU9VU1wiXV0sRVs2MV09W0FbXCJHUi5NMi5WRVJZIEhFQVZZXCJdXSxFWzYyXT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sRVs2M109W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSxFWzY0XT1bQVtcIkdSLk0yLk5BVlkgQkFSR0UsIFNFTEYtUFJPUEVMTEVEXCJdXSxFWzY1XT1bQVtcIkdSLk0yLk5BVlkgQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sRVs2Nl09W0FbXCJHUi5NMi5MQVVOQ0hcIl1dLEVbNjddPVtBW1wiR1IuTTIuTEFORElORyBDUkFGVFwiXV0sRVs2OF09W0FbXCJHUi5NMi5MQU5ESU5HIFNISVBcIl1dLEVbNjldPVtBW1wiR1IuTTIuU0VSVklDRSBDUkFGVC9ZQVJEXCJdXSxFWzcwXT1bQVtcIkdSLk0yLlRVRyBIQVJCT1JcIl1dLEVbNzFdPVtBW1wiR1IuTTIuT0NFQU4gR09JTkcgVFVHIEJPQVRcIl1dLEVbNzJdPVtBW1wiR1IuTTIuU1VSRkFDRSBERVBMT1lNRU5UIEFORCBESVNUUklCVVRJT04gQ09NTUFORFwiXV0sRVs3M109W0FbXCJHUi5NMi5OT05DT01CQVRBTlQgR0VORVJJQyBWRVNTRUxcIl1dLEVbNzRdPVtBW1wiR1IuTTIuQ09NUE9TSVRFXCJdXSxFWzc1XT1bQVtcIkdSLk0yLlNIRUxURVJcIl1dLEVbNzZdPVtBW1wiR1IuTTIuTElHSFQgQU5EIE1FRElVTVwiXV0sRVs3N109W0FbXCJHUi5NMi5TRUxGLVBST1BFTExFRFwiXV0sRVs3OF09W0FbXCJHUi5NMi5TRUNVUklUWSBGT1JDRSBBU1NJU1RBTkNFXCJdXSl9fSx3PXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMTFcIj09ZSYmKElbMTFlNF09W0FbXCJHUi5JLkNJVklMSUFOXCJdXSxJWzExMDEwMF09W0FbXCJHUi5JQy5FTlZJUk9OTUVOVEFMIFBST1RFQ1RJT05cIl1dLElbMTEwMjAwXT1bQVtcIkdSLklDLkdPVkVSTk1FTlQgT1JHQU5JWkFUSU9OXCJdXSxJWzExMDMwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdXSxJWzExMDQwMF09W0FbXCJTVC5JQy5HUk9VUFwiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl1dLElbMTEwNjAwXT1bQVtcIlNULklDLktJTExJTkcgVklDVElNU1wiXV0sSVsxMTA3MDBdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuSUMuQVRURU1QVEVEIENSSU1JTkFMIEFDVElWSVRZXCJdXSxJWzExMDgwMF09W0FbXCJTVC5JQy5TUFlcIl1dLElbMTEwOTAwXT1bQVtcIlNULklDLkNPTVBPU0lURSBMT1NTXCJdXSxJWzExMWUzXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sdFtcIjAxXCJdPVtBW1wiU1QuTTEuQVNTQVNTSU5BVElPTlwiXV0sdFtcIjAyXCJdPVtBW1wiU1QuTTEuRVhFQ1VUSU9OIChXUk9OR0ZVTCBLSUxMSU5HKVwiXV0sdFtcIjAzXCJdPVtBW1wiU1QuTTEuTVVSREVSXCJdXSx0W1wiMDRcIl09W0FbXCJTVC5NMS5ISUpBQ0tJTkcvSElKQUNLRURcIl1dLHRbXCIwNVwiXT1bQVtcIlNULk0xLktJRE5BUFBJTkdcIl1dLHRbXCIwNlwiXT1bQVtcIlNULk0xLlBJUkFDWVwiXV0sdFtcIjA3XCJdPVtBW1wiU1QuTTEuUkFQRVwiXV0sdFtcIjA4XCJdPVtBW1wiU1QuTTEuQ0lWSUxJQU5cIl1dLHRbXCIwOVwiXT1bQVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdXSx0WzEwXT1bQVtcIlNULk0xLkZPUkVJR04gRklHSFRFUlNcIl1dLHRbMTFdPVtBW1wiU1QuTTEuR0FOR1wiXV0sdFsxMl09W0FbXCJTVC5NMS5HT1ZFUk5NRU5UIE9SR0FOSVpBVElPTlwiXV0sdFsxM109W0FbXCJTVC5NMS5MRUFERVJcIl1dLHRbMTRdPVtBW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXV0sdFsxNV09W0FbXCJTVC5NMS5DT0VSQ0VEL0lNUFJFU1NFRFwiXV0sdFsxNl09W0FbXCJTVC5NMS5XSUxMSU5HIFJFQ1JVSVRcIl1dLHRbMTddPVtBW1wiU1QuTTEuUkVMSUdJT1VTXCJdXSx0WzE4XT1bQVtcIlNULk0xLlRBUkdFVEVEXCJdXSx0WzE5XT1bQVtcIlNULk0xLlRFUlJPUklTVFwiXV0sdFsyMF09W0FbXCJTVC5NMS5TUEVBS0VSXCJdXSx0WzIxXT1bQVtcIlNULk0xLkFDQ0lERU5UXCJdXSx0WzIyXT1bQVtcIlNULk0xLkNPTUJBVFwiXV0sdFsyM109W0FbXCJTVC5NMS5PVEhFUlwiXV0sdFsyNF09W0FbXCJTVC5NMS5MT09UXCJdXSx0WzI1XT1bQVtcIkdSLk0xLkhJSkFDS0VSXCJdXSx0WzI2XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNULk0yLkxFQURFUiBPUiBMRUFERVJTSElQXCJdXSxFW1wiMDJcIl09W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxfPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe2lmKFwiMTVcIj09ZSl7SVsxMWU0XT1bQVtcIkdSLkVRLldFQVBPTlwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuRVEuUklGTEVcIl1dLElbMTEwMTAxXT1bQVtcIkdSLkVRLlJJRkxFXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTAxMDJdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTAxMDNdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwMjAwXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdXSxJWzExMDIwMV09W0FbXCJHUi5FUS5NQUNISU5FIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwMjAyXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwMjAzXT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDMwMF09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJWzExMDMwMV09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSldLElbMTEwMzAyXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSldLElbMTEwMzAzXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMDQwMF09W0FbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJWzExMDUwMF09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl1dLElbMTEwNTAxXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwNTAyXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIEdVTlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMDUwM109W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBHVU5cIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwNjAwXT1bQVtcIkdSLkVRLkFOVElUQU5LIEdVTlwiXV0sSVsxMTA2MDFdPVtBW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTA2MDJdPVtBW1wiR1IuRVEuQU5USVRBTksgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwNjAzXT1bQVtcIkdSLkVRLkFOVElUQU5LIEdVTlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTA3MDBdPVtBW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdXSxJWzExMDcwMV09W0FbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJWzExMDcwMl09W0FbXCJHUi5FUS5ESVJFQ1QgRklSRSBHVU5cIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTA3MDNdPVtBW1wiR1IuRVEuRElSRUNUIEZJUkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDgwMF09W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXV0sSVsxMTA4MDFdPVtBW1wiR1IuRVEuUkVDT0lMTEVTUyBHVU5cIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdXSxJWzExMDgwMl09W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMDgwM109W0FbXCJHUi5FUS5SRUNPSUxMRVNTIEdVTlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTA5MDBdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl1dLElbMTEwOTAxXT1bQVtcIkdSLkVRLkhPV0lUWkVSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTA5MDJdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTA5MDNdPVtBW1wiR1IuRVEuSE9XSVRaRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExZTNdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVsxMTEwMDFdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMDAyXT1bQVtcIkdSLkVRLk1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEwMDNdPVtBW1wiR1IuRVEuTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTExMDBdPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXV0sSVsxMTExMDFdPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMTAyXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdLEFbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRMQVJcIl1dLElbMTExMTAzXT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdLEFbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSIFRFTEFSXCJdXSxJWzExMTEwNF09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTExMTA1XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSxBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBUTEFSXCJdXSxJWzExMTEwNl09W0FbXCJHUi5FUS5BSVIgREVGRU5DRSBNSVNTSUxFIExBVU5DSEVSIFNVUkZBQ0UtVE8tQUlSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0sQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVEVMQVJcIl1dLElbMTExMTA3XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExMTA4XT1bQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0sQVtcIkdSLkVRLkFJUiBERUZFTkNFIE1JU1NJTEUgTEFVTkNIRVIgU1VSRkFDRS1UTy1BSVIgVExBUlwiXV0sSVsxMTExMDldPVtBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXSxBW1wiR1IuRVEuQUlSIERFRkVOQ0UgTUlTU0lMRSBMQVVOQ0hFUiBTVVJGQUNFLVRPLUFJUiBURUxBUlwiXV0sSVsxMTEyMDBdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXV0sSVsxMTEyMDFdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExMjAyXT1bQVtcIkdSLkVRLkFOVElUQU5LIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEyMDNdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlTU0lMRSBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTEzMDBdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl1dLElbMTExMzAxXT1bQVtcIkdSLkVRLlNVUkZBQ0UtVE8tU1VSRkFDRSBNSVNTSUxFIExBVU5DSEVSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTEzMDJdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTEzMDNdPVtBW1wiR1IuRVEuU1VSRkFDRS1UTy1TVVJGQUNFIE1JU1NJTEUgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExNDAwXT1bQVtcIkdSLkVRLk1PUlRBUlwiXV0sSVsxMTE0MDFdPVtBW1wiR1IuRVEuTU9SVEFSXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTE0MDJdPVtBW1wiR1IuRVEuTU9SVEFSXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTExNDAzXT1bQVtcIkdSLkVRLk1PUlRBUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTE1MDBdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVsxMTE1MDFdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExNTAyXT1bQVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTE1MDNdPVtBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuTE9ORyBSQU5HRVwiXV0sSVsxMTE2MDBdPVtBW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdXSxJWzExMTYwMV09W0FbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsQVtcIkdSLkVRLlNIT1JUIFJBTkdFXCJdKV0sSVsxMTE2MDJdPVtBW1wiR1IuRVEuTVVMVElQTEUgUk9DS0VUIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDEwLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl0pXSxJWzExMTYwM109W0FbXCJHUi5FUS5NVUxUSVBMRSBST0NLRVQgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMTAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMTcwMF09W0FbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl1dLElbMTExNzAxXT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTExNzAyXT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXSxBW1wiR1IuRVEuSU5URVJNRURJQVRFIFJBTkdFXCJdXSxJWzExMTcwM109W0FbXCJHUi5FUS5BTlRJVEFOSyBST0NLRVQgTEFVTkNIRVJcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTExODAwXT1bQVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdXSxJWzExMTkwMF09W0FbXCJHUi5FUS5UQVNFUlwiXV0sSVsxMTJlM109W0FbXCJHUi5FUS5XQVRFUiBDQU5OT05cIl1dLElbMTJlNF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXV0sSVsxMjAxMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLkFSTU9VUkVEIFZFSElDTEVcIl1dLElbMTIwMTAxXT1bQVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEVcIl1dLElbMTIwMTAyXT1bQVtcIkdSLkVRLkFSTU9VUkVEIEZJR0hUSU5HIFZFSElDTEUgKEFGVikgQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sSVsxMjAxMDNdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl1dLElbMTIwMTA0XT1bQVtcIkdSLkVRLkFSTU9VUkVEIFBFUlNPTk5FTCBDQVJSSUVSXCJdLEFbXCJHUi5FUS5NRURJQ0FMIEVWQUNVQVRJT05cIl1dLElbMTIwMTA1XT1bQVtcIkdSLklDLkFSTU9VUlwiXV0sSVsxMjAxMDZdPVtBW1wiR1IuSUMuQVJNT1VSXCJdLEFbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbMTIwMTA3XT1bQVtcIkdSLklDLkFSTU9VUlwiXSxBW1wiR1IuRVEuTUVESUNBTCBFVkFDVUFUSU9OXCJdXSxJWzEyMDEwOF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxBW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJWzEyMDEwOV09W0FbXCJHUi5FUS5BUk1PVVJFRCBQRVJTT05ORUwgQ0FSUklFUlwiXSxBW1wiR1IuRVEuQ09NQkFUIFNFUlZJQ0UgU1VQUE9SVCBWRUhJQ0xFXCJdXSxJWzEyMDExMF09W0FbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJWzEyMDExMV09W0FbXCJHUi5FUS5BUk1PVVJFRCBGSUdIVElORyBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdLEFbXCJHUi5JQy5GRi5SRUNPTk5BSVNTQU5DRSBFUVVQSU1FTlRcIl1dLElbMTIwMjAwXT1bQVtcIkdSLkVRLlRBTktcIl1dLElbMTIwMjAxXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLkxJR0hUIFRBTktcIl1dLElbMTIwMjAyXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLk1FRElVTSBUQU5LXCJdXSxJWzEyMDIwM109W0FbXCJHUi5FUS5UQU5LXCJdLEFbXCJHUi5FUS5IRUFWWSBUQU5LXCJdXSxJWzEyMDMwMF09W0FbXCJHUi5FUS5UQU5LXCJdLEFbXCJHUi5FUS5UQU5LIFJFQ09WRVJZIFZFSElDTEVcIl1dLElbMTIwMzAxXT1bQVtcIkdSLkVRLlRBTktcIl0sQVtcIkdSLkVRLkxJR0hUIFRBTktcIl0sQVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVsxMjAzMDJdPVtBW1wiR1IuRVEuVEFOS1wiXSxBW1wiR1IuRVEuTUVESVVNIFRBTktcIl0sQVtcIkdSLkVRLlRBTksgUkVDT1ZFUlkgVkVISUNMRVwiXV0sSVsxMjAzMDNdPVtBW1wiR1IuRVEuVEFOS1wiXSxBW1wiR1IuRVEuSEVBVlkgVEFOS1wiXSxBW1wiR1IuRVEuVEFOSyBSRUNPVkVSWSBWRUhJQ0xFXCJdXSxJWzEzZTRdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0scy5fc2NhbGUoLjcsQVtcIkdSLklDLkVOR0lORUVSXCJdKV0sSVsxMzAxMDBdPVtBW1wiR1IuSU4uSUMuQlJJREdFXCJdXSxJWzEzMDIwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0scy5fc2NhbGUoLjgsQVtcIkdSLklOLklDLkJSSURHRVwiXSldLElbMTMwMzAwXT1bQVtcIkdSLklOLklDLkJSSURHRVwiXSxBW1wiR1IuRVEuRklYRUQgQlJJREdFXCJdXSxJWzEzMDQwMF09W0FbXCJHUi5JTi5JQy5CUklER0VcIl0sQVtcIkdSLk0yLlJJVkVSSU5FXCJdXSxJWzEzMDUwMF09W0FbXCJHUi5JTi5JQy5CUklER0VcIl0sQVtcIkdSLkVRLkZPTERJTkcgR0lSREVSIEJSSURHRVwiXV0sSVsxMzA2MDBdPVtBW1wiR1IuSU4uSUMuQlJJREdFXCJdLEFbXCJHUi5FUS5IT0xMT1cgREVDSyBCUklER0VcIl1dLElbMTMwNzAwXT1bQVtcIkdSLklDLkRSSUxMSU5HXCJdXSxJWzEzMDcwMV09W3MuX3NjYWxlKC43LEFbXCJHUi5JQy5EUklMTElOR1wiXSksQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXV0sSVsxMzA4MDBdPVtBW1wiR1IuRVEuRUFSVEhNT1ZFUlwiXV0sSVsxMzA4MDFdPVtBW1wiR1IuRVEuTVVMVElGVU5DVElPTkFMIEVBUlRITU9WRVIvRElHR0VSXCJdXSxJWzEzMDkwMF09W0FbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXV0sSVsxMzA5MDFdPVtBW1wiR1IuRVEuTUlORSBDTEVBUklORyBFUVVJUE1FTlRcIl0scy5fdHJhbnNsYXRlKDAsLTEwLEFbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0pXSxJWzEzMDkwMl09W0FbXCJHUi5FUS5NSU5FIENMRUFSSU5HIEVRVUlQTUVOVFwiXSxBW1wiR1IuRVEuVEFOS1wiXV0sSVsxMzA5MDNdPVtBW1wiR1IuRVEuQVNTQVVMVCBCUkVBQ0hFUiBWRUhJQ0xFIChBQlYpIFdJVEggQ09NQkFUIERPWkVSIEJMQURFXCJdXSxJWzEzMDkwNF09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl0sQVtcIkdSLklDLkVOR0lORUVSIFVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuTTIuTUVESVVNXCJdXSxJWzEzMDkwNV09W0FbXCJHUi5NMS5ST1VURSwgUkVDT05OQUlTU0FOQ0UsIEFORCBDTEVBUkFOQ0VcIl0sQVtcIkdSLklDLkVOR0lORUVSIFVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuTTIuSEVBVllcIl1dLElbMTMxZTNdPVtBW1wiR1IuSUMuTUlORSBMQVlJTkdcIl1dLElbMTMxMDAxXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxzLl90cmFuc2xhdGUoMCwxMCxzLl9zY2FsZSguNyxBW1wiR1IuSUMuTUlORSBMQVlJTkdcIl0pKV0sSVsxMzEwMDJdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0sQVtcIkdSLkVRLkFSTU9SRUQgQ0FSUklFUiBXSVRIIFZPTENBTk9cIl1dLElbMTMxMDAzXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuTElNSVRFRCBDUk9TUy1DT1VOVFJZXCJdLEFbXCJHUi5FUS5BUk1PUkVEIENBUlJJRVIgV0lUSCBWT0xDQU5PXCJdXSxJWzEzMTEwMF09W0FbXCJHUi5FUS5ET1pFUlwiXV0sSVsxMzExMDFdPVtBW1wiR1IuRVEuRE9aRVIgQVJNT1JFRFwiXV0sSVsxMzEyMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0scy5fc2NhbGUoLjYsQVtcIkdSLklDLkVOR0lORUVSXCJdKV0sSVsxMzEzMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVJcIl0scy5fc2NhbGUoLjYsQVtcIkdSLklDLkVOR0lORUVSXCJdKSxBW1wiR1IuRVEuQVJNT1VSRUQgUEVSU09OTkVMIENBUlJJRVIgRU5HSU5FRVIgUkVDT04gVkVISUNMRVwiXV0sSVsxMzE0MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5MSU1JVEVEIENST1NTLUNPVU5UUllcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBCQUNLSE9FXCJdXSxJWzEzMTUwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXSxzLl9zY2FsZSguNixBW1wiR1IuSUMuRU5HSU5FRVJcIl0pXSxJWzEzMTYwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNST1NTLUNPVU5UUllcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBGRVJSWSBUUkFOU1BPUlRFUlwiXV0sSVsxNGU0XT1bXSxJWzE0MDEwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl1dLElbMTQwMjAwXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuTUVESUNBTCBWRUhJQ0xFXCJdXSxJWzE0MDMwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLk1FRElDQUwgRVZBQ1VBVElPTlwiXV0sSVsxNDA0MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5NT0JJTEUgRU1FUkdFTkNZIFBIWVNJQ0lBTlwiXV0sSVsxNDA1MDBdPVtBW1wiR1IuRVEuQlVTXCJdXSxJWzE0MDYwMF09W0FbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl1dLElbMTQwNjAxXT1bQVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIExJR0hUXCJdXSxJWzE0MDYwMl09W0FbXCJHUi5FUS5TRU1JLVRSQUlMRVIgVFJVQ0tcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRSBNRURJVU1cIl1dLElbMTQwNjAzXT1bQVtcIkdSLkVRLlNFTUktVFJBSUxFUiBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFIEhFQVZZXCJdXSxJWzE0MDcwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXV0sSVsxNDA4MDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DUk9TUy1DT1VOVFJZXCJdXSxJWzE0MDkwMF09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0scy5fc2NhbGUoLjgsQVtcIkdSLklDLkZGLkNMQVNTIElJSVwiXSldLElbMTQxZTNdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLHMuX3NjYWxlKC43LEFbXCJHUi5JQy5XQVRFUlwiXSldLElbMTQxMTAwXT1bQVtcIkdSLkVRLldBVEVSIFZFSElDTEVcIl0sQVtcIkdSLkVRLkxJTUlURUQgQ1JPU1MtQ09VTlRSWVwiXV0sSVsxNDEyMDBdPVtBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5VVElMSVRZIFZFSElDTEUuVE9XIFRSVUNLXCJdXSxJWzE0MTIwMV09W0FbXCJHUi5FUS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0tcIl0sQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRS5UT1cgVFJVQ0suTElHSFRcIl1dLElbMTQxMjAyXT1bQVtcIkdSLkVRLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDS1wiXSxBW1wiR1IuRVEuVVRJTElUWSBWRUhJQ0xFLlRPVyBUUlVDSy5IRUFWWVwiXV0sSVsxNWU0XT1bXSxJWzE1MDEwMF09W0FbXCJHUi5FUS5UUkFJTiBMT0NPTU9USVZFXCJdXSxJWzE1MDIwMF09W0FbXCJHUi5FUS5SQUlMQ0FSXCJdXSxJWzE2ZTRdPVtdLElbMTYwMTAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuQVVUT01PQklMRVwiXV0sSVsxNjAxMDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5BVVRPTU9CSUxFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDEwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdXSxJWzE2MDEwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkFVVE9NT0JJTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuSEVBVllcIl1dLElbMTYwMjAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl1dLElbMTYwMjAxXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl1dLElbMTYwMjAyXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdXSxJWzE2MDIwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJWzE2MDMwMF09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdXSxJWzE2MDMwMV09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDMwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1VTFRJUExFIFBBU1NFTkdFUiBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVsxNjAzMDNdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NVUxUSVBMRSBQQVNTRU5HRVIgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVsxNjA0MDBdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl1dLElbMTYwNDAxXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDQwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlVUSUxJVFkgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5NRURJVU1cIl1dLElbMTYwNDAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdXSxJWzE2MDUwMF09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdXSxJWzE2MDUwMV09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkxJR0hUXCJdXSxJWzE2MDUwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkpFRVAgVFlQRSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXV0sSVsxNjA1MDNdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5KRUVQIFRZUEUgVkVISUNMRVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5IRUFWWVwiXV0sSVsxNjA2MDBdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA2MDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTElHSFRcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA2MDJdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5VVElMSVRZIFZFSElDTEVcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTUVESVVNXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwNjAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwNzAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuT1BFTi1CRUQgVFJVQ0tcIl0sQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVFJBSUxFUlwiXV0sSVsxNjA3MDFdPVtBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5PUEVOLUJFRCBUUlVDS1wiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5MSUdIVFwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJWzE2MDcwMl09W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk1FRElVTVwiXSxBW1wiR1IuRVEuQ0lWSUxJQU4gVkVISUNMRS5UUkFJTEVSXCJdXSxJWzE2MDcwM109W0FbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLk9QRU4tQkVEIFRSVUNLXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLkhFQVZZXCJdLEFbXCJHUi5FUS5DSVZJTElBTiBWRUhJQ0xFLlRSQUlMRVJcIl1dLElbMTYwODAwXT1bQVtcIlNULklDLktOT1dOIElOU1VSR0VOVCBWRUhJQ0xFXCJdXSxJWzE2MDkwMF09W0FbXCJTVC5JQy5LTk9XTiBJTlNVUkdFTlQgVkVISUNMRVwiXSxBW1wiU1QuTTEuRFJVR1wiXV0sSVsxN2U0XT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxNzAxMDBdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzE3MDIwMF09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzE3MDMwMF09W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTcwNDAwXT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzE3MDUwMF09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTcwNjAwXT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTcwNzAwXT1bQVtcIkdSLklDLk1JTElUQVJZIFBPTElDRVwiXV0sSVsxNzA4MDBdPVtBW1wiR1IuSUMuVU5JVEVEIFNUQVRFUyBTRUNSRVQgU0VSVklDRShUUkVBUykgKFVTU1MpXCJdXSxJWzE3MDkwMF09W0FbXCJHUi5JQy5UUkFOU1BPUlRBVElPTiBTRUNVUklUWSBBR0VOQ1kgKFRTQSlcIl1dLElbMTcxZTNdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxNzExMDBdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxOGU0XT1bQVtcIkdSLkVRLlBBQ0sgQU5JTUFMXCJdXSxJWzE5ZTRdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgU1VQUE9SVFwiXV0sSVsxOTAxMDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgVFJBTlNMT0FERVJcIl1dLElbMTkwMjAwXT1bQVtcIkdSLkVRLkFSTU9VUkVEIFBST1RFQ1RFRCBWRUhJQ0xFIFdJVEggTElNSVRFRCBDUk9TUyBDT1VOVFJZIE1PQklMSVRZXCJdLEFbXCJHUi5FUS5NSVNTSUxFIFRSQU5TUE9SVEVSXCJdXSxJWzE5MDMwMF09W0FbXCJHUi5FUS5BUk1PVVJFRCBQUk9URUNURUQgVkVISUNMRSBXSVRIIExJTUlURUQgQ1JPU1MgQ09VTlRSWSBNT0JJTElUWVwiXSxBW1wiR1IuRVEuTUlTU0lMRSBDUkFORS9MT0FESU5HIERFVklDRVwiXV0sSVsxOTA0MDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgUFJPUEVMTEFOVCBUUkFOU1BPUlRFUlwiXV0sSVsxOTA1MDBdPVtBW1wiR1IuRVEuQVJNT1VSRUQgUFJPVEVDVEVEIFZFSElDTEUgV0lUSCBMSU1JVEVEIENST1NTIENPVU5UUlkgTU9CSUxJVFlcIl0sQVtcIkdSLkVRLk1JU1NJTEUgV0FSSEVBRCBUUkFOU1BPUlRFUlwiXV0sSVsyZTVdPVtdLElbMjAwMTAwXT1bQVtcIkdSLklDLkZGLkJST0FEQ0FTVCBUUkFOU01JVFRFUiBBTlRFTk5BXCJdXSxJWzIwMDIwMF09W0FbXCJTVC5JQy5CT01CXCJdXSxJWzIwMDMwMF09W0FbXCJTVC5JQy5CT09CWSBUUkFQXCJdXSxJWzIwMDQwMF09W0FbXCJHUi5FUS5DQlJOIEVRVUlQTUVOVFwiXV0sSVsyMDA1MDBdPVtBW1wiR1IuRVEuQ09NUFVURVIgU1lTVEVNXCJdXSxJWzIwMDYwMF09W0FbXCJHUi5FUS5DT01NQU5EIExBVU5DSCBFUVVJUE1FTlQgKENMRSlcIl1dLElbMjAwNzAwXT1bQVtcIkdSLkVRLkdFTkVSQVRPUiBTRVRcIl1dLElbMjAwODAwXT1bQVtcIkdSLkVRLkdST1VORC1CQVNFRCBNSURDT1VSU0UgREVGRU5TRSAoR01EKSBGSVJFIENPTlRST0wgKEdGQykgQ0VOVEVSXCJdXSxJWzIwMDkwMF09W0FbXCJHUi5FUS5JTi1GTElHSFQgSU5URVJDRVBUT1IgQ09NTVVOSUNBVElPTlMgU1lTVEVNIChJRklDUykgREFUQSBURVJNSU5BTCAoSURUKVwiXV0sSVsyMDFlM109W0FbXCJHUi5FUS5MQVNFUlwiXV0sSVsyMDExMDBdPVtBW1wiR1IuRVEuUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TIEVRVUlQTUVOVFwiXV0sSVsyMDEyMDBdPVtBW1wiR1IuSUMuU1VTVEFJTk1FTlRcIl1dLElbMjAxMzAwXT1bQVtcIkdSLkVRLlRFTlRcIl1dLElbMjAxMzAxXT1bQVtcIkdSLkVRLlRFTlQgQ0lWSUxJQU5cIl1dLElbMjAxMzAyXT1bQVtcIkdSLkVRLlRFTlQgTUlMSVRBUllcIl1dLElbMjAxNDAwXT1bQVtcIkdSLkVRLlVOSVQgREVQTE9ZTUVOVCBTSElQTUVOVFNcIl1dLElbMjAxNTAwXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsyMDE1MDFdPVtBW1wiR1IuSUMuTUVESUNBTCBFVkFDVUFUSU9OIEhFTElDT1BURVJcIl1dLElbMjFlNF09W10sSVsyMTAxMDBdPVtBW1wiR1IuRVEuTEFORCBNSU5FXCJdXSxJWzIxMDIwMF09W0FbXCJHUi5FUS5BTlRJUEVSU09OTkVMIExBTkQgTUlORVwiXV0sSVsyMTAzMDBdPVtBW1wiR1IuRVEuQU5USVRBTksgTUlORVwiXV0sSVsyMTA0MDBdPVtBW1wiR1IuRVEuSU1QUk9WSVNFRCBFWFBMT1NJVkUgREVWSUNFXCJdXSxJWzIxMDUwMF09W0FbXCJHUi5FUS5BTlRJUEVSU09OTkVMIExBTkQgTUlORSBMRVNTIFRIQU4gTEVUSEFMXCJdXSxJWzIyZTRdPVtdLElbMjIwMTAwXT1bQVtcIkdSLkVRLlNFTlNPUlwiXV0sSVsyMjAyMDBdPVtBW1wiR1IuRVEuU0VOU09SIEVNUExBQ0VEXCJdXSxJWzIyMDMwMF09W0FbXCJHUi5FUS5SQURBUlwiXV0sSVsyM2U0XT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMjMwMTAwXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuVVRJTElUWSBWRUhJQ0xFXCJdLEFbXCJHUi5NMS5NRURFVkFDXCJdXSxJWzIzMDIwMF09W0FbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl1dLElbMjRlNF09W0FbXCJHUi5JQy5NQU5VQUwgVFJBQ0tcIl1dLElbMjVlNF09W0FbXCJHUi5JQy5BVklBVElPTiBST1RBUlkgV0lOR1wiXV0sdFtcIjAxXCJdPVtBW1wiR1IuTTEuQklPTE9HSUNBTFwiXV0sdFtcIjAyXCJdPVtBW1wiR1IuTTEuQ0hFTUlDQUxcIl1dLHRbXCIwM1wiXT1bQVtcIkdSLk0xLkVBUkxZIFdBUk5JTkcgUkFEQVJcIl1dLHRbXCIwNFwiXT1bQVtcIkdSLk0xLklOVFJVU0lPTlwiXV0sdFtcIjA1XCJdPVtBW1wiR1IuTTEuTlVDTEVBUlwiXV0sdFtcIjA2XCJdPVtBW1wiR1IuTTEuUkFESU9MT0dJQ0FMXCJdXSx0W1wiMDdcIl09W0FbXCJHUi5NMS5VUEdSQURFRCBFQVJMWSBXQVJOSU5HIFJBREFSXCJdXSx0W1wiMDhcIl09W0FbXCJHUi5NMS5ISUpBQ0tJTkdcIl1dLHRbXCIwOVwiXT1bQVtcIkdSLk0xLkNJVklMSUFOXCJdXSx0WzEwXT1bQVtcIkdSLk0xLlRJTFQtUk9UT1JcIl1dLHRbMTFdPVtdLHRbMTJdPVtBW1wiR1IuTTEuTVVMVEktUFVSUE9TRSBCTEFERVwiXV0sdFsxM109W0FbXCJHUi5NMS5UQU5LLVdJRFRIIE1JTkUgUExPV1wiXV0sdFsxNF09W0FbXCJHUi5NMS5CUklER0lOR1wiXV0sdFsxNV09W0FbXCJHUi5NMS5DWUJFUlNQQUNFXCJdXSx0WzE2XT1bQVtcIkdSLk0xLkFSTU9SRURcIl1dLHRbMTddPVtBW1wiR1IuTTEuQVRUQUNLXCJdXSx0WzE4XT1bQVtcIkdSLk0xLkNBUkdPXCJdXSx0WzE5XT1bQVtcIkdSLk0xLk1BSU5URU5BTkNFXCJdXSx0WzIwXT1bQVtcIkdSLk0xLk1FREVWQUNcIl1dLHRbMjFdPVtBW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdXSx0WzIyXT1bQVtcIkdSLk0xLlVUSUxJVFlcIl1dLHRbMjNdPVtBW1wiR1IuTTEuV0FURVJcIl1dLHRbMjRdPVtBW1wiR1IuTTEuUk9CT1RJQ1wiXV0sRVtcIjAxXCJdPVtBW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuTElHSFRcIl1dLEVbXCIwM1wiXT1bQVtcIkdSLk0yLk1FRElVTVwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuUkFJTFJPQURcIl1dLEVbXCIwNVwiXT1bQVtcIkdSLk0yLlRSQUNLRURcIl1dLEVbXCIwNlwiXT1bQVtcIkdSLk0yLlRSQUNUT1IgVFJBSUxFUlwiXV0sRVtcIjA3XCJdPVtBW1wiR1IuTTIuV0hFRUxFRCBMSU1JVEVEXCJdXSxFW1wiMDhcIl09W0FbXCJHUi5NMi5XSEVFTEVEXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5ST0JPVElDXCJdXTt2YXIgVD17MTFlNDoxNDAsMTEwMTAwOjE0MCwxMTAxMDE6MTQwLDExMDEwMjoxNDAsMTEwMTAzOjE0MCwxMTAyMDA6MTQwLDExMDIwMToxNDAsMTEwMjAyOjE0MCwxMTAyMDM6MTQwLDExMDMwMDoxNDAsMTEwMzAxOjE0MCwxMTAzMDI6MTQwLDExMDMwMzoxNDAsMTEwNDAwOjEzNSwxMTA1MDA6MTQwLDExMDUwMToxNDAsMTEwNTAyOjE0MCwxMTA1MDM6MTQwLDExMDYwMDoxNDAsMTEwNjAxOjE0MCwxMTA2MDI6MTQwLDExMDYwMzoxNDAsMTEwNzAwOjE0MCwxMTA3MDE6MTQwLDExMDcwMjoxNDAsMTEwNzAzOjE0MCwxMTA4MDA6MTQwLDExMDgwMToxNDAsMTEwODAyOjE0MCwxMTA4MDM6MTQwLDExMDkwMDoxNDAsMTEwOTAxOjE0MCwxMTA5MDI6MTQwLDExMDkwMzoxNDAsMTExZTM6MTQwLDExMTAwMToxNDAsMTExMDAyOjE0MCwxMTEwMDM6MTQwLDExMTEwMDoxNDAsMTExMTAxOjE0MCwxMTExMDI6MTQwLDExMTEwMzoxNDAsMTExMTA0OjE0MCwxMTExMDU6MTQwLDExMTEwNjoxNDAsMTExMTA3OjE0MCwxMTExMDg6MTQwLDExMTEwOToxNDAsMTExMjAwOjE0MCwxMTEyMDE6MTQwLDExMTIwMjoxNDAsMTExMjAzOjE0MCwxMTEzMDA6MTQwLDExMTMwMToxNDAsMTExMzAyOjE0MCwxMTEzMDM6MTQwLDExMTQwMDoxNDAsMTExNDAxOjE0MCwxMTE0MDI6MTQwLDExMTQwMzoxNDAsMTExNTAwOjE0MCwxMTE1MDE6MTQwLDExMTUwMjoxNDAsMTExNTAzOjE0MCwxMTE2MDA6MTQwLDExMTYwMToxNDAsMTExNjAyOjE0MCwxMTE2MDM6MTQwLDExMTcwMToxNDAsMTExNzAyOjE0MCwxMTE3MDM6MTQwLDExMTgwMDoxNDAsMTExOTAwOjE0MCwxMTJlMzoxNDAsMTJlNDoxMjksMTIwMTAwOjEyOSwxMjAxMDE6MTMwLDEyMDEwMjoxMzAsMTIwMTAzOjEzMCwxMjAxMDQ6MTMwLDEyMDEwNToxMjAsMTIwMTA2OjEyMCwxMjAxMDc6MTIwLDEyMDEwODoxMzAsMTIwMTA5OjEzMCwxMjAxMTA6MTQwLDEyMDIwMDoxMzAsMTIwMjAxOjEzMCwxMjAyMDI6MTMwLDEyMDIwMzoxMzAsMTIwMzAwOjEzMCwxMjAzMDE6MTMwLDEyMDMwMjoxMzAsMTIwMzAzOjEzMCwxM2U0OjEyOSwxMzAxMDA6MTE1LDEzMDIwMDoxMzAsMTMwMzAwOjEzMCwxMzA0MDA6MTM1LDEzMDUwMDoxMjAsMTMwNjAwOjEyMCwxMzA3MDA6MTIwLDEzMDcwMToxMzAsMTMwODAwOjEzMCwxMzA4MDE6MTMwLDEzMDkwMDoxMjAsMTMwOTAxOjEzMCwxMzA5MDI6MTMwLDEzMWUzOjExNSwxMzEwMDE6MTMwLDEzMTAwMjoxMzAsMTMxMDAzOjE0MCwxMzExMDA6MTMwLDEzMTEwMToxMzAsMTMxMjAwOjEzMCwxMzEzMDA6MTMwLDEzMTQwMDoxNDAsMTMxNTAwOjE0MCwxMzE2MDA6MTQwLDE0MDEwMDoxMzAsMTQwMjAwOjEzMCwxNDAzMDA6MTMwLDE0MDQwMDoxMzAsMTQwNTAwOjEzMCwxNDA2MDA6MTQwLDE0MDYwMToxNDAsMTQwNjAyOjE0MCwxNDA2MDM6MTQwLDE0MDcwMDoxNDAsMTQwODAwOjE0MCwxNDA5MDA6MTMwLDE0MWUzOjEzMCwxNDExMDA6MTQwLDE0MTIwMDoxMzAsMTQxMjAxOjEzMCwxNDEyMDI6MTMwLDE1MDEwMDoxMzAsMTUwMjAwOjE0MCwxNjAxMDA6MTMyLjUsMTYwMTAxOjEzMi41LDE2MDEwMjoxMzIuNSwxNjAxMDM6MTMyLjUsMTYwMjAwOjEzMi41LDE2MDIwMToxMzIuNSwxNjAyMDI6MTMyLjUsMTYwMjAzOjEzMi41LDE2MDMwMDoxMzIuNSwxNjAzMDE6MTMyLjUsMTYwMzAyOjEzMi41LDE2MDMwMzoxMzIuNSwxNjA0MDA6MTMyLjUsMTYwNDAxOjEzMi41LDE2MDQwMjoxMzIuNSwxNjA0MDM6MTMyLjUsMTYwNTAwOjEzMi41LDE2MDUwMToxMzIuNSwxNjA1MDI6MTMyLjUsMTYwNTAzOjEzMi41LDE2MDYwMDoxMzIuNSwxNjA2MDE6MTMyLjUsMTYwNjAyOjEzMi41LDE2MDYwMzoxMzIuNSwxNjA3MDA6MTMyLjUsMTYwNzAxOjEzMi41LDE2MDcwMjoxMzIuNSwxNjA3MDM6MTMyLjUsMTYwODAwOjExNSwxNjA5MDA6MTE1LDE3ZTQ6MTQ5LjAzMTI1LDE3MDEwMDoxMTguNzUsMTcwMjAwOjEzMy4yMTg3NSwxNzAzMDA6MTM1LjIxODc1LDE3MDQwMDoxMTguNzUsMTcwNTAwOjEzOC4xODc1LDE3MDYwMDoxMTguNzUsMTcwNzAwOjExOC43NSwxNzA4MDA6MTE4LDE3MDkwMDoxMTgsMTcxZTM6MTM1LDE3MTEwMDoxMzUsMThlNDoxMjUsMTllNDoxMjksMTkwMTAwOjEyOSwxOTAyMDA6MTI5LDE5MDMwMDoxMjksMTkwNDAwOjEyOSwxOTA1MDA6MTI5LDIwMDEwMDoxNDAsMjAwMjAwOjExOC43NSwyMDAzMDA6MTIwLDIwMDQwMDoxNDAsMjAwNTAwOjEzMiwyMDA2MDA6MTE4Ljc1LDIwMDcwMDoxMTguNzUsMjAwODAwOjExOC43NSwyMDA5MDA6MTE5LjM2MjIyODM5MzU1NDY5LDIwMWUzOjE0NSwyMDExMDA6MTIwLDIwMTIwMDoxMTgsMjAxMzAwOjEyNC4zNjIyMjA3NjQxNjAxNiwyMDEzMDE6MTIwLDIwMTMwMjoxMjAsMjAxNDAwOjExOC43NSwyMDE1MDA6MTQwLDIwMTUwMToxMTUsMjEwMTAwOjEyMiwyMTAyMDA6MTIyLDIxMDMwMDoxMjIsMjEwNDAwOjExOC43NSwyMTA1MDA6MTIyLDIyMDEwMDoxNDAsMjIwMjAwOjEzNiwyMjAzMDA6MTIwLDIzZTQ6MTM1LDIzMDEwMDoxMzIuNSwyMzAyMDA6MTIwLDI0ZTQ6MTE4Ljc1fTtmb3IodmFyIFMgaW4gVClULmhhc093blByb3BlcnR5KFMpJiYoUltTXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOlRbU119KX19fSxKPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMjBcIj09ZSYmKElbMTFlNF09W0FbXCJHUi5JQy5NSUxJVEFSWVwiXV0sSVsxMTAxMDBdPVtBW1wiR1IuSU4uSUMuQUlSQ1JBRlQgUFJPRFVDVElPTiAmIEFTU0VNQkxZXCJdXSxJWzExMDIwMF09W3MuX3NjYWxlKDEuNCxBW1wiR1IuSUMuRkYuQ0xBU1MgVlwiXSldLElbMTEwMzAwXT1bQVtcIkdSLklDLkZGLkNMQVNTIFZcIl0sQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sSVsxMTA0MDBdPVtBW1wiR1IuRVEuVEFOS1wiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuQkxBQ0sgTElTVCBMT0NBVElPTlwiXV0sSVsxMTA2MDBdPVtBW1wiR1IuSUMuQ0JSTlwiXV0sSVsxMTA3MDBdPVtBW1wiR1IuRVEuRE9aRVJcIl1dLElbMTEwNzAxXT1bQVtcIkdSLklOLklDLkJSSURHRVwiXV0sSVsxMTA4MDBdPVtBW1wiR1IuSUMuRVFVSVBNRU5UIE1BTlVGQUNUVVJFXCJdXSxJWzExMDkwMF09W0FbXCJHUi5JLkdPVkVSTk1FTlRcIl1dLElbMTExZTNdPVtBW1wiU1QuSUMuR1JBWSBMSVNUIExPQ0FUSU9OXCJdXSxJWzExMTEwMF09W0FbXCJTVC5JQy5NQVNTIEdSQVZFIExPQ0FUSU9OXCJdXSxJWzExMTIwMF09W0FbXCJHUi5JTi5JQy5NSUxJVEFSWS9DSVZJTElBTi5NQVRFUklFTFwiXSxBW1wiR1IuSUMuRkYuU1VQUExZXCJdXSxJWzExMTMwMF09W0FbXCJHUi5JTi5JQy5NSU5FXCJdXSxJWzExMTQwMF09W0FbXCJHUi5FUS5NSVNTSUxFIExBVU5DSEVSXCJdXSxJWzExMTUwMF09W3MuX3NjYWxlKC44LEFbXCJBQy5JQy5SQURJT0FDVElWRSBNQVRFUklBTFwiXSldLElbMTExNjAwXT1bQVtcIkdSLklOLklDLk1JTElUQVJZL0NJVklMSUFOLlBSSU5URUQgTUVESUFcIl1dLElbMTExNzAwXT1bQVtcIlNULklDLlNBRkUgSE9VU0VcIl1dLElbMTExODAwXT1bQVtcIlNULklDLldISVRFIExJU1QgTE9DQVRJT05cIl1dLElbMTExOTAwXT1bQVtcIkdSLkVRLlRFTlRcIl1dLElbMTExOTAxXT1bQVtcIkdSLkVRLlRFTlRcIl0sQVtcIlNULk0xLkRJU1BMQUNFRCBQRVJTT05TLCBSRUZVR0VFUywgQU5EIEVWQUNVRUVTXCJdXSxJWzExMTkwMl09W0FbXCJHUi5FUS5URU5UXCJdLEFbXCJHUi5NMS5UUkFJTklORyBDQU1QXCJdXSxJWzExMmUzXT1bQVtcIkdSLklOLklDLklORFVTVFJJQUwgU0lURVwiXSxBW1wiR1IuSU4uSUMuV0FSRUhPVVNFL1NUT1JBR0UgRkFDSUxJVFlcIl1dLElbMTEyMTAwXT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMTIxMDFdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzExMjEwMl09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzExMjEwM109W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTEyMTA0XT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzExMjEwNV09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTEyMTA2XT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTEyMTA3XT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMTIxMDhdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzExMjEwOV09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMTEyMTEwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXV0sSVsxMTIxMTFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxMTIxMTJdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxMTIyMDBdPVtBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXV0sSVsxMTIyMDFdPVtBW1wiR1IuSUMuRklSRSBQUk9URUNUSU9OXCJdXSxJWzExMjIwMl09W0FbXCJHUi5JQy5FTUVSR0VOQ1kgTUVESUNBTCBPUEVSQVRJT05cIl1dLElbMTJlNF09W10sSVsxMjAxMDBdPVtBW1wiR1IuSU4uSUMuQUdSSUNVTFRVUkUgQU5EIEZPT0QgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMTAxXT1bQVtcIkdSLklOLklDLkFHUklDVUxUVVJBTCBMQUJPUkFUT1JZXCJdXSxJWzEyMDEwMl09W0FbXCJHUi5JTi5JQy5BTklNQUwgRkVFRExPVFwiXV0sSVsxMjAxMDNdPVtBW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl0sQVtcIkFDLk0xLkNPTU1FUkNJQUxcIl1dLElbMTIwMTA0XT1bQVtcIkdSLklOLklDLkZBUk0vUkFOQ0hcIl1dLElbMTIwMTA1XT1bQVtcIlNULklDLkZPT0QgRElTVFJJQlVUSU9OXCJdXSxJWzEyMDEwNl09W0FbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXSxBW1wiQUMuTTEuUFJPRFVDVElPTlwiXV0sSVsxMjAxMDddPVtBW1wiU1QuSUMuRk9PRCBESVNUUklCVVRJT05cIl0sQVtcIkFDLk0xLlJFVEFJTFwiXV0sSVsxMjAxMDhdPVtBW1wiR1IuSU4uSUMuR1JBSU4gU1RPUkFHRVwiXV0sSVsxMjAyMDBdPVtBW1wiQUMuSUMuQkFOS0lORyBGSU5BTkNFIEFORCBJTlNVUkFOQ0UgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMjAxXT1bQVtcIkdSLklOLklDLkFUTVwiXV0sSVsxMjAyMDJdPVtBW1wiR1IuSU4uSUMuQkFOS1wiXV0sSVsxMjAyMDNdPVtBW1wiR1IuSU4uSUMuQlVMTElPTiBTVE9SQUdFXCJdXSxJWzEyMDIwNF09W0FbXCJHUi5JTi5JQy5JTkZSQVNUUlVDVFVSRS5CQU5LSU5HIEZJTkFOQ0UgQU5EIElOU1VSQU5DRSAgSU5GUkFTVFJVQ1RVUkUuRUNPTk9NSUMgSU5GUkFTVFJVQ1RVUkUgQVNTRVRcIl1dLElbMTIwMjA1XT1bQVtcIkdSLklOLklDLkZFREVSQUwgUkVTRVJWRSBCQU5LXCJdXSxJWzEyMDIwNl09W0FbXCJHUi5JTi5JQy5GSU5BTkNJQUwgRVhDSEFOR0VcIl1dLElbMTIwMjA3XT1bQVtcIkdSLklOLklDLkZJTkFOQ0lBTCBTRVJWSUNFUywgT1RIRVJcIl1dLElbMTIwMzAwXT1bQVtcIkdSLklOLklDLkNPTU1FUkNJQUwgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwMzAxXT1bQVtcIkdSLklOLklDLkNIRU1JQ0FMIFBMQU5UXCJdXSxJWzEyMDMwMl09W0FbXCJHUi5JTi5JQy5GSVJFQVJNUyBNQU5VRkFDVFVSRVJcIl1dLElbMTIwMzAzXT1bQVtcIkdSLklOLklDLkZJUkVBUk1TIFJFVEFJTEVSXCJdXSxJWzEyMDMwNF09W0FbXCJHUi5JTi5JQy5IQVpBUkRPVVMgTUFURVJJQUwgUFJPRFVDVElPTlwiXV0sSVsxMjAzMDVdPVtBW1wiR1IuSU4uSUMuSEFaQVJET1VTIE1BVEVSSUFMIFNUT1JBR0VcIl1dLElbMTIwMzA2XT1bQVtcIkdSLklOLklDLklORFVTVFJJQUwgU0lURVwiXV0sSVsxMjAzMDddPVtBW1wiR1IuSU4uSUMuTEFOREZJTExcIl1dLElbMTIwMzA4XT1bQVtcIkdSLklOLklDLlBIQVJNQUNFVVRJQ0FMIE1BTlVGQUNUVVJFUlwiXV0sSVsxMjAzMDldPVtBW1wiR1IuSU4uSUMuQ09OVEFNSU5BVEVEIEhBWkFSRE9VUyBXQVNURSBTSVRFXCJdXSxJWzEyMDMxMF09W0FbXCJHUi5JTi5JQy5UT1hJQyBSRUxFQVNFIElOVkVOVE9SWVwiXV0sSVsxMjA0MDBdPVtBW1wiR1IuSU4uSUMuRURVQ0FUSU9OQUwgRkFDSUxJVElFUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVsxMjA0MDFdPVtBW1wiR1IuSU4uSUMuQ09MTEVHRS9VTklWRVJTSVRZXCJdXSxJWzEyMDQwMl09W0FbXCJHUi5JTi5JQy5TQ0hPT0xcIl1dLElbMTIwNTAwXT1bQVtcIkdSLklOLklDLkVMRUNUUklDIFBPV0VSXCJdXSxJWzEyMDUwMV09W3MuX3NjYWxlKC42LEFbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSldLElbMTIwNTAyXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjc1LEFbXCJHUi5JTi5JQy5FTEVDVFJJQyBQT1dFUlwiXSkpLEFbXCJBQy5NMS5HRU5FUkFUSU9OIFNUQVRJT05cIl1dLElbMTIwNTAzXT1bQVtcIkdSLklOLklDLk5BVFVSQUwgR0FTIEZBQ0lMSVRZXCJdXSxJWzEyMDUwNF09W3MuX3NjYWxlKDEuNSxBW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdKV0sSVsxMjA1MDVdPVtBW1wiR1IuSUMuRkYuQ0xBU1MgSUlJXCJdXSxJWzEyMDUwNl09W0FbXCJHUi5JTi5JQy5QUk9QQU5FIEZBQ0lMSVRZXCJdXSxJWzEyMDYwMF09W0FbXCJHUi5JTi5JQy5HT1ZFUk5NRU5UIFNJVEUgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwNzAwXT1bXSxJWzEyMDcwMV09W0FbXCJHUi5JQy5GRi5NRURJQ0FMXCJdXSxJWzEyMDcwMl09W0FbXCJHUi5JQy5GRi5NRURJQ0FMXCJdLEFbXCJHUi5JQy5GRi5NRURJQ0FMIFRSRUFUTUVOVCBGQUNJTElUWVwiXV0sSVsxMjA4MDBdPVtBW1wiR1IuSU4uSUMuTUlMSVRBUlkgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwODAxXT1bQVtcIkdSLklOLklDLkJBU0VcIl0sQVtcIkFDLk0xLk1JTElUQVJZIEFSTU9SWVwiXV0sSVsxMjA4MDJdPVtBW1wiR1IuSU4uSUMuQkFTRVwiXV0sSVsxMjA5MDBdPVtBW1wiR1IuSU4uSUMuUE9TVEFMIFNFUlZJQ0UgSU5GUkFTVFJVQ1RVUkVcIl1dLElbMTIwOTAxXT1bQVtcIkdSLklOLklDLlBPU1RBTCBESVNUUklCVVRJT04gQ0VOVEVSXCJdXSxJWzEyMDkwMl09W0FbXCJHUi5JTi5JQy5QT1NUIE9GRklDRVwiXV0sSVsxMjFlM109W0FbXCJHUi5JTi5JQy5QVUJMSUMgVkVOVUVTIElORlJBU1RSVUNUVVJFXCJdXSxJWzEyMTAwMV09W0FbXCJHUi5JTi5JQy5FTkNMT1NFRCBGQUNJVExJVFkgKFBVQkxJQyBWRU5VRSlcIl1dLElbMTIxMDAyXT1bQVtcIkdSLklOLklDLk9QRU4gRkFDSUxJVFkgKE9QRU4gVkVOVUUpXCJdXSxJWzEyMTAwM109W0FbXCJHUi5JTi5JQy5SRUNSRUFUSU9OQUwgQVJFQVwiXV0sSVsxMjEwMDRdPVtBW1wiR1IuSU4uSUMuUkVMSUdJT1VTIElOU1RJVFVUSU9OXCJdXSxJWzEyMTEwMF09W0FbXCJHUi5JTi5JQy5TUEVDSUFMIE5FRURTIElORlJBU1RSVUNUVVJFXCJdXSxJWzEyMTEwMV09W0FbXCJHUi5JTi5JQy5BRFVMVCBEQVkgQ0FSRVwiXV0sSVsxMjExMDJdPVtBW1wiR1IuSU4uSUMuQ0hJTEQgREFZIENBUkVcIl1dLElbMTIxMTAzXT1bQVtcIkdSLklOLklDLkVMREVSIENBUkVcIl1dLElbMTIxMjAwXT1bQVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBJTkZSQVNUUlVDVFVSRVwiXV0sSVsxMjEyMDFdPVtBW1wiR1IuSUMuRkYuQlJPQURDQVNUIFRSQU5TTUlUVEVSIEFOVEVOTkFcIl1dLElbMTIxMjAyXT1bQVtcIkdSLklOLklDLklORlJBU1RSVUNUVVJFLlRFTEVDT01NVU5JQ0FUSU9OUyBJTkZSQVNUUlVDVFVSRS5URUxFQ09NTVVOSUNBVElPTlNcIl1dLElbMTIxMjAzXT1bQVtcIkdSLklOLklDLlRFTEVDT01NVU5JQ0FUSU9OUyBUT1dFUlwiXV0sSVsxMjEzMDBdPVtzLl9zY2FsZSgxLjUsQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdKV0sSVsxMjEzMDFdPVtBW1wiR1IuSUMuVFJBTlNQT1JUQVRJT05cIl0sQVtcIkdSLklDLkFJUlBPUlQgT0YgREVCQVJLQVRJT05cIl1dLElbMTIxMzAyXT1bQVtcIkdSLklOLklDLkFJUiBUUkFGRklDIENPTlRST0wgRkFDSUxJVFlcIl1dLElbMTIxMzAzXT1bQVtcIkdSLkVRLkNJVklMSUFOIFZFSElDTEUuTVVMVElQTEUgUEFTU0VOR0VSIFZFSElDTEVcIl1dLElbMTIxMzA0XT1bQVtcIkdSLklDLkZFUlJZXCJdXSxJWzEyMTMwNV09W0FbXCJHUi5JTi5JQy5IRUxJQ09QVEVSIExBTkRJTkcgU0lURVwiXV0sSVsxMjEzMDZdPVtBW1wiR1IuSUMuTUFJTlRFTkFOQ0VcIl1dLElbMTIxMzA3XT1bQVtcIkdSLklDLlJBSUxIRUFEXCJdXSxJWzEyMTMwOF09W0FbXCJHUi5JTi5JQy5SRVNUIFNUT1BcIl1dLElbMTIxMzA5XT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdLEFbXCJHUi5NMS5OQVZBTFwiXV0sSVsxMjEzMTBdPVtBW1wiR1IuSUMuTkFWQUxcIl0sQVtcIkdSLk0xLllBUkRcIl1dLElbMTIxMzExXT1bQVtcIkdSLklOLklDLlRPTEwgRkFDSUxJVFlcIl1dLElbMTIxMzEyXT1bQVtcIkdSLklOLklDLlRSQUZGSUMgSU5TUEVDVElPTiBGQUNJTElUWVwiXV0sSVsxMjEzMTNdPVtBW1wiR1IuSU4uSUMuVFVOTkVMXCJdXSxJWzEyMTQwMF09W0FbXCJHUi5JQy5XQVRFUlwiXV0sSVsxMjE0MDFdPVtBW1wiR1IuSU4uSUMuQ09OVFJPTCBWQUxWRVwiXV0sSVsxMjE0MDJdPVtBW1wiR1IuSU4uSUMuREFNXCJdXSxJWzEyMTQwM109W0FbXCJHUi5JTi5JQy5ESVNDSEFSR0UgT1VURkFMTFwiXV0sSVsxMjE0MDRdPVtBW1wiR1IuSU4uSUMuR1JPVU5EIFdBVEVSIFdFTExcIl1dLElbMTIxNDA1XT1bQVtcIkdSLklOLklDLlBVTVBJTkcgU1RBVElPTlwiXV0sSVsxMjE0MDZdPVtBW1wiR1IuSU4uSUMuUkVTRVJWT0lSXCJdXSxJWzEyMTQwN109W0FbXCJHUi5JTi5JQy5TVE9SQUdFIFRPV0VSXCJdXSxJWzEyMTQwOF09W0FbXCJHUi5JTi5JQy5TVVJGQUNFIFdBVEVSIElOVEFLRVwiXV0sSVsxMjE0MDldPVtBW1wiR1IuSU4uSUMuV0FTVEVXQVRFUiBUUkVBVE1FTlQgRkFDSUxJVFlcIl1dLElbMTIxNDEwXT1bQVtcIkdSLklDLldBVEVSXCJdXSxJWzEyMTQxMV09W0FbXCJHUi5JQy5XQVRFUiBQVVJJRklDQVRJT05cIl1dLHRbXCIwMVwiXT1bQVtcIkdSLk0xLkJJT0xPR0lDQUxcIl1dLHRbXCIwMlwiXT1bQVtcIkdSLk0xLkNIRU1JQ0FMXCJdXSx0W1wiMDNcIl09W0FbXCJHUi5NMS5OVUNMRUFSXCJdXSx0W1wiMDRcIl09W0FbXCJHUi5JTi5NMS5SQURJT0xPR0lDQUxcIl1dLHRbXCIwNVwiXT1bQVtcIkdSLk0xLkRFQ09OVEFNSU5BVElPTlwiXV0sdFtcIjA2XCJdPVtBW1wiR1IuSU4uTTEuQ09BTFwiXV0sdFtcIjA3XCJdPVtBW1wiR1IuSU4uTTEuR0VPVEhFUk1BTFwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuSU4uTTEuSFlEUk9FTEVDVFJJQ1wiXV0sdFtcIjA5XCJdPVtBW1wiR1IuSU4uTTEuTkFUVVJBTCBHQVNcIl1dLHRbMTBdPVtBW1wiR1IuSU4uTTEuUEVUUk9MRVVNXCJdXSx0WzExXT1bQVtcIkdSLklOLk0xLkNJVklMSUFOXCJdXSx0WzEyXT1bQVtcIkdSLklOLk0xLkNJVklMSUFOIFRFTEVQSE9ORVwiXV0sdFsxM109W0FbXCJHUi5JTi5NMS5DSVZJTElBTiBURUxFVklTSU9OXCJdXSx0WzE0XT1bQVtcIkdSLk0xLkNZQkVSU1BBQ0VcIl1dLHRbMTVdPVtBW1wiR1IuTTEuSk9JTlQgTkVUV09SSyBOT0RFXCJdXSx0WzE2XT1bQVtcIkdSLk0xLkNPTU1BTkQgUE9TVCBOT0RFXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5JTi5NMi5DSEVNSUNBTCAmIEJJT0xPR0lDQUwgV0FSRkFSRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuSU4uTTIuQ0hFTUlDQUwgV0FSRkFSRSBQUk9EVUNUSU9OXCJdXSxFW1wiMDNcIl09W0FbXCJHUi5JTi5NMi5OVUNMRUFSIFdBUkZBUkUgUFJPRFVDVElPTlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuSU4uTTIuUkFESU9MT0dJQ0FMIFdBUkZBUkUgUFJPRFVDVElPTlwiXV0sRVtcIjA1XCJdPVtBW1wiR1IuSU4uTTIuQVRPTUlDIEVORVJHWSBSRUFDVE9SXCJdXSxFW1wiMDZcIl09W0FbXCJHUi5JTi5NMi5OVUNMRUFSIE1BVEVSSUFMIFBST0RVQ1RJT05cIl1dLEVbXCIwN1wiXT1bQVtcIkdSLklOLk0yLk5VQ0xFQVIgTUFURVJJQUwgU1RPUkFHRVwiXV0sRVtcIjA4XCJdPVtBW1wiR1IuSU4uTTIuV0VBUE9OUyBHUkFERSBQUk9EVUNUSU9OXCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5DWUJFUlNQQUNFXCJdXSl9fSxaPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpkLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMzBcIj09ZSYmKElbMTFlNF09W0FbXCJTRS5JQy5NSUxJVEFSWVwiXV0sSVsxMmU0XT1bQVtcIlNFLklDLkNPTUJBVEFOVFwiXV0sSVsxMjAxMDBdPVtBW1wiU0UuSUMuQ0FSUklFUlwiXV0sSVsxMjAyMDBdPVtBW1wiU0UuSUMuU1VSRkFDRSBDT01CQVRBTlQsIExJTkVcIl1dLElbMTIwMjAxXT1bQVtcIlNFLklDLkJBVFRMRVNISVBcIl1dLElbMTIwMjAyXT1bQVtcIlNFLklDLkNSVUlTRVIsIEdVSURFRCBNSVNTSUxFXCJdXSxJWzEyMDIwM109W0FbXCJTRS5JQy5ERVNUUk9ZRVJcIl1dLElbMTIwMjA0XT1bQVtcIlNFLklDLkZSSUdBVEVcIl1dLElbMTIwMjA1XT1bQVtcIlNFLklDLkNPUlZFVFRFXCJdXSxJWzEyMDIwNl09W0FbXCJTRS5JQy5MSVRUT1JBTCBDT01CQVRBTlQgU0hJUFwiXV0sSVsxMjAzMDBdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBXQVJGQVJFIFNISVBcIl1dLElbMTIwMzAxXT1bQVtcIlNFLklDLkFNUEhJQklPVVMgRk9SQ0UgRkxBR1NISVBcIl1dLElbMTIwMzAyXT1bQVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVFwiXV0sSVsxMjAzMDNdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBBU1NBVUxUIFNISVAsIEdFTkVSQUxcIl1dLElbMTIwMzA0XT1bQVtcIlNFLklDLkFNUEhJQklPVVMgQVNTQVVMVCBTSElQLCBNVUxUSS1QVVJQT1NFXCJdXSxJWzEyMDMwNV09W0FbXCJTRS5JQy5BTVBISUJJT1VTIEFTU0FVTFQgU0hJUCwgSEVMSUNPUFRFUlwiXV0sSVsxMjAzMDZdPVtBW1wiU0UuSUMuQU1QSElCSU9VUyBUUkFOU1BPUlQsIERPQ0tcIl1dLElbMTIwMzA3XT1bQVtcIlNFLklDLkxBTkRJTkcgU0hJUFwiXV0sSVsxMjAzMDhdPVtBW1wiU0UuSUMuTEFORElORyBDUkFGVFwiXV0sSVsxMjA0MDBdPVtBW1wiU0UuSUMuTUlORSBXQVJGQVJFIFZFU1NFTFwiXV0sSVsxMjA0MDFdPVtBW1wiU0UuSUMuTUlORUxBWUVSXCJdXSxJWzEyMDQwMl09W0FbXCJTRS5JQy5NSU5FU1dFRVBFUlwiXV0sSVsxMjA0MDNdPVtBW1wiU0UuSUMuTUlORVNXRUVQRVIsIERST05FXCJdXSxJWzEyMDQwNF09W0FbXCJTRS5JQy5NSU5FSFVOVEVSXCJdXSxJWzEyMDQwNV09W0FbXCJTRS5JQy5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sSVsxMjA0MDZdPVtBW1wiU0UuSUMuTUlORSBDT1VOVEVSIE1FQVNVUkUgU1VQUE9SVCBTSElQXCJdXSxJWzEyMDUwMF09W0FbXCJTRS5JQy5QQVRST0xcIl1dLElbMTIwNTAxXT1bQVtcIlNFLklDLlBBVFJPTCBDUkFGVFwiXV0sSVsxMjA1MDJdPVtBW1wiU0UuSUMuUEFUUk9MIEdVTlwiXV0sSVsxMjA2MDBdPVtBW1wiU0UuSUMuU0VBIFNVUkZBQ0UgREVDT1lcIl1dLElbMTIwNzAwXT1bQVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRVwiXV0sSVsxMjA4MDBdPVtBW1wiU0UuSUMuTUlMSVRBUlkgU1BFRURCT0FUXCJdXSxJWzEyMDgwMV09W0FbXCJTRS5JQy5NSUxJVEFSWSBTUEVFREJPQVQsIFJJR0lELUhVTEwgSU5GTEFUQUJMRSBCT0FUXCJdXSxJWzEyMDkwMF09W0FbXCJTRS5JQy5NSUxJVEFSWSBKRVRTS0lcIl1dLElbMTIxZTNdPVtBW1wiU0UuSUMuTkFWWSBUQVNLIE9SR0FOSVpBVElPTiBVTklUXCJdXSxJWzEyMTAwMV09W0FbXCJTRS5JQy5OQVZZIFRBU0sgRUxFTUVOVFwiXV0sSVsxMjEwMDJdPVtBW1wiU0UuSUMuTkFWWSBUQVNLIEZPUkNFXCJdXSxJWzEyMTAwM109W0FbXCJTRS5JQy5OQVZZIFRBU0sgR1JPVVBcIl1dLElbMTIxMDA0XT1bQVtcIlNFLklDLk5BVlkgVEFTSyBVTklUXCJdXSxJWzEyMTAwNV09W0FbXCJTRS5JQy5DT05WT1lcIl1dLElbMTIxMTAwXT1bQVtcIlNFLklDLlJBREFSXCJdXSxJWzEzZTRdPVtBW1wiU0UuSUMuTk9OQ09NQkFUQU5UXCJdXSxJWzEzMDEwMF09W0FbXCJTRS5JQy5BVVhJTElBUlkgU0hJUFwiXV0sSVsxMzAxMDFdPVtBW1wiU0UuSUMuQU1NVU5JVElPTiBTSElQXCJdXSxJWzEzMDEwMl09W0FbXCJTRS5JQy5TVE9SRVMgU0hJUFwiXV0sSVsxMzAxMDNdPVtBW1wiU0UuSUMuQVVYSUxJQVJZIEZMQUcgT1IgQ09NTUFORCBTSElQXCJdXSxJWzEzMDEwNF09W0FbXCJTRS5JQy5JTlRFTExJR0VOQ0UgQ09MTEVDVE9SXCJdXSxJWzEzMDEwNV09W0FbXCJTRS5JQy5PQ0VBTiBSRVNFQVJDSCBTSElQXCJdXSxJWzEzMDEwNl09W0FbXCJTRS5JQy5TVVJWRVkgU0hJUFwiXV0sSVsxMzAxMDddPVtBW1wiU0UuSUMuSE9TUElUQUwgU0hJUDJcIl1dLElbMTMwMTA4XT1bQVtcIlNFLklDLkNBUkdPIFNISVBcIl1dLElbMTMwMTA5XT1bQVtcIlNFLklDLkNPTUJBVCBTVVBQT1JUIFNISVAsIEZBU1RcIl1dLElbMTMwMTEwXT1bQVtcIlNFLklDLk9JTEVSLCBSRVBMRU5JU0hNRU5UXCJdXSxJWzEzMDExMV09W0FbXCJTRS5JQy5SRVBBSVIgU0hJUFwiXV0sSVsxMzAxMTJdPVtBW1wiU0UuSUMuU1VCTUFSSU5FIFRFTkRFUlwiXV0sSVsxMzAxMTNdPVtBW1wiU0UuSUMuVFVHLCBPQ0VBTiBHT0lOR1wiXV0sSVsxMzAyMDBdPVtBW1wiU0UuSUMuU0VSVklDRSBDUkFGVCwgWUFSRCwgR0VORVJBTFwiXV0sSVsxMzAyMDFdPVtBW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sSVsxMzAyMDJdPVtBW1wiU0UuSUMuQkFSR0UsIFNFTEYtUFJPUEVMTEVEXCJdXSxJWzEzMDIwM109W0FbXCJTRS5JQy5UVUcsIEhBUkJPVVJcIl1dLElbMTMwMjA0XT1bQVtcIlNFLklDLkxBVU5DSFwiXV0sSVsxNGU0XT1bQVtcIlNFLklDLkNJVklMSUFOXCJdXSxJWzE0MDEwMF09W0FbXCJTRS5JQy5NRVJDSEFOVCBTSElQLCBHRU5FUkFMXCJdXSxJWzE0MDEwMV09W0FbXCJTRS5JQy5DQVJHTywgR0VORVJBTFwiXV0sSVsxNDAxMDJdPVtBW1wiU0UuSUMuQ09OVEFJTkVSIFNISVBcIl1dLElbMTQwMTAzXT1bQVtcIlNFLklDLkRSRURHRVwiXV0sSVsxNDAxMDRdPVtBW1wiU0UuSUMuUk9MTCBPTi1ST0xMIE9GRlwiXV0sSVsxNDAxMDVdPVtBW1wiU0UuSUMuRkVSUllcIl1dLElbMTQwMTA2XT1bQVtcIlNFLklDLkhFQVZZIExJRlRcIl1dLElbMTQwMTA3XT1bQVtcIlNFLklDLkhPVkVSQ1JBRlQgMjUyNURcIl1dLElbMTQwMTA4XT1bQVtcIlNFLklDLk1FUkNIQU5UIFNISVAsIExBU0ggQ0FSUklFUiAoV0lUSCBCQVJHRVMpXCJdXSxJWzE0MDEwOV09W0FbXCJTRS5JQy5PSUxFUi9UQU5LRVJcIl1dLElbMTQwMTEwXT1bQVtcIlNFLklDLlBBU1NFTkdFUiBTSElQXCJdXSxJWzE0MDExMV09W0FbXCJTRS5JQy5UVUcsIE9DRUFOIEdPSU5HIENJVklMSUFOXCJdXSxJWzE0MDExMl09W0FbXCJTRS5JQy5UT1dcIl1dLElbMTQwMTEzXT1bQVtcIlNFLklDLlRSQU5TUE9SVCBTSElQLCBIQVpBUkRPVVMgTUFURVJJQUxcIl1dLElbMTQwMTE0XT1bQVtcIlNFLklDLkpVTksvREhPV1wiXV0sSVsxNDAxMTVdPVtBW1wiU0UuSUMuQkFSR0UsIE5PVCBTRUxGLVBST1BFTExFRFwiXV0sSVsxNDAxMTZdPVtBW1wiU0UuSUMuSE9TUElUQUwgU0hJUFwiXV0sSVsxNDAyMDBdPVtBW1wiU0UuSUMuRklTSElORyBWRVNTRUxcIl1dLElbMTQwMjAxXT1bQVtcIlNFLklDLkRSSUZURVJcIl1dLElbMTQwMjAyXT1bQVtcIlNFLklDLlRSQVdMRVJcIl1dLElbMTQwMjAzXT1bQVtcIlNFLklDLkZJU0hJTkcgVkVTU0VMIERSRURHRVwiXV0sSVsxNDAzMDBdPVtBW1wiU0UuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxNDA0MDBdPVtBW1wiU0UuSUMuTEVJU1VSRSBDUkFGVCwgU0FJTElORyBCT0FUXCJdXSxJWzE0MDUwMF09W0FbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBNT1RPUklaRURcIl1dLElbMTQwNTAxXT1bQVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgUklHSUQtSFVMTCBJTkZMQVRBQkxFIEJPQVRcIl1dLElbMTQwNTAyXT1bQVtcIlNFLklDLkxFSVNVUkUgQ1JBRlQsIE1PVE9SSVpFRCwgU1BFRURCT0FUXCJdXSxJWzE0MDYwMF09W0FbXCJTRS5JQy5MRUlTVVJFIENSQUZULCBKRVRTS0lcIl1dLElbMTQwNzAwXT1bQVtcIlNFLklDLlVOTUFOTkVEIFNVUkZBQ0UgV0FURVIgVkVISUNMRSAoVVNWKVwiXV0sSVsxNWU0XT1bQVtcIlNFLklDLk9XTiBTSElQXCJdXSxJWzE2ZTRdPVtBW1wiU0UuSUMuRlVTRUQgVFJBQ0tcIl1dLElbMTdlNF09W0FbXCJTRS5JQy5NQU5VQUwgVFJBQ0tcIl1dLHRbXCIwMVwiXT1bQVtcIlNFLk0xLk9XTiBTSElQXCJdXSx0W1wiMDJcIl09W0FbXCJTRS5NMS5BTlRJQUlSIFdBUkZBUkVcIl1dLHRbXCIwM1wiXT1bQVtcIlNFLk0xLkFOVElTVUJNQVJJTkUgV0FSRkFSRVwiXV0sdFtcIjA0XCJdPVtBW1wiU0UuTTEuRVNDT1JUXCJdXSx0W1wiMDVcIl09W0FbXCJTRS5NMS5FTEVDVFJPTklDIFdBUkZBUkVcIl1dLHRbXCIwNlwiXT1bQVtcIlNFLk0xLklOVEVMTElHRU5DRSwgU1VSVkVJTExBTkNFLCBSRUNPTk5BSVNTQU5DRVwiXV0sdFtcIjA3XCJdPVtBW1wiU0UuTTEuTUlORSBDT1VOVEVSIE1FQVNVUkVTXCJdXSx0W1wiMDhcIl09W0FbXCJTRS5NMS5NSVNTSUxFIERFRkVOU0VcIl1dLHRbXCIwOVwiXT1bQVtcIlNFLk0xLk1FRElDQUxcIl1dLHRbMTBdPVtBW1wiU0UuTTEuTUlORSBXQVJGQVJFXCJdXSx0WzExXT1bQVtcIlNFLk0xLlJFTU9URSBNVUxUSS1NSVNTSU9OIFZFSElITEVcIl1dLHRbMTJdPVtBW1wiU0UuTTEuU1BFQ0lBTCBPUEVSQVRJT05TIEZPUkNFXCJdXSx0WzEzXT1bQVtcIlNFLk0xLlNVUkZBQ0UgV0FSRkFSRVwiXV0sdFsxNF09W0FbXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRVwiXV0sdFsxNV09W0FbXCJTRS5NMS5HVUlERUQgTUlTU0lMRVwiXV0sdFsxNl09W0FbXCJTRS5NMS5PVEhFUiBHVUlERUQgTUlTU0lMRVwiXV0sdFsxN109W0FbXCJTRS5NMS5UT1JQRURPXCJdXSx0WzE4XT1bQVtcIlNFLk0xLkRST05FLUVRVUlQUEVEXCJdXSx0WzE5XT1bQVtcIlNFLk0xLkhFTElDT1BURVItRVFVSVBQRURcIl1dLHRbMjBdPVtBW1wiU0UuTTEuQkFMTElTVElDIE1JU1NJTEUgREVGRU5TRSwgU0hPT1RFUlwiXV0sdFsyMV09W0FbXCJTRS5NMS5CQUxMSVNUSUMgTUlTU0lMRSBERUZFTlNFLCBMT05HLSBSQU5HRSBTVVJWRUlMTEFOQ0UgQU5EIFRSQUNLIChMUlMmVClcIl1dLHRbMjJdPVtBW1wiU0UuTTEuU0VBLUJBU0UgWC1CQU5EXCJdXSx0WzIzXT1bQVtcIlNFLk0xLkhJSkFDS0lORy9ISUpBQ0tFRFwiXV0sdFsyNF09W0FbXCJTRS5NMS5ISUpBQ0tFUlwiXV0sdFsyNV09W0FbXCJTRS5NMS5DWUJFUlNQQUNFXCJdXSxFW1wiMDFcIl09W0FbXCJTRS5NMi5OVUNMRUFSIFBPV0VSRURcIl1dLEVbXCIwMlwiXT1bQVtcIlNFLk0yLkhFQVZZXCJdXSxFW1wiMDNcIl09W0FbXCJTRS5NMi5MSUdIVFwiXV0sRVtcIjA0XCJdPVtBW1wiU0UuTTIuTUVESVVNXCJdXSxFW1wiMDVcIl09W0FbXCJTRS5NMi5ET0NLXCJdXSxFW1wiMDZcIl09W0FbXCJTRS5NMi5MT0dJU1RJQ1NcIl1dLEVbXCIwN1wiXT1bQVtcIlNFLk0yLlRBTktcIl1dLEVbXCIwOFwiXT1bQVtcIlNFLk0yLlZFSElDTEVcIl1dLEVbXCIwOVwiXT1bQVtcIlNFLk0yLkZBU1RcIl1dLEVbMTBdPVtBW1wiU0UuTTIuQUlSLUNVU0hJT05FRCAoVVNBIE9OTFkpXCJdXSxFWzExXT1bQVtcIlNFLk0yLkFJUi1DVVNISU9ORURcIl1dLEVbMTJdPVtBW1wiU0UuTTIuSFlEUk9GT0lMXCJdXSxFWzEzXT1bQVtcIlNFLk0yLkFVVE9OT01PVVMgQ09OVFJPTFwiXV0sRVsxNF09W0FbXCJTRS5NMi5SRU1PVEVMWSBQSUxPVEVEXCJdXSxFWzE1XT1bQVtcIlNFLk0yLkVYUEVOREFCTEVcIl1dLEVbMTZdPVtBW1wiU0UuTTIuQ1lCRVJTUEFDRVwiXV0pfX0scT17dHlwZTpcIm51bWJlclwiLGdldE1ldGFkYXRhOnUsZ2V0SWNvbnM6dixpY29uUGFydHM6RCxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjM1XCI9PWUmJihJWzExZTRdPVtBW1wiU1UuSUMuTUlMSVRBUllcIl1dLElbMTEwMTAwXT1bQVtcIlNVLklDLlNVQk1BUklORVwiXV0sSVsxMTAxMDFdPVtBW1wiU1UuSUMuU1VCTUFSSU5FLCBTVVJGQUNFRFwiXV0sSVsxMTAxMDJdPVtBW1wiU1UuSUMuU1VCTUFSSU5FLCBTTk9SS0VMSU5HXCJdXSxJWzExMDEwM109W0FbXCJTVS5JQy5TVUJNQVJJTkUsIEJPVFRPTUVEXCJdXSxJWzExMDIwMF09W0FbXCJTVS5JQy5PVEhFUiBTVUJNRVJTSUJMRVwiXV0sSVsxMTAzMDBdPVtBW1wiU1UuSUMuTk9OLVNVQk1BUklORVwiXV0sSVsxMTA0MDBdPVtBW1wiU1UuSUMuQVVUT05PTU9VUyBVTkRFUldBVEVSIFZFSElDTEUvIFVOTUFOTkVEIFVOREVSV0FURVIgVkVISUNMRSAoQVVWL1VVVilcIl1dLElbMTEwNTAwXT1bQVtcIlNVLklDLkRJVkVSLCBNSUxJVEFSWVwiXV0sSVsxMmU0XT1bQVtcIlNVLklDLkNJVklMSUFOXCJdXSxJWzEyMDEwMF09W0FbXCJTVS5JQy5TVUJNRVJTSUJMRSwgQ0lWSUxJQU5cIl1dLElbMTIwMjAwXT1bQVtcIlNVLklDLkFVVE9OT01PVVMgVU5ERVJXQVRFUiBWRUhJQ0xFLyBVTk1BTk5FRCBVTkRFUldBVEVSIFZFSElDTEUgKEFVVi9VVVYpLCBDSVZJTElBTlwiXV0sSVsxMjAzMDBdPVtBW1wiU1UuSUMuRElWRVIsIENJVklMSUFOXCJdXSxJWzEzZTRdPVtBW1wiU1UuSUMuVU5ERVJXQVRFUiBXRUFQT05cIl1dLElbMTMwMTAwXT1bQVtcIlNVLklDLlRPUlBFRE9cIl1dLElbMTMwMjAwXT1bQVtcIlNVLklDLklNUFJPVklTRUQgRVhQTE9TSVZFIERFVklDRSAoSUVEKVwiXV0sSVsxMzAzMDBdPVtBW1wiU1UuSUMuVU5ERVJXQVRFUiBERUNPWSBEU3ltYm9sXCJdXSxJWzE0ZTRdPVtBW1wiU1UuSUMuRUNITyBUUkFDS0VSIENMQVNTSUZJRVIgKEVUQykvUE9TU0lCTEUgQ09OVEFDVCAoUE9TQ09OKVwiXV0sSVsxNWU0XT1bQVtcIlNVLklDLkZVU0VEIFRSQUNLXCJdXSxJWzE2ZTRdPVtBW1wiU1UuSUMuTUFOVUFMIFRSQUNLXCJdXSxJWzJlNV09W0FbXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTUlMSVRBUllcIl1dLElbMjFlNF09W0FbXCJTVS5JQy5TRUFCRUQgSU5TVEFMTEFUSU9OLCBNQU4tTUFERSwgTk9OLU1JTElUQVJZXCJdXSx0W1wiMDFcIl09W0FbXCJTVS5NMS5BTlRJU1VCTUFSSU5FIFdBUkZBUkVcIl1dLHRbXCIwMlwiXT1bQVtcIlNVLk0xLkFVWElMSUFSWVwiXV0sdFtcIjAzXCJdPVtBW1wiU1UuTTEuQ09NTUFORCBBTkQgQ09OVFJPTFwiXV0sdFtcIjA0XCJdPVtBW1wiU1UuTTEuSU5URUxMSUdFTkNFLCBTVVJWRUlMTEFOQ0UsIFJFQ09OTkFJU1NBTkNFXCJdXSx0W1wiMDVcIl09W0FbXCJTVS5NMS5NSU5FIENPVU5URVJNRUFTVVJFU1wiXV0sdFtcIjA2XCJdPVtBW1wiU1UuTTEuTUlORSBXQVJGQVJFXCJdXSx0W1wiMDdcIl09W0FbXCJTVS5NMS5TVVJGQUNFIFdBUkZBUkVcIl1dLHRbXCIwOFwiXT1bQVtcIlNVLk0xLkFUVEFDS1wiXV0sdFtcIjA5XCJdPVtBW1wiU1UuTTEuQkFMTElTVElDIE1JU1NJTEVcIl1dLHRbMTBdPVtBW1wiU1UuTTEuR1VJREVEIE1JU1NJTEVcIl1dLHRbMTFdPVtBW1wiU1UuTTEuT1RIRVIgR1VJREVEIE1JU1NJTEVTIChQT0lOVCBERUZFTkNFKVwiXV0sdFsxMl09W0FbXCJTVS5NMS5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VcIl1dLHRbMTNdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDFcIl1dLHRbMTRdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gTE9XIDJcIl1dLHRbMTVdPVtBW1wiU1UuTTEuUE9TU0lCTEUgU1VCTUFSSU5FIC0gSElHSCAzXCJdXSx0WzE2XT1bQVtcIlNVLk0xLlBPU1NJQkxFIFNVQk1BUklORSAtIEhJR0ggNFwiXV0sdFsxN109W0FbXCJTVS5NMS5QUk9CQUJMRSBTVUJNQVJJTkVcIl1dLHRbMThdPVtBW1wiU1UuTTEuQ0VSVEFJTiBTVUJNQVJJTkVcIl1dLHRbMTldPVtBW1wiU1UuTTEuQU5USS1UT1JQRURPIFRPUlBFRE9cIl1dLHRbMjBdPVtBW1wiU1UuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSx0WzIxXT1bQVtcIlNVLk0xLkhJSkFDS0VSXCJdXSx0WzIyXT1bQVtcIlNVLk0xLkNZQkVSU1BBQ0VcIl1dLEVbXCIwMVwiXT1bQVtcIlNVLk0yLkFJUiBJTkRFUEVOREVOVCBQUk9QVUxTSU9OXCJdXSxFW1wiMDJcIl09W0FbXCJTVS5NMi5ESUVTRUwgUFJPUFVMU0lPTlwiXV0sRVtcIjAzXCJdPVtBW1wiU1UuTTIuRElFU0VMIC0gVFlQRSAxXCJdXSxFW1wiMDRcIl09W0FbXCJTVS5NMi5ESUVTRUwgLSBUWVBFIDJcIl1dLEVbXCIwNVwiXT1bQVtcIlNVLk0yLkRJRVNFTCAtIFRZUEUgM1wiXV0sRVtcIjA2XCJdPVtBW1wiU1UuTTIuTlVDTEVBUiBQT1dFUkVEXCJdXSxFW1wiMDdcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAxXCJdXSxFW1wiMDhcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAyXCJdXSxFW1wiMDlcIl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSAzXCJdXSxFWzEwXT1bQVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDRcIl1dLEVbMTFdPVtBW1wiU1UuTTIuTlVDTEVBUiAtIFRZUEUgNVwiXV0sRVsxMl09W0FbXCJTVS5NMi5OVUNMRUFSIC0gVFlQRSA2XCJdXSxFWzEzXT1bQVtcIlNVLk0yLk5VQ0xFQVIgLSBUWVBFIDdcIl1dLEVbMTRdPVtBW1wiU1UuTTIuQVVUT05PTU9VUyBDT05UUk9MXCJdXSxFWzE1XT1bQVtcIlNVLk0yLlJFTU9URUxZIFBJTE9URURcIl1dLEVbMTZdPVtBW1wiU1UuTTIuRVhQRU5EQUJMRVwiXV0sRVsxN109W0FbXCJTVS5NMi5DWUJFUlNQQUNFXCJdXSl9fSxqPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpELGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMzZcIj09ZSYmKElbMTFlNF09W0FbXCJTVS5JQy5TRUEgTUlORVwiXV0sSVsxMTAxMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgLSBCT1RUT01cIl1dLElbMTEwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIC0gTU9PUkVEXCJdXSxJWzExMDMwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIEZMT0FUSU5HXCJdXSxJWzExMDQwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIFJJU0lOR1wiXV0sSVsxMTA1MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKVwiXV0sSVsxMTA2MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgLSBLSU5HRklTSEVSXCJdXSxJWzExMDcwMF09W0FbXCJTVS5JQy5TRUEgTUlORSAtIFNNQUxMIE9CSkVDVFwiXV0sSVsxMTA4MDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORVwiXV0sSVsxMTA4MDFdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEJPVFRPTVwiXV0sSVsxMTA4MDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIE1PT1JFRFwiXV0sSVsxMTA4MDNdPVtBW1wiU1UuSUMuU0VBIE1JTkUgRVhFUkNJU0UgTUlORSAtIEZMT0FUSU5HXCJdXSxJWzExMDgwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBFWEVSQ0lTRSBNSU5FIC0gUklTSU5HXCJdXSxJWzExMDkwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRFwiXV0sSVsxMTA5MDFdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTkVVVFJBTElaRUQgLSBCT1RUT01cIl1dLElbMTEwOTAyXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FVVRSQUxJWkVEIC0gTU9PUkVEXCJdXSxJWzExMDkwM109W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIEZMT0FUSU5HXCJdXSxJWzExMDkwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBORVVUUkFMSVpFRCAtIFJJU0lOR1wiXV0sSVsxMTA5MDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgKElOIE9USEVSIFBPU0lUSU9OKSBORVVUUkFMSVpFRFwiXV0sSVsxMmU0XT1bQVtcIlNVLklDLlVORVhQTE9ERUQgRVhQTE9TSVZFIE9SRE5BTkNFXCJdXSxJWzEzZTRdPVtBW1wiU1UuSUMuU0VBIE1JTkUgREVDT1lcIl1dLElbMTMwMTAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIERFQ09ZLCBCT1RUT00vR1JPVU5EXCJdXSxJWzEzMDIwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBERUNPWSwgTU9PUkVEXCJdXSxJWzE0ZTRdPVtdLElbMTQwMTAwXT1bcy5fc2NhbGUoMS4zLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDT1wiXSldLElbMTQwMTAxXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAxXCJdXSldLElbMTQwMTAyXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAyXCJdXSldLElbMTQwMTAzXT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSldLElbMTQwMTA0XT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA0XCJdXSldLElbMTQwMTA1XT1bcy5fc2NhbGUoMS4zLFtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ09cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA1XCJdXSldLElbMTQwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdXSxJWzE0MDIwMV09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDFcIl1dLElbMTQwMjAyXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMlwiXV0sSVsxNDAyMDNdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBCT1RUT01cIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSxJWzE0MDIwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEJPVFRPTVwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDRcIl1dLElbMTQwMjA1XT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gQk9UVE9NXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNVwiXV0sSVsxNDAzMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl1dLElbMTQwMzAxXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMVwiXV0sSVsxNDAzMDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAyXCJdXSxJWzE0MDMwM109W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIE1PT1JFRFwiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDNcIl1dLElbMTQwMzA0XT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gTU9PUkVEXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNFwiXV0sSVsxNDAzMDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBNT09SRURcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCA1XCJdXSxJWzE0MDQwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdXSxJWzE0MDQwMV09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgMVwiXV0sSVsxNDA0MDJdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDJcIl1dLElbMTQwNDAzXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gRkxPQVRJTkdcIl0sQVtcIlNVLklDLlNFQSBNSU5FIE1JTENPIC0gR0VORVJBTCwgQ09ORklERU5DRSBMRVZFTCAzXCJdXSxJWzE0MDQwNF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEZMT0FUSU5HXCJdLEFbXCJTVS5JQy5TRUEgTUlORSBNSUxDTyAtIEdFTkVSQUwsIENPTkZJREVOQ0UgTEVWRUwgNFwiXV0sSVsxNDA0MDVdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBGTE9BVElOR1wiXSxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMQ08gLSBHRU5FUkFMLCBDT05GSURFTkNFIExFVkVMIDVcIl1dLElbMTVlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUNcIl0pXSxJWzE1MDEwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBNSUxFQyAtIEJPVFRPTVwiXV0sSVsxNTAyMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTUlMRUMgLSBNT09SRURcIl1dLElbMTUwMzAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE1JTEVDIC0gRkxPQVRJTkdcIl1dLElbMTZlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTkVHQVRJVkUgUkVBQ1FVSVNJVElPTlwiXSldLElbMTYwMTAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBCT1RUT01cIl1dLElbMTYwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBNT09SRURcIl1dLElbMTYwMzAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5FR0FUSVZFIFJFQUNRVUlTSVRJT04gLSBGTE9BVElOR1wiXV0sSVsxN2U0XT1bcy5fc2NhbGUoMS4zLEFbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1JcIl0pXSxJWzE3MDEwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBHRU5FUkFMIE9CU1RSVUNUT1IgTkVVVFJBTElaRURcIl1dLElbMThlNF09W3MuX3NjYWxlKDEuMyxBW1wiU1UuSUMuU0VBIE1JTkUgTUlORSBBTkNIT1JcIl0pXSxJWzE5ZTRdPVtzLl9zY2FsZSgxLjMsQVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUXCJdKV0sSVsxOTAxMDBdPVtBW1wiU1UuSUMuU0VBIE1JTkUgTk9OLU1JTkUgTUlORS1MSUtFIENPTlRBQ1QgLSBCT1RUT01cIl1dLElbMTkwMjAwXT1bQVtcIlNVLklDLlNFQSBNSU5FIE5PTi1NSU5FIE1JTkUtTElLRSBDT05UQUNUIC0gTU9PUkVEXCJdXSxJWzE5MDMwMF09W0FbXCJTVS5JQy5TRUEgTUlORSBOT04tTUlORSBNSU5FLUxJS0UgQ09OVEFDVCAtIEZMT0FUSU5HXCJdXSxJWzJlNV09W0FbXCJTVS5JQy5FTlZJUk9OTUVOVEFMIFJFUE9SVCBMT0NBVElPTlwiXV0sSVsyMWU0XT1bQVtcIlNVLklDLkRJVkUgUkVQT1JUIExPQ0FUSU9OXCJdXSl9fSwkPXt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiNDBcIj09ZSYmKElbMTFlNF09W10sSVsxMTAxMDBdPVtBW1wiQUMuSUMuQ1JJTUlOQUwuQUNUSVZJVFkuSU5DSURFTlRcIl1dLElbMTEwMTAxXT1bcy5fc2NhbGUoMS41LEFbXCJTVC5JQy5BUlJFU1RcIl0pXSxJWzExMDEwMl09W0FbXCJTVC5JQy5BUlNPTi9GSVJFXCJdXSxJWzExMDEwM109W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5JQy5BVFRFTVBURUQgQ1JJTUlOQUwgQUNUSVZJVFlcIl1dLElbMTEwMTA0XT1bQVtcIlNULklDLkRSSVZFLUJZIFNIT09USU5HXCJdXSxJWzExMDEwNV09W0FbXCJTVC5JQy5EUlVHIFJFTEFURUQgQUNUSVZJVElFU1wiXV0sSVsxMTAxMDZdPVtBW1wiU1QuSUMuRVhUT1JUSU9OXCJdXSxJWzExMDEwN109W0FbXCJTVC5JQy5HUkFGRklUSVwiXV0sSVsxMTAxMDhdPVtBW1wiU1QuSUMuS0lMTElORyBWSUNUSU1cIl1dLElbMTEwMTA5XT1bQVtcIlNULklDLlBPSVNPTklOR1wiXV0sSVsxMTAxMTBdPVtBW1wiU1QuSUMuUklPVFwiXV0sSVsxMTAxMTFdPVtzLl9zY2FsZSgxLjUsQVtcIlNULklDLkJPT0JZIFRSQVBcIl0pXSxJWzExMDExMl09W0FbXCJTVC5JQy5IT1VTRVwiXSxBW1wiU1QuTTEuRVZJQ1RJT05cIl1dLElbMTEwMTEzXT1bQVtcIlNULklDLkJMQUNLIE1BUktFVElOR1wiXV0sSVsxMTAxMTRdPVtBW1wiU1QuSUMuVkFOREFMSVNNL0xPT1QvUkFOU0FDSy9QTFVOREVSL1NBQ0tcIl1dLElbMTEwMTE1XT1bQVtcIkdSLklDLkZGLkpBSUwgQlJFQUtcIl1dLElbMTEwMTE2XT1bQVtcIlNULklDLlJPQkJFUllcIl1dLElbMTEwMTE3XT1bQVtcIlNULklDLlRIRUZUXCJdXSxJWzExMDExOF09W0FbXCJTVC5JQy5CVVJHTEFSWVwiXV0sSVsxMTAxMTldPVtBW1wiU1QuSUMuU01VR0dMSU5HXCJdXSxJWzExMDEyMF09W0FbXCJTVC5JQy5ST0NLIFRIUk9XSU5HXCJdXSxJWzExMDEyMV09W0FbXCJTVC5JQy5DT01QT1NJVEUgTE9TU1wiXSxBW1wiU1QuTTEuREVBRCBCT0RZXCJdXSxJWzExMDEyMl09W0FbXCJTVC5JQy5TQUJPVEFHRVwiXV0sSVsxMTAxMjNdPVtzLl90cmFuc2xhdGUoMCwxMCxzLl9zY2FsZSguOCxBW1wiQUMuSUMuQ1JJTUlOQUwuQUNUSVZJVFkuSU5DSURFTlRcIl0pKSxBW1wiQUMuTTEuVEhSRUFUXCJdXSxJWzExMDIwMF09W0FbXCJTVC5JQy5CT01CXCJdXSxJWzExMDIwMV09W0FbXCJTVC5JQy5CT01CXCJdLEFbXCJBQy5NMS5USFJFQVRcIl1dLElbMTEwMzAwXT1bQVtcIlNULklDLklFRFwiXV0sSVsxMTAzMDFdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEFbXCJTVC5JQy5JRURcIl1dLElbMTEwMzAyXT1bcy5fdHJhbnNsYXRlKDAsMTUscy5fc2NhbGUoLjcsW0FbXCJTVC5JQy5FWFBMT1NJT05cIl0sQVtcIlNULklDLklFRFwiXV0pKSxBW1wiU1QuTTEuUFJFTUFUVVJFXCJdXSxJWzExMDMwM109W0FbXCJTVC5JQy5JRURcIl0sQVtcIkdSLklDLkZGLlNVUFBMWVwiXV0sSVsxMTAzMDRdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuSUVEXCJdXSxJWzExMDQwMF09W0FbXCJBQy5JQy5TSE9PVElOR1wiXV0sSVsxMTA0MDFdPVtBW1wiU1QuSUMuU05JUElOR1wiXV0sSVsxMTA1MDBdPVtBW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXV0sSVsxMTA1MDFdPVtBW1wiU1QuSUMuSUxMRUdBTCBEUlVHIE9QRVJBVElPTlwiXSxBW1wiU1QuTTEuVFJBRkZJQ0tJTkdcIl1dLElbMTEwNTAyXT1bQVtcIlNULklDLklMTEVHQUwgRFJVRyBPUEVSQVRJT05cIl0sQVtcIlNULk0xLkxBQlJBVE9SWVwiXV0sSVsxMTA2MDBdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdXSxJWzExMDYwMV09W0FbXCJTVC5JQy5FWFBMT1NJT05cIl0sQVtcIlNULklDLkdSRU5BREVcIl1dLElbMTEwNjAyXT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxBW1wiU1QuSUMuSU5DRU5ESUFSWVwiXV0sSVsxMTA2MDNdPVtBW1wiU1QuSUMuRVhQTE9TSU9OXCJdLEFbXCJTVC5JQy5NSU5FXCJdXSxJWzExMDYwNF09W0FbXCJTVC5JQy5FWFBMT1NJT05cIl0scy5fc2NhbGUoLjYsQVtcIkdSLkVRLk1PUlRBUlwiXSldLElbMTEwNjA1XT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxzLl9zY2FsZSguNixBW1wiR1IuRVEuU0lOR0xFIFJPQ0tFVCBMQVVOQ0hFUlwiXSldLElbMTEwNjA2XT1bcy5fc2NhbGUoLjcsQVtcIlNULklDLkJPTUJcIl0pLEFbXCJTVC5JQy5FWFBMT1NJT05cIl1dLElbMTJlNF09W0FbXCJBQy5JQy5DUklNSU5BTC5DSVZJTCBESVNUVVJCQU5DRVwiXV0sSVsxMjAxMDBdPVtBW1wiU1QuSUMuREVNT05TVFJBVElPTlwiXV0sSVsxM2U0XT1bXSxJWzEzMDEwMF09W0FbXCJTVC5JQy5QQVRST0xMSU5HXCJdXSxJWzEzMDIwMF09W0FbXCJTVC5JQy5QU1lDSE9MT0dJQ0FMIE9QRVJBVElPTlNcIl1dLElbMTMwMjAxXT1bQVtcIlNULklDLlJBRElPIEFORCBURUxFVklTSU9OIFBTWUNIT0xPR0lDQUwgT1BFUkFUSU9OU1wiXV0sSVsxMzAzMDBdPVtBW1wiU1QuSUMuU0VBUkNISU5HXCJdXSxJWzEzMDQwMF09W10sSVsxMzA0MDFdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuV0lMTElOR1wiXV0sSVsxMzA0MDJdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuQ09FUkNFRC9JTVBSRVNTRURcIl1dLElbMTMwNTAwXT1bQVtcIlNULklDLk1JTkUgTEFZSU5HXCJdXSxJWzEzMDYwMF09W0FbXCJTVC5JQy5TUFlcIl1dLElbMTMwNzAwXT1bQVtcIlNULklDLldBUlJBTlQgU0VSVkVEXCJdXSxJWzEzMDgwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5NMS5FWEZJTFRSQVRJT05cIl1dLElbMTMwOTAwXT1bQVtcIlNULklDLklORElWSURVQUxcIl0sQVtcIlNULk0xLklORklMVFJBVElPTlwiXV0sSVsxMzFlM109W0FbXCJTVC5JQy5HUk9VUFwiXSxBW1wiU1QuTTEuTUVFVElOR1wiXV0sSVsxMzEwMDFdPVtBW1wiU1QuSUMuUE9MTElORyBQTEFDRS9FTEVDVElPTlwiXV0sSVsxMzExMDBdPVtBW1wiU1QuSUMuSE9VU0VcIl0sQVtcIlNULk0xLlJBSURcIl1dLElbMTMxMjAwXT1bQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl1dLElbMTMxMjAxXT1bcy5fc2NhbGUoLjcsQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEFbXCJBQy5NMS5FTUVSR0VOQ1kgQ09MTEVDVElPTiBFVkFDVUFUSU9OIFBPSU5UXCJdXSxJWzEzMTIwMl09W0FbXCJTVC5JQy5GT09EIERJU1RSSUJVVElPTlwiXV0sSVsxMzEyMDNdPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBJTkNJREVOVCBDT01NQU5EIENFTlRFUlwiXV0sSVsxMzEyMDRdPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBPUEVSQVRJT05TIENFTlRFUlwiXV0sSVsxMzEyMDVdPVtBW1wiQUMuSUMuRU1FUkdFTkNZIFBVQkxJQyBJTkZPUk1BVElPTiBDRU5URVJcIl1dLElbMTMxMjA2XT1bcy5fc2NhbGUoLjcsQVtcIkdSLklDLkZGLkVNRVJHRU5DWSBPUEVSQVRJT05cIl0pLEFbXCJBQy5NMS5FTUVSR0VOQ1kgU0hFTFRFUlwiXV0sSVsxMzEyMDddPVtzLl9zY2FsZSguNyxBW1wiR1IuSUMuRkYuRU1FUkdFTkNZIE9QRVJBVElPTlwiXSksQVtcIkFDLk0xLkVNRVJHRU5DWSBTVEFHSU5HIEFSRUFcIl1dLElbMTMxMjA4XT1bQVtcIkdSLklDLkZGLlNVUFBMWVwiXSxBW1wiR1IuSUMuV0FURVJcIl1dLElbMTMxMzAwXT1bQVtcIkdSLklDLkVNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsxMzEzMDFdPVtBW1wiQUMuSUMuRU1UIFNUQVRJT04gTE9DQVRJT05cIl1dLElbMTMxMzAyXT1bQVtcIkFDLklDLkhFQUxUSCBERVBBUlRNRU5UIEZBQ0lMSVRZXCJdXSxJWzEzMTMwM109W0FbXCJBQy5JQy5NRURJQ0FMIEZBQ0lMSVRJRVMgT1VUUEFUSUVOVFwiXV0sSVsxMzEzMDRdPVtBW1wiQUMuSUMuT1BFUkFUSU9OL0VNRVJHRU5DWSBNRURJQ0FMIE9QRVJBVElPTlwiXV0sSVsxMzEzMDVdPVtBW1wiQUMuSUMuUEhBUk1BQ1lcIl1dLElbMTMxMzA2XT1bQVtcIkFDLklDLlRSSUFHRVwiXV0sSVsxMzE0MDBdPVtBW1wiR1IuSUMuRklSRSBQUk9URUNUSU9OXCJdXSxJWzEzMTQwMV09W0FbXCJBQy5JQy5GSVJFIEhZRFJBTlRcIl1dLElbMTMxNDAyXT1bcy5fc2NhbGUoMS41LEFbXCJHUi5JQy5GSVJFIFBST1RFQ1RJT05cIl0pXSxJWzEzMTQwM109W0FbXCJBQy5JQy5PVEhFUiBXQVRFUiBTVVBQTFkgTE9DQVRJT05cIl1dLElbMTMxNTAwXT1bQVtcIkdSLklDLkZGLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMzE1MDFdPVtBW1wiR1IuSUMuQlVSRUFVIE9GIEFMQ09IT0wsIFRPQkFDQ08sIEZJUkVBUk1TIEFORCBFWFBMT1NJVkVTIChBVEYpIChERVBBUlRNRU5UIE9GIEpVU1RJQ0UpXCJdXSxJWzEzMTUwMl09W0FbXCJHUi5JQy5GRi5CT1JERVIgUEFUUk9MXCJdXSxJWzEzMTUwM109W0FbXCJHUi5JQy5GRi5DVVNUT01TIFNFUlZJQ0VcIl1dLElbMTMxNTA0XT1bQVtcIkdSLklDLkRSVUcgRU5GT1JDRU1FTlQgQUdFTkNZIChERUEpXCJdXSxJWzEzMTUwNV09W0FbXCJHUi5JQy5GRi5ERVBBUlRNRU5UIE9GIEpVU1RJQ0UgKERPSilcIl1dLElbMTMxNTA2XT1bQVtcIkdSLklDLkZFREVSQUwgQlVSRUFVIE9GIElOVkVTVElHQVRJT04gKEZCSSlcIl1dLElbMTMxNTA3XT1bQVtcIkdSLklDLkxBVyBFTkZPUkNFTUVOVFwiXV0sSVsxMzE1MDhdPVtBW1wiR1IuSUMuRkYuUFJJU09OXCJdXSxJWzEzMTUwOV09W0FbXCJHUi5JQy5VTklURUQgU1RBVEVTIFNFQ1JFVCBTRVJWSUNFKFRSRUFTKSAoVVNTUylcIl1dLElbMTMxNTEwXT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OIFNFQ1VSSVRZIEFHRU5DWSAoVFNBKVwiXV0sSVsxMzE1MTFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UIFZFU1NFTFwiXV0sSVsxMzE1MTJdPVtBW1wiR1IuSUMuRkYuVVMgTUFSU0hBTFMgU0VSVklDRVwiXV0sSVsxMzE1MTNdPVtBW1wiU1QuSUMuSU5URVJOQUwgU0VDVVJJVFkgRk9SQ0VcIl1dLElbMTRlNF09W0FbXCJBQy5JQy5GSVJFIEVWRU5UXCJdXSxJWzE0MDEwMF09W0FbXCJBQy5JQy5GSVJFIE9SSUdJTlwiXV0sSVsxNDAyMDBdPVtBW1wiQUMuSUMuU01PS0VcIl1dLElbMTQwMzAwXT1bQVtcIkFDLklDLkhPVCBTUE9UXCJdXSxJWzE0MDQwMF09W0FbXCJBQy5JQy5OT04tUkVzSWRFTlRJQUwgRklSRVwiXV0sSVsxNDA1MDBdPVtBW1wiQUMuSUMuUkVzSWRFTlRJQUwgRklSRVwiXV0sSVsxNDA2MDBdPVtBW1wiQUMuSUMuU0NIT09MIEZJUkVcIl1dLElbMTQwNzAwXT1bQVtcIkFDLklDLlNQRUNJQUwgTkVFRFMgRklSRVwiXV0sSVsxNDA4MDBdPVtBW1wiQUMuSUMuV0lMRCBGSVJFXCJdXSxJWzE1ZTRdPVtdLElbMTUwMTAwXT1bQVtcIkFDLklDLkhBWkFSRE9VUyBNQVRFUklBTFMgSU5DSURFTlRcIl1dLElbMTUwMTAxXT1bQVtcIkFDLklDLkNIRU1JQ0FMIEFHRU5UXCJdXSxJWzE1MDEwMl09W0FbXCJBQy5JQy5DT1JST1NJVkUgTUFURVJJQUxcIl1dLElbMTUwMTAzXT1bQVtcIkFDLklDLkhBWkFSRE9VUyBXSEVOIFdFVFwiXV0sSVsxNTAxMDRdPVtBW1wiQUMuSUMuRVhQTE9TSVZFIE1BVEVSSUFMXCJdXSxJWzE1MDEwNV09W0FbXCJBQy5JQy5GTEFNTUFCTEUgR0FTXCJdXSxJWzE1MDEwNl09W0FbXCJBQy5JQy5GTEFNTUFCTEUgTElRVUlEXCJdXSxJWzE1MDEwN109W0FbXCJBQy5JQy5GTEFNTUFCTEUgU09MSURcIl1dLElbMTUwMTA4XT1bQVtcIkFDLklDLk5PTi1GTEFNTUFCTEUgR0FTXCJdXSxJWzE1MDEwOV09W0FbXCJBQy5JQy5PUkdBTklDIFBFUk9YSURFXCJdXSxJWzE1MDExMF09W0FbXCJBQy5JQy5PWElESVpFUlwiXV0sSVsxNTAxMTFdPVtBW1wiQUMuSUMuUkFESU9BQ1RJVkUgTUFURVJJQUxcIl1dLElbMTUwMTEyXT1bQVtcIkFDLklDLlNQT05UQU5FT1VTTFkgQ09NQlVTVElCTEUgTUFURVJJQUxcIl1dLElbMTUwMTEzXT1bQVtcIkFDLklDLlRPWElDIEdBU1wiXV0sSVsxNTAxMTRdPVtBW1wiQUMuSUMuVE9YSUMgSU5GRUNUSU9VUyBNQVRFUklBTFwiXV0sSVsxNTAxMTVdPVtBW1wiQUMuSUMuVU5FWFBMT0RFRCBPUkROQU5DRVwiXV0sSVsxNmU0XT1bQVtcIkdSLklDLlRSQU5TUE9SVEFUSU9OXCJdXSxJWzE2MDEwMF09W0FbXCJTVC5JQy5ISUpBQ0tJTkcgKEFJUlBMQU5FKVwiXV0sSVsxNjAyMDBdPVtBW1wiU1QuSUMuSElKQUNLSU5HIChCT0FUKVwiXV0sSVsxNjAzMDBdPVtBW1wiR1IuRVEuVFJBSU4gTE9DT01PVElWRVwiXV0sSVsxNjA0MDBdPVtBW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl1dLElbMTYwNTAwXT1bQVtcIlNULklDLkVYUExPU0lPTlwiXSxzLl9zY2FsZSguNyxBW1wiU1QuSUMuS05PV04gSU5TVVJHRU5UIFZFSElDTEVcIl0pXSxJWzE3ZTRdPVtBW1wiU1QuSUMuTkFUVVJBTCBFVkVOVFwiXV0sSVsxNzAxMDBdPVtBW1wiU1QuSUMuR0VPTE9HSUNcIl1dLElbMTcwMTAxXT1bQVtcIkFDLklDLkFGVEVSU0hPQ0tcIl1dLElbMTcwMTAyXT1bQVtcIkFDLklDLkFWQUxBTkNIRVwiXV0sSVsxNzAxMDNdPVtBW1wiQUMuSUMuRUFSVEhRVUFLRSBFUElDRU5URVJcIl1dLElbMTcwMTA0XT1bQVtcIkFDLklDLkxBTkRTTElERVwiXV0sSVsxNzAxMDVdPVtBW1wiQUMuSUMuU1VCU0lERU5DRVwiXV0sSVsxNzAxMDZdPVtBW1wiQUMuSUMuVk9MQ0FOSUMgRVJVUFRJT05cIl1dLElbMTcwMTA3XT1bQVtcIkFDLklDLlZPTENBTklDIFRIUkVBVFwiXV0sSVsxNzAxMDhdPVtBW1wiQUMuSUMuQ0FWRSBFTlRSQU5DRVwiXV0sSVsxNzAyMDBdPVtBW1wiU1QuSUMuSFlEUk8tTUVURU9ST0xPR0lDQUxcIl1dLElbMTcwMjAxXT1bQVtcIkFDLklDLkRST1VHSFRcIl1dLElbMTcwMjAyXT1bQVtcIkFDLklDLkZMT09EXCJdXSxJWzE3MDIwM109W0FbXCJBQy5JQy5UU1VOQU1JXCJdXSxJWzE3MDMwMF09W0FbXCJTVC5JQy5JTkZFU1RBVElPTlwiXV0sSVsxNzAzMDFdPVtBW1wiQUMuSUMuQklSRFwiXV0sSVsxNzAzMDJdPVtBW1wiQUMuSUMuSU5TRUNUXCJdXSxJWzE3MDMwM109W0FbXCJBQy5JQy5NSUNST0JJQUxcIl1dLElbMTcwMzA0XT1bQVtcIkFDLklDLlJFUFRJTEVcIl1dLElbMTcwMzA1XT1bQVtcIkFDLklDLlJPREVOVFwiXV0sSVsxOGU0XT1bXSxJWzE4MDEwMF09W0FbXCJTVC5JQy5JTkRJVklEVUFMXCJdLEFbXCJTVC5NMS5MRUFERVJcIl0sQVtcIlNULk0yLlJFTElHSU9VU1wiXV0sSVsxODAyMDBdPVtBW1wiU1QuSUMuSU5ESVZJRFVBTFwiXSxBW1wiU1QuTTEuU1BFQUtFUlwiXV0sdFtcIjAxXCJdPVtBW1wiU1QuTTEuQVNTQVNTSU5BVElPTlwiXV0sdFtcIjAyXCJdPVtBW1wiU1QuTTEuRVhFQ1VUSU9OIChXUk9OR0ZVTCBLSUxMSU5HKVwiXV0sdFtcIjAzXCJdPVtBW1wiU1QuTTEuSElKQUNLSU5HL0hJSkFDS0VEXCJdXSx0W1wiMDRcIl09W0FbXCJTVC5NMS5IT1VTRS1UTy1IT1VTRVwiXV0sdFtcIjA1XCJdPVtBW1wiU1QuTTEuS0lETkFQUElOR1wiXV0sdFtcIjA2XCJdPVtBW1wiU1QuTTEuTVVSREVSXCJdXSx0W1wiMDdcIl09W0FbXCJTVC5NMS5QSVJBQ1lcIl1dLHRbXCIwOFwiXT1bQVtcIlNULk0xLlJBUEVcIl1dLHRbXCIwOVwiXT1bQVtcIlNULk0xLldSSVRURU4gUFNZQ0hPTE9HSUNBTCBPUEVSQVRJT05TXCJdXSx0WzEwXT1bQVtcIlNULk0xLlBJUkFURVwiXV0sdFsxMV09W0FbXCJTVC5NMS5GQUxTRVwiXV0sdFsxMl09W0FbXCJTVC5NMS5GSU5EXCJdXSx0WzEzXT1bQVtcIlNULk0xLkZPVU5EIEFORCBDTEVBUkVEXCJdXSx0WzE0XT1bQVtcIlNULk0xLkhPQVggKERFQ09ZKVwiXV0sdFsxNV09W0FbXCJTVC5NMS5BVFRFTVBURURcIl1dLHRbMTZdPVtBW1wiU1QuTTEuQUNDSURFTlRcIl1dLHRbMTddPVtBW1wiU1QuTTEuSU5DSURFTlRcIl1dLHRbMThdPVtBW1wiU1QuTTEuVEhFRlRcIl1dLHRbMTldPVtBW1wiR1IuTTEuSElKQUNLRVJcIl1dLHRbMjBdPVtBW1wiR1IuTTEuQ1lCRVJTUEFDRVwiXV0sRVtcIjAxXCJdPVtBW1wiR1IuTTIuQ1lCRVJTUEFDRVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuU0VDVVJJVFkgRk9SQ0UgQVNTSVNUQU5DRVwiXV0pfX0sSUk9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmYsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCI1MFwiIT1lJiZcIjUxXCIhPWUmJlwiNTJcIiE9ZSYmXCI1M1wiIT1lJiZcIjU0XCIhPWV8fChJWzExZTRdPVtdLElbMTEwMTAwXT1bQVtcIlNJLklDLkNPTU1VTklDQVRJT05TXCJdXSxJWzExMDIwMF09W0FbXCJTSS5JLkpBTU1FUiAvIEVMRUNUUk9OSUMgQ09VTlRFUi1NRUFTVVJFU1wiXV0sSVsxMTAzMDBdPVtBW1wiU0kuSUMuUkFEQVJcIl1dLHRbXCIwMVwiXT1bQVtcIlNJLk0xLkFOVEktQUlSQ1JBRlQgRklSRSBDT05UUk9MXCJdXSx0W1wiMDJcIl09W0FbXCJTSS5NMS5BSVJCT1JORSBTRUFSQ0ggQU5EIEJPTUJJTkdcIl1dLHRbXCIwM1wiXT1bQVtcIlNJLk0xLkFJUkJPUk5FIElOVEVSQ0VQVFwiXV0sdFtcIjA0XCJdPVtBW1wiU0kuTTEuQUxUSU1FVEVSXCJdXSx0W1wiMDVcIl09W0FbXCJTSS5NMS5BSVJCT1JORSBSRUNPTk5BSVNTQU5DRSBBTkQgTUFQUElOR1wiXV0sdFtcIjA2XCJdPVtBW1wiU0kuTTEuQUlSIFRSQUZGSUMgQ09OVFJPTFwiXV0sdFtcIjA3XCJdPVtBW1wiU0kuTTEuQkVBQ09OIFRSQU5TUE9OREVSIChOT1QgSUZGKVwiXV0sdFtcIjA4XCJdPVtBW1wiU0kuTTEuQkFUVExFRklFTEQgU1VSVkVJTExBTkNFXCJdXSx0W1wiMDlcIl09W0FbXCJTSS5NMS5DT05UUk9MTEVEIEFQUFJPQUNIXCJdXSx0WzEwXT1bQVtcIlNJLk0xLkNPTlRST0xMRUQgSU5URVJDRVBUXCJdXSx0WzExXT1bQVtcIlNJLk0xLkNFTExVTEFSL01PQklMRVwiXV0sdFsxMl09W0FbXCJTSS5NMS5DT0FTVEFMIFNVUlZFSUxMQU5DRVwiXV0sdFsxM109W0FbXCJTSS5NMS5ERUNPWS9NSU1JQ1wiXV0sdFsxNF09W0FbXCJTSS5NMS5EQVRBIFRSQU5TTUlTU0lPTlwiXV0sdFsxNV09W0FbXCJTSS5NMS5FQVJUSCBTVVJWRUlMTEFOQ0VcIl1dLHRbMTZdPVtBW1wiU0kuTTEuRUFSTFkgV0FSTklOR1wiXV0sdFsxN109W0FbXCJTSS5NMS5GSVJFIENPTlRST0xcIl1dLHRbMThdPVtBW1wiU0kuTTEuR1JPVU5EIE1BUFBJTkdcIl1dLHRbMTldPVtBW1wiU0kuTTEuSEVJR0hUIEZJTkRJTkdcIl1dLHRbMjBdPVtBW1wiU0kuTTEuSEFSQk9SIFNVUlZFSUxMQU5DRVwiXV0sdFsyMV09W0FbXCJTSS5NMS5JREVOVElGSUNBVElPTiwgRlJJRU5EIE9SIEZPRSAoSU5URVJST0dBVE9SKVwiXV0sdFsyMl09W0FbXCJTSS5NMS5JTlNUUlVNRU5UIExBTkRJTkcgU1lTVEVNXCJdXSx0WzIzXT1bQVtcIlNJLk0xLklPTk9TUEhFUklDIFNPVU5ESU5HXCJdXSx0WzI0XT1bQVtcIlNJLk0xLklERU5USUZJQ0FUSU9OLCBGUklFTkQgT1IgRk9FIChUUkFOU1BPTkRFUilcIl1dLHRbMjVdPVtBW1wiU0kuTTEuQkFSUkFHRSBKQU1NRVJcIl1dLHRbMjZdPVtBW1wiU0kuTTEuQ0xJQ0sgSkFNTUVSXCJdXSx0WzI3XT1bQVtcIlNJLk0xLkRFQ0VQVElWRSBKQU1NRVJcIl1dLHRbMjhdPVtBW1wiU0kuTTEuRlJFUVVFTkNZIFNXRVBUIEpBTU1FUlwiXV0sdFsyOV09W0FbXCJTSS5NMS5KQU1NRVIgKEdFTkVSQUwpXCJdXSx0WzMwXT1bQVtcIlNJLk0xLk5PSVNFIEpBTU1FUlwiXV0sdFszMV09W0FbXCJTSS5NMS5QVUxTRUQgSkFNTUVSXCJdXSx0WzMyXT1bQVtcIlNJLk0xLlJFUEVBVEVSIEpBTU1FUlwiXV0sdFszM109W0FbXCJTSS5NMS5TUE9UIE5PSVNFIEpBTU1FUlwiXV0sdFszNF09W0FbXCJTSS5NMS5UUkFOU1BPTkRFUiBKQU1NRVJcIl1dLHRbMzVdPVtBW1wiU0kuTTEuTUlTU0lMRSBBQ1FVSVNJVElPTlwiXV0sdFszNl09W0FbXCJTSS5NMS5NSVNTSUxFIENPTlRST0xcIl1dLHRbMzddPVtBW1wiU0kuTTEuTUlTU0lMRSBET1dOTElOS1wiXV0sdFszOF09W0FbXCJTSS5NMS5NRVRFT1JPTE9HSUNBTFwiXV0sdFszOV09W0FbXCJTSS5NMS5NVUxUSS1GVU5DVElPTlwiXV0sdFs0MF09W0FbXCJTSS5NMS5NSVNTSUxFIEdVSURBTkNFXCJdXSx0WzQxXT1bQVtcIlNJLk0xLk1JU1NJTEUgSE9NSU5HXCJdXSx0WzQyXT1bQVtcIlNJLk0xLk1JU1NJTEUgVFJBQ0tJTkdcIl1dLHRbNDNdPVtBW1wiU0kuTTEuTkFWSUdBVElPTkFML0dFTkVSQUxcIl1dLHRbNDRdPVtBW1wiU0kuTTEuTkFWSUdBVElPTkFML0RJU1RBTkNFIE1FQVNVUklORyBFUVVJUE1FTlRcIl1dLHRbNDVdPVtBW1wiU0kuTTEuTkFWSUdBVElPTi9URVJSQUlOIEZPTExPV0lOR1wiXV0sdFs0Nl09W0FbXCJTSS5NMS5OQVZJR0FUSU9OQUwvV0VBVEhFUiBBVk9JREFOQ0VcIl1dLHRbNDddPVtBW1wiU0kuTTEuT01OSS1MSU5FIE9GIFNJR0hUIChMT1MpXCJdXSx0WzQ4XT1bQVtcIlNJLk0xLlBST1hJTUlUWSBVU0VcIl1dLHRbNDldPVtBW1wiU0kuTTEuUE9JTlQtVE8tUE9JTlQgTElORSBPRiBTSUdIVCAoTE9TKVwiXV0sdFs1MF09W0FbXCJTSS5NMS5JTlNUUlVNRU5UQVRJT05cIl1dLHRbNTFdPVtBW1wiU0kuTTEuUkFOR0UgT05MWVwiXV0sdFs1Ml09W0FbXCJTSS5NMS5TT05PQlVPWVwiXV0sdFs1M109W0FbXCJTSS5NMS5TQVRFTExJVEUgRE9XTkxJTktcIl1dLHRbNTRdPVtBW1wiU0kuTTEuU1BBQ0VcIl1dLHRbNTVdPVtBW1wiU0kuTTEuU1VSRkFDRSBTRUFSQ0hcIl1dLHRbNTZdPVtBW1wiU0kuTTEuU0hFTEwgVFJBQ0tJTkdcIl1dLHRbNTddPVtBW1wiU0kuTTEuU0FURUxMSVRFIFVQTElOS1wiXV0sdFs1OF09W0FbXCJTSS5NMS5UQVJHRVQgQUNRVUlTSVRJT05cIl1dLHRbNTldPVtBW1wiU0kuTTEuVEFSR0VUIElMTFVNSU5BVElPTlwiXV0sdFs2MF09W0FbXCJTSS5NMS5UUk9QT1NQSEVSSUMgU0NBVFRFUlwiXV0sdFs2MV09W0FbXCJTSS5NMS5UQVJHRVQgVFJBQ0tJTkdcIl1dLHRbNjJdPVtBW1wiU0kuTTEuVU5LTk9XTlwiXV0sdFs2M109W0FbXCJTSS5NMS5WSURFTyBSRU1PVElOR1wiXV0sdFs2NF09W0FbXCJTSS5NMS5FWFBFUklNRU5UQUxcIl1dLHRbNjVdPVtBW1wiU0kuTTEuQ1lCRVJcIl1dLEVbXCIwMVwiXT1bQVtcIlNJLk0yLkNZQkVSXCJdXSl9fTt2YXIgdEk9e3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOlYsbGFiZWxzOmZ1bmN0aW9uKEkpe3ZhciB0PXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MzAsZm9udHNpemU6MzB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LEU9e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi03MCxmb250c2l6ZTo0MH0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6NDUsZm9udHNpemU6NDB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTowLGZvbnRzaXplOjgwfSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo1MCx5Oi0zMCxmb250c2l6ZTo0MH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6MTAsZm9udHNpemU6NDB9fSxSPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotNzAsZm9udHNpemU6NDB9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjQ1LGZvbnRzaXplOjQwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MCxmb250c2l6ZTo4MH0sdW5pcXVlRGVzaWduYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MjAsZm9udHNpemU6MzB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19O0lbMTMwMTAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTcwLGZvbnRzaXplOjQwfSxhZGRpdGlvbmFsSW5mb3JtYXRpb24xOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTI1LGZvbnRzaXplOjMwfSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseTo0NSxmb250c2l6ZTo0MH0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjAsZm9udHNpemU6ODB9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjUwLHk6LTMwLGZvbnRzaXplOjQwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NTAseToxMCxmb250c2l6ZTo0MH19LElbMTMwMjAwXT10LElbMTMwMzAwXT10LElbMTMwNDAwXT17fSxJWzEzMDUwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTE1LGZvbnRzaXplOjQ1LGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJWzEzMDYwMF09e30sSVsxMzA3MDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjExNSxmb250c2l6ZTo0NSxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsxMzA4MDBdPXQsSVsxMzA5MDBdPXQsSVsxMzEwMDFdPUUsSVsxMzEwMDJdPUUsSVsxMzEwMDNdPUUsSVsxMzExMDBdPXQsSVsxMzEyMDBdPXQsSVsxMzEzMDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjMwLGZvbnRzaXplOjQwLGZvbnR3ZWlnaHQ6XCJib2xkXCJ9fSxJWzEzMTMwMV09e30sSVsxMzE0MDBdPXQsSVsxMzE1MDBdPXQsSVsxMzE2MDBdPXQsSVsxMzE3MDBdPXt9LElbMTMxODAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjEyNSxmb250c2l6ZTo3MH19LElbMTMxOTAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5OjExNSxmb250c2l6ZTo0MH19LElbMTMyZTNdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTIwLHk6ODAsZm9udHNpemU6NDB9fSxJWzEzMjEwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMDAseToxMTAsZm9udHNpemU6MzUsZmlsbDpcInJnYigyNTUsMjU1LDI1NSlcIixmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsxNjAxMDBdPXt9LElbMTYwMjAwXT17fSxJWzE2MDIwMV09e30sSVsxNjAyMDJdPXt9LElbMTYwMjAzXT17fSxJWzE2MDIwNF09e30sSVsxNjAyMDVdPXt9LElbMTYwMzAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjExMCx5OjkwLGZvbnRzaXplOjQwfX0sSVsxNjA0MDBdPUUsSVsxOGU0XT17fSxJWzE4MDEwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTMwLGZvbnRzaXplOjM1fX0sSVsxODAyMDBdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzMCxmb250c2l6ZTozNX19LElbMTgwMzAwXT17fSxJWzE4MDQwMF09e30sSVsxODA1MDBdPXt9LElbMTgwNjAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjcwLGZvbnRzaXplOjM1fX0sSVsxODA3MDBdPXt9LElbMTgwODAwXT17fSxJWzE4MDkwMF09e30sSVsxODFlM109e30sSVsxODExMDBdPXt9LElbMTgxMjAwXT17fSxJWzE4MTMwMF09e30sSVsxODE0MDBdPXt9LElbMTgxNTAwXT17fSxJWzE4MTYwMF09e30sSVsxODE3MDBdPXt9LElbMTgxODAwXT17fSxJWzE4MTkwMF09e30sSVsxODJlM109e30sSVsxODIxMDBdPXt9LElbMTgyMjAwXT17fSxJWzE4MjMwMF09e30sSVsxODI0MDBdPXt9LElbMTgyNTAwXT17fSxJWzIwMDQwMF09e30sSVsyMDA1MDBdPXt9LElbMjAwNjAwXT17fSxJWzIwMDcwMF09e30sSVsyMTAxMDBdPXt9LElbMjEwMjAwXT17fSxJWzIxMDMwMF09e30sSVsyMTA0MDBdPXt9LElbMjEwNTAwXT17fSxJWzIxMDYwMF09e2FsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjcwLGZvbnRzaXplOjM1fX0sSVsyMTA3MDBdPXt9LElbMjEwODAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTozNX19LElbMjEwOTAwXT17fSxJWzIxMWUzXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6ODAsZm9udHNpemU6MzV9fSxJWzIxMTEwMF09e30sSVsyMTEyMDBdPXt9LElbMjExMzAwXT17fSxJWzIxMTQwMF09e30sSVsyMTE1MDBdPXt9LElbMjExNjAwXT17fSxJWzIxMTcwMF09e30sSVsyMTE4MDBdPXt9LElbMjExOTAwXT17fSxJWzIxMmUzXT17fSxJWzIxMjEwMF09e30sSVsyMTIyMDBdPXt9LElbMjEyMzAwXT17fSxJWzIxMjQwMF09e30sSVsyMTI1MDBdPXt9LElbMjEyNjAwXT17fSxJWzIxMjcwMF09e30sSVsyMTI4MDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMTUsZm9udHNpemU6NDV9fSxJWzIxMjkwMF09e30sSVsyMTI5MDFdPXt9LElbMjEyOTAyXT17fSxJWzIxMjkwM109e30sSVsyMTI5MDRdPXt9LElbMjEzZTNdPXt9LElbMjEzMTAwXT17fSxJWzIxMzIwMF09e30sSVsyMTMzMDBdPXt9LElbMjEzNDAwXT17fSxJWzIxMzUwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo3MCxmb250c2l6ZTozNX0sYWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwMV09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNDAseTo3MCxmb250c2l6ZTozNX0sYWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwMl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDNdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTA0XT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE0MCx5OjcwLGZvbnRzaXplOjM1fSxhZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTA1XT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUwNl09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDddPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDhdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MDldPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTEwXT17fSxJWzIxMzUxMV09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MTJdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE1MCx5OjEwNSxmb250c2l6ZTozNX19LElbMjEzNTEzXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNTAseToxMDUsZm9udHNpemU6MzV9fSxJWzIxMzUxNF09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM1MTVdPXt1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTQwLHk6NzAsZm9udHNpemU6MzV9LGFkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTUwLHk6MTA1LGZvbnRzaXplOjM1fX0sSVsyMTM2MDBdPXt9LElbMjEzNzAwXT17fSxJWzIxMzgwMF09e30sSVsyMTM5MDBdPXt9LElbMjE0ZTNdPXt9LElbMjE0MTAwXT17fSxJWzIxNDIwMF09e30sSVsyMTQzMDBdPXt9LElbMjE0NDAwXT17fSxJWzIxNDUwMF09e30sSVsyMTQ2MDBdPXt9LElbMjE0NzAwXT17fSxJWzIxNDgwMF09e30sSVsyMTQ5MDBdPXtkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5Ojc1LGZvbnRzaXplOjMwfSxkdGcxOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseToxMDAsZm9udHNpemU6MzB9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseToxMjUsZm9udHNpemU6MzB9fSxJWzIxNWUzXT17fSxJWzIxNTEwMF09e30sSVsyMTUyMDBdPXt9LElbMjE1MzAwXT17fSxJWzIxNTQwMF09e30sSVsyMTU1MDBdPXt9LElbMjE1NjAwXT17ZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxODAseTo3NSxmb250c2l6ZTozMH0sZHRnMTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTgwLHk6MTAwLGZvbnRzaXplOjMwfSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTgwLHk6MTI1LGZvbnRzaXplOjMwfX0sSVsyMTU3MDBdPXt9LElbMjE1ODAwXT17fSxJWzIxNTkwMF09e30sSVsyMTZlM109e30sSVsyMTYxMDBdPXt9LElbMjE2MjAwXT17fSxJWzIxNjMwMF09e30sSVsyMTY0MDBdPXt9LElbMjE2NTAwXT17fSxJWzIxNjYwMF09e30sSVsyMTY3MDBdPXt9LElbMjE2ODAwXT17fSxJWzIxNjkwMF09e30sSVsyMTdlM109e30sSVsyMTcxMDBdPXt9LElbMjE3MjAwXT17fSxJWzIxNzMwMF09e30sSVsyMTc0MDBdPXt9LElbMjE3NTAwXT17fSxJWzIxNzYwMF09e30sSVsyMTc3MDBdPXt9LElbMjE3ODAwXT17fSxJWzIxNzkwMF09e30sSVsyMThlM109e30sSVsyMTgxMDBdPXt9LElbMjE4MjAwXT17fSxJWzIxODMwMF09e30sSVsyMTg1MDBdPXt9LElbMjE4NjAwXT17fSxJWzIxODcwMF09e30sSVsyMTg4MDBdPXt9LElbMjE4OTAwXT17fSxJWzIxOWUzXT17fSxJWzIxOTEwMF09e30sSVsyMTkyMDBdPXt9LElbMjQwNjAxXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseToxNDUsZm9udHNpemU6NDB9LGFsdGl0dWRlRGVwdGg6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo4MCx5OjE0NSxmb250c2l6ZTo0MH0sdGFyZ2V0TnVtYmVyOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MH19LElbMjQwNjAyXT17dGFyZ2V0TnVtYmVyOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo4MCxmb250c2l6ZTo0MH19LElbMjQwNjAzXT17fSxJWzI0MDkwMF09e3VuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxOTUseToxMTAsZm9udHNpemU6MzUsZm9udHdlaWdodDpcImJvbGRcIn19LElbMjUwMTAwXT1FLElbMjUwMjAwXT1FLElbMjUwMzAwXT1FLElbMjUwNDAwXT1FLElbMjUwNTAwXT1FLElbMjUwNjAwXT17dW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE4MCx5OjgwLGZvbnRzaXplOjM1fX0sSVsyNzA2MDFdPXt9LElbMjcwNjAyXT17fSxJWzI3MDYwM109e30sSVsyNzA3MDFdPXt9LElbMjgwMTAwXT17fSxJWzI4MDIwMF09e30sSVsyODAyMDFdPXt9LElbMjgwMzAwXT17fSxJWzI4MDQwMF09e30sSVsyODA1MDBdPXt9LElbMjgwNjAwXT17fSxJWzI4MDcwMF09e30sSVsyODA4MDBdPXQsSVsyODA5MDBdPXt9LElbMjgxZTNdPXt9LElbMjgxMTAwXT17fSxJWzI4MTIwMF09e30sSVsyODEzMDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjMwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjMwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTo5MCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMzUsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6OTAsZm9udHNpemU6MzV9fSxJWzI4MTMwMV09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MzAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6MzAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjkwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTo5MCxmb250c2l6ZTozNX19LElbMjgxNDAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTozMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTozMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6OTAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjkwLGZvbnRzaXplOjM1fX0sSVsyODE1MDBdPXthZGRpdGlvbmFsSW5mb3JtYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjMwLGZvbnRzaXplOjM1fSxkdGc6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjMwLGZvbnRzaXplOjM1fSxob3N0aWxlOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTo5MCxmb250c2l6ZTozNX0sbG9jYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseToxMzUsZm9udHNpemU6MzV9LHF1YW50aXR5OntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6LTIwLGZvbnRzaXplOjM1fSx1bmlxdWVEZXNpZ25hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6OTAsZm9udHNpemU6MzV9fSxJWzI4MTYwMF09e2FkZGl0aW9uYWxJbmZvcm1hdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6MzAsZm9udHNpemU6MzV9LGR0Zzp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJlbmRcIix4OjQwLHk6MzAsZm9udHNpemU6MzV9LGhvc3RpbGU6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwic3RhcnRcIix4OjE2MCx5OjkwLGZvbnRzaXplOjM1fSxsb2NhdGlvbjp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5OjEzNSxmb250c2l6ZTozNX0scXVhbnRpdHk6e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwibWlkZGxlXCIseDoxMDAseTotMjAsZm9udHNpemU6MzV9LHVuaXF1ZURlc2lnbmF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTo5MCxmb250c2l6ZTozNX19LElbMjgxNzAwXT17YWRkaXRpb25hbEluZm9ybWF0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxNjAseTozMCxmb250c2l6ZTozNX0sZHRnOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcImVuZFwiLHg6NDAseTozMCxmb250c2l6ZTozNX0saG9zdGlsZTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJzdGFydFwiLHg6MTYwLHk6OTAsZm9udHNpemU6MzV9LGxvY2F0aW9uOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcIm1pZGRsZVwiLHg6MTAwLHk6MTM1LGZvbnRzaXplOjM1fSxxdWFudGl0eTp7c3Ryb2tlOiExLHRleHRhbmNob3I6XCJtaWRkbGVcIix4OjEwMCx5Oi0yMCxmb250c2l6ZTozNX0sdW5pcXVlRGVzaWduYXRpb246e3N0cm9rZTohMSx0ZXh0YW5jaG9yOlwiZW5kXCIseDo0MCx5OjkwLGZvbnRzaXplOjM1fX0sSVsyODE4MDBdPXQsSVsyODE4MDFdPXQsSVsyODE4MDJdPXQsSVsyODE4MDNdPXQsSVsyODE4MDRdPXQsSVsyODE4MDVdPXQsSVsyODE4MDZdPXQsSVsyODE4MDddPXQsSVsyODE4MDhdPXQsSVsyODE4MDldPXQsSVsyODE5MDFdPXt9LElbMjgxOTAyXT17fSxJWzI4MTkwM109e30sSVsyODIwMDFdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMjAseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVsyODIwMDJdPXthbHRpdHVkZURlcHRoOntzdHJva2U6ITEsdGV4dGFuY2hvcjpcInN0YXJ0XCIseDoxMTUseTo2MCxmb250c2l6ZTo0MCxmb250d2VpZ2h0OlwiYm9sZFwifX0sSVszMjAxMDBdPXt9LElbMzIwMTAxXT10LElbMzIwMTAyXT10LElbMzIwMTAzXT10LElbMzIwMTA0XT10LElbMzIwMjAwXT10LElbMzIwMzAwXT10LElbMzIwNDAwXT10LElbMzIwNTAwXT10LElbMzIwNjAwXT10LElbMzIwNzAwXT10LElbMzIwODAwXT10LElbMzIwOTAwXT10LElbMzIxZTNdPXQsSVszMjExMDBdPXQsSVszMjEyMDBdPXQsSVszMjEzMDBdPXQsSVszMjE0MDBdPXQsSVszMjE1MDBdPXQsSVszMjE2MDBdPXQsSVszMjE3MDBdPVIsSVszMjE3MDFdPVIsSVszMjE3MDJdPVIsSVszMjE3MDNdPVIsSVszMjE3MDRdPVIsSVszMjE3MDVdPVIsSVszMjE3MDZdPXt9LElbMzIxNzA3XT1FLElbMzIxNzA4XT1FLElbMzIxNzA5XT1FLElbMzIxNzEwXT1FLElbMzIxNzExXT1FLElbMzIxNzEyXT1FLElbMzIxNzEzXT1FLElbMzIxNzE0XT1FLElbMzIxNzE1XT1FLElbMzIxNzE2XT1FLElbMzIxODAwXT1SLElbMzQwMzAwXT17fSxJWzM0MDQwMF09e30sSVszNDA5MDBdPXt9LElbMzQxNDAwXT17fSxJWzM0MTYwMF09e30sSVszNDI4MDBdPXt9LElbMzUwMTAxXT17fSxJWzM1MDEwMl09e30sSVszNTAxMDNdPXt9LElbMzUwMjAxXT17fSxJWzM1MDIwMl09e30sSVszNTAyMDNdPXt9fSxpY29uczpmdW5jdGlvbihJLHQsRSxSLGUsQSxDKXtcIjI1XCI9PWUmJihJWzEzMDEwMF09QVtcIlRQLkFDVElPTiBQT0lOVFwiXSxSWzEzMDEwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMwMjAwXT1BW1wiVFAuQUNUSU9OIEFNTkVTVFkgUE9JTlRcIl0sUlsxMzAyMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMDMwMF09QVtcIlRQLkFDVElPTiBDSEVDSyBQT0lOVFwiXSxSWzEzMDMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMwNDAwXT1BW1wiVFAuQ0VOVFJFIE9GIE1BSU4gRUZGT1JUXCJdLFJbMTMwNDAwXT17eDE6MjUseDI6MTc1LHkxOjY1LHkyOjEzNX0sSVsxMzA1MDBdPUFbXCJUUC5DT05UQUNUIFBPSU5UXCJdLFJbMTMwNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsxMzA2MDBdPUFbXCJUUC5DT09SRElOQVRJT04gUE9JTlRcIl0sUlsxMzA2MDBdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJWzEzMDcwMF09QVtcIlRQLkRFQ0lTSU9OIFBPSU5UXCJdLFJbMTMwNzAwXT17eDE6MzAseDI6MTcwLHkxOjI1LHkyOjE2MH0sSVsxMzA4MDBdPUFbXCJUUC5ESVNUUkVTUyBDQUxMXCJdLFJbMTMwODAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzA5MDBdPUFbXCJUUC5FTlRSWSBDT05UUk9MIFBPSU5UXCJdLFJbMTMwOTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEwMDFdPUFbXCJUUC5GTFktVE8tUE9JTlQgKFNPTk9CVU9ZKVwiXSxSWzEzMTAwMV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMxMDAyXT1BW1wiVFAuRkxZLVRPLVBPSU5UIChXRUFQT04pXCJdLFJbMTMxMDAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEwMDNdPUFbXCJUUC5GTFktVE8tUE9JTlQgKE5PUk1BTClcIl0sUlsxMzEwMDNdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMTEwMF09QVtcIlRQLkFDVElPTiBMSU5LVVAgUE9JTlRcIl0sUlsxMzExMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzEzMTIwMF09QVtcIlRQLkFDVElPTiBQQVNTQUdFIFBPSU5UXCJdLFJbMTMxMjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzEzMDBdPUFbXCJUUC5QT0lOVCBPRiBJTlRFUkVTVFwiXSxSWzEzMTMwMF09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbMTMxMzAxXT1BW1wiUE9JTlQgT0YgSU5URVJFU1Qg4oCTIExBVU5DSCBFVkVOVFwiXSxSWzEzMTMwMV09e3gxOjUwLHgyOjE1MCx5MTotMjV9LElbMTMxNDAwXT1BW1wiVFAuQUNUSU9OIFJBTExZIFBPSU5UXCJdLFJbMTMxNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzE1MDBdPUFbXCJUUC5BQ1RJT04gUkVMRUFTRSBQT0lOVFwiXSxSWzEzMTUwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMTMxNjAwXT1BW1wiVFAuQUNUSU9OIFNUQVJUIFBPSU5UXCJdLFJbMTMxNjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxMzE3MDBdPUFbXCJUUC5TUEVDSUFMIFBPSU5UXCJdLFJbMTMxNzAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsxMzE4MDBdPUFbXCJUUC5XQVlQT0lOVFwiXSxSWzEzMTgwMF09e3gxOjYwLHgyOjE0MCx5MTo2MCx5MjoxNDB9LElbMTMxOTAwXT1BW1wiVFAuQUlSRklFTERcIl0sUlsxMzE5MDBdPXt4MTozNSx4MjoxNjUseTE6NjAseTI6MTI1fSxJWzEzMmUzXT1BW1wiVFAuVEFSR0VUIEhBTkRPVkVSXCJdLFJbMTMyZTNdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzEzMjEwMF09QVtcIlRQLktFWSBURVJSQUlOXCJdLElbMTYwMTAwXT1BW1wiVFAuT0JTRVJWQVRJT04gUE9TVC9PVVRQT1NUXCJdLFJbMTYwMTAwXT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVsxNjAyMDBdPUFbXCJUUC5PQlNFUlZBVElPTiBQT1NUL09VVFBPU1RcIl0sUlsxNjAyMDBdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwMV09QVtcIlRQLk9CU0VSVkFUSU9OIFBPU1QvUkVDT05OQUlTU0FOQ0VcIl0sUlsxNjAyMDFdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwMl09QVtcIlRQLkZPUldBUkQgT0JTRVJWRVIgUE9TSVRJT05cIl0sUlsxNjAyMDJdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwM109QVtcIlRQLkNCUk4gT0JTRVJWQVRJT04gUE9TVFwiXSxSWzE2MDIwM109e3gxOjUwLHgyOjE1MCx5MTo0MCx5MjoxNTB9LElbMTYwMjA0XT1BW1wiVFAuU0VOU09SIE9VVFBPU1RcIl0sUlsxNjAyMDRdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTUwfSxJWzE2MDIwNV09QVtcIlRQLkNPTUJBVCBPVVRQT1NUXCJdLFJbMTYwMjA1XT17eDE6NTAseDI6MTUwLHkxOjQwLHkyOjE1MH0sSVsxNjAzMDBdPUFbXCJUUC5UQVJHRVQgUkVGRVJFTkNFXCJdLElbMTYwNDAwXT1BW1wiVFAuUE9JTlQgT0YgREVQQVJUVVJFXCJdLFJbMTYwNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxOGU0XT1BW1wiVFAuQUlSIENPTlRST0wgUE9JTlRcIl0sUlsxOGU0XT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODAxMDBdPUFbXCJUUC5BSVIgQ09OVFJPTCBQT0lOVCAoQUNQKVwiXSxSWzE4MDEwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMTgwMjAwXT1BW1wiVFAuQ09NTVVOSUNBVElPTlMgQ0hFQ0tQT0lOVFwiXSxSWzE4MDIwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMTgwMzAwXT1BW1wiVFAuRE9XTkVEIEFJUkNSRVcgUElDS1VQIFBPSU5UXCJdLFJbMTgwMzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsxODA0MDBdPUFbXCJUUC5QVUxMLVVQIFBPSU5UXCJdLFJbMTgwNDAwXT17eDE6NTAseDI6MjQwLHkxOjUwLHkyOjE1MH0sSVsxODA1MDBdPUFbXCJUUC5BSVIgQ09OVFJPTCBSRU5ERVpWT1VTXCJdLFJbMTgwNTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODA2MDBdPUFbXCJUUC5UQUNBTlwiXSxSWzE4MDYwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgwNzAwXT1BW1wiVFAuQ0FQIFNUQVRJT05cIl0sUlsxODA3MDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MDgwMF09QVtcIlRQLkFFVyBTVEFUSU9OXCJdLFJbMTgwODAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODA5MDBdPUFbXCJUUC5GSVhFRCBXSU5HXCJdLElbMTgxZTNdPUFbXCJUUC5TVFJJS0UgSVBcIl0sUlsxODFlM109e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgxMTAwXT1BW1wiVFAuUkVQTEVOSVNITUVOVCBTVEFUSU9OXCJdLFJbMTgxMTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODEyMDBdPUFbXCJUUC5UQU5LSU5HXCJdLFJbMTgxMjAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODEzMDBdPUFbXCJUUC5TVUNBUCAtIFJPVEFSWSBXSU5HXCJdLFJbMTgxMzAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODE0MDBdPUFbXCJUUC5TVUNBUCAtIEZJWEVEIFdJTkdcIl0sUlsxODE0MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTUwMF09QVtcIlRQLlNVQ0FQIC0gUk9UQVJZIFdJTkdcIl0sUlsxODE1MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTYwMF09QVtcIlRQLk1JVyAtIEZJWEVEIFdJTkdcIl0sUlsxODE2MDBdPXt4MTo2MCx4MjoxNDAseTE6NDAseTI6MTYwfSxJWzE4MTcwMF09QVtcIlRQLk1JVyAtIFJPVEFSWSBXSU5HXCJdLFJbMTgxNzAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE2MH0sSVsxODE4MDBdPUFbXCJUUC5UT01DQVRcIl0sUlsxODE4MDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MTkwMF09QVtcIlRQLlJFU0NVRVwiXSxSWzE4MTkwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgyZTNdPUFbXCJUUC5VTk1BTk5FRCBBRVJJQUwgU1lTVEVNXCJdLFJbMTgyZTNdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MjEwMF09QVtcIlRQLlZUVUFcIl0sUlsxODIxMDBdPXt4MTo2MCx4MjoxNDAseTE6MzAseTI6MTcwfSxJWzE4MjIwMF09QVtcIlRQLk9SQklUXCJdLFJbMTgyMjAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODIzMDBdPUFbXCJUUC5PUkJJVCAtIEZJR1VSRSBFSUdIVFwiXSxSWzE4MjMwMF09e3gxOjYwLHgyOjE0MCx5MTozMCx5MjoxNzB9LElbMTgyNDAwXT1BW1wiVFAuT1JCSVQgLSBSQUNFIFRSQUNLXCJdLFJbMTgyNDAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsxODI1MDBdPUFbXCJUUC5PUkJJVCAtIFJBTkRPTSwgQ0xPU0VEXCJdLFJbMTgyNTAwXT17eDE6NjAseDI6MTQwLHkxOjMwLHkyOjE3MH0sSVsyMDA0MDBdPUFbXCJUUC5TSElQIEFSRUEgT0YgSU5URVJFU1QgKEFFR0lTIE9OTFkpXCJdLElbMjAwNTAwXT1BW1wiVFAuQUNUSVZFIE1BTk9FVVZSRSBBUkVBIChBRUdJUyBPTkxZKVwiXSxSWzIwMDUwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjAwNjAwXT1BLlRPRE8sSVsyMDA3MDBdPUEuVE9ETyxJWzIxMDEwMF09QVtcIlRQLlBMQU4gU0hJUFwiXSxSWzIxMDEwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEwMjAwXT1BW1wiVFAuQUlNIFBPSU5UXCJdLFJbMjEwMjAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTAzMDBdPUFbXCJUUC5ERUZFTkRFRCBBU1NFVFwiXSxJWzIxMDQwMF09QVtcIlRQLkRST1AgUE9JTlRcIl0sUlsyMTA0MDBdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTIwfSxJWzIxMDUwMF09QVtcIlRQLkVOVFJZIFBPSU5UXCJdLFJbMjEwNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwfSxJWzIxMDYwMF09QVtcIlRQLkFJUiBERVRPTkFUSU9OXCJdLElbMjEwNzAwXT1BW1wiVFAuR1JPVU5EIFpFUk9cIl0sUlsyMTA3MDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjEwODAwXT1BW1wiVFAuSU1QQUNUIFBPSU5UXCJdLFJbMjEwODAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTA5MDBdPUFbXCJUUC5QUkVESUNURUQgSU1QQUNUIFBPSU5UXCJdLFJbMjEwOTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTFlM109QVtcIlRQLkxBVU5DSEVEIFRPUlBFRE8gKEFFR0lTIE9OTFkpXCJdLFJbMjExZTNdPXt4MTo1MCx4MjoxNTAseTE6OTAseTI6MTEwfSxJWzIxMTEwMF09QVtcIlRQLk1TTCBERVRFQ1QgUE9JTlRcIl0sUlsyMTExMDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjExMjAwXT1BW1wiVFAuQUNPVVNUSUMgQ09VTlRFUiBNRUFTVVJFIChERUNPWSlcIl0sUlsyMTEyMDBdPXt4MTo1MCx4MjoxNTAseTE6MzB9LElbMjExMzAwXT1BW1wiVFAuRUxFQ1RST05JQyBDT1VOVEVSIE1FQVNVUkVTIChFQ00pIERFQ09ZXCJdLFJbMjExMzAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTE0MDBdPUFbXCJUUC5CUklFRiBDT05UQUNUXCJdLFJbMjExNDAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMTUwMF09QVtcIlRQLkRBVFVNXCJdLFJbMjExNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTE2MDBdPUFbXCJUUC5CVCBCT1VZIERST1BcIl0sUlsyMTE2MDBdPXt4MTo1MCx4MjoxNTAseTE6NDAseTI6MTYwfSxJWzIxMTcwMF09QVtcIlRQLlJFUE9SVEVEIEJPVFRPTUVEIFNVQlwiXSxJWzIxMTgwMF09QVtcIlRQLk1PVklORyBIQVZFTlwiXSxSWzIxMTgwMF09e3gxOjQwLHgyOjE2MCx5MTo1MCx5MjoxNTB9LElbMjExOTAwXT1BW1wiVFAuU0NSRUVOIENFTlRSRVwiXSxJWzIxMmUzXT1BW1wiVFAuTE9TVCBDT05UQUNUXCJdLFJbMjEyZTNdPXt4MTo1MCx4MjoxNTAseTE6MCx5MjoxMDB9LElbMjEyMTAwXT1BW1wiVFAuU0lOS0VSXCJdLFJbMjEyMTAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMjIwMF09QVtcIlRQLlRSSUFMIFRSQUNLXCJdLFJbMjEyMjAwXT17eDE6NTAseDI6MTUwLHkxOjAseTI6MTAwfSxJWzIxMjMwMF09QVtcIlRQLkZJWCBBQ09VU1RJQ1wiXSxJWzIxMjQwMF09QVtcIlRQLkZJWCBFTEVDVFJPLU1BR05FVElDXCJdLElbMjEyNTAwXT1BW1wiVFAuRUxFQ1RSTyBNQUdORVRJQyAtIE1BR05FVElDIEFOT01BTFkgREVURUNUSU9OIChNQUQpXCJdLFJbMjEyNTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE4MH0sSVsyMTI2MDBdPUFbXCJUUC5GSVggRUxFQ1RSTy1PUFRJQ0FMXCJdLElbMjEyNzAwXT1BW1wiVFAuVEFSR0VUIFJFRkVSRU5DRVwiXSxJWzIxMjgwMF09QVtcIlRQLkhBUkJPUlwiXSxSWzIxMjgwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEyOTAwXT1BW1wiVFAuSEFSQk9SXCJdLFJbMjEyOTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTI5MDFdPUFbXCJUUC5IQVJCT1IgUE9JTlQgQVwiXSxSWzIxMjkwMV09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEyOTAyXT1BW1wiVFAuSEFSQk9SIFBPSU5UIFFcIl0sUlsyMTI5MDJdPXt4MTo1MCx4MjoxNTAseTE6NTAseTI6MTUwfSxJWzIxMjkwM109QVtcIlRQLkhBUkJPUiBQT0lOVCBYXCJdLFJbMjEyOTAzXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTI5MDRdPUFbXCJUUC5IQVJCT1IgUE9JTlQgWVwiXSxSWzIxMjkwNF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzZTNdPUFbXCJUUC5ESVAgUE9TSVRJT05cIl0sUlsyMTNlM109e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzMTAwXT1BW1wiVFAuU0VBUkNIXCJdLFJbMjEzMTAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTMyMDBdPUFbXCJUUC5TRUFSQ0ggQVJFQVwiXSxSWzIxMzIwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzMzAwXT1BW1wiVFAuU0VBUkNIIENFTlRFUlwiXSxSWzIxMzMwMF09e3gxOjUwLHgyOjE1MCx5MTo1MCx5MjoxNTB9LElbMjEzNDAwXT1BW1wiVFAuTkFWSUdBVElPTkFMIFJFRkVSRU5DRVwiXSxJWzIxMzUwMF09QVtcIlRQLlNPTk9CVU9ZXCJdLFJbMjEzNTAwXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTAxXT1BW1wiVFAuU09OT0JVT1kgQU5NXCJdLFJbMjEzNTAxXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTAyXT1BW1wiVFAuU09OT0JVT1kgQVRBQ1wiXSxSWzIxMzUwMl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwM109QVtcIlRQLlNPTk9CVU9ZIEJBUlJBXCJdLFJbMjEzNTAzXT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA0XT1BW1wiVFAuU09OT0JVT1kgQkFUSFlUSEVSTU9HUkFQSCBUUkFOU01JVFRJTkcgU09OT0JVT1kgKEJUKVwiXSxSWzIxMzUwNF09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwNV09QVtcIlRQLlNPTk9CVU9ZIENPTU1BTkQgQUNUSVZFIE1VTFRJQkVBTSBTT05PQlVPWSAoQ0FNQlMpXCJdLFJbMjEzNTA1XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA2XT1BW1wiVFAuU09OT0JVT1kgQ0FTU1wiXSxSWzIxMzUwNl09e3gxOjYwLHgyOjE0MCx5MTotMTAseTI6MTYwfSxJWzIxMzUwN109QVtcIlRQLlNPTk9CVU9ZIERJRkFSXCJdLFJbMjEzNTA3XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA4XT1BW1wiVFAuU09OT0JVT1kgRElDQVNTXCJdLFJbMjEzNTA4XT17eDE6NjAseDI6MTQwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTA5XT1BW1wiVFAuU09OT0JVT1kgRVhQRU5EQUJMRSBSRUxJQUJMRSBBQ09VU1RJQyBQQVRIIFNPTk9CVU9ZIChFUkFQUylcIl0sUlsyMTM1MDldPXt4MTo2MCx4MjoxNDAseTE6LTEwLHkyOjE2MH0sSVsyMTM1MTBdPUFbXCJUUC5TT05PQlVPWSBFWFBJUkVEXCJdLFJbMjEzNTEwXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTExXT1BW1wiVFAuU09OT0JVT1kgS0lOR1BJTlwiXSxSWzIxMzUxMV09e3gxOjQwLHgyOjE2MCx5MTotMTAseTI6MTYwfSxJWzIxMzUxMl09QVtcIlRQLlNPTk9CVU9ZIExPRkFSXCJdLFJbMjEzNTEyXT17eDE6NDAseDI6MTYwLHkxOi0xMCx5MjoxNjB9LElbMjEzNTEzXT1BW1wiVFAuU09OT0JVT1kgUEFUVEVSTiBDRU5URVJcIl0sUlsyMTM1MTNdPXt4MTo0MCx4MjoxNjAseTE6LTEwLHkyOjE2MH0sSVsyMTM1MTRdPUFbXCJUUC5TT05PQlVPWSBST1wiXSxSWzIxMzUxNF09e3gxOjQwLHgyOjE2MCx5MTotMTAseTI6MTYwfSxJWzIxMzUxNV09QVtcIlRQLlNPTk9CVU9ZIFZMQURcIl0sUlsyMTM1MTVdPXt4MTo0MCx4MjoxNjAseTE6LTEwLHkyOjE2MH0sSVsyMTM2MDBdPUFbXCJUUC5SRUZFUkVOQ0UgUE9JTlRcIl0sUlsyMTM2MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzcwMF09QVtcIlRQLlNQRUNJQUwgUE9JTlRcIl0sUlsyMTM3MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzgwMF09QVtcIlRQLk5BVklHQVRJT05BTCBSRUZFUkVOQ0VcIl0sUlsyMTM4MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxMzkwMF09QVtcIlRQLkRMUlBcIl0sUlsyMTM5MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxNGUzXT1BW1wiRk9SV0FSRCBPQlNFUlZFUiAvIFNQT1RURVIgUE9TSVRJT05cIl0sUlsyMTRlM109e3gxOjQwLHgyOjE2MCx5MTo2MCx5MjoxNDB9LElbMjE0MTAwXT1BW1wiVFAuVklUQUwgQVJFQSBDRU5UUkVcIl0sUlsyMTQxMDBdPXt4MTo0MCx4MjoxNjAseTE6NjAseTI6MTQwfSxJWzIxNDIwMF09QVtcIlRQLkNPUlJJRE9SIFRBQlwiXSxSWzIxNDIwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0MzAwXT1BW1wiVFAuRU5FTVkgUE9JTlRcIl0sUlsyMTQzMDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTYwfSxJWzIxNDQwMF09QVtcIlRQLk1BUlNIQUxMIFBPSU5UXCJdLFJbMjE0NDAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ1MDBdPUFbXCJUUC5QT0lOVCBPRiBJTlRFTkRFRCBNT1ZFTUVOVFwiXSxSWzIxNDUwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0NjAwXT1BW1wiVFAuUFJFLUxBTkRGQUxMIFdBWVBPSU5UXCJdLFJbMjE0NjAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ3MDBdPUFbXCJUUC5FU1RJTUFURUQgUE9TSVRJT04gKEVQKVwiXSxSWzIxNDcwMF09e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE0ODAwXT1BW1wiVFAuUkVGRVJFTkNFIFBPSU5UIFdBWVBPSU5UXCJdLFJbMjE0ODAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjE2MH0sSVsyMTQ5MDBdPUFbXCJUUC5TVUIgU1VSRkFDRSBDT05UUk9MIFNUQVRJT05cIl0sUlsyMTQ5MDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNWUzXT1BW1wiVFAuU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNWUzXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTUxMDBdPUFbXCJUUC5BU1cgU1VCTUFSSU5FIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNTEwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1MjAwXT1BW1wiVFAuKFVVVikgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1MjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTUzMDBdPUFbXCJUUC5VVVYgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1MzAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU0MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIFNVQlNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNTQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1NTAwXT1BW1wiVFAuVVVWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNTUwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE1NjAwXT1BW1wiVFAuU0VBIFNVUkZBQ0UgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1NjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU3MDBdPUFbXCJUUC5BU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE1NzAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU4MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgU1VSRkFDRSBTVEFUSU9OXCJdLFJbMjE1ODAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTU5MDBdPUFbXCJUUC5OT04tQ09NQkFUQU5UIFNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNTkwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2ZTNdPUFbXCJUUC5QSUNLRVQgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2ZTNdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNjEwMF09QVtcIlRQLlJFTkRFWlZPVVMgQ09OVFJPTCBQT0lOVFwiXSxSWzIxNjEwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2MjAwXT1BW1wiVFAuUkVQTEVOSVNITUVOVCBBVCBTRUEgU1VSRkFDRSBTVEFUSU9OXCJdLFJbMjE2MjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTYzMDBdPUFbXCJUUC5SRVNDVUUgQ09OVFJPTCBQT0lOVFwiXSxSWzIxNjMwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2NDAwXT1BW1wiVFAuU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2NTAwXT1BW1wiVFAuKFVTVikgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2NTAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTY2MDBdPUFbXCJUUC5VU1YgLSBBU1cgQ09OVFJPTCBTVEFUSU9OXCJdLFJbMjE2NjAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTY3MDBdPUFbXCJUUC5NSU5FIFdBUkZBUkUgVU5NQU5ORUQgVU5ERVJXQVRFUiBWRUhJQ0xFIFNVUkZBQ0UgU1RBVElPTlwiXSxSWzIxNjcwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2ODAwXT1BW1wiVFAuKFJNVikgVVNWIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjgwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE2OTAwXT1BW1wiVFAuVVNWIC0gU1VXIENPTlRST0wgU1RBVElPTlwiXSxSWzIxNjkwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNDB9LElbMjE3ZTNdPUFbXCJUUC5TSE9SRSBDT05UUk9MIFNUQVRJT05cIl0sUlsyMTdlM109e3gxOjQwLHgyOjE2MCx5MTo0MCx5MjoxNjB9LElbMjE3MTAwXT1BW1wiVFAuUk9VVEVcIl0sUlsyMTcxMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTQwfSxJWzIxNzIwMF09QVtcIlRQLlJPVVRFIERJVkVSU0lPTlNcIl0sUlsyMTcyMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzMwMF09QVtcIlRQLlJPVVRFIFBPSU5UIFJcIl0sUlsyMTczMDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzQwMF09QVtcIlRQLlBJQ0tFVCBST1VURVwiXSxSWzIxNzQwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NTAwXT1BW1wiVFAuUE9JTlQgUiBST1VURVwiXSxSWzIxNzUwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NjAwXT1BW1wiVFAuUkVOREVaVk9VUyBST1VURVwiXSxSWzIxNzYwMF09e3gxOjMwLHgyOjE3MCx5MTo2MCx5MjoxNzB9LElbMjE3NzAwXT1BW1wiVFAuUk9VVEUgV0FZUE9JTlRcIl0sUlsyMTc3MDBdPXt4MTozMCx4MjoxNzAseTE6NjAseTI6MTcwfSxJWzIxNzgwMF09QVtcIlRQLkNMVVRURVIsIFNUQVRJT05BUlkgT1IgQ0VBU0UgUkVQT1JUSU5HXCJdLElbMjE3OTAwXT1BW1wiVFAuVEVOVEFUSVZFIE9SIFBST1ZJU0lPTkFMIFRSQUNLXCJdLElbMjE4ZTNdPUFbXCJUUC5ESVNUUkVTU0VEIFZFU1NFTFwiXSxJWzIxODEwMF09QVtcIlRQLkRJVENIRUQgQUlSQ1JBRlRcIl0sSVsyMTgyMDBdPUFbXCJUUC5QRVJTT04gSU4gV0FURVJcIl0sSVsyMTgzMDBdPUFbXCJUUC5JQ0VCRVJHXCJdLFJbMjE4MzAwXT17eDE6NTAseDI6MTUwLHkxOjUwLHkyOjE1MH0sSVsyMTg1MDBdPUFbXCJUUC5PSUwgUklHL1BMQVRGT1JNXCJdLFJbMjE4NTAwXT17eDE6MzAseDI6MTcwLHkxOjYwLHkyOjE0MH0sSVsyMTg2MDBdPUFbXCJUUC5TRUEgTUlORUxJS0VcIl0sUlsyMTg2MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTUwfSxJWzIxODcwMF09QVtcIlRQLkJPVFRPTSBSRVRVUk5cIl0sUlsyMTg3MDBdPXt4MTo0MCx4MjoxNjAseTE6NDAseTI6MTAwfSxJWzIxODgwMF09QVtcIlRQLklOU1RBTExBVElPTi9NQU5NQURFXCJdLFJbMjE4ODAwXT17eDE6NDAseDI6MTYwLHkxOjQwLHkyOjEwMH0sSVsyMTg5MDBdPUFbXCJUUC5NQVJJTkUgTElGRVwiXSxSWzIxODkwMF09e3gxOjEwMCx4MjoyMjAseTE6NzAseTI6MTMwfSxJWzIxOWUzXT1BW1wiVFAuU0VBIEFOT01BTFlcIl0sUlsyMTllM109e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMjE5MTAwXT1BW1wiVFAuV1JFQ0ssIERBTkdFUk9VU1wiXSxSWzIxOTEwMF09e3gxOjQwLHgyOjE2MCx5MTo3MCx5MjoxMzB9LElbMjE5MjAwXT1BW1wiVFAuV1JFQ0ssIE5PTiBEQU5HRVJPVVNcIl0sUlsyMTkyMDBdPXt4MTo0MCx4MjoxNjAseTE6NzAseTI6MTMwfSxJWzI0MDYwMV09QVtcIlRQLlBPSU5UL1NJTkdMRSBUQVJHRVRcIl0sSVsyNDA2MDJdPUFbXCJUUC5OVUNMRUFSIFRBUkdFVFwiXSxJWzI0MDYwM109QVtcIlRQLlRBUkdFVFJFQ09SREVEIChBRUdJUyBPTkxZKVwiXSxSWzI0MDYwM109e3gxOjAseDI6MjAwLHkxOjUwLHkyOjE1MH0sSVsyNDA5MDBdPUFbXCJUUC5GSVJFIFNVUFBPUlQgU1RBVElPTlwiXSxSWzI0MDkwMF09e3gxOjUwLHgyOjIwMCx5MTo1MCx5MjoxNTB9LElbMjUwMTAwXT1BW1wiVFAuRklSSU5HIFBPSU5UXCJdLFJbMjUwMTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyNTAyMDBdPUFbXCJUUC5ISURFIFBPSU5UXCJdLFJbMjUwMjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyNTAzMDBdPUFbXCJUUC5MQVVOQ0ggUE9JTlRcIl0sUlsyNTAzMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI1MDQwMF09QVtcIlRQLlJFTE9BRCBQT0lOVFwiXSxSWzI1MDQwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMjUwNTAwXT1BW1wiVFAuU1VSVkVZIENPTlRST0wgUE9JTlRcIl0sUlsyNTA1MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI1MDYwMF09QVtcIlRQLktOT1dOIFBPSU5UXCJdLElbMjcwNzAxXT1BW1wiVFAuTUlORUZJRUxELCBTVEFUSUNcIl0sUlsyNzA3MDFdPXt4MToyNSx4MjoxNzUseTE6NjUseTI6MTQ1fSxJWzI4MDEwMF09QS5UT0RPLElbMjgwMjAwXT1BW1wiVFAuQU5USVBFUlNPTk5FTCAoQVApIE1JTkVTXCJdLElbMjgwMjAxXT1BW1wiVFAuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUU1wiXSxSWzI4MDIwMV09e3gxOjQwLHgyOjE4MCx5MTo0MCx5MjoxNTB9LElbMjgwMzAwXT1BW1wiVFAuQU5USVRBTksgTUlORSAoQVQpXCJdLElbMjgwNDAwXT1BW1wiVFAuKEFUKSBBTlRJSEFORExJTkcgREVWSUNFXCJdLFJbMjgwNDAwXT17eDE6NjAseDI6MTQwLHkxOjQwLHkyOjE5NX0sSVsyODA1MDBdPUFbXCJUUC5XSURFIEFSRUEgTUlORVNcIl0sSVsyODA2MDBdPUFbXCJUUC5VTlNQRUNJRklFRCBNSU5FXCJdLElbMjgwNzAwXT1BW1wiVFAuQk9PQlkgVFJBUFwiXSxJWzI4MDgwMF09QVtcIlRQLkVOR0lORUVSIFJFR1VMQVRJTkcgUE9JTlRcIl0sUlsyODA4MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MDkwMF09QVtcIlRQLkVBUlRIV09SSy9GT1JUSUZJQ0FUSU9OXCJdLElbMjgxZTNdPUFbXCJUUC5TVVJGQUNFIFNIRUxURVJcIl0sSVsyODExMDBdPUFbXCJUUC5VTkRFUkdST1VORCBTSEVMVEVSXCJdLElbMjgxMjAwXT1BW1wiVFAuRk9SVFwiXSxJWzI4MTMwMF09QVtcIlRQLkNIRU1JQ0FMIEVWRU5UXCJdLFJbMjgxMzAwXT17eDE6MjUseDI6MTc1LHkxOi0xMH0sSVsyODEzMDFdPUFbXCJUUC5DSEVNSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXSxSWzI4MTMwMV09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNDAwXT1BW1wiVFAuQklPTE9HSUNBTCBFVkVOVFwiXSxSWzI4MTQwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNDAxXT1BW1wiVFAuQklPTE9HSUNBTCDigJMgVE9YSUMgSU5EVVNUUklBTCBNQVRFUklBTFwiXSxSWzI4MTQwMV09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNTAwXT1BW1wiVFAuTlVDTEVBUiBFVkVOVFwiXSxSWzI4MTUwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNjAwXT1BW1wiVFAuTlVDTEVBUiBFVkVOVFwiXSxSWzI4MTYwMF09e3gxOjI1LHgyOjE3NSx5MTotMTB9LElbMjgxNzAwXT1BW1wiVFAuUkFESU9MT0dJQ0FMIEVWRU5UXCJdLFJbMjgxNzAwXT17eDE6MjUseDI6MTc1LHkxOi0xMH0sSVsyODE3MDFdPUFbXCJUUC5SQURJT0xPR0lDQUwg4oCTIFRPWElDIElORFVTVFJJQUwgTUFURVJJQUxcIl0sUlsyODE3MDFdPXt4MToyNSx4MjoxNzUseTE6LTEwfSxJWzI4MTgwMF09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlRcIl0sUlsyODE4MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwMV09QVtcIlRQLkFMVEVSTkFURSBERUNPTiBTSVRFL1BPSU5UXCJdLFJbMjgxODAxXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDJdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQpXCJdLFJbMjgxODAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDNdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChUUk9PUFMpXCJdLFJbMjgxODAzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDRdPUFbXCJUUC5ERUNPTiBTSVRFL1BPSU5UIChFUVVJUE1FTlQgQU5EIFRST09QUylcIl0sUlsyODE4MDRdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwNV09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKE9QRVJBVElPTkFMIERFQ09OVEFNSU5BVElPTilcIl0sUlsyODE4MDVdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwNl09QVtcIlRQLkRFQ09OIFNJVEUvUE9JTlQgKFRIT1JPVUdIIERFQ09OVEFNSU5BVElPTilcIl0sUlsyODE4MDZdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzI4MTgwN109QVtcIlRQLk1BSU4gRVFVSVBNRU5UIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdLFJbMjgxODA3XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDhdPUFbXCJUUC5GT1JXQVJEIFRST09QIERFQ09OVEFNSU5BVElPTiBQT0lOVC9TSVRFXCJdLFJbMjgxODA4XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVsyODE4MDldPUFbXCJUUC5XT1VOREVEIFBFUlNPTk5FTCBERUNPTlRBTUlOQVRJT04gU0lURVwiXSxSWzI4MTgwOV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMjgxOTAxXT1BW1wiVFAuRklYRUQgQU5EIFBSRUZBQlJJQ0FURURcIl0sUlsyODE5MDFdPXt4MTo2MCx4MjoxNDAseTE6MzB9LElbMjgxOTAyXT1BW1wiVFAuVEVUUkFIRURST05TXCJdLFJbMjgxOTAyXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJWzI4MTkwM109QVtcIlRQLlRFVFJBSEVEUk9OUyBNT1ZBQkxFXCJdLFJbMjgxOTAzXT17eDE6NjAseDI6MTQwLHkxOjMwfSxJWzI4MjAwMV09QVtcIlRQLlRPV0VSIExPV1wiXSxSWzI4MjAwMV09e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMjgyMDAyXT1BW1wiVFAuVE9XRVIgSElHSFwiXSxSWzI4MjAwMl09e3gxOjUwLHgyOjE1MCx5MTozMCx5MjoxMjB9LElbMzIwMTAwXT1BW1wiVFAuQU1CVUxBTkNFIEVYQ0hBTkdFIFBPSU5UXCJdLFJbMzIwMTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAxMDFdPUFbXCJUUC5BTUJVTEFOQ0UgRVhDSEFOR0UgUE9JTlRcIl0sUlszMjAxMDFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMDEwMl09QVtcIlRQLkFNQlVMQU5DRSBDT05UUk9MIFBPSU5UXCJdLFJbMzIwMTAyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAxMDNdPUFbXCJUUC5BTUJVTEFOQ0UgTE9BRCBQT0lOVFwiXSxSWzMyMDEwM109e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwMTA0XT1BW1wiVFAuQU1CVUxBTkNFIFJFTEFZIFBPSU5UXCJdLFJbMzIwMTA0XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjAyMDBdPUFbXCJUUC5BTU1VTklUSU9OIFNVUFBMWSBQT0lOVCAoQVNQKVwiXSxSWzMyMDIwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwMzAwXT1BW1wiVFAuQU1NVU5JVElPTiBUUkFOU0ZFUiBQT0lOVCAoQVRQKVwiXSxSWzMyMDMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwNDAwXT1BW1wiVFAuQ0FOTklCQUxJWkFUSU9OIFBPSU5UXCJdLFJbMzIwNDAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA1MDBdPUFbXCJUUC5DQVNVQUxUWSBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNTAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA2MDBdPUFbXCJUUC5DSVZJTElBTiBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNjAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA3MDBdPUFbXCJUUC5ERVRBSU5FRSBDT0xMRUNUSU9OIFBPSU5UXCJdLFJbMzIwNzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjA4MDBdPUFbXCJUUC5FUFcgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMDgwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIwOTAwXT1BW1wiVFAuTE9HSVNUSUNTIFJFTEVBU0UgUE9JTlRcIl0sUlszMjA5MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMWUzXT1BW1wiVFAuTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMWUzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjExMDBdPUFbXCJUUC5NRURJQ0FMIEVWQUNVQVRJT04gKE1FREVWQUMpIFBJQ0tVUCBQT0lOVFwiXSxSWzMyMTEwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxMjAwXT1BW1wiVFAuUkVBUk0sIFJFRlVFTCBBTkQgUkVTVVBQTFkgUE9JTlRcIl0sUlszMjEyMDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTMwMF09QVtcIlRQLlJFRlVFTCBPTiBUSEUgTU9WRSBQT0lOVFwiXSxSWzMyMTMwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNDAwXT1BW1wiVFAuVFJBRkZJQyBDT05UUk9MIFBPU1RcIl0sUlszMjE0MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTUwMF09QVtcIlRQLlRSQUlMRVIgVFJBTlNGRVIgUE9JTlRcIl0sUlszMjE1MDBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTYwMF09QVtcIlRQLlVOSVQgTUFJTlRFTkFOQ0UgQ09MTEVDVElPTiBQT0lOVFwiXSxSWzMyMTYwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzAwXT1BW1wiVFAuU1VQUExZIFBPSU5UXCJdLFJbMzIxNzAwXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDFdPUFbXCJUUC5OQVRPIENMQVNTIElcIl0sUlszMjE3MDFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwMl09QVtcIlRQLk5BVE8gQ0xBU1MgSUlcIl0sUlszMjE3MDJdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwM109QVtcIlRQLk5BVE8gQ0xBU1MgSUlJXCJdLFJbMzIxNzAzXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDRdPUFbXCJUUC5OQVRPIENMQVNTIElWXCJdLFJbMzIxNzA0XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MDVdPUFbXCJUUC5OQVRPIENMQVNTIFZcIl0sUlszMjE3MDVdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwNl09QVtcIlRQLlNVUFBMWSBQT0lOVFwiXSxSWzMyMTcwNl09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzA3XT1BW1wiVFAuU1AgQ0xBU1MgSVwiXSxSWzMyMTcwN109e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzA4XT1BW1wiVFAuU1AgQ0xBU1MgSUlcIl0sUlszMjE3MDhdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcwOV09QVtcIlRQLlNQIENMQVNTIElJSVwiXSxSWzMyMTcwOV09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzIxNzEwXT1BW1wiVFAuU1AgQ0xBU1MgSVZcIl0sUlszMjE3MTBdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxMV09QVtcIlRQLlNQIENMQVNTIFZcIl0sUlszMjE3MTFdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxMl09QVtcIlRQLlNQIENMQVNTIFZJXCJdLFJbMzIxNzEyXT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MTNdPUFbXCJUUC5TUCBDTEFTUyBWSUlcIl0sUlszMjE3MTNdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxNF09QVtcIlRQLlNQIENMQVNTIFZJSUlcIl0sUlszMjE3MTRdPXt4MTo2MCx4MjoxNDAseTE6LTYwfSxJWzMyMTcxNV09QVtcIlRQLlNQIENMQVNTIElYXCJdLFJbMzIxNzE1XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE3MTZdPUFbXCJUUC5TUCBDTEFTUyBYXCJdLFJbMzIxNzE2XT17eDE6NjAseDI6MTQwLHkxOi02MH0sSVszMjE4MDBdPUFbXCJUUC5NRURJQ0FMIFNVUFBMWSBQT0lOVFwiXSxSWzMyMTgwMF09e3gxOjYwLHgyOjE0MCx5MTotNjB9LElbMzQwOTAwXT1BW1wiVFAuREVTVFJPWVwiXSxSWzM0MDkwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNDE0MDBdPUFbXCJUUC5JTlRFUkRJQ1RcIl0sUlszNDE0MDBdPXt4MTowLHgyOjIwMCx5MTo0MCx5MjoxNjB9LElbMzQxNjAwXT1BW1wiVFAuTkVVVFJBTElaRVwiXSxSWzM0MTYwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNDI4MDBdPUFbXCJUUC5TVVBQUkVTU1wiXSxSWzM0MjgwMF09e3gxOjAseDI6MjAwLHkxOjQwLHkyOjE2MH0sSVszNTAxMDFdPUFbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgU01BTExcIl0sSVszNTAxMDJdPUFbXCJNQU4gTUFERSBTUEFDRSBERUJSSVMgTUVESVVNXCJdLElbMzUwMTAzXT1BW1wiTUFOIE1BREUgU1BBQ0UgREVCUklTIEJJR1wiXSxJWzM1MDIwMV09QVtcIk5BVFVSQUwgU1BBQ0UgREVCUklTIFNNQUxMXCJdLElbMzUwMjAyXT1BW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgTUVESVVNXCJdLElbMzUwMjAzXT1BW1wiTkFUVVJBTCBTUEFDRSBERUJSSVMgQklHXCJdLHRbMTNdPVtBW1wiVFAuTTEuVU5TUEVDSUZJRURcIl1dLHRbMTRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsxNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzE2XT1bQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMTddPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFsxOF09W0FbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzE5XT1bQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbMjBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl1dLHRbMjFdPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAzXCJdXSx0WzIyXT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsyM109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDNcIl1dLHRbMjRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgM1wiXV0sdFsyNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI2XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI3XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAzXCJdXSx0WzI4XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDJcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgM1wiXV0sdFsyOV09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgV0lUSCBBTlRJSEFORExJTkcgREVWSUNFIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXV0sdFszMF09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLldJREUgQVJFQSBBTlRJVEFOSyBNSU5FIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgM1wiXV0sdFszMV09W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDFcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMzJdPVtBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMVwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszM109W0FbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszNF09W0FbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAxXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFszNV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAyXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDNcIl1dLHRbMzZdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFszN109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzM4XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDJcIl0sQVtcIlRQLk0xLk1JTkUgQ0xVU1RFUiAzXCJdXSx0WzM5XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIDJcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgV0lUSCBBTlRJSEFORExJTkcgREVWSUNFIDNcIl1dLHRbNDBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0MV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0sdFs0Ml09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0M109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNDRdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0sdFs0NV09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgM1wiXV0sdFs0Nl09W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuV0lERSBBUkVBIEFOVElUQU5LIE1JTkUgM1wiXV0sdFs0N109W0FbXCJUUC5NMS5BTlRJUEVSU09OTkVMIE1JTkUgV0lUSCBESVJFQ1RJT05BTCBFRkZFQ1RTIDFcIl0sQVtcIlRQLk0xLkFOVElUQU5LIE1JTkUgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNDhdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5BTlRJVEFOSyBNSU5FIFdJVEggQU5USUhBTkRMSU5HIERFVklDRSAyXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAzXCJdXSx0WzQ5XT1bQVtcIlRQLk0xLkFOVElQRVJTT05ORUwgTUlORSBXSVRIIERJUkVDVElPTkFMIEVGRkVDVFMgMVwiXSxBW1wiVFAuTTEuQU5USVRBTksgTUlORSBXSVRIIEFOVElIQU5ETElORyBERVZJQ0UgMlwiXSxBW1wiVFAuTTEuTUlORSBDTFVTVEVSIDNcIl1dLHRbNTBdPVtBW1wiVFAuTTEuQU5USVBFUlNPTk5FTCBNSU5FIFdJVEggRElSRUNUSU9OQUwgRUZGRUNUUyAxXCJdLEFbXCJUUC5NMS5XSURFIEFSRUEgQU5USVRBTksgTUlORSAyXCJdLEFbXCJUUC5NMS5NSU5FIENMVVNURVIgM1wiXV0pfX0sRUk9W1EsZyxiLEssWCx3LF8sSixaLHEsaiwkLElJLHt0eXBlOlwibnVtYmVyXCIsZ2V0TWV0YWRhdGE6dSxnZXRJY29uczp2LGljb25QYXJ0czpjLGljb25zOmZ1bmN0aW9uKEksdCxFLFIsZSxBLEMpe1wiMjdcIj09ZSYmKElbMTFlNF09W10sSVsxMTAxMDBdPVtdLElbMTEwMTAxXT1bQVtcIkdSLklDLkZGLklORkFOVFJZIERJU01PVU5URURcIl1dLElbMTEwMTAyXT1bQVtcIkdSLklDLkZGLk1FRElDQUxcIl1dLElbMTEwMTAzXT1bQVtcIkdSLklDLkZGLlJFQ09OTkFJU1NBTkNFIERJU01PVU5URURcIl1dLElbMTEwMTA0XT1bQVtcIkdSLklDLkZGLlNJR05BTCBESVNNT1VOVEVEXCJdXSxJWzExMDIwMF09W10sSVsxMTAyMDFdPVtBW1wiR1IuSUMuRVhQTE9TSVZFIE9SRE5BTkNFIERJU1BPU0FMXCJdXSxJWzExMDIwMl09W0FbXCJHUi5JQy5GSUVMRCBBUlRJTExFUlkgT0JTRVJWRVJcIl1dLElbMTEwMjAzXT1bQVtcIkdSLklDLkpPSU5UIEZJUkUgU1VQUE9SVFwiXV0sSVsxMTAyMDRdPVtBW1wiR1IuSUMuTElBSVNPTlwiXV0sSVsxMTAyMDVdPVtBW1wiR1IuSUMuTUVTU0VOR0VSXCJdXSxJWzExMDIwNl09W0FbXCJHUi5JQy5NSUxJVEFSWSBQT0xJQ0VcIl1dLElbMTEwMjA3XT1bQVtcIkdSLklDLk9CU0VSVkVSL09CU0VSVkFUSU9OXCJdXSxJWzExMDIwOF09W0FbXCJHUi5JQy5TRUNVUklUWVwiXV0sSVsxMTAyMDldPVtBW1wiR1IuSUMuU05JUEVSXCJdXSxJWzExMDIxMF09W0FbXCJHUi5JQy5TUEVDSUFMIE9QRVJBVElPTlMgRk9SQ0VTXCJdXSxJWzExMDMwMF09W10sSVsxMTAzMDFdPVtBW1wiR1IuRVEuUklGTEVcIl1dLElbMTEwMzAyXT1bQVtcIkdSLkVRLlJJRkxFXCJdLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXV0sSVsxMTAzMDNdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXV0sSVsxMTAzMDRdPVtBW1wiR1IuRVEuUklGTEVcIl0sQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl1dLElbMTEwMzA1XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdXSxJWzExMDMwNl09W0FbXCJHUi5FUS5NQUNISU5FIEdVTlwiXSxBW1wiR1IuRVEuU0hPUlQgUkFOR0VcIl1dLElbMTEwMzA3XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5JTlRFUk1FRElBVEUgUkFOR0VcIl1dLElbMTEwMzA4XT1bQVtcIkdSLkVRLk1BQ0hJTkUgR1VOXCJdLEFbXCJHUi5FUS5MT05HIFJBTkdFXCJdXSxJWzExMDMwOV09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdXSxJWzExMDMxMF09W0FbXCJHUi5FUS5HUkVOQURFIExBVU5DSEVSXCJdLHMuX3RyYW5zbGF0ZSgwLDIwLEFbXCJHUi5FUS5TSE9SVCBSQU5HRVwiXSldLElbMTEwMzExXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLklOVEVSTUVESUFURSBSQU5HRVwiXSldLElbMTEwMzEyXT1bQVtcIkdSLkVRLkdSRU5BREUgTEFVTkNIRVJcIl0scy5fdHJhbnNsYXRlKDAsMjAsQVtcIkdSLkVRLkxPTkcgUkFOR0VcIl0pXSxJWzExMDMxM109W0FbXCJHUi5FUS5GTEFNRSBUSFJPV0VSXCJdXSxJWzExMDMxNF09W0FbXCJHUi5FUS5NT1JUQVJcIl1dLElbMTEwMzE1XT1bQVtcIkdSLkVRLlNJTkdMRSBST0NLRVQgTEFVTkNIRVJcIl1dLElbMTEwMzE2XT1bQVtcIkdSLkVRLkFOVElUQU5LIFJPQ0tFVCBMQVVOQ0hFUlwiXV0sSVsxMTA0MDBdPVtdLElbMTEwNDAxXT1bQVtcIkdSLkVRLk5PTi1MRVRIQUwgV0VBUE9OXCJdXSxJWzExMDQwMl09QVtcIkdSLkVRLk5PTi1MRVRIQUwgR1JFTkFERSBMQVVOQ0hFUlwiXSxJWzExMDQwM109W0FbXCJHUi5FUS5UQVNFUlwiXV0sSVsxMmU0XT1bXSxJWzEyMDEwMF09W10sSVsxMjAxMDFdPVtBW1wiR1IuSUMuTEFXIEVORk9SQ0VNRU5UXCJdXSx0W1wiMDFcIl09W0FbXCJHUi5NMS5DTE9TRSBQUk9URUNUSU9OXCJdXSx0W1wiMDJcIl09W0FbXCJHUi5NMS5DUk9XRCBBTkQgUklPVCBDT05UUk9MXCJdXSx0W1wiMDNcIl09W0FbXCJHUi5NMS5FWFBMT1NJVkUgT1JETkFOQ0UgRElTUE9TQUxcIl1dLHRbXCIwNFwiXT1bQVtcIkdSLk0xLlNFQ1VSSVRZXCJdXSx0W1wiMDVcIl09W0FbXCJHUi5NMS5TTklQRVJcIl1dLHRbXCIwNlwiXT1bQVtcIkdSLk0xLlNQRUNJQUwgV0VBUE9OUyBBTkQgVEFDVElDU1wiXV0sdFtcIjA3XCJdPVtBW1wiU1QuTTEuTk9OR09WRVJOTUVOVEFMIE9SR0FOSVpBVElPTiAoTkdPKVwiXV0sdFtcIjA4XCJdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTFwiXV0sdFtcIjA5XCJdPVtBW1wiR1IuTTEuTVVMVElOQVRJT05BTCBTUEVDSUFMSVpFRCBVTklUXCJdXSx0WzEwXT1bQVtcIlNULk0xLkdPVkVSTk1FTlQgT1JHQU5JWkFUSU9OXCJdXSx0WzExXT1bQVtcIkdSLk0xLlZJREVPIElNQUdFUllcIl1dLHRbMTJdPVtBW1wiR1IuTTEuSjFcIl1dLHRbMTNdPVtBW1wiR1IuTTEuSjJcIl1dLHRbMTRdPVtBW1wiR1IuTTEuSjNcIl1dLHRbMTVdPVtBW1wiR1IuTTEuSjRcIl1dLHRbMTZdPVtBW1wiR1IuTTEuSjVcIl1dLHRbMTddPVtBW1wiR1IuTTEuSjZcIl1dLHRbMThdPVtBW1wiR1IuTTEuSjdcIl1dLHRbMTldPVtBW1wiR1IuTTEuSjhcIl1dLHRbMjBdPVtBW1wiR1IuTTEuSjlcIl1dLHRbMjFdPVtBW1wiR1IuTTEuT0YtMVwiXV0sdFsyMl09W0FbXCJHUi5NMS5PRi0yXCJdXSx0WzIzXT1bQVtcIkdSLk0xLk9GLTNcIl1dLHRbMjRdPVtBW1wiR1IuTTEuT0YtNFwiXV0sdFsyNV09W0FbXCJHUi5NMS5PRi01XCJdXSx0WzI2XT1bQVtcIkdSLk0xLk9GLTZcIl1dLHRbMjddPVtBW1wiR1IuTTEuT0YtN1wiXV0sdFsyOF09W0FbXCJHUi5NMS5PRi04XCJdXSx0WzI5XT1bQVtcIkdSLk0xLk9GLTlcIl1dLHRbMzBdPVtBW1wiR1IuTTEuT0YtMTBcIl1dLHRbMzFdPVtBW1wiR1IuTTEuT0YtRFwiXV0sdFszMl09W0FbXCJHUi5NMS5PUi0xXCJdXSx0WzMzXT1bQVtcIkdSLk0xLk9SLTJcIl1dLHRbMzRdPVtBW1wiR1IuTTEuT1ItM1wiXV0sdFszNV09W0FbXCJHUi5NMS5PUi00XCJdXSx0WzM2XT1bQVtcIkdSLk0xLk9SLTVcIl1dLHRbMzddPVtBW1wiR1IuTTEuT1ItNlwiXV0sdFszOF09W0FbXCJHUi5NMS5PUi03XCJdXSx0WzM5XT1bQVtcIkdSLk0xLk9SLThcIl1dLHRbNDBdPVtBW1wiR1IuTTEuT1ItOVwiXV0sdFs0MV09W0FbXCJHUi5NMS5XTy0xXCJdXSx0WzQyXT1bQVtcIkdSLk0xLldPLTJcIl1dLHRbNDNdPVtBW1wiR1IuTTEuV08tM1wiXV0sdFs0NF09W0FbXCJHUi5NMS5XTy00XCJdXSx0WzQ1XT1bQVtcIkdSLk0xLldPLTVcIl1dLHRbNDZdPVtBW1wiR1IuTTEuSU5ESVZJRFVBTFwiXV0sdFs0N109W0FbXCJHUi5NMS5URUFNXCJdXSx0WzQ4XT1bQVtcIkdSLk0xLlNRVUFEXCJdXSx0WzQ5XT1bQVtcIkdSLk0xLlNFQ1RJT05cIl1dLHRbNTBdPVtBW1wiR1IuTTEuUExBVE9PTlwiXV0sdFs1MV09W0FbXCJHUi5NMS5DT01QQU5ZXCJdXSx0WzUyXT1bQVtcIkdSLk0xLkJBVFRBTElPTlwiXV0sdFs1M109W0FbXCJHUi5NMS5SRUdJTUVOVFwiXV0sdFs1NF09W0FbXCJHUi5NMS5CUklHQURFXCJdXSx0WzU1XT1bQVtcIkdSLk0xLkRJVklTSU9OXCJdXSxFW1wiMDFcIl09W0FbXCJHUi5NMi5BSVJCT1JORVwiXV0sRVtcIjAyXCJdPVtBW1wiR1IuTTIuQklDWUNMRSBFUVVJUFBFRFwiXV0sRVtcIjAzXCJdPVtBW1wiR1IuTTIuREVNT0xJVElPTlwiXV0sRVtcIjA0XCJdPVtBW1wiR1IuTTIuSjFcIl1dLEVbXCIwNVwiXT1bQVtcIkdSLk0yLkoyXCJdXSxFW1wiMDZcIl09W0FbXCJHUi5NMi5KM1wiXV0sRVtcIjA3XCJdPVtBW1wiR1IuTTIuSjRcIl1dLEVbXCIwOFwiXT1bQVtcIkdSLk0yLko1XCJdXSxFW1wiMDlcIl09W0FbXCJHUi5NMi5KNlwiXV0sRVsxMF09W0FbXCJHUi5NMi5KN1wiXV0sRVsxMV09W0FbXCJHUi5NMi5KOFwiXV0sRVsxMl09W0FbXCJHUi5NMi5KOVwiXV0sRVsxM109W0FbXCJHUi5NMi5NT1VOVEFJTlwiXV0sRVsxNF09W0FbXCJHUi5NMi5PRi0xXCJdXSxFWzE1XT1bQVtcIkdSLk0yLk9GLTJcIl1dLEVbMTZdPVtBW1wiR1IuTTIuT0YtM1wiXV0sRVsxN109W0FbXCJHUi5NMi5PRi00XCJdXSxFWzE4XT1bQVtcIkdSLk0yLk9GLTVcIl1dLEVbMTldPVtBW1wiR1IuTTIuT0YtNlwiXV0sRVsyMF09W0FbXCJHUi5NMi5PRi03XCJdXSxFWzIxXT1bQVtcIkdSLk0yLk9GLThcIl1dLEVbMjJdPVtBW1wiR1IuTTIuT0YtOVwiXV0sRVsyM109W0FbXCJHUi5NMi5PRi0xMFwiXV0sRVsyNF09W0FbXCJHUi5NMi5PRi1EXCJdXSxFWzI1XT1bQVtcIkdSLk0yLk9SLTFcIl1dLEVbMjZdPVtBW1wiR1IuTTIuT1ItMlwiXV0sRVsyN109W0FbXCJHUi5NMi5PUi0zXCJdXSxFWzI4XT1bQVtcIkdSLk0yLk9SLTRcIl1dLEVbMjldPVtBW1wiR1IuTTIuT1ItNVwiXV0sRVszMF09W0FbXCJHUi5NMi5PUi02XCJdXSxFWzMxXT1bQVtcIkdSLk0yLk9SLTdcIl1dLEVbMzJdPVtBW1wiR1IuTTIuT1ItOFwiXV0sRVszM109W0FbXCJHUi5NMi5PUi05XCJdXSxFWzM0XT1bQVtcIkdSLk0yLldPLTFcIl1dLEVbMzVdPVtBW1wiR1IuTTIuV08tMlwiXV0sRVszNl09W0FbXCJHUi5NMi5XTy0zXCJdXSxFWzM3XT1bQVtcIkdSLk0yLldPLTRcIl1dLEVbMzhdPVtBW1wiR1IuTTIuV08tNVwiXV0sRVszOV09W0FbXCJHUi5NMi5TS0lcIl1dKX19LHRJXSxSST1bUSxnLGIsSyxYLHcsXyxKLFoscSxqLCQsSUkse3R5cGU6XCJudW1iZXJcIixnZXRNZXRhZGF0YTp1LGdldEljb25zOnYsaWNvblBhcnRzOmMsaWNvbnM6ZnVuY3Rpb24oSSx0LEUsUixlLEEsQyl7XCI2MFwiPT1lJiYoSVsxMWU0XT1bXSxJWzExMDEwMF09W0FbXCJDWS5JQy5DT01CQVQgTUlTU0lPTiBURUFNXCJdXSxJWzExMDIwMF09W0FbXCJDWS5JQy5OQVRJT05BTCBNSVNTSU9OIFRFQU1cIl1dLElbMTEwMzAwXT1bQVtcIkNZLklDLkNZQkVSIFBST1RFQ1RJT04gVEVBTVwiXV0sSVsxMTA0MDBdPVtBW1wiQ1kuSUMuTkFUSU9OIFNUQVRFIENZQkVSIFRIUkVBVCBBQ1RPUlwiXV0sSVsxMTA1MDBdPVtBW1wiQ1kuSUMuTk9OIE5BVElPTiBTVEFURSBDWUJFUiBUSFJFQVQgQUNUT1JcIl1dKX19LHRJXTtyZXR1cm4gcy5hZGRJY29ucyhCKSxzLmFkZEljb25zKFkpLHMuYWRkSWNvbnMoVykscy5hZGRJY29ucyhFSSkscy5hZGRJY29ucyhSSSkscy5QYXRoMkQ9ZnVuY3Rpb24oSSx0KXt2YXIgRSxSLGUsQSxDLFQsUyxOLE8sRyxvO0kuYmVnaW5QYXRoKCk7dmFyIE09dC5tYXRjaCgvKFtNQ0xIVl1bXk1DTEhWXSopL2dpKTtmb3IoUz0wO1M8TS5sZW5ndGg7UysrKXtpZihcIk1cIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE89RT1wYXJzZUZsb2F0KG9bMF0pLEc9Uj1wYXJzZUZsb2F0KG9bMV0pLEkubW92ZVRvKEUsUiksTj0yO048by5sZW5ndGg7Tis9MilFPXBhcnNlRmxvYXQob1tOXSksUj1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmKEkuY2xvc2VQYXRoKCksRT1PLFI9Ryl9aWYoXCJtXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxPPUU9RT9FK3BhcnNlRmxvYXQob1swXSk6cGFyc2VGbG9hdChvWzBdKSxHPVI9Uj9SK3BhcnNlRmxvYXQob1sxXSk6cGFyc2VGbG9hdChvWzFdKSxJLm1vdmVUbyhFLFIpLE49MjtOPG8ubGVuZ3RoO04rPTIpRSs9cGFyc2VGbG9hdChvW05dKSxSKz1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmKEkuY2xvc2VQYXRoKCksRT1PLFI9Ryl9aWYoXCJMXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKz0yKUU9cGFyc2VGbG9hdChvW05dKSxSPXBhcnNlRmxvYXQob1tOKzFdKSxJLmxpbmVUbyhFLFIpO1wiWlwiPT1NW1NdLnJlcGxhY2UoL1xccy9nLFwiXCIpLnN1YnN0cigtMSwxKS50b1VwcGVyQ2FzZSgpJiYoSS5jbG9zZVBhdGgoKSxFPU8sUj1HKX1pZihcImxcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rPTIpRSs9cGFyc2VGbG9hdChvW05dKSxSKz1wYXJzZUZsb2F0KG9bTisxXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcIkNcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXS4qW1xcZF0vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rPTYpZT1wYXJzZUZsb2F0KG9bTl0pLEE9cGFyc2VGbG9hdChvW04rMV0pLEM9cGFyc2VGbG9hdChvW04rMl0pLFQ9cGFyc2VGbG9hdChvW04rM10pLEU9cGFyc2VGbG9hdChvW04rNF0pLFI9cGFyc2VGbG9hdChvW04rNV0pLEkuYmV6aWVyQ3VydmVUbyhlLEEsQyxULEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJjXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0uKltcXGRdLylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKz02KWU9RStwYXJzZUZsb2F0KG9bTl0pLEE9UitwYXJzZUZsb2F0KG9bTisxXSksQz1FK3BhcnNlRmxvYXQob1tOKzJdKSxUPVIrcGFyc2VGbG9hdChvW04rM10pLEUrPXBhcnNlRmxvYXQob1tOKzRdKSxSKz1wYXJzZUZsb2F0KG9bTis1XSksSS5iZXppZXJDdXJ2ZVRvKGUsQSxDLFQsRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcIkhcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXSguKltcXGRdKT8vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rKylFPXBhcnNlRmxvYXQob1tOXSksSS5saW5lVG8oRSxSKTtcIlpcIj09TVtTXS5yZXBsYWNlKC9cXHMvZyxcIlwiKS5zdWJzdHIoLTEsMSkudG9VcHBlckNhc2UoKSYmSS5jbG9zZVBhdGgoKX1pZihcImhcIj09TVtTXS5jaGFyQXQoMCkpe2ZvcihvPU1bU10ubWF0Y2goL1stXFxkXSguKltcXGRdKT8vKVswXS5zcGxpdCgvW1xccyxdL2cpLE49MDtOPG8ubGVuZ3RoO04rKylFKz1wYXJzZUZsb2F0KG9bTl0pLEkubGluZVRvKEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJWXCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0oLipbXFxkXSk/LylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKyspUj1wYXJzZUZsb2F0KG9bTl0pLEkubGluZVRvKEUsUik7XCJaXCI9PU1bU10ucmVwbGFjZSgvXFxzL2csXCJcIikuc3Vic3RyKC0xLDEpLnRvVXBwZXJDYXNlKCkmJkkuY2xvc2VQYXRoKCl9aWYoXCJ2XCI9PU1bU10uY2hhckF0KDApKXtmb3Iobz1NW1NdLm1hdGNoKC9bLVxcZF0oLipbXFxkXSk/LylbMF0uc3BsaXQoL1tcXHMsXS9nKSxOPTA7TjxvLmxlbmd0aDtOKyspUis9cGFyc2VGbG9hdChvW05dKSxJLmxpbmVUbyhFLFIpO1wiWlwiPT1NW1NdLnJlcGxhY2UoL1xccy9nLFwiXCIpLnN1YnN0cigtMSwxKS50b1VwcGVyQ2FzZSgpJiZJLmNsb3NlUGF0aCgpfX19LHN9KTsiLCIvLyBzaGltIGZvciB1c2luZyBwcm9jZXNzIGluIGJyb3dzZXJcbnZhciBwcm9jZXNzID0gbW9kdWxlLmV4cG9ydHMgPSB7fTtcblxuLy8gY2FjaGVkIGZyb20gd2hhdGV2ZXIgZ2xvYmFsIGlzIHByZXNlbnQgc28gdGhhdCB0ZXN0IHJ1bm5lcnMgdGhhdCBzdHViIGl0XG4vLyBkb24ndCBicmVhayB0aGluZ3MuICBCdXQgd2UgbmVlZCB0byB3cmFwIGl0IGluIGEgdHJ5IGNhdGNoIGluIGNhc2UgaXQgaXNcbi8vIHdyYXBwZWQgaW4gc3RyaWN0IG1vZGUgY29kZSB3aGljaCBkb2Vzbid0IGRlZmluZSBhbnkgZ2xvYmFscy4gIEl0J3MgaW5zaWRlIGFcbi8vIGZ1bmN0aW9uIGJlY2F1c2UgdHJ5L2NhdGNoZXMgZGVvcHRpbWl6ZSBpbiBjZXJ0YWluIGVuZ2luZXMuXG5cbnZhciBjYWNoZWRTZXRUaW1lb3V0O1xudmFyIGNhY2hlZENsZWFyVGltZW91dDtcblxuZnVuY3Rpb24gZGVmYXVsdFNldFRpbW91dCgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3NldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQnKTtcbn1cbmZ1bmN0aW9uIGRlZmF1bHRDbGVhclRpbWVvdXQgKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignY2xlYXJUaW1lb3V0IGhhcyBub3QgYmVlbiBkZWZpbmVkJyk7XG59XG4oZnVuY3Rpb24gKCkge1xuICAgIHRyeSB7XG4gICAgICAgIGlmICh0eXBlb2Ygc2V0VGltZW91dCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgY2FjaGVkU2V0VGltZW91dCA9IHNldFRpbWVvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gZGVmYXVsdFNldFRpbW91dDtcbiAgICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgY2FjaGVkU2V0VGltZW91dCA9IGRlZmF1bHRTZXRUaW1vdXQ7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAgIGlmICh0eXBlb2YgY2xlYXJUaW1lb3V0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBjbGVhclRpbWVvdXQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBkZWZhdWx0Q2xlYXJUaW1lb3V0O1xuICAgICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjYWNoZWRDbGVhclRpbWVvdXQgPSBkZWZhdWx0Q2xlYXJUaW1lb3V0O1xuICAgIH1cbn0gKCkpXG5mdW5jdGlvbiBydW5UaW1lb3V0KGZ1bikge1xuICAgIGlmIChjYWNoZWRTZXRUaW1lb3V0ID09PSBzZXRUaW1lb3V0KSB7XG4gICAgICAgIC8vbm9ybWFsIGVudmlyb21lbnRzIGluIHNhbmUgc2l0dWF0aW9uc1xuICAgICAgICByZXR1cm4gc2V0VGltZW91dChmdW4sIDApO1xuICAgIH1cbiAgICAvLyBpZiBzZXRUaW1lb3V0IHdhc24ndCBhdmFpbGFibGUgYnV0IHdhcyBsYXR0ZXIgZGVmaW5lZFxuICAgIGlmICgoY2FjaGVkU2V0VGltZW91dCA9PT0gZGVmYXVsdFNldFRpbW91dCB8fCAhY2FjaGVkU2V0VGltZW91dCkgJiYgc2V0VGltZW91dCkge1xuICAgICAgICBjYWNoZWRTZXRUaW1lb3V0ID0gc2V0VGltZW91dDtcbiAgICAgICAgcmV0dXJuIHNldFRpbWVvdXQoZnVuLCAwKTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgICAgLy8gd2hlbiB3aGVuIHNvbWVib2R5IGhhcyBzY3Jld2VkIHdpdGggc2V0VGltZW91dCBidXQgbm8gSS5FLiBtYWRkbmVzc1xuICAgICAgICByZXR1cm4gY2FjaGVkU2V0VGltZW91dChmdW4sIDApO1xuICAgIH0gY2F0Y2goZSl7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBXaGVuIHdlIGFyZSBpbiBJLkUuIGJ1dCB0aGUgc2NyaXB0IGhhcyBiZWVuIGV2YWxlZCBzbyBJLkUuIGRvZXNuJ3QgdHJ1c3QgdGhlIGdsb2JhbCBvYmplY3Qgd2hlbiBjYWxsZWQgbm9ybWFsbHlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRTZXRUaW1lb3V0LmNhbGwobnVsbCwgZnVuLCAwKTtcbiAgICAgICAgfSBjYXRjaChlKXtcbiAgICAgICAgICAgIC8vIHNhbWUgYXMgYWJvdmUgYnV0IHdoZW4gaXQncyBhIHZlcnNpb24gb2YgSS5FLiB0aGF0IG11c3QgaGF2ZSB0aGUgZ2xvYmFsIG9iamVjdCBmb3IgJ3RoaXMnLCBob3BmdWxseSBvdXIgY29udGV4dCBjb3JyZWN0IG90aGVyd2lzZSBpdCB3aWxsIHRocm93IGEgZ2xvYmFsIGVycm9yXG4gICAgICAgICAgICByZXR1cm4gY2FjaGVkU2V0VGltZW91dC5jYWxsKHRoaXMsIGZ1biwgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxufVxuZnVuY3Rpb24gcnVuQ2xlYXJUaW1lb3V0KG1hcmtlcikge1xuICAgIGlmIChjYWNoZWRDbGVhclRpbWVvdXQgPT09IGNsZWFyVGltZW91dCkge1xuICAgICAgICAvL25vcm1hbCBlbnZpcm9tZW50cyBpbiBzYW5lIHNpdHVhdGlvbnNcbiAgICAgICAgcmV0dXJuIGNsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH1cbiAgICAvLyBpZiBjbGVhclRpbWVvdXQgd2Fzbid0IGF2YWlsYWJsZSBidXQgd2FzIGxhdHRlciBkZWZpbmVkXG4gICAgaWYgKChjYWNoZWRDbGVhclRpbWVvdXQgPT09IGRlZmF1bHRDbGVhclRpbWVvdXQgfHwgIWNhY2hlZENsZWFyVGltZW91dCkgJiYgY2xlYXJUaW1lb3V0KSB7XG4gICAgICAgIGNhY2hlZENsZWFyVGltZW91dCA9IGNsZWFyVGltZW91dDtcbiAgICAgICAgcmV0dXJuIGNsZWFyVGltZW91dChtYXJrZXIpO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgICAvLyB3aGVuIHdoZW4gc29tZWJvZHkgaGFzIHNjcmV3ZWQgd2l0aCBzZXRUaW1lb3V0IGJ1dCBubyBJLkUuIG1hZGRuZXNzXG4gICAgICAgIHJldHVybiBjYWNoZWRDbGVhclRpbWVvdXQobWFya2VyKTtcbiAgICB9IGNhdGNoIChlKXtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIC8vIFdoZW4gd2UgYXJlIGluIEkuRS4gYnV0IHRoZSBzY3JpcHQgaGFzIGJlZW4gZXZhbGVkIHNvIEkuRS4gZG9lc24ndCAgdHJ1c3QgdGhlIGdsb2JhbCBvYmplY3Qgd2hlbiBjYWxsZWQgbm9ybWFsbHlcbiAgICAgICAgICAgIHJldHVybiBjYWNoZWRDbGVhclRpbWVvdXQuY2FsbChudWxsLCBtYXJrZXIpO1xuICAgICAgICB9IGNhdGNoIChlKXtcbiAgICAgICAgICAgIC8vIHNhbWUgYXMgYWJvdmUgYnV0IHdoZW4gaXQncyBhIHZlcnNpb24gb2YgSS5FLiB0aGF0IG11c3QgaGF2ZSB0aGUgZ2xvYmFsIG9iamVjdCBmb3IgJ3RoaXMnLCBob3BmdWxseSBvdXIgY29udGV4dCBjb3JyZWN0IG90aGVyd2lzZSBpdCB3aWxsIHRocm93IGEgZ2xvYmFsIGVycm9yLlxuICAgICAgICAgICAgLy8gU29tZSB2ZXJzaW9ucyBvZiBJLkUuIGhhdmUgZGlmZmVyZW50IHJ1bGVzIGZvciBjbGVhclRpbWVvdXQgdnMgc2V0VGltZW91dFxuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZENsZWFyVGltZW91dC5jYWxsKHRoaXMsIG1hcmtlcik7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG59XG52YXIgcXVldWUgPSBbXTtcbnZhciBkcmFpbmluZyA9IGZhbHNlO1xudmFyIGN1cnJlbnRRdWV1ZTtcbnZhciBxdWV1ZUluZGV4ID0gLTE7XG5cbmZ1bmN0aW9uIGNsZWFuVXBOZXh0VGljaygpIHtcbiAgICBpZiAoIWRyYWluaW5nIHx8ICFjdXJyZW50UXVldWUpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBkcmFpbmluZyA9IGZhbHNlO1xuICAgIGlmIChjdXJyZW50UXVldWUubGVuZ3RoKSB7XG4gICAgICAgIHF1ZXVlID0gY3VycmVudFF1ZXVlLmNvbmNhdChxdWV1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcXVldWVJbmRleCA9IC0xO1xuICAgIH1cbiAgICBpZiAocXVldWUubGVuZ3RoKSB7XG4gICAgICAgIGRyYWluUXVldWUoKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGRyYWluUXVldWUoKSB7XG4gICAgaWYgKGRyYWluaW5nKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdmFyIHRpbWVvdXQgPSBydW5UaW1lb3V0KGNsZWFuVXBOZXh0VGljayk7XG4gICAgZHJhaW5pbmcgPSB0cnVlO1xuXG4gICAgdmFyIGxlbiA9IHF1ZXVlLmxlbmd0aDtcbiAgICB3aGlsZShsZW4pIHtcbiAgICAgICAgY3VycmVudFF1ZXVlID0gcXVldWU7XG4gICAgICAgIHF1ZXVlID0gW107XG4gICAgICAgIHdoaWxlICgrK3F1ZXVlSW5kZXggPCBsZW4pIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50UXVldWUpIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50UXVldWVbcXVldWVJbmRleF0ucnVuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcXVldWVJbmRleCA9IC0xO1xuICAgICAgICBsZW4gPSBxdWV1ZS5sZW5ndGg7XG4gICAgfVxuICAgIGN1cnJlbnRRdWV1ZSA9IG51bGw7XG4gICAgZHJhaW5pbmcgPSBmYWxzZTtcbiAgICBydW5DbGVhclRpbWVvdXQodGltZW91dCk7XG59XG5cbnByb2Nlc3MubmV4dFRpY2sgPSBmdW5jdGlvbiAoZnVuKSB7XG4gICAgdmFyIGFyZ3MgPSBuZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aCAtIDEpO1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgYXJnc1tpIC0gMV0gPSBhcmd1bWVudHNbaV07XG4gICAgICAgIH1cbiAgICB9XG4gICAgcXVldWUucHVzaChuZXcgSXRlbShmdW4sIGFyZ3MpKTtcbiAgICBpZiAocXVldWUubGVuZ3RoID09PSAxICYmICFkcmFpbmluZykge1xuICAgICAgICBydW5UaW1lb3V0KGRyYWluUXVldWUpO1xuICAgIH1cbn07XG5cbi8vIHY4IGxpa2VzIHByZWRpY3RpYmxlIG9iamVjdHNcbmZ1bmN0aW9uIEl0ZW0oZnVuLCBhcnJheSkge1xuICAgIHRoaXMuZnVuID0gZnVuO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbn1cbkl0ZW0ucHJvdG90eXBlLnJ1biA9IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLmZ1bi5hcHBseShudWxsLCB0aGlzLmFycmF5KTtcbn07XG5wcm9jZXNzLnRpdGxlID0gJ2Jyb3dzZXInO1xucHJvY2Vzcy5icm93c2VyID0gdHJ1ZTtcbnByb2Nlc3MuZW52ID0ge307XG5wcm9jZXNzLmFyZ3YgPSBbXTtcbnByb2Nlc3MudmVyc2lvbiA9ICcnOyAvLyBlbXB0eSBzdHJpbmcgdG8gYXZvaWQgcmVnZXhwIGlzc3Vlc1xucHJvY2Vzcy52ZXJzaW9ucyA9IHt9O1xuXG5mdW5jdGlvbiBub29wKCkge31cblxucHJvY2Vzcy5vbiA9IG5vb3A7XG5wcm9jZXNzLmFkZExpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3Mub25jZSA9IG5vb3A7XG5wcm9jZXNzLm9mZiA9IG5vb3A7XG5wcm9jZXNzLnJlbW92ZUxpc3RlbmVyID0gbm9vcDtcbnByb2Nlc3MucmVtb3ZlQWxsTGlzdGVuZXJzID0gbm9vcDtcbnByb2Nlc3MuZW1pdCA9IG5vb3A7XG5wcm9jZXNzLnByZXBlbmRMaXN0ZW5lciA9IG5vb3A7XG5wcm9jZXNzLnByZXBlbmRPbmNlTGlzdGVuZXIgPSBub29wO1xuXG5wcm9jZXNzLmxpc3RlbmVycyA9IGZ1bmN0aW9uIChuYW1lKSB7IHJldHVybiBbXSB9XG5cbnByb2Nlc3MuYmluZGluZyA9IGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdwcm9jZXNzLmJpbmRpbmcgaXMgbm90IHN1cHBvcnRlZCcpO1xufTtcblxucHJvY2Vzcy5jd2QgPSBmdW5jdGlvbiAoKSB7IHJldHVybiAnLycgfTtcbnByb2Nlc3MuY2hkaXIgPSBmdW5jdGlvbiAoZGlyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQnKTtcbn07XG5wcm9jZXNzLnVtYXNrID0gZnVuY3Rpb24oKSB7IHJldHVybiAwOyB9O1xuIiwiZXhwb3J0IGNsYXNzIEJ1dHRvbiB7XHJcbiAgICAjY29udGFpbmVyOiBIVE1MRWxlbWVudCB8IG51bGw7XHJcbiAgICAjc3Jjczogc3RyaW5nW107XHJcbiAgICAjY2FsbGJhY2s6IENhbGxhYmxlRnVuY3Rpb247XHJcbiAgICAjaW1nOiBhbnk7XHJcbiAgICAjc3RhdGU6IG51bWJlciA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZywgc3Jjczogc3RyaW5nW10sIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI3NyY3MgPSBzcmNzO1xyXG4gICAgICAgIHRoaXMuI2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgaWYgKHRoaXMuI2NvbnRhaW5lciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJpbWdcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZy5zcmMgPSB0aGlzLiNzcmNzW3RoaXMuI3N0YXRlXTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuI2ltZyk7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgKCkgPT4gdGhpcy4jb25DbGljaygpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2V0U3RhdGUoc3RhdGU6IG51bWJlcikge1xyXG4gICAgICAgIGlmIChzdGF0ZSA8IHRoaXMuI3NyY3MubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI3N0YXRlID0gc3RhdGU7XHJcbiAgICAgICAgICAgIHRoaXMuI2ltZy5zcmMgPSB0aGlzLiNzcmNzW3RoaXMuI3N0YXRlXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdGUoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI3N0YXRlO1xyXG4gICAgfVxyXG5cclxuICAgICNvbkNsaWNrKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNpbWcgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHRoaXMuI3N0YXRlIDwgdGhpcy4jc3Jjcy5sZW5ndGggLSAxID8gdGhpcy4jc3RhdGUgKyAxIDogMCk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiNjYWxsYmFjaylcclxuICAgICAgICAgICAgICAgIHRoaXMuI2NhbGxiYWNrKHRoaXMuI3N0YXRlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJleHBvcnQgY2xhc3MgRHJvcGRvd24ge1xyXG4gICAgI2NvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBudWxsO1xyXG4gICAgI29wdGlvbnM6IHN0cmluZ1tdO1xyXG4gICAgI29wZW4/OiBib29sZWFuO1xyXG4gICAgI2NvbnRlbnQ/OiBIVE1MRWxlbWVudDtcclxuICAgICNjYWxsYmFjaz86IENhbGxhYmxlRnVuY3Rpb247XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZywgb3B0aW9uczogc3RyaW5nW10sIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI29wdGlvbnMgPSBvcHRpb25zO1xyXG4gICAgICAgIHRoaXMuI2NhbGxiYWNrID0gY2FsbGJhY2s7XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpXHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyPy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID8gdGhpcy5jbG9zZSgpIDogdGhpcy5vcGVuKCk7XHJcbiAgICAgICAgfSlcclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwgJiYgdGhpcy4jb3B0aW9ucy5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuaW5uZXJIVE1MID0gdGhpcy4jb3B0aW9uc1swXTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLW9wZW5cIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5jbGFzc0xpc3QucmVtb3ZlKFwib2x5bXB1cy1kcm9wZG93bi1jbG9zZWRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRlbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xyXG4gICAgICAgICAgICB0aGlzLiNjb250ZW50LmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLWNvbnRlbnRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRlbnQuc3R5bGUud2lkdGggPSAodGhpcy4jY29udGFpbmVyLm9mZnNldFdpZHRoIC0gdGhpcy4jY29udGFpbmVyLm9mZnNldEhlaWdodCkgKyBcInB4XCI7XHJcblxyXG4gICAgICAgICAgICB0aGlzLiNjb250ZW50LnN0eWxlLmxlZnQgPSB0aGlzLiNjb250YWluZXIub2Zmc2V0TGVmdCArIFwicHhcIjtcclxuICAgICAgICAgICAgdGhpcy4jY29udGVudC5zdHlsZS50b3AgPSB0aGlzLiNjb250YWluZXIub2Zmc2V0VG9wICsgdGhpcy4jY29udGFpbmVyLm9mZnNldEhlaWdodCArIFwicHhcIjtcclxuICAgICAgICAgICAgY29uc29sZS5sb2codGhpcy4jY29udGFpbmVyKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0aGlzLiNjb250ZW50KTtcclxuXHJcbiAgICAgICAgICAgIHZhciBoZWlnaHQgPSAyO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBvcHRpb25JRCBpbiB0aGlzLiNvcHRpb25zKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgbm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XHJcbiAgICAgICAgICAgICAgICBub2RlLmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLWRyb3Bkb3duLWVsZW1lbnRcIik7XHJcbiAgICAgICAgICAgICAgICBub2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHRoaXMuI29wdGlvbnNbb3B0aW9uSURdKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiNjb250ZW50LmFwcGVuZENoaWxkKG5vZGUpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0ICs9IG5vZGUub2Zmc2V0SGVpZ2h0ICsgMjtcclxuICAgICAgICAgICAgICAgIG5vZGUuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbClcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmlubmVySFRNTCA9IHRoaXMuI29wdGlvbnNbb3B0aW9uSURdO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLiNjYWxsYmFjayAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLiNjYWxsYmFjayh0aGlzLiNvcHRpb25zW29wdGlvbklEXSlcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4jY29udGVudC5zdHlsZS5oZWlnaHQgPSBoZWlnaHQgKyBcInB4XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsb3NlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNvcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lcj8uY2xhc3NMaXN0LnJlbW92ZShcIm9seW1wdXMtZHJvcGRvd24tb3BlblwiKTtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyPy5jbGFzc0xpc3QuYWRkKFwib2x5bXB1cy1kcm9wZG93bi1jbG9zZWRcIik7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiNjb250ZW50ICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRoaXMuI2NvbnRlbnQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImltcG9ydCB7IExhdExuZyB9IGZyb20gXCJsZWFmbGV0XCI7XHJcbmltcG9ydCB7IHNldEFjdGl2ZUNvYWxpdGlvbiB9IGZyb20gXCIuLlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvblNjcm9sbCB7XHJcbiAgICAjY29udGFpbmVyOiBIVE1MRWxlbWVudCB8IG51bGw7XHJcbiAgICAjZGlzcGxheTogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGlkOiBzdHJpbmcsKSB7XHJcbiAgICAgICAgdGhpcy4jY29udGFpbmVyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpO1xyXG4gICAgICAgIHRoaXMuI2Rpc3BsYXkgPSAnJztcclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoXCIjY29hbGl0aW9uLXN3aXRjaFwiKT8uYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgKGUpID0+IHRoaXMuI29uU3dpdGNoKGUpKVxyXG4gICAgICAgICAgICB0aGlzLiNkaXNwbGF5ID0gdGhpcy4jY29udGFpbmVyLnN0eWxlLmRpc3BsYXk7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzaG93KHg6IG51bWJlciwgeTogbnVtYmVyLCBvcHRpb25zOiBhbnksIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uLCBzaG93Q29hbGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgLyogSGlkZSB0byByZW1vdmUgYnV0dG9ucywgaWYgcHJlc2VudCAqL1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwgJiYgb3B0aW9ucy5sZW5ndGggPj0gMSkge1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUuZGlzcGxheSA9IHRoaXMuI2Rpc3BsYXk7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5zdHlsZS5sZWZ0ID0geCAtIDExMCArIFwicHhcIjtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnN0eWxlLnRvcCA9IHkgLSAxMTAgKyBcInB4XCI7XHJcbiAgICAgICAgICAgIHZhciBzY3JvbGwgPSB0aGlzLiNjb250YWluZXIucXVlcnlTZWxlY3RvcihcIi5vbHltcHVzLXNlbGVjdGlvbi1zY3JvbGxcIik7XHJcbiAgICAgICAgICAgIGlmIChzY3JvbGwgIT0gbnVsbClcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgZm9yIChsZXQgb3B0aW9uSUQgaW4gb3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBub2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKTtcclxuICAgICAgICAgICAgICAgICAgICBub2RlLmNsYXNzTGlzdC5hZGQoXCJvbHltcHVzLXNlbGVjdGlvbi1zY3JvbGwtZWxlbWVudFwiKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnNbb3B0aW9uSURdID09PSAnc3RyaW5nJyB8fCBvcHRpb25zW29wdGlvbklEXSBpbnN0YW5jZW9mIFN0cmluZyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5vZGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUob3B0aW9uc1tvcHRpb25JRF0pKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbm9kZS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IGNhbGxiYWNrKG9wdGlvbnNbb3B0aW9uSURdKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKG9wdGlvbnNbb3B0aW9uSURdLnRvb2x0aXApKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbm9kZS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IG9wdGlvbnNbb3B0aW9uSURdLmNhbGxiYWNrKCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBzY3JvbGwuYXBwZW5kQ2hpbGQobm9kZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZSgpIHtcclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgdmFyIGJ1dHRvbnMgPSB0aGlzLiNjb250YWluZXIucXVlcnlTZWxlY3RvckFsbChcIi5vbHltcHVzLXNlbGVjdGlvbi1zY3JvbGwtZWxlbWVudFwiKTtcclxuICAgICAgICAgICAgdmFyIHNjcm9sbCA9IHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFwiLm9seW1wdXMtc2VsZWN0aW9uLXNjcm9sbFwiKTtcclxuICAgICAgICAgICAgaWYgKHNjcm9sbCAhPSBudWxsKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBjaGlsZCBvZiBidXR0b25zKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsLnJlbW92ZUNoaWxkKGNoaWxkKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjb25Td2l0Y2goZTogYW55KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2NvbnRhaW5lciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIGlmIChlLmN1cnJlbnRUYXJnZXQuY2hlY2tlZCkge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWFjdGl2ZS1jb2FsaXRpb24tY29sb3InLCBnZXRDb21wdXRlZFN0eWxlKHRoaXMuI2NvbnRhaW5lcikuZ2V0UHJvcGVydHlWYWx1ZShcIi0tcmVkLWNvYWxpdGlvbi1jb2xvclwiKSk7XHJcbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVDb2FsaXRpb24oXCJyZWRcIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tYWN0aXZlLWNvYWxpdGlvbi1jb2xvcicsIGdldENvbXB1dGVkU3R5bGUodGhpcy4jY29udGFpbmVyKS5nZXRQcm9wZXJ0eVZhbHVlKFwiLS1ibHVlLWNvYWxpdGlvbi1jb2xvclwiKSk7XHJcbiAgICAgICAgICAgICAgICBzZXRBY3RpdmVDb2FsaXRpb24oXCJibHVlXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiaW1wb3J0IHsgZ2V0QWN0aXZlQ29hbGl0aW9uLCBzZXRBY3RpdmVDb2FsaXRpb24gfSBmcm9tIFwiLi5cIjtcclxuaW1wb3J0IHsgZGVnMnJhZCB9IGZyb20gXCIuLi9vdGhlci91dGlsc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvbldoZWVsIHtcclxuICAgICNjb250YWluZXI6IEhUTUxFbGVtZW50IHwgbnVsbDtcclxuICAgICNkaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuI2NvbnRhaW5lciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcclxuICAgICAgICB0aGlzLiNkaXNwbGF5ID0gJyc7XHJcbiAgICAgICAgaWYgKHRoaXMuI2NvbnRhaW5lciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFwiI2NvYWxpdGlvbi1zd2l0Y2hcIik/LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlKSA9PiB0aGlzLiNvblN3aXRjaChlKSlcclxuICAgICAgICAgICAgdGhpcy4jZGlzcGxheSA9IHRoaXMuI2NvbnRhaW5lci5zdHlsZS5kaXNwbGF5O1xyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2hvdyh4OiBudW1iZXIsIHk6IG51bWJlciwgb3B0aW9uczogYW55LCBzaG93Q29hbGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgLyogSGlkZSB0byByZW1vdmUgYnV0dG9ucywgaWYgcHJlc2VudCAqL1xyXG4gICAgICAgIHRoaXMuaGlkZSgpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4jY29udGFpbmVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSB0aGlzLiNkaXNwbGF5O1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUubGVmdCA9IHggLSAxMTAgKyBcInB4XCI7XHJcbiAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5zdHlsZS50b3AgPSB5IC0gMTEwICsgXCJweFwiO1xyXG5cclxuICAgICAgICAgICAgdmFyIGFuZ3VsYXJTaXplID0gMzYwIC8gb3B0aW9ucy5sZW5ndGg7XHJcbiAgICAgICAgICAgIHZhciByID0gODA7XHJcblxyXG4gICAgICAgICAgICAvKiBDcmVhdGUgdGhlIGJ1dHRvbnMgKi9cclxuICAgICAgICAgICAgZm9yIChsZXQgaWQgaW4gb3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgdmFyIGJ1dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uY2xhc3NMaXN0LmFkZChcInNlbGVjdGlvbi13aGVlbC1idXR0b25cIik7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUubGVmdCA9IHggLSAyNSArIFwicHhcIjtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbi5zdHlsZS50b3AgPSB5IC0gMjUgKyBcInB4XCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZSkgPT4gb3B0aW9uc1tpZF0uY2FsbGJhY2soZSkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jY29udGFpbmVyLmFwcGVuZENoaWxkKGJ1dHRvbik7XHJcbiAgICAgICAgICAgICAgICB2YXIgYW5nbGUgPSBwYXJzZUludChpZCkgKiBhbmd1bGFyU2l6ZTtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbi5zdHlsZS5vcGFjaXR5ID0gXCIxXCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUubGVmdCA9IHggKyByICogTWF0aC5zaW4oZGVnMnJhZChhbmdsZSkpIC0gMjUgKyBcInB4XCI7XHJcbiAgICAgICAgICAgICAgICBidXR0b24uc3R5bGUudG9wID0geSAtIHIgKiBNYXRoLmNvcyhkZWcycmFkKGFuZ2xlKSkgLSAyNSArIFwicHhcIjtcclxuXHJcbiAgICAgICAgICAgICAgICB2YXIgaW1hZ2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW1nXCIpO1xyXG4gICAgICAgICAgICAgICAgaW1hZ2UuY2xhc3NMaXN0LmFkZChcInNlbGVjdGlvbi13aGVlbC1pbWFnZVwiKTtcclxuICAgICAgICAgICAgICAgIGltYWdlLnNyYyA9IGBpbWFnZXMvYnV0dG9ucy8ke29wdGlvbnNbaWRdLnNyY31gXHJcbiAgICAgICAgICAgICAgICBpbWFnZS50aXRsZSA9IG9wdGlvbnNbaWRdLnRvb2x0aXA7XHJcbiAgICAgICAgICAgICAgICBpZiAoJ3RpbnQnIGluIG9wdGlvbnNbaWRdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgb3B0aW9uc1tpZF0udGludCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2Uuc3R5bGUub3BhY2l0eSA9IFwiMFwiO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYnV0dG9uLmFwcGVuZENoaWxkKGltYWdlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLyogSGlkZSB0aGUgY29hbGl0aW9uIHN3aXRjaCBpZiByZXF1aXJlZCAqL1xyXG4gICAgICAgICAgICB2YXIgc3dpdGNoQ29udGFpbmVyID0gPEhUTUxFbGVtZW50PnRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yKFwiI2NvYWxpdGlvbi1zd2l0Y2gtY29udGFpbmVyXCIpO1xyXG4gICAgICAgICAgICBpZiAoc2hvd0NvYWxpdGlvbiA9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgc3dpdGNoQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLW5ldXRyYWwtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHN3aXRjaENvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gXCJibG9ja1wiO1xyXG4gICAgICAgICAgICAgICAgaWYgKGdldEFjdGl2ZUNvYWxpdGlvbigpID09IFwiYmx1ZVwiKVxyXG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLWJsdWUtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tYWN0aXZlLWNvYWxpdGlvbi1jb2xvcicsIGdldENvbXB1dGVkU3R5bGUodGhpcy4jY29udGFpbmVyKS5nZXRQcm9wZXJ0eVZhbHVlKFwiLS1yZWQtY29hbGl0aW9uLWNvbG9yXCIpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoaWRlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLiNjb250YWluZXIuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xyXG4gICAgICAgICAgICB2YXIgYnV0dG9ucyA9IHRoaXMuI2NvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKFwiLnNlbGVjdGlvbi13aGVlbC1idXR0b25cIik7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGNoaWxkIG9mIGJ1dHRvbnMpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2NvbnRhaW5lci5yZW1vdmVDaGlsZChjaGlsZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI29uU3dpdGNoKGU6IGFueSkge1xyXG4gICAgICAgIGlmICh0aGlzLiNjb250YWluZXIgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBpZiAoZS5jdXJyZW50VGFyZ2V0LmNoZWNrZWQpIHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1hY3RpdmUtY29hbGl0aW9uLWNvbG9yJywgZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLiNjb250YWluZXIpLmdldFByb3BlcnR5VmFsdWUoXCItLXJlZC1jb2FsaXRpb24tY29sb3JcIikpO1xyXG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlQ29hbGl0aW9uKFwicmVkXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLWFjdGl2ZS1jb2FsaXRpb24tY29sb3InLCBnZXRDb21wdXRlZFN0eWxlKHRoaXMuI2NvbnRhaW5lcikuZ2V0UHJvcGVydHlWYWx1ZShcIi0tYmx1ZS1jb2FsaXRpb24tY29sb3JcIikpO1xyXG4gICAgICAgICAgICAgICAgc2V0QWN0aXZlQ29hbGl0aW9uKFwiYmx1ZVwiKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCdcclxuaW1wb3J0IHsgZ2V0VW5pdHNNYW5hZ2VyLCBzZXRDb25uZWN0ZWQgfSBmcm9tICcuLic7XHJcbmltcG9ydCB7IENvbnZlcnRERFRvRE1TIH0gZnJvbSAnLi4vb3RoZXIvdXRpbHMnO1xyXG5cclxuLyogRWRpdCBoZXJlIHRvIGNoYW5nZSBzZXJ2ZXIgYWRkcmVzcyAqL1xyXG52YXIgUkVTVGFkZHJlc3MgPSBcImh0dHA6Ly9sb2NhbGhvc3Q6MzAwMDAvcmVzdGRlbW9cIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXREYXRhRnJvbURDUyhjYWxsYmFjazogQ2FsbGFibGVGdW5jdGlvbikge1xyXG4gICAgLyogUmVxdWVzdCB0aGUgdXBkYXRlZCB1bml0IGRhdGEgZnJvbSB0aGUgc2VydmVyICovXHJcbiAgICB2YXIgeG1sSHR0cCA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeG1sSHR0cC5vcGVuKFwiR0VUXCIsIFJFU1RhZGRyZXNzLCB0cnVlKTtcclxuXHJcbiAgICB4bWxIdHRwLm9ubG9hZCA9IGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgdmFyIGRhdGEgPSBKU09OLnBhcnNlKHhtbEh0dHAucmVzcG9uc2VUZXh0KTtcclxuICAgICAgICBjYWxsYmFjayhkYXRhKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWQodHJ1ZSk7XHJcbiAgICB9O1xyXG5cclxuICAgIHhtbEh0dHAub25lcnJvciA9IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKFwiQW4gZXJyb3Igb2NjdXJyZWQgZHVyaW5nIHRoZSBYTUxIdHRwUmVxdWVzdFwiKTtcclxuICAgICAgICBzZXRDb25uZWN0ZWQoZmFsc2UpO1xyXG4gICAgfTtcclxuICAgIHhtbEh0dHAuc2VuZChudWxsKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFkZERlc3RpbmF0aW9uKElEOiBudW1iZXIsIHBhdGg6IGFueSkge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHsgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJJRFwiOiBJRCwgXCJwYXRoXCI6IHBhdGggfVxyXG4gICAgdmFyIGRhdGEgPSB7IFwic2V0UGF0aFwiOiBjb21tYW5kIH1cclxuXHJcbiAgICB4aHIuc2VuZChKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzcGF3blNtb2tlKGNvbG9yOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcpIHtcclxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcclxuICAgIHhoci5vcGVuKFwiUFVUXCIsIFJFU1RhZGRyZXNzKTtcclxuICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiQWRkZWQgXCIgKyBjb2xvciArIFwiIHNtb2tlIGF0IFwiICsgQ29udmVydEREVG9ETVMobGF0bG5nLmxhdCwgZmFsc2UpICsgXCIgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubG5nLCB0cnVlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJjb2xvclwiOiBjb2xvciwgXCJsb2NhdGlvblwiOiBsYXRsbmcgfTtcclxuICAgIHZhciBkYXRhID0geyBcInNtb2tlXCI6IGNvbW1hbmQgfVxyXG5cclxuICAgIHhoci5zZW5kKEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNwYXduR3JvdW5kVW5pdCh0eXBlOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcsIGNvYWxpdGlvbjogc3RyaW5nKSB7XHJcbiAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICB4aHIub3BlbihcIlBVVFwiLCBSRVNUYWRkcmVzcyk7XHJcbiAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLCBcImFwcGxpY2F0aW9uL2pzb25cIik7XHJcbiAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIkFkZGVkIFwiICsgY29hbGl0aW9uICsgXCIgXCIgKyB0eXBlICsgXCIgYXQgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubGF0LCBmYWxzZSkgKyBcIiBcIiArIENvbnZlcnRERFRvRE1TKGxhdGxuZy5sbmcsIHRydWUpKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHZhciBjb21tYW5kID0geyBcInR5cGVcIjogdHlwZSwgXCJsb2NhdGlvblwiOiBsYXRsbmcsIFwiY29hbGl0aW9uXCI6IGNvYWxpdGlvbiB9O1xyXG4gICAgdmFyIGRhdGEgPSB7IFwic3Bhd25Hcm91bmRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3Bhd25BaXJjcmFmdCh0eXBlOiBzdHJpbmcsIGxhdGxuZzogTC5MYXRMbmcsIGNvYWxpdGlvbjogc3RyaW5nLCBwYXlsb2FkTmFtZTogc3RyaW5nIHwgbnVsbCA9IG51bGwsIGFpcmJhc2VOYW1lOiBzdHJpbmcgfCBudWxsID0gbnVsbCkge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJBZGRlZCBcIiArIGNvYWxpdGlvbiArIFwiIFwiICsgdHlwZSArIFwiIGF0IFwiICsgQ29udmVydEREVG9ETVMobGF0bG5nLmxhdCwgZmFsc2UpICsgXCIgXCIgKyBDb252ZXJ0RERUb0RNUyhsYXRsbmcubG5nLCB0cnVlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICB2YXIgY29tbWFuZCA9IHsgXCJ0eXBlXCI6IHR5cGUsIFwibG9jYXRpb25cIjogbGF0bG5nLCBcImNvYWxpdGlvblwiOiBjb2FsaXRpb24sIFwicGF5bG9hZE5hbWVcIjogcGF5bG9hZE5hbWUgIT0gbnVsbD8gcGF5bG9hZE5hbWU6IFwiXCIsIFwiYWlyYmFzZU5hbWVcIjogYWlyYmFzZU5hbWUgIT0gbnVsbD8gYWlyYmFzZU5hbWU6IFwiXCJ9O1xyXG4gICAgdmFyIGRhdGEgPSB7IFwic3Bhd25BaXJcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXR0YWNrVW5pdChJRDogbnVtYmVyLCB0YXJnZXRJRDogbnVtYmVyKSB7XHJcbiAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICB4aHIub3BlbihcIlBVVFwiLCBSRVNUYWRkcmVzcyk7XHJcbiAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLCBcImFwcGxpY2F0aW9uL2pzb25cIik7XHJcbiAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhcIlVuaXQgXCIgKyBnZXRVbml0c01hbmFnZXIoKS5nZXRVbml0QnlJRChJRCkudW5pdE5hbWUgKyBcIiBhdHRhY2sgXCIgKyBnZXRVbml0c01hbmFnZXIoKS5nZXRVbml0QnlJRCh0YXJnZXRJRCkudW5pdE5hbWUpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdmFyIGNvbW1hbmQgPSB7IFwiSURcIjogSUQsIFwidGFyZ2V0SURcIjogdGFyZ2V0SUQgfTtcclxuICAgIHZhciBkYXRhID0geyBcImF0dGFja1VuaXRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVVbml0KElEOiBudW1iZXIpIHtcclxuICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcclxuICAgIHhoci5vcGVuKFwiUFVUXCIsIFJFU1RhZGRyZXNzKTtcclxuICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSAoKSA9PiB7XHJcbiAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwiVW5pdCBcIiArIGdldFVuaXRzTWFuYWdlcigpLmdldFVuaXRCeUlEKElEKS51bml0TmFtZSArIFwiIGNsb25lZFwiKTtcclxuICAgICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIHZhciBjb21tYW5kID0geyBcIklEXCI6IElEIH07XHJcbiAgICB2YXIgZGF0YSA9IHsgXCJjbG9uZVVuaXRcIjogY29tbWFuZCB9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2hhbmdlU3BlZWQoSUQ6IG51bWJlciwgc3BlZWRDaGFuZ2U6IHN0cmluZykge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZ2V0VW5pdHNNYW5hZ2VyKCkuZ2V0VW5pdEJ5SUQoSUQpLnVuaXROYW1lICsgXCIgc3BlZWQgY2hhbmdlIHJlcXVlc3Q6IFwiICsgc3BlZWRDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbiAgIFxyXG4gICAgdmFyIGNvbW1hbmQgPSB7XCJJRFwiOiBJRCwgXCJjaGFuZ2VcIjogc3BlZWRDaGFuZ2V9XHJcbiAgICB2YXIgZGF0YSA9IHtcImNoYW5nZVNwZWVkXCI6IGNvbW1hbmR9XHJcbiAgIFxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2hhbmdlQWx0aXR1ZGUoSUQ6IG51bWJlciwgYWx0aXR1ZGVDaGFuZ2U6IHN0cmluZykge1xyXG4gICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LVR5cGVcIiwgXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xyXG4gICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZ2V0VW5pdHNNYW5hZ2VyKCkuZ2V0VW5pdEJ5SUQoSUQpLnVuaXROYW1lICsgXCIgYWx0aXR1ZGUgY2hhbmdlIHJlcXVlc3Q6IFwiICsgYWx0aXR1ZGVDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgdmFyIGNvbW1hbmQgPSB7XCJJRFwiOiBJRCwgXCJjaGFuZ2VcIjogYWx0aXR1ZGVDaGFuZ2V9XHJcbiAgICB2YXIgZGF0YSA9IHtcImNoYW5nZUFsdGl0dWRlXCI6IGNvbW1hbmR9XHJcblxyXG4gICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG59IiwiaW1wb3J0IHsgTWFwIH0gZnJvbSBcIi4vbWFwL21hcFwiXHJcbmltcG9ydCB7IGdldERhdGFGcm9tRENTIH0gZnJvbSBcIi4vZGNzL2Rjc1wiXHJcbmltcG9ydCB7IFNlbGVjdGlvbldoZWVsIH0gZnJvbSBcIi4vY29udHJvbHMvc2VsZWN0aW9ud2hlZWxcIjtcclxuaW1wb3J0IHsgVW5pdHNNYW5hZ2VyIH0gZnJvbSBcIi4vdW5pdHMvdW5pdHNtYW5hZ2VyXCI7XHJcbmltcG9ydCB7IFVuaXRJbmZvUGFuZWwgfSBmcm9tIFwiLi9wYW5lbHMvdW5pdGluZm9wYW5lbFwiO1xyXG5pbXBvcnQgeyBTZWxlY3Rpb25TY3JvbGwgfSBmcm9tIFwiLi9jb250cm9scy9zZWxlY3Rpb25zY3JvbGxcIjtcclxuaW1wb3J0IHsgRHJvcGRvd24gfSBmcm9tIFwiLi9jb250cm9scy9kcm9wZG93blwiO1xyXG5pbXBvcnQgeyBDb25uZWN0aW9uU3RhdHVzUGFuZWwgfSBmcm9tIFwiLi9wYW5lbHMvY29ubmVjdGlvbnN0YXR1c3BhbmVsXCI7XHJcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gXCIuL2NvbnRyb2xzL2J1dHRvblwiO1xyXG5pbXBvcnQgeyBNaXNzaW9uRGF0YSB9IGZyb20gXCIuL21pc3Npb25kYXRhL21pc3Npb25kYXRhXCI7XHJcblxyXG4vKiBUT0RPOiBzaG91bGQgdGhpcyBiZSBhIGNsYXNzPyAqL1xyXG52YXIgbWFwOiBNYXA7XHJcbnZhciBzZWxlY3Rpb25XaGVlbDogU2VsZWN0aW9uV2hlZWw7XHJcbnZhciBzZWxlY3Rpb25TY3JvbGw6IFNlbGVjdGlvblNjcm9sbDtcclxudmFyIHVuaXRzTWFuYWdlcjogVW5pdHNNYW5hZ2VyO1xyXG52YXIgdW5pdEluZm9QYW5lbDogVW5pdEluZm9QYW5lbDtcclxudmFyIGFjdGl2ZUNvYWxpdGlvbjogc3RyaW5nO1xyXG52YXIgc2NlbmFyaW9Ecm9wZG93bjogRHJvcGRvd247XHJcbnZhciBtYXBTb3VyY2VEcm9wZG93bjogRHJvcGRvd247XHJcbnZhciBjb25uZWN0ZWQ6IGJvb2xlYW47XHJcbnZhciBjb25uZWN0aW9uU3RhdHVzUGFuZWw6IENvbm5lY3Rpb25TdGF0dXNQYW5lbDtcclxudmFyIG1pc3Npb25EYXRhOiBNaXNzaW9uRGF0YTtcclxuXHJcbnZhciBzbG93QnV0dG9uOiBCdXR0b247XHJcbnZhciBmYXN0QnV0dG9uOiBCdXR0b247XHJcbnZhciBjbGltYkJ1dHRvbjogQnV0dG9uO1xyXG52YXIgZGVzY2VuZEJ1dHRvbjogQnV0dG9uO1xyXG52YXIgdXNlclZpc2liaWxpdHlCdXR0b246IEJ1dHRvbjtcclxudmFyIGFpVmlzaWJpbGl0eUJ1dHRvbjogQnV0dG9uO1xyXG52YXIgd2VhcG9uVmlzaWJpbGl0eUJ1dHRvbjogQnV0dG9uO1xyXG52YXIgZGVhZFZpc2liaWxpdHlCdXR0b246IEJ1dHRvbjtcclxuXHJcbmZ1bmN0aW9uIHNldHVwKCkge1xyXG4gICAgLyogSW5pdGlhbGl6ZSAqL1xyXG4gICAgbWFwID0gbmV3IE1hcCgnbWFwLWNvbnRhaW5lcicpO1xyXG4gICAgc2VsZWN0aW9uV2hlZWwgPSBuZXcgU2VsZWN0aW9uV2hlZWwoXCJzZWxlY3Rpb24td2hlZWxcIik7XHJcbiAgICBzZWxlY3Rpb25TY3JvbGwgPSBuZXcgU2VsZWN0aW9uU2Nyb2xsKFwic2VsZWN0aW9uLXNjcm9sbFwiKTtcclxuICAgIHVuaXRzTWFuYWdlciA9IG5ldyBVbml0c01hbmFnZXIoKTtcclxuICAgIHVuaXRJbmZvUGFuZWwgPSBuZXcgVW5pdEluZm9QYW5lbChcInVuaXQtaW5mby1wYW5lbFwiKTtcclxuICAgIHNjZW5hcmlvRHJvcGRvd24gPSBuZXcgRHJvcGRvd24oXCJzY2VuYXJpby1kcm9wZG93blwiLCBbXCJDYXVjYXN1c1wiLCBcIlN5cmlhXCIsIFwiTWFyaWFuYXNcIiwgXCJOZXZhZGFcIiwgXCJTb3V0aCBBdGxhbnRpY1wiLCBcIlRoZSBjaGFubmVsXCJdLCAoKSA9PiB7IH0pO1xyXG4gICAgbWFwU291cmNlRHJvcGRvd24gPSBuZXcgRHJvcGRvd24oXCJtYXAtc291cmNlLWRyb3Bkb3duXCIsIG1hcC5nZXRMYXllcnMoKSwgKG9wdGlvbjogc3RyaW5nKSA9PiBtYXAuc2V0TGF5ZXIob3B0aW9uKSk7XHJcbiAgICBjb25uZWN0aW9uU3RhdHVzUGFuZWwgPSBuZXcgQ29ubmVjdGlvblN0YXR1c1BhbmVsKFwiY29ubmVjdGlvbi1zdGF0dXMtcGFuZWxcIik7XHJcbiAgICBtaXNzaW9uRGF0YSA9IG5ldyBNaXNzaW9uRGF0YSgpO1xyXG5cclxuICAgIC8qIFVuaXQgY29udHJvbCBidXR0b25zICovXHJcbiAgICBzbG93QnV0dG9uID0gbmV3IEJ1dHRvbihcInNsb3ctYnV0dG9uXCIsIFtcImltYWdlcy9idXR0b25zL3Nsb3cuc3ZnXCJdLCAoKSA9PiB7IGdldFVuaXRzTWFuYWdlcigpLnNlbGVjdGVkVW5pdHNDaGFuZ2VTcGVlZChcInNsb3dcIik7IH0pO1xyXG4gICAgZmFzdEJ1dHRvbiA9IG5ldyBCdXR0b24oXCJmYXN0LWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9mYXN0LnN2Z1wiXSwgKCkgPT4geyBnZXRVbml0c01hbmFnZXIoKS5zZWxlY3RlZFVuaXRzQ2hhbmdlU3BlZWQoXCJmYXN0XCIpOyB9KTtcclxuICAgIGNsaW1iQnV0dG9uID0gbmV3IEJ1dHRvbihcImNsaW1iLWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9jbGltYi5zdmdcIl0sICgpID0+IHsgZ2V0VW5pdHNNYW5hZ2VyKCkuc2VsZWN0ZWRVbml0c0NoYW5nZUFsdGl0dWRlKFwiY2xpbWJcIik7IH0pO1xyXG4gICAgZGVzY2VuZEJ1dHRvbiA9IG5ldyBCdXR0b24oXCJkZXNjZW5kLWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy9kZXNjZW5kLnN2Z1wiXSwgKCkgPT4geyBnZXRVbml0c01hbmFnZXIoKS5zZWxlY3RlZFVuaXRzQ2hhbmdlQWx0aXR1ZGUoXCJkZXNjZW5kXCIpOyB9KTtcclxuXHJcbiAgICAvKiBWaXNpYmlsaXR5IGJ1dHRvbnMgKi9cclxuICAgIHVzZXJWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcInVzZXItdmlzaWJpbGl0eS1idXR0b25cIiwgW1wiaW1hZ2VzL2J1dHRvbnMvdXNlci1mdWxsLnN2Z1wiLCBcImltYWdlcy9idXR0b25zL3VzZXItcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy91c2VyLW5vbmUuc3ZnXCIsIFwiaW1hZ2VzL2J1dHRvbnMvdXNlci1oaWRkZW4uc3ZnXCJdLCAoKSA9PiB7IH0pO1xyXG4gICAgYWlWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcImFpLXZpc2liaWxpdHktYnV0dG9uXCIsIFtcImltYWdlcy9idXR0b25zL2FpLWZ1bGwuc3ZnXCIsIFwiaW1hZ2VzL2J1dHRvbnMvYWktcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy9haS1ub25lLnN2Z1wiLCBcImltYWdlcy9idXR0b25zL2FpLWhpZGRlbi5zdmdcIl0sICgpID0+IHsgfSk7XHJcbiAgICB3ZWFwb25WaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcIndlYXBvbi12aXNpYmlsaXR5LWJ1dHRvblwiLCBbXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24tcGFydGlhbC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24tbm9uZS5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy93ZWFwb24taGlkZGVuLnN2Z1wiXSwgKCkgPT4geyB9KTtcclxuICAgIGRlYWRWaXNpYmlsaXR5QnV0dG9uID0gbmV3IEJ1dHRvbihcImRlYWQtdmlzaWJpbGl0eS1idXR0b25cIiwgW1wiaW1hZ2VzL2J1dHRvbnMvZGVhZC5zdmdcIiwgXCJpbWFnZXMvYnV0dG9ucy9kZWFkLWhpZGRlbi5zdmdcIl0sICgpID0+IHsgfSk7XHJcblxyXG4gICAgYWlWaXNpYmlsaXR5QnV0dG9uLnNldFN0YXRlKDEpO1xyXG4gICAgd2VhcG9uVmlzaWJpbGl0eUJ1dHRvbi5zZXRTdGF0ZSgxKTtcclxuICAgIGRlYWRWaXNpYmlsaXR5QnV0dG9uLnNldFN0YXRlKDEpO1xyXG5cclxuICAgIC8qIERlZmF1bHQgdmFsdWVzICovXHJcbiAgICBhY3RpdmVDb2FsaXRpb24gPSBcImJsdWVcIjtcclxuICAgIGNvbm5lY3RlZCA9IGZhbHNlO1xyXG5cclxuICAgIHJlcXVlc3RVcGRhdGUoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVxdWVzdFVwZGF0ZSgpIHtcclxuICAgIGdldERhdGFGcm9tRENTKHVwZGF0ZSk7XHJcbiAgICAvKiBNYWluIHVwZGF0ZSByYXRlID0gMjUwbXMgaXMgbWluaW11bSB0aW1lLCBlcXVhbCB0byBzZXJ2ZXIgdXBkYXRlIHRpbWUuICovXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHJlcXVlc3RVcGRhdGUoKSwgZ2V0Q29ubmVjdGVkKCkgPyAyNTAgOiAxMDAwKTtcclxuICAgIGNvbm5lY3Rpb25TdGF0dXNQYW5lbC51cGRhdGUoZ2V0Q29ubmVjdGVkKCkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlKGRhdGE6IEpTT04pIHtcclxuICAgIHVuaXRzTWFuYWdlci51cGRhdGUoZGF0YSk7XHJcbiAgICBtaXNzaW9uRGF0YS51cGRhdGUoZGF0YSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXAoKSB7XHJcbiAgICByZXR1cm4gbWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2VsZWN0aW9uV2hlZWwoKSB7XHJcbiAgICByZXR1cm4gc2VsZWN0aW9uV2hlZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTZWxlY3Rpb25TY3JvbGwoKSB7XHJcbiAgICByZXR1cm4gc2VsZWN0aW9uU2Nyb2xsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VW5pdHNNYW5hZ2VyKCkge1xyXG4gICAgcmV0dXJuIHVuaXRzTWFuYWdlcjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFVuaXRJbmZvUGFuZWwoKSB7XHJcbiAgICByZXR1cm4gdW5pdEluZm9QYW5lbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEFjdGl2ZUNvYWxpdGlvbihuZXdBY3RpdmVDb2FsaXRpb246IHN0cmluZykge1xyXG4gICAgYWN0aXZlQ29hbGl0aW9uID0gbmV3QWN0aXZlQ29hbGl0aW9uO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWN0aXZlQ29hbGl0aW9uKCkge1xyXG4gICAgcmV0dXJuIGFjdGl2ZUNvYWxpdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldENvbm5lY3RlZChuZXdDb25uZWN0ZWQ6IGJvb2xlYW4pIHtcclxuICAgIGNvbm5lY3RlZCA9IG5ld0Nvbm5lY3RlZFxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29ubmVjdGVkKCkge1xyXG4gICAgcmV0dXJuIGNvbm5lY3RlZDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFZpc2liaWxpdHlTZXR0aW5ncygpIHtcclxuICAgIHZhciB2aXNpYmlsaXR5ID0ge1xyXG4gICAgICAgIHVzZXI6IFwiXCIsXHJcbiAgICAgICAgYWk6IFwiXCIsXHJcbiAgICAgICAgd2VhcG9uOiBcIlwiLFxyXG4gICAgICAgIGRlYWQ6IFwiXCJcclxuICAgIH07XHJcblxyXG4gICAgc3dpdGNoICh1c2VyVmlzaWJpbGl0eUJ1dHRvbi5nZXRTdGF0ZSgpKSB7XHJcbiAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcImZ1bGxcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcInBhcnRpYWxcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LnVzZXIgPSBcImhpZGRlblwiOyBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKGFpVmlzaWJpbGl0eUJ1dHRvbi5nZXRTdGF0ZSgpKSB7XHJcbiAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LmFpID0gXCJmdWxsXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5haSA9IFwicGFydGlhbFwiOyBicmVhaztcclxuICAgICAgICBjYXNlIDI6XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHkuYWkgPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LmFpID0gXCJoaWRkZW5cIjsgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgc3dpdGNoICh3ZWFwb25WaXNpYmlsaXR5QnV0dG9uLmdldFN0YXRlKCkpIHtcclxuICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHkud2VhcG9uID0gXCJwYXJ0aWFsXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS53ZWFwb24gPSBcIm5vbmVcIjsgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAyOlxyXG4gICAgICAgICAgICB2aXNpYmlsaXR5LndlYXBvbiA9IFwiaGlkZGVuXCI7IGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIHN3aXRjaCAoZGVhZFZpc2liaWxpdHlCdXR0b24uZ2V0U3RhdGUoKSkge1xyXG4gICAgICAgIGNhc2UgMDpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5kZWFkID0gXCJub25lXCI7IGJyZWFrO1xyXG4gICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgICAgdmlzaWJpbGl0eS5kZWFkID0gXCJoaWRkZW5cIjsgYnJlYWs7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmlzaWJpbGl0eTtcclxufVxyXG5cclxud2luZG93Lm9ubG9hZCA9IHNldHVwOyIsImltcG9ydCB7IE1hcCB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IHsgSGFuZGxlcn0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBEb21VdGlsIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBEb21FdmVudCB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IHsgTGF0TG5nQm91bmRzIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBCb3VuZHMgfSAgZnJvbSAnbGVhZmxldCc7XG5cbmV4cG9ydCB2YXIgQm94U2VsZWN0ID0gSGFuZGxlci5leHRlbmQoe1xuXHRpbml0aWFsaXplOiBmdW5jdGlvbiAobWFwOiBNYXApIHtcblx0XHR0aGlzLl9tYXAgPSBtYXA7XG5cdFx0dGhpcy5fY29udGFpbmVyID0gbWFwLmdldENvbnRhaW5lcigpO1xuXHRcdHRoaXMuX3BhbmUgPSBtYXAuZ2V0UGFuZXMoKS5vdmVybGF5UGFuZTtcblx0XHR0aGlzLl9yZXNldFN0YXRlVGltZW91dCA9IDA7XG5cdFx0bWFwLm9uKCd1bmxvYWQnLCB0aGlzLl9kZXN0cm95LCB0aGlzKTtcblx0fSxcblxuXHRhZGRIb29rczogZnVuY3Rpb24gKCkge1xuXHRcdERvbUV2ZW50Lm9uKHRoaXMuX2NvbnRhaW5lciwgJ21vdXNlZG93bicsIHRoaXMuX29uTW91c2VEb3duLCB0aGlzKTtcblx0fSxcblxuXHRyZW1vdmVIb29rczogZnVuY3Rpb24gKCkge1xuXHRcdERvbUV2ZW50Lm9mZih0aGlzLl9jb250YWluZXIsICdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlRG93biwgdGhpcyk7XG5cdH0sXG5cblx0bW92ZWQ6IGZ1bmN0aW9uICgpIHtcblx0XHRyZXR1cm4gdGhpcy5fbW92ZWQ7XG5cdH0sXG5cblx0X2Rlc3Ryb3k6IGZ1bmN0aW9uICgpIHtcblx0XHREb21VdGlsLnJlbW92ZSh0aGlzLl9wYW5lKTtcblx0XHRkZWxldGUgdGhpcy5fcGFuZTtcblx0fSxcblxuXHRfcmVzZXRTdGF0ZTogZnVuY3Rpb24gKCkge1xuXHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcblx0XHR0aGlzLl9tb3ZlZCA9IGZhbHNlO1xuXHR9LFxuXG5cdF9jbGVhckRlZmVycmVkUmVzZXRTdGF0ZTogZnVuY3Rpb24gKCkge1xuXHRcdGlmICh0aGlzLl9yZXNldFN0YXRlVGltZW91dCAhPT0gMCkge1xuXHRcdFx0Y2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0KTtcblx0XHRcdHRoaXMuX3Jlc2V0U3RhdGVUaW1lb3V0ID0gMDtcblx0XHR9XG5cdH0sXG5cblx0X29uTW91c2VEb3duOiBmdW5jdGlvbiAoZTogYW55KSB7XG5cdFx0aWYgKCgoZS53aGljaCAhPT0gMykgJiYgKGUuYnV0dG9uICE9PSAyKSkpIHsgcmV0dXJuIGZhbHNlOyB9XG5cblx0XHQvLyBDbGVhciB0aGUgZGVmZXJyZWQgcmVzZXRTdGF0ZSBpZiBpdCBoYXNuJ3QgZXhlY3V0ZWQgeWV0LCBvdGhlcndpc2UgaXRcblx0XHQvLyB3aWxsIGludGVycnVwdCB0aGUgaW50ZXJhY3Rpb24gYW5kIG9ycGhhbiBhIGJveCBlbGVtZW50IGluIHRoZSBjb250YWluZXIuXG5cdFx0dGhpcy5fY2xlYXJEZWZlcnJlZFJlc2V0U3RhdGUoKTtcblx0XHR0aGlzLl9yZXNldFN0YXRlKCk7XG5cblx0XHREb21VdGlsLmRpc2FibGVUZXh0U2VsZWN0aW9uKCk7XG5cdFx0RG9tVXRpbC5kaXNhYmxlSW1hZ2VEcmFnKCk7XG5cblx0XHR0aGlzLl9zdGFydFBvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xuXG5cdFx0Ly9AdHMtaWdub3JlXG5cdFx0RG9tRXZlbnQub24oZG9jdW1lbnQsIHtcblx0XHRcdGNvbnRleHRtZW51OiBEb21FdmVudC5zdG9wLFxuXHRcdFx0bW91c2Vtb3ZlOiB0aGlzLl9vbk1vdXNlTW92ZSxcblx0XHRcdG1vdXNldXA6IHRoaXMuX29uTW91c2VVcCxcblx0XHRcdGtleWRvd246IHRoaXMuX29uS2V5RG93blxuXHRcdH0sIHRoaXMpO1xuXHR9LFxuXG5cdF9vbk1vdXNlTW92ZTogZnVuY3Rpb24gKGU6IGFueSkge1xuXHRcdGlmICghdGhpcy5fbW92ZWQpIHtcblx0XHRcdHRoaXMuX21vdmVkID0gdHJ1ZTtcblxuXHRcdFx0dGhpcy5fYm94ID0gRG9tVXRpbC5jcmVhdGUoJ2RpdicsICdsZWFmbGV0LXpvb20tYm94JywgdGhpcy5fY29udGFpbmVyKTtcblx0XHRcdERvbVV0aWwuYWRkQ2xhc3ModGhpcy5fY29udGFpbmVyLCAnbGVhZmxldC1jcm9zc2hhaXInKTtcblxuXHRcdFx0dGhpcy5fbWFwLmZpcmUoJ2JveHpvb21zdGFydCcpO1xuXHRcdH1cblxuXHRcdHRoaXMuX3BvaW50ID0gdGhpcy5fbWFwLm1vdXNlRXZlbnRUb0NvbnRhaW5lclBvaW50KGUpO1xuXG5cdFx0dmFyIGJvdW5kcyA9IG5ldyBCb3VuZHModGhpcy5fcG9pbnQsIHRoaXMuX3N0YXJ0UG9pbnQpLFxuXHRcdCAgICBzaXplID0gYm91bmRzLmdldFNpemUoKTtcblxuXHRcdGlmIChib3VuZHMubWluICE9IHVuZGVmaW5lZClcblx0XHRcdERvbVV0aWwuc2V0UG9zaXRpb24odGhpcy5fYm94LCBib3VuZHMubWluKTtcblxuXHRcdHRoaXMuX2JveC5zdHlsZS53aWR0aCAgPSBzaXplLnggKyAncHgnO1xuXHRcdHRoaXMuX2JveC5zdHlsZS5oZWlnaHQgPSBzaXplLnkgKyAncHgnO1xuXHR9LFxuXG5cdF9maW5pc2g6IGZ1bmN0aW9uICgpIHtcblx0XHRpZiAodGhpcy5fbW92ZWQpIHtcblx0XHRcdERvbVV0aWwucmVtb3ZlKHRoaXMuX2JveCk7XG5cdFx0XHREb21VdGlsLnJlbW92ZUNsYXNzKHRoaXMuX2NvbnRhaW5lciwgJ2xlYWZsZXQtY3Jvc3NoYWlyJyk7XG5cdFx0fVxuXG5cdFx0RG9tVXRpbC5lbmFibGVUZXh0U2VsZWN0aW9uKCk7XG5cdFx0RG9tVXRpbC5lbmFibGVJbWFnZURyYWcoKTtcblxuXHRcdC8vQHRzLWlnbm9yZVxuXHRcdERvbUV2ZW50Lm9mZihkb2N1bWVudCwge1xuXHRcdFx0Y29udGV4dG1lbnU6IERvbUV2ZW50LnN0b3AsXG5cdFx0XHRtb3VzZW1vdmU6IHRoaXMuX29uTW91c2VNb3ZlLFxuXHRcdFx0bW91c2V1cDogdGhpcy5fb25Nb3VzZVVwLFxuXHRcdFx0a2V5ZG93bjogdGhpcy5fb25LZXlEb3duXG5cdFx0fSwgdGhpcyk7XG5cdH0sXG5cblx0X29uTW91c2VVcDogZnVuY3Rpb24gKGU6IGFueSkge1xuXHRcdGlmICgoZS53aGljaCAhPT0gMykgJiYgKGUuYnV0dG9uICE9PSAyKSkgeyByZXR1cm47IH1cblxuXHRcdHRoaXMuX2ZpbmlzaCgpO1xuICAgICAgICBcblx0XHRpZiAoIXRoaXMuX21vdmVkKSB7IHJldHVybjsgfVxuXHRcdC8vIFBvc3Rwb25lIHRvIG5leHQgSlMgdGljayBzbyBpbnRlcm5hbCBjbGljayBldmVudCBoYW5kbGluZ1xuXHRcdC8vIHN0aWxsIHNlZSBpdCBhcyBcIm1vdmVkXCIuXG5cdFx0c2V0VGltZW91dChVdGlsLmJpbmQodGhpcy5fcmVzZXRTdGF0ZSwgdGhpcyksIDApO1xuXHRcdHZhciBib3VuZHMgPSBuZXcgTGF0TG5nQm91bmRzKFxuXHRcdFx0dGhpcy5fbWFwLmNvbnRhaW5lclBvaW50VG9MYXRMbmcodGhpcy5fc3RhcnRQb2ludCksXG5cdFx0XHR0aGlzLl9tYXAuY29udGFpbmVyUG9pbnRUb0xhdExuZyh0aGlzLl9wb2ludCkpO1xuXHRcblx0XHR0aGlzLl9tYXAuZmlyZSgnc2VsZWN0aW9uZW5kJywge3NlbGVjdGlvbkJvdW5kczogYm91bmRzfSk7XG5cdH0sXG5cblx0X29uS2V5RG93bjogZnVuY3Rpb24gKGU6IGFueSkge1xuXHRcdGlmIChlLmtleUNvZGUgPT09IDI3KSB7XG5cdFx0XHR0aGlzLl9maW5pc2goKTtcblx0XHRcdHRoaXMuX2NsZWFyRGVmZXJyZWRSZXNldFN0YXRlKCk7XG5cdFx0XHR0aGlzLl9yZXNldFN0YXRlKCk7XG5cdFx0fVxuXHR9XG59KTtcblxuIiwiaW1wb3J0ICogYXMgTCBmcm9tIFwibGVhZmxldFwiXHJcbmltcG9ydCB7IGdldFNlbGVjdGlvbldoZWVsLCBnZXRTZWxlY3Rpb25TY3JvbGwsIGdldFVuaXRzTWFuYWdlciwgZ2V0QWN0aXZlQ29hbGl0aW9uIH0gZnJvbSBcIi4uXCI7XHJcbmltcG9ydCB7IHNwYXduQWlyY3JhZnQsIHNwYXduR3JvdW5kVW5pdCwgc3Bhd25TbW9rZSB9IGZyb20gXCIuLi9kY3MvZGNzXCI7XHJcbmltcG9ydCB7IHBheWxvYWROYW1lcyB9IGZyb20gXCIuLi91bml0cy9wYXlsb2FkTmFtZXNcIjtcclxuaW1wb3J0IHsgdW5pdFR5cGVzIH0gZnJvbSBcIi4uL3VuaXRzL3VuaXRUeXBlc1wiO1xyXG5pbXBvcnQgeyBCb3hTZWxlY3QgfSBmcm9tIFwiLi9ib3hzZWxlY3RcIjtcclxuXHJcbkwuTWFwLmFkZEluaXRIb29rKCdhZGRIYW5kbGVyJywgJ2JveFNlbGVjdCcsIEJveFNlbGVjdCk7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENsaWNrRXZlbnQge1xyXG4gICAgeDogbnVtYmVyO1xyXG4gICAgeTogbnVtYmVyO1xyXG4gICAgbGF0bG5nOiBMLkxhdExuZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTcGF3bkV2ZW50IGV4dGVuZHMgQ2xpY2tFdmVudHtcclxuICAgIGFpcmJhc2VOYW1lOiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY29hbGl0aW9uSUQ6IG51bWJlciB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNYXAgZXh0ZW5kcyBMLk1hcCB7XHJcbiAgICAjc3RhdGU6IHN0cmluZztcclxuICAgICNsYXllcj86IEwuVGlsZUxheWVyO1xyXG4gICAgI3ByZXZlbnRSaWdodENsaWNrOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICAjcmlnaHRDbGlja1RpbWVyOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKElEOiBzdHJpbmcpIHtcclxuICAgICAgICAvKiBJbml0IHRoZSBsZWFmbGV0IG1hcCAqL1xyXG4gICAgICAgIC8vQHRzLWlnbm9yZVxyXG4gICAgICAgIHN1cGVyKElELCB7IGRvdWJsZUNsaWNrWm9vbTogZmFsc2UsIHpvb21Db250cm9sOiBmYWxzZSwgYm94Wm9vbTogZmFsc2UsIGJveFNlbGVjdDogdHJ1ZSB9KTtcclxuICAgICAgICB0aGlzLnNldFZpZXcoWzM3LjIzLCAtMTE1LjhdLCAxMik7XHJcblxyXG4gICAgICAgIHRoaXMuc2V0TGF5ZXIoXCJBcmNHSVMgU2F0ZWxsaXRlXCIpO1xyXG5cclxuICAgICAgICAvKiBJbml0IHRoZSBzdGF0ZSBtYWNoaW5lICovXHJcbiAgICAgICAgdGhpcy4jc3RhdGUgPSBcIklETEVcIjtcclxuXHJcbiAgICAgICAgLyogUmVnaXN0ZXIgZXZlbnQgaGFuZGxlcyAqL1xyXG4gICAgICAgIHRoaXMub24oXCJjbGlja1wiLCAoZTogYW55KSA9PiB0aGlzLiNvbkNsaWNrKGUpKTtcclxuICAgICAgICB0aGlzLm9uKFwiZGJsY2xpY2tcIiwgKGU6IGFueSkgPT4gdGhpcy4jb25Eb3VibGVDbGljayhlKSk7ICAgICAgXHJcbiAgICAgICAgdGhpcy5vbihcImNvbnRleHRtZW51XCIsIChlOiBhbnkpID0+IHRoaXMuI29uQ29udGV4dE1lbnUoZSkpO1xyXG4gICAgICAgIHRoaXMub24oJ3NlbGVjdGlvbmVuZCcsIChlOiBhbnkpID0+IHRoaXMuI29uU2VsZWN0aW9uRW5kKGUpKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRMYXllcihsYXllck5hbWU6IHN0cmluZykge1xyXG4gICAgICAgIGlmICh0aGlzLiNsYXllciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlTGF5ZXIodGhpcy4jbGF5ZXIpXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAobGF5ZXJOYW1lID09IFwiQXJjR0lTIFNhdGVsbGl0ZVwiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2xheWVyID0gTC50aWxlTGF5ZXIoXCJodHRwczovL3NlcnZlci5hcmNnaXNvbmxpbmUuY29tL0FyY0dJUy9yZXN0L3NlcnZpY2VzL1dvcmxkX0ltYWdlcnkvTWFwU2VydmVyL3RpbGUve3p9L3t5fS97eH1cIiwge1xyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRpb246IFwiVGlsZXMgJmNvcHk7IEVzcmkgJm1kYXNoOyBTb3VyY2U6IEVzcmksIGktY3ViZWQsIFVTREEsIFVTR1MsIEFFWCwgR2VvRXllLCBHZXRtYXBwaW5nLCBBZXJvZ3JpZCwgSUdOLCBJR1AsIFVQUi1FR1AsIGFuZCB0aGUgR0lTIFVzZXIgQ29tbXVuaXR5XCJcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGxheWVyTmFtZSA9PSBcIlVTR1MgVG9wb1wiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2xheWVyID0gTC50aWxlTGF5ZXIoJ2h0dHBzOi8vYmFzZW1hcC5uYXRpb25hbG1hcC5nb3YvYXJjZ2lzL3Jlc3Qvc2VydmljZXMvVVNHU1RvcG8vTWFwU2VydmVyL3RpbGUve3p9L3t5fS97eH0nLCB7XHJcbiAgICAgICAgICAgICAgICBtYXhab29tOiAyMCxcclxuICAgICAgICAgICAgICAgIGF0dHJpYnV0aW9uOiAnVGlsZXMgY291cnRlc3kgb2YgdGhlIDxhIGhyZWY9XCJodHRwczovL3VzZ3MuZ292L1wiPlUuUy4gR2VvbG9naWNhbCBTdXJ2ZXk8L2E+J1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAobGF5ZXJOYW1lID09IFwiT3BlblN0cmVldE1hcCBNYXBuaWtcIikge1xyXG4gICAgICAgICAgICB0aGlzLiNsYXllciA9IEwudGlsZUxheWVyKCdodHRwczovL3RpbGUub3BlbnN0cmVldG1hcC5vcmcve3p9L3t4fS97eX0ucG5nJywge1xyXG4gICAgICAgICAgICAgICAgbWF4Wm9vbTogMTksXHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGlvbjogJyZjb3B5OyA8YSBocmVmPVwiaHR0cHM6Ly93d3cub3BlbnN0cmVldG1hcC5vcmcvY29weXJpZ2h0XCI+T3BlblN0cmVldE1hcDwvYT4gY29udHJpYnV0b3JzJ1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAobGF5ZXJOYW1lID09IFwiT1BFTlZLYXJ0ZVwiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2xheWVyID0gTC50aWxlTGF5ZXIoJ2h0dHBzOi8vdGlsZXNlcnZlci5tZW1vbWFwcy5kZS90aWxlZ2VuL3t6fS97eH0ve3l9LnBuZycsIHtcclxuICAgICAgICAgICAgICAgIG1heFpvb206IDE4LFxyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRpb246ICdNYXAgPGEgaHJlZj1cImh0dHBzOi8vbWVtb21hcHMuZGUvXCI+bWVtb21hcHMuZGU8L2E+IDxhIGhyZWY9XCJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS8yLjAvXCI+Q0MtQlktU0E8L2E+LCBtYXAgZGF0YSAmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL2NvcHlyaWdodFwiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycydcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKGxheWVyTmFtZSA9PSBcIkVzcmkuRGVMb3JtZVwiKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2xheWVyID0gTC50aWxlTGF5ZXIoJ2h0dHBzOi8vc2VydmVyLmFyY2dpc29ubGluZS5jb20vQXJjR0lTL3Jlc3Qvc2VydmljZXMvU3BlY2lhbHR5L0RlTG9ybWVfV29ybGRfQmFzZV9NYXAvTWFwU2VydmVyL3RpbGUve3p9L3t5fS97eH0nLCB7XHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGlvbjogJ1RpbGVzICZjb3B5OyBFc3JpICZtZGFzaDsgQ29weXJpZ2h0OiAmY29weTsyMDEyIERlTG9ybWUnLFxyXG4gICAgICAgICAgICAgICAgbWluWm9vbTogMSxcclxuICAgICAgICAgICAgICAgIG1heFpvb206IDExXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmIChsYXllck5hbWUgPT0gXCJDeWNsT1NNXCIpIHtcclxuICAgICAgICAgICAgdGhpcy4jbGF5ZXIgPSBMLnRpbGVMYXllcignaHR0cHM6Ly97c30udGlsZS1jeWNsb3NtLm9wZW5zdHJlZXRtYXAuZnIvY3ljbG9zbS97en0ve3h9L3t5fS5wbmcnLCB7XHJcbiAgICAgICAgICAgICAgICBtYXhab29tOiAyMCxcclxuICAgICAgICAgICAgICAgIGF0dHJpYnV0aW9uOiAnPGEgaHJlZj1cImh0dHBzOi8vZ2l0aHViLmNvbS9jeWNsb3NtL2N5Y2xvc20tY2FydG9jc3Mtc3R5bGUvcmVsZWFzZXNcIiB0aXRsZT1cIkN5Y2xPU00gLSBPcGVuIEJpY3ljbGUgcmVuZGVyXCI+Q3ljbE9TTTwvYT4gfCBNYXAgZGF0YTogJmNvcHk7IDxhIGhyZWY9XCJodHRwczovL3d3dy5vcGVuc3RyZWV0bWFwLm9yZy9jb3B5cmlnaHRcIj5PcGVuU3RyZWV0TWFwPC9hPiBjb250cmlidXRvcnMnXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNsYXllcj8uYWRkVG8odGhpcyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TGF5ZXJzKCkge1xyXG4gICAgICAgIHJldHVybiBbXCJBcmNHSVMgU2F0ZWxsaXRlXCIsIFwiVVNHUyBUb3BvXCIsIFwiT3BlblN0cmVldE1hcCBNYXBuaWtcIiwgXCJPUEVOVkthcnRlXCIsIFwiRXNyaS5EZUxvcm1lXCIsIFwiQ3ljbE9TTVwiXVxyXG4gICAgfVxyXG5cclxuICAgIC8qIFN0YXRlIG1hY2hpbmUgKi9cclxuICAgIHNldFN0YXRlKHN0YXRlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLiNzdGF0ZSA9IHN0YXRlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy4jc3RhdGUgPT09IFwiSURMRVwiKSB7XHJcbiAgICAgICAgICAgIEwuRG9tVXRpbC5yZW1vdmVDbGFzcyh0aGlzLmdldENvbnRhaW5lcigpLCdjcm9zc2hhaXItY3Vyc29yLWVuYWJsZWQnKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IFwiTU9WRV9VTklUXCIpIHtcclxuICAgICAgICAgICAgTC5Eb21VdGlsLmFkZENsYXNzKHRoaXMuZ2V0Q29udGFpbmVyKCksJ2Nyb3NzaGFpci1jdXJzb3ItZW5hYmxlZCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLiNzdGF0ZSA9PT0gXCJBVFRBQ0tcIikge1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy4jc3RhdGUgPT09IFwiRk9STUFUSU9OXCIpIHtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFN0YXRlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNzdGF0ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTZWxlY3Rpb24gd2hlZWwgKi9cclxuICAgIHNob3dTZWxlY3Rpb25XaGVlbChlOiBDbGlja0V2ZW50IHwgU3Bhd25FdmVudCwgb3B0aW9uczogYW55LCBzaG93Q29hbGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICAgICAgdmFyIHggPSBlLng7XHJcbiAgICAgICAgdmFyIHkgPSBlLnk7XHJcbiAgICAgICAgZ2V0U2VsZWN0aW9uV2hlZWwoKS5zaG93KHgsIHksIG9wdGlvbnMsIHNob3dDb2FsaXRpb24pO1xyXG4gICAgfVxyXG5cclxuICAgIGhpZGVTZWxlY3Rpb25XaGVlbCgpIHtcclxuICAgICAgICBnZXRTZWxlY3Rpb25XaGVlbCgpLmhpZGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBTZWxlY3Rpb24gc2Nyb2xsICovXHJcbiAgICBzaG93U2VsZWN0aW9uU2Nyb2xsKGU6IENsaWNrRXZlbnQgfCBTcGF3bkV2ZW50LCBvcHRpb25zOiBhbnksIGNhbGxiYWNrOiBDYWxsYWJsZUZ1bmN0aW9uLCBzaG93Q29hbGl0aW9uOiBib29sZWFuID0gZmFsc2UpIHtcclxuICAgICAgICB2YXIgeCA9IGUueDtcclxuICAgICAgICB2YXIgeSA9IGUueTtcclxuICAgICAgICBnZXRTZWxlY3Rpb25TY3JvbGwoKS5zaG93KHgsIHksIG9wdGlvbnMsIGNhbGxiYWNrLCBzaG93Q29hbGl0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBoaWRlU2VsZWN0aW9uU2Nyb2xsKCkge1xyXG4gICAgICAgIGdldFNlbGVjdGlvblNjcm9sbCgpLmhpZGUoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBFdmVudCBoYW5kbGVycyAqL1xyXG4gICAgI29uQ2xpY2soZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICBpZiAodGhpcy4jc3RhdGUgPT09IFwiSURMRVwiKSB7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLiNzdGF0ZSA9PT0gXCJNT1ZFX1VOSVRcIikge1xyXG4gICAgICAgICAgICBpZiAoIWUub3JpZ2luYWxFdmVudC5jdHJsS2V5KSB7XHJcbiAgICAgICAgICAgICAgICBnZXRVbml0c01hbmFnZXIoKS5jbGVhckRlc3RpbmF0aW9ucygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGdldFVuaXRzTWFuYWdlcigpLmFkZERlc3RpbmF0aW9uKGUubGF0bG5nKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjb25Eb3VibGVDbGljayhlOiBhbnkpIHtcclxuICAgICAgICB2YXIgc3Bhd25FdmVudDogU3Bhd25FdmVudCA9IHt4OiBlLm9yaWdpbmFsRXZlbnQueCwgeTogZS5vcmlnaW5hbEV2ZW50LnksIGxhdGxuZzogZS5sYXRsbmcsIGFpcmJhc2VOYW1lOiBudWxsLCBjb2FsaXRpb25JRDogbnVsbH07XHJcbiAgICAgICAgaWYgKHRoaXMuI3N0YXRlID09IFwiSURMRVwiKSB7XHJcbiAgICAgICAgICAgIHZhciBvcHRpb25zID0gW1xyXG4gICAgICAgICAgICAgICAgeyBcInRvb2x0aXBcIjogXCJTcGF3biBhaXIgdW5pdFwiLCBcInNyY1wiOiBcInNwYXduQWlyLnBuZ1wiLCBcImNhbGxiYWNrXCI6ICgpID0+IHRoaXMuI2FpcmNyYWZ0U3Bhd25NZW51KHNwYXduRXZlbnQpIH0sXHJcbiAgICAgICAgICAgICAgICB7IFwidG9vbHRpcFwiOiBcIlNwYXduIGdyb3VuZCB1bml0XCIsIFwic3JjXCI6IFwic3Bhd25Hcm91bmQucG5nXCIsIFwiY2FsbGJhY2tcIjogKCkgPT4gdGhpcy4jZ3JvdW5kVW5pdFNwYXduTWVudShzcGF3bkV2ZW50KSB9LFxyXG4gICAgICAgICAgICAgICAgeyBcInRvb2x0aXBcIjogXCJTbW9rZVwiLCBcInNyY1wiOiBcInNwYXduU21va2UucG5nXCIsIFwiY2FsbGJhY2tcIjogKCkgPT4gdGhpcy4jc21va2VTcGF3bk1lbnUoc3Bhd25FdmVudCkgfSxcclxuICAgICAgICAgICAgICAgIC8veyBcInRvb2x0aXBcIjogXCJFeHBsb3Npb25cIiwgXCJzcmNcIjogXCJzcGF3bkV4cGxvc2lvbi5wbmdcIiwgXCJjYWxsYmFja1wiOiAoKSA9PiB0aGlzLiNleHBsb3Npb25TcGF3bk1lbnUoZSkgfVxyXG4gICAgICAgICAgICBdXHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbChzcGF3bkV2ZW50LCBvcHRpb25zLCAoKSA9PiB7fSwgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNvbkNvbnRleHRNZW51KGU6IGFueSkge1xyXG4gICAgICAgIHRoaXMuI3JpZ2h0Q2xpY2tUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuI3ByZXZlbnRSaWdodENsaWNrKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldFN0YXRlKFwiSURMRVwiKTtcclxuICAgICAgICAgICAgICAgIGdldFVuaXRzTWFuYWdlcigpLmRlc2VsZWN0QWxsVW5pdHMoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLiNwcmV2ZW50UmlnaHRDbGljayA9IGZhbHNlO1xyXG4gICAgICAgIH0sIDIwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgI29uU2VsZWN0aW9uRW5kKGU6IGFueSlcclxuICAgIHtcclxuICAgICAgICBjbGVhclRpbWVvdXQodGhpcy4jcmlnaHRDbGlja1RpbWVyKTtcclxuICAgICAgICB0aGlzLiNwcmV2ZW50UmlnaHRDbGljayA9IHRydWU7XHJcbiAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkuc2VsZWN0RnJvbUJvdW5kcyhlLnNlbGVjdGlvbkJvdW5kcyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogU3Bhd24gZnJvbSBhaXIgYmFzZSAqL1xyXG4gICAgc3Bhd25Gcm9tQWlyYmFzZShlOiBTcGF3bkV2ZW50KVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuI2FpcmNyYWZ0U3Bhd25NZW51KGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFNwYXduaW5nIG1lbnVzICovXHJcbiAgICAjZ3JvdW5kVW5pdFNwYXduTWVudShlOiBTcGF3bkV2ZW50KSB7XHJcbiAgICAgICAgdmFyIG9wdGlvbnMgPSBbXHJcbiAgICAgICAgICAgIHsnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnSG93aXR6ZXInLCAgICdzcmMnOiAnc3Bhd25Ib3dpdHplci5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RHcm91bmRVbml0KGUsIFwiSG93aXR6ZXJzXCIpfSxcclxuICAgICAgICAgICAgeydjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdTQU0nLCAgICAgICAgJ3NyYyc6ICdzcGF3blNBTS5wbmcnLCAgICAgICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEdyb3VuZFVuaXQoZSwgXCJTQU1cIil9LFxyXG4gICAgICAgICAgICB7J2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ0lGVicsICAgICAgICAnc3JjJzogJ3NwYXduSUZWLnBuZycsICAgICAgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0R3JvdW5kVW5pdChlLCBcIklGVlwiKX0sXHJcbiAgICAgICAgICAgIHsnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnVGFuaycsICAgICAgICdzcmMnOiAnc3Bhd25UYW5rLnBuZycsICAgICAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RHcm91bmRVbml0KGUsIFwiVGFua3NcIil9LFxyXG4gICAgICAgICAgICB7J2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ01MUlMnLCAgICAgICAnc3JjJzogJ3NwYXduTUxSUy5wbmcnLCAgICAgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0R3JvdW5kVW5pdChlLCBcIk1MUlNcIil9LFxyXG4gICAgICAgICAgICB7J2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ1JhZGFyJywgICAgICAnc3JjJzogJ3NwYXduUmFkYXIucG5nJywgICAgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0R3JvdW5kVW5pdChlLCBcIlJhZGFyXCIpfSxcclxuICAgICAgICAgICAgeydjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdVbmFybWVkJywgICAgJ3NyYyc6ICdzcGF3blVuYXJtZWQucG5nJywgICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEdyb3VuZFVuaXQoZSwgXCJVbmFybWVkXCIpfVxyXG4gICAgICAgIF1cclxuICAgICAgICB0aGlzLnNob3dTZWxlY3Rpb25TY3JvbGwoZSwgb3B0aW9ucywgKCkgPT4ge30sIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgICNzbW9rZVNwYXduTWVudShlOiBTcGF3bkV2ZW50KSB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ1JlZCBzbW9rZScsICAgICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ3JlZCcsIGUubGF0bG5nKX0sICd0aW50JzogJ3JlZCd9LFxyXG4gICAgICAgICAgICB7J3Rvb2x0aXAnOiAnV2hpdGUgc21va2UnLCAgICAnc3JjJzogJ3NwYXduU21va2UucG5nJywgICdjYWxsYmFjayc6ICgpID0+IHt0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpOyB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTsgc3Bhd25TbW9rZSgnd2hpdGUnLCBlLmxhdGxuZyl9LCAndGludCc6ICd3aGl0ZSd9LFxyXG4gICAgICAgICAgICB7J3Rvb2x0aXAnOiAnQmx1ZSBzbW9rZScsICAgICAnc3JjJzogJ3NwYXduU21va2UucG5nJywgICdjYWxsYmFjayc6ICgpID0+IHt0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpOyB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTsgc3Bhd25TbW9rZSgnYmx1ZScsIGUubGF0bG5nKX0sICd0aW50JzogJ2JsdWUnfSxcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ0dyZWVuIHNtb2tlJywgICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ2dyZWVuJywgZS5sYXRsbmcpfSwgJ3RpbnQnOiAnZ3JlZW4nfSxcclxuICAgICAgICAgICAgeyd0b29sdGlwJzogJ09yYW5nZSBzbW9rZScsICAgJ3NyYyc6ICdzcGF3blNtb2tlLnBuZycsICAnY2FsbGJhY2snOiAoKSA9PiB7dGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7IHNwYXduU21va2UoJ29yYW5nZScsIGUubGF0bG5nKX0sICd0aW50JzogJ29yYW5nZSd9LFxyXG4gICAgICAgIF1cclxuICAgICAgICB0aGlzLnNob3dTZWxlY3Rpb25TY3JvbGwoZSwgb3B0aW9ucywgKCkgPT4ge30sIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgICNleHBsb3Npb25TcGF3bk1lbnUoZTogU3Bhd25FdmVudCkge1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAjYWlyY3JhZnRTcGF3bk1lbnUoZTogU3Bhd25FdmVudCkge1xyXG4gICAgICAgIHZhciBvcHRpb25zID0gW1xyXG4gICAgICAgICAgICB7ICdjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdDQVAnLCAnc3JjJzogJ3NwYXduQ0FQLnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEFpcmNyYWZ0KGUsIFwiQ0FQXCIpIH0sXHJcbiAgICAgICAgICAgIHsgJ2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ0NBUycsICdzcmMnOiAnc3Bhd25DQVMucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0QWlyY3JhZnQoZSwgXCJDQVNcIikgfSxcclxuICAgICAgICAgICAgeyAnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnVGFua2VyJywgJ3NyYyc6ICdzcGF3blRhbmtlci5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RBaXJjcmFmdChlLCBcInRhbmtlclwiKSB9LFxyXG4gICAgICAgICAgICB7ICdjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdBV0FDUycsICdzcmMnOiAnc3Bhd25BV0FDUy5wbmcnLCAnY2FsbGJhY2snOiAoKSA9PiB0aGlzLiNzZWxlY3RBaXJjcmFmdChlLCBcImF3YWNzXCIpIH0sXHJcbiAgICAgICAgICAgIHsgJ2NvYWxpdGlvbic6IHRydWUsICd0b29sdGlwJzogJ1N0cmlrZScsICdzcmMnOiAnc3Bhd25TdHJpa2UucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0QWlyY3JhZnQoZSwgXCJzdHJpa2VcIikgfSxcclxuICAgICAgICAgICAgeyAnY29hbGl0aW9uJzogdHJ1ZSwgJ3Rvb2x0aXAnOiAnRHJvbmUnLCAnc3JjJzogJ3NwYXduRHJvbmUucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4gdGhpcy4jc2VsZWN0QWlyY3JhZnQoZSwgXCJkcm9uZVwiKSB9LFxyXG4gICAgICAgICAgICB7ICdjb2FsaXRpb24nOiB0cnVlLCAndG9vbHRpcCc6ICdUcmFuc3BvcnQnLCAnc3JjJzogJ3NwYXduVHJhbnNwb3J0LnBuZycsICdjYWxsYmFjayc6ICgpID0+IHRoaXMuI3NlbGVjdEFpcmNyYWZ0KGUsIFwidHJhbnNwb3J0XCIpIH0sXHJcbiAgICAgICAgXVxyXG4gICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbChlLCBvcHRpb25zLCAoKSA9PiB7fSwgdHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogU2hvdyB1bml0IHNlbGVjdGlvbiBmb3IgYWlyIHVuaXRzICovXHJcbiAgICAjc2VsZWN0QWlyY3JhZnQoZTogU3Bhd25FdmVudCwgZ3JvdXA6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7XHJcbiAgICAgICAgdmFyIG9wdGlvbnMgPSB1bml0VHlwZXMuYWlyW2dyb3VwXTtcclxuICAgICAgICBpZiAob3B0aW9ucyAhPSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIG9wdGlvbnMuc29ydCgpO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgb3B0aW9ucyA9IFtdO1xyXG4gICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbChlLCBvcHRpb25zLCAodW5pdFR5cGU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25XaGVlbCgpO1xyXG4gICAgICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICAgICAgdGhpcy4jdW5pdFNlbGVjdFBheWxvYWQoZSwgdW5pdFR5cGUpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFNob3cgd2VhcG9uIHNlbGVjdGlvbiBmb3IgYWlyIHVuaXRzICovXHJcbiAgICAjdW5pdFNlbGVjdFBheWxvYWQoZTogU3Bhd25FdmVudCwgdW5pdFR5cGU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7XHJcbiAgICAgICAgdmFyIG9wdGlvbnMgPSBbXTtcclxuICAgICAgICBvcHRpb25zID0gcGF5bG9hZE5hbWVzW3VuaXRUeXBlXVxyXG4gICAgICAgIGlmIChvcHRpb25zICE9IHVuZGVmaW5lZCAmJiBvcHRpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgb3B0aW9ucy5zb3J0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd1NlbGVjdGlvblNjcm9sbCh7eDogZS54LCB5OiBlLnksIGxhdGxuZzogZS5sYXRsbmd9LCBvcHRpb25zLCAocGF5bG9hZE5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvblNjcm9sbCgpO1xyXG4gICAgICAgICAgICAgICAgc3Bhd25BaXJjcmFmdCh1bml0VHlwZSwgZS5sYXRsbmcsIGdldEFjdGl2ZUNvYWxpdGlvbigpLCBwYXlsb2FkTmFtZSwgZS5haXJiYXNlTmFtZSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgc3Bhd25BaXJjcmFmdCh1bml0VHlwZSwgZS5sYXRsbmcsIGdldEFjdGl2ZUNvYWxpdGlvbigpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogU2hvdyB1bml0IHNlbGVjdGlvbiBmb3IgZ3JvdW5kIHVuaXRzICovXHJcbiAgICAjc2VsZWN0R3JvdW5kVW5pdChlOiBhbnksIGdyb3VwOiBzdHJpbmcpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5oaWRlU2VsZWN0aW9uV2hlZWwoKTtcclxuICAgICAgICB0aGlzLmhpZGVTZWxlY3Rpb25TY3JvbGwoKTtcclxuICAgICAgICB2YXIgb3B0aW9ucyA9IHVuaXRUeXBlcy52ZWhpY2xlc1tncm91cF07XHJcbiAgICAgICAgb3B0aW9ucy5zb3J0KCk7XHJcbiAgICAgICAgdGhpcy5zaG93U2VsZWN0aW9uU2Nyb2xsKGUsIG9wdGlvbnMsICh1bml0VHlwZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvbldoZWVsKCk7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZVNlbGVjdGlvblNjcm9sbCgpO1xyXG4gICAgICAgICAgICBzcGF3bkdyb3VuZFVuaXQodW5pdFR5cGUsIGUubGF0bG5nLCBnZXRBY3RpdmVDb2FsaXRpb24oKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn0gXHJcbiIsImltcG9ydCAqIGFzIEwgZnJvbSAnbGVhZmxldCdcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWlyYmFzZU9wdGlvbnNcclxue1xyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgcG9zaXRpb246IEwuTGF0TG5nLFxyXG4gICAgc3JjOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFpcmJhc2VNYXJrZXIgZXh0ZW5kcyBMLk1hcmtlciBcclxue1xyXG4gICAgI25hbWU6IHN0cmluZyA9IFwiXCI7XHJcbiAgICAjY29hbGl0aW9uSUQ6IG51bWJlciA9IC0xO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFpcmJhc2VPcHRpb25zKVxyXG4gICAge1xyXG4gICAgICAgIHN1cGVyKG9wdGlvbnMucG9zaXRpb24sIHsgcmlzZU9uSG92ZXI6IHRydWUgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuI25hbWUgPSBvcHRpb25zLm5hbWU7XHJcblxyXG4gICAgICAgIHZhciBpY29uID0gbmV3IEwuRGl2SWNvbih7XHJcbiAgICAgICAgICAgIGh0bWw6IGA8dGFibGUgY2xhc3M9XCJhaXJiYXNlbWFya2VyLWNvbnRhaW5lclwiIGlkPVwiY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiYWlyYmFzZW1hcmtlci1pY29uXCIgaWQ9XCJpY29uXCIgc3JjPVwiJHtvcHRpb25zLnNyY31cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhaXJiYXNlbWFya2VyLW5hbWVcIiBpZD1cIm5hbWVcIj4ke29wdGlvbnMubmFtZX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90YWJsZT5gLCBcclxuICAgICAgICAgICAgY2xhc3NOYW1lOiAnYWlyYmFzZS1tYXJrZXInfSk7ICAgLy8gU2V0IHRoZSBtYXJrZXIsIGNsYXNzTmFtZSBtdXN0IGJlIHNldCB0byBhdm9pZCB3aGl0ZSBzcXVhcmVcclxuICAgICAgICB0aGlzLnNldEljb24oaWNvbik7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0Q29hbGl0aW9uSUQoY29hbGl0aW9uSUQ6IG51bWJlcilcclxuICAgIHtcclxuICAgICAgICB0aGlzLiNjb2FsaXRpb25JRCA9IGNvYWxpdGlvbklEO1xyXG4gICAgICAgIHZhciBlbGVtZW50ID0gdGhpcy5nZXRFbGVtZW50KCk7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQgIT0gbnVsbClcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhciBpbWcgPSBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKTtcclxuICAgICAgICAgICAgaWYgKGltZyAhPSBudWxsKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBpbWcuY2xhc3NMaXN0LnJlbW92ZShcImFpcmJhc2VtYXJrZXItaWNvbi1ibHVlXCIpO1xyXG4gICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5yZW1vdmUoXCJhaXJiYXNlbWFya2VyLWljb24tcmVkXCIpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuI2NvYWxpdGlvbklEID09IDIpXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5hZGQoXCJhaXJiYXNlbWFya2VyLWljb24tYmx1ZVwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuI2NvYWxpdGlvbklEID09IDEpXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nLmNsYXNzTGlzdC5hZGQoXCJhaXJiYXNlbWFya2VyLWljb24tcmVkXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldE5hbWUoKVxyXG4gICAge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNuYW1lO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENvYWxpdGlvbklEKClcclxuICAgIHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jY29hbGl0aW9uSUQ7XHJcbiAgICB9XHJcbn1cclxuIiwiaW1wb3J0IHsgTWFya2VyLCBMYXRMbmcgfSBmcm9tIFwibGVhZmxldFwiO1xyXG5pbXBvcnQgeyBnZXRNYXAgfSBmcm9tIFwiLi5cIjtcclxuaW1wb3J0IHsgU3Bhd25FdmVudCB9IGZyb20gXCIuLi9tYXAvbWFwXCI7XHJcbmltcG9ydCB7IEFpcmJhc2VNYXJrZXIgfSBmcm9tIFwiLi9haXJiYXNlbWFya2VyXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgTWlzc2lvbkRhdGFcclxue1xyXG4gICAgLy8jYnVsbHNleWUgICAgICAgOiBhbnk7IC8vVE9ETyBkZWNsYXJlIGludGVyZmFjZVxyXG4gICAgLy8jYnVsbHNleWVNYXJrZXIgOiBNYXJrZXI7XHJcbiAgICAjYWlyYmFzZXMgICAgICAgOiBhbnk7IC8vVE9ETyBkZWNsYXJlIGludGVyZmFjZVxyXG4gICAgI2FpcmJhc2VzTWFya2Vyczoge1tuYW1lOiBzdHJpbmddOiBBaXJiYXNlTWFya2VyfTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpXHJcbiAgICB7XHJcbiAgICAgICAgLy90aGlzLiNidWxsc2V5ZSA9IHVuZGVmaW5lZDtcclxuICAgICAgICAvL3RoaXMuI2J1bGxzZXllTWFya2VyID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2VycyA9IHt9O1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZShkYXRhOiBhbnkpXHJcbiAgICB7XHJcbiAgICAgICAgLy90aGlzLiNidWxsc2V5ZSA9IGRhdGEubWlzc2lvbkRhdGEuYnVsbHNleWU7XHJcbiAgICAgICAgdGhpcy4jYWlyYmFzZXMgPSBkYXRhLmFpcmJhc2VzO1xyXG4gICAgICAgIC8vdGhpcy4jZHJhd0J1bGxzZXllKCk7XHJcbiAgICAgICAgdGhpcy4jZHJhd0FpcmJhc2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8jZHJhd0J1bGxzZXllKClcclxuICAgIC8ve1xyXG4gICAgLy8gICAgaWYgKHRoaXMuI2J1bGxzZXllTWFya2VyID09PSB1bmRlZmluZWQpXHJcbiAgICAvLyAgICB7XHJcbiAgICAvLyAgICAgICAgdGhpcy4jYnVsbHNleWVNYXJrZXIgPSBuZXcgTWFya2VyKFt0aGlzLiNidWxsc2V5ZS5sYXQsIHRoaXMuI2J1bGxzZXllLmxuZ10pLmFkZFRvKG1hcC5nZXRNYXAoKSk7XHJcbiAgICAvLyAgICB9XHJcbiAgICAvLyAgICBlbHNlXHJcbiAgICAvLyAgICB7XHJcbiAgICAvLyAgICAgICAgdGhpcy4jYnVsbHNleWVNYXJrZXIuc2V0TGF0TG5nKG5ldyBMYXRMbmcodGhpcy4jYnVsbHNleWUubGF0LCB0aGlzLiNidWxsc2V5ZS5sbmcpKTsgXHJcbiAgICAvLyAgICB9XHJcbiAgICAvL31cclxuXHJcbiAgICAjZHJhd0FpcmJhc2VzKClcclxuICAgIHtcclxuICAgICAgICBmb3IgKGxldCBpZHggaW4gdGhpcy4jYWlyYmFzZXMpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2YXIgYWlyYmFzZSA9IHRoaXMuI2FpcmJhc2VzW2lkeF1cclxuICAgICAgICAgICAgaWYgKHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdID09PSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdID0gbmV3IEFpcmJhc2VNYXJrZXIoe1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBuZXcgTGF0TG5nKGFpcmJhc2UubGF0LCBhaXJiYXNlLmxuZyksIFxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IGFpcmJhc2UuY2FsbHNpZ24sXHJcbiAgICAgICAgICAgICAgICAgICAgc3JjOiBcImltYWdlcy9haXJiYXNlLnBuZ1wifSkuYWRkVG8oZ2V0TWFwKCkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jYWlyYmFzZXNNYXJrZXJzW2lkeF0ub24oJ2NsaWNrJywgKGUpID0+IHRoaXMuI29uQWlyYmFzZUNsaWNrKGUpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2FpcmJhc2VzTWFya2Vyc1tpZHhdLnNldENvYWxpdGlvbklEKGFpcmJhc2UuY29hbGl0aW9uKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjb25BaXJiYXNlQ2xpY2soZTogYW55KVxyXG4gICAge1xyXG4gICAgICAgIHZhciBzcGF3bkV2ZW50OiBTcGF3bkV2ZW50ID0ge3g6IGUub3JpZ2luYWxFdmVudC54LCB5OiBlLm9yaWdpbmFsRXZlbnQueSwgbGF0bG5nOiBlLmxhdGxuZywgYWlyYmFzZU5hbWU6IGUuc291cmNlVGFyZ2V0LmdldE5hbWUoKSwgY29hbGl0aW9uSUQ6IGUuc291cmNlVGFyZ2V0LmdldENvYWxpdGlvbklEKCl9O1xyXG4gICAgICAgIGdldE1hcCgpLnNwYXduRnJvbUFpcmJhc2Uoc3Bhd25FdmVudCk7XHJcbiAgICB9XHJcbn0iLCJleHBvcnQgZnVuY3Rpb24gZGlzdGFuY2UobGF0MTogbnVtYmVyLCBsb24xOiBudW1iZXIsIGxhdDI6IG51bWJlciwgbG9uMjogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBSID0gNjM3MWUzOyAvLyBtZXRyZXNcclxuICAgIGNvbnN0IM+GMSA9IGRlZzJyYWQobGF0MSk7IC8vIM+GLCDOuyBpbiByYWRpYW5zXHJcbiAgICBjb25zdCDPhjIgPSBkZWcycmFkKGxhdDIpO1xyXG4gICAgY29uc3QgzpTPhiA9IGRlZzJyYWQobGF0MiAtIGxhdDEpO1xyXG4gICAgY29uc3QgzpTOuyA9IGRlZzJyYWQobG9uMiAtIGxvbjEpO1xyXG5cclxuICAgIGNvbnN0IGEgPSBNYXRoLnNpbijOlM+GIC8gMikgKiBNYXRoLnNpbijOlM+GIC8gMikgKyBNYXRoLmNvcyjPhjEpICogTWF0aC5jb3Moz4YyKSAqIE1hdGguc2luKM6UzrsgLyAyKSAqIE1hdGguc2luKM6UzrsgLyAyKTtcclxuICAgIGNvbnN0IGMgPSAyICogTWF0aC5hdGFuMihNYXRoLnNxcnQoYSksIE1hdGguc3FydCgxIC0gYSkpO1xyXG5cclxuICAgIGNvbnN0IGQgPSBSICogYzsgLy8gaW4gbWV0cmVzXHJcblxyXG4gICAgcmV0dXJuIGQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBiZWFyaW5nKGxhdDE6IG51bWJlciwgbG9uMTogbnVtYmVyLCBsYXQyOiBudW1iZXIsIGxvbjI6IG51bWJlcikge1xyXG4gICAgY29uc3Qgz4YxID0gZGVnMnJhZChsYXQxKTsgLy8gz4YsIM67IGluIHJhZGlhbnNcclxuICAgIGNvbnN0IM+GMiA9IGRlZzJyYWQobGF0Mik7XHJcbiAgICBjb25zdCDOuzEgPSBkZWcycmFkKGxvbjEpOyAvLyDPhiwgzrsgaW4gcmFkaWFuc1xyXG4gICAgY29uc3QgzrsyID0gZGVnMnJhZChsb24yKTtcclxuICAgIGNvbnN0IHkgPSBNYXRoLnNpbijOuzIgLSDOuzEpICogTWF0aC5jb3Moz4YyKTtcclxuICAgIGNvbnN0IHggPSBNYXRoLmNvcyjPhjEpICogTWF0aC5zaW4oz4YyKSAtIE1hdGguc2luKM+GMSkgKiBNYXRoLmNvcyjPhjIpICogTWF0aC5jb3MozrsyIC0gzrsxKTtcclxuICAgIGNvbnN0IM64ID0gTWF0aC5hdGFuMih5LCB4KTtcclxuICAgIGNvbnN0IGJybmcgPSAocmFkMmRlZyjOuCkgKyAzNjApICUgMzYwOyAvLyBpbiBkZWdyZWVzXHJcblxyXG4gICAgcmV0dXJuIGJybmc7XHJcbn1cclxuXHJcbmNvbnN0IHplcm9QYWQgPSBmdW5jdGlvbiAobnVtOiBudW1iZXIsIHBsYWNlczogbnVtYmVyKSB7XHJcbiAgICB2YXIgc3RyaW5nID0gU3RyaW5nKG51bSk7XHJcbiAgICB3aGlsZSAoc3RyaW5nLmxlbmd0aCA8IHBsYWNlcykge1xyXG4gICAgICAgIHN0cmluZyArPSBcIjBcIjtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBDb252ZXJ0RERUb0RNUyhEOiBudW1iZXIsIGxuZzogYm9vbGVhbikge1xyXG4gICAgdmFyIGRpciA9IEQgPCAwID8gKGxuZyA/IFwiV1wiIDogXCJTXCIpIDogbG5nID8gXCJFXCIgOiBcIk5cIjtcclxuICAgIHZhciBkZWcgPSAwIHwgKEQgPCAwID8gKEQgPSAtRCkgOiBEKTtcclxuICAgIHZhciBtaW4gPSAwIHwgKCgoRCArPSAxZS05KSAlIDEpICogNjApO1xyXG4gICAgdmFyIHNlYyA9ICgwIHwgKCgoRCAqIDYwKSAlIDEpICogNjAwMCkpIC8gMTAwO1xyXG4gICAgdmFyIGRlYyA9IE1hdGgucm91bmQoKHNlYyAtIE1hdGguZmxvb3Ioc2VjKSkgKiAxMDApO1xyXG4gICAgdmFyIHNlYyA9IE1hdGguZmxvb3Ioc2VjKTtcclxuICAgIGlmIChsbmcpXHJcbiAgICAgICAgcmV0dXJuIGRpciArIHplcm9QYWQoZGVnLCAzKSArIFwiwrBcIiArIHplcm9QYWQobWluLCAyKSArIFwiJ1wiICsgemVyb1BhZChzZWMsIDIpICsgXCIuXCIgKyB6ZXJvUGFkKGRlYywgMikgKyBcIlxcXCJcIjtcclxuICAgIGVsc2VcclxuICAgICAgICByZXR1cm4gZGlyICsgemVyb1BhZChkZWcsIDIpICsgXCLCsFwiICsgemVyb1BhZChtaW4sIDIpICsgXCInXCIgKyB6ZXJvUGFkKHNlYywgMikgKyBcIi5cIiArIHplcm9QYWQoZGVjLCAyKSArIFwiXFxcIlwiO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVnMnJhZChkZWc6IG51bWJlcikge1xyXG4gICAgdmFyIHBpID0gTWF0aC5QSTtcclxuICAgIHJldHVybiBkZWcgKiAocGkgLyAxODApO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmFkMmRlZyhyYWQ6IG51bWJlcikge1xyXG4gICAgdmFyIHBpID0gTWF0aC5QSTtcclxuICAgIHJldHVybiByYWQgLyAocGkgLyAxODApO1xyXG59IiwiZXhwb3J0IGNsYXNzIENvbm5lY3Rpb25TdGF0dXNQYW5lbCB7XHJcbiAgICAjZWxlbWVudDogSFRNTEVsZW1lbnRcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihJRDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy4jZWxlbWVudCA9IDxIVE1MRWxlbWVudD5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChJRCk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKGNvbm5lY3RlZDogYm9vbGVhbikge1xyXG4gICAgICAgIGlmICh0aGlzLiNlbGVtZW50ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdmFyIGRpdiA9IHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNzdGF0dXMtc3RyaW5nXCIpO1xyXG4gICAgICAgICAgICBpZiAoZGl2ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGlmIChjb25uZWN0ZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuaW5uZXJIVE1MID0gXCJDb25uZWN0ZWRcIjtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuY2xhc3NMaXN0LmFkZChcIm9seW1wdXMtc3RhdHVzLWNvbm5lY3RlZFwiKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXYuY2xhc3NMaXN0LnJlbW92ZShcIm9seW1wdXMtc3RhdHVzLWRpc2Nvbm5lY3RlZFwiKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5pbm5lckhUTUwgPSBcIkRpc2Nvbm5lY3RlZFwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5jbGFzc0xpc3QuYWRkKFwib2x5bXB1cy1zdGF0dXMtZGlzY29ubmVjdGVkXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpdi5jbGFzc0xpc3QucmVtb3ZlKFwib2x5bXB1cy1zdGF0dXMtY29ubmVjdGVkXCIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiaW1wb3J0IHsgQ29udmVydEREVG9ETVMsIHJhZDJkZWcgfSBmcm9tIFwiLi4vb3RoZXIvdXRpbHNcIjtcclxuaW1wb3J0IHsgVW5pdCB9IGZyb20gXCIuLi91bml0cy91bml0XCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVW5pdEluZm9QYW5lbCB7XHJcbiAgICAjZWxlbWVudDogSFRNTEVsZW1lbnRcclxuICAgICNkaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoSUQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuI2VsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoSUQpO1xyXG4gICAgICAgIHRoaXMuI2Rpc3BsYXkgPSAnJztcclxuICAgICAgICBpZiAodGhpcy4jZWxlbWVudCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2Rpc3BsYXkgPSB0aGlzLiNlbGVtZW50LnN0eWxlLmRpc3BsYXk7XHJcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzaG93KCkge1xyXG4gICAgICAgIHRoaXMuI2VsZW1lbnQuc3R5bGUuZGlzcGxheSA9IHRoaXMuI2Rpc3BsYXk7XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZSgpIHtcclxuICAgICAgICB0aGlzLiNlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGUodW5pdDogVW5pdCkge1xyXG4gICAgICAgIGlmICh0aGlzLiNlbGVtZW50ICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdmFyIGVscyA9IHRoaXMuI2VsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcImpzLWxvYWRvdXQtZWxlbWVudFwiKTtcclxuICAgICAgICAgICAgd2hpbGUgKGVscy5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2xvYWRvdXQtZGF0YVwiKT8ucmVtb3ZlQ2hpbGQoZWxzWzBdKTtcclxuICBcclxuICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggaW4gdW5pdC5hbW1vKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgYW1tbyA9IHVuaXQuYW1tb1tpbmRleF07XHJcbiAgICAgICAgICAgICAgICB2YXIgZGlzcGxheU5hbWUgPSBhbW1vLmRlc2MuZGlzcGxheU5hbWU7XHJcbiAgICAgICAgICAgICAgICB2YXIgYW1vdW50ID0gYW1tby5jb3VudDtcclxuICAgICAgICAgICAgICAgIHZhciBlbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIilcclxuICAgICAgICAgICAgICAgIGVsLmNsYXNzTGlzdC5hZGQoXCJqcy1sb2Fkb3V0LWVsZW1lbnRcIiwgXCJyZWN0YW5ndWxhci1jb250YWluZXItZGFya1wiKVxyXG4gICAgICAgICAgICAgICAgZWwuaW5uZXJIVE1MID0gYW1vdW50ICsgXCJ4XCIgKyBkaXNwbGF5TmFtZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNsb2Fkb3V0LWRhdGFcIik/LmFwcGVuZENoaWxkKGVsKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI3VuaXQtbmFtZVwiKSEuaW5uZXJIVE1MID0gdW5pdC51bml0TmFtZTtcclxuICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2dyb3VwLW5hbWVcIikhLmlubmVySFRNTCA9IHVuaXQuZ3JvdXBOYW1lO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjbmFtZVwiKSEuaW5uZXJIVE1MID0gdW5pdC5uYW1lO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjaGVhZGluZ1wiKSEuaW5uZXJIVE1MID0gU3RyaW5nKE1hdGguZmxvb3IocmFkMmRlZyh1bml0LmhlYWRpbmcpKSArIFwiIMKwXCIpO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjYWx0aXR1ZGVcIikhLmlubmVySFRNTCA9IFN0cmluZyhNYXRoLmZsb29yKHVuaXQuYWx0aXR1ZGUgLyAwLjMwNDgpICsgXCIgZnRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNncm91bmQtc3BlZWRcIikhLmlubmVySFRNTCA9IFN0cmluZyhNYXRoLmZsb29yKHVuaXQuc3BlZWQgKiAxLjk0Mzg0KSArIFwiIGt0c1wiKTtcclxuICAgICAgICAgICAgdGhpcy4jZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2Z1ZWxcIikhLmlubmVySFRNTCA9IFN0cmluZyh1bml0LmZ1ZWwgKyBcIiVcIik7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNsYXRpdHVkZVwiKSEuaW5uZXJIVE1MID0gQ29udmVydEREVG9ETVModW5pdC5sYXRpdHVkZSwgZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLiNlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoXCIjbG9uZ2l0dWRlXCIpIS5pbm5lckhUTUwgPSBDb252ZXJ0RERUb0RNUyh1bml0LmxvbmdpdHVkZSwgdHJ1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuI2VsZW1lbnQucXVlcnlTZWxlY3RvcihcIiN0YXNrXCIpIS5pbm5lckhUTUwgPSB1bml0LmN1cnJlbnRUYXNrICE9PSBcIlwiPyB1bml0LmN1cnJlbnRUYXNrOiBcIk5vdCBjb250cm9sbGVkXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiZXhwb3J0IHZhciBwYXlsb2FkTmFtZXM6IGFueSA9IHsgXCJBLTEwQVwiOiBbXCJNSy04NCoyICwgTEFVLTY4KjIgLCBBR00tNjVLKjJcIiwgXCJMQVUtNjgtTUs1KjZcIiwgXCJBR00tNjVLKjIsTWsyMCo2LEFJTS05KjIsRUNNXCIsIFwiTWstODIqNixBSU0tOSoyLEVDTVwiLCBcIk1rMjAqNixBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUQqNCxBSU0tOSoyLEVDTVwiLCBcIkFHTS02NUssIEFHTS02NURcIiwgXCJFQ01cIiwgXCJNay04Mio2LCBNay04NCoyXCIsIFwiTWsyMCo4XCIsIFwiQUdNLTY1SyoyLE1rLTg0KjIsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVLKjIsTWstODIqNixBSU0tOSoyLEVDTVwiLCBcIk1rLTg0KjIsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVLKjIsTWs4NCoyLE1rODIqNCxBSU0tOU0qMixFQ01cIiwgXCJBR00tNjVIKjYsTWs4MioxMCxBSU0tOU0qMixFQ01cIl0sIFwiQS0xMENcIjogW1wiTEFVLTY4IDQyIHJrdCBNMTU2IFdQLCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjQsIENCVS05NyoyLCBDQlUtODcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJMQVUtMTMxIDk4IHJrdCBNMTU2IFdQLCBBSU0tOSoyLEVDTVwiLCBcIlNVVS0yNSo5LEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIk1rLTgyQUlSKjgsQUlNLTkqMixFQ01cIiwgXCJNSy04NCoyLExBVS02OCoyLEFHTS02NUsqMlwiLCBcIkJEVS0zMyo2LCBUR00tNjVILCBUR00tNjVELCBUR1AsIEJEVS01MExHQioyLCBDQVAtOSoxXCIsIFwiTWstODIqNixNay04NCoyLEFJTS05KjIsRUNNXCIsIFwiTWstODQqNCxBSU0tOSoyLEVDTVwiLCBcIk1rLTgyKjgsQUlNLTkqMixFQ01cIiwgXCJCRFUtMzMqMTIsIFRHUCwgQ0FQLTkqMVwiLCBcIkFHTS02NUQqNCxNay04MkFJUioyLENCVS04NyoyLEFJTS05TSoyLEVDTSxUR1BcIiwgXCJBR00tNjVEKjQsR0JVLTEyKjIsR0JVLTM4LE1rLTgyLEFJTS05LFRHUCxFQ01cIiwgXCJBR00tNjVEKjIsIEFHTS02NUgqMiwgQ0JVLTk3KjIsIENCVS04NyoyLCBUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkJEVS01MEhEKjYsTWsxKjcsVEdQLCBDQVAtOSoxXCIsIFwiQUdNLTY1SCo0LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsTWstODJBSVIqMixDQlUtODcqMixBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1SyoyLEdCVS0zOCo0LEFJTS05KjIsVEdQLEVDTVwiLCBcIkJEVS0zMyo2LCBUR1AsIENBUC05KjFcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLEdCVS0xMioyLEdCVS0zOCoyLEFJTS05KjIsVEdQLEVDTSxNSzE1MSo3XCIsIFwiVEdQXCIsIFwiQkRVLTMzKjYsIFRHUCwgQ0FQLTkqMSwgQkRVLTUwTEQqMlwiLCBcIkdCVS0xMio2LEdCVS0xMCoyLFRHUCwgQUlNLTkqMlwiLCBcIlRHUCwgQ0JVLTg3KjMsIE0xNTEqMjgsIEFJTS05KjIsIEVDTVwiLCBcIkFHTS02NUQqNCxNay04Mio2LENCVS04NyoyLFRHUCxBSU0tOSoyLE1rMTUxKjdcIiwgXCJQR00tIEdCVS0xMCoyLEdCVS0xMio0LEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIlRHUCwgQ0FQLTkqMSwgQ0FUTS02NUsqMSwgVEdNLTY1RyoxXCIsIFwiQUdNLTY1RyoyLEdCVS0zMSoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIlRHUCwgTTE1MSoxNCwgTWstODIqMiwgTWstODJBSVIqMiwgQUlNLTkqMiwgRUNNXCIsIFwiUEdNLSBHQlUtMTAqNCwgQUdNLTY1SyoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsTWstODJBSVIqNixDQlUtODcqMixNazE1MSo3LEFJTS05KjIsVEdQLEVDTVwiLCBcIkdCVS0zMSoyLEdCVS0zOCoyLCBBR00tNjVIKjIsIEFJTS05KjIsVEdQLCBFQ01cIiwgXCJDQlUtMTAzKjQsIE0xNTEqMTQsIEFJTS05KjIsIEVDTVwiLCBcIkNCVS04Nyo0LCBNMTUxKjQyLCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjYsIENCVS05Nyo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQ0JVLTg3KjIsIE0xNTEqMTQsIE1LLTgyQUlSKjYsIEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtMTA1KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJCRFUtNTBIRCoyLEJEVS01MExHQioyLFRHUCwgQ0FQLTkqMVwiLCBcIkNCVS04Nyo0LCBNMTUxKjI4LCBBSU0tOSoyLEVDTVwiLCBcIk0xNTEqOTgsIE1rLTgyKjIsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLEdCVS0xMixHQlUtMzgsTUs4MiozLE1LODJBSVIqMyxNSzUqNyxUR1AsQU0tOSoyXCIsIFwiVEdQLCBNMTUxKjQyLCBNay04Mio2LCBNay04MkFJUio2LCBBSU0tOSoyLCBFQ01cIiwgXCJUR1AsIE0xNTEqODQsIE1rLTgyKjIsQUlNLTkqMiwgRUNNXCIsIFwiQkRVLTUwTEQqMiwgQkRVLTUwSEQqMixDQVRNLTY1SywgVEdNLTY1RywgVEdQLCBDQVAtOSoxXCIsIFwiVEdQLCBNMTUxKjQ5LCBNay04MioyLCBDQlUtODcqMiwgQUlNLTkqMiwgRUNNXCIsIFwiVEdQLCBDQVAtOSoxLCBCRFUtNTBMR0IqNFwiLCBcIkdCVS0xMioxNCxUR1AsIEFJTS05KjJcIiwgXCJBR00tNjVEKjMsIEFHTS02NUgqMywgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjIsQ0JVLTk3KjIsQUlNLTlNKjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTEwNSoyLENCVS05NyoyLCBUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkFHTS02NUQqMixNay04Mio2LEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkdCVS0zOCo0LEdCVS0zMSoyLFRHUCwgQUlNLTkqMlwiLCBcIkFHTS02NUQqNCxHQlUtMTIqMixHQlUtMzgqMixBSU0tOSoyLFRHUCxFQ00sTUs1KjdcIiwgXCJBR00tNjVHLEFHTS02NUssR0JVLTEwKjIsQUlNLTkqMixUR1AsRUNNXCIsIFwiQUdNLTY1RyxBR00tNjVELE1rLTgyKjcsQUlNLTkqMixFQ01cIiwgXCJHQlUtMzEqMixHQlUtMzgqNCxBSU0tOSoyLFRHUCxFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVLKjIsR0JVLTEyKjgsQUlNLTlNKjIuRUNNLFRHUFwiLCBcIkFHTS02NUQqNixHQlUtMTIqNCxBSU0tOU0qMixFQ00sVEdQXCJdLCBcIkEtMTBDXzJcIjogW1wiTEFVLTY4IDQyIHJrdCBNMTU2IFdQLCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjQsIENCVS05NyoyLCBDQlUtODcqMiwgVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJMQVUtMTMxIDk4IHJrdCBNMTU2IFdQLCBBSU0tOSoyLEVDTVwiLCBcIlNVVS0yNSo5LEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIk1rLTgyQUlSKjgsQUlNLTkqMixFQ01cIiwgXCJNSy04NCoyLExBVS02OCoyLEFHTS02NUsqMlwiLCBcIkJEVS0zMyo2LCBUR00tNjVILCBUR00tNjVELCBUR1AsIEJEVS01MExHQioyLCBDQVAtOSoxXCIsIFwiTWstODIqNixNay04NCoyLEFJTS05KjIsRUNNXCIsIFwiTWstODQqNCxBSU0tOSoyLEVDTVwiLCBcIk1rLTgyKjgsQUlNLTkqMixFQ01cIiwgXCJCRFUtMzMqMTIsIFRHUCwgQ0FQLTkqMVwiLCBcIkFHTS02NUQqNCxNay04MkFJUioyLENCVS04NyoyLEFJTS05TSoyLEVDTSxUR1BcIiwgXCJBR00tNjVEKjQsR0JVLTEyKjIsR0JVLTM4LE1rLTgyLEFJTS05LFRHUCxFQ01cIiwgXCJBR00tNjVEKjIsIEFHTS02NUgqMiwgQ0JVLTk3KjIsIENCVS04NyoyLCBUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkJEVS01MEhEKjYsTWsxKjcsVEdQLCBDQVAtOSoxXCIsIFwiQUdNLTY1SCo0LCBDQlUtOTcqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsTWstODJBSVIqMixDQlUtODcqMixBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1SyoyLEdCVS0zOCo0LEFJTS05KjIsVEdQLEVDTVwiLCBcIkJEVS0zMyo2LCBUR1AsIENBUC05KjFcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLEdCVS0xMioyLEdCVS0zOCoyLEFJTS05KjIsVEdQLEVDTSxNSzE1MSo3XCIsIFwiVEdQXCIsIFwiQkRVLTMzKjYsIFRHUCwgQ0FQLTkqMSwgQkRVLTUwTEQqMlwiLCBcIkdCVS0xMio2LEdCVS0xMCoyLFRHUCwgQUlNLTkqMlwiLCBcIlRHUCwgQ0JVLTg3KjMsIE0xNTEqMjgsIEFJTS05KjIsIEVDTVwiLCBcIkFHTS02NUQqNCxNay04Mio2LENCVS04NyoyLFRHUCxBSU0tOSoyLE1rMTUxKjdcIiwgXCJQR00tIEdCVS0xMCoyLEdCVS0xMio0LEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqNCxUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIlRHUCwgQ0FQLTkqMSwgQ0FUTS02NUsqMSwgVEdNLTY1RyoxXCIsIFwiQUdNLTY1RyoyLEdCVS0zMSoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIlRHUCwgTTE1MSoxNCwgTWstODIqMiwgTWstODJBSVIqMiwgQUlNLTkqMiwgRUNNXCIsIFwiUEdNLSBHQlUtMTAqNCwgQUdNLTY1SyoyLEFJTS05KjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqMixBR00tNjVIKjIsTWstODJBSVIqNixDQlUtODcqMixNazE1MSo3LEFJTS05KjIsVEdQLEVDTVwiLCBcIkdCVS0zMSoyLEdCVS0zOCoyLCBBR00tNjVIKjIsIEFJTS05KjIsVEdQLCBFQ01cIiwgXCJDQlUtMTAzKjQsIE0xNTEqMTQsIEFJTS05KjIsIEVDTVwiLCBcIkNCVS04Nyo0LCBNMTUxKjQyLCBBSU0tOSoyLCBFQ01cIiwgXCJBR00tNjVEKjYsIENCVS05Nyo0LFRHUCwgRUNNLCBBSU0tOSoyXCIsIFwiQ0JVLTg3KjIsIE0xNTEqMTQsIE1LLTgyQUlSKjYsIEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCo0LCBDQlUtMTA1KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJCRFUtNTBIRCoyLEJEVS01MExHQioyLFRHUCwgQ0FQLTkqMVwiLCBcIkNCVS04Nyo0LCBNMTUxKjI4LCBBSU0tOSoyLEVDTVwiLCBcIk0xNTEqOTgsIE1rLTgyKjIsQUlNLTkqMixFQ01cIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLEdCVS0xMixHQlUtMzgsTUs4MiozLE1LODJBSVIqMyxNSzUqNyxUR1AsQU0tOSoyXCIsIFwiVEdQLCBNMTUxKjQyLCBNay04Mio2LCBNay04MkFJUio2LCBBSU0tOSoyLCBFQ01cIiwgXCJUR1AsIE0xNTEqODQsIE1rLTgyKjIsQUlNLTkqMiwgRUNNXCIsIFwiQkRVLTUwTEQqMiwgQkRVLTUwSEQqMixDQVRNLTY1SywgVEdNLTY1RywgVEdQLCBDQVAtOSoxXCIsIFwiVEdQLCBNMTUxKjQ5LCBNay04MioyLCBDQlUtODcqMiwgQUlNLTkqMiwgRUNNXCIsIFwiVEdQLCBDQVAtOSoxLCBCRFUtNTBMR0IqNFwiLCBcIkdCVS0xMioxNCxUR1AsIEFJTS05KjJcIiwgXCJBR00tNjVEKjMsIEFHTS02NUgqMywgQ0JVLTk3KjQsVEdQLCBFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVEKjIsQUdNLTY1SCoyLE1rLTgyQUlSKjIsQ0JVLTk3KjIsQUlNLTlNKjIsVEdQLEVDTVwiLCBcIkFHTS02NUQqNCwgQ0JVLTEwNSoyLENCVS05NyoyLCBUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkFHTS02NUQqMixNay04Mio2LEFJTS05KjIsRUNNXCIsIFwiQUdNLTY1RCoyLEFHTS02NUgqMixUR1AsIEVDTSwgQUlNLTkqMlwiLCBcIkdCVS0zOCo0LEdCVS0zMSoyLFRHUCwgQUlNLTkqMlwiLCBcIkFHTS02NUQqNCxHQlUtMTIqMixHQlUtMzgqMixBSU0tOSoyLFRHUCxFQ00sTUs1KjdcIiwgXCJBR00tNjVHLEFHTS02NUssR0JVLTEwKjIsQUlNLTkqMixUR1AsRUNNXCIsIFwiQUdNLTY1RyxBR00tNjVELE1rLTgyKjcsQUlNLTkqMixFQ01cIiwgXCJHQlUtMzEqMixHQlUtMzgqNCxBSU0tOSoyLFRHUCxFQ00sIEFJTS05KjJcIiwgXCJBR00tNjVLKjIsR0JVLTEyKjgsQUlNLTlNKjIuRUNNLFRHUFwiLCBcIkFHTS02NUQqNixHQlUtMTIqNCxBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1RSoyLE1rLTgyQUlSKjIsQ0JVLTk3KjIsQUlNLTlNKjIsRUNNLFRHUFwiLCBcIkFHTS02NUUqMixDQlUtOTcqNCxBSU0tOU0qMixFQ00sVEdQXCIsIFwiQUdNLTY1RSoyLENCVS05Nyo0LEFJTS05TSoyLEVDTSxNMTUxIEFQS1dTKjcsVEdQXCIsIFwiQUdNLTY1RSoyLENCVS0xMDUqNCxBSU0tOU0qMixFQ00sTTE1MSBBUEtXUyo3LFRHUFwiLCBcIk1rLTgyKjQsTWstOEFJUio0LEFJTS05KjIsRUNNXCIsIFwiTWstODIqMjAsQUlNLTkqMixFQ01cIiwgXCJNay04Mio2LEFJTS05KjIsVEdQLEVDTVwiLCBcIk1rLTg0KjYsQUlNLTkqMixUR1AsRUNNXCIsIFwiTWstODJBSVIqNixNay04QUlSKjQsTTE1MSoxLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS0zOCo0LE0xNTEgQVBLV1MqNyxBR00tNjVEKjEsQUdNLTY1SCoxLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS0zOCo0LE0xNTEgQVBLV1MqNyxBR00tNjVFKjIsVEdQLEFJTS05KjIsRUNNXCIsIFwiR0JVLTEyKjQsTTE1MSBBUEtXUyo3LEFHTS02NUUqMixUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtMTIqMixHQlUtMzgqMixNMTUxIEFQS1dTKjcsQUdNLTY1RSoyLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS0xMCoyLE0xNTEgQVBLV1MqNyxBR00tNjVFKjIsVEdQLEFJTS05KjIsRUNNXCIsIFwiR0JVLTMxKjIsTTE1MSBBUEtXUyo3LEFHTS02NUUqMixUR1AsQUlNLTkqMixFQ01cIiwgXCJHQlUtNTQqNCxNMTUxIEFQS1dTKjcsQUdNLTY1RSoyLFRHUCxBSU0tOSoyLEVDTVwiLCBcIkdCVS01NCo0LE0xNTEgQVBLV1MqNyxBR00tNjVEKjQsVEdQLEFJTS05KjIsRUNNXCJdLCBcIkFILTY0RF9CTEtfSUlcIjogW1wiNCAqIEZ1ZWwgVGFuayAyMzAgZ2FsXCIsIFwiMiAqIE0yNjE6IE0xNTEgKDZQRCksIDIgKiBIZWxsZmlyZSBzdGF0aW9uOiA0KkFHTS0xMTRLXCIsIFwiNCAqIEhlbGxmaXJlIHN0YXRpb246IDQqQUdNLTExNEtcIiwgXCI0ICogTTI2MTogTTE1MSAoNlBEKVwiLCBcIjIgKiBNMjYxOiBNMTUxICg2UEQpLCAyICogRnVlbCBUYW5rIDIzMCBnYWxcIiwgXCIyICogRnVlbCBUYW5rIDIzMCBnYWwsIDIgKiBIZWxsZmlyZSBzdGF0aW9uOiA0KkFHTS0xMTRLXCIsIFwiMiAqIE0yNjE6IEEvQiAtIE0xNTEgKDZQRCksIEUgLSBNMjc0ICg2U0spLCAyICogSGVsbGZpcmUgc3RhdGlvbjogNCpBR00tMTE0S1wiLCBcIjIgKiBNMjYxOiBBL0IgLSBNMTUxICg2UEQpLCBFIC0gTTI1NyAoNklMKSwgMiAqIEhlbGxmaXJlIHN0YXRpb246IDQqQUdNLTExNEtcIiwgXCIyICogTTI2MTogQyAtIE0yNTcgKDZJTCksIEQvRSAtIE0xNTEgKDZQRCksIDIgKiBIZWxsZmlyZSBzdGF0aW9uOiA0KkFHTS0xMTRLXCIsIFwiMiAqIE0yNjE6IEMgLSBNMjc0ICg2U0spLCBEL0UgLSBNMTUxICg2UEQpLCAyICogSGVsbGZpcmUgc3RhdGlvbjogNCpBR00tMTE0S1wiXSwgXCJBSlMzN1wiOiBbXCJCYXR0bGVmaWVsZCBBaXIgSW50ZXJkaWN0aW9uOiBSQi03NSo0LCBSQi0yNEoqMiwgWFRcIiwgXCJBbnRpLXNoaXA6IFJCLTA0RSoyLCBSQi03NCoyLCBYVFwiLCBcIkFudGktc2hpcCAoSGVhdnkgTWF2KTogUkItNzVUKjQsIFhUXCIsIFwiSGFyZCBUYXJnZXQgKENvdW50ZXJtZWFzdXJlcyk6IFJCLTA1LCBYVCwgS0IsIFUyMlwiLCBcIkhhcmQgVGFyZ2V0IChNQVYpOiBSQi03NVQqMiwgUkItNzQqMiwgWFRcIiwgXCJGZXJyeSBGbGlnaHQ6IFhUXCIsIFwiQ0FTICg3NSBHVU4pOiBSQi03NSoyLCBBS0FOXCIsIFwiQ0FQOiBSQi03NCo0LCBYVFwiLCBcIkNvdW50ZXJtZWFzdXJlcyBFc2NvcnQ6IFUvMjJBLCBLQlwiLCBcIlN0cmlrZTogQks5MCAoTUoxKSoyLCBSQi03NCoyLCBYVFwiLCBcIkNBUzogQUtBTiwgUkItMDVBXCIsIFwiQ0FQICg2IEFBTSk6IFJCLTc0KjQsIFJCLTI0SioyLCBYVFwiLCBcIlJvY2tldCBIYWxmIExvYWQgSEU6IEFSQUsgSEUqMiwgUkItNzQqMiwgWFRcIiwgXCJDQVAgLyBJbnRlY2VwdDogUkItMDVBKjIsIFJCLTc0KjIsIFhUXCIsIFwiQm9tYnMgTG93LWRyYWc6IFNCNzFMRCoxNiwgUkItMjRKKjIsIFhUXCIsIFwiU0VBRDogUkItNzVUKjIsIFUyMi9BLCBLQiwgWFRcIiwgXCJBbnRpLVNoaXAgKE1vZGVybik6IFJCLTE1RioyLCBSQi03NCoyLCBYVFwiLCBcIk5ldyBQYXlsb2FkXCIsIFwiQ0FQIChBSjM3KTogUkItMjRKKjJcIiwgXCJFQ00gRXNjb3J0IEFudGktc2hpcDogUkItMDRFLCBLQiwgUkItNzQqMiwgWFRcIiwgXCJCb21icyBIaWdoLWRyYWc6IFNCNzFIRCoxNiwgWFQsIFJCLTI0SlwiLCBcIkFudGktc2hpcCAoTGlnaHQgTWF2KTogUkItNzUqNCwgWFRcIiwgXCJSb2NrZXQgRnVsbCBMb2FkIEhFOiAgQVJBSyBIRSo0LCBSQi0yNEosIFhUXCIsIFwiSWxsdW1pbmF0aW9uOiBMWVNCKjgsIFhUXCIsIFwiQW50aS1zaGlwIChSQjA1KTogUkItMDVBKjIsIFJCLTc0KjIsIFhUXCIsIFwiQ0FQIChHdW4pOiBBS0FOKjIsIFJCLTc0KjIsIFhUXCIsIFwiSGFyZCBUYXJnZXQ6IFJCLTA1QSoyLCBSQi03NCoyLCBYVFwiLCBcIlJCLTA1KjIsIFhUXCIsIFwiQ0FTOiBBUkFLIE03MCBIRSo0LCBYVFwiLCBcIlJ1bndheSBTdHJpa2U6IFNCNzFIRCoxNiwgUkItMjRKLCBYVFwiXSwgXCJBVjhCTkFcIjogW1wiSC1MLUggMlwiLCBcIkFGQUMgMVwiLCBcIkFTIDFcIiwgXCJILU0tSCAzXCIsIFwiSW50ZXJkaWN0aW9uIDEgKEgtSC1ILUgpXCIsIFwiSW50ZXJkaWN0aW9uIDIgKEgtSC1ILUgpXCIsIFwiQUZBQyAzXCIsIFwiSW50ZXJkaWN0aW9uIDMgKEgtTC1MLUgpXCIsIFwiSC1NLUggMVwiLCBcIkgtTC1IIDFcIiwgXCJQR00gMiAoSC1ILUgtSClcIiwgXCJMLUwtTCAxXCIsIFwiQUZBQyAyXCIsIFwiSC1NLUggMlwiLCBcIkFyZWEgU3VwcHJlc3Npb25cIiwgXCJSb2NrZXRzIDFcIiwgXCJBUyAyXCIsIFwiSGVsbyBFc2NvcnQgMVwiLCBcIlBHTSAxIChILUgtSC1IKVwiLCBcIkhlbG8gRXNjb3J0IDJcIiwgXCJQR00gMyAoSC1ILUgtSClcIiwgXCJBbnRpIEFybW9yXCIsIFwiUkEgMSAoSC1NLU0tSClcIiwgXCJTdGFuZCBPZmYgMVwiLCBcIlN0YW5kIE9mZiAyXCIsIFwiU3RhbmQgT2ZmIDNcIiwgXCJJcm9uIEhhbmQgMVwiLCBcIklyb24gSGFuZCAyXCJdLCBcIkMtMTAxQ0NcIjogW1wiMipBSU0tOVAsIERFRkEgNTUzIENBTk5PTiAoSSlcIiwgXCIyKkFJTS05TSwgREVGQSA1NTMgQ0FOTk9OIChJKVwiLCBcIjIqQUlNLTlQLCBERUZBIDUzMyBDQU5OT04gKElJKVwiLCBcIjIqQUlNLTlQLCBBTi1NMyBDQU5OT04gKElWKVwiLCBcIjIqUi41NTAgTUFHSUMsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqQUlNLTlNLCBBTi1NMyBDQU5OT04gKElJSSlcIiwgXCIyKkFJTS05UCwgREVGQSA1NTMgQ0FOTk9OXCIsIFwiMipSLjU1MCBNQUdJQywgREVGQSA1NTMgQ0FOTk9OIChJSUkpXCIsIFwiMipBSU0tOVAsIDIqQkVMT1VHQSwgREVGQSA1NTMgQ0FOTk9OXCIsIFwiMipBSU05LVAsIDIqU0VBIEVBR0xFLCBERUZBLTU1MyBDQU5OT05cIiwgXCIyKkFJTS05TSAyKlNFQSBFQUdMRSwgQU4tTTMgQ0FOTk9OXCIsIFwiMipBSU0tOU0sIEFOLU0zIENBTk5PTlwiLCBcIjIqQkVMT1VHQSwyKkJEVS0zMywgREVGQS01NTMgQ0FOTk9OXCIsIFwiMiogU0VBIEVBR0xFLCBERUZBLTU1MyBDQU5OT05cIiwgXCIyKkFJTS05UCwgMipCUi0yNTAsMipNSy04MiwgREVGQSA1NTMgQ0FOTk9OXCIsIFwiMipSLjU1MCBNQUdJQywgMipTRUEgRUFHTEUgLCBERUZBLTU1MyBDQU5OT05cIiwgXCIyKlIuNTUwIE1BR0lDLCBERUZBIDU1MyBDQU5OT04gKElWKVwiLCBcIjIqQkVMT1VHQSwgMipCUi01MDAsIERFRkEgNTUzIENBTk5PTlwiLCBcIjIqQUlNLTlNLCBERUZBIDU1MyBDQU5OT04gKElWKVwiLCBcIjIqUi41NTAgTUFHSUMsIEFOLU0zIENBTk5PTiAoSUkpXCIsIFwiMipSNTUwIE1hZ2ljLCBERUZBIDU1MyBDQU5OT04gKEkpXCIsIFwiMipBSU0tOU0gLDIqQkVMT1VHQSwyKkJJTi0yMDAsIEFOLU0zIENBTk5PTlwiLCBcIjIqQUlNLTlNLCAyKkxBVSA2OCwgMipNSy04MiwgREVGQSA1NTMgQ0FOTk9OXCIsIFwiMipBSU0tOVAsIEFOLU0zIENBTk5PTiAoSUlJKVwiLCBcIjIqQUlNLTlNLCBERUZBIDUzMyBDQU5OT04gKElJKVwiLCBcIjIqUi41NTAgTUFHSUMsIDIqQlItMjUwLCAyKkJEVS0zMywgREVGQSA1NTMgQ0FOTk9OXCJdLCBcIkMtMTAxRUJcIjogW1wiU21va2UgU3lzdGVtOiBXaGl0ZSBTbW9rZVwiLCBcIlNtb2tlIFN5c3RlbTogV2hpdGUgU21va2UrUmVkIENvbG9yYW50XCIsIFwiU21va2UgU3lzdGVtOiBXaGl0ZSBTbW9rZStZZWxsb3cgQ29sb3JhbnRcIl0sIFwiSC02SlwiOiBbXCJZSi0xMiB4IDJcIiwgXCJZSi0xMiB4IDRcIiwgXCJZSi04M0sgeCA2XCIsIFwiMjUwLTIgSEQgQm9tYiB4IDEyIGluIEJheVwiLCBcIjI1MC0yIEhEIEJvbWIgeCAyNCBpbiBCYXlcIiwgXCIyNTAtMyBMRCBCb21iIHggMzZcIiwgXCJLRC02MyB4IDRcIiwgXCJLRC0yMCB4IDZcIiwgXCJLRC0yMCB4IDRcIiwgXCJLRC02MyB4IDIsIEtELTIwIHggNFwiLCBcIktELTYzIHggMiwgS0QtMjAgeCAyXCJdLCBcIkotMTFBXCI6IFtcIkZBQi0xMDB4MzYsUi03M3gyLEVDTVwiLCBcIkZBQi0yNTB4OCxSLTczeDIsRUNNXCIsIFwiRkFCLTUwMHg4LFItNzN4MixFQ01cIiwgXCJTLThLT014ODAsRkFCLTI1MHg0LFItNzN4MixFQ01cIiwgXCJTLTEzeDIwLEZBQi0yNTB4NCxSLTczeDIsRUNNXCIsIFwiUy0yNXg0LEZBQi01MDB4NCxSLTczeDIsRUNNXCIsIFwiUi0yN0VSeDQsUi0yN0VUeDIsUi03M3gyLEVDTVwiLCBcIlItNzd4NixSLTczeDIsRUNNXCIsIFwiUi0yN0VSeDYsUi03M3gyLEVDTVwiLCBcIlItNzd4NCxSLTI3RVR4MixSLTczeDIsRUNNXCIsIFwiUi03N3g0LFItMjdFUngyLFItNzN4MixFQ01cIiwgXCJCZXRBQi01MDBTaFB4NixSLTczeDIsRUNNXCIsIFwiUi03M3g0LEVDTVwiLCBcIlItNzd4MixSLTI3RVR4MixSLTczeDIsRUNNXCIsIFwiUi03N3g2LFItNzN4NFwiLCBcIlItNzd4MixSLTI3RVR4MixSLTI3RVJ4MixSLTczeDIsRUNNXCIsIFwiUi0yN0VUeDIsUi0yN0VSeDQsUi03M3gyLEVDTVwiLCBcIlMtOFRzTXg4MCxGQUItMjUweDQsUi03M3gyLEVDTVwiLCBcIlMtOE9GUDJ4ODAsRkFCLTI1MHg0LFItNzN4MixFQ01cIiwgXCJGQUItMjUweDE4LFItNzN4MixFQ01cIiwgXCIyKlM4LUtPTXgyLCBSLTczeDIsIEVDTVwiLCBcIjIqUzgtT0ZQMngyLCBSLTczeDIsIEVDTVwiLCBcIkZBQi0yNTB4NCwgMipGQUItNTAweDIsIFItNzN4MlwiLCBcIkZBQi0yNTB4NCwgMipGQUItMjUweDIsIFItNzN4MlwiLCBcIlJCSy0yNTAgSEVBVC9BUHgyLCBSQkstMjUwIEhFL0ZyYWd4MiwgUi03M3gyXCJdLCBcIkpGLTE3XCI6IFtcIlBMLTVFeDIsIEM4MDJBS3gyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBDLTcwMSBJUngyLCAxMTAwTCBUYW5rLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBTRC0xMHgyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBMRC0xMHgyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCA4MDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCBHQlUtMTB4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqR0JVLTEyeDIsIDgwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIDIqTWstODJ4MiwgTWstODN4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgMTEwMEwgVGFua3gyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBXTUQ3LCBDTTgwMkFLR3gyLCA4MDBMIFRhbmssIERMXCIsIFwiUEwtNUV4MiwgQy03MDEgQ0NEeDIsIDExMDBMIFRhbmssIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIEdCVS0xMngyLCAxMTAwTCBUYW5rLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMipHQlUtMTJ4MiwgR0JVLTE2eDIsIFdNRDdcIiwgXCJQTC01RXgyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBXTUQ3LCA4MDBMIFRhbmt4MiwgU1BKLCAyKkxELTEwXCIsIFwiUEwtNUV4MiwgTFMtNngyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBJUngyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBHQlUtMTJ4MiwgMTEwMEwgVGFua3gyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMipMRC0xMHgyLCAxMTAwTCBUYW5reDIsIFNQSlwiLCBcIlBMLTVFeDIsIExELTEweDIsIDExMDBMIFRhbmt4MiwgU1BKXCIsIFwiUEwtNUV4MiwgMipMRC0xMHgyLCBMUy02eDIsIFNQSlwiLCBcIlBMLTVFeDIsIDIqTEQtMTB4MiwgR0ItNi1IRXgyLCBTUEpcIiwgXCJQTC01RXgyLCBDLTcwMSBJUngyLCA4MDBMIFRhbmt4MiwgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIENDRHgyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCBDLTcwMSBDQ0R4MiwgODAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKkdCVS0xMngyLCAxMTAwTCBUYW5rLCBXTUQ3XCIsIFwiUEwtNUV4MiwgQy03MDEgSVJ4MiwgMTEwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIElSeDIsIDgwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIENDRHgyLCAxMTAwTCBUYW5rLCBXTUQ3XCIsIFwiUEwtNUV4MiwgQy03MDEgQ0NEeDIsIDgwMEwgVGFuaywgV01EN1wiLCBcIlBMLTVFeDIsIEMtNzAxIElSeDIsIExTLTZ4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgQy03MDEgSVIvQ0NELCBHQi02LUhFeDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIEMtNzAxIElSL0NDRCwgR0ItNi1TRld4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgV01ENywgR0ItNi1TRld4MiwgODAwTCBUYW5rLCBCUk0xXCIsIFwiUEwtNUV4MiwgV01ENywgR0ItNi1TRld4MiwgODAwTCBUYW5rLCBHQlUtMTJcIiwgXCJQTC01RXgyLCAyKk1rLTgyU0V4MiwgTWstODN4M1wiLCBcIlBMLTVFeDIsIE1rLTg0eDNcIiwgXCJQTC01RXgyLCAyKk1rNXgyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBVbmd1aWRlZCA5MG1teDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIDIqTWs1eDIsIE1rLTgzeDNcIiwgXCJQTC01RXgyLCBCUk0xeDIsIDExMDBMIFRhbmssIFdNRDdcIiwgXCJQTC01RXgyLCAyeDExMDBMIFRhbmtcIiwgXCJQTC01RXgyLCBTRC0xMHgyLCAyeDExMDBMIFRhbmtcIiwgXCJQTC01RXgyLCAyKlNELTEweDIsIDJ4MTEwMEwgVGFua1wiLCBcIlBMLTVFeDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIFNELTEweDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIDIqU0QtMTB4MiwgODAwTCBUYW5rXCIsIFwiUEwtNUV4MiwgU0QtMTB4MiwgU1BKXCIsIFwiUEwtNUV4MiwgU1BKXCIsIFwiUEwtNUV4MiwgMipTRC0xMHgyLCBTUEpcIiwgXCJQTC01RXgyXCIsIFwiUEwtNUV4MiwgU0QtMTB4MlwiLCBcIlBMLTVFeDIsIDIqU0QtMTBcIiwgXCJQTC01RXgyLCBTRC0xMHgyLCBTUEosIDExMDBMIFRhbmt4MlwiLCBcIlBMLTVFeDIsIDIqU0QtMTB4MiwgMTEwMEwgVGFua3gyLCA4MDBMIFRhbmtcIiwgXCJQTC01RXgyLCBTRC0xMHgyLCAxMTAwTCBUYW5reDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIEdCVS0xNngyLCBCUk0xeDIsIFdNRDdcIiwgXCJQTC01RXgyLCBXTUQ3XCIsIFwiUEwtNUV4MiwgMipMRC0xMCwgR0ItNngyLCAyKlNELTEwLCBTUEpcIiwgXCJQTC01RXgyLCBDLTcwMSBDQ0R4MiwgU1BKXCIsIFwiUEwtNUV4MiwgMipMRC0xMCwgQ004MDJBS0d4MiwgMipTRC0xMCwgRExcIiwgXCJQTC01RXgyLCAyKk1LLTgyeDIsIE1LLTgzeDIsIE1LLTg0XCIsIFwiUEwtNUV4MiwgTFMtNngyLCBHQi02eDIsIDgwMEwgVGFua1wiLCBcIlBMLTVFeDIsIDIqR0JVLTEyeDIsIExTLTZ4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqR0JVLTEyeDIsIEdCLTZ4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqVHlwZS0yMDBBeDJcIiwgXCJQTC01RXgyLCBUeXBlLTIwMEF4MlwiLCBcIlBMLTVFeDIsIDIqTFM2LTI1MHgyLCA4MDBMIFRhbmt4MiwgV01EN1wiLCBcIlBMLTVFeDIsIDIqTFM2LTI1MHgyLCA4MDBMIFRhbmssIDExMDBMIFRhbmt4MlwiLCBcIlBMLTVFeDIsIDIqTFM2LTEwMHgyLCAxMTAwTCBUYW5reDIsIFdNRDdcIiwgXCJQTC01RXgyLCAyKkxTNi0xMDB4MiwgODAwTCBUYW5reDIsIFdNRDdcIl0sIFwiV2luZ0xvb25nLUlcIjogW1wiQUtELTEwIHggMlwiXSwgXCJDaHJpc3RlbiBFYWdsZSBJSVwiOiBbXCJTbW9rZSAtIHdoaXRlXCJdLCBcIkYtMTZDXzUwXCI6IFtcIkFJTS0xMjBCKjIsIEFJTS05TSo0LCBGVUVMKjNcIiwgXCJBSU0tMTIwQio0LCBBSU0tOU0qMiwgRlVFTCozXCIsIFwiQUlNLTEyMEIqNiwgRlVFTCozXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjQsIEZVRUwqMlwiLCBcIkFJTS0xMjBDKjQsIEFJTS05WCoyLCBGVUVMKjNcIiwgXCJBSU0tMTIwQyo0LCBBSU0tOVgqMiwgRlVFTCozLCBUR1BcIiwgXCJBSU0tMTIwQyo0LCBBSU0tOVgqMiwgRlVFTCoyXCIsIFwiQUlNLTEyMEMqNiwgRlVFTCozXCIsIFwiQUlNLTEyMEMqNCwgQUlNLTlYKjIsIEZVRUwqMiwgRUNNXCIsIFwiQUlNLTEyMEMqNCwgQUlNLTlYKjIsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyo2LCBGVUVMKjIsIEVDTVwiLCBcIkFJTS0xMjBDKjYsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyo2LCBGVUVMKjJcIiwgXCJBSU0tMTIwQyo2LCBGVUVMKjMsIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tNjVEKjIsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTY1SCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS02NUgqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tNjVEKjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQ0JVLTk3KjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgTUstODIqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBDQlUtODcqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBNSy04MkhEKjQsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQ0JVLTEwMyo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIENCVS0xMDUqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBNSy04Mio2LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIE1LLTgySEQqNiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjAqMiwgQUlNLTlYKjIsIE1LLTgyU0UqNCwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjAqMiwgQUlNLTlYKjIsIE1LLTgyU0UqNiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBNSy04NCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIE1LLTgyUCo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0xMioyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0xMio0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0xMCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0yNCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0zMS0xQioyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0zMS0zQioyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0zOCoyLCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEdCVS0zOCo0LCBGVUVMKjIsIEVDTSwgVEdQXCIsIFwiQUlNLTEyMEMqMiwgQUlNLTlYKjIsIEFHTS02NUsqMiwgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tNjVHKjIsIEZVRUwqMiwgRUNNLCBUR1BcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTY1RywgQUdNLTY1SywgRlVFTCoyLCBFQ00sIFRHUFwiLCBcIkFJTS0xMjBDKjIsIEFJTS05WCoyLCBBR00tODhDKjIsIEZVRUwqMywgVEdQLCBIVFNcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTg4QyoyLCBGVUVMKjIsIEVDTSwgVEdQLCBIVFNcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgQUdNLTg4Qyo0LCBFQ00sIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqNCwgQUdNLTg4QyoyLCBGVUVMKjMsIFRHUCwgSFRTXCIsIFwiQUlNLTEyMEMqNCwgQUdNLTg4QyoyLCBGVUVMKjIsIEVDTSwgVEdQLCBIVFNcIiwgXCJBSU0tMTIwQyo0LCBBR00tODhDKjQsIEVDTSwgVEdQLCBIVFNcIiwgXCJBSU0tMTIwQyoyLCBBSU0tOVgqMiwgTUstNjEqMiwgRlVFTCoyLCBFQ00sIFRHUFwiXSwgXCJGLTVFLTNcIjogW1wiTWstODJMRCo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiQUlNLTlQKjIsIEZ1ZWwgMjc1KjNcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMjc1KjNcIiwgXCJBSU0tOVAqMiwgRnVlbCAxNTAqM1wiLCBcIkFJTS05UDUqMiwgRnVlbCAxNTAqM1wiLCBcIk1rLTgyU0UqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkNCVS01MkIqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkxBVS0zIEhFKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtMyBIRUFUKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtNjggSEUqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkxBVS02OCBIRUFUKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJNLTExNyo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiR0JVLTEyKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJDQlUtNTJCKjUsQUlNLTkqMlwiLCBcIk1rLTgyTEQqNSxBSU0tOSoyXCIsIFwiTWstODJTRSo1LEFJTS05KjJcIiwgXCJNay04MkxEKjcsQUlNLTlQKjIsIEZ1ZWwgMjc1KjJcIiwgXCJNay04MlNFKjcsQUlNLTlQKjIsIEZ1ZWwgMjc1KjJcIiwgXCJMQVUtMyBIRSoyLE1rLTgyTEQsQUlNLTlQKjIsRnVlbCAyNzUqMlwiLCBcIkxBVS02OCBIRSoyLE1rLTgyTEQsQUlNLTlQKjIsRnVlbCAyNzUqMlwiLCBcIk0tMTE3KjUsQUlNLTkqMlwiLCBcIkFJTS05UCoyLCBGdWVsIDI3NVwiLCBcIkFJTS05UCoyLCBGdWVsIDE1MFwiLCBcIkFJTS05UDUqMiwgRnVlbCAyNzVcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMTUwXCIsIFwiQUlNLTlCKjIsIEZ1ZWwgMjc1XCIsIFwiQUlNLTlCKjIsIEZ1ZWwgMTUwXCIsIFwiQUlNLTlCKjIsIEZ1ZWwgMjc1KjNcIiwgXCJBSU0tOUIqMiwgRnVlbCAxNTAqM1wiLCBcIkFOL0FTUS1UNTAsIEFJTS05UCwgRnVlbCAxNTBcIiwgXCJBSU0tOUIqMlwiLCBcIkFJTS05UCoyXCIsIFwiQUlNLTlQNSoyXCIsIFwiQW50aXNoaXAgTWs4MlwiXSwgXCJGLTVFXCI6IFtcIk1rLTgyTEQqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkFJTS05UCoyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlQNSoyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlQKjIsIEZ1ZWwgMTUwKjNcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMTUwKjNcIiwgXCJNay04MlNFKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJDQlUtNTJCKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtMyBIRSo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTMgSEVBVCo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTEFVLTY4IEhFKjQsQUlNLTlQKjIsRnVlbCAyNzVcIiwgXCJMQVUtNjggSEVBVCo0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiTS0xMTcqNCxBSU0tOVAqMixGdWVsIDI3NVwiLCBcIkdCVS0xMio0LEFJTS05UCoyLEZ1ZWwgMjc1XCIsIFwiQ0JVLTUyQio1LEFJTS05KjJcIiwgXCJNay04MkxEKjUsQUlNLTkqMlwiLCBcIk1rLTgyU0UqNSxBSU0tOSoyXCIsIFwiTWstODJMRCo3LEFJTS05UCoyLCBGdWVsIDI3NSoyXCIsIFwiTWstODJTRSo3LEFJTS05UCoyLCBGdWVsIDI3NSoyXCIsIFwiTEFVLTMgSEUqMixNay04MkxELEFJTS05UCoyLEZ1ZWwgMjc1KjJcIiwgXCJMQVUtNjggSEUqMixNay04MkxELEFJTS05UCoyLEZ1ZWwgMjc1KjJcIiwgXCJNLTExNyo1LEFJTS05KjJcIiwgXCJBSU0tOVAqMiwgRnVlbCAyNzVcIiwgXCJBSU0tOVAqMiwgRnVlbCAxNTBcIiwgXCJBSU0tOVA1KjIsIEZ1ZWwgMjc1XCIsIFwiQUlNLTlQNSoyLCBGdWVsIDE1MFwiLCBcIkFJTS05QioyLCBGdWVsIDI3NVwiLCBcIkFJTS05QioyLCBGdWVsIDE1MFwiLCBcIkFJTS05QioyLCBGdWVsIDI3NSozXCIsIFwiQUlNLTlCKjIsIEZ1ZWwgMTUwKjNcIiwgXCJBTi9BU1EtVDUwLCBBSU0tOVAsIEZ1ZWwgMTUwXCIsIFwiQUlNLTlCKjJcIiwgXCJBSU0tOVAqMlwiLCBcIkFJTS05UDUqMlwiXSwgXCJGLTg2RiBTYWJyZVwiOiBbXCIxMjBnYWwgRnVlbCoyXCIsIFwiMjAwZ2FsIEZ1ZWwqMlwiLCBcIjEyMGdhbCBGdWVsKjIsIDIwMGdhbCBGdWVsKjJcIiwgXCJHQVItOCoyXCIsIFwiMTIwZ2FsIEZ1ZWwqMiwgR0FSLTgqMlwiLCBcIkhWQVIqMTZcIiwgXCIyMDBnYWwgRnVlbCoyLCBIVkFSeDIqNFwiLCBcIkFOLU02NCoyXCIsIFwiMjAwZ2FsIEZ1ZWwqMiwgQU4tTTY0KjJcIiwgXCJNMTE3KjJcIl0sIFwiRi0xNEEtMTM1LUdSXCI6IFtcIlhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tN0YqNiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTdGKjIsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03RioxLCBBSU0tOUwqNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tOUwqNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs2MCo0LCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS03Rio0LCBBSU0tOUwqNCwgWFQqMlwiLCBcIkFJTS03Rio0LCBBSU0tOUwqNCwgWFQqMlwiLCBcIkJEVS0zMyoxNFwiLCBcIkJEVS0zMyoxMlwiLCBcIkdCVS0xMCoyXCIsIFwiR0JVLTEyKjRcIiwgXCJHQlUtMTYqNFwiLCBcIkdCVS0yNCoyXCIsIFwiTWstODQqNFwiLCBcIk1rLTgzKjRcIiwgXCJNay04Mio0XCIsIFwiTWstODIqMTRcIiwgXCJNay04MSoxNFwiLCBcIk1rLTIwKjRcIiwgXCJNay04MkFJUio0XCIsIFwiWnVuaSoxMlwiLCBcIlp1bmkqMjhcIiwgXCJMVVUtMioyNFwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN0YqMSwgQUlNLTlMKjIsIFhUKjIsIE1rLTgyKjJcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdGKjEsIEFJTS05TCoyLCBYVCoyLCBNay04MioxXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03RioxLCBBSU0tOUwqMiwgWFQqMiwgTWstMjAqMlwiLCBcIkFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgR0JVLTEyKjIsIExBTlRJUk5cIiwgXCJBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIEdCVS0yNCoxLCBMQU5USVJOXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgTWstODIqMiwgTEFOVElSTlwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIE1rLTIwKjIsIExBTlRJUk5cIl0sIFwiRi0xNEEtOTUtR1JcIjogW1wiQUlNLTU0QS1NSzQ3KjYsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjYsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzYwKjYsIEFJTS05TCoyXCIsIFwiQUlNLTdGKjYsIEFJTS05TCoyXCIsIFwiQUlNLTdGKjYsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS03RioyLCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs0Nyo0LCBBSU0tN0YqMiwgQUlNLTlMKjJcIiwgXCJBSU0tNTRBLU1LNjAqNCwgQUlNLTdGKjIsIEFJTS05TCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03RioxLCBBSU0tOUwqNFwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN0YqMSwgQUlNLTlMKjRcIiwgXCJBSU0tNTRBLU1LNjAqMiwgQUlNLTdGKjEsIEFJTS05TCo0XCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS05TCo0XCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS05TCo0XCIsIFwiQUlNLTU0QS1NSzYwKjQsIEFJTS05TCo0XCIsIFwiQUlNLTdGKjQsIEFJTS05TCo0XCIsIFwiQUlNLTdGKjQsIEFJTS05TCo0XCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03RiozLCBBSU0tOUwqMlwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN0YqMywgQUlNLTlMKjJcIiwgXCJBSU0tNTRBLU1LNjAqMiwgQUlNLTdGKjMsIEFJTS05TCoyXCIsIFwiQkRVLTMzKjE0XCIsIFwiQkRVLTMzKjEyXCIsIFwiR0JVLTEwKjJcIiwgXCJHQlUtMTIqNFwiLCBcIkdCVS0xNio0XCIsIFwiR0JVLTI0KjJcIiwgXCJNay04NCo0XCIsIFwiTWstODMqNFwiLCBcIk1rLTgyKjRcIiwgXCJNay04MioxNFwiLCBcIk1rLTgxKjE0XCIsIFwiTWstMjAqNFwiLCBcIk1rLTgyQUlSKjRcIiwgXCJadW5pKjEyXCIsIFwiWnVuaSoyOFwiLCBcIkxVVS0yKjI0XCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03RioxLCBBSU0tOUwqMiwgTWstODIqMlwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN0YqMSwgQUlNLTlMKjIsIE1rLTgyKjFcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdGKjEsIEFJTS05TCoyLCBNay0yMCoyXCJdLCBcIkYtMTRCXCI6IFtcIlhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNiwgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNjAqNiwgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tNTRDLU1LNDcqNiwgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tN00qNiwgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tN00qNiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTdNKjIsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS03TSoyLCBBSU0tOUwqMiwgWFQqMlwiLCBcIkFJTS01NEEtTUs2MCo0LCBBSU0tN00qMiwgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tNTRDLU1LNDcqNCwgQUlNLTdNKjIsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjIsIEFJTS03TSoxLCBBSU0tOU0qMiwgQUlNLTlMKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqMiwgQUlNLTdNKjEsIEFJTS05TSo0LCBYVCoyXCIsIFwiQUlNLTU0QS1NSzYwKjIsIEFJTS03TSoxLCBBSU0tOU0qNCwgWFQqMlwiLCBcIkFJTS01NEMtTUs0NyoyLCBBSU0tN00qMSwgQUlNLTlNKjQsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqNCwgQUlNLTlNKjIsIEFJTS05TCoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzQ3KjQsIEFJTS05TSo0LCBYVCoyXCIsIFwiQUlNLTU0QS1NSzYwKjQsIEFJTS05TSo0LCBYVCoyXCIsIFwiQUlNLTU0Qy1NSzQ3KjQsIEFJTS05TSo0LCBYVCoyXCIsIFwiQUlNLTdNKjQsIEFJTS05TSoyLCBBSU0tOUwqMiwgWFQqMlwiLCBcIkFJTS03TSo0LCBBSU0tOUwqNCwgWFQqMlwiLCBcIkFJTS01NEEtTUs0NyoyLCBBSU0tN00qMywgQUlNLTlNKjIsIFhUKjJcIiwgXCJBSU0tNTRBLU1LNDcqMiwgQUlNLTdNKjMsIEFJTS05TSoyLCBYVCoyXCIsIFwiQUlNLTU0QS1NSzYwKjIsIEFJTS03TSozLCBBSU0tOU0qMiwgWFQqMlwiLCBcIkFJTS01NEMtTUs0NyoyLCBBSU0tN00qMywgQUlNLTlNKjIsIFhUKjJcIiwgXCJCRFUtMzMqMTRcIiwgXCJCRFUtMzMqMTJcIiwgXCJHQlUtMTAqMlwiLCBcIkdCVS0xMio0XCIsIFwiR0JVLTE2KjRcIiwgXCJHQlUtMjQqMlwiLCBcIk1rLTg0KjRcIiwgXCJNay04Myo0XCIsIFwiTWstODIqNFwiLCBcIk1rLTgyKjE0XCIsIFwiTWstODEqMTRcIiwgXCJNay0yMCo0XCIsIFwiTWstODJBSVIqNFwiLCBcIlp1bmkqMTJcIiwgXCJadW5pKjI4XCIsIFwiTFVVLTIqMjRcIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBNay04MioyXCIsIFwiQUlNLTU0QS1NSzYwKjEsIEFJTS03TSoxLCBBSU0tOU0qMiwgWFQqMiwgTWstODIqMVwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIE1rLTIwKjJcIiwgXCJBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIEdCVS0xMioyLCBMQU5USVJOXCIsIFwiQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBHQlUtMjQqMSwgTEFOVElSTlwiLCBcIkFJTS01NEEtTUs2MCoxLCBBSU0tN00qMSwgQUlNLTlNKjIsIFhUKjIsIE1rLTgyKjIsIExBTlRJUk5cIiwgXCJBSU0tNTRBLU1LNjAqMSwgQUlNLTdNKjEsIEFJTS05TSoyLCBYVCoyLCBNay0yMCoyLCBMQU5USVJOXCJdLCBcIkZBLTE4Q19ob3JuZXRcIjogW1wiQUlNLTlNKjYsIEFJTS03TSoyLCBGVUVMKjNcIiwgXCJBSU0tOU0qNiwgQUlNLTdNKjIsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBNSy04NCoyLCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstODMqNCwgRlVFTCoyXCIsIFwiQ2FycmllciBMYW5kaW5nXCIsIFwiQUlNLTlNKjIsIEFJTS03TSo0LCBGVUVMKjNcIiwgXCJBSU0tOU0qMiwgQ0JVLTk5KjQsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBNSy04MlNFKjQsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBNSy0yMCo0LCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstODIqNCwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIEFJTS03TSoyLCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTUstODMqMiwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIFpVTkkqNCwgRlVFTCoyXCIsIFwiQUlNLTlNKjIsIExBVS02MSo0LCBGVUVMKjJcIiwgXCJBSU0tOU0qMiwgTEFVLTY4KjQsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBBSU0tN00qMiwgRlVFTCoxXCIsIFwiQUlNLTlYKjIsIEFJTS0xMjBDLTUqMSwgR0JVLTMxKjQsIEFURkxJUiwgRlVFTFwiLCBcIkFJTS05WCoyLCBBSU0tMTIwQy01KjYsIEZVRUwqM1wiLCBcIkFJTS05WCoyLCBBSU0tMTIwQy01KjEsIEFHTS02NUQqNCwgQVRGTElSLCBGVUVMXCIsIFwiQUlNLTlYKjIsIEFJTS0xMjBDLTUqMiwgQUdNLTg4QyoyLCBGVUVMXCIsIFwiQUlNLTlYKjIsIEFJTS0xMjBDLTUqMSwgR0JVLTM4KjQsIEdCVS0xMio0LCBBVEZMSVIsIEZVRUxcIiwgXCJBSU0tOVgqMiwgQUlNLTEyMEMtNSoxLCBBR00tODRFKjIsIERBVEFMSU5LLCBBVEZMSVIsIEZVRUwqMlwiLCBcIkFJTS05TSoyLCBBSU0tMTIwQy01KjEsIEFHTS04NEQqNCwgQVRGTElSLCBGVUVMXCIsIFwiQUlNLTlNKjIsIEFURkxJUiwgRlVFTFwiLCBcIkFJTS05TSoyLCBBVEZMSVIsIEZVRUwqMlwiXSwgXCJJLTE2XCI6IFtcIjZ4UlMtODJcIiwgXCIyeEZBQi0xMDBcIiwgXCI2eFJTLTgyLCAyeEZBQi0xMDBcIiwgXCI2eFJTLTgyLCAyeERyb3BUYW5rLTkzTFwiLCBcIjJ4RHJvcFRhbmstOTNMXCJdLCBcIkthLTUwXCI6IFtcIjR4RkFCLTUwMFwiLCBcIjJ4RnVlbCB0YW5rLCAyeEtNR1UgQVBcIiwgXCI4MHhTLTggVHNNXCIsIFwiMnhGdWVsIHRhbmssIDQweFMtOFwiLCBcIjgweFMtOFwiLCBcIjR4S01HVSBBVFwiLCBcIjJ4S01HVSBBUFwiLCBcIjJ4RnVlbCB0YW5rLCAxMng5QTQxNzJcIiwgXCIyeEZ1ZWwgdGFuaywgMnhVUEstMjNcIiwgXCIxMng5QTQxNzIsIDQweFMtOFwiLCBcIjEyeDlBNDE3MiwgMnhLTUdVIEFUXCIsIFwiNHhLTUdVIEFQXCIsIFwiMnhGQUItMjUwLCAyeEZ1ZWwgdGFua1wiLCBcIjEyeDlBNDE3MiwgMnhGQUItNTAwXCIsIFwiMjB4Uy0xM1wiLCBcIjQweFMtOFwiLCBcIjEyeDlBNDE3MiwgMnhVUEstMjNcIiwgXCIyeEtNR1UgQVRcIiwgXCI2eDlBNDE3MlwiLCBcIjJ4RnVlbCB0YW5rLCAyeEtNR1UgQVRcIiwgXCI0eEZ1ZWwgdGFua1wiLCBcIjJ4S01HVSBBUCwgMTJ4OUE0MTcyXCIsIFwiMTJ4OUE0MTcyXCIsIFwiMnhGdWVsIHRhbmtcIiwgXCI0MHhTLTggVHNNLCAxMng5QTQxNzJcIiwgXCIyeEZBQi01MDBcIiwgXCI0MHhTLTggVHNNLCAyeEZ1ZWwgdGFua1wiLCBcIjR4VVBLLTIzXCIsIFwiMTB4Uy0xM1wiLCBcIjQweFMtOCBUc01cIiwgXCIxMng5QTQxNzIsIDEweFMtMTNcIiwgXCIyeEZ1ZWwgdGFuaywgMnhGQUItNTAwXCIsIFwiMnhGQUItMjUwXCIsIFwiNHhGQUItMjUwXCIsIFwiMnhGdWVsIHRhbmssIDEweFMtMTNcIiwgXCIyeEZBQi0yNTAsIDEyeDlBNDE3MlwiLCBcIjJ4VVBLLTIzXCJdLCBcIkthLTUwXzNcIjogW1wiNHhJZ2xhXCIsIFwiMnhLaC0yNU1MLCAxMHhTLTEzLCA0eElnbGFcIiwgXCIxMng5QTQxNzIsIDQweFMtOEtPTSwgNHhJZ2xhXCIsIFwiMTJ4OUE0MTcyLCA0MHhTLThPRlAsIDR4SWdsYVwiLCBcIjEyeDlBNDE3MiwgNDB4Uy0xMywgNHhJZ2xhXCIsIFwiODB4Uy04S09NLCA0eElnbGFcIiwgXCI4MHhTLThPRlAsIDR4SWdsYVwiLCBcIjIweFMtMjAsIDR4SWdsYVwiLCBcIjR4VVBLLTIzLCA0eElnbGFcIiwgXCIxMHhTLTEzLCAyeEZBQi01MDAsIDR4SWdsYVwiLCBcIjEweFMtMTMsIDJ4RkFCLTI1MCwgNHhJZ2xhXCIsIFwiODB4Uy04T00sIDR4SWdsYVwiLCBcIjgweFMtOFRzTSwgNHhJZ2xhXCIsIFwiNDB4Uy04T0ZQLCAyeEZ1ZWwsIDR4SWdsYVwiLCBcIjEyeDlBNDE3MiwgMnhGdWVsLCA0eElnbGFcIl0sIFwiTC0zOUNcIjogW1wiU0FCLTEwMHgyXCIsIFwiUi0zU3gyXCIsIFwiU21va2VzXCIsIFwiQ2VudHJhbCBTbW9rZVwiLCBcIkZBQi0xMDB4MlwiLCBcIlMtNUtPeDMyXCJdLCBcIkwtMzlaQVwiOiBbXCJTLTVLT3gzMlwiLCBcIlMtNUtPeDY0XCIsIFwiUy01S094MzIsIFBUQi0xNTB4MlwiLCBcIlMtNUtPeDMyLCBQVEItMzUweDJcIiwgXCJTLTVLT3gzMiwgRkFCLTEwMHgyXCIsIFwiT0ZBQi0xMDAgSnVwaXRlciB4NCwgRkFCLTEwMHgyXCIsIFwiRkFCLTEwMHgyXCIsIFwiRkFCLTEwMHg0XCIsIFwiT0ZBQi0xMDAgSnVwaXRlciB4OFwiLCBcIkZBQi0xMDB4MiwgUFRCLTE1MHgyXCIsIFwiRkFCLTEwMHgyLCBQVEItMzUweDJcIiwgXCJQSy0zeDRcIiwgXCJQSy0zeDIsIFBUQi0xNTB4MlwiLCBcIlItNjBNeDJcIiwgXCJTQUItMTAweDRcIiwgXCJSLTNTeDJcIiwgXCJSLTNTeDIsIFBLLTN4MlwiLCBcIlItNjBNeDIsIFBLLTN4MlwiXSwgXCJNLTIwMDBDXCI6IFtcIkZveFwiLCBcIkZveCAvIE1hZ2ljIChRUkEpXCIsIFwiQWxwaGEgLyBTNTMwRFwiLCBcIkZveCAvIFM1MzBEIC8gTWFnaWNcIiwgXCJGb3ggLyBTNTMwRCAvIE1hZ2ljIC8gRWNsYWlyXCIsIFwiQnJhdm9cIiwgXCJCcmF2byAvIE1hZ2ljXCIsIFwiS2lsb1wiLCBcIktpbG8gLyBNYWdpY1wiLCBcIkJyYXZvIC8gNHhNay04MiAvIE1hZ2ljXCIsIFwiQnJhdm8gLyBHQlUtMTIgLyBNYWdpY1wiLCBcIkJyYXZvIC8gMnhHQlUtMTIgLyBNYWdpY1wiLCBcIkJyYXZvIC8gR0JVLTE2IC8gTWFnaWNcIiwgXCJCcmF2byAvIEdCVS0yNCAvIE1hZ2ljXCIsIFwiQnJhdm8gLyBCQVAtMTAwIC8gTWFnaWNcIiwgXCJCcmF2byAvIDR4U25ha2VFeWUgLyBNYWdpY1wiLCBcIkZveCAvIDR4TWstODIgLyBNYWdpY1wiLCBcIktpbG8gLyA0eE1rLTgyIC8gTWFnaWNcIl0sIFwiTUItMzM5QVwiOiBbXCJBIC0gMiozMjBMIFRpcFRhbmtzICsgMipERUZBLTU1MyBHdW5Qb2RzICsgMipNay44MyArIDIqTWsuODEgXCIsIFwiQSAtIDIqMzIwTCBUaXBUYW5rcyBbQ2xlYW5dXCIsIFwiUmVjb25cIiwgXCJUcmFpbmluZ1wiLCBcIkFBIC0gMiozMjBMIFRpcFRhbmtzICsgMipERUZBLTU1MyBHdW5Qb2RzICsgMipMQVUtMTAoWnVuaSBSb2NrZXRzKSBbQVJNQURBXVwiLCBcIkFNIC0gMiozMjBMIFRpcFRhbmtzICsgMipBTi9NMyBHdW5Qb2RzICsgMiozMzBMIFRhbmtzICsgMipMQVUtMyAoSHlkcmEgcm9ja2V0cylcIiwgXCJBIC0gMio1MDBMIFRpcFRhbmtzICsgMiozMzBMIFRhbmtzICsgTHVnZ2FnZSBDb250YWluZXIgIFtGZXJyeSBMb25nIFJhbmdlXVwiLCBcIkEgLSAyKjUwMEwgVGlwVGFua3MgKyA0Kk1rLjgySEQgKyAyKkxSLTI1IChBUEkgUm9ja2V0cylcIiwgXCJBIC0gMiozMjBMIFRpcFRhbmtzICsgMiozMzBMIFRhbmtzIFtGZXJyeSBNZWRpdW0gUmFuZ2VdXCIsIFwiQSAtIDIqNTAwTCBUaXBUYW5rcyArIDIqQU4vTTMgR3VuUG9kcyArIDIqTWF0cmEgMTU1ICsgMiogQmVsb3VnYVwiLCBcIlJ1bndheSBJbnRlcmRpY3Rpb25cIiwgXCJBIC0gMio1MDBMIFRpcFRhbmtzICsgMipERUZBLTU1MyBHdW5Qb2RzICsgMipNay44MkxEICsgMipMUi0yNSAoQVBJIFJvY2tldHMpXCIsIFwiQSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqTWsuODJMRCBCb21icyArIDIqTFItMjUoQVBJIFJvY2tldHMpXCIsIFwiQSAtIDIqMzIwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqTWsuODJMRCArIDIqTFItMjUgKEhFSSBSb2NrZXRzKVwiLCBcIkEgLSAyKjMyMEwgVGlwVGFua3MgKyA2Kk1rLjgyTERcIiwgXCJSdW53YXkgSW50ZXJkaWN0aW9uICgzNipCQVAtMTAwKVwiLCBcIkFudGkgLSBMaWdodCBBcm1vdXJlZCBWZWhpY2xlICgzNipCQVQtMTIwIEFCTClcIiwgXCJBUCAtIDIqMzIwTCBUaXBUYW5rcyArIDIqREVGQS01NTMgR3VuUG9kcyArIDIqMzMwTCBUYW5rcyArIDIqTWF0cmEgMTU1IChTTkVCIHJvY2tldHMpXCJdLCBcIk1CLTMzOUFQQU5cIjogW1wiUEFOIC0gU21va2UgV2hpdGVcIiwgXCJQQU4gLSBTbW9rZSBXaGl0ZSBhbmQgQ29sb3IgUmVkXCIsIFwiUEFOIC0gRnVlbCBFeHRlcm5hbCBbUkVEIFNNT0tFXVwiLCBcIlBBTiAtIEZ1bGwgUGF5bG9hZCBbUkVEIFNNT0tFXSArIDIqMzIwTCBUaXBUYW5rc1wiLCBcIlBBTiAtIEZ1bGwgUGF5bG9hZCBbR1JFRU4gU01PS0VdICsgMiozMjBMIFRpcFRhbmtzXCIsIFwiUEFOIC0gRnVlbCBFeHRlcm5hbCBbR1JFRU4gU01PS0VdXCIsIFwiUEFOIC0gRnVsbCBQYXlsb2FkIFtSRUQgU01PS0VdICsgMio1MDBMIFRpcFRhbmtzXCIsIFwiUEFOIC0gU21va2UgV2hpdGUgYW5kIENvbG9yIEdyZWVuXCIsIFwiUEFOIC0gRnVsbCBQYXlsb2FkIFtHUkVFTiBTTU9LRV0gKyAyKjUwMEwgVGlwVGFua3NcIl0sIFwiTWktMjRQXCI6IFtcIjJ4QjhWMjAgKFMtOEtPTSkrOHhBVEdNIDlNMTE0XCIsIFwiMnhCOFYyMCAoIFMtOEtPTSkrNHhBVEdNIDlNMTE0XCIsIFwiNHhCOFYyMCAoUy04S09NKSs0eEFUR00gOU0xMTRcIiwgXCIyeEI4VjIwIChTLThLT00pKzJ4Qm9tYnMtMjUwKzR4QVRHTSA5TTExNFwiLCBcIjJ4QjhWMjAgKFMtOE9GUDIpKzR4QVRHTSA5TTExNFwiLCBcIjR4VUItMzJBIChTLTVLTykrNHhBVEdNIDlNMTE0XCIsIFwiNHhHVVYtMSBBUDMwKzR4QVRHTSA5TTExNFwiLCBcIjJ4R1VWLTEgQVAzMCs0eEFUR00gOU0xMTRcIiwgXCIyeEdVVi0xIChHVU4gMTIuNysyeDcuNjIpICs0eEFUR00gOU0xMTRcIiwgXCIyeEtNR1UgKDk2IEFPIDIuNVJUKSs4eEFUR00gOU0xMTRcIiwgXCIyeEItMTNMKzR4QVRHTSA5TTExNFwiLCBcIjJ4Uy0yNEIrNHhBVEdNIDlNMTE0XCIsIFwiNHhTLTI0Qis0eEFUR00gOU0xMTRcIiwgXCIyeEJvbWJzLTUwMCs0eEFUR00gOU0xMTRcIiwgXCI0eEJvbWJzLTI1MCs0QVRHTSA5TTExNFwiLCBcIjJ4UkJLLTUwMCAoUFRBQi0xTSkrNHhBVEdNIDlNMTE0XCIsIFwiMnhSQkstNTAwVSAoT0FCIDIuNVJUKSs0eEFUR00gOU0xMTRcIiwgXCI0eFJCSy0yNTAgKDQyIFBUQUIgMi41TSkgKzRBVEdNIDlNMTE0XCIsIFwiNHhSQkstMjUwLTI3NSAoMTUwIEFPLTFTQ2gpKzRBVEdNIDlNMTE0XCIsIFwiNHhQVEItNDUwIEZ1ZWwgdGFua1wiXSwgXCJNaUctMTlQXCI6IFtcIlBUQi03NjAgeCAyXCIsIFwiSy0xM0EgeCAyLCBQVEItNzYwIHggMlwiLCBcIkstMTNBIHggMlwiLCBcIkstMTNBIHggMiwgT1JPLTU3SyB4IDIsIFBUQi03NjAgeCAyXCIsIFwiT1JPLTU3SyB4IDIsIFBUQi03NjAgeCAyXCIsIFwiT1JPLTU3SyB4IDRcIiwgXCJPUk8tNTdLIHggMlwiLCBcIkZBQi0xMDBNIHggMiwgT1JPLTU3SyB4IDJcIiwgXCJGQUItMjUwIHggMiwgT1JPLTU3SyB4IDJcIiwgXCJGQUItMTAwTSB4IDJcIiwgXCJGQUItMjUwIHggMlwiXSwgXCJNaUctMjFCaXNcIjogW1wiUGF0cm9sLCBsb25nIHJhbmdlXCIsIFwiUGF0cm9sLCBtZWRpdW0gcmFuZ2VcIiwgXCJQYXRyb2wsIHNob3J0IHJhbmdlXCIsIFwiSGFyZCB0YXJnZXRzLCBCT01CU1wiLCBcIlVua25vd24gb3IgbWl4ZWQgdGFyZ2V0cywgQk9NQlMgKyBST0NLRVRTXCIsIFwiU29mdCB0YXJnZXRzLCBDTFVTVEVSUyArIFJPQ0tFVFNcIiwgXCJTb2Z0IHRhcmdldHMsIENMVVNURVJTXCIsIFwiU29mdCB0YXJnZXRzLCBzY2F0dGVyZWRcIiwgXCJGZXcgYmlnIHRhcmdldHMsIEdST00gKyBCT01CU1wiLCBcIlZlcnkgaGFyZCB0YXJnZXQsIFBFTkVUUkFUSU9OXCIsIFwiQWVyaWFsIGF0dGFjaywgaGFyZCB0YXJnZXRzLCBDTFVTVEVSU1wiLCBcIkhhcmQgdGFyZ2V0cywgUk9DS0VUUywgUEVORVRSQVRJT05cIiwgXCJTb2Z0IHRhcmdldHMsIFJPQ0tFVFMsIEJMQVNULUZSQUdNRU5UU1wiLCBcIkxvbmcgcmFuZ2UsIE1JWFwiLCBcIkxvbmcgcmFuZ2UsIFJBREFSIEdVSURFRCBNSVNTSUxFU1wiLCBcIkxvbmcgcmFuZ2UsIElORlJBIFJFRCBNSVNTSUxFU1wiLCBcIkVzY29ydFwiLCBcIkVzY29ydCwgSkFNTUVSXCIsIFwiTmlnaHQsIElMTFVNSU5BVE9SXCIsIFwiTG9uZyByYW5nZSwgSkFNTUVSXCIsIFwiU29mdCB0YXJnZXRzLCBVUEsgKyBST0NLRVRTXCIsIFwiU29mdCB0YXJnZXRzLCBVUEsgKyBDTFVTVEVSU1wiLCBcIlBhdHJvbCwgSkFNTUVSXCIsIFwiTlVDTEVBUiBBXCIsIFwiTlVDTEVBUiBCXCIsIFwiU2hvcnQgcmFuZ2VcIiwgXCJBRVJPQkFUSUNcIl0sIFwiTWlyYWdlLUYxQlwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUJEXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUJFXCI6IFtcIjIqQUlNOS1KVUxJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KVUxJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMEVNXCIsIFwiMipBSU05LUpVTEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKkFJTTktSiwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SlVMSSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQlFcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSVwiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQy0yMDBcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQ0VcIjogW1wiMipBSU05LUpVTEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipBSU05LUpVTEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwRU1cIiwgXCIyKkFJTTktSlVMSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCAyNTAgSERcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKVUxJLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDR1wiOiBbXCIyKkFJTS05IEpVTEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjQqQUlNLTkgSlVMSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOSBKVUxJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05IEpVTEksIFI1MzBJUlwiLCBcIjIqQUlNLTkgSlVMSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipBSU0tOSBKVUxJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipBSU0tOSBKVUxJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTkgSlVMSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05IEpVTEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqQUlNLTkgSlVMSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOSBKVUxJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNIXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxQ0pcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFDS1wiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNSXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNUXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUNaXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxRERBXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUVEXCI6IFtcIjIqUjU1MCBNYWdpYyBJSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJSVwiLCBcIjIqUjU1MCBNYWdpYyBJSSwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSUksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIElJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSUksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIElJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUVEQVwiOiBbXCIyKlI1NTAgTWFnaWMgSSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlM1MzAsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFFRVwiOiBbXCIyKkFJTTktSlVMSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU05LUpVTEksIDIqUjUzMEVNLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTTktSlVMSSwgUjUzMEVNXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqQUlNOS1KVUxJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipBSU05LUosIDIqTUFUUkEgRjQgU05FQjI1MSAoSEUpLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05SiwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgTERcIiwgXCIyKkFJTS05SiwgMipGdWVsIFRhbmssIDQqU0FNUCA0MDAgSERcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjUzIChTaGFwZWQgQ2hhcmdlKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlNBTVAgMjUwIEhELCAyIE1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDI1MCBIRFwiLCBcIjIqQUlNLTlKVUxJLCA4KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUpVTEksIDgqQkxVMTA3IER1cmFuZGFsXCJdLCBcIk1pcmFnZS1GMUVIXCI6IFtcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwRU0sIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCAxKlI1MzBJUiwgMipGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipNQVRSQSBGNCBTTkVCMjUxIChIRSksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxRVFcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUzUzMCwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSVwiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipTNTMwLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCAyKkZ1ZWwgVGFuaywgNCpTQU1QIDQwMCBIRFwiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTMgKFNoYXBlZCBDaGFyZ2UpLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEYxIFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgNCpNQVRSQSBGNCBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDIqU0FNUCAyNTAgSEQsIDIgTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MF9NYWdpY18xLCA4KlNBTVAgMjUwIEhEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCA0MDAgTERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpCTFUxMDcgRHVyYW5kYWxcIl0sIFwiTWlyYWdlLUYxSkFcIjogW1wiMipSNTUwIE1hZ2ljIEksIDIqUjUzMElSLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKlI1MzBFTSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgUjUzMElSXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipSNTUwX01hZ2ljXzEsIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwX01hZ2ljXzEsIDgqU0FNUCAyNTAgSERcIiwgXCIyKlI1NTBfTWFnaWNfMSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqUjU1MF9NYWdpY18xLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFNLUNFXCI6IFtcIjIqQUlNOS1KVUxJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU05LUpVTEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKkFJTTktSlVMSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCAyNTAgSERcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKVUxJLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJNaXJhZ2UtRjFNLUVFXCI6IFtcIjIqQUlNOS1KVUxJLCAyKlI1MzBJUiwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU05LUpVTEksIFI1MzBJUlwiLCBcIjIqUjU1MCBNYWdpYyBJLCBSNTMwSVJcIiwgXCIyKkFJTTktSlVMSSwgMSpSNTMwSVIsIDIqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDEqUjUzMElSLCAyKkZ1ZWwgVGFua1wiLCBcIjIqQUlNOS1KLCAyKk1BVFJBIEY0IFNORUIyNTEgKEhFKSwgMipSNTMwSVIsIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIExEXCIsIFwiMipBSU0tOUosIDIqRnVlbCBUYW5rLCA0KlNBTVAgNDAwIEhEXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjQgU05FQjI1MyAoU2hhcGVkIENoYXJnZSksIDEqRnVlbCBUYW5rXCIsIFwiMipSNTUwIE1hZ2ljIEksIDQqTUFUUkEgRjEgU05FQjI1NiAoQVApLCAxKkZ1ZWwgVGFua1wiLCBcIjIqUjU1MCBNYWdpYyBJLCA0Kk1BVFJBIEY0IFNORUIyNTYgKEFQKSwgMSpGdWVsIFRhbmtcIiwgXCIyKlI1NTAgTWFnaWMgSSwgMipTQU1QIDI1MCBIRCwgMiBNQVRSQSBGMSBTTkVCMjU2IChBUCksIDEqRnVlbCBUYW5rXCIsIFwiMipBSU0tOUpVTEksIDgqU0FNUCAyNTAgSERcIiwgXCIyKkFJTS05SlVMSSwgOCpTQU1QIDQwMCBMRFwiLCBcIjIqQUlNLTlKVUxJLCA4KkJMVTEwNyBEdXJhbmRhbFwiXSwgXCJTQTM0MkxcIjogW1wiTTYyMSwgOHhTTkVCNjggRUFQXCIsIFwiTTYyMSwgOHhTTkVCNjggRUFQLCBJUiBEZWZsZWN0b3JcIiwgXCJNNjIxLCA4eFNORUI2OCBFQVAsIElSIERlZmxlY3RvciwgU2FuZCBGaWx0ZXJcIl0sIFwiU0EzNDJNXCI6IFtcIkhPVDN4NFwiLCBcIklSIERlZmxlY3RvclwiLCBcIkhvdDN4NCwgRkFTLCBJUiBEZWZsZWN0b3JcIiwgXCJIT1QzeDJcIiwgXCJIb3QzeDQsIElSIERlZmxlY3RvclwiLCBcIkhvdDN4MiwgSVIgRGVmbGVjdG9yXCJdLCBcIlNBMzQyTWluaWd1blwiOiBbXCJJUiBEZWZsZWN0b3JcIiwgXCJJUiBEZWZsZWN0b3IsIFNhbmQgRmlsdGVyXCJdLCBcIlNBMzQyTWlzdHJhbFwiOiBbXCJNaXN0cmFsIHggNFwiLCBcIk1pc3RyYWwgeCA0LCBJUiBEZWZsZWN0b3JcIiwgXCJNaXN0cmFsIHggNCwgSVIgRGVmbGVjdG9yLCBTYW5kIEZpbHRlclwiXSwgXCJBLTIwR1wiOiBbXCI1MDAgbGIgR1AgYm9tYiBMRCo0XCJdLCBcIkJmLTEwOUstNFwiOiBbXCJGdWVsIFRhbmtcIiwgXCJTQzI1MFwiLCBcIlNDNTAwXCJdLCBcIkZXLTE5MEE4XCI6IFtcIldpdGhvdXQgcHlsb25cIiwgXCJTQyA1MCAqIDRcIiwgXCJBQiAyNTAgKHcvIFNEIDEwQSlcIiwgXCJBQiAyNTAgKHcvIFNEIDIpXCIsIFwiQUIgNTAwICh3LyBTRCAxMEEpXCIsIFwiU0MgMjUwIEwyXCIsIFwiU0MgMjUwIEpcIiwgXCJTQyA1MDAgSlwiLCBcIlNDIDUwMCBMMlwiLCBcIlNEIDI1MCBTdGdcIiwgXCJTRCA1MDAgQVwiLCBcIkZ1ZWwgVGFuayAzMDAgbGl0ZXJzXCIsIFwiQlIgMjFcIl0sIFwiRlctMTkwRDlcIjogW1wiU0M1MDBcIiwgXCJGdWVsIFRhbmtcIiwgXCJSNE1cIiwgXCJCUiAyMVwiXSwgXCJNb3NxdWl0b0ZCTWtWSVwiOiBbXCIyNTAgbGIgUy5BLlAqMjsgNTAwIGxiIFMuQS5QLioyXCIsIFwiNTAwIGxiIEdQIE1rLlYqMiwgNTAwIGxiIEdQIFNob3J0IHRhaWwqMlwiLCBcIjEwMCBnYWwgRHJvcCB0YW5rKjIsIDUwMCBsYiBNQyBTaG9ydCB0YWlsKjJcIiwgXCJSUC0zIDYwbGIgU0FQIE5vMiBNay5JKjgsIDI1MCBsYiBBLkEuUC4qMlwiLCBcIjEwMCBnYWwuIERyb3AgdGFuayoyLCAyNTAgbGIgTUMgTWsuSUksIFJQLTMgNjBsYiBGIE5vMSBNay5JKjRcIiwgXCI1MDAgbGIgR1AgU2hvcnQgdGFpbCo0XCJdLCBcIlAtNDdELTMwXCI6IFtcIkFOLU02NSoyXCIsIFwiRnVlbDE1MCoyXCIsIFwiQU4tTTY0KjIsIEZ1ZWwxMTBcIiwgXCJBTi1NNTcqM1wiXSwgXCJQLTQ3RC0zMGJsMVwiOiBbXCJBTi1NNTcqMlwiLCBcIkFOLU02NCoyLCBGdWVsMTEwXCJdLCBcIlAtNDdELTQwXCI6IFtcIkFOLU02NSoyXCIsIFwiRnVlbDE1MCoyXCIsIFwiQU4tTTU3KjNcIiwgXCJBTi1NNjQqMiwgRnVlbDExMFwiLCBcIk04KjYsIEFOLU01NyoyLCBGdWVsMTEwXCIsIFwiSFZBUioxMCwgRnVlbDExMFwiXSwgXCJQLTUxRC0zMC1OQVwiOiBbXCJGdWVsNzUqMlwiLCBcIkhWQVIqNixGdWVsNzUqMlwiLCBcIkhWQVIqNixNNjQqMlwiLCBcIkhWQVIqNlwiLCBcIk02NCoyXCIsIFwiSFZBUioxMFwiLCBcIlNtb2tlc1wiXSwgXCJQLTUxRFwiOiBbXCJGdWVsNzUqMlwiLCBcIkhWQVIqNixGdWVsNzUqMlwiLCBcIkhWQVIqNixNNjQqMlwiLCBcIkhWQVIqNlwiLCBcIk02NCoyXCIsIFwiSFZBUioxMFwiLCBcIlNtb2tlc1wiXSwgXCJBLTUwXCI6IFtdLCBcIkFILTFXXCI6IFtcIjE0eEhZRFJBLTcwIFdQXCIsIFwiMzh4SFlEUkEtNzAgV1BcIiwgXCI4eEJHTS03MSwgMTR4SFlEUkEtNzBcIiwgXCI4eEJHTS03MSwgMTR4SFlEUkEtNzAgV1BcIiwgXCI4eEJHTS03MSwgMzh4SFlEUkEtNzAgV1BcIiwgXCIxNHhIWURSQS03MFwiLCBcIjM4eEhZRFJBLTcwXCIsIFwiOHhBR00tMTE0XCIsIFwiMjh4SFlEUkEtNzBcIiwgXCI4eEJHTS03MSwgMzh4SFlEUkEtNzBcIiwgXCI4eEFHTS0xMTQsIDM4eEhZRFJBLTcwIFdQXCIsIFwiOHhCR00tNzFcIiwgXCI4eEFHTS0xMTQsIDE0eEhZRFJBLTcwIFdQXCIsIFwiNzZ4SFlEUkEtNzBcIiwgXCI4eEFHTS0xMTQsIDM4eEhZRFJBLTcwXCIsIFwiOHhBR00tMTE0LCAxNHhIWURSQS03MFwiXSwgXCJBSC02NEFcIjogW1wiOHhBR00tMTE0XCIsIFwiMzh4SFlEUkEtNzAgV1BcIiwgXCI3NnhIWURSQS03MFwiLCBcIjh4QUdNLTExNCwgMzh4SFlEUkEtNzAgV1BcIiwgXCIzOHhIWURSQS03MFwiLCBcIjh4QUdNLTExNCwgMzh4SFlEUkEtNzBcIiwgXCJBR00tMTE0SyoxNlwiXSwgXCJBSC02NERcIjogW1wiNzZ4SFlEUkEtNzBcIiwgXCIzOHhIWURSQS03MFwiLCBcIjM4eEhZRFJBLTcwIFdQXCIsIFwiOHhBR00tMTE0XCIsIFwiOHhBR00tMTE0LCAzOHhIWURSQS03MCBXUFwiLCBcIjh4QUdNLTExNCwgMzh4SFlEUkEtNzBcIiwgXCJBR00tMTE0SyoxNlwiXSwgXCJBbi0yNkJcIjogW10sIFwiQW4tMzBNXCI6IFtdLCBcIkItMUJcIjogW1wiTWstODIqODRcIiwgXCJBR00tMTU0KjEyXCIsIFwiR0JVLTM4KjQ4XCIsIFwiQ0JVLTg3KjMwXCIsIFwiQ0JVLTk3KjMwXCIsIFwiR0JVLTM4KjE2LCBDQlUtOTcqMjBcIiwgXCJNay04NCoyNFwiLCBcIkdCVS0zMSoyNFwiLCBcIkdCVS0zMShWKTMvQioyNFwiLCBcIkdCVS0zMSo4LCBHQlUtMzgqMzJcIl0sIFwiQi01MkhcIjogW1wiTWstODQqMThcIiwgXCJNayA4Mio1MVwiLCBcIk1rMjAqMThcIiwgXCJBR00tODZDKjIwXCIsIFwiQUdNLTg0QSo4XCJdLCBcIkMtMTMwXCI6IFtdLCBcIkMtMTdBXCI6IFtdLCBcIkNILTQ3RFwiOiBbXSwgXCJDSC01M0VcIjogW10sIFwiRS0yQ1wiOiBbXSwgXCJFLTNBXCI6IFtdLCBcIkYtMTE3QVwiOiBbXCJHQlUtMTIqMlwiLCBcIkdCVS0xMCoyXCIsIFwiR0JVLTI3KjJcIl0sIFwiRi0xNEFcIjogW1wiQUlNLTkqMlwiLCBcIkFJTS01NEMqNixBSU0tOSoyXCIsIFwiQUlNLTU0Qyo0LEFJTS05KjIsQUlNLTcqMlwiXSwgXCJGLTE1Q1wiOiBbXCJBSU0tMTIwQio0LCBBSU0tN00qMiwgQUlNLTlNKjIsIEZ1ZWwqM1wiLCBcIkFJTS05KjIsQUlNLTEyMCo2LEZ1ZWxcIiwgXCJBSU0tOSo0LEFJTS0xMjAqNCxGdWVsKjNcIiwgXCJBSU0tOSo0LEFJTS0xMjAqNCxGdWVsXCIsIFwiQUlNLTkqMixBSU0tMTIwKjIsQUlNLTcqNCxGdWVsKjNcIiwgXCJBSU0tOSoyLEFJTS0xMjAqNixGdWVsKjNcIiwgXCJBSU0tOSo0LEFJTS03KjQsRnVlbFwiLCBcIkFJTS0xMjAqOCxGdWVsXCIsIFwiQUlNLTkqNCxBSU0tNyo0LEZ1ZWwqM1wiLCBcIkFJTS0xMjAqOCxGdWVsKjNcIiwgXCJBSU0tOSoyLEFJTS0xMjAqMixBSU0tNyo0LEZ1ZWxcIl0sIFwiRi0xNUVcIjogW1wiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMKjMsQ0JVLTg3KjYsTWstODJBSVIqNlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCozLENCVS05NyoxMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCozLE1rLTgyKjEyXCIsIFwiQUlNLTEyMEIqNCxBSU0tMTIwQyo0LEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMzEqNCxBR00tNjVILEFHTS02NURcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsQ0JVLTEwMyoyLEdCVS0xMixHQlUtMzgsQUdNLTE1NEMqMlwiLCBcIkFJTS0xMjBCKjQsQUlNLTlNKjQsRlVFTCozXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixBSU0tMTIwQyoyLEFJTS03TSoyLEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMTIqNCxHQlUtMzgqNCxBR00tMTU0QyoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLEdCVS0zMSo0LEFHTS0xNTRDKjJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEFJTS03TSo0LEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCozLE1rLTg0KjhcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsQUdNLTE1NEMqMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMTIqNCxHQlUtMzgqNCxBR00tNjVEKjJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsR0JVLTEyKjQsR0JVLTM4KjQsQUdNLTY1SyoyXCIsIFwiQUlNLTEyMEMqMixBSU0tOU0qNCxBSU0tN00qMixGVUVMKjNcIiwgXCJBSU0tOU0qNCxBSU0tN00qNCxGVUVMKjNcIiwgXCJBSU0tMTIwQyoyLEFJTS05TSoyLEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxNay04NCo4LEFHTS0xNTRDKjJcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMyxNay04MkFJUioxMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxHQlUtMTIqMixHQlUtMzgqMixBR00tMTU0QyoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLEdCVS0xMioyLEdCVS0zOCoyLEFHTS02NUgsQUdNLTY1RFwiLCBcIkFJTS0xMjBCKjIsQUlNLTEyMEMqNCxBSU0tOU0qMixGVUVMKjNcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwqMyxNay04Mio2LE1rLTgyQUlSKjZcIiwgXCJBSU0tMTIwQioyLEFJTS05TSoyLEZVRUwsQ0JVLTEwMyoyLEdCVS0xMixHQlUtMzgsQUdNLTY1SCoyXCIsIFwiQUlNLTEyMEIqMixBSU0tOU0qMixGVUVMLEFHTS02NUQqMlwiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCoyLFNVVS0yNSoyLEdCVS0xMixHQlUtMzhcIiwgXCJBSU0tMTIwQio2LEFJTS05TSoyLEZVRUwqM1wiLCBcIkFJTS0xMjBCKjIsQUlNLTlNKjIsRlVFTCxNay04MkFJUioxMixBR00tMTU0QyoyXCIsIFwiQUlNLTEyMEMqNixBSU0tOU0qMixGVUVMKjNcIiwgXCJHQlUtMzEoVikzL0IqNSwgQUlNLTEyMEMqMiwgQUlNLTlNKjJcIl0sIFwiRi0xNkEgTUxVXCI6IFtcIkZ1ZWwqM1wiLCBcIkFHTS04OCoyLCBBR00tNjVEKjIsIEFJTS0xMjBCKjIsIEVDTVwiLCBcIk1rLTgyKjYsQUlNLTEyMCoyLEVDTSxGdWVsKjJcIiwgXCJNay04MioyLEFJTS0xMjAqMixBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJBR004OCoyLEFHTS02NUQqNixBSU0tMTIwKjIsQUlNLTkqMixFQ01cIiwgXCJBSU0tMTIwKjIsR0JVLTEwKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIkFJTS05KjQsRUNNXCIsIFwiTWsyMCo0LEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqNixFQ01cIiwgXCJBSU0tMTIwKjQsQUlNLTkqMixFQ01cIiwgXCJBR004OCwgQUdNLTY1RCwgQUlNLTEyMCoyLEZ1ZWwqMixFQ01cIiwgXCJBR00tNjVEKjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBSU0tOSo0LEVDTSxGdWVsKjJcIiwgXCJBSU0tMTIwKjQsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiQUdNLTg4KjIsQUlNLTEyMCoyLEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIk1rLTg0KjIsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiQUlNLTEyMCo2LEVDTSxGdWVsKjJcIiwgXCJBR00tMTU0KjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBR00tODgqMixBR00tNjVEKjIsQUlNLTEyMEIqMixBSU0tOU0qMixFQ01cIiwgXCJNazIwKjIsQUlNLTEyMCoyLEVDTSxGdWVsKjJcIiwgXCJBSU0tMTIwKjIsQUlNLTkqMixHQlUtMTIqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUdNLTY1SyoyLEFJTS0xMjAqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUlNLTEyMEIqMl9BSU0tOU0qMl9BR00tMTE5KjRfQUxRLTEzMVwiXSwgXCJGLTE2QVwiOiBbXCJBR00tODgqMixBSU0tMTIwKjIsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiTWsyMCo0LEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFJTS05KjQsRUNNLEZ1ZWwqMlwiLCBcIkFHTS02NUQqMixBSU0tMTIwKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqNCxBSU0tOSoyLEVDTSxGdWVsKjJcIiwgXCJBR004OCoyX0FHTS02NUQqNl9BSU0tMTIwKjJfQUlNLTkqMl9FQ01cIiwgXCJBR00tNjVLKjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBSU0tMTIwKjIsQUlNLTkqMixHQlUtMTIqMixFQ00sTGFudGlybiAsRnVlbCoyXCIsIFwiQUlNLTEyMCoyLEdCVS0xMCoyLEVDTSxMYW50aXJuICxGdWVsKjJcIiwgXCJBSU0tMTIwKjYsRUNNLEZ1ZWwqMlwiLCBcIkFJTS0xMjAqNixFQ01cIiwgXCJBSU0tOSo0LEVDTVwiLCBcIkZ1ZWwqM1wiLCBcIk1rLTg0KjIsQUlNLTkqMixFQ00sRnVlbCoyXCIsIFwiQUlNLTEyMCo0LEFJTS05KjIsRUNNXCIsIFwiTWstODIqNixBSU0tMTIwKjIsRUNNLEZ1ZWwqMlwiLCBcIk1rLTgyKjIsQUlNLTEyMCoyLEFJTS05KjIsRUNNLEZ1ZWwqMlwiLCBcIkFHTS0xNTQqMixBSU0tMTIwKjIsRUNNLExhbnRpcm4gLEZ1ZWwqMlwiLCBcIk1rMjAqMixBSU0tMTIwKjIsRUNNLEZ1ZWwqMlwiLCBcIkFHTS0xMTkqMixBSU0tMTIwQioyLEFJTS05TSoyLEFMUS0xODQsRnVlbCoyXCJdLCBcIkYtMTZDIGJsLjUwXCI6IFtcIkFJTS0xMjBCKjQsIEFJTS05TSoyLCBGdWVsXCIsIFwiQUlNLTEyMEMqNCwgQUlNLTlNKjIsIEZ1ZWxcIiwgXCJBR00tNjVHKjIsIEFJTS0xMjBDKjIsIEFJTS05TSoyLCBGdWVsLCBFQ01cIiwgXCJBR00tNjVEKjYsIEFJTS0xMjBCKjIsIEFJTS05TSoyLCBFQ00sIEZ1ZWxcIiwgXCJNazg2KjYsIEFJTS05TSo0LCBFQ00sIEZ1ZWxcIiwgXCJDQlUtOTcqNCwgQUlNLTlNKjQsICBGdWVsXCIsIFwiQ0JVLTg3KjQsIEFJTS05TSo0LCAgRnVlbFwiLCBcIkFHTS02NUQqMiwgQ0JVLTg3KjIsIEFJTS05TSo0LCAgRnVlbFwiLCBcIkFHTS02NUQqMiwgQ0JVLTk3KjIsIEFJTS05TSo0LCAgRnVlbFwiLCBcIk1rODQqMiwgQUlNLTlNKjQsIEVDTSwgRnVlbFwiLCBcIkdCVS0zMXYxKjIsIEFJTS05TSo0LCBFQ00sIEZ1ZWxcIiwgXCJHQlUtMzF2MyoyLCBBSU0tOU0qNCwgRUNNLCBGdWVsXCIsIFwiR0JVLTMxdjEqMiwgTWs4Mio2LCBBSU0tOU0qNCwgRnVlbFwiLCBcIk1rODQqNCwgQUlNLTlNKjQsIEZ1ZWxcIiwgXCJNazgyKjEyLCBBSU0tOU0qNCwgRnVlbFwiLCBcIkFHTS0xNTRDKjIsIEFJTS05TSo0LCBFQ00sIEZ1ZWxcIl0sIFwiRi0xNkMgYmwuNTJkXCI6IFtcIkFHTS04OCoyLCBBR00tNjVEKjIsIEFJTS0xMjBCKjIsIEVDTSxMSUdIVE5JTkdcIiwgXCJNay04Mio2LEFJTS0xMjAqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFHTTg4KjIsQUdNLTY1RCo2LEFJTS0xMjAqMixBSU0tOSoyLEVDTSxMSUdIVE5JTkdcIiwgXCJBR00tNjVEKjQsQUlNLTEyMCoyLEVDTSxGdWVsKjIsTElHSFROSU5HXCIsIFwiQUlNLTEyMCoyLEdCVS0zMSoyLEVDTSxGdWVsKjIsTElHSFROSU5HXCIsIFwiQUlNLTEyMCoyLEdCVS0zMSh2KSoyLEVDTSxGdWVsKjIsTElHSFROSU5HXCIsIFwiQUdNLTg4KjIsQUlNLTEyMCoyLEFJTS05KjIsRUNNLEZ1ZWwqMixMSUdIVE5JTkdcIiwgXCJDb3B5IEFJTS0xMjAqMixHQlUtMzgqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIkFJTS0xMjAqMixHQlUtMTAqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIk1rLTg0KjIsQUlNLTEyMCoyLEVDTSxGdWVsKjIsTElHSFROSU5HXCIsIFwiQUdNLTE1NCoyLEFJTS0xMjAqMixFQ00sRnVlbCoyLExJR0hUTklOR1wiLCBcIk1rLTgyQUlSKjYsQUlNLTEyMCoyLEVDTSxGdWVsKjIsTElURU5JTkdcIiwgXCJDQlU5Nyo0LEFJTTEyMCoyLEVDTSxGdWVsKjIsTElURU5JTkdcIiwgXCJBR00tODgqMixBR00tNjVEKjIsQUlNLTEyMEIqMixBSU0tOU0qMixFQ00sTElURU5JTkdcIiwgXCJDQlU4NyoyLEFJTS0xMjAqMixFQ00sRnVlbCoyLExJVEVOSU5HXCIsIFwiQUdNODgsIEFHTS02NUQsIEFJTS0xMjAqMixGdWVsKjIsRUNNLExJVEVOSU5HXCIsIFwiQUlNLTEyMCoyLEdCVS0xMioyLEVDTSxGdWVsKjIsTElURU5JTkdcIiwgXCJBR00tNjVLKjIsQUlNLTEyMCoyLEVDTSxMYW50aXJuICxGdWVsKjIsTElURU5JTkdcIiwgXCJBR00tNjVHKjQsQUlNLTEyMEMqMixBSU0tOU0qMixFQ01cIiwgXCJBSU0tMTIwQyo0LEFJTS05TSoyLEVDTSxGdWVsKjJcIiwgXCJBSU0tMTIwQio0LEFJTS05TSoyLEVDTSxGdWVsKjJcIiwgXCJBSU0tOU0qNCxGdWVsKjJcIiwgXCJBSU0tMTIwQyoyLEFJTS0xMjBCKjIsQUlNLTlNKjIsRnVlbCozXCIsIFwiQUlNLTlQKjRcIiwgXCJBSU0tOU0qMixFQ01cIl0sIFwiRi00RVwiOiBbXCJBSU0tOSo0LEFJTS03KjRcIiwgXCJBR000NSoyX0FHTS02NUQqNF9BSU03KjJfRUNNXCIsIFwiQUdNLTQ1KjIsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiTWstODIqMTgsQUlNLTcqMixFQ01cIiwgXCJHQlUtMTIqMixBSU0tNyoyLEZ1ZWwqMixFQ01cIiwgXCJNazIwKjEyLEFJTS03KjIsRUNNXCIsIFwiTWstODIqNixBSU0tNyoyLEZ1ZWwqMixFQ01cIiwgXCJHQlUtMTAqMixBSU0tNyoyLEZ1ZWwqMixFQ01cIiwgXCJNazIwKjYsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiQUdNLTQ1KjQsQUlNLTcqMixFQ01cIiwgXCJBR00tNjVLKjQsQUlNLTcqMixGdWVsKjIsRUNNXCIsIFwiRnVlbCozXCIsIFwiQUlNLTkqNCxBSU0tNyo0LEZ1ZWwqMlwiLCBcIk1rLTg0KjIsQUlNLTcqMixFQ01cIiwgXCJBR00tNjVLKjQsQUlNLTdNKjQsRnVlbCozXCJdLCBcIkYvQS0xOEFcIjogW1wiR0JVLTE2KjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBSU0tOSo2LEZ1ZWxcIiwgXCJNay04NCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUdNLTY1RCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUdNODgqNF9BSU05KjJfQUlNN19GTElSIFBvZF9GdWVsXCIsIFwiQUlNLTkqNCxGdWVsKjNcIiwgXCJMQVUtMTAqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTS04OCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiTUstODIqOCxBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWxcIiwgXCJNSy04Mio0LEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTkqNCxBSU0tNyoyLEZ1ZWwqM1wiLCBcIkFHTS02NUsqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkZ1ZWwqM1wiLCBcIkFHTTg4KjJfQUdNNjVEKjJfQUlNOSoyX0FJTTdfRkxJUiBQb2RfRnVlbFwiLCBcIkdCVS0xMioyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTkqNCxBSU0tNyo0LEZ1ZWxcIiwgXCJNazIwKjQsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJHQlUtMTAqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTS04NEEqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiXSwgXCJGL0EtMThDXCI6IFtcIkFHTS02MioyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiR0JVLTEwKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJHQlUtMTIqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkZ1ZWwqM1wiLCBcIk1rLTg0KjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJHQlUtMTYqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTS0xNTQqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFJTS0xMjAqNCxBSU0tOSoyLEZ1ZWwqM1wiLCBcIkFHTS02NUQqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTTg4KjJfQUdNNjVEKjJfQUlNOSoyX0FJTTdfRkxJUiBQb2RfRnVlbFwiLCBcIkFHTTg4KjRfQUlNOSoyX0FJTTdfRkxJUiBQb2RfRnVlbFwiLCBcIkFJTS05KjIsQUlNLTcqNixGdWVsXCIsIFwiTWsyMCo0LEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTEyMCo2LEFJTS05KjIsRnVlbFwiLCBcIkxBVS0xMCoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCIsIFwiQUlNLTkqMixBSU0tNyo0LEZ1ZWwqM1wiLCBcIk1LLTgyKjgsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsXCIsIFwiQUlNLTEyMCoyLEFJTS05KjIsQUlNLTcqMixGdWVsKjNcIiwgXCJBR00tODgqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIkFHTS04NEUqMixBSU0tOSoyLEFJTS03LEZMSVIgUG9kLEZ1ZWwqM1wiLCBcIk1LLTgyKjQsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBR00tODRBKjIsQUlNLTkqMixBSU0tNyxGTElSIFBvZCxGdWVsKjNcIiwgXCJBSU0tOU0qMixBR00tNjVEKjIsTWstODIqNCxGTElSIFBvZCxGdWVsXCIsIFwiQUlNLTEyMCo0LEFJTS05KjIsQUlNLTcqMixGdWVsXCIsIFwiQUdNLTY1SyoyLEFJTS05KjIsQUlNLTcsRkxJUiBQb2QsRnVlbCozXCJdLCBcIklMLTc2TURcIjogW10sIFwiSUwtNzhNXCI6IFtdLCBcIkthLTI3XCI6IFtdLCBcIkthLTUyXCI6IFtcIkFQVS02IFZpa2hyLU0qMiwgS2gtMjVNTCoyXCIsIFwiQVBVLTYgVmlraHItTSoyXCIsIFwiQi04KjRcIiwgXCJLTUdVLTIgKEFPLTIuNVJUKSo0XCIsIFwiQi04KjIsIEFQVS02IFZpa2hyLU0qMlwiLCBcIkZBQi01MDAqMlwiLCBcIlVCLTEzKjJcIiwgXCJGQUItMjUwKjRcIiwgXCJLaC0yNU1MKjIsIFItNzMqMlwiXSwgXCJLQy0xMEFcIjogW10sIFwiS0MtMTM1XCI6IFtdLCBcIk1pLTI0VlwiOiBbXCIyeEZBQi01MDBcIiwgXCIxMHhTLTEzXCIsIFwiMnhGQUItMjUwXCIsIFwiNHg5TTExNCwgMnhGdWVsIHRhbmtcIiwgXCIxMjh4Uy01XCIsIFwiODB4Uy04IFRzTVwiLCBcIjR4OU0xMTQsIDQweFMtOCBUc01cIiwgXCI2NHhTLTVcIiwgXCI4eDlNMTE0XCIsIFwiNHg5TTExNCwgODB4Uy04XCIsIFwiNHg5TTExNCwgMTI4eFMtNVwiLCBcIjJ4S01HVSBBUFwiLCBcIjR4RnVlbCB0YW5rXCIsIFwiNHhVUEstMjNcIiwgXCI0eDlNMTE0LCAxMHhTLTEzXCIsIFwiNHg5TTExNCwgODB4Uy04IFRzTVwiLCBcIjR4OU0xMTRcIiwgXCI4MHhTLThcIiwgXCI0MHhTLTggVHNNXCIsIFwiOHg5TTExNCwgNDB4Uy04IFRzTVwiLCBcIjh4OU0xMTQsIDEweFMtMTNcIiwgXCIyeEZ1ZWwgdGFua1wiLCBcIjR4OU0xMTQsIDR4VVBLLTIzXCIsIFwiMnhVUEstMjNcIiwgXCI4eDlNMTE0LCA2NHhTLTVcIiwgXCI4eDlNMTE0LCA0MHhTLThcIiwgXCIyMHhTLTEzXCIsIFwiNDB4Uy04XCIsIFwiOHg5TTExNCwgMnhVUEstMjNcIl0sIFwiTWktMjZcIjogW10sIFwiTWktMjhOXCI6IFtcIjJ4RkFCLTI1MFwiLCBcIjR4RnVlbCB0YW5rXCIsIFwiODB4Uy04XCIsIFwiNHhLTUdVIEFQXCIsIFwiNHhVUEstMjNcIiwgXCIxNng5TTExNCwgMTB4Uy0xM1wiLCBcIjR4RkFCLTUwMFwiLCBcIjE2eDlNMTE0LCAyeEZBQi01MDBcIiwgXCI0MHhTLThcIiwgXCI0MHhTLTggVHNNXCIsIFwiMnhLTUdVIEFQXCIsIFwiMnhVUEstMjNcIiwgXCIxNng5TTExNCwgMnhVUEstMjNcIiwgXCIyeEZBQi01MDBcIiwgXCIxNng5TTExNCwgNDB4Uy04XCIsIFwiMTZ4OU0xMTRcIiwgXCIyMHhTLTEzXCIsIFwiMTZ4OU0xMTQsIDJ4S01HVSBBUFwiLCBcIjR4RkFCLTI1MFwiLCBcIjR4S01HVSBBVFwiLCBcIjE2eDlNMTE0LCA0MHhTLTggVHNNXCIsIFwiODB4Uy04IFRzTVwiLCBcIjJ4S01HVSBBVFwiLCBcIjl4OU0xMTRcIiwgXCIyeEZ1ZWwgdGFua1wiLCBcIjEweFMtMTNcIiwgXCIyeEZBQi0yNTAsIDE2eDlNMTE0XCIsIFwiMTZ4OU0xMTQsIDJ4S01HVSBBVFwiXSwgXCJNaS04TVRcIjogW1wiNCB4IEI4XCIsIFwiNCB4IEI4ICsgMkdVVl9BUC0zMCAoR3JMIDMwbW0pXCIsIFwiMiB4IFVQSyArMiB4IEI4XCIsIFwiMiB4QjggKyAyR1VWX1lhS0IgKE1HLTEyLjcrNy42MikrIDJHVVZfQVAtMzAgKEdyTCAzMG1tKVwiLCBcIjYgeCBGQUItMTAwXCIsIFwiMiB4IEI4ICsgMiB4IFVQSy0yMy0yNTBcIiwgXCIyIHggVVBLLS0yMy0yNTBcIl0sIFwiTWlHLTE1YmlzXCI6IFtcIjIqRkFCLTUwXCIsIFwiMipGQUItMTAwTVwiLCBcIjIqMzAwTFwiLCBcIjIqNDAwTFwiLCBcIjIqNjAwTFwiLCBcIkZ1ZWwgdGFuayAzMDBcIiwgXCJGdWVsIHRhbmsgNDAwXCJdLCBcIk1pRy0yM01MRFwiOiBbXCJSLTYwTSo0XCIsIFwiQi04KjIsUi02ME0qMixGdWVsLTgwMFwiLCBcIlVCLTMyKjIsUi02ME0qMixGdWVsLTgwMFwiLCBcIlItMjRSKjIsUi02ME0qNCxGdWVsLTgwMFwiLCBcIlItMjRSLFItMjRULFItNjBNKjQsRnVlbC04MDBcIiwgXCJSLTYwTSo0LEZ1ZWwtODAwXCIsIFwiRkFCLTUwMCoyLFItNjBNKjIsRnVlbC04MDBcIiwgXCJSLTI0UioyLFItNjBNKjRcIiwgXCJGQUItMjUwKjIsUi02ME0qMixGdWVsLTgwMFwiLCBcIlJCSy0yNTAqMixSLTYwTSoyLEZ1ZWwtODAwXCIsIFwiUkJLLTUwMCoyLFItNjBNKjIsRnVlbC04MDBcIiwgXCJSLTI0UixSLTI0VCxSLTYwTSo0XCJdLCBcIk1pRy0yNVBEXCI6IFtcIlItNDBSKjIsUi00MFQqMlwiLCBcIlItNDBSKjRcIiwgXCJSLTQwUioyLFItNjBNKjJcIl0sIFwiTWlHLTI1UkJUXCI6IFtcIkZBQi01MDB4Ml82MHgyXCIsIFwiUi02ME0qMlwiXSwgXCJNaUctMjdLXCI6IFtcIkZBQi0yNTAqNixSLTYwTSoyLEZ1ZWxcIiwgXCJCZXRBQi01MDBTaFAqMixGQUItMjUwKjIsUi02MCoyXCIsIFwiS2gtMjVNUioyLFItNjBNKjIsRnVlbFwiLCBcIktoLTI5TCoyLFItNjBNKjIsRnVlbFwiLCBcIkItOCo0XCIsIFwiQmV0QUItNTAwKjIsRkFCLTUwMCoyLFItNjAqMlwiLCBcIktoLTI1TVBVKjIsUi02ME0qMixGdWVsXCIsIFwiS2gtMjlUKjIsUi02ME0qMixGdWVsXCIsIFwiRkFCLTUwMCoyLEZBQi0yNTAqMixSLTYwTSoyLEZ1ZWxcIiwgXCJLaC0yNU1MKjIsUi02ME0qMixGdWVsXCIsIFwiS0FCLTUwMCoyLFItNjBNKjIsRnVlbFwiLCBcIlJCSy01MDBBTyoyLFJCSy0yNTAqMixSLTYwTSoyXCIsIFwiVUItMzIqNFwiLCBcIktoLTI5TCoyLFItNjAqMixGdWVsXCJdLCBcIk1pRy0yOUFcIjogW1wiRnVlbC0xMTUwKjIsRnVlbC0xNTAwXCIsIFwiUkJLLTUwMEFPKjQsUi03MyoyLEZ1ZWxcIiwgXCJGQUItMjUwKjQsUi03MyoyLEZ1ZWxcIiwgXCJCLTgqNCxSLTczKjIsRnVlbFwiLCBcIlItNjBNKjQsUi0yN1IqMlwiLCBcIlItNzMqNCxSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNzMqNixGdWVsLTE1MDBcIiwgXCJSLTYwTSo2LEZ1ZWwtMTUwMFwiLCBcIlMtMjQqNCxSLTczKjIsRnVlbFwiLCBcIkZBQi01MDAqNCxSLTczKjIsRnVlbFwiLCBcIlItNjBNKjZcIiwgXCJCZXRBQi01MDAqNCxSLTczKjIsRnVlbFwiLCBcIlItNzMqNlwiLCBcIlItNzMqMixSLTYwTSoyLFItMjdSKjIsRnVlbC0xNTAwXCIsIFwiUi02ME0qNCxSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlJCSy0yNTAqNCxSLTczKjIsRnVlbFwiLCBcIlItNzMqNCxSLTI3UioyXCIsIFwiUi03MyoyLFItNjBNKjIsUi0yN1IqMlwiLCBcIlMtMjQqMixGQUItNTAwKjIsUi03MyoyLEZ1ZWxcIl0sIFwiTWlHLTI5R1wiOiBbXCJSLTczKjYsRnVlbC0xNTAwXCIsIFwiUi03Myo0LFItMjdSKjIsRnVlbC0xNTAwXCIsIFwiUi03MyoyLFItNjBNKjIsUi0yN1IqMlwiLCBcIlItNjBNKjQsUi0yN1IqMixGdWVsLTE1MDBcIiwgXCJSLTczKjZcIiwgXCJSLTYwTSo0LFItMjdSKjJcIiwgXCJSLTczKjQsUi0yN1IqMlwiLCBcIkZ1ZWwtMTE1MCoyLEZ1ZWwtMTUwMFwiLCBcIlItNjBNKjZcIiwgXCJSLTYwTSo2LEZ1ZWwtMTUwMFwiLCBcIlItNzMqMixSLTYwTSoyLFItMjdSKjIsRnVlbC0xNTAwXCJdLCBcIk1pRy0yOVNcIjogW1wiUi03MyoyLFItNjBNKjIsUi0yN1IqMlwiLCBcIlItNzMqNCxSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNzMqNixGdWVsLTE1MDBcIiwgXCJSLTYwTSo2LEZ1ZWwtMTUwMFwiLCBcIlMtMjQqNCxSLTczKjIsRnVlbFwiLCBcIkZBQi01MDAqNCxSLTczKjIsRnVlbFwiLCBcIkJldEFCLTUwMCo0LFItNzMqMixGdWVsXCIsIFwiUkJLLTUwMEFPKjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTczKjIsUi02ME0qMixSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNzcqMixSLTczKjIsRnVlbC0xNTAwLEZ1ZWwtMTE1MCoyXCIsIFwiQi04KjQsUi03MyoyLEZ1ZWxcIiwgXCJSQkstMjUwKjQsUi03MyoyLEZ1ZWxcIiwgXCJSLTczKjZcIiwgXCJGdWVsLTExNTAqMixGdWVsLTE1MDBcIiwgXCJSLTYwTSo2XCIsIFwiUi02ME0qNCxSLTI3UioyXCIsIFwiUi03Myo0LFItMjdSKjJcIiwgXCJSLTc3KjQsUi03MyoyXCIsIFwiRkFCLTI1MCo0LFItNzMqMixGdWVsXCIsIFwiUi02ME0qNCxSLTI3UioyLEZ1ZWwtMTUwMFwiLCBcIlItNzcqNCxSLTczKjIsRnVlbC0xNTAwXCIsIFwiUy0yNCoyLEZBQi01MDAqMixSLTczKjIsRnVlbFwiXSwgXCJNaUctMzFcIjogW1wiUi00MFQqMixSLTMzKjRcIiwgXCJSLTQwVCxSLTMzKjQsUi00MFJcIiwgXCJSLTQwUioyLFItMzMqNFwiLCBcIlItNjBNKjQsUi0zMyo0XCJdLCBcIk1pcmFnZSAyMDAwLTVcIjogW1wiUiA1NTAqMixNSUNBIElSKjRcIiwgXCJSIDU1MCoyLE1JQ0EgSVIqMixNSUNBIEFSKjIsRnVlbCozXCIsIFwiUiA1NTAqMixNSUNBIEFSKjQsRnVlbCozXCIsIFwiUiA1NTAqMixTVVBFUiA1MzBGKjIsRnVlbFwiLCBcIkZ1ZWwqM1wiLCBcIlIgNTUwKjIsTUlDQSBJUio0LEZ1ZWwqM1wiLCBcIlIgNTUwKjIsTUlDQSBBUio0XCIsIFwiUiA1NTAqMixTVVBFUiA1MzBGKjJcIl0sIFwiTVEtOSBSZWFwZXJcIjogW1wiR0JVLTEyKjRcIiwgXCJHQlUtMzgqNFwiLCBcIkFHTS0xMTRLKjgsR0JVLTM4KjJcIiwgXCJBR00tMTE0SyoxMlwiXSwgXCJPSC01OERcIjogW1wiMnhBR00tMTE0LCA3eEhZRFJBLTcwXCIsIFwiNHhBR00tMTE0XCIsIFwiTS0zLCA3eEhZRFJBLTcwXCIsIFwiMnhBR00tMTE0LCBNLTNcIiwgXCIxNHhIWURSQS03MFwiLCBcIjE0eEhZRFJBLTcwIFdQXCJdLCBcIlJRLTFBIFByZWRhdG9yXCI6IFtcIkFHTS0xMTRLKjJcIl0sIFwiUy0zQlwiOiBbXCJBR00tODRBKjIsIE1rLTgyKjJcIiwgXCJBR00tODRFKjJcIiwgXCJBR00tNjVELCBBR00tNjVLLCBNazIwKjRcIiwgXCJBR00tNjVELCBBR00tNjVLLCBNazgyKjRcIiwgXCJNazgyKjEwXCIsIFwiTWs4NCoyLCBNazgyKjRcIiwgXCJaVU5JIE1rNzEqOCwgTWsyMCo0XCJdLCBcIlNILTNXXCI6IFtdLCBcIlNILTYwQlwiOiBbXCJBR00tMTE5XCJdLCBcIlN1LTE3TTRcIjogW1wiVUItMzIqNCxSLTYwTSoyLEZBQi0yNTAqNFwiLCBcIkZBQi0xMDAqMjQsUi02ME0qMlwiLCBcIlVCLTMyKjQsUi02ME0qMixGdWVsKjJcIiwgXCJCLTgqNCxSLTYwTSoyLEZBQi0yNTAqNFwiLCBcIktoLTI5TCoyLFItNjBNKjIsRnVlbCoyXCIsIFwiQi04KjQsUi02ME0qMixGdWVsKjJcIiwgXCJLaC0yOVQqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkJldEFCLTUwMCo2LFItNjBNKjJcIiwgXCJLaC0yNU1SKjQsUi02ME0qMixGdWVsKjJcIiwgXCJTLTI0KjQsUi02ME0qMixGdWVsKjJcIiwgXCJLaDI1TVBVKjJfS2gyNU1MKjJfLFI2ME0qMl9GdWVsKjJcIiwgXCJLaDU4KjJfS2gyNU1QVSoyX1I2ME0qMl9GdWVsKjJcIiwgXCJGQUItMjUwKjE2LFItNjBNKjJcIiwgXCJLaC0yNU1MKjQsUi02ME0qMixGdWVsKjJcIiwgXCJSQkstNTAwQU8qNCxTUFBVLTIyKjIsUi02ME0qMlwiLCBcIlMtMjQqNCxSLTYwTSoyLEZBQi0yNTAqNFwiLCBcIkZ1ZWwqNFwiLCBcIkZBQi01MDAqNixSLTYwTSoyXCIsIFwiS2gtMjVNTCoyLEtoLTI5TCoyLFItNjAqMlwiXSwgXCJTdS0yNE1cIjogW1wiVUItMTMqNCxGQUItNTAwKjJcIiwgXCJLaC0zMUEqMixSLTYwTSoyLEZ1ZWxcIiwgXCJVQi0xMyo0XCIsIFwiS0FCLTUwMCo0LFItNjBNKjJcIiwgXCJTLTI1KjIsRnVlbCozXCIsIFwiS2gzMVAqMl9LaDI1TUwqMl9MLTA4MVwiLCBcIkItOCoyLEZ1ZWwqM1wiLCBcIkZBQi0xNTAwKjIsUi02ME0qMlwiLCBcIlMtMjQqNFwiLCBcIkJldEFCLTUwMCo0LFItNjBNKjJcIiwgXCJLaC0yNU1MKjRcIiwgXCJLaC0yNU1SKjRcIiwgXCJGQUItMTAwKjI0XCIsIFwiS2gtMzFBKjIsUi02ME0qMlwiLCBcIlVCLTEzKjIsRnVlbCozXCIsIFwiQi04KjIsRnVlbCoyXCIsIFwiS2g1OCoyX0toMjVNTCoyX0wtMDgxXCIsIFwiUkJLLTI1MCo4XCIsIFwiVUItMzIqNFwiLCBcIktoLTI5TCoyLFItNjBNKjJcIiwgXCJTLTI0KjIsRnVlbCozXCIsIFwiS2gyNU1QVSoyX0toMjVNTCoyX0wtMDgxXCIsIFwiRkFCLTUwMCo0LFItNjBNKjJcIiwgXCJGQUItMjUwKjhcIiwgXCJGdWVsKjNcIiwgXCJSQkstNTAwQU8qNCxSLTYwTSoyXCIsIFwiS0FCLTE1MDAqMixSLTYwTSoyLEZ1ZWxcIiwgXCJVQi0zMio0LEZBQi0yNTAqNFwiLCBcIktoLTI5VCoyLFItNjBNKjJcIiwgXCJVQi0zMioyLEZ1ZWwqM1wiLCBcIktoLTU5TSoyLFItNjBNKjIsRnVlbFwiLCBcIlMtMjUqNFwiLCBcIkItOCo2XCJdLCBcIlN1LTI0TVJcIjogW1wiU0hQSUwsRVRIRVIsUi02ME0qMlwiLCBcIkZ1ZWwqMlwiLCBcIlRBTkdBWkgsRVRIRVIsUi02ME0qMixGdWVsKjJcIiwgXCJUQU5HQVpILEVUSEVSLFItNjBNKjJcIiwgXCJTSFBJTCxFVEhFUixSLTYwTSoyLEZ1ZWwqMlwiXSwgXCJTdS0yNVwiOiBbXCJSQkstMjUwKjIsUy04S09NKjgwLFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTI1MCo0LFVCLTEzKjIsUi02ME0qMixTUFBVLTIyKjJcIiwgXCJTLTI1TCo2LFVCLTEzKjIsUi02ME0qMlwiLCBcIlMtMjUqNixTUFBVLTIyKjIsUi02ME0qMlwiLCBcIjItMjVMKjIsIEtILTI1TUwqMiwgUkJLLTUwMCoyLCBCLThNSSoyLCBSLTYwTSoyXCIsIFwiUy04S09NKjEyMCxSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNCxTLTI1KjIsUi02ME0qMixGdWVsKjJcIiwgXCJSQkstNTAwQU8qNCxTLThLT00qNDAsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMjUwKjIsU1BQVS0yMioyLFNBQi0xMDAqNCxSLTYwTSoyXCIsIFwiUkJLLTUwMEFPKjYsUi02ME0qMixGdWVsKjJcIiwgXCJSQkstMjUwKjgsUi02ME0qMlwiLCBcIktoLTI5TCoyLEtoLTI1TUwqNCxSLTYwTSoyXCIsIFwiUkJLLTI1MCo0LFMtOEtPTSo4MCxSLTYwTSoyXCIsIFwiRkFCLTI1MCo0LFVCLTEzKjIsUi02ME0qMixGdWVsKjJcIiwgXCJTLThUc00qMTYwLFItNjAqMlwiLCBcIktoLTI1TUwqNCxSLTYwTSoyLEZ1ZWwqMlwiLCBcIkJldEFCLTUwMFNoUCo4LFItNjBNKjJcIiwgXCJTQUItMTAwKjgsUi02MCoyXCIsIFwiS2gtMjlMKjIsS2gtMjVNTCo0LFMtMjVMKjIsUi02ME0qMlwiLCBcIkZBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI5TCoyLEtoLTI1TUwqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI5TCoyLFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTEwMCozMixSLTYwTSoyXCIsIFwiRkFCLTEwMCoxNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkJldEFCLTUwMCo2LFItNjBNKjIsRnVlbCoyXCIsIFwiUy0yNSo2LFItNjBNKjIsRnVlbCoyXCIsIFwiVUItMTMqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI1KjQsS2gtMjlUKjIsUi02MCoyXCIsIFwiUy0yNUwqNixSLTYwKjIsRnVlbCoyXCJdLCBcIlN1LTI1VFwiOiBbXCJGQUItMjUwKjQsU1BQVS0yMioyLFNBQi0xMDAqMixSLTYwTSoyXCIsIFwiS2gtMjlMKjIsS2gtMjVNTCo0LFItNzMqMixNZXJjdXJ5IExMVFYgUG9kLE1QUy00MTBcIiwgXCJLQUItNTAwS3IqMixLaC0yNU1MKjIsUi03MyoyLE1QUy00MTAsRnVlbCoyXCIsIFwiUkJLLTUwMEFPKjQsVUItMzIqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkJldEFCLTUwMFNoUCo4LFItNjBNKjJcIiwgXCJVQi0xMyo2LFItNjBNKjIsRnVlbCoyXCIsIFwiS2gtMjlUKjIsUi03MyoyLEZ1ZWwqMixNUFMtNDEwXCIsIFwiS2g1OCoyX0toMjVNTCo0X1I3MyoyX0wtMDgxX01QUy00MTBcIiwgXCJGQUItMjUwKjQsVUItMTMqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktILTI5VCoyLCBWSUtIUioyLCBFQ01cIiwgXCJLaC0yOVQqMixLaC0yNU1MKjQsUi03MyoyLE1QUy00MTBcIiwgXCJGQUItMjUwKjQsVUItMTMqMixSLTYwTSoyLFNQUFUtMjIqMlwiLCBcIkZBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZ1ZWwqNFwiLCBcIkFQVS04IFZpa2hyLU0qMixLaC0yNU1MLFItNzMqMixTUFBVLTIyKjIsTWVyY3VyeSBMTFRWIFBvZCxNUFMtNDEwXCIsIFwiUy04S09NKjEyMCxSLTYwTSoyLEZ1ZWwqMlwiLCBcIktNR1UtMiAoUFRBQi0yLjVLTykqOCxSLTYwTSoyXCIsIFwiRkFCLTI1MCo2LFItNjBNKjIsRnVlbCoyXCIsIFwiS2gtMjlMKjIsUi03MyoyLEZ1ZWwqMixNZXJjdXJ5IExMVFYgUG9kLE1QUy00MTBcIiwgXCJGQUItMTAwKjMyLFItNjBNKjJcIiwgXCJSQkstMjUwKjgsUi02ME0qMlwiLCBcIlMtMjVMKjYsVUItMTMqMixSLTYwTSoyXCIsIFwiRkFCLTI1MCo0LFMtMjUqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIlMtMjUqMixTUFBVLTIyKjQsUi02ME0qMixSLTczKjJcIiwgXCJLTUdVLTIgKEFPLTIuNVJUKSo4LFItNjBNKjJcIiwgXCJBUFUtOCBWaWtoci1NKjIsUy0yNUwqMixSLTczKjIsU1BQVS0yMioyLE1lcmN1cnkgTExUViBQb2QsTVBTLTQxMFwiLCBcIlMtMjUqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIlJCSy01MDBBTyo2LFItNjBNKjIsRnVlbCoyXCIsIFwiS2g1OCoyX0toMjVNUFUqMl9LaDI1TUwqMl9SNzMqMl9MLTA4MV9NUFMtNDEwXCIsIFwiUkJLLTI1MCo0LFVCLTMyKjQsUi02ME0qMlwiLCBcIktoMjVNUFUqNF9SNzMqMl9GdWVsKjJfTC0wODFfTVBTLTQxMFwiLCBcIkJldEFCLTUwMCo2LFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTI1MCoyLFVCLTMyKjQsUi02ME0qMixGdWVsKjJcIiwgXCJGQUItMTAwKjE2LFItNjBNKjIsRnVlbCoyXCIsIFwiS2gtMjlMKjIsS2gtMjVNTCo0LFItNzMqMixFQ01cIl0sIFwiU3UtMjVUTVwiOiBbXCJCZXRBQi01MDBTaFAqNixSLTczKjIsRUNNXCIsIFwiQVBVLTggVmlraHItTSoyLFItNjBNKjIsUi03MyoyLFNQUFUtMjIqMixNZXJjdXJ5IExMVFYgUG9kXCIsIFwiS2gtMjlUKjIsS2gtMjVNTCoyLFItNzMqMixGdWVsKjIsRUNNXCIsIFwiS2gtNTgqMl9LaC0yNU1QVSo0X1ItNzMqMl9MLTA4MV9NUFM0MTBcIiwgXCJTLTI1TCo2LFVCLTEzKjIsUi02ME0qMlwiLCBcIktoLTM1KjJfUi03MyoyX0Z1ZWwqMl9NUFM0MTBfS29weW8tMjVcIiwgXCJLaC0zMUEqMl9SLTczKjJfRnVlbCoyX01QUzQxMF9Lb3B5by0yNVwiLCBcIkZ1ZWwqNFwiLCBcIkJldEFCLTUwMCo2LFItNjBNKjIsRnVlbCoyXCIsIFwiS0FCLTUwMEtyKjIsS2gtMjVNTCoyLFItNzMqMixGdWVsKjIsRUNNXCIsIFwiS2gtMjlMKjIsUi03MyoyLEZ1ZWwqMixNZXJjdXJ5IExMVFYgUG9kLEVDTVwiLCBcIlVCLTEzKjYsUi02ME0qMixGdWVsKjJcIiwgXCJTLTI1KjIsU1BQVS0yMio0LFItNjBNKjIsUi03MyoyXCIsIFwiS2gtMzFQKjJfS2gtMjVNTCo0X1ItNzMqMl9MLTA4MV9NUFM0MTBcIiwgXCJVQi0zMio2LFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTEwMCoxNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi01MDAqNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIktoLTI1TVBVKjRfUi03MyoyX0Z1ZWwqMl9MLTA4MV9NUFM0MTBcIiwgXCJTLTI1KjYsUi02ME0qMixGdWVsKjJcIiwgXCJSQkstNTAwQU8qNCxVQi0zMioyLFItNjBNKjIsRnVlbCoyXCIsIFwiRkFCLTI1MCo0LFVCLTEzKjIsUi02ME0qMixTUFBVLTIyKjJcIiwgXCJLaC0zMVAqMl9LaC0yNU1QVSo0X1ItNzMqMl9MLTA4MV9NUFM0MTBcIiwgXCJSQkstNTAwQU8qNixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0xMDAqMzIsUi02ME0qMlwiLCBcIlJCSy0yNTAqMixVQi0zMio0LFItNjBNKjIsRnVlbCoyXCIsIFwiUkJLLTI1MCo4LFItNjBNKjJcIiwgXCJBUFUtOCBWaWtoci1NKjIsUi03MyoyLFNQUFUtMjIqMixNZXJjdXJ5IExMVFYgUG9kLEVDTVwiLCBcIlJCSy0yNTAqNCxVQi0zMio0LFItNjBNKjJcIiwgXCJGQUItMjUwKjQsU1BQVS0yMioyLFNBQi0xMDAqMixSLTYwTSoyXCIsIFwiRkFCLTI1MCo0LFMtMjUqMixSLTYwTSoyLEZ1ZWwqMlwiLCBcIkZBQi0yNTAqNCxVQi0xMyoyLFItNjBNKjIsRnVlbCoyXCJdLCBcIlN1LTI3XCI6IFtcIlItNzMqNCxSLTI3RVIqNCxSLTI3RVQqMlwiLCBcIktNR1UtMiAoQU8tMi41UlQpKjUsUi03MyoyLEVDTVwiLCBcIkJldEFCLTUwMFNoUCo2LFItNzMqMixFQ01cIiwgXCJLTUdVLTIgKFBUQUItMi41S08pKjUsUi03MyoyLEVDTVwiLCBcIlItNzMqMixSLTI3RVIqNixFQ01cIiwgXCJSLTczKjZcIiwgXCJTLTEzKjEwLFJCSy01MDBBTyoyLEZBQi01MDAqMixSLTczKjIsRUNNXCIsIFwiUi03Myo0LFItMjdFUio2XCIsIFwiUi03MyoyLFItMjdFUio0LFItMjdFVCoyLEVDTVwiLCBcIlItNzMqNCxFQ01cIiwgXCJFQ01cIiwgXCJGQUItNTAwKjYsUi03MyoyLEVDTVwiLCBcIlMtMjUqMixGQUItNTAwKjQsUi03Myo0XCIsIFwiUy0yNSo0LCBGQUItNTAwKjQsIFItNzMqMiwgRUNNXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgUkJLLTUwMCBQVEFCMVwiLCBcIkNBUyBTLThPRlAgUm9ja2V0cyArIEZBQi01MDAgQm9tYnNcIiwgXCJDQVMgUy04T0ZQIFJvY2tldHNcIiwgXCJDQVMgUy04T0ZQIFJvY2tldHMgKyBGQUItMTAwIEJvbWJzXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgRkFCLTEwMCBCb21ic1wiLCBcIkNBUyBTLTEzIFJvY2tldHNcIiwgXCJDQVMgUy04S09NIFJvY2tldHMgKyBGQUItMjUwIEJvbWJzXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgUkJLLTI1MCBQVEFCMi41XCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgRkFCLTUwMCBCb21ic1wiLCBcIkNBUyBTLThLT00gUm9ja2V0cyArIFJCSy01MDAgUFRBQjEwXCIsIFwiQ0FTIFMtOEtPTSBSb2NrZXRzICsgS01HVSBQVEFCXCIsIFwiIENBUyBTLTI1IFJvY2tldHNcIiwgXCJDQVMgUy0yNSBSb2NrZXRzICsgRkFCLTUwMCBCb21ic1wiXSwgXCJTdS0zMFwiOiBbXCJSLTczKjIsUi03Nyo2LEVDTVwiLCBcIlItNzMqMixSLTI3VCoyLFItMjdSKjRcIiwgXCJSQkstNTAwQU8qNixSLTczKjIsRUNNXCIsIFwiS2gtMzFQKjIsS2gtMzFBKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJSLTczKjQsUi0yN1QqMixSLTI3Uio0XCIsIFwiUi03MyoyLFItNzcqMixLaC0zNSoyLEVDTVwiLCBcIktoLTM1KjIsS2gtMzFQKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJGQUItMjUwKjQsQi04KjIsUi03MyoyLEVDTVwiLCBcIkVDTVwiLCBcIktBQi0xNTAwKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJSQkstMjUwKjYsUi03MyoyLEVDTVwiLCBcIlItNzMqNCxSLTc3KjZcIiwgXCJGQUItMjUwKjQsUy0yNSoyLFItNzMqMixFQ01cIiwgXCJSLTczKjIsUi0yN1IqMixSLTI3RVIqNCxFQ01cIiwgXCJSLTczKjIsUi0yN1QqMixSLTI3RVIqMixSLTc3KjIsRUNNXCIsIFwiRkFCLTE1MDAqMixSLTczKjIsUi03NyoyLEVDTVwiLCBcIlItNzMqNCxSLTI3VCoyLFItMjdFUioyLFItNzcqMlwiLCBcIktoLTU5TSoyLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiRkFCLTUwMCo2LFItNzMqMixFQ01cIiwgXCJSLTczKjQsUi0yN1IqMixSLTI3RVIqNFwiLCBcIktoLTI5TCo0LFItNzMqMixSLTc3KjIsRUNNXCIsIFwiQmV0QUItNTAwKjYsUi03MyoyLEVDTVwiLCBcIlItNzMqNFwiLCBcIkZBQi0yNTAqNCxVQi0xMyoyLFItNzMqMixFQ01cIiwgXCJSLTczKjIsUi03Nyo0LFItMjdFUioyLEVDTVwiLCBcIktBQi01MDAqNCxSLTczKjIsUi03NyoyLEVDTVwiLCBcIkZBQi0yNTAqNixSLTczKjIsRUNNXCIsIFwiUi03Myo0LFItNzcqNCxSLTI3RVIqMlwiLCBcIktoLTI5VCo0LFItNzMqMixSLTc3KjIsRUNNXCIsIFwiS2gtMzFQKjIsS2gtMzFBKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJLaC0zMVAqNCxSLTczKjIsUi03NyoyLEVDTVwiXSwgXCJTdS0zM1wiOiBbXCJSQkstMjUwKjYsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiUi03Myo0XCIsIFwiUi03Myo0LFItMjdSKjIsUi0yN0VSKjZcIiwgXCJSLTczKjIsUi0yN0VUKjIsUi0yN0VSKjYsRUNNXCIsIFwiUi03Myo0LFItMjdFVCoyLFItMjdFUio2XCIsIFwiRkFCLTI1MCo2LFItNzMqMixSLTI3UioyLEVDTVwiLCBcIlItNzMqMixSLTI3UioyLFItMjdFUio2LEVDTVwiLCBcIkVDTVwiLCBcIkJldEFCLTUwMCo2LFItNzMqMixSLTI3UioyLEVDTVwiLCBcIlJCSy01MDBBTyo2LFItNzMqMixSLTI3UioyLEVDTVwiLCBcIlVCLTEzKjQsRkFCLTI1MCo0LFItNzMqMixFQ01cIiwgXCJTLTI1KjQsRkFCLTI1MCo0LFItNzMqMixFQ01cIiwgXCJGQUItNTAwKjYsUi03MyoyLFItMjdSKjIsRUNNXCIsIFwiQi04KjQsRkFCLTI1MCo0LFItNzMqMixFQ01cIiwgXCJTLTI1KjQsRkFCLTUwMCo0LFItNzMqNFwiLCBcIkNBUyBTLThLT00gcm9ja2V0cyArIEZBQjUwMFwiLCBcIkNBUyBTLThPRlAgcm9ja2V0cyArIEZBQjUwMFwiLCBcIkNBUyBTLTEzIFJvY2tldHMgKyBGQUI1MDBcIiwgXCJDQVMgUy0xMyBSb2NrZXRzICsgRkFCMTAwXCIsIFwiQ0FTIFMtOEtPTSByb2NrZXRzICsgRkFCMjUwXCIsIFwiQ0FTIFMtMjUgUm9ja2V0cyArIEZBQjUwMFwiLCBcIkNBUyBTLThLT00gcm9ja2V0cyArIFJCSzUwMCBQVEFCMTBcIiwgXCJDQVMgUy04S09NIHJvY2tldHMgKyBSQks1MDAgUFRBQjFcIl0sIFwiU3UtMzRcIjogW1wiVUItMTMqNCxGQUItMjUwKjQsUi03MyoyLEVDTVwiLCBcIkZBQi0xMDAqMjgsUi03MyoyLEVDTVwiLCBcIkJldEFCLTUwMCo4LFItNzMqMixFQ01cIiwgXCJLaC0yOUwqNCxSLTczKjIsUi03NyoyLEVDTVwiLCBcIktBQi01MDAqNCxSLTczKjIsUi03NyoyLEVDTVwiLCBcIlJCSy0yNTAgUFRBQi0yLjVNKjgsUi03MyoyLEVDTVwiLCBcIkZBQi0yNTAqOCxSLTczKjIsRUNNXCIsIFwiRUNNXCIsIFwiS2gtMjlUKjQsUi03MyoyLFItNzcqMixFQ01cIiwgXCJSQkstNTAwIFBUQUItMTAtNSo4LFItNzMqMixFQ01cIiwgXCJGQUItMTUwMCozLFItNzMqMixSLTc3KjIsRUNNXCIsIFwiS2gtNTlNKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJCLTgqNixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJGQUItNTAwKjgsUi03MyoyLEVDTVwiLCBcIktBQi0xNTAwKjIsUi03MyoyLFItNzcqMixFQ01cIiwgXCJLaC0yOVQqNCxSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJLaC0zMUEqNCxLaC0zMVAqMixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJLaC0zMUEqNixSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJLaC0zMVAqNCxSLTczKjIsUi0yN1IqMixFQ01cIiwgXCJLaC0yOUwqNCxSLTczKjIsUi0yN1IqMixFQ01cIl0sIFwiVG9ybmFkbyBHUjRcIjogW1wiQUlNLTlNKjIsIEZ1ZWwqMiwgRUNNXCIsIFwiQUxBUk0qNCwgRnVlbCoyLCBFQ01cIiwgXCJHQlUtMTYqMiwgQUlNLTlNKjIsIEZ1ZWwqMiwgRUNNXCIsIFwiQkw3NTUqNCwgQUlNLTlNKjIsIEZ1ZWwqMiwgRUNNXCIsIFwiU2VhIEVhZ2xlKjIsIEFJTS05TSoyLCBGdWVsKjIsIEVDTVwiXSwgXCJUb3JuYWRvIElEU1wiOiBbXCJLb3Jtb3JhbioyLEFJTS05KjIsRnVlbCoyXCIsIFwiR0JVLTE2KjIsQUlNLTkqMixGdWVsKjJcIiwgXCJGdWVsKjJcIiwgXCJBR00tODgqNCxBSU0tOSoyLEVDTVwiLCBcIkFHTS04OCoyLEFJTS05KjIsRnVlbCoyLEVDTVwiLCBcIktvcm1vcmFuKjQsQUlNLTkqMlwiLCBcIktvcm1vcmFuKjIsQUlNLTkqMixBR00tODgqMlwiLCBcIk1rLTgyKjQsQUlNLTkqMixGdWVsKjJcIl0sIFwiVHUtMTQyXCI6IFtcIktoLTM1KjZcIl0sIFwiVHUtMTYwXCI6IFtcIktoLTY1KjEyXCJdLCBcIlR1LTIyTTNcIjogW1wiS2gtMjJOXCIsIFwiS2gtMjJOKjJcIiwgXCJGQUItMjUwKjY5XCIsIFwiRkFCLTUwMCozM1wiLCBcIkZBQi01MDAqMzMsIEZBQi0yNTAqMzZcIiwgXCJGQUItMjUwKjMzXCJdLCBcIlR1LTk1TVNcIjogW1wiS2gtNjUqNlwiXSwgXCJVSC0xSFwiOiBbXCJNMTM0IE1pbmlndW4qMiwgWE0xNTgqMlwiXSwgXCJVSC02MEFcIjogW10gfSIsImltcG9ydCB7IE1hcmtlciwgTGF0TG5nLCBQb2x5bGluZSwgSWNvbiB9IGZyb20gJ2xlYWZsZXQnO1xyXG5pbXBvcnQgeyBDb252ZXJ0RERUb0RNUyB9IGZyb20gJy4uL290aGVyL3V0aWxzJztcclxuaW1wb3J0IHsgZ2V0TWFwLCBnZXRVbml0c01hbmFnZXIsIGdldFZpc2liaWxpdHlTZXR0aW5ncyB9IGZyb20gJy4uJztcclxuaW1wb3J0IHsgVW5pdE1hcmtlciwgTWFya2VyT3B0aW9ucywgQWlyY3JhZnRNYXJrZXIsIEhlbGljb3B0ZXJNYXJrZXIsIEdyb3VuZFVuaXRNYXJrZXIsIE5hdnlVbml0TWFya2VyLCBXZWFwb25NYXJrZXIgfSBmcm9tICcuL3VuaXRtYXJrZXInO1xyXG5pbXBvcnQgeyBhZGREZXN0aW5hdGlvbiwgYXR0YWNrVW5pdCwgY2hhbmdlQWx0aXR1ZGUsIGNoYW5nZVNwZWVkIH0gZnJvbSAnLi4vZGNzL2Rjcyc7XHJcblxyXG52YXIgcGF0aEljb24gPSBuZXcgSWNvbih7XHJcbiAgICBpY29uVXJsOiAnaW1hZ2VzL21hcmtlci1pY29uLnBuZycsXHJcbiAgICBzaGFkb3dVcmw6ICdpbWFnZXMvbWFya2VyLXNoYWRvdy5wbmcnLFxyXG4gICAgaWNvbkFuY2hvcjogWzEzLCA0MV1cclxufSk7XHJcblxyXG5leHBvcnQgY2xhc3MgVW5pdCB7XHJcbiAgICBJRDogbnVtYmVyID0gLTE7XHJcbiAgICBsZWFkZXI6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHdpbmdtYW46IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHdpbmdtZW46IFVuaXRbXSA9IFtdO1xyXG4gICAgZm9ybWF0aW9uOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgbmFtZTogc3RyaW5nID0gXCJcIjtcclxuICAgIHVuaXROYW1lOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgZ3JvdXBOYW1lOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgbGF0aXR1ZGU6IG51bWJlciA9IDA7XHJcbiAgICBsb25naXR1ZGU6IG51bWJlciA9IDA7XHJcbiAgICBhbHRpdHVkZTogbnVtYmVyID0gMDtcclxuICAgIGhlYWRpbmc6IG51bWJlciA9IDA7XHJcbiAgICBzcGVlZDogbnVtYmVyID0gMDtcclxuICAgIGNvYWxpdGlvbklEOiBudW1iZXIgPSAtMTtcclxuICAgIGFsaXZlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIGN1cnJlbnRUYXNrOiBzdHJpbmcgPSBcIlwiO1xyXG4gICAgZnVlbDogbnVtYmVyID0gMDtcclxuICAgIHR5cGU6IGFueSA9IG51bGw7XHJcbiAgICBmbGFnczogYW55ID0gbnVsbDtcclxuICAgIGFjdGl2ZVBhdGg6IGFueSA9IG51bGw7XHJcbiAgICBhbW1vOiBhbnkgPSBudWxsO1xyXG4gICAgdGFyZ2V0czogYW55ID0gbnVsbDtcclxuXHJcbiAgICAjc2VsZWN0YWJsZTogYm9vbGVhbjtcclxuICAgICNzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgI3ByZXZlbnRDbGljazogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgI3BhdGhNYXJrZXJzOiBNYXJrZXJbXSA9IFtdO1xyXG4gICAgI3BhdGhQb2x5bGluZTogUG9seWxpbmU7XHJcbiAgICAjdGFyZ2V0c1BvbHlsaW5lczogUG9seWxpbmVbXTtcclxuICAgICNtYXJrZXI6IFVuaXRNYXJrZXI7XHJcbiAgICAjdGltZXI6IG51bWJlciA9IDA7XHJcblxyXG4gICAgc3RhdGljIGdldENvbnN0cnVjdG9yKG5hbWU6IHN0cmluZykge1xyXG4gICAgICAgIGlmIChuYW1lID09PSBcIkdyb3VuZFVuaXRcIikgcmV0dXJuIEdyb3VuZFVuaXQ7XHJcbiAgICAgICAgaWYgKG5hbWUgPT09IFwiQWlyY3JhZnRcIikgcmV0dXJuIEFpcmNyYWZ0O1xyXG4gICAgICAgIGlmIChuYW1lID09PSBcIkhlbGljb3B0ZXJcIikgcmV0dXJuIEhlbGljb3B0ZXI7XHJcbiAgICAgICAgaWYgKG5hbWUgPT09IFwiTWlzc2lsZVwiKSByZXR1cm4gTWlzc2lsZTtcclxuICAgICAgICBpZiAobmFtZSA9PT0gXCJCb21iXCIpIHJldHVybiBCb21iO1xyXG4gICAgICAgIGlmIChuYW1lID09PSBcIk5hdnlVbml0XCIpIHJldHVybiBOYXZ5VW5pdDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihJRDogbnVtYmVyLCBtYXJrZXI6IFVuaXRNYXJrZXIpIHtcclxuICAgICAgICB0aGlzLklEID0gSUQ7XHJcblxyXG4gICAgICAgIHRoaXMuI3NlbGVjdGFibGUgPSB0cnVlO1xyXG5cclxuICAgICAgICAvKiBUaGUgbWFya2VyIGlzIHNldCBieSB0aGUgaW5oZXJpdGVkIGNsYXNzICovXHJcbiAgICAgICAgdGhpcy4jbWFya2VyID0gbWFya2VyO1xyXG4gICAgICAgIHRoaXMuI21hcmtlci5vbignY2xpY2snLCAoZSkgPT4gdGhpcy4jb25DbGljayhlKSk7XHJcbiAgICAgICAgdGhpcy4jbWFya2VyLm9uKCdkYmxjbGljaycsIChlKSA9PiB0aGlzLiNvbkRvdWJsZUNsaWNrKGUpKTtcclxuXHJcbiAgICAgICAgdGhpcy4jcGF0aFBvbHlsaW5lID0gbmV3IFBvbHlsaW5lKFtdLCB7IGNvbG9yOiAnIzJkM2U1MCcsIHdlaWdodDogMywgb3BhY2l0eTogMC41LCBzbW9vdGhGYWN0b3I6IDEgfSk7XHJcbiAgICAgICAgdGhpcy4jcGF0aFBvbHlsaW5lLmFkZFRvKGdldE1hcCgpKTtcclxuICAgICAgICB0aGlzLiN0YXJnZXRzUG9seWxpbmVzID0gW107XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKHJlc3BvbnNlOiBKU09OKSB7XHJcbiAgICAgICAgZm9yIChsZXQgZW50cnkgaW4gcmVzcG9uc2UpIHtcclxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgICAgICB0aGlzW2VudHJ5XSA9IHJlc3BvbnNlW2VudHJ5XTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIERlYWQgdW5pdHMgY2FuJ3QgYmUgc2VsZWN0ZWQgKi9cclxuICAgICAgICB0aGlzLnNldFNlbGVjdGVkKHRoaXMuZ2V0U2VsZWN0ZWQoKSAmJiB0aGlzLmFsaXZlKVxyXG5cclxuICAgICAgICB0aGlzLiN1cGRhdGVNYXJrZXIoKTtcclxuXHJcbiAgICAgICAgdGhpcy4jY2xlYXJUYXJnZXRzKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuI2RyYXdQYXRoKCk7XHJcbiAgICAgICAgICAgIHRoaXMuI2RyYXdUYXJnZXRzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgdGhpcy4jY2xlYXJQYXRoKCk7XHJcblxyXG4gICAgICAgIC8qXHJcbiAgICAgICAgdGhpcy53aW5nbWVuID0gW107XHJcbiAgICAgICAgaWYgKHJlc3BvbnNlW1wid2luZ21lbklEc1wiXSAhPSBudWxsKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgSUQgb2YgcmVzcG9uc2VbXCJ3aW5nbWVuSURzXCJdKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLndpbmdtZW4ucHVzaCh1bml0c01hbmFnZXIuZ2V0VW5pdEJ5SUQoSUQpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAqL1xyXG4gICAgfVxyXG5cclxuICAgIHNldFNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKSB7XHJcbiAgICAgICAgLyogT25seSBhbGl2ZSB1bml0cyBjYW4gYmUgc2VsZWN0ZWQuIFNvbWUgdW5pdHMgYXJlIG5vdCBzZWxlY3RhYmxlICh3ZWFwb25zKSAqL1xyXG4gICAgICAgIGlmICgodGhpcy5hbGl2ZSB8fCAhc2VsZWN0ZWQpICYmIHRoaXMuI3NlbGVjdGFibGUgJiYgdGhpcy4jc2VsZWN0ZWQgIT0gc2VsZWN0ZWQpIHtcclxuICAgICAgICAgICAgdGhpcy4jc2VsZWN0ZWQgPSBzZWxlY3RlZDtcclxuICAgICAgICAgICAgdGhpcy4jbWFya2VyLnNldFNlbGVjdGVkKHNlbGVjdGVkKTtcclxuICAgICAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkub25Vbml0U2VsZWN0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdldFNlbGVjdGVkKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNzZWxlY3RlZDtcclxuICAgIH1cclxuXHJcbiAgICBzZXRTZWxlY3RhYmxlKHNlbGVjdGFibGU6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLiNzZWxlY3RhYmxlID0gc2VsZWN0YWJsZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRTZWxlY3RhYmxlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNzZWxlY3RhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZERlc3RpbmF0aW9uKGxhdGxuZzogTC5MYXRMbmcpIHtcclxuICAgICAgICB2YXIgcGF0aDogYW55ID0ge307XHJcbiAgICAgICAgaWYgKHRoaXMuYWN0aXZlUGF0aCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHBhdGggPSB0aGlzLmFjdGl2ZVBhdGg7XHJcbiAgICAgICAgICAgIHBhdGhbKE9iamVjdC5rZXlzKHBhdGgpLmxlbmd0aCArIDEpLnRvU3RyaW5nKCldID0gbGF0bG5nO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgcGF0aCA9IHsgXCIxXCI6IGxhdGxuZyB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBhZGREZXN0aW5hdGlvbih0aGlzLklELCBwYXRoKTtcclxuICAgIH1cclxuXHJcbiAgICBjbGVhckRlc3RpbmF0aW9ucygpIHtcclxuICAgICAgICB0aGlzLmFjdGl2ZVBhdGggPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEhpZGRlbigpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgI29uQ2xpY2soZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy4jdGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLiNwcmV2ZW50Q2xpY2spIHtcclxuICAgICAgICAgICAgICAgIGlmIChnZXRNYXAoKS5nZXRTdGF0ZSgpID09PSAnSURMRScgfHwgZ2V0TWFwKCkuZ2V0U3RhdGUoKSA9PT0gJ01PVkVfVU5JVCcgfHwgZS5vcmlnaW5hbEV2ZW50LmN0cmxLZXkpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWUub3JpZ2luYWxFdmVudC5jdHJsS2V5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdldFVuaXRzTWFuYWdlcigpLmRlc2VsZWN0QWxsVW5pdHMoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTZWxlY3RlZCh0cnVlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLiNwcmV2ZW50Q2xpY2sgPSBmYWxzZTtcclxuICAgICAgICB9LCAyMDApO1xyXG4gICAgfVxyXG5cclxuICAgICNvbkRvdWJsZUNsaWNrKGU6IGFueSkge1xyXG4gICAgICAgIGNsZWFyVGltZW91dCh0aGlzLiN0aW1lcik7XHJcbiAgICAgICAgdGhpcy4jcHJldmVudENsaWNrID0gdHJ1ZTtcclxuXHJcbiAgICAgICAgdmFyIG9wdGlvbnMgPSBbXHJcbiAgICAgICAgICAgICdBdHRhY2snLFxyXG4gICAgICAgIF1cclxuXHJcbiAgICAgICAgLy9pZiAoIXRoaXMubGVhZGVyICYmICF0aGlzLndpbmdtYW4pIHtcclxuICAgICAgICAvLyAgICBvcHRpb25zLnB1c2goeyAndG9vbHRpcCc6ICdDcmVhdGUgZm9ybWF0aW9uJywgJ3NyYyc6ICdmb3JtYXRpb24ucG5nJywgJ2NhbGxiYWNrJzogKCkgPT4geyBnZXRNYXAoKS5oaWRlU2VsZWN0aW9uV2hlZWwoKTsgLyp1bml0c01hbmFnZXIuY3JlYXRlRm9ybWF0aW9uKHRoaXMuSUQpOyovIH0gfSk7XHJcbiAgICAgICAgLy99XHJcblxyXG4gICAgICAgIGdldE1hcCgpLnNob3dTZWxlY3Rpb25TY3JvbGwoZS5vcmlnaW5hbEV2ZW50LCBvcHRpb25zLCAoYWN0aW9uOiBzdHJpbmcpID0+IHRoaXMuI2V4ZWN1dGVBY3Rpb24oYWN0aW9uKSk7XHJcbiAgICB9XHJcblxyXG4gICAgI2V4ZWN1dGVBY3Rpb24oYWN0aW9uOiBzdHJpbmcpIHtcclxuICAgICAgICBnZXRNYXAoKS5oaWRlU2VsZWN0aW9uU2Nyb2xsKCk7XHJcbiAgICAgICAgaWYgKGFjdGlvbiA9PT0gXCJBdHRhY2tcIilcclxuICAgICAgICAgICAgZ2V0VW5pdHNNYW5hZ2VyKCkuYXR0YWNrVW5pdCh0aGlzLklEKTtcclxuICAgIH1cclxuXHJcbiAgICAjdXBkYXRlTWFya2VyKCkge1xyXG4gICAgICAgIC8qIEFkZCB0aGUgbWFya2VyIGlmIG5vdCBwcmVzZW50ICovXHJcbiAgICAgICAgaWYgKCFnZXRNYXAoKS5oYXNMYXllcih0aGlzLiNtYXJrZXIpICYmICF0aGlzLmdldEhpZGRlbigpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI21hcmtlci5hZGRUbyhnZXRNYXAoKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBIaWRlIHRoZSBtYXJrZXIgaWYgbmVjZXNzYXJ5Ki9cclxuICAgICAgICBpZiAoZ2V0TWFwKCkuaGFzTGF5ZXIodGhpcy4jbWFya2VyKSAmJiB0aGlzLmdldEhpZGRlbigpKSB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnJlbW92ZUxheWVyKHRoaXMuI21hcmtlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuI21hcmtlci5zZXRMYXRMbmcobmV3IExhdExuZyh0aGlzLmxhdGl0dWRlLCB0aGlzLmxvbmdpdHVkZSkpO1xyXG4gICAgICAgICAgICB0aGlzLiNtYXJrZXIuZHJhdyh7XHJcbiAgICAgICAgICAgICAgICBoZWFkaW5nOiB0aGlzLmhlYWRpbmcsXHJcbiAgICAgICAgICAgICAgICBzcGVlZDogdGhpcy5zcGVlZCxcclxuICAgICAgICAgICAgICAgIGFsdGl0dWRlOiB0aGlzLmFsdGl0dWRlLFxyXG4gICAgICAgICAgICAgICAgYWxpdmU6IHRoaXMuYWxpdmVcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNkcmF3UGF0aCgpIHtcclxuICAgICAgICBpZiAodGhpcy5hY3RpdmVQYXRoICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdmFyIF9wb2ludHMgPSBbXTtcclxuICAgICAgICAgICAgX3BvaW50cy5wdXNoKG5ldyBMYXRMbmcodGhpcy5sYXRpdHVkZSwgdGhpcy5sb25naXR1ZGUpKTtcclxuXHJcbiAgICAgICAgICAgIC8qIEFkZCBtYXJrZXJzIGlmIG1pc3NpbmcgKi9cclxuICAgICAgICAgICAgd2hpbGUgKHRoaXMuI3BhdGhNYXJrZXJzLmxlbmd0aCA8IE9iamVjdC5rZXlzKHRoaXMuYWN0aXZlUGF0aCkubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgbWFya2VyID0gbmV3IE1hcmtlcihbMCwgMF0sIHsgaWNvbjogcGF0aEljb24gfSkuYWRkVG8oZ2V0TWFwKCkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jcGF0aE1hcmtlcnMucHVzaChtYXJrZXIpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvKiBSZW1vdmUgbWFya2VycyBpZiB0b28gbWFueSAqL1xyXG4gICAgICAgICAgICB3aGlsZSAodGhpcy4jcGF0aE1hcmtlcnMubGVuZ3RoID4gT2JqZWN0LmtleXModGhpcy5hY3RpdmVQYXRoKS5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIGdldE1hcCgpLnJlbW92ZUxheWVyKHRoaXMuI3BhdGhNYXJrZXJzW3RoaXMuI3BhdGhNYXJrZXJzLmxlbmd0aCAtIDFdKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuI3BhdGhNYXJrZXJzLnNwbGljZSh0aGlzLiNwYXRoTWFya2Vycy5sZW5ndGggLSAxLCAxKVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvKiBVcGRhdGUgdGhlIHBvc2l0aW9uIG9mIHRoZSBleGlzdGluZyBtYXJrZXJzICh0byBhdm9pZCBjcmVhdGluZyBtYXJrZXJzIHVzZWxlc3NseSkgKi9cclxuICAgICAgICAgICAgZm9yIChsZXQgV1AgaW4gdGhpcy5hY3RpdmVQYXRoKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgZGVzdGluYXRpb24gPSB0aGlzLmFjdGl2ZVBhdGhbV1BdO1xyXG4gICAgICAgICAgICAgICAgdGhpcy4jcGF0aE1hcmtlcnNbcGFyc2VJbnQoV1ApIC0gMV0uc2V0TGF0TG5nKFtkZXN0aW5hdGlvbi5sYXQsIGRlc3RpbmF0aW9uLmxuZ10pO1xyXG4gICAgICAgICAgICAgICAgX3BvaW50cy5wdXNoKG5ldyBMYXRMbmcoZGVzdGluYXRpb24ubGF0LCBkZXN0aW5hdGlvbi5sbmcpKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuI3BhdGhQb2x5bGluZS5zZXRMYXRMbmdzKF9wb2ludHMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNjbGVhclBhdGgoKSB7XHJcbiAgICAgICAgZm9yIChsZXQgV1AgaW4gdGhpcy4jcGF0aE1hcmtlcnMpIHtcclxuICAgICAgICAgICAgZ2V0TWFwKCkucmVtb3ZlTGF5ZXIodGhpcy4jcGF0aE1hcmtlcnNbV1BdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jcGF0aE1hcmtlcnMgPSBbXTtcclxuICAgICAgICB0aGlzLiNwYXRoUG9seWxpbmUuc2V0TGF0TG5ncyhbXSk7XHJcbiAgICB9XHJcblxyXG4gICAgXHJcbiAgICAjZHJhd1RhcmdldHMoKVxyXG4gICAge1xyXG4gICAgICAgIGZvciAobGV0IHR5cGVJbmRleCBpbiB0aGlzLnRhcmdldHMpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCBpbiB0aGlzLnRhcmdldHNbdHlwZUluZGV4XSlcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdmFyIHRhcmdldERhdGEgPSB0aGlzLnRhcmdldHNbdHlwZUluZGV4XVtpbmRleF07XHJcbiAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0ID0gZ2V0VW5pdHNNYW5hZ2VyKCkuZ2V0VW5pdEJ5SUQodGFyZ2V0RGF0YS5vYmplY3RbXCJpZF9cIl0pXHJcbiAgICAgICAgICAgICAgICBpZiAodGFyZ2V0ICE9IG51bGwpe1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBzdGFydExhdExuZyA9IG5ldyBMYXRMbmcodGhpcy5sYXRpdHVkZSwgdGhpcy5sb25naXR1ZGUpXHJcbiAgICAgICAgICAgICAgICAgICAgdmFyIGVuZExhdExuZyA9IG5ldyBMYXRMbmcodGFyZ2V0LmxhdGl0dWRlLCB0YXJnZXQubG9uZ2l0dWRlKVxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHZhciBjb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZUluZGV4ID09PSBcInJhZGFyXCIpXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvciA9IFwiI0ZGRkYwMFwiO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh0eXBlSW5kZXggPT09IFwidmlzdWFsXCIpXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvciA9IFwiI0ZGMDBGRlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh0eXBlSW5kZXggPT09IFwicndyXCIpXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvciA9IFwiIzAwRkYwMFwiO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvciA9IFwiI0ZGRkZGRlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB2YXIgdGFyZ2V0UG9seWxpbmUgPSBuZXcgUG9seWxpbmUoW3N0YXJ0TGF0TG5nLCBlbmRMYXRMbmddLCB7Y29sb3I6IGNvbG9yLCB3ZWlnaHQ6IDMsIG9wYWNpdHk6IDEsIHNtb290aEZhY3RvcjogMX0pO1xyXG4gICAgICAgICAgICAgICAgICAgIHRhcmdldFBvbHlsaW5lLmFkZFRvKGdldE1hcCgpKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLiN0YXJnZXRzUG9seWxpbmVzLnB1c2godGFyZ2V0UG9seWxpbmUpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI2NsZWFyVGFyZ2V0cygpXHJcbiAgICB7XHJcbiAgICAgICAgZm9yIChsZXQgaW5kZXggaW4gdGhpcy4jdGFyZ2V0c1BvbHlsaW5lcylcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnJlbW92ZUxheWVyKHRoaXMuI3RhcmdldHNQb2x5bGluZXNbaW5kZXhdKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG5cclxuICAgIGF0dGFja1VuaXQodGFyZ2V0SUQ6IG51bWJlcikge1xyXG4gICAgICAgIC8qIENhbGwgRENTIGF0dGFja1VuaXQgZnVuY3Rpb24gKi9cclxuICAgICAgICBpZiAodGhpcy5JRCAhPSB0YXJnZXRJRCkge1xyXG4gICAgICAgICAgICBhdHRhY2tVbml0KHRoaXMuSUQsIHRhcmdldElEKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIFRPRE86IHNob3cgYSBtZXNzYWdlXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFxyXG4gICAgY2hhbmdlU3BlZWQoc3BlZWRDaGFuZ2U6IHN0cmluZylcclxuICAgIHtcclxuICAgICAgIGNoYW5nZVNwZWVkKHRoaXMuSUQsIHNwZWVkQ2hhbmdlKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VBbHRpdHVkZShhbHRpdHVkZUNoYW5nZTogc3RyaW5nKVxyXG4gICAge1xyXG4gICAgICAgIGNoYW5nZUFsdGl0dWRlKHRoaXMuSUQsIGFsdGl0dWRlQ2hhbmdlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKlxyXG4gICAgc2V0Zm9ybWF0aW9uKGZvcm1hdGlvbilcclxuICAgIHtcclxuICAgICAgICAvLyBUT0RPIG1vdmUgaW4gZGVkaWNhdGVkIGZpbGVcclxuICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XHJcbiAgICAgICAgeGhyLm9wZW4oXCJQVVRcIiwgUkVTVGFkZHJlc3MpO1xyXG4gICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC1UeXBlXCIsIFwiYXBwbGljYXRpb24vanNvblwiKTtcclxuICAgICAgICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT09IDQpIHtcclxuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMudW5pdE5hbWUgKyBcIiBmb3JtYXRpb24gY2hhbmdlOiBcIiArIGZvcm1hdGlvbik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB2YXIgY29tbWFuZCA9IHtcIklEXCI6IHRoaXMuSUQsIFwiZm9ybWF0aW9uXCI6IGZvcm1hdGlvbn1cclxuICAgICAgICB2YXIgZGF0YSA9IHtcInNldEZvcm1hdGlvblwiOiBjb21tYW5kfVxyXG5cclxuICAgICAgICB4aHIuc2VuZChKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0TGVhZGVyKHdpbmdtZW5JRHMpXHJcbiAgICB7XHJcbiAgICAgICAgLy8gVE9ETyBtb3ZlIGluIGRlZGljYXRlZCBmaWxlXHJcbiAgICAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xyXG4gICAgICAgIHhoci5vcGVuKFwiUFVUXCIsIFJFU1RhZGRyZXNzKTtcclxuICAgICAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtVHlwZVwiLCBcImFwcGxpY2F0aW9uL2pzb25cIik7XHJcbiAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9ICgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyh0aGlzLnVuaXROYW1lICsgXCIgY3JlYXRlZCBmb3JtYXRpb24gd2l0aDogXCIgKyB3aW5nbWVuSURzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHZhciBjb21tYW5kID0ge1wiSURcIjogdGhpcy5JRCwgXCJ3aW5nbWVuSURzXCI6IHdpbmdtZW5JRHN9XHJcbiAgICAgICAgdmFyIGRhdGEgPSB7XCJzZXRMZWFkZXJcIjogY29tbWFuZH1cclxuXHJcbiAgICAgICAgeGhyLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xyXG4gICAgfVxyXG4gICAgKi9cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFpclVuaXQgZXh0ZW5kcyBVbml0IHtcclxuICAgIGdldEhpZGRlbigpIHtcclxuICAgICAgICBpZiAodGhpcy5hbGl2ZSlcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmZsYWdzLnVzZXIgJiYgZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkudXNlciA9PT0gXCJoaWRkZW5cIilcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgICAgIGVsc2UgaWYgKCF0aGlzLmZsYWdzLnVzZXIgJiYgZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuYWkgPT09IFwiaGlkZGVuXCIpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHJldHVybiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS5kZWFkID09PSBcImhpZGRlblwiXHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQWlyY3JhZnQgZXh0ZW5kcyBBaXJVbml0IHtcclxuICAgIGNvbnN0cnVjdG9yKElEOiBudW1iZXIsIG9wdGlvbnM6IE1hcmtlck9wdGlvbnMpIHtcclxuICAgICAgICB2YXIgbWFya2VyID0gbmV3IEFpcmNyYWZ0TWFya2VyKG9wdGlvbnMpO1xyXG4gICAgICAgIHN1cGVyKElELCBtYXJrZXIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgSGVsaWNvcHRlciBleHRlbmRzIEFpclVuaXQge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgSGVsaWNvcHRlck1hcmtlcihvcHRpb25zKTtcclxuICAgICAgICBzdXBlcihJRCwgbWFya2VyKTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEdyb3VuZFVuaXQgZXh0ZW5kcyBVbml0IHtcclxuICAgIGNvbnN0cnVjdG9yKElEOiBudW1iZXIsIG9wdGlvbnM6IE1hcmtlck9wdGlvbnMpIHtcclxuICAgICAgICB2YXIgbWFya2VyID0gbmV3IEdyb3VuZFVuaXRNYXJrZXIob3B0aW9ucyk7XHJcbiAgICAgICAgc3VwZXIoSUQsIG1hcmtlcik7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SGlkZGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFsaXZlKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS51c2VyID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICAgICAgZWxzZSBpZiAoIXRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS5haSA9PT0gXCJoaWRkZW5cIilcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmRlYWQgPT09IFwiaGlkZGVuXCJcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBOYXZ5VW5pdCBleHRlbmRzIFVuaXQge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgTmF2eVVuaXRNYXJrZXIob3B0aW9ucyk7XHJcbiAgICAgICAgc3VwZXIoSUQsIG1hcmtlcik7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SGlkZGVuKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmFsaXZlKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS51c2VyID09PSBcImhpZGRlblwiKVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWVcclxuICAgICAgICAgICAgZWxzZSBpZiAoIXRoaXMuZmxhZ3MudXNlciAmJiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS5haSA9PT0gXCJoaWRkZW5cIilcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmRlYWQgPT09IFwiaGlkZGVuXCJcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBXZWFwb24gZXh0ZW5kcyBVbml0IHtcclxuICAgIGNvbnN0cnVjdG9yKElEOiBudW1iZXIsIG1hcmtlcjogVW5pdE1hcmtlcilcclxuICAgIHtcclxuICAgICAgICBzdXBlcihJRCwgbWFya2VyKTtcclxuICAgICAgICB0aGlzLnNldFNlbGVjdGFibGUoZmFsc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEhpZGRlbigpIHtcclxuICAgICAgICBpZiAodGhpcy5hbGl2ZSlcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5mbGFncy51c2VyICYmIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLndlYXBvbiA9PT0gXCJoaWRkZW5cIilcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmRlYWQgPT09IFwiaGlkZGVuXCJcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNaXNzaWxlIGV4dGVuZHMgV2VhcG9uIHtcclxuICAgIGNvbnN0cnVjdG9yKElEOiBudW1iZXIsIG9wdGlvbnM6IE1hcmtlck9wdGlvbnMpIHtcclxuICAgICAgICB2YXIgbWFya2VyID0gbmV3IFdlYXBvbk1hcmtlcihvcHRpb25zKTtcclxuICAgICAgICBzdXBlcihJRCwgbWFya2VyKTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEJvbWIgZXh0ZW5kcyBXZWFwb24ge1xyXG4gICAgY29uc3RydWN0b3IoSUQ6IG51bWJlciwgb3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBtYXJrZXIgPSBuZXcgV2VhcG9uTWFya2VyKG9wdGlvbnMpO1xyXG4gICAgICAgIHN1cGVyKElELCBtYXJrZXIpO1xyXG4gICAgfVxyXG59XHJcbiIsIlxyXG5cclxuZXhwb3J0IHZhciB1bml0VHlwZXM6IGFueSA9IHt9O1xyXG4vKiBOQVZZICovXHJcbnVuaXRUeXBlcy5uYXZ5ID0ge307XHJcbnVuaXRUeXBlcy5uYXZ5LmJsdWUgPSBbXHJcbiAgICBcIlZJTlNPTlwiLFxyXG4gICAgXCJQRVJSWVwiLFxyXG4gICAgXCJUSUNPTkRFUk9HXCJcclxuXVxyXG5cclxudW5pdFR5cGVzLm5hdnkucmVkID0gW1xyXG4gICAgXCJBTEJBVFJPU1wiLFxyXG4gICAgXCJLVVpORUNPV1wiLFxyXG4gICAgXCJNT0xOSVlBXCIsXHJcbiAgICBcIk1PU0NPV1wiLFxyXG4gICAgXCJORVVTVFJBU0hcIixcclxuICAgIFwiUElPVFJcIixcclxuICAgIFwiUkVaS1lcIlxyXG5dXHJcblxyXG51bml0VHlwZXMubmF2eS5jaXZpbCA9IFtcclxuICAgIFwiRUxOWUFcIixcclxuICAgIFwiRHJ5LWNhcmdvIHNoaXAtMlwiLFxyXG4gICAgXCJEcnktY2FyZ28gc2hpcC0xXCIsXHJcbiAgICBcIlpXRVpETllcIlxyXG5dXHJcblxyXG51bml0VHlwZXMubmF2eS5zdWJtYXJpbmUgPSBbXHJcbiAgICBcIktJTE9cIixcclxuICAgIFwiU09NXCJcclxuXVxyXG5cclxudW5pdFR5cGVzLm5hdnkuc3BlZWRib2F0ID0gW1xyXG4gICAgXCJzcGVlZGJvYXRcIlxyXG5dXHJcblxyXG4vKiBWRUhJQ0xFUyAoR1JPVU5EKSAqL1xyXG51bml0VHlwZXMudmVoaWNsZXMgPSBbXVxyXG51bml0VHlwZXMudmVoaWNsZXMuSG93aXR6ZXJzID0gW1xyXG4gICAgXCIyQjExIG1vcnRhclwiLFxyXG4gICAgXCJTQVUgR3ZvemRpa2FcIixcclxuICAgIFwiU0FVIE1zdGFcIixcclxuICAgIFwiU0FVIEFrYXRzaWFcIixcclxuICAgIFwiU0FVIDItQzlcIixcclxuICAgIFwiTS0xMDlcIlxyXG5dXHJcblxyXG51bml0VHlwZXMudmVoaWNsZXMuSUZWID0gW1xyXG4gICAgXCJBQVY3XCIsXHJcbiAgICBcIkJNRC0xXCIsXHJcbiAgICBcIkJNUC0xXCIsXHJcbiAgICBcIkJNUC0yXCIsXHJcbiAgICBcIkJNUC0zXCIsXHJcbiAgICBcIkJvbWFuXCIsXHJcbiAgICBcIkJSRE0tMlwiLFxyXG4gICAgXCJCVFItODBcIixcclxuICAgIFwiQlRSX0RcIixcclxuICAgIFwiQnVua2VyXCIsXHJcbiAgICBcIkNvYnJhXCIsXHJcbiAgICBcIkxBVi0yNVwiLFxyXG4gICAgXCJNMTA0MyBITU1XViBBcm1hbWVudFwiLFxyXG4gICAgXCJNMTA0NSBITU1XViBUT1dcIixcclxuICAgIFwiTTExMjYgU3RyeWtlciBJQ1ZcIixcclxuICAgIFwiTS0xMTNcIixcclxuICAgIFwiTTExMzQgU3RyeWtlciBBVEdNXCIsXHJcbiAgICBcIk0tMiBCcmFkbGV5XCIsXHJcbiAgICBcIk1hcmRlclwiLFxyXG4gICAgXCJNQ1YtODBcIixcclxuICAgIFwiTVRMQlwiLFxyXG4gICAgXCJQYXJhdHJvb3BlciBSUEctMTZcIixcclxuICAgIFwiUGFyYXRyb29wZXIgQUtTLTc0XCIsXHJcbiAgICBcIlNhbmRib3hcIixcclxuICAgIFwiU29sZGllciBBS1wiLFxyXG4gICAgXCJJbmZhbnRyeSBBS1wiLFxyXG4gICAgXCJTb2xkaWVyIE0yNDlcIixcclxuICAgIFwiU29sZGllciBNNFwiLFxyXG4gICAgXCJTb2xkaWVyIE00IEdSR1wiLFxyXG4gICAgXCJTb2xkaWVyIFJQR1wiLFxyXG4gICAgXCJUUFpcIlxyXG5dXHJcblxyXG51bml0VHlwZXMudmVoaWNsZXMuTUxSUyA9IFtcclxuICAgIFwiR3JhZC1VUkFMXCIsXHJcbiAgICBcIlVyYWdhbl9CTS0yN1wiLFxyXG4gICAgXCJTbWVyY2hcIixcclxuICAgIFwiTUxSU1wiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5TQU0gPSBbXHJcbiAgICBcIjJTNiBUdW5ndXNrYVwiLFxyXG4gICAgXCJLdWIgMlAyNSBsblwiLFxyXG4gICAgXCI1cDczIHMtMTI1IGxuXCIsXHJcbiAgICBcIlMtMzAwUFMgNVA4NUMgbG5cIixcclxuICAgIFwiUy0zMDBQUyA1UDg1RCBsblwiLFxyXG4gICAgXCJTQS0xMSBCdWsgTE4gOUEzMTBNMVwiLFxyXG4gICAgXCJPc2EgOUEzMyBsblwiLFxyXG4gICAgXCJUb3IgOUEzMzFcIixcclxuICAgIFwiU3RyZWxhLTEwTTNcIixcclxuICAgIFwiU3RyZWxhLTEgOVAzMVwiLFxyXG4gICAgXCJTQS0xMSBCdWsgQ0MgOVM0NzBNMVwiLFxyXG4gICAgXCJTQS04IE9zYSBMRCA5VDIxN1wiLFxyXG4gICAgXCJQYXRyaW90IEFNR1wiLFxyXG4gICAgXCJQYXRyaW90IEVDU1wiLFxyXG4gICAgXCJHZXBhcmRcIixcclxuICAgIFwiSGF3ayBwY3BcIixcclxuICAgIFwiU0EtMTggSWdsYSBtYW5wYWRcIixcclxuICAgIFwiU0EtMTggSWdsYSBjb21tXCIsXHJcbiAgICBcIklnbGEgbWFucGFkIElOU1wiLFxyXG4gICAgXCJTQS0xOCBJZ2xhLVMgbWFucGFkXCIsXHJcbiAgICBcIlNBLTE4IElnbGEtUyBjb21tXCIsXHJcbiAgICBcIlZ1bGNhblwiLFxyXG4gICAgXCJIYXdrIGxuXCIsXHJcbiAgICBcIk00OCBDaGFwYXJyYWxcIixcclxuICAgIFwiTTYgTGluZWJhY2tlclwiLFxyXG4gICAgXCJQYXRyaW90IGxuXCIsXHJcbiAgICBcIk0xMDk3IEF2ZW5nZXJcIixcclxuICAgIFwiUGF0cmlvdCBFUFBcIixcclxuICAgIFwiUGF0cmlvdCBjcFwiLFxyXG4gICAgXCJSb2xhbmQgQURTXCIsXHJcbiAgICBcIlMtMzAwUFMgNTRLNiBjcFwiLFxyXG4gICAgXCJTdGluZ2VyIG1hbnBhZCBHUkdcIixcclxuICAgIFwiU3RpbmdlciBtYW5wYWQgZHNyXCIsXHJcbiAgICBcIlN0aW5nZXIgY29tbSBkc3JcIixcclxuICAgIFwiU3RpbmdlciBtYW5wYWRcIixcclxuICAgIFwiU3RpbmdlciBjb21tXCIsXHJcbiAgICBcIlpTVS0yMy00IFNoaWxrYVwiLFxyXG4gICAgXCJaVS0yMyBFbXBsYWNlbWVudCBDbG9zZWRcIixcclxuICAgIFwiWlUtMjMgRW1wbGFjZW1lbnRcIixcclxuICAgIFwiWlUtMjMgQ2xvc2VkIEluc3VyZ2VudFwiLFxyXG4gICAgXCJVcmFsLTM3NSBaVS0yMyBJbnN1cmdlbnRcIixcclxuICAgIFwiWlUtMjMgSW5zdXJnZW50XCIsXHJcbiAgICBcIlVyYWwtMzc1IFpVLTIzXCJcclxuXVxyXG5cclxudW5pdFR5cGVzLnZlaGljbGVzLlJhZGFyID0gW1xyXG4gICAgXCIxTDEzIEVXUlwiLFxyXG4gICAgXCJLdWIgMVM5MSBzdHJcIixcclxuICAgIFwiUy0zMDBQUyA0MEI2TSB0clwiLFxyXG4gICAgXCJTLTMwMFBTIDQwQjZNRCBzclwiLFxyXG4gICAgXCI1NUc2IEVXUlwiLFxyXG4gICAgXCJTLTMwMFBTIDY0SDZFIHNyXCIsXHJcbiAgICBcIlNBLTExIEJ1ayBTUiA5UzE4TTFcIixcclxuICAgIFwiRG9nIEVhciByYWRhclwiLFxyXG4gICAgXCJIYXdrIHRyXCIsXHJcbiAgICBcIkhhd2sgc3JcIixcclxuICAgIFwiUGF0cmlvdCBzdHJcIixcclxuICAgIFwiSGF3ayBjd2FyXCIsXHJcbiAgICBcInAtMTkgcy0xMjUgc3JcIixcclxuICAgIFwiUm9sYW5kIFJhZGFyXCIsXHJcbiAgICBcInNuciBzLTEyNSB0clwiXHJcbl1cclxuXHJcbnVuaXRUeXBlcy52ZWhpY2xlcy5TdHJ1Y3R1cmVzID0gW1xyXG4gICAgXCJob3VzZTFhcm1cIixcclxuICAgIFwiaG91c2UyYXJtXCIsXHJcbiAgICBcIm91dHBvc3Rfcm9hZFwiLFxyXG4gICAgXCJvdXRwb3N0XCIsXHJcbiAgICBcImhvdXNlQV9hcm1cIlxyXG5dXHJcblxyXG51bml0VHlwZXMudmVoaWNsZXMuVGFua3MgPSBbXHJcbiAgICBcIkNoYWxsZW5nZXIyXCIsXHJcbiAgICBcIkxlY2xlcmNcIixcclxuICAgIFwiTGVvcGFyZDFBM1wiLFxyXG4gICAgXCJMZW9wYXJkLTJcIixcclxuICAgIFwiTS02MFwiLFxyXG4gICAgXCJNMTEyOCBTdHJ5a2VyIE1HU1wiLFxyXG4gICAgXCJNLTEgQWJyYW1zXCIsXHJcbiAgICBcIlQtNTVcIixcclxuICAgIFwiVC03MkJcIixcclxuICAgIFwiVC04MFVEXCIsXHJcbiAgICBcIlQtOTBcIlxyXG5dXHJcblxyXG51bml0VHlwZXMudmVoaWNsZXMuVW5hcm1lZCA9IFtcclxuICAgIFwiVXJhbC00MzIwIEFQQS01RFwiLFxyXG4gICAgXCJBVE1aLTVcIixcclxuICAgIFwiQVRaLTEwXCIsXHJcbiAgICBcIkdBWi0zMzA3XCIsXHJcbiAgICBcIkdBWi0zMzA4XCIsXHJcbiAgICBcIkdBWi02NlwiLFxyXG4gICAgXCJNOTc4IEhFTVRUIFRhbmtlclwiLFxyXG4gICAgXCJIRU1UVCBURkZUXCIsXHJcbiAgICBcIklLQVJVUyBCdXNcIixcclxuICAgIFwiS0FNQVogVHJ1Y2tcIixcclxuICAgIFwiTEFaIEJ1c1wiLFxyXG4gICAgXCJIdW1tZXJcIixcclxuICAgIFwiTSA4MThcIixcclxuICAgIFwiTUFaLTYzMDNcIixcclxuICAgIFwiUHJlZGF0b3IgR0NTXCIsXHJcbiAgICBcIlByZWRhdG9yIFRyb2phblNwaXJpdFwiLFxyXG4gICAgXCJTdWlkYWVcIixcclxuICAgIFwiVGlncl8yMzMwMzZcIixcclxuICAgIFwiVHJvbGxleSBidXNcIixcclxuICAgIFwiVUFaLTQ2OVwiLFxyXG4gICAgXCJVcmFsIEFUc1AtNlwiLFxyXG4gICAgXCJVcmFsLTM3NSBQQlVcIixcclxuICAgIFwiVXJhbC0zNzVcIixcclxuICAgIFwiVXJhbC00MzIwLTMxXCIsXHJcbiAgICBcIlVyYWwtNDMyMFRcIixcclxuICAgIFwiVkFaIENhclwiLFxyXG4gICAgXCJaaUwtMTMxIEFQQS04MFwiLFxyXG4gICAgXCJTS1AtMTFcIixcclxuICAgIFwiWklMLTEzMSBLVU5HXCIsXHJcbiAgICBcIlpJTC00MzMxXCJcclxuXVxyXG5cclxuLyogQUlSUExBTkVTICovXHJcbnVuaXRUeXBlcy5haXIgPSB7fVxyXG5cclxudW5pdFR5cGVzLmFpci5DQVAgPSBbXHJcbiAgICBcIkYtNEVcIixcclxuICAgIFwiRi9BLTE4Q1wiLFxyXG4gICAgXCJNaUctMjlTXCIsXHJcbiAgICBcIkYtMTRBXCIsXHJcbiAgICBcIlN1LTI3XCIsXHJcbiAgICBcIk1pRy0yM01MRFwiLFxyXG4gICAgXCJTdS0zM1wiLFxyXG4gICAgXCJNaUctMjVSQlRcIixcclxuICAgIFwiU3UtMzBcIixcclxuICAgIFwiTWlHLTMxXCIsXHJcbiAgICBcIk1pcmFnZSAyMDAwLTVcIixcclxuICAgIFwiRi0xNUNcIixcclxuICAgIFwiRi01RVwiLFxyXG4gICAgXCJGLTE2QyBibC41MmRcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5DQVMgPSBbXHJcbiAgICBcIlRvcm5hZG8gSURTXCIsXHJcbiAgICBcIkYtNEVcIixcclxuICAgIFwiRi9BLTE4Q1wiLFxyXG4gICAgXCJNaUctMjdLXCIsXHJcbiAgICBcIkEtMTBDXCIsXHJcbiAgICBcIlN1LTI1XCIsXHJcbiAgICBcIlN1LTM0XCIsXHJcbiAgICBcIlN1LTE3TTRcIixcclxuICAgIFwiRi0xNUVcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5zdHJpa2UgPSBbXHJcbiAgICBcIlR1LTIyTTNcIixcclxuICAgIFwiQi01MkhcIixcclxuICAgIFwiRi0xMTFGXCIsXHJcbiAgICBcIlR1LTk1TVNcIixcclxuICAgIFwiU3UtMjRNXCIsXHJcbiAgICBcIlR1LTE2MFwiLFxyXG4gICAgXCJGLTExN0FcIixcclxuICAgIFwiQi0xQlwiLFxyXG4gICAgXCJUdS0xNDJcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci50YW5rZXIgPSBbXHJcbiAgICBcIlMtM0IgVGFua2VyXCIsXHJcbiAgICBcIktDLTEzNVwiLFxyXG4gICAgXCJJTC03OE1cIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5hd2FjcyA9IFtcclxuICAgIFwiQS01MFwiLFxyXG4gICAgXCJFLTNBXCIsXHJcbiAgICBcIkUtMkRcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci5kcm9uZSA9IFtcclxuICAgIFwiTVEtMUEgUHJlZGF0b3JcIixcclxuICAgIFwiTVEtOSBSZWFwZXJcIixcclxuXVxyXG5cclxudW5pdFR5cGVzLmFpci50cmFuc3BvcnQgPSBbXHJcbiAgICBcIkMtMTMwXCIsXHJcbiAgICBcIkFuLTI2QlwiLFxyXG4gICAgXCJBbi0zME1cIixcclxuICAgIFwiQy0xN0FcIixcclxuICAgIFwiSUwtNzZNRFwiLFxyXG5dIiwiaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0J1xyXG5pbXBvcnQgeyBTeW1ib2wgfSBmcm9tICdtaWxzeW1ib2wnXHJcbmltcG9ydCB7IGdldFZpc2liaWxpdHlTZXR0aW5ncyB9IGZyb20gJy4uJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXJrZXJPcHRpb25zIHtcclxuICAgIHVuaXROYW1lOiBzdHJpbmdcclxuICAgIG5hbWU6IHN0cmluZ1xyXG4gICAgaHVtYW46IGJvb2xlYW5cclxuICAgIGNvYWxpdGlvbklEOiBudW1iZXJcclxuICAgIHR5cGU6IGFueVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1hcmtlckRhdGEge1xyXG4gICAgaGVhZGluZzogbnVtYmVyXHJcbiAgICBzcGVlZDogbnVtYmVyXHJcbiAgICBhbHRpdHVkZTogbnVtYmVyXHJcbiAgICBhbGl2ZTogYm9vbGVhblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVW5pdE1hcmtlciBleHRlbmRzIEwuTWFya2VyIHtcclxuICAgICN1bml0TmFtZTogc3RyaW5nXHJcbiAgICAjbmFtZTogc3RyaW5nXHJcbiAgICAjaHVtYW46IGJvb2xlYW5cclxuICAgICNhbGl2ZTogYm9vbGVhbiA9IHRydWVcclxuICAgICNzZWxlY3RlZDogYm9vbGVhbiA9IGZhbHNlXHJcblxyXG4gICAgY29uc3RydWN0b3Iob3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHN1cGVyKG5ldyBMLkxhdExuZygwLCAwKSwgeyByaXNlT25Ib3ZlcjogdHJ1ZSB9KTtcclxuICAgICAgICB0aGlzLiN1bml0TmFtZSA9IG9wdGlvbnMudW5pdE5hbWU7XHJcbiAgICAgICAgdGhpcy4jbmFtZSA9IG9wdGlvbnMubmFtZTtcclxuICAgICAgICB0aGlzLiNodW1hbiA9IG9wdGlvbnMuaHVtYW47XHJcblxyXG4gICAgICAgIHZhciBzeW1ib2wgPSBuZXcgU3ltYm9sKHRoaXMuI2NvbXB1dGVNYXJrZXJDb2RlKG9wdGlvbnMpLCB7IHNpemU6IDI1IH0pO1xyXG4gICAgICAgIHZhciBpbWcgPSBzeW1ib2wuYXNDYW52YXMoKS50b0RhdGFVUkwoJ2ltYWdlL3BuZycpO1xyXG5cclxuICAgICAgICB2YXIgY29hbGl0aW9uID0gXCJcIjtcclxuICAgICAgICBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAxKVxyXG4gICAgICAgICAgICBjb2FsaXRpb24gPSBcInJlZFwiXHJcbiAgICAgICAgZWxzZSBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAyKVxyXG4gICAgICAgICAgICBjb2FsaXRpb24gPSBcImJsdWVcIlxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgY29hbGl0aW9uID0gXCJuZXV0cmFsXCJcclxuXHJcbiAgICAgICAgdmFyIGljb24gPSBuZXcgTC5EaXZJY29uKHtcclxuICAgICAgICAgICAgaHRtbDogYDx0YWJsZSBjbGFzcz1cInVuaXQtbWFya2VyLWNvbnRhaW5lclwiIGlkPVwiY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiJHtjb2FsaXRpb259XCIgaWQ9XCJiYWNrZ3JvdW5kXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiJHtjb2FsaXRpb259XCIgaWQ9XCJyaW5nXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidW5pdC1tYXJrZXItaWNvblwiIGlkPVwiaWNvblwiPjxpbWcgc3JjPVwiJHtpbWd9XCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidW5pdC1tYXJrZXItdW5pdE5hbWVcIiBpZD1cInVuaXROYW1lXCI+JHt0aGlzLiN1bml0TmFtZX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml0LW1hcmtlci1hbHRpdHVkZVwiIGlkPVwiYWx0aXR1ZGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml0LW1hcmtlci1zcGVlZFwiIGlkPVwic3BlZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1bml0LW1hcmtlci1uYW1lXCIgaWQ9XCJuYW1lXCI+JHt0aGlzLiNuYW1lfTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICA8L3RhYmxlPmAsXHJcbiAgICAgICAgICAgIGNsYXNzTmFtZTogJ3VuaXQtbWFya2VyJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuc2V0SWNvbihpY29uKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkFkZChtYXA6IEwuTWFwKTogdGhpcyB7XHJcbiAgICAgICAgc3VwZXIub25BZGQobWFwKTtcclxuICAgICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlb3ZlcicsIGZ1bmN0aW9uIChlOiBhbnkpIHsgZS50YXJnZXQ/LnNldEhvdmVyZWQodHJ1ZSk7IH0pO1xyXG4gICAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcignbW91c2VvdXQnLCBmdW5jdGlvbiAoZTogYW55KSB7IGUudGFyZ2V0Py5zZXRIb3ZlcmVkKGZhbHNlKTsgfSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXNcclxuICAgIH1cclxuXHJcbiAgICBkcmF3KGRhdGE6IE1hcmtlckRhdGEpIHtcclxuICAgICAgICB0aGlzLiNhbGl2ZSA9IGRhdGEuYWxpdmU7XHJcbiAgICAgICAgdmFyIGVsZW1lbnQgPSB0aGlzLmdldEVsZW1lbnQoKTtcclxuICAgICAgICBpZiAoZWxlbWVudCAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHZhciBuYW1lRGl2ID0gPEhUTUxFbGVtZW50PmVsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNuYW1lXCIpO1xyXG4gICAgICAgICAgICB2YXIgdW5pdE5hbWVEaXYgPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI3VuaXROYW1lXCIpO1xyXG4gICAgICAgICAgICB2YXIgY29udGFpbmVyID0gPEhUTUxFbGVtZW50PmVsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNjb250YWluZXJcIik7XHJcbiAgICAgICAgICAgIHZhciBpY29uID0gPEhUTUxFbGVtZW50PmVsZW1lbnQucXVlcnlTZWxlY3RvcihcIiNpY29uXCIpO1xyXG4gICAgICAgICAgICB2YXIgYWx0aXR1ZGVEaXYgPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI2FsdGl0dWRlXCIpO1xyXG4gICAgICAgICAgICB2YXIgc3BlZWREaXYgPSA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5xdWVyeVNlbGVjdG9yKFwiI3NwZWVkXCIpO1xyXG5cclxuICAgICAgICAgICAgLyogSWYgdmlzaWJpbGl0eSBpcyBmdWxsIHNob3cgYWxsIGxhYmVscyAqL1xyXG4gICAgICAgICAgICBuYW1lRGl2LnN0eWxlLmRpc3BsYXkgPSAnJztcclxuICAgICAgICAgICAgdW5pdE5hbWVEaXYuc3R5bGUuZGlzcGxheSA9ICcnO1xyXG4gICAgICAgICAgICBhbHRpdHVkZURpdi5zdHlsZS5kaXNwbGF5ID0gJyc7XHJcbiAgICAgICAgICAgIHNwZWVkRGl2LnN0eWxlLmRpc3BsYXkgPSAnJztcclxuXHJcbiAgICAgICAgICAgIC8qIElmIHZpc2liaWxpdHkgaXMgcGFydGlhbCBzaG93biBvbmx5IGljb24gYW5kIHVuaXQgbmFtZS4gSWYgbm9uZSwgc2hvd24gb25seSBpY29uLiAqL1xyXG4gICAgICAgICAgICBpZiAodGhpcy5nZXRWaXNpYmlsaXR5KCkgPT09IFwicGFydGlhbFwiIHx8IHRoaXMuZ2V0VmlzaWJpbGl0eSgpID09PSBcIm5vbmVcIilcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdW5pdE5hbWVEaXYuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgICAgICAgICAgICAgIGFsdGl0dWRlRGl2LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcbiAgICAgICAgICAgICAgICBzcGVlZERpdi5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmdldFZpc2liaWxpdHkoKSA9PT0gXCJub25lXCIpXHJcbiAgICAgICAgICAgICAgICBuYW1lRGl2LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcblxyXG4gICAgICAgICAgICBuYW1lRGl2LnN0eWxlLmxlZnQgPSAoLShuYW1lRGl2Lm9mZnNldFdpZHRoIC0gY29udGFpbmVyLm9mZnNldFdpZHRoKSAvIDIpICsgXCJweFwiO1xyXG4gICAgICAgICAgICB1bml0TmFtZURpdi5zdHlsZS5sZWZ0ID0gKC0odW5pdE5hbWVEaXYub2Zmc2V0V2lkdGggLSBjb250YWluZXIub2Zmc2V0V2lkdGgpIC8gMikgKyBcInB4XCI7XHJcblxyXG4gICAgICAgICAgICBpY29uLnN0eWxlLnRyYW5zZm9ybSA9IFwicm90YXRlKFwiICsgZGF0YS5oZWFkaW5nICsgXCJyYWQpXCI7XHJcbiAgICAgICAgICAgIGFsdGl0dWRlRGl2LmlubmVySFRNTCA9IFN0cmluZyhNYXRoLnJvdW5kKGRhdGEuYWx0aXR1ZGUgLyAwLjMwNDggLyAxMDApIC8gMTApO1xyXG4gICAgICAgICAgICBzcGVlZERpdi5pbm5lckhUTUwgPSBTdHJpbmcoTWF0aC5yb3VuZChkYXRhLnNwZWVkICogMS45NDM4NCkpO1xyXG5cclxuICAgICAgICAgICAgaWYgKCF0aGlzLiNhbGl2ZSlcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKT8uY2xhc3NMaXN0LmFkZChcInVuaXQtbWFya2VyLWRlYWRcIik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc2V0U2VsZWN0ZWQoc2VsZWN0ZWQ6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLiNzZWxlY3RlZCA9IHNlbGVjdGVkO1xyXG4gICAgICAgIHRoaXMuZ2V0RWxlbWVudCgpPy5xdWVyeVNlbGVjdG9yKFwiI2ljb25cIik/LmNsYXNzTGlzdC5yZW1vdmUoXCJ1bml0LW1hcmtlci1ob3ZlcmVkXCIpO1xyXG4gICAgICAgIHRoaXMuZ2V0RWxlbWVudCgpPy5xdWVyeVNlbGVjdG9yKFwiI3JpbmdcIik/LmNsYXNzTGlzdC50b2dnbGUoXCJ1bml0LW1hcmtlci1zZWxlY3RlZFwiLCBzZWxlY3RlZCk7XHJcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjYmFja2dyb3VuZFwiKT8uY2xhc3NMaXN0LnRvZ2dsZShcInVuaXQtbWFya2VyLXNlbGVjdGVkXCIsIHNlbGVjdGVkKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRTZWxlY3RlZCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy4jc2VsZWN0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0SG92ZXJlZChob3ZlcmVkOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5nZXRFbGVtZW50KCk/LnF1ZXJ5U2VsZWN0b3IoXCIjaWNvblwiKT8uY2xhc3NMaXN0LnRvZ2dsZShcInVuaXQtbWFya2VyLWhvdmVyZWRcIiwgaG92ZXJlZCAmJiB0aGlzLiNhbGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0SHVtYW4oKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2h1bWFuO1xyXG4gICAgfVxyXG5cclxuICAgIGdldEFsaXZlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiNhbGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuICAgIH1cclxuXHJcbiAgICAjY29tcHV0ZU1hcmtlckNvZGUob3B0aW9uczogTWFya2VyT3B0aW9ucykge1xyXG4gICAgICAgIHZhciBpZGVudGl0eSA9IFwiMDBcIjtcclxuICAgICAgICB2YXIgc2V0ID0gXCIwMFwiO1xyXG4gICAgICAgIHZhciBlbnRpdHkgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIGVudGl0eVR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgdmFyIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMFwiO1xyXG4gICAgICAgIHZhciBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDBcIjtcclxuXHJcbiAgICAgICAgLyogSWRlbnRpdHkgKi9cclxuICAgICAgICBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAxKVxyXG4gICAgICAgICAgICBpZGVudGl0eSA9IFwiMDZcIiAvKiBIb3N0aWxlICovXHJcbiAgICAgICAgZWxzZSBpZiAob3B0aW9ucy5jb2FsaXRpb25JRCA9PSAyKVxyXG4gICAgICAgICAgICBpZGVudGl0eSA9IFwiMDNcIiAvKiBGcmllbmRseSAqL1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgaWRlbnRpdHkgPSBcIjA0XCIgLyogTmV1dHJhbCAqL1xyXG5cclxuICAgICAgICAvKiBBaXIgKi9cclxuICAgICAgICBpZiAob3B0aW9ucy50eXBlLmxldmVsMSA9PSAxKSB7XHJcbiAgICAgICAgICAgIHNldCA9IFwiMDFcIlxyXG4gICAgICAgICAgICBlbnRpdHkgPSBcIjExXCJcclxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDIgPT0gMSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVR5cGUgPSBcIjAxXCJcclxuICAgICAgICAgICAgZWxzZSBpZiAob3B0aW9ucy50eXBlLmxldmVsMiA9PSAxKVxyXG4gICAgICAgICAgICAgICAgZW50aXR5VHlwZSA9IFwiMDJcIlxyXG5cclxuICAgICAgICAgICAgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA0XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMilcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA1XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMylcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjA0XCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNClcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAyXCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNSlcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gNilcclxuICAgICAgICAgICAgICAgIGVudGl0eVN1YnR5cGUgPSBcIjAwXCI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBHcm91bmQgKi9cclxuICAgICAgICBlbHNlIGlmIChvcHRpb25zLnR5cGUubGV2ZWwxID09IDIpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBzZXQgPSBcIjEwXCJcclxuICAgICAgICAgICAgZW50aXR5ID0gXCIxMlwiXHJcbiAgICAgICAgICAgIGVudGl0eVR5cGUgPSBcIjA1XCJcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogTmF2eSAqL1xyXG4gICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDEgPT0gMylcclxuICAgICAgICAgICAgc2V0ID0gXCIzMFwiXHJcbiAgICAgICAgLyogV2VhcG9uICovXHJcbiAgICAgICAgZWxzZSBpZiAob3B0aW9ucy50eXBlLmxldmVsMSA9PSA0KVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgc2V0ID0gXCIwMlwiXHJcbiAgICAgICAgICAgIGVudGl0eSA9IFwiMTFcIlxyXG4gICAgICAgICAgICBpZiAob3B0aW9ucy50eXBlLmxldmVsMyA9PSA3KVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBzZWN0b3JPbmVNb2RpZmllciA9IFwiMDFcIlxyXG4gICAgICAgICAgICAgICAgc2VjdG9yVHdvTW9kaWZpZXIgPSBcIjAxXCJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChvcHRpb25zLnR5cGUubGV2ZWwzID09IDgpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMVwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMzQpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMlwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDFcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKG9wdGlvbnMudHlwZS5sZXZlbDMgPT0gMTEpXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHNlY3Rvck9uZU1vZGlmaWVyID0gXCIwMlwiXHJcbiAgICAgICAgICAgICAgICBzZWN0b3JUd29Nb2RpZmllciA9IFwiMDJcIlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYDEwJHtpZGVudGl0eX0ke3NldH0wMDAwJHtlbnRpdHl9JHtlbnRpdHlUeXBlfSR7ZW50aXR5U3VidHlwZX0ke3NlY3Rvck9uZU1vZGlmaWVyfSR7c2VjdG9yVHdvTW9kaWZpZXJ9YFxyXG4gICAgfSBcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFpclVuaXRNYXJrZXIgZXh0ZW5kcyBVbml0TWFya2VyIHtcclxuICAgIGdldFZpc2liaWxpdHkoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwiZnVsbFwiO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5nZXRIdW1hbigpKVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkudXNlcjtcclxuICAgICAgICBlbHNlIGlmICghdGhpcy5nZXRBbGl2ZSgpKVxyXG4gICAgICAgICAgICByZXR1cm4gXCJub25lXCI7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmlzaWJpbGl0eVNldHRpbmdzKCkuYWk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBaXJjcmFmdE1hcmtlciBleHRlbmRzIEFpclVuaXRNYXJrZXIge1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgSGVsaWNvcHRlck1hcmtlciBleHRlbmRzIEFpclVuaXRNYXJrZXIge1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgR3JvdW5kVW5pdE1hcmtlciBleHRlbmRzIFVuaXRNYXJrZXIge1xyXG4gICAgLyogQXJlIHVzZXIgZHJpdmVuIHVuaXRzIHJlY29nbml6ZWQgYXMgaHVtYW4/ICovXHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0SHVtYW4oKSlcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLnVzZXI7XHJcbiAgICAgICAgZWxzZSBpZiAoIXRoaXMuZ2V0QWxpdmUoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwibm9uZVwiO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTmF2eVVuaXRNYXJrZXIgZXh0ZW5kcyBVbml0TWFya2VyIHtcclxuICAgIGdldFZpc2liaWxpdHkoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWQoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwiZnVsbFwiO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuZ2V0QWxpdmUoKSlcclxuICAgICAgICAgICAgcmV0dXJuIFwibm9uZVwiO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgcmV0dXJuIGdldFZpc2liaWxpdHlTZXR0aW5ncygpLmFpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgV2VhcG9uTWFya2VyIGV4dGVuZHMgVW5pdE1hcmtlciB7XHJcbiAgICBnZXRWaXNpYmlsaXR5KCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcImZ1bGxcIjtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLmdldEFsaXZlKCkpXHJcbiAgICAgICAgICAgIHJldHVybiBcIm5vbmVcIjtcclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICAgIHJldHVybiBnZXRWaXNpYmlsaXR5U2V0dGluZ3MoKS53ZWFwb247XHJcbiAgICB9XHJcbn0iLCJpbXBvcnQgeyBMYXRMbmcsIExhdExuZ0JvdW5kcyB9IGZyb20gXCJsZWFmbGV0XCI7XHJcbmltcG9ydCB7IGdldE1hcCwgZ2V0VW5pdEluZm9QYW5lbCB9IGZyb20gXCIuLlwiO1xyXG5pbXBvcnQgeyBVbml0LCBHcm91bmRVbml0IH0gZnJvbSBcIi4vdW5pdFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFVuaXRzTWFuYWdlciB7XHJcbiAgICAjdW5pdHM6IHsgW0lEOiBudW1iZXJdOiBVbml0IH07XHJcbiAgICAjY29waWVkVW5pdHM6IFVuaXRbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLiN1bml0cyA9IHt9O1xyXG4gICAgICAgIHRoaXMuI2NvcGllZFVuaXRzID0gW107XHJcbiAgICB9XHJcblxyXG4gICAgYWRkVW5pdChJRDogbnVtYmVyLCBkYXRhOiBhbnkpIHtcclxuICAgICAgICAvKiBUaGUgbmFtZSBvZiB0aGUgdW5pdCBjYXRlZ29yeSBpcyBleGFjdGx5IHRoZSBzYW1lIGFzIHRoZSBjb25zdHJ1Y3RvciBuYW1lICovXHJcbiAgICAgICAgdmFyIGNvbnN0cnVjdG9yID0gVW5pdC5nZXRDb25zdHJ1Y3RvcihkYXRhLmNhdGVnb3J5KTtcclxuICAgICAgICBpZiAoY29uc3RydWN0b3IgIT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHZhciBvcHRpb25zID0ge1xyXG4gICAgICAgICAgICAgICAgdW5pdE5hbWU6IGRhdGEudW5pdE5hbWUsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiBkYXRhLm5hbWUsXHJcbiAgICAgICAgICAgICAgICBodW1hbjogZGF0YS5odW1hbixcclxuICAgICAgICAgICAgICAgIGNvYWxpdGlvbklEOiBkYXRhLmNvYWxpdGlvbklELFxyXG4gICAgICAgICAgICAgICAgdHlwZTogZGF0YS50eXBlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy4jdW5pdHNbSURdID0gbmV3IGNvbnN0cnVjdG9yKElELCBvcHRpb25zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0VW5pdEJ5SUQoSUQ6IG51bWJlcikge1xyXG4gICAgICAgIHJldHVybiB0aGlzLiN1bml0c1tJRF07XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlVW5pdChJRDogbnVtYmVyKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGRlc2VsZWN0QWxsVW5pdHMoKSB7XHJcbiAgICAgICAgZm9yIChsZXQgSUQgaW4gdGhpcy4jdW5pdHMpIHtcclxuICAgICAgICAgICAgdGhpcy4jdW5pdHNbSURdLnNldFNlbGVjdGVkKGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlKGRhdGE6IGFueSkge1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIGRhdGFbXCJ1bml0c1wiXSkge1xyXG4gICAgICAgICAgICAvKiBDcmVhdGUgdGhlIHVuaXQgaWYgbWlzc2luZyBmcm9tIHRoZSBsb2NhbCBhcnJheSwgdGhlbiB1cGRhdGUgdGhlIGRhdGEuIERyYXdpbmcgaXMgaGFuZGxlZCBieSBsZWFmbGV0LiAqL1xyXG4gICAgICAgICAgICBpZiAoIShJRCBpbiB0aGlzLiN1bml0cykpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuYWRkVW5pdChwYXJzZUludChJRCksIGRhdGFbXCJ1bml0c1wiXVtJRF0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuI3VuaXRzW3BhcnNlSW50KElEKV0udXBkYXRlKGRhdGFbXCJ1bml0c1wiXVtJRF0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgIGdldFVuaXRJbmZvUGFuZWwoKS5zaG93KCk7XHJcbiAgICAgICAgICAgIGdldFVuaXRJbmZvUGFuZWwoKS51cGRhdGUodGhpcy5nZXRTZWxlY3RlZFVuaXRzKClbMF0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgZ2V0VW5pdEluZm9QYW5lbCgpLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgb25Vbml0U2VsZWN0aW9uKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmdldFNlbGVjdGVkVW5pdHMoKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnNldFN0YXRlKFwiTU9WRV9VTklUXCIpO1xyXG4gICAgICAgICAgICAvL3VuaXRDb250cm9sUGFuZWwuc2V0RW5hYmxlZCh0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGdldE1hcCgpLnNldFN0YXRlKFwiSURMRVwiKTtcclxuICAgICAgICAgICAgLy91bml0Q29udHJvbFBhbmVsLnNldEVuYWJsZWQoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RGcm9tQm91bmRzKGJvdW5kczogTGF0TG5nQm91bmRzKVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuZGVzZWxlY3RBbGxVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIHRoaXMuI3VuaXRzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdmFyIGxhdGxuZyA9IG5ldyBMYXRMbmcodGhpcy4jdW5pdHNbSURdLmxhdGl0dWRlLCB0aGlzLiN1bml0c1tJRF0ubG9uZ2l0dWRlKTtcclxuICAgICAgICAgICAgaWYgKGJvdW5kcy5jb250YWlucyhsYXRsbmcpKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN1bml0c1tJRF0uc2V0U2VsZWN0ZWQodHJ1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U2VsZWN0ZWRVbml0cygpIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IElEIGluIHRoaXMuI3VuaXRzKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLiN1bml0c1tJRF0uZ2V0U2VsZWN0ZWQoKSkge1xyXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRVbml0cy5wdXNoKHRoaXMuI3VuaXRzW0lEXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkVW5pdHM7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkRGVzdGluYXRpb24obGF0bG5nOiBMLkxhdExuZykge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpIHtcclxuICAgICAgICAgICAgdmFyIGNvbW1hbmRlZFVuaXQgPSBzZWxlY3RlZFVuaXRzW2lkeF07XHJcbiAgICAgICAgICAgIC8vaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS53aW5nbWFuKVxyXG4gICAgICAgICAgICAvL3tcclxuICAgICAgICAgICAgLy8gICAgY29tbWFuZGVkVW5pdCA9IHRoaXMuZ2V0TGVhZGVyKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAgICAgICAgIC8vfVxyXG4gICAgICAgICAgICBjb21tYW5kZWRVbml0LmFkZERlc3RpbmF0aW9uKGxhdGxuZyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyRGVzdGluYXRpb25zKCkge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpIHtcclxuICAgICAgICAgICAgdmFyIGNvbW1hbmRlZFVuaXQgPSBzZWxlY3RlZFVuaXRzW2lkeF07XHJcbiAgICAgICAgICAgIC8vaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS53aW5nbWFuKVxyXG4gICAgICAgICAgICAvL3tcclxuICAgICAgICAgICAgLy8gICAgY29tbWFuZGVkVW5pdCA9IHRoaXMuZ2V0TGVhZGVyKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAgICAgICAgIC8vfVxyXG4gICAgICAgICAgICBjb21tYW5kZWRVbml0LmNsZWFyRGVzdGluYXRpb25zKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdGVkVW5pdHNDaGFuZ2VTcGVlZChzcGVlZENoYW5nZTogc3RyaW5nKVxyXG4gICAge1xyXG4gICAgICAgIHZhciBzZWxlY3RlZFVuaXRzID0gdGhpcy5nZXRTZWxlY3RlZFVuaXRzKCk7XHJcbiAgICAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBzZWxlY3RlZFVuaXRzW2lkeF0uY2hhbmdlU3BlZWQoc3BlZWRDaGFuZ2UpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RlZFVuaXRzQ2hhbmdlQWx0aXR1ZGUoYWx0aXR1ZGVDaGFuZ2U6IHN0cmluZylcclxuICAgIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IGlkeCBpbiBzZWxlY3RlZFVuaXRzKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRVbml0c1tpZHhdLmNoYW5nZUFsdGl0dWRlKGFsdGl0dWRlQ2hhbmdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaGFuZGxlS2V5RXZlbnQoZSlcclxuICAgIC8vIHtcclxuICAgIC8vICAgICBpZiAoZS5vcmlnaW5hbEV2ZW50LmNvZGUgPT09ICdLZXlDJyAmJiBlLm9yaWdpbmFsRXZlbnQuY3RybEtleSlcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuY29weVVuaXRzKCk7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gICAgIGVsc2UgaWYgKGUub3JpZ2luYWxFdmVudC5jb2RlID09PSAnS2V5VicgJiYgZS5vcmlnaW5hbEV2ZW50LmN0cmxLZXkpXHJcbiAgICAvLyAgICAge1xyXG4gICAgLy8gICAgICAgICB0aGlzLnBhc3RlVW5pdHMoKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gY29weVVuaXRzKClcclxuICAgIC8vIHtcclxuICAgIC8vICAgICB0aGlzLiNjb3BpZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIHBhc3RlVW5pdHMoKVxyXG4gICAgLy8ge1xyXG4gICAgLy8gICAgIGZvciAobGV0IGlkeCBpbiB0aGlzLiNjb3BpZWRVbml0cylcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHZhciB1bml0ID0gdGhpcy4jY29waWVkVW5pdHNbaWR4XTtcclxuICAgIC8vICAgICAgICAgY2xvbmVVbml0KHVuaXQuSUQpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vIH1cclxuXHJcbiAgICBhdHRhY2tVbml0KElEOiBudW1iZXIpIHtcclxuICAgICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgICAgIGZvciAobGV0IGlkeCBpbiBzZWxlY3RlZFVuaXRzKSB7XHJcbiAgICAgICAgICAgIC8qIElmIGEgdW5pdCBpcyBhIHdpbmdtYW4sIHNlbmQgdGhlIGNvbW1hbmQgdG8gaXRzIGxlYWRlciAqL1xyXG4gICAgICAgICAgICB2YXIgY29tbWFuZGVkVW5pdCA9IHNlbGVjdGVkVW5pdHNbaWR4XTtcclxuICAgICAgICAgICAgLy9pZiAoc2VsZWN0ZWRVbml0c1tpZHhdLndpbmdtYW4pXHJcbiAgICAgICAgICAgIC8ve1xyXG4gICAgICAgICAgICAvLyAgICBjb21tYW5kZWRVbml0ID0gdGhpcy5nZXRMZWFkZXIoc2VsZWN0ZWRVbml0c1tpZHhdLklEKTtcclxuICAgICAgICAgICAgLy99XHJcbiAgICAgICAgICAgIGNvbW1hbmRlZFVuaXQuYXR0YWNrVW5pdChJRCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIGNyZWF0ZUZvcm1hdGlvbihJRClcclxuICAgIC8vIHtcclxuICAgIC8vICAgICB2YXIgc2VsZWN0ZWRVbml0cyA9IHRoaXMuZ2V0U2VsZWN0ZWRVbml0cygpO1xyXG4gICAgLy8gICAgIHZhciB3aW5nbWVuSURzID0gW107XHJcbiAgICAvLyAgICAgZm9yIChsZXQgaWR4IGluIHNlbGVjdGVkVW5pdHMpXHJcbiAgICAvLyAgICAge1xyXG4gICAgLy8gICAgICAgICBpZiAoc2VsZWN0ZWRVbml0c1tpZHhdLndpbmdtYW4pXHJcbiAgICAvLyAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgIHNob3dNZXNzYWdlKHNlbGVjdGVkVW5pdHNbaWR4XS51bml0TmFtZSArIFwiIGlzIGFscmVhZHkgaW4gYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIGVsc2UgaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS5sZWFkZXIpXHJcbiAgICAvLyAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgIHNob3dNZXNzYWdlKHNlbGVjdGVkVW5pdHNbaWR4XS51bml0TmFtZSArIFwiIGlzIGFscmVhZHkgaW4gYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIGVsc2VcclxuICAgIC8vICAgICAgICAge1xyXG4gICAgLy8gICAgICAgICAgICAgLyogVE9ET1xyXG4gICAgLy8gICAgICAgICAgICAgaWYgKHNlbGVjdGVkVW5pdHNbaWR4XS5jYXRlZ29yeSAhPT0gdGhpcy5nZXRVbml0QnlJRChJRCkuY2F0ZWdvcnkpXHJcbiAgICAvLyAgICAgICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgc2hvd01lc3NhZ2UoXCJBbGwgdW5pdHMgbXVzdCBiZSBvZiB0aGUgc2FtZSBjYXRlZ29yeSB0byBjcmVhdGUgYSBmb3JtYXRpb24uXCIpO1xyXG4gICAgLy8gICAgICAgICAgICAgfVxyXG4gICAgLy8gICAgICAgICAgICAgKi9cclxuICAgIC8vICAgICAgICAgICAgIGlmIChzZWxlY3RlZFVuaXRzW2lkeF0uSUQgIT0gSUQpXHJcbiAgICAvLyAgICAgICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgd2luZ21lbklEcy5wdXNoKHNlbGVjdGVkVW5pdHNbaWR4XS5JRCk7XHJcbiAgICAvLyAgICAgICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgaWYgKHdpbmdtZW5JRHMubGVuZ3RoID4gMClcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHRoaXMuZ2V0VW5pdEJ5SUQoSUQpLnNldExlYWRlcih3aW5nbWVuSURzKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyAgICAgZWxzZVxyXG4gICAgLy8gICAgIHtcclxuICAgIC8vICAgICAgICAgc2hvd01lc3NhZ2UoXCJBdCBsZWFzdCAyIHVuaXRzIG11c3QgYmUgc2VsZWN0ZWQgdG8gY3JlYXRlIGEgZm9ybWF0aW9uLlwiKTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgLy8gZ2V0TGVhZGVyKElEKVxyXG4gICAgLy8ge1xyXG4gICAgLy8gICAgIGZvciAobGV0IGlkeCBpbiB0aGlzLiN1bml0cylcclxuICAgIC8vICAgICB7XHJcbiAgICAvLyAgICAgICAgIHZhciB1bml0ID0gdGhpcy4jdW5pdHNbaWR4XTtcclxuICAgIC8vICAgICAgICAgaWYgKHVuaXQubGVhZGVyKVxyXG4gICAgLy8gICAgICAgICB7XHJcbiAgICAvLyAgICAgICAgICAgICBpZiAodW5pdC53aW5nbWVuLmluY2x1ZGVzKHRoaXMuZ2V0VW5pdEJ5SUQoSUQpKSlcclxuICAgIC8vICAgICAgICAgICAgIHtcclxuICAgIC8vICAgICAgICAgICAgICAgICByZXR1cm4gdW5pdDtcclxuICAgIC8vICAgICAgICAgICAgIH1cclxuICAgIC8vICAgICAgICAgfVxyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICBzaG93TWVzc2FnZShcIkVycm9yOiBubyBsZWFkZXIgZm91bmQgZm9yIHRoaXMgdW5pdFwiKVxyXG4gICAgLy8gfVxyXG59Il19 diff --git a/client/public/stylesheets/elements.css b/client/public/stylesheets/elements.css new file mode 100644 index 00000000..1ac11c9f --- /dev/null +++ b/client/public/stylesheets/elements.css @@ -0,0 +1,14 @@ +.olympus-element-1 { + background-color: #247be2; + height: 28; + border-radius: 14px; + display: flex; + align-items: center; + justify-content: center; + color: white; + font-size: 14px; +} + +.bottom-separator { + border-bottom: 1px solid gray; +} \ No newline at end of file diff --git a/client/public/stylesheets/layout.css b/client/public/stylesheets/layout.css index c4807c4b..7e9cbbaa 100644 --- a/client/public/stylesheets/layout.css +++ b/client/public/stylesheets/layout.css @@ -55,31 +55,39 @@ body { padding-right: 10px; } -#unit-control-panel { +#unit-control-buttons { position: absolute; - left: 50%; - margin-left: -60px; - height: 30px; - width: 120px; top: 10px; + height: fit-content; + width: fit-content; + right: 10px; + z-index: 1000; +} + +#unit-control-panel { + display: none; + position: absolute; + top: 10px; + height: fit-content; + width: 250px; + right: 10px; z-index: 1000; - display: flex; - justify-content: space-between; - align-items: center; - padding-left: 10px; - padding-right: 10px; } #connection-status-panel { position: absolute; height: 30px; width: 140px; - top: 10px; + bottom: 10px; right: 10px; z-index: 1000; } -@media only screen and (max-width: 1440px) { +@media only screen and (max-width: 1000px) { + #unit-control-buttons { + top: 50px; + } + #unit-control-panel { top: 50px; } diff --git a/client/public/stylesheets/selectionscroll.css b/client/public/stylesheets/selectionscroll.css index e6797996..4d3aceff 100644 --- a/client/public/stylesheets/selectionscroll.css +++ b/client/public/stylesheets/selectionscroll.css @@ -1,25 +1,91 @@ .olympus-selection-scroll-container { - margin: 0 auto; position: fixed; - z-index: 1000; - width: 220px; - height: 220px; - overflow: visible; - overflow-y: scroll; background-color: var(--background-color-dark); - opacity: 0.8; + font-size: 12px; + transition: bottom 0.2s; + border-radius: 15px; + box-shadow: 0px 2px 5px #000A; + width: 180px; + height: fit-content; + z-index: 1000; + max-height: 400px; + padding: 10px; } +.olympus-selection-scroll { + overflow-y: auto; + max-height: calc(400px - 60px); +} + +.olympus-selection-scroll::-webkit-scrollbar { + width: 10px; +} + +.olympus-selection-scroll::-webkit-scrollbar-track { + background-color: transparent; + border-radius: 100px; +} + +.olympus-selection-scroll::-webkit-scrollbar-thumb { + background-color: white; + border-radius: 100px; + opacity: 0.8; + margin-top: 10px; +} + .olympus-selection-scroll-element { margin: 2px; color: white; - text-shadow: 1px 1px #000, -1px -1px #000, 1px -1px #000, -1px 1px #000; cursor: pointer; - font-size: 12px; + font-size: 14px; opacity: 1; - font-family: "Lucida Console", "Courier New", monospace !important; + border-radius: 5px; + margin: 5px; + padding: 5px; + padding-left: 15px; } .olympus-selection-scroll-element:hover { background-color: var(--highlight-color); +} + +.olympus-selection-scroll-container label { + width: 0; + height: 0; +} + +.olympus-selection-scroll-container input { + width: 0; + height: 0; +} + +.olympus-selection-scroll-switch { + position: relative; + display: inline-block; + left: calc(50% - 10px); + width: 60px; + height: 34px; + background-color: var(--active-coalition-color); + border-radius: 999px; + cursor: pointer; + margin-left: -30px; +} + +.olympus-selection-scroll-switch:before { + position: absolute; + content: ""; + height: 26px; + width: 26px; + left: 4px; + bottom: 4px; + background-color: white; + -webkit-transition: 0.2s; + transition: 0.2s; + border-radius: 999px; +} + +input:checked+.olympus-selection-scroll-switch:before { + -webkit-transform: translateX(26px); + -ms-transform: translateX(26px); + transform: translateX(26px); } \ No newline at end of file diff --git a/client/public/stylesheets/style.css b/client/public/stylesheets/style.css index 931f2695..a5c77863 100644 --- a/client/public/stylesheets/style.css +++ b/client/public/stylesheets/style.css @@ -39,6 +39,10 @@ html { font-family: 'Open Sans', sans-serif; } +.leaflet-container.crosshair-cursor-enabled { + cursor:crosshair; +} + .rectangular-container { padding: 0.5em; background-color: gray; diff --git a/client/public/stylesheets/unitcontrolpanel.css b/client/public/stylesheets/unitcontrolpanel.css index e9d00710..20a2a45c 100644 --- a/client/public/stylesheets/unitcontrolpanel.css +++ b/client/public/stylesheets/unitcontrolpanel.css @@ -1,4 +1,41 @@ -#unit-control-panel .olympus-button { +#unit-control-buttons { + display: flex; + flex-direction: column; + row-gap: 5px; + padding: 10px; + border-radius: 999px; +} + +#unit-control-buttons>div { filter: invert(100%); opacity: 0.8; +} + +#unit-control-panel { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + align-content: flex-start; + row-gap: 5px; + padding-left: 30px; + padding-right: 30px; + padding-top: 20px; + padding-bottom: 20px; +} + +/* Common */ +#unit-info-panel>div { + height: 100%; + width: 100%; +} + +#unit-control-panel .rounded-container { + width: 100%; +} + +#unit-control-panel #title-label { + color: white; + font-size: 14px; + width: 100%; + font-weight: 600; } \ No newline at end of file diff --git a/client/public/stylesheets/unitinfopanel.css b/client/public/stylesheets/unitinfopanel.css index be90f832..ec6f24d8 100644 --- a/client/public/stylesheets/unitinfopanel.css +++ b/client/public/stylesheets/unitinfopanel.css @@ -51,7 +51,7 @@ } /* General section */ -#general #name { +#general #unit-name { color: white; font-size: 18px; width: 100%; diff --git a/client/public/stylesheets/unitmarker.css b/client/public/stylesheets/unitmarker.css index f7970f26..babbb02b 100644 --- a/client/public/stylesheets/unitmarker.css +++ b/client/public/stylesheets/unitmarker.css @@ -21,26 +21,36 @@ align-items: center; } - - .unit-marker-selected { - animation-name: flash; - animation-duration: 0.3s; - animation-iteration-count: infinite; - animation-direction: alternate; - animation-timing-function: linear; + width: 100%; + height: 100%; + border-radius: 50%; } -@keyframes flash { - from { - filter: brightness(100%); - } - - to { - filter: brightness(130%); - } +#ring { + top: 0px; + position: absolute; + display: inline-block; + -webkit-mask: radial-gradient(transparent 60%, #000 61%); + mask: radial-gradient(transparent 60%, #000 61%); } +#background { + top: 0px; + position: absolute; + display: inline-block; + opacity: 0.2; +} + +.blue.unit-marker-selected { + background-color: var(--blue-coalition-color); +} + +.red.unit-marker-selected { + background-color: var(--red-coalition-color); +} + + .unit-marker-hovered { filter: brightness(130%); } diff --git a/client/src/controls/selectionscroll.ts b/client/src/controls/selectionscroll.ts index 01646291..3a341605 100644 --- a/client/src/controls/selectionscroll.ts +++ b/client/src/controls/selectionscroll.ts @@ -1,4 +1,5 @@ import { LatLng } from "leaflet"; +import { setActiveCoalition } from ".."; export class SelectionScroll { #container: HTMLElement | null; @@ -8,26 +9,36 @@ export class SelectionScroll { this.#container = document.getElementById(id); this.#display = ''; if (this.#container != null) { + this.#container.querySelector("#coalition-switch")?.addEventListener('change', (e) => this.#onSwitch(e)) this.#display = this.#container.style.display; this.hide(); } } - show(x: number, y: number, options: any, callback: CallableFunction) { + show(x: number, y: number, options: any, callback: CallableFunction, showCoalition: boolean) { /* Hide to remove buttons, if present */ this.hide(); - if (this.#container != null && options.length > 1) { + if (this.#container != null && options.length >= 1) { this.#container.style.display = this.#display; this.#container.style.left = x - 110 + "px"; this.#container.style.top = y - 110 + "px"; - - for (let optionID in options) { - var node = document.createElement("div"); - node.classList.add("olympus-selection-scroll-element"); - node.appendChild(document.createTextNode(options[optionID])); - this.#container.appendChild(node); - node.addEventListener('click', () => callback(options[optionID])) + var scroll = this.#container.querySelector(".olympus-selection-scroll"); + if (scroll != null) + { + for (let optionID in options) { + var node = document.createElement("div"); + node.classList.add("olympus-selection-scroll-element"); + if (typeof options[optionID] === 'string' || options[optionID] instanceof String){ + node.appendChild(document.createTextNode(options[optionID])); + node.addEventListener('click', () => callback(options[optionID])); + } + else { + node.appendChild(document.createTextNode(options[optionID].tooltip)); + node.addEventListener('click', () => options[optionID].callback()); + } + scroll.appendChild(node); + } } } } @@ -36,8 +47,25 @@ export class SelectionScroll { if (this.#container != null) { this.#container.style.display = "none"; var buttons = this.#container.querySelectorAll(".olympus-selection-scroll-element"); - for (let child of buttons) { - this.#container.removeChild(child); + var scroll = this.#container.querySelector(".olympus-selection-scroll"); + if (scroll != null) + { + for (let child of buttons) { + scroll.removeChild(child); + } + } + } + } + + #onSwitch(e: any) { + if (this.#container != null) { + if (e.currentTarget.checked) { + document.documentElement.style.setProperty('--active-coalition-color', getComputedStyle(this.#container).getPropertyValue("--red-coalition-color")); + setActiveCoalition("red"); + } + else { + document.documentElement.style.setProperty('--active-coalition-color', getComputedStyle(this.#container).getPropertyValue("--blue-coalition-color")); + setActiveCoalition("blue"); } } } diff --git a/client/src/index.ts b/client/src/index.ts index 66b472a7..5d2f8c5a 100644 --- a/client/src/index.ts +++ b/client/src/index.ts @@ -38,7 +38,7 @@ function setup() { selectionScroll = new SelectionScroll("selection-scroll"); unitsManager = new UnitsManager(); unitInfoPanel = new UnitInfoPanel("unit-info-panel"); - scenarioDropdown = new Dropdown("scenario-dropdown", ["Caucasus", "Syria", "Nevada", "Marianas", "South Atlantic", "The channel"], () => { }); + scenarioDropdown = new Dropdown("scenario-dropdown", ["Caucasus", "Syria", "Marianas", "Nevada", "South Atlantic", "The channel"], () => { }); mapSourceDropdown = new Dropdown("map-source-dropdown", map.getLayers(), (option: string) => map.setLayer(option)); connectionStatusPanel = new ConnectionStatusPanel("connection-status-panel"); missionData = new MissionData(); diff --git a/client/src/map/map.ts b/client/src/map/map.ts index 64fac9ae..febe7e67 100644 --- a/client/src/map/map.ts +++ b/client/src/map/map.ts @@ -95,10 +95,10 @@ export class Map extends L.Map { this.#state = state; if (this.#state === "IDLE") { - + L.DomUtil.removeClass(this.getContainer(),'crosshair-cursor-enabled'); } else if (this.#state === "MOVE_UNIT") { - + L.DomUtil.addClass(this.getContainer(),'crosshair-cursor-enabled'); } else if (this.#state === "ATTACK") { @@ -124,10 +124,10 @@ export class Map extends L.Map { } /* Selection scroll */ - showSelectionScroll(e: ClickEvent | SpawnEvent, options: any, callback: CallableFunction) { + showSelectionScroll(e: ClickEvent | SpawnEvent, options: any, callback: CallableFunction, showCoalition: boolean = false) { var x = e.x; var y = e.y; - getSelectionScroll().show(x, y, options, callback); + getSelectionScroll().show(x, y, options, callback, showCoalition); } hideSelectionScroll() { @@ -158,7 +158,7 @@ export class Map extends L.Map { { "tooltip": "Smoke", "src": "spawnSmoke.png", "callback": () => this.#smokeSpawnMenu(spawnEvent) }, //{ "tooltip": "Explosion", "src": "spawnExplosion.png", "callback": () => this.#explosionSpawnMenu(e) } ] - this.showSelectionWheel(spawnEvent, options, true); + this.showSelectionScroll(spawnEvent, options, () => {}, true); } } @@ -198,7 +198,7 @@ export class Map extends L.Map { {'coalition': true, 'tooltip': 'Radar', 'src': 'spawnRadar.png', 'callback': () => this.#selectGroundUnit(e, "Radar")}, {'coalition': true, 'tooltip': 'Unarmed', 'src': 'spawnUnarmed.png', 'callback': () => this.#selectGroundUnit(e, "Unarmed")} ] - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => {}, true); } #smokeSpawnMenu(e: SpawnEvent) { @@ -211,7 +211,7 @@ export class Map extends L.Map { {'tooltip': 'Green smoke', 'src': 'spawnSmoke.png', 'callback': () => {this.hideSelectionWheel(); this.hideSelectionScroll(); spawnSmoke('green', e.latlng)}, 'tint': 'green'}, {'tooltip': 'Orange smoke', 'src': 'spawnSmoke.png', 'callback': () => {this.hideSelectionWheel(); this.hideSelectionScroll(); spawnSmoke('orange', e.latlng)}, 'tint': 'orange'}, ] - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => {}, true); } #explosionSpawnMenu(e: SpawnEvent) { @@ -228,7 +228,7 @@ export class Map extends L.Map { { 'coalition': true, 'tooltip': 'Drone', 'src': 'spawnDrone.png', 'callback': () => this.#selectAircraft(e, "drone") }, { 'coalition': true, 'tooltip': 'Transport', 'src': 'spawnTransport.png', 'callback': () => this.#selectAircraft(e, "transport") }, ] - this.showSelectionWheel(e, options, true); + this.showSelectionScroll(e, options, () => {}, true); } /* Show unit selection for air units */ @@ -236,7 +236,10 @@ export class Map extends L.Map { this.hideSelectionWheel(); this.hideSelectionScroll(); var options = unitTypes.air[group]; - options.sort(); + if (options != undefined) + options.sort(); + else + options = []; this.showSelectionScroll(e, options, (unitType: string) => { this.hideSelectionWheel(); this.hideSelectionScroll(); diff --git a/client/src/panels/unitinfopanel.ts b/client/src/panels/unitinfopanel.ts index a0541959..b4741024 100644 --- a/client/src/panels/unitinfopanel.ts +++ b/client/src/panels/unitinfopanel.ts @@ -10,7 +10,7 @@ export class UnitInfoPanel { this.#display = ''; if (this.#element != null) { this.#display = this.#element.style.display; - this.show(); + this.hide(); } } @@ -23,27 +23,31 @@ export class UnitInfoPanel { } update(unit: Unit) { - var loadout = ""; - for (let index in unit.ammo) { - var ammo = unit.ammo[index]; - var displayName = ammo.desc.displayName; - var amount = ammo.count; - loadout += amount + "x" + displayName; - if (parseInt(index) < Object.keys(unit.ammo).length) - loadout += ", "; - } - if (this.#element != null) { + var els = this.#element.getElementsByClassName("js-loadout-element"); + while (els.length > 0) + this.#element.querySelector("#loadout-data")?.removeChild(els[0]); + + for (let index in unit.ammo) { + var ammo = unit.ammo[index]; + var displayName = ammo.desc.displayName; + var amount = ammo.count; + var el = document.createElement("div") + el.classList.add("js-loadout-element", "rectangular-container-dark") + el.innerHTML = amount + "x" + displayName; + this.#element.querySelector("#loadout-data")?.appendChild(el); + } + this.#element.querySelector("#unit-name")!.innerHTML = unit.unitName; this.#element.querySelector("#group-name")!.innerHTML = unit.groupName; - this.#element.querySelector("#heading")!.innerHTML = String(Math.floor(rad2deg(unit.heading)) + "°"); - this.#element.querySelector("#altitude")!.innerHTML = String(Math.floor(unit.altitude / 0.3048) + "ft"); - this.#element.querySelector("#groundspeed")!.innerHTML = String(Math.floor(unit.speed * 1.94384) + "kts"); + this.#element.querySelector("#name")!.innerHTML = unit.name; + this.#element.querySelector("#heading")!.innerHTML = String(Math.floor(rad2deg(unit.heading)) + " °"); + this.#element.querySelector("#altitude")!.innerHTML = String(Math.floor(unit.altitude / 0.3048) + " ft"); + this.#element.querySelector("#ground-speed")!.innerHTML = String(Math.floor(unit.speed * 1.94384) + " kts"); this.#element.querySelector("#fuel")!.innerHTML = String(unit.fuel + "%"); - this.#element.querySelector("#position")!.innerHTML = ConvertDDToDMS(unit.latitude, false) + " " + ConvertDDToDMS(unit.longitude, true); - - this.#element.querySelector("#task")!.innerHTML = unit.currentTask; - this.#element.querySelector("#loadout")!.innerHTML = loadout; + this.#element.querySelector("#latitude")!.innerHTML = ConvertDDToDMS(unit.latitude, false); + this.#element.querySelector("#longitude")!.innerHTML = ConvertDDToDMS(unit.longitude, true); + this.#element.querySelector("#task")!.innerHTML = unit.currentTask !== ""? unit.currentTask: "Not controlled"; } } } \ No newline at end of file diff --git a/client/src/units/unit.ts b/client/src/units/unit.ts index 3ddb5e9e..856b2749 100644 --- a/client/src/units/unit.ts +++ b/client/src/units/unit.ts @@ -73,6 +73,9 @@ export class Unit { this[entry] = response[entry]; } + /* Dead units can't be selected */ + this.setSelected(this.getSelected() && this.alive) + this.#updateMarker(); this.#clearTargets(); @@ -93,11 +96,6 @@ export class Unit { this.wingmen.push(unitsManager.getUnitByID(ID)); } } - this.formation = response["formation"]; - - this.missionData = missionData.getUnitData(this.ID) - - this.setSelected(this.getSelected() && this.alive) */ } @@ -114,6 +112,14 @@ export class Unit { return this.#selected; } + setSelectable(selectable: boolean) { + this.#selectable = selectable; + } + + getSelectable() { + return this.#selectable; + } + addDestination(latlng: L.LatLng) { var path: any = {}; if (this.activePath != null) { @@ -153,16 +159,20 @@ export class Unit { this.#preventClick = true; var options = [ - { 'tooltip': 'Attack', 'src': 'attack.png', 'callback': () => { getMap().hideSelectionWheel(); getUnitsManager().attackUnit(this.ID); } }, - { 'tooltip': 'Go to tanker', 'src': 'tanker.png', 'callback': () => { getMap().hideSelectionWheel(); /*showMessage("Function not implemented yet");*/ } }, - { 'tooltip': 'RTB', 'src': 'rtb.png', 'callback': () => { getMap().hideSelectionWheel(); /*showMessage("Function not implemented yet");*/ } } + 'Attack', ] - if (!this.leader && !this.wingman) { - options.push({ 'tooltip': 'Create formation', 'src': 'formation.png', 'callback': () => { getMap().hideSelectionWheel(); /*unitsManager.createFormation(this.ID);*/ } }); - } + //if (!this.leader && !this.wingman) { + // options.push({ 'tooltip': 'Create formation', 'src': 'formation.png', 'callback': () => { getMap().hideSelectionWheel(); /*unitsManager.createFormation(this.ID);*/ } }); + //} - getMap().showSelectionWheel(e.originalEvent, options, false); + getMap().showSelectionScroll(e.originalEvent, options, (action: string) => this.#executeAction(action)); + } + + #executeAction(action: string) { + getMap().hideSelectionScroll(); + if (action === "Attack") + getUnitsManager().attackUnit(this.ID); } #updateMarker() { @@ -399,6 +409,12 @@ export class NavyUnit extends Unit { } export class Weapon extends Unit { + constructor(ID: number, marker: UnitMarker) + { + super(ID, marker); + this.setSelectable(false); + } + getHidden() { if (this.alive) { diff --git a/client/src/units/unitTypes.ts b/client/src/units/unitTypes.ts index 1af1049b..fb0da5aa 100644 --- a/client/src/units/unitTypes.ts +++ b/client/src/units/unitTypes.ts @@ -250,7 +250,7 @@ unitTypes.air.strike = [ "Tu-142", ] -unitTypes.air.tank = [ +unitTypes.air.tanker = [ "S-3B Tanker", "KC-135", "IL-78M", diff --git a/client/src/units/unitmarker.ts b/client/src/units/unitmarker.ts index 1336a2b1..f2b27fad 100644 --- a/client/src/units/unitmarker.ts +++ b/client/src/units/unitmarker.ts @@ -33,10 +33,20 @@ export class UnitMarker extends L.Marker { var symbol = new Symbol(this.#computeMarkerCode(options), { size: 25 }); var img = symbol.asCanvas().toDataURL('image/png'); + var coalition = ""; + if (options.coalitionID == 1) + coalition = "red" + else if (options.coalitionID == 2) + coalition = "blue" + else + coalition = "neutral" + var icon = new L.DivIcon({ html: `
+
+
${this.#unitName}
@@ -101,7 +111,8 @@ export class UnitMarker extends L.Marker { setSelected(selected: boolean) { this.#selected = selected; this.getElement()?.querySelector("#icon")?.classList.remove("unit-marker-hovered"); - this.getElement()?.querySelector("#icon")?.classList.toggle("unit-marker-selected", selected); + this.getElement()?.querySelector("#ring")?.classList.toggle("unit-marker-selected", selected); + this.getElement()?.querySelector("#background")?.classList.toggle("unit-marker-selected", selected); } getSelected() { diff --git a/client/views/selectionscroll.ejs b/client/views/selectionscroll.ejs index 5b212607..4827bd8c 100644 --- a/client/views/selectionscroll.ejs +++ b/client/views/selectionscroll.ejs @@ -1,3 +1,8 @@
- + +
+
\ No newline at end of file diff --git a/client/views/unitcontrolpanel.ejs b/client/views/unitcontrolpanel.ejs index 7d0c238c..9aa44f35 100644 --- a/client/views/unitcontrolpanel.ejs +++ b/client/views/unitcontrolpanel.ejs @@ -1,6 +1,12 @@ -
+
+
+ +
+
Selected units
+
Olympus-1
+
Olympus-2
\ No newline at end of file diff --git a/client/views/unitinfopanel.ejs b/client/views/unitinfopanel.ejs index 8302049c..03ffd10f 100644 --- a/client/views/unitinfopanel.ejs +++ b/client/views/unitinfopanel.ejs @@ -1,35 +1,30 @@
-
Olympus-6
-
F-15C
-
Olympus-1
-
Reaching destination
+
+
+
+
Flight data
-
N37°17'33.25"
-
W115°42'14.70"
+
+
Ground Speed
-
308 kts
+
Altitude
-
1064 ft
+
Heading
-
67
- +
Loadout
Fuel
-
15%
-
2x AIM-120B
-
2x AIM-9P
-
100x 50mm HE
-
2x AGM-68
+
\ No newline at end of file diff --git a/installer/DCSOlympus.iss b/installer/DCSOlympus.iss index 23194786..d10a00c2 100644 --- a/installer/DCSOlympus.iss +++ b/installer/DCSOlympus.iss @@ -1,32 +1,58 @@ +#define nwjsFolder "C:\Users\dpass\Documents\nwjs\" + [Setup] AppName=DCS Olympus -AppVerName=DCS Olympus Alpha v0.0.1 +AppVerName=DCS Olympus Alpha v0.0.2 DefaultDirName={usersavedgames}\DCS.openbeta DefaultGroupName=DCSOlympus OutputBaseFilename=DCSOlympus [Tasks] ; NOTE: The following entry contains English phrases ("Create a desktop icon" and "Additional icons"). You are free to translate them into another language if required. +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + [Files] ; NOTE: Don't use "Flags: ignoreversion" on any shared system files Source: "..\scripts\OlympusExport.lua"; DestDir: "{app}\Scripts"; Flags: ignoreversion Source: "..\scripts\OlympusHook.lua"; DestDir: "{app}\Scripts\Hooks"; Flags: ignoreversion Source: "..\scripts\OlympusCommand.lua"; DestDir: "{app}\Mods\Services\Olympus\Scripts"; Flags: ignoreversion +Source: "..\scripts\unitPayloads.lua"; DestDir: "{app}\Mods\Services\Olympus\Scripts"; Flags: ignoreversion Source: "..\scripts\OlympusMission.lua"; DestDir: "{app}\Mods\Services\Olympus\Scripts"; Flags: ignoreversion Source: "..\scripts\mist_4_4_90.lua"; DestDir: "{app}\Mods\Services\Olympus\Scripts"; Flags: ignoreversion Source: "..\bin\*.dll"; DestDir: "{app}\Mods\Services\Olympus\bin"; Flags: ignoreversion; +Source: "..\client\bin\*"; DestDir: "{app}\Mods\Services\Olympus\client\bin"; Flags: ignoreversion; +Source: "..\client\node_modules\*"; DestDir: "{app}\Mods\Services\Olympus\client\node_modules"; Flags: ignoreversion recursesubdirs; +Source: "..\client\public\*"; DestDir: "{app}\Mods\Services\Olympus\client\public"; Flags: ignoreversion recursesubdirs; +Source: "..\client\routes\*"; DestDir: "{app}\Mods\Services\Olympus\client\routes"; Flags: ignoreversion recursesubdirs; +Source: "..\client\views\*"; DestDir: "{app}\Mods\Services\Olympus\client\views"; Flags: ignoreversion recursesubdirs; +Source: "..\client\*.*"; DestDir: "{app}\Mods\Services\Olympus\client"; Flags: ignoreversion; +Source: "{#nwjsFolder}\*.*"; DestDir: "{app}\Mods\Services\Olympus\client"; Flags: ignoreversion recursesubdirs; [Code] -procedure AppendExportString(); +function NeedsAddPath(Param: string): boolean; +var + OrigPath: string; begin - SaveStringToFile(ExpandConstant('{app}\Scripts\Export.lua'), #13#10 + 'local Olympuslfs=require(''lfs'');dofile(Olympuslfs.writedir()..''Scripts/OlympusExport.lua'')' + #13#10, True); + if not RegQueryStringValue(HKCU, + 'Environment', + 'Path', OrigPath) + then begin + Result := True; + exit; + end; + { look for the path with leading and trailing semicolon } + { Pos() returns 0 if not found } + Result := Pos(';' + Param + ';', ';' + OrigPath + ';') = 0; end; [Registry] -Root: HKCU; Subkey: "Environment"; ValueType:string; ValueName: "DCSOLYMPUS_PATH"; ValueData: "{app}\Mods\Services\Olympus"; Flags: preservestringtype -; Root: HKCU; Subkey: "Environment"; ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};DCSOLYMPUS_PATH\bin" +Root: HKCU; Subkey: "Environment"; ValueType: string; ValueName: "DCSOLYMPUS_PATH"; ValueData: "{app}\Mods\Services\Olympus"; Flags: preservestringtype +Root: HKCU; Subkey: "Environment"; ValueType: expandsz; ValueName: "Path"; ValueData: "{olddata};%DCSOLYMPUS_PATH%\bin"; Check: NeedsAddPath('%DCSOLYMPUS_PATH%\bin'); [Setup] ; Tell Windows Explorer to reload the environment -ChangesEnvironment=yes \ No newline at end of file +ChangesEnvironment=yes + +[Icons] +Name: "{userdesktop}\DCS Olympus Client"; Filename: "{app}\Mods\Services\Olympus\client\nw.exe"; Tasks: desktopicon \ No newline at end of file